利用ATmega16设计电热锅炉温度控制器的方法
的RS485或RS232计算机数据串行通信方式,通过串口按一定的通信协议接收来自计算机串口RS232的信号,经过处理后按一定的规律传送到显示屏上显示。通信接口电路如图6所示。 系统软件研制 系统软件主要采用了PID控制实现,全部软件都是用C语言编写的,软件流程图如图7,由一些功能模块组成。 初始化模块完成I/O的设置、数据存储器分配(包括A/D采样的结果、输入按键的键码、程序标志等) 、定时器、A/ D的设置并开中断;循环扫描模块检测是否有键盘输入、A/D转换完成否、是否定时中断等判别任务。若有则转跳至相应的子程序或中断程序;中断处理模块依据状态完成定时计数、A/D采样、键盘扫描等任务;显示驱动模块依据状态完成温度或系数的显示;键盘处理模块检测键码并进入相应处理程序;定时中断模块完成定时计数,定时间隔约为1s,为系数的设置提供数码;温度控制模块依据测得的数据和预置数的差确定控制信号的输出。 在实验装置中的应用 用ATMEGA16单片机实现的智能温度控制器,主要有如下功能: (1)能对电热锅炉进行升温、恒温的控制; (2)系统能方便地设定指定温度和恒温时间。系统工作时能循环显示工作时间、实际锅炉温度,给定温度,可随时进入或退出系统; (3)系统应具有温度超限、防干烧报警功能,当延迟1分钟后,则自动断电退出工作状态; (4)系统应具有二位式控制和PID控制功能,系统应具有与PC机的通信功能; (5)系统应具有较强的抗干扰能力。 将研发的智能温度控制器应用于浙大中控的AE2000B型过程控制实验装置中,具有稳定性好、精度高、抗干扰能力强等特点,满足实验所需的各项指标的要求,达到了预期的效果。 结束语 通过实践运行表明,所设计的系统能够可靠、稳定、无扰动地完成手动、自动切换的功能,并且在系统出现超温、超压、缺水以及漏电等紧急情况时能报警并自动切断系统。以PID算法为核心的控制器能很好地满足系统的稳定性和精度要求,并且具有开发周期短、成本低、性能高、功能易扩大的优点。
图6 通信接口电路
图7 主程序
- 基于MMS的即时报警系统设计(01-23)
- 基于ATmega162的智能仪器设计(08-18)
- AVR汇编初探之二《AVR的指令与汇编系统》(01-10)
- Atmega16与DS1302数码管显示程序(12-02)
- ATMEGA16与DS18B20数码管显示(12-02)
- ATmega16利用TWI模块读写24C02程序(12-02)