来源:网络转载更新时间:2021-03-11 17:52:13点击次数:1626次
本文介绍了结合PVC自动监控配混料系统项目的开发,介绍了欧姆龙C200HE串行通信接口的工作机制与特性,主要分析了在Delphi环境中实现上位机和C200HE监控系统的串行通信技术,并给出了部分关键程序。实际应用表明,给设计简单实用,性能可靠,对其他同类型的控制系统的设计有一定的借鉴作用。
由于该混配料系统配置灵活、可靠性高以及结构开放等优点,PLC被广泛应用于工业控制领域中,在此类控制系统中,一般均为两级递阶结构,一是智能数据采集系统,也就是通常所说的下位机;二是数据处理和显示系统,即上位机HMI(HumanMachineInterface)系统。上位机(微计算机、工业控制机)完成采集数据信息的存储、事件记录与处理、参数设定、状态显示、高级复杂算法等功能,实现系统的实时监控。下位机(PLC),主要完成数据采集、状态判别、输入输出控制等。工控机与PLC组成的主从式实时监控系统,是自动控制、计算机应用、信号检测与处理、通信等技术的综合应用,能够充分发挥各自在工业控制中的优势,在此类控制系统中,上下位机的通信是其关键技术之一。
1PVC自动配混料IPC-PLC监控系统
系统结构如图1所示,它通过智能称重仪表、位置开关、温度传感器等设备来获取系统当前时刻的各项参数,并结合上位机IPC(IndustrialPersonalComputer)的设置参数与操作指令来自动完成系统的工艺流程,实现PVC工艺的自动上料、计量、配混料及系统保护等功能,同时将系统的各项信息反馈给上位机,由上位机进行计量的实时显示、配方的存储与调用、自动报警、报表打印,并通过工业以太网实现远程监控。
2 通讯协议
本系统中上位机与OMRONCH200通过HOSTLINK单元及串行总线互联而成的RS-232C总线上位连接系统而进行信息交换,上位连接系统是一种主从式总线型局域网,它以上位机为该工业网中的通信主站,其它连入该网的PLC皆为从站,其通信采用主从轮询的方式:上位机始终具有初始传送优先权,所有通讯均由上位机来启动,向从站发送数据或者从从站中读取数据都是主站以命令帧形式发送,对于主站发来的命令帧,从站用响应帧应答,当命令帧很长时,需要分成几帧发送。
在命令帧或响应帧中包含着需要通信的数据,只要实现命令帧与响应帧的应答,才能使要交换的数据顺利到达对方。
为确保上下位机之间能正确交换数据,必须制定相互遵循的通讯规约,OMRON专用协议是OMRON专用协议是3层协议,即物理层、数据链路层及应用层。因为编写通信程序是基于应用层进行的,因此我们只关心命令帧与响应帧格式,只要我们编写的通信程序发出的命令帧格式完全符合OMRON专用协议,PLC就一定能理解。对PLC发回的响应帧,我们必须按其格式进行拆装、识别,才能正确分离出交换数据及有用状态信息。
上位机的命令帧由不固定的字节数组成,针对不同的识别码有不同的帧长度。但基本格式大体一致。本文以读DM区数据的命令帧为例,如图2所示,其中@符号必须置于每个命令帧的开头;节点号为主站所寻找的目标地址(设备号),设置在PLCDM区的DM6648的00~07位中,为00~31(BCD码),响应帧中也必须带上同一设备号,告诉主站以与哪一个从站建立了通信;识别码,由2英文字母组成的命令代码,它表示通信命令(如RD,RH,WD,TS,MM等);起始字,也就是起始偏移地址(0~9999);字数,为数据个数(n=1~10000,若读10,000个字,被读字数用0000表示);FCS,帧检查顺序码,为2个ASCII字符的8位数据,其计算方法为其前面除@符号字节的所有字节的异或值;终止符,设置成“*”和回车(CHR$(13))两字符,表示命令结束。
上位机读DM区命令的PLC相应的响应帧格式,对比之下,其中结束码表示命令完成的状态(即,是否有错误发生),有代码00、13、A8等形式,分别代表正常结束、FCS错误、传送数据时因帧长度错误引起中止等含义。例如,发送一读第10号从站的DM区DM0031和DM0032数据的命令帧“@10RD00310002##﹡↙”(其中##表示校验字节)后,收到的响应帧为“@10RD00000A012C##﹡↙”,表示顺利读出第10号从站DM0031和DM0032内的数据值分别为10和300。
3上下位机软件设计
1)上位机程序设计
上位机监控程序采用Delphi设计语言,总体分为组态环境和运行环境。
上位机程序中最关键的是要和PLC进行实时通信,Delphi利用串口通信有三种方式:
⑴利用VB中的ActiveX控件(MsComm.OCX)或第三方通信控件。⑵通过WindowsAPI函数。⑶通过Delphi中嵌入汇编直接操作端口实现通讯(如BIOS中调用INT14H串行通信功能)。
其中调用WindowAPI函数需要在VB开发的应用程序中添加外接的API程序和必需的通信协议参数设置,实际使用比较繁琐。而通过Delphi中嵌入汇编直接操作端口实现通讯的方式需要以内嵌汇编的方式自己编写模块,使用时,再加入到工程文件中,设计过程中用户还需了解CPU和板卡的支持速度,给整个软件设计中带来一定的难度。与前两种方法相比较,利用VB中的MsComm控件实现串行通信更为简单,因为它已经把Windows的编程复杂性封装起来且提供了使用RS-232C进行通信的所有协议和标准的事件处理函数、过程、属性和方法,用户可以很方便地使用属性来完成通信格式参数地设置,并通过事件驱动方式来实现通信软件的开发。
配混料系统采用MSComm控件实现,由于数据以命令帧与应答帧的形式来完成通信,所以通讯方式应设为二进制传输,即MSComm1.InputMode:=1,上下位机的通讯参数选用OMRON所规定的标准端口参数,即MSComm1.Setting:=“9600,E,7,2”。下面以一函数为例说明怎样发送命令帧,此函数用于读出10号从站数据存储区DM0031、DM0032中的数值。
var
dm_read:variant;
begin
dm_read:=VarArrayCreate([0,10],varbyte);//创建11字节的数据帧
dm_read[0]:=40;//帧开头标志@的ASCLL码的十六进制数
dm_read[1]:=10;//节点号BCD码
dm_read[2]:=52;//指令代码R的ASCLL码的十六进制数
dm_read[3]:=44;//指令代码D的ASCLL码的十六进制数
dm_read[4]:=0;//偏移地址高两位的BCD码
dm_read[5]:=31;//偏移地址低两位的BCD码
dm_read[6]:=0;//字数高两位的BCD码
dm_read[7]:=2;//字数低两位的BCD码
dm_read[8]:=10xor52xor44xor0xor31xor0xor2;//校验字节
dm_read[9]:=2A;//终止符*的ASCLL码的十六进制数
dm_read[10]:=0D;//终止符回车CR的ASCLL码的十六进制数
MsComm1.Output:=dm_read;
end;
2)下位机编程实现
OMRONC200HX系列与RS232串口功能有关的寄存器为DM6645、DM6646、DM6649和专用继电器SR264,它们主要用于RS-232C串口通讯方式的设置及与运行管理。
数据存储器DM6648用于存储通讯方式控制字,可由用户在编程方式下直接设置,属于可读写的特殊标志位寄存器,其格式如下:
D15~D08 D07~D00
帧格式 波特率
位D00~D07中波特率代码00~04依次对应19.2~1.2Kbps波特率。位D08~D15中帧格式代码00~11主要设置起动位、数据长度(7位或8位)、停止位(1位或2位)、检验方式(奇校验或偶校验)。
本系统使用的为标准通讯方式:1个起动位,7个数据位,偶校验,2个停止位,9600bps。
通讯过程的各种情况标志实时存储于专用继电器SR264中。专用继电器SR264D00~D15位的功能标志为:
D00~D03RS-232C端口错误码信息
0000:没有错误;0001:奇偶校验错误;0010:帧错误;0011:运行错误;
0100:FCS错误;0101:超时错误;0110:校验和错误;0111:命令错误;
D04:RS-232C端口通信错误;
D05:RS-232C端口发送准备好标志;
D06:RS-232C端口接收完成标志;
D07:RS-232C端口接收溢出标志;
PLC在接收上位机发来的命令帧之前,先检查SR26406(RS-232C端口接收结束标志)是否为ON;为ON则使用接收指令接收数据,执行接收指令时将接收完成标志位置OFF,同时将接收到的数据传递到指定的字中,读取接收的数据而产生的状态存储在SR264存储器中。PLC根据继电器SR264中对应的标志位D04~D07的状态,决定当前信息的取舍,同时还可在出错的情况下将此错误标志位发送给上位机,以便要求重发。
PLC在与上位机的通信过程中,还有可以使用TXD(-)和RXD(-)指令与通信协议宏功能来控制同各种装有RS-232C或RS-422/485端口的通用器件或通讯设备的数据的接收与发送。
下位机OMRONC200HX系列在配混料系统上电后,就立即执行“清理IR区并复位所有的定时器”、“检查I/O单元的连接”、“复位监视定时器”这最初的三个操作,剩余的各个操作均以扫描的形式执行,该扫描包括九项基本操作:监督过程、执行程序、计算扫描周期、I/O刷新、RS-232连接处理、上位机链接服务、外围设备服务、通信板服务、SYSMACLINK和SYSMACNET链接单元服务。
4结语
Delphi在开发可视化环境下的监控系统时有其独特的优势,本配混料监控系统采用了点对点的主从应答方式,实现了PLC与上位机的串行通信。经现场调试及运行表明,该系统具有可靠性高、实时性等优点。随着串行通信设备的不断集成化,该混料系统可以更好地移植于其它工业测控系统和分布式监控系统中。
本文源于网络转载,如有侵权,请联系删除
深圳市卓禾仪器有限公司是一家专门从事称重仪表和全自动包装码垛生产线的研发及生产的高新技术企业,所生产的JY500系列称重显示控制器(包括配料秤仪表、皮带秤仪表、包装秤仪表、重量变送器等)高速高精度,使用寿命长。卓禾仪器有十数年的现场校验经验,在业内有良好的口碑,且有专门的售后工程师帮忙解决产品使用过程中遇到的技术问题,客户可以放心省心顺心的使用我司的产品。如果对我司的产品感兴趣,欢迎咨询。
×