基于单片机的小型家用燃气锅炉控制系统设计Word文件下载.docx
《基于单片机的小型家用燃气锅炉控制系统设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的小型家用燃气锅炉控制系统设计Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。
2.1温度采集模块
AD590是电流输出型的温度传感器,测温范围为一55弋〜150。
。
电源电压范围
为4V〜30V。
电源电压可在4V〜6V范围变化,电流变化1mA,相当于温度变化1K。
温度采集电路如图2.2所示。
AD590
5
AD590经过10K之后的电压变化范围为2.732V(对应于0°
C)〜3.732V(对应于100°
C)o因此,为了在电路中能得到从零开始处理的数值,加入了减2.732V的减法电路。
经过减法电路后,电压变化范围变成了0V〜IV。
由于釆用了输入电压范围为0V〜5V的ADC0808作为A/D转换器,因此在减法电路的基础上,乂加入了系数为5的放大电路,这样输入A/D转换器的电压范围就变成了0V〜5V的电压了。
2.2A/D转换模块
本设计采用具有8路选通输入的ADC0808作为A/D转换芯片oADC0808是一个逐次逼近式CMOS型A/D转换器,内部没有时钟电路,需外部提供时钟信号,其8位数据输出引脚可直接与单片机相连。
若想使ADC0808在选择开启通道的同时就开启转换,则将通道地址锁存允许信号线和启动信号输入线连在一起即可。
EOC是转换结束信号,还未进行A/D转换时,EOC输出高电平,当启动信号的上升沿到来之后的0〜8个时钟周期内会输出低电平,A/D转换结束后,EOC端乂会输出高电平。
OE是数据输出允许信号,当A/D转换结束时即EOC输出高电平时此引脚输入一个高电平,才能将数据输出三态门打开,输出数字量。
A/D转换电路与单片机的硬件接线图如图2.3所示。
图2.3A/D转换电路的硬件接线图
2.3时钟模块
DS1302带有一个实时时钟/日历和31字节静态RAM,只需通过简单的同步串行方式就能与单片机进行通信。
DS1302山备份电源Vccl或主电源Vcc2两者中的较大者供电。
XI和X2是振荡源,一般会在两引脚之间跨接32.768KHZ晶振用于给芯片提供计时脉冲。
两是复位输入端,若想启动所有的数据传送只需把面输入驱动置高电平即可;
若想对DS1302进行操作并对所有的数据传送进行初始化,则将区〒置为高电平即可;
若想终止正在进行传送的数据并把I/O引脚变成高阻态,则将两置为低电平即可。
DS1302的硬件接线图如图2.4所示。
XI
VCC1VCC2
4>
+5V
D+3V
5Pl.2
7~^0
6—J
|32768Hz
DS13O2
图2.4DS1302的硬件接线图
X2
RST
SCLK
I/O
2.4LCD显示模块
在本系统中,山于要对温度和时间进行显示,因而选择液晶显示屛1602模块作
为输出器件。
LCD1602内部的字符发生存储器(CGROM)存储了160个不同的点阵
字符图形,每一个字符都对应一个固定的代码,例如的代码是01001101B(4DH),
显示时模块把地址4DH中的点阵字符图形显示出来,我们就能看到字母“MS单片
机与1602液晶显示屛的硕件连接图如图2.5所示。
U1
19
18
RESET
31
PSEN
ALE^P
EAAP
2T
4
6
7
P1.0
Pl」
Pl.2
Pl.3
Pl.4
Pl.5
Pl.6
Pl.7
PO.O
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
P3.0/RXDP3.1/1XDP3.2/INTOP3.3/INT1
P3.4/TOP3.5/T1
P3.6/WR
P3.7RD
39
35
34~
2i~P2.0
22P2.1
23P2.2
24P2.3
25P2.4
26P2.5
27P2.6
28P2.7
10P3.0
11P3.1
c13P3.3
~14
15-
16
1602
LCD
A1B9C51
图2.5单片机与1602液晶显示屏硬件连线图
2.5
键盘输入模块
键盘从硬件电路结构上可分为行列式键盘和独立式键盘两种。
行列式键盘,因其按键排列为行列式矩阵结构,所以也称为矩阵式键盘。
若用户所需的按键数U较多,可采用行列式键盘以便于节省口线。
所谓独立式按键,就是直接用一根I/O口线构成的单个键盘电路。
每根I/O口线上的按键的工作状态不会影响其他I/O口线上的按键
的工作状态。
在进行本次设计中,因只涉及到设置键、加1键、减1键三个功能键,所以采用独立式键盘。
独立键盘设汁如图2.6所示。
图2.6独立按键的设计
2.6输出通道模块
在输出通道中,我们可以使用交流型固态继电器来实现对执行器电源的控制,进而实现对执行机构开关进气门的调整。
固态继电器因具有较多优点,例如工作电流小,兼容CMOS及TTL电路,能使用晶体管方便有效的驱动开关等,而备受用户的喜爱,在未来很可能会逐渐取代可控硅和传统的继电器成为微机测控系统的主要执行元件。
固态继电器之所以能防止干扰信号通过输出通道反串到控制系统中,是因为它的内部自带光电隔离装置。
单片机与固态继电器的接口非常简单,只要将一个驱动器接在单片机的输出口就行了。
输出通道的设计•如图2.7所示。
D1
图2.7输出通道的设计
3软件设计
在单片机应用系统的开发过程中,C语言的应用最为广泛。
C语言不仅能直接对
计算机的硬件进行操作,而且语言灵活、程序结构良好、代码效率高、可移植性好。
3.1系统总流程图
流程图分析:
当电源上电后,系统进行初始化,系统开始运行,启动A/D转换,若A/D转换完成,则读取并处理A/D转换结果,完成后再分别调用键盘、定时和控制子程序;
若A/D转换还未完成,则等到转换完成后再执行下面的程序。
在该程序中通过中断方式来实现对当前时间以及实际温度的显示,系统总流程图如图3」所示。
图3.1系统总流程图
3.2键盘程序流程图
若有设置键按下,则进入修改时间、温度及定时模式;
若无按键按
下,则读取时间、温度及定时等数据送入液晶屏显示。
在修改模式下设置时间、温度
及定时等,设置完成后再送数据到液晶屏显示。
键盘程序流程图如图3.2所示。
图3.2键盘程序流程图
3.3定时程序流程图
当前时间与定时时间相等时,LED灯亮,否则LED灯不壳。
定时
程序流程图如图3.3所示。
图3.3泄时程序流程图
3.4控制程序流程图
当实际温度大于等于设定温度时,模拟电炉不加热,当实际温度小于设定温度时,模拟电炉加热。
控制程序流程图如图3.4所示。
图3.4控制程序流程图
3.5DS1302时钟程序流程图
DS1302进行初始化,当有中断信号时,读取时钟芯片的数据并送入液晶屏显示。
若有设置键按下,则进行时间修改,完成后将数据送入时钟芯片;
若没有按键按下,则直接读时钟芯片送显示。
时钟流程图如图3.5所示。
图3.5时钟程序流程图
3.6LCD显示程序流程图
首先对1602显示屏进行初始化,然后进行忙信号检查,如果BF=0,则获得显示RAM的地址并写入相对应的数据进行显示;
如果BF=1,则表示模块正在进行内部操作,暂时不接受任何数据及外部指令,直到BF=0为止。
LCD显示程序流程图如图3.6所示。
图3.6LCD显示程序流程图
4仿真与调试
上电后,LCD可马上显示当前时间,实际温度,LCD显示如图4」所示。
09:
07:
3000:
00
REL69C.SET00C
OLcebsgb-aoooooao
图4.1LCD显示
可调节当前时间的秒位,调节秒钟如图4.2所示。
09:
08:
5200:
REL69C.SET06C
图4.2调节秒钟
调节当前时间的分位,调节分钟如图4.3所示。
08:
5200200
REL6%.SET00C
OLcebsgb-
图4.3调节分钟
调节当前时间的时位,调节时钟如图4.4所示。
5200:
08
REL69C.SETS9C
OLcebsgz
图4.4调节时钟
调节设定温度的个位如图4.5所示。
03
Ox-eeusgr-
图4.5调节设上温度的个位
调节设定温度的十位如图4.6所示。
89:
5208:
站sgOx-CNOO'
crmaorx-
>
>
it:
LU00D00D00
图4.6调节设宦温度的十位
定时时间的分钟调节如图4.7所示。
68:
5260:
出sgOLceusgz
左左LLl0000000D
图4.7定时时间的分钟调节
定时时间的时钟调节如图4.8所示。
5216:
pLLJsgOLCCbSgz
orit:
luaoaooaoo
图4.8定时时间的时钟调节
当前时间与定时时间相同时LED灯亮(否则LED灯不亮)。
到定时时间LED灯亮如图4.9所示。
16:
1616:
Ox-eevsgz
(a)到泄时时间
(b)LED灯亮
图4.9到左时时间时LED灯亮
能实时显示实际温度,如图4.10所示。
16:
18:
0316:
图4.10实时显示实际温度
当实际温度小于设定温度时,模拟电炉加热,如图4.11所示。
19:
5216;
REL69C.SET79C
图4.H实际温度小于设泄温度时模拟电炉加热
当实际温度大于等于设定温度时,模拟电炉不加热,如图4.12所示。
56:
5706:
REL69C.SET65C
(a)实际温度大于设左温度
(b)模拟电炉不加热
图4.12实际温度大于设定温度时模拟电炉不加热
4结束语
通过此次对小型家用燃气锅炉控制系统的设汁,我清楚地了解了单片机系统设计的大致流程并掌握了硬件与软件设汁的基本方法和技术。
在设讣之初,我对如何设计单片机的系统了解甚少,可以说是一头雾水,但随着查找资料,请教老师及反复思考,开始慢慢理解,直至最终完成了单片机控制系统的设讣。
在系统的设汁过程中,我充分发挥了自己的主观能动性,自主学习,不仅巩固了以前的知识,而且学到了许多新知识。
在设汁硬件电路的过程中,山于我缺少经验,以致犯了很多低级错误,例如,使用了错误的元器件,地址分配不当等。
好在,这些错误在我不断查找资料和学习当中,逐个解决了。
在编写程序的过程中,山于我思路混乱,以致看不清本质,将很多问题复杂化,经过静下心来反复思考,向老师请教,终于理清了思路并完成对程序的编写,实现了老师要求的功能。
虽然我大体上完成了系统设计所要求的功能,但是由于自身能力及时间的关系,整个控制系统还不够智能化,还有很多地方需要补足及扩展,这些问题要待以后来弥补,希望各位老师及同学能够予以修改和指正。
参考文献
[1]石建华.单片机原理与应用技术[M].北京:
北京邮电大学出版社,2008.
[2]沙占友,王彦朋.单片机外围电路设计[M].北京:
电子工业出版社,2003.
[3]何立民.单片机应用技术选编[M].北京:
北京航空航天大学出版社,2000.
[4]赵亮.单片机C语言编程与实例[M]・北京:
人民邮电出版社,2003.
[5]马全利.单片机原理及接口技术[M]・北京:
高等教育出版社,2004.