基于51单片机锅炉水位-温度-压力检测控制系统proteus仿真设计

news/2025/1/15 18:12:58/

基于51单片机锅炉监控系统仿真设计( proteus仿真+程序+原理图+报告+讲解视频)

仿真图proteus7.8及以上

程序编译器:keil 4/keil 5

编程语言:C语言

设计编号:S0056

1.主要功能:

基于51单片机AT89C51/52(与AT89S51/52、AT89C51/52、STC89C51/52等51内核单片机通用)

1.系统实时通过LCD1602显示水位检测值,锅炉炉膛温度值,锅炉内部压力值。

2、可对锅炉的水位上下限、炉膛温度上下限、压力上下限进行设置,第一行显示上限值,第二行显示下限值。

3、如果水位、温度、压力过限则蜂鸣器报警,通过LED指示报警类型。

4、默认水位下限值10cm,上限值40cm,压力下限值30kPa,压力上限值50kPa,温度下限值5℃,温度上限值105℃。

5、温度传感器使用DS18B20;水位传感器使用电位器模拟;压力传感器使用MPX4115。

需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。

2.仿真

开始仿真

打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。

开始仿真后,调整温度变大,当温度106℃大于温度上限值105℃后蜂鸣器报警,温度上限指示灯亮起报警。

img

调整温度变小,当温度4℃小于温度下限值5℃后蜂鸣器报警,温度下限红灯报警亮起。

img

仿真中通过按键调整MPX4115压力传感器的值改变显示数值。调整压力变小,当压力调整到52kPa大于上限值,蜂鸣器报警,气压上限红灯报警亮起。

img

调整压力变小,当压力调整到26kPa低于下限值,蜂鸣器报警,气压下限红灯报警亮起。

img

仿真中通过按键调整RV2滑动变阻器模拟水位传感器的阻值随水位高低变化。上下箭头用于改变阻值的值。下箭头调低数值,上箭头调高数值。

调整水位变低,当水位调整到9CM低于下限值10CM,蜂鸣器报警,水位下限红灯报警亮起。

img

调整水位变高,当水位调整到41CM高于上限值40CM,蜂鸣器报警,水位上限红灯报警亮起。

img

开始仿真后,可以通过矩阵键盘的设置按键进入设置模式调整默认水位下限值、上限值、压力下限值、压力上限值、温度下限值和温度上限值。进入设置模式后LCD1602第一行显示上限值,第二行显示下限值。设置完成通过OK按键退出设置。

img

以上仿真结果均符合设计要求。

3. 程序代码

使用keil4或者keil5编译,代码有注释,可以结合报告理解代码含义。

img

4. 原理图

原理图使用AD绘制,可供实物参考。

img

Proteus仿真和实物作品的区别:

1.运行环境:Proteus仿真是在计算机上运行的,而实物则是在硬件电路板上运行。

2.调试方式:在Proteus仿真中,可以方便地进行单步调试和观察变量值的变化,而在实物中则需要通过调试器或者串口输出等方式进行调试。

电路连接方式:在Proteus仿真中,可以通过软件设置进行电路连接的修改,而在实物中则需要通过硬件电路板和连接线进行修改。

3.运行速度:Proteus仿真通常比实物运行速度快,因为仿真是基于计算机运行的,而实物则需要考虑电路板上的物理限制和器件的响应时间等因素。

4.功能实现:在Proteus仿真中,可以通过软件设置实现不同的功能,而在实物中则需要根据电路设计和器件的性能进行实现。

5. 设计报告

7506字设计报告,内容包括摘要,硬件设计、软件设计、软硬件框图、调试、结论等

img

6. 设计资料内容清单&&下载链接

资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。

0、常见使用问题及解决方法–必读!!!!

1、仿真图

2、程序源码

3、开题报告

3、原理图

5、功能要求

6、元器件清单

7、设计报告

8、软硬件流程框图

9、讲解视频

Altium Designer 软件资料

KEIL软件资料

Proteus软件资料

单片机学习资料

答辩技巧

设计报告常用描述

鼠标双击打开查找更多51 STM32单片机课程毕业设计.url

资料下载链接(可点击):

https://docs.qq.com/doc/DS0pESEJrbGNEY010


http://www.ppmy.cn/news/1458786.html

相关文章

智慧文旅开启沉浸式文化体验,科技让旅行更生动:借助智慧技术,打造沉浸式文化体验场景,让旅行者在旅行中深度感受文化的魅力

一、引言 随着科技的飞速发展,传统旅游行业正经历着前所未有的变革。智慧文旅,作为一种新兴的旅游模式,正以其独特的魅力,吸引着越来越多的旅行者。智慧文旅不仅改变了人们的旅行方式,更在深度上丰富了人们的文化体验…

uboot ping不了

主机无线连接wifi,开发板有线连接主机,虚拟机需要开双网卡模式。一卡为桥接模式,负责连通开发板;一开为nf模式,负责联网。 部分网络芯片没有MAC地址,每次重启会随机生成一个MAC地址来使用,导致…

Rust 实战thiserror+自定义错误消息体

导航 一、背景二、实践1、导入thiserror2、自定义错误消息体(1)创建ErrMsg.rs和创建自定义结构体(2)lib.rs添加ErrMsg(3)main函数(4)完整代码 一、背景 开发中遇到需要通用、能够满…

Day3 | Java基础 | 4常见类

Day3 | Java基础 | 4 常见类 基础版Object类equalshashCode(散列码)hashCode和equals clone方法String类 问题回答版Object类Object类的常见方法有哪些?和equals()的区别是什么?为什么要有hashCode?hashCode和equals的…

鲁棒性能优化问题

鲁棒性能优化问题是一类基于不确定性和干扰的优化问题。鲁棒优化是一种在内部结构和外部环境不确定环境下进行优化的新方法。其核心思想是在考虑参数的不确定性或外部环境的扰动时,寻找一个最优解,该解在所有可能的情况下都能保持较好的性能。 鲁棒优化…

Springboot监听ConfigMap配置文件自动更新配置

背景: 最近调研使用k8s的ConfigMap来作为springboot项目的配置中心,需要实现热更新机制,避免pod重启影响业务。 ConfigMap作为挂载卷使用的时候可以更新pod中的配置内容,但是业务应用需要能监听并处理这些变更。我在测试的时候已…

Leetcode—622. 设计循环队列【中等】

2024每日刷题(128) Leetcode—622. 设计循环队列 实现代码 class MyCircularQueue { public:MyCircularQueue(int k): q(k) {qSize k;}bool enQueue(int value) {if(isFull()) {return false;}q[rear] value;rear (rear 1) % qSize;deflag false;…

Linux中gcc/g++的使用

文章目录 前言gcc/g 前言 gcc和g即为编译器。其中gcc为c语言的编译器,只能编译c语言;g为c的编译器,既能编译c语言,又能编译c。 在前面的文章中,我们提到代码转换成可执行程序需要经过 预处理(进行宏替换)…