您现在的位置是:首页 > PLC技术 > PLC技术
OMRON PLC与上位机的通信协议
来源:艾特贸易2017-06-04
简介硬件连接是基础,而要实现 PLC 与上位机的通信则还需要通过软件来进行。 1 .通信命令与格式 上位机与 PLC 之间的通信,实际上是计算机与 PLC 通信模块 (HOST l ink) 之间交换命令和响应
硬件连接是基础,而要实现PLC与上位机的通信则还需要通过软件来进行。 1.通信命令与格式 上位机与PLC之间的通信,实际上是计算机与PLC通信模块(HOST link)之间交换命令和响应。HOST link能够对从计算机发送来的字符串进行分析,检查数据的格式,分析指令代码,然后根据指令代码进行相应的操作,并向计算机发出相应信号,通知计算机已完成操作或反映通信中的错误、FCS错误、代码错误。 (1)命令格式 上位计算机发出的命令应符合图10.25所示的命令格式。 图10.25 命令格式 ·开始符:命令首位为@,表示开始。 ·设备号:用于上位机识别所连接的PLC设备;不同型号的PLC,设置设备的方法也不相同,有的通过HOST link上的SW1进行设置;有的通过编程器等外部设备在DM中设置,如CPMIA PLC是在DM6653中设置。 ·识别号:命令代码,占用两个字符。 ·正文:设置命令参数。 ·FCS:帧检查序列。占两个字符,一旦通信出错,通过计算FCS可以及时发现。 ·结束符:“*”和CR码(回车),表示命令的结束。 (2)响应格式 对应于命令的响应格式如图10.26所示。
图10.26 命令格式 ·异常码:返回命令的执行状态有无错误等信息。 ·正文:仅在有读出数据时,才有返回值。 其他项同命令格式中的解释。 (3)命令举例 ①测试命令:上位机发测试命令,测试HOST link是否响应。 ·命令格式。
·响应格式。
②读TC命令:上位机读出C200H的TIMER和CONTER的内容。 ·命令格式。
·响应格式。
③写入程序:将程序写入C200H的存储器。 ·命令格式。
·响应格式。
④读出程序:将C200H存储器中的程序代码读出。 ·命令格式。
·响应格式。
通信命令中的其他命令在格式上与上述命令大同小异,使用中可参阅有关手册。例如,命令“@10RH0031000158*/”的含义是:PLC的设备号为10,RH识别码表示读继电器,0031表示起始通道为31,0001表示一个通道,58为FCS码,*↙为结束符。HOST link在接收这一命令后,读取RH31的值,并送回计算机。 2.通信过程 通信的主导权在上位计算机,通信时必须由计算机按要求向PLC的HOST LNK发出通信命令,然后才能有HOST link发回响应信号。 OMRON上位机与PLC的通信过程如图10.27所示。 一组数据称为一个数据块,计算机发往PLC的数据块称为命令块,从PLC返回的数据块称为响应块。在计算机与PLC的通信系统中,每个数据块有设备号和标识码开头,中间是通信内容,有FCS和结束符结束。命令块中的结束符告诉HOST link命令结束,可以进行相应的操作,并送回响应;而响应块中的结束符告诉计算机可以发送下一个命令。
图10.27 上位机与PLC的通信过程示意图 通常,一个数据块由一帧组成,但如果一个数据块长于131个字符,后续每帧最多可以有128个字符。起始帧及中间帧的结尾,用分届符表示该帧结束,而结束帧的末尾用结束符来表示整个数据块的结束。此时,必须在收到响应信号后才能继续发送下一帧。 同样,对于响应块,若分为几帧来传送的话,中间也需要用分届符。 注意:要使通信正确进行,必须使上位机与PLC的HOST link的传送速率及数据格式一致。另外,PLC的操作方式(RUN、PROGRAM. MONITOR)和工作模式(本机、HOST link)不同,所允许执行的命令也不同。 3.帧校验序列FCS的计算 在发送命令时,FCS位于分届符或结束符之前,用于检查通信过程中是否发生错误。FCS是两位ASCII码表示的8位数据,这8位数据是将一帧的每个字符(从@、设备号到正文的最后一个字符)连续进行异或的结果。 串行通信中,若接收的数据与FCS -致时,认为此帧的通信格式及传送数据正确;若不一致,则说明传送的数据或格式有误。 4.通信中的异常码 通信命令执行后,响应格式中的异常码的含义如表10.13所示。 表10.13 通信中异常码的说明
点击排行
