×
单片机 > 单片机程序设计 > 详情

用单片机玩PID控制—从理想PID控制至先进PID控制_1

发布时间:2020-05-28 发布时间:
|

1前言


以前用MATLAB玩控制,纯粹是玩“虚”的,控制器是是虚的,控制对象也是虚的,总感觉不怎么实,后来发现单片机满好玩的,有硬件也有软件,还有通信等,就这些来说,与PLC有点类似,于是,就尝试玩单片机,初步掌握后,就开始用单片机玩控制,当然,你不可能有一家化工厂、火电厂或一台马达去玩控制,最简单的一个方法是利用MATLAB/SIMULINK去构建一个plant,在SIMULINK中仪表工具箱也有串行通信模块,然后,用这个串行通信模块和单片机进行数据交换,理论上可以达到控制的目的,同时,串通信需要一个简单的握手协议,否则无法进行数据交换,那就再编写了一个S函数,试验的结果是仿真速度令人出奇的慢,更不要说进行实时仿真了,扫描了一下仪表工具箱help,也没发现原因,算了,不浪费时间在那上面了,换一种技术路线图吧,改用OPC来与单片机通信,为此用VB6编了一个通信程序,内含串口通讯和OPC客户端程序,整个数据交换的流程是:单片机用串口通信与VB6通信程序相连,然后通过VB OPC客户端与WINCC OPC服务器端相连,而WINCC OPC服务器端与MATLAB/SIMULINK OPC客户端相连,从而达到单片机与SIMULINK互联的目的,在MATLAB/SIMULINK OPC通信的情况下,仿真是实时的,这也正是我们所需要的,这种情况被称为实时仿真或者叫半实物仿真,也可叫硬件在环仿真,此外,用OPC进行数据交换还有一个好处,就是可以将单片机挂到现场设备上如S7-PLC,或者说用单片机去控制PLC输出。整个数据链打通后的情况如下图所示:






关键字:单片机  PID控制  理想PID控制  先进PID控制 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
51单片机CO2检测显示程序解析