基于机智云的STC单片机水温智能控制管理系统的设计与实现
来源:行星减速电机 发布时间:2024-04-04 09:43:03:随着物联网技术的持续不断的发展,信息化水准不断提高,传统控制结合现代化的智能网联技术是现代智能
热线电话: 0574-62199590
产品视频
产品明细
:随着物联网技术的持续不断的发展,信息化水准不断提高,传统控制结合现代化的智能网联技术是现代智能物联网控制技术的发展趋势。设计一种物联网的水温控制管理系统,包括机智云物联网平台,DS18B20水温传感器、水温主控制器和通信模块STC单片机、ESP8266无线模块等。系统通过采集当前水温的状态和按键的控制状态,采用PID算法得到控制值,输出信息给加热驱动和直流电机模块,实现水温的加热,同时通过并口和通信模块连接,通信模块通过串口和ESP8266连接,ESP8266通过WiFi连接物联网平台,实现温度的远程监测和控制。
作者简介:张吉圭(1987—),男,侗族,贵州贵阳,讲师,工程师,研究方向:嵌入式技术,物联网技术。
摘要:在实际的应用案例中,抗干扰性和稳定能力好,控制精度达到0.1度,产生了工程意义。
随着控制技术、测量仪器、物联网技术的发展,在石油、能源、电力及化工生产的全部过程中,应用了慢慢的变多先进的方法、设备和控制测量技术。在众多的先进测量控制技术中,如何高精度控制水温成为焦点课题之一,为慢慢的变多的机构所重视。在环境恶劣或温度比较高等场景,为了能够更好的保证生产的全部过程正常安全进行,提升产品的质量和数量,同时减轻工人的劳动强度和节约能源,及时准确地得到温度信息并对其进行适时的控制,是许多工业场合重要的环节。一种典型的STC 单片机控制管理系统结合物联网技术实现温度的远程监测和控制,为实现水温的智能化控制提供了可能。
系统硬件包括STC 单片机控制电路、通信电路、液晶显示电路、加热驱动电路、温度均匀搅拌装置和无线WiFi 模块组成的系统硬件装置。系统硬件模块连接如图1 所示。系统软件主要是采用C 语言编写,通过C语言和Keil 搭建软件编程环境,机智云物联网平台和硬件电路开发板作为调试工具来完成系统设计。
在智能化控制方案中,系统采用两个STC 单片机搭建方案,一个STC 单片机作为主控制器,负责信号的处理、显示、输出控制等。另一个STC 单片机作为通信控制器和ESP8266无线WiFi 连接,解决通信中通信协议数据量大和控制器RAM 小的问题。其中ESP8266无线WiFi 器件为核心的数据传输模块,连接机智云物联网平台,数据通过通信链路实现传输,在机智云物联网平台上或终端进行数据监测。其硬件原理图如图2所示。
系统工作电源采用直流稳压电源,利用变压器把220 V 交流变直流,通过桥式镇流、滤波、稳压器件LM7805 和LM1117RS-3.3 分别得到5 V 和3.3 V 的工作电源。直流加热电源采用集成24 V/200 W 的开关电源供电。5 V 和3.3 V 的电源分别为STC 单片机最小系统和ESP8266无线WiFi 模块供电,其中STC 单片机最小系统包括电源电路、复位电路、时钟电路及下载电路。硬件原理图如图3 所示。
温度采集采用DS18B20 传感器对水温进行采集,加热系统采用直流加热棒加热。在整个加热和水温采集环节,发现采集的温度点不一样,得出温度控制参数不一致,经过不断实验和发现,温度在加热过程中存在不均匀现象,会有不同温区存在。为解决水温不均匀的现象,设计一种搅拌装置,在水温加热过程中周期性对加热区的水进行搅拌,使得DS18B20 能够采集到较准确的水温值,在整定PID 过程中能获得更为准确的PID 参数,进而提高系统稳定性和可靠性。硬件原理图如图4 所示。
系统采用24 V/200 W 直流电对加热棒加热,加热棒的温度直接影响水的温度,因此控制加热棒温度就能控制水的温度。设计一种PWM(脉宽调制)信号对直流加热棒的驱动电压加热时间来控制,进而控制加热的热能,PWM 信号是实际温度与设定温度的差值通过PID 计算得到的一个控制值,能够精确控制温度信号。为使控制器的PWM 输出能够控制24 V/200 W 的驱动信号,用SSR 单项固态继电器设计了输出驱动电路,经反复实验表明,该驱动电路能够很好的满足系统的要求。其显示部分用带中文字库的字符液晶ST7920 控制的12864 显示温度数据和温度设定,并实现温度曲线的实时绘制和温度控制时间的显示。其硬件原理图如图5所示。
随着通信技术的发展,STC单片机的功能越来越强大,有代表性的编译软件有Keil、IAR、CodeWarrior 等。代码语言有汇编语言、C 语言、Java 语言等。C 语言拥有非常良好的逻辑及功能性,本次设计选择STC单片机作为主控制器,编程语言选用C 语言,编译软件选用软件Keil。
整体系统软件设计是由系统中不同功能模块整合在一起实现系统功能。系统中包括PWM 输出程序设计、PID 温度控制程序、按键扫描程序、液晶显示驱动程序、WiFi 模块通信程序、报警电路、DS18B20 温度传感驱动程序及电机驱动搅拌装置。根据软件框架图,设计程序流程图,为程序的功能实现、算法编码、软硬件调试、后期维护提供条件。程序总体流程图如图6 所示。
PID 温度控制是一种成熟技术,具有结构相对比较简单、易于理解和实现的特点。在工业控制中90% 以上的控制管理系统回路都具有PID 结构。PID 调节将设定值W 与实际值y 作比较构成偏差,并将其比例、积分、微分通过线性组合构成控制量。采用PID 控制效果的好坏很大程度上取决于PID 三个控制参数的确定。PID 控制主要构成如图7 所示。
其中,Kp为调节器的比例放大系数;Ki为积分时间常数;Kd为微分时间常数。
水温系统的智能控制采用PID 增量式算法,根据实验结果和数据,采用先比例再积分,最后微分的实验凑试法进行PID 参数整定。比例系数的整定取消积分和微分的作用,采用纯比例控制,将比例系数从小到大调节,观察系统的响应,直到响应速度快且有一些范围的超调,得出比例系数。积分部分的整定,如果系统的静态差达不到系统要求,这时需加入积分,整定时积分系数由大到小逐渐递减,观察输出,直至系统静态误差减小或消除,得出积分系数。微分系数的整定,如系统通过比例和积分调节都不能够达到要求,需加入微分系数,同样,整定时使微分系数从小到大逐渐增加,观察超调量和稳定能力,同时微调比例系数和微分系数,观察系统的输出响应、超调量和稳定能力。通过不断实验和整定,电源为200 W 直流加热系统,加热0.5 升的纯净水,在气温变化为20 ℃时,超调量不超过0.1 ℃,得出PID 的比例系数为19,积分系数为0.036,微分系数为0.8,能够使PWM 输出达到系统控制要求。
智能水温控制管理系统,通信部分主要是STC 单片机之间的通信、STC 单片机和ESP8266 WiFi 的通信,以及ESP8266 WiFi 和机智云之间的通信。由于STC 单片机模拟了PWM 的定时输出,如果利用串口进行通信,会出现不稳定现象,为避免这种现象,STC 单片机之间的通信采用并行口,结合P15、P16 实现并口通信协议,协议内容如表1 所示。STC 单片机通信控制从P0 端口接收到温度控制器传输的数据后,用串口连接ESP8266WiFi 模块,ESP8266 WiFi 模块连接当前环境的路由器热点,与机智云服务器建立TCP 连接,进行数据传输。同时,手机终端或WEB 终端发送控制命令,通过命令数据→机智云服务器→ ESP8266 WiFi → STC 单片机通信控制→ STC 单片机控制管理系统的通信流程,对温度进行远程监控。
根据软硬件测试,系统自检正常,温度显示正常,通信正常。设定STC 单片机控制水温在一些范围内,对整体水温控制管理系统进行测试,在20 ~ 60 ℃范围内实现多组设定,温度控制实验效果如图8 所示。
通过实验结果分析,每个测试的目标温度反映实际和误差,在相同测试环境下,将温度计和温度采集模块所测得温度进行比对,将数值记录得到表2,从而得到标度误差。
设计以STC 单片机结合增量式PID、PWM 脉宽输出、机智云物联网平台,完成了系统软硬件设计,经过综合调试和测试,验证了该远程控制系统软硬件设计结构符合常理,性能可靠,操作方便。由于时间和实验条件限制,该系统模块设计仍有一些缺点和不足,没有采用更高性能的处理器来完成硬件和软件设计,未来有待加强完善。