4.1 EDA仿真软件―Proteus
Proteus是一个功能强大的EDA工具软件。它除了具有其它EDA软件的仿真功能,而且还能仿真单片机及外围器件[6]。
为了节约时间和控制成本,所以在硬件的设计时,采用了proteus对系统仿真。在仿真的过程中还可以与keil软件进行联调,方便观察仿真效果。如图4-1所示。
图 4-1 系统仿真图
4.2 系统程序流程图
主程序的功能是是完成系统的初始化,信号的采集及处理、按键检测和信息显示、浓度超线报警。根据系统工作特点,程序采用结构化的设计方法。主程序流程图如图4-1所示:
15
N 图 4-1 系统程序流程图 开始 初始化 读取AD转换烟雾值 判断当前 烟雾范围 执行相应 的指示控制 判断按键 是否按下 Y 设置相应参数 显示设置数值 结束 图4-2 主程序流程图
4.3 烟雾探测子程序的设计
在这个模块中,主要包括MQ-2传感器和ADC0809数模转换芯片。所以,在设计这个模块的程序时,主要是把MQ-2传感器获得的模拟信号转换为数字信号传给P1口。如图4-3在KEIL中关于烟雾探测子程序的截图。
16
图4-3 KEIL中烟雾探测子程序
4.4按键电路子程序的设计
该子系统的设计主要是为了对设定值进行修改,如图4-4所示:
START
寄存器初始化单片机I/O口初始化 检测是否有按键按下,并通过延时判断是否真的按下 是否为Key1键按下 N Y 判断Key1按下几次 通过Key1键选择相对应的设定值,用Key2和Key3进行修改 Key1是否按下5次 N Y
结束
17
图4-4 按键子系统的设计流程图
4.5 电机驱动子程序的设计
该子系统主要是利用检测的煤气浓度值和煤气浓度报警设定值进行比较,如果检测值大于设定值,则排风扇启动,否则停止。如图4-5所示。
ATART 检测值是否大于设定值 使P3.4引脚变为低电平,使排风扇启动 结束
使P3.4引脚变为高电平,使排风扇停止 图4-5 电机驱动程序的设计流程图
18
总结
煤气泄漏为一种在人们日常生活中发生频率较高的灾害,已经使人类的生命财产和社会安全稳定构成了极大的威胁。由此引发的重大安全事故每天发生,所以人类一直也未停止过对此方面的研究。
该设计在参考了国内外大量资料的基础上,针对传统的一系列煤气报警探测器存在的问题,合理地提出了煤气检测报警器的设计方法。极大地提高了产品的实用性和市场竞争力。
本课题中设计的煤气检测报警探测器由传感器电路与电机驱动电路两大部分构成。控制处理器是以管脚资源丰富的STC89C52为核心,利用MQ-2传感器将煤气浓度信号转化为电信号,并选择模数转换芯片ADC0809将模拟信号进行转化,再将转换后的信号经单片机处理,若大于预设值则报警,并启动外接排风扇,避免事故的发生。应用程序以C语言编写,充分利用芯片的内部资源,提高了代码执行效率,减小了代码的容量。由于该探测器具有体积小、功耗低、安装调试简单、可靠性高等优点,因此,该设计完全符合了毕业设计的要求。
本文中煤气报警系统的设计,在智能控制方面,采用了单片机STC89C52作为系统控制核心,最大限度的将其具备的资源应用到设计中,即体现了单片机应用的灵活性,又实现了功能多样的智能控制。由于采用了单片机技术为主导的智能化管理,可实现对煤气浓度的动态监控,运行稳定可靠,灵敏度高,具有非常重要的市场应用价值。在实际使用中,不同的应用场合有着不同的报警浓度下限。
经过一个多月的毕业设计,使我真正有机会对大学期间所学的专业知识进行了系统的总结,运用所学知识分析问题,通过查阅资料解决问题,从课题的分析设计到最后的硬件电路设计和软件编程的实现,都是自己认认真真的完成的。
为了完成好本次毕业设计和降低本次毕业设计的成本,我首先是把该设计的要求看好,然后按照这个要求画了系统流程图。接下来就是按照要求用PROTEUS仿真和选择元器件,我觉得画仿真图是简单的,难的就是选择元器件,有些就是查了很久的资料才搞懂。再仿真图搞定之后,我又对着图用KEIL写程序,过了一个星期之后才和PROTEUS进行联调,最终在修改中使仿真电路图成功。最后就是按照图焊接实物图并进行调试。
通过本次毕业设计的锻炼,我学到了很多分析问题和解决问题的方法,也巩固了单片机的知识。期间也碰到过许多问题,比如气体检测模块等,但我通过查
19