打印

PID控制曲线

[复制链接]
1240|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
一、             温度控制系统上位机编程思想
上位机软件用C++Builder6.0开发。
上位机与下位机通讯采用RS232或RS485通讯方式。其中串口配置为9600波特率。上位机中可以设置PID参数,可以设定设定温度参数,也可以实时显示当前温度值。可以进行温度PID的启停控制。
界面设计图如下:
其中,串口通讯使用MSCOMM控制。Label4为用于显示北京时间的标签控件。温度曲线中,红色线设定温度,绿色线为实时温度。在串口打开后,实时显示实时温度值并在TChart控件中添加数据点以绘制曲线。
         由于支持半双工RS485通讯方式,上位机设为主机,单片机控制设为从机。主机在下发命令后,从机回传数据。PID温度的启动需在打开串口后按下启动按钮,启动时,会下发启动命令且将PID参数及设定温度参数下传。在修改设定温度时,需按下旁边的“确定”按键,下传温度设定参数。定时器控件设有两个,一个触发事件实现显示北京时间,一个触发事件下传温度采集命令。打开串口后,每S钟进行一次实时温度采集。
         通讯协议定义如下:
上位机向下位机传送的命令:
1.      启动命令:7个字节
0xAA   0x01  设定温度值  P参数   I参数  D参数  0xFF
2.      停止命令:4个字节
0xAA   0x04   0x00    0xFF
3.      设定温度命令:4个字节
0xAA   0x03   设定温度值   0xFF
4.      温度采集命令:4个字节
0xAA   0x02   0x00    0xFF

         温度控制运行界面分析如下:
一、             下位机编程设计
下位机使用Easy51-CRE9.2开发板。主芯片为STC89C52RC,采用4位共阴极数码管进行显示。
其中当使用485通讯时,RS485收发控制引脚定义为P13,当P13为低电平时,MCU处于接收数据状态。当P13为高电平时,MCU处于数据发送状态。
单片机定时器0用于定时器功能,2MS定时中断,扫描数码管进行显示。定时器1用于波特率发生器,设为9600BPS。串口中断实现通讯功能。
数码管显示具有五种模式,定义如上:
模式0:温度实时值显示(前1位数码管显示模式,后2位显示实时温度值,精确到0.1C
//模式1:目标温度设定(建议在常温至65度)
//模式2:PID参数中的P参数调节模式(0.0-50.0)
//模式3:PID参数中的I参数调节模式(0.0-50.0)
//模式4:PID参数中的D参数调节模式(0.0-50.0)
二、             具体代码请参考例程

四、其它备用参考

相关帖子

沙发
yiyigirl2014| | 2015-7-3 16:24 | 只看该作者
模式1:目标温度设定(建议在常温至65度)
//模式2:PID参数中的P参数调节模式(0.0-50.0)
//模式3:PID参数中的I参数调节模式(0.0-50.0)
//模式4:PID参数中的D参数调节模式(0.0-50.0)
不懂啥意思。。

使用特权

评论回复
板凳
fanxsd| | 2015-7-3 17:39 | 只看该作者
发到 ST 板块有什么意思呢?

使用特权

评论回复
地板
mmuuss586| | 2015-7-3 19:30 | 只看该作者
如果做广告请发:供需广告版块;

你的内容和ST版块没任何关系;

使用特权

评论回复
5
Fannymini|  楼主 | 2015-7-4 09:39 | 只看该作者
mmuuss586 发表于 2015-7-3 19:30
如果做广告请发:供需广告版块;

你的内容和ST版块没任何关系;

然而我那个字说明我是在发广告了,当然你要认为是广告,我也没啥好说的。

使用特权

评论回复
6
Fannymini|  楼主 | 2015-7-4 09:43 | 只看该作者
fanxsd 发表于 2015-7-3 17:39
发到 ST 板块有什么意思呢?

闲的蛋疼而已

使用特权

评论回复
7
autolog| | 2015-7-4 13:22 | 只看该作者
时间轴和温度轴刻度可调就方便了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:从事STM32/STM8开发板、电机套件、手机周边产品开发,技术交流群:19043725。https://fretech.taobao.com

53

主题

162

帖子

7

粉丝