要:详细介绍了采用RS232串口完成LabVIEW与PLC之间通讯,并利用该方法,设计了一种基于LabVIEW与PLC的串级控制系统。实验结果表明:控制系统已达到了预期的设计效果。 The design of a cascade control system based on LabVIEW and PLC XIE Jianjun,WANG Hongmeng,XU Chunmei (Power and Mechanical Engineering School of Wuhan University,Hubei Wuhan 430072,China) Abstract:This article discusses an approach to the realization of the RS232 serial transfer between LabVIEW and PLC.The approach is used to design a cascade control system based on LabVIEW and PLC.The result of experiments shows that a satisfactory solution is reached. Abstract:This article discusses an approach to the realization of the RS232 serial transfer between LabVIEW and PLC.The approach is used to design a cascade control system based on LabVIEW and PLC.The result of experiments shows that a satisfactory solution is reached. The design of a cascade control system based on LabVIEW and PLC XIE Jianjun,WANG Hongmeng,XU Chunmei (Power and Mechanical Engineering School of Wuhan University,Hubei Wuhan 430072,China) Abstract:This article discusses an approach to the realization of the RS232 serial transfer between LabVIEW and PLC.The approach is used to design a cascade control system based on LabVIEW and PLC.The result of experiments shows that a satisfactory solution is reached. Abstract:This article discusses an approach to the realization of the RS232 serial transfer between LabVIEW and PLC.The approach is used to design a cascade control system based on LabVIEW and PLC.The result of experiments shows that a satisfactory solution is reached.
关键词:LabVIEWLC;串级控制;串口通讯
Key words:LabVIEWLC;cascade control;serial transfer
Key words:LabVIEWLC;cascade control;serial transfer
Key words:LabVIEWLC;cascade control;serial transfer
Key words:LabVIEWLC;cascade control;serial transfer
要:详细介绍了采用RS232串口完成LabVIEW与PLC之间通讯,并利用该方法,设计了一种基于LabVIEW与PLC的串级控制系统。实验结果表明:控制系统已达到了预期的设计效果。 The design of a cascade control system based on LabVIEW and PLC XIE Jianjun,WANG Hongmeng,XU Chunmei (Power and Mechanical Engineering School of Wuhan University,Hubei Wuhan 430072,China) Abstract:This article discusses an approach to the realization of the RS232 serial transfer between LabVIEW and PLC.The approach is used to design a cascade control system based on LabVIEW and PLC.The result of experiments shows that a satisfactory solution is reached. Abstract:This article discusses an approach to the realization of the RS232 serial transfer between LabVIEW and PLC.The approach is used to design a cascade control system based on LabVIEW and PLC.The result of experiments shows that a satisfactory solution is reached.
关键词:LabVIEWLC;串级控制;串口通讯
Key words:LabVIEWLC;cascade control;serial transfer
Key words:LabVIEWLC;cascade control;serial transfer
The design of a cascade control system based on LabVIEW and PLC
XIE Jianjun,WANG Hongmeng,XU Chunmei
(Power and Mechanical Engineering School of Wuhan University,Hubei Wuhan 430072,China) Abstract:This article discusses an approach to the realization of the RS232 serial transfer between LabVIEW and PLC.The approach is used to design a cascade control system based on LabVIEW and PLC.The result of experiments shows that a satisfactory solution is reached.
Key words:LabVIEWLC;cascade control;serial transfer
Abstract:This article discusses an approach to the realization of the RS232 serial transfer between LabVIEW and PLC.The approach is used to design a cascade control system based on LabVIEW and PLC.The result of experiments shows that a satisfactory solution is reached.
Key words:LabVIEWLC;cascade control;serial transfer
[此贴子已经被作者于2008-4-19 11:17:06编辑过]
非常恶劣,采用数据采集卡和LabVIEW开发平台来完成现场的数据采集和控制显然不可取。
考虑到过程控制中的过程参数变化不是很快,而PLC恰恰可以克服数据采集卡在过程控制
中的不足,并且具有较高的性能比,因而采取以PLC为下位机,以装有LabVI
EW软件的工控机为上位机开发平台,通过RS232或RS485串口与PLC通讯,实现对工业现场的
监控与现场数据的分析。这样可以利用LabVIEW软件强大的数据处理功能和良好
的人机交互环境通过简单的编程实现上位机的SCADA功能。
1系统的基本结构 。系统结构如图1所示。系统采用OMRON公司C200HG系列的PLC为下位机,用RS232型电缆将HO ST LINK模块直接连到装有LabVIEW的工控机的串口上。 ST LINK模块直接连到装有LabVIEW的工控机的串口上。
现以实验室中的双容水箱对象为例来构建基于LabVIEW与PLC的过程控制系统
2PLC与上位机连接系统的通讯
上位机与PLC之间的通信实际上是计算机与PLC通信模块HOST LINK之间交换命 令和响应的过程。上位机具有初始传送优先权,所有通讯均由上 位机启动,不需要PLC编写通信程序,HOST LINK能够对上位机发送来的字符串进行分析,检查数据格式,分析指令代码,然后根据指令代码进行相应的操作,并向上位机发出响应信号。通知上位机已完成或反映通信的错误,如奇偶校验错误、FCS错误、代码错误等。在一次交换中传输的命令格式和应 答数据称之为一帧。命令帧要通过用户编写的上位机通讯程序实现,PLC的上位链(HostLink )单元会根据上位机发来的命令帧自动生成响应帧返回给上位机。
2.1命令帧格式
上位机命令格式如下:
其中@表示一帧的开始。节点号是上位机按该号来识别PLC。识别码是含有两个字 符的上位机链接命令代码,它表示上位机要对PLC进行何种操作,其识别码的含义见文献[4]。“正文”包括起始字和字数,起始字指的是要读写通道的起始地址,字数是指要读写的通道个数。FCS设置两个字符帧检查顺序码,FCS码由上位机计算,并设置在命令帧里。它主要是 用来保证在传送一帧数据时,在终止符前安排一个FCS码,以检查在传送数据时,是否发生 错误。FCS码的具体算法是:从一帧数据的开始到帧正文结束(FCS之前)所有数据字符的ASCI I码执行“异或”操作的结果,此结果是一个8位二进制数,然后分别把其高4位和低4位转换成两个16进制数并看成ASCII码。终止符是“*”,“回车”符表示命令的结束。
2.2应答帧格式
应答帧是由PLC自动返回的,其应答格式如下:
其中“结束码”是两位16进制数,它是PLC返回给上位机的通讯错误代码,其中00表示通讯无错误,不同错误代码的含义可参考编程手册。“正文”中每4位16进制表示一个通道的数据。
2.3LabVIEW与PLC通讯的实现
(1)PLC上位机链接设置
采用RS232C端口时,需要置DM6645的12~15位为0,PLC的节点号设置在DM6648的00~07位。 文中采用OMRON C200 PLC的默认设置。即在CPU的DIP开关J脚置OFF的情况下,PLC与上位机 之间采用如下参数进行通讯:
启动位:1位;数据长度:7位;停止位:2位;奇偶校验:偶校验;波特率:9 600 b/s。
(2)LabVIEW中串口通讯的步骤
LabVIEW共有5个串行通讯节点,包括初始化端口(Serial Port Init.vi)、串口写(S erial P ort Write.vi)、串口读(Serial Port Read.vi)、检测串口输入缓存中的字节数(Bytes at Serial Port.vi)、串口中断(Serial Port Break.vi)等功能,各个节点端口参数表见文献[2]。
在LabVIEW的程序中可采用下列步骤实现与PLC之间的通讯:
① 初始化串口,设置双方通讯的端口号、波特率、数据位、停止位、奇偶校验等;
② 把要发送的数据按PLC命令帧的格式打包,包括计算帧校验序列FCS;
③ 写端口,把整个命令帧发送到串口;
④ 延时等待PLC的应答帧到达串口;
⑤ 读串口,读取PLC的应答帧;
⑥ 把读取的应答帧解包,读取相应的数据。
LabVIEW中串口通讯的实现
① 初始化串口,按照PLC串口通讯的要求,通过Serial Port Init.vi节点设定,端口号设为0,即设定上位机的串口COM1与PLC通讯,若设其他串口,端口号依此类推;波特率设为9 600 b/s;数据位为7位;停止位设定为2位;奇偶校验设定为2,即对数据帧进行偶校验。
② 对PLC数据帧计算FCS并把数据帧打包,其子程序如图2所示:
第0步为计算帧校验序列FCS程序;第1步为数据帧打包程序。
在编程时应注意以下几点:
1)对于长度为n的字符串,要进行n-1次“异或”,因此循环次数应为n-1;
2)利用循环结构的移位寄存器对每个字符的ASCII码进行“异或”时,要对左侧的移位寄存器进行初始化[3]。在系统中,由于任何一帧数据都是以“@”开始,因此程序中采用“@”的ASCII码来初始化左侧的移位寄存器;
3)在For循环与循环外部的数据交换通道采用无索引(Disable Indexing)形式,这样就可在循环结束后一次性读取FCS的数值;
4)由于数据帧中FCS的数字是字符型的,要通过“Number To Hexadecimal String”这个节点把整型表示的FCS数值转换成2个以16进制表示的ASCII码字符;
5)程序中的“13”是回车符ASCII码数值。
③对串口的发送与接收及解包程序
数据的发送与接收主要是通过串口写、串口读节点来实现的。在写串口完成后要延时一段时
间(如延时250 ms)后再读串口,这样才能保证串口通讯正常进行。解包程序与打包程序类似,其过程正好相反。数据收发子程序如图3所示。
3系统的分析及方案设计
3.1系统分析
通过作双容水箱上升阶跃,采用LabVIEW的波形显示控件可得到一条与“S”型相近的响应曲线,可用一阶惯性环节加纯迟延近似表示其传递函数:
由于τ/T=1.06>1,故系统迟延较大[4],且动态特性存在非线性。经分析,动态特性的非线性主要是由于变频器及水泵的非线性造成的。在采用单级PID控制时,由于系统迟延较大,在水箱B出现正偏差、降负荷的初级阶段,水箱A中的水位值已经开始下降,但水箱B中的水位继续上升,使系统的动态特性变差;基于上述现象的存在,系统动态特性呈现一种近似等幅振荡状态。因而系统不宜采用单级PID控制。
3.2系统设计
经分析,采用串级控制系统可以改善对象的动态特性,提高系统的工作频率;对负荷的变化具有一定的自适应力;适用于非线性对象[1]。故采用串级控制方案,其控制系统框图如图4所示。
主调节器和副调节器是在LabVIEW中用公式节点实现的,整个串级控制算法为[1]:
Kp、Ti、Kd分别为调节器的比例增益、积分时间、微分时间。
在整个串级控制中,把整个控制对象分为导前区(水箱A)和惰性区(水箱B),其中副 调节器的任务 是快速消除系统内扰,以及克服变频器及水泵在系统负荷变化时对水位测量值的影响,起粗 调作用,故采用P调节规律;而主调节器的任务是维持水箱B水位的稳定,采用PID调节规律 。PLC的D/A转换模块DA004是12位的,所能接收最大数字量为OFFF(即4095),这时在主调节 器积分的作用下,在整个系统开始启动、停止或给定值变化幅度较大时,由于短时间内出现 很大的偏差,在积分作用下,整个调节器输出进入深度饱和状态,产生积分饱和[1],使系统产生较大的超调和振荡。在控制程序中采用积分分离的PID算法。在偏差大于某一值M时,主调节器采用PD控制,在水位测量值接近给定值时,采用PID控制。整个控制 系统的阶跃响应曲线见图5。
以PLC为下位机,以LabVIEW为上位机开发平
台,利用LabVIEW软件强大的数据
运算能力和数据分析能力并通过LabVIEW与PLC之间的串口通讯,组成了完整的串级控制系统
,试验表明,调节后水位的波动范围在? mm范围内,而且作系统扰动试验时,水位能够很
快的实现平衡。从而符合系统所要达到的稳、准、快的特性。PLC与LabVIEW的串
口通讯程序的设计方法亦要移植到其他上位机,整个系统的设计思想可应用于工业现场控制
的其他场合。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |