当温度保持在设定范围时,单片机P3.7发送高电平信号光电开关没有动作,从而继电器断开,电机也不转动。
当温度超过设定温度的上限或者下限时,单片机P3.7发送低电平信号光电开关动作从而使继电器开关闭合电机通电运转,实现降温和升温的目的,当温度再次回到设定温度的范围时单片机P3.7又发送高电平信号,电机停止运转。这样,就使温度能够稳定在设置的温度范围内[8,9]。
继电器电路中有一个三极管的保护电路,即将一个二极管反向接到三机管的两端。连接方法如图8所示。当继电器突然断电时,继电器产生很大的反向电流。二极管具有将反向电流分流的作用,从而使流过三级管的电流比较小,保护三极管不受破坏。
图8 执行电路及提示电路
2.7 系统硬件设计电路
冷库温度控制系统硬件原理图如图9所示。此图是在Proteus仿真软件中利用虚拟元器件连接而成,将图画好后可以加入程序进行仿真与调试,改变程序可以将冷库温度控制在一定的范围内,还可以在原理图中加入报警器件,当温度超出设定的范围时,会启动报警电路,将信号传回主程序,进而对冷库的温度进行控制与调整。图9为没加入程序时的系统原理图。
图9 冷库温度控制系统硬件原理图
3. 系统软件设计
3.1 主程序设计
整个系统是硬件和软件相结合的情况下来实现冷库温度检测控制功能,硬件设备完成之后,相应的软件的功能就能够定下来。软件部分可以分为主程序和子程序两类。主程序是整个控制系统的核心,它的作用是对操作者和各执行模块进行协调。子程序的作用是对测量的温度进行计算和显示。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。各执行模块规划好后,就可以规划主程序了。首先要根据系统的总体功能选择一种最合适的主程序结构,然后根据实时性的要求,合理地安排主程序和各执行模块之间地调度关系[10-12]。
图10 主程序流程图
3.2 读温度程序设计
温度在液晶显示器1602上显示,读温度流程图如图11所示:
图11 读温度流程图
4. 系统仿真与调试
先在Proteus仿真软件上画出冷库温度控制原理图,如图9所示,即为系统原理图。将原理图画好后,在编写相应的程序,编好后利用Keil软件进行调试与检验,看是否有错误,生成Hex文件,修改直到没错后将程序加载进入单片机即可仿真(主程序见附录[13])。根据仿真结果即可调试符合条件的程序,从而达到温度控制的目的。
点击按钮能够随意调试时间和设定系统温度值。当调节DS18B20使测量温度值不在系统温度设定值的范围时,继电器吸合电机开始转动。图12为系统调试成功图。
图12 系统仿真图
5. 结束语
本文主要介绍了基于STC89S52单片机的冷库温度检测控制系统,冷库温度控制的方案及各个主要模块的选择。本系统通过硬件电路设计及软件编程,能够实现对冷库温度的检测与控制,控制模块采用继电器控制电机来实现温度的调节。与传统测试系统相比具有设计简单、成本低、实用性好、易于实现等特点。
本文同时也有一些不足之处:由于时间等诸多原因,只进行了理论阐述和系统仿真,没有做出实物,进行实际电路测试。在实际应用时可能还会出现不同的问题。对系统的研究本着一切从实际出发,对温度控制进行研究和改进,对电路的设计方面有待进一步的学习和实践。 STC89S52单片机冷库温度检测控制系统设计+源代码+流程图(5):http://www.youerw.com/zidonghua/lunwen_1501.html