基于s7200的串行口通讯协议的实现
天津工业大学原晋辉
摘要:S7200PLC是广泛用于现场的小型PLC,它具有的自由口通讯协议编程功能是用户自己编写通讯协议成为可能,本例提供了使用S7200编写自由口通讯程序的方法
关键词:串行通讯 S7200
The Protocol of munication base on S7200 PLC
Tianjin polytechnic university yuanjinhui
Abstract:SIMATIC S7200 PLC is the mini program logic controller which is used in many of the characteristic free port protocol of S7200 PLC,it is possible for user to use their owne protocol in program, The method of how to use free port protocol in program is presented
Key word munication S7200 PLC
S7200广泛使用于工业现场的小型控制器,因为其具有的结构紧凑、扩展性能好、指令丰富的优点。在机械环保等众多行业中都有他在发挥着作用。特别是它具有的自由口通讯的功能,使用户自己定义上下位机之间的通讯协议成为可能。在本例中,采用自由口通讯方式,使用发送指令(XMT)、接受指令(RCV)通过端口0来实现对数据的发送和接收
1通讯协议
:
上下位机之间的通讯协议分为上位机的发送数据和下发机的反馈数据:
起始字
(1字节)
数据长度
(2字节)
目标地址
(2字节)
数据
(3字节)
校验和
(1字节)
结束字
(1字节)
表1(a)上位机下传数据桢结构
起始字
(1字节)
数据
(8字节)
校验和
(1字节)
结束字
(1字节)
表1(b)下位机反馈数据桢结构
说明:
起始字:占一个字节,采用ASCII字符“A”。
数据长度:占二个字节,表示的是要写入数据的十六进制ASCII码所占用的字节数。
目标地址:占二个字节,表示的是要写入数据的十六进制ASCII码所存储的地址。
数据:占三个字节,采取十六进制ASCII码形式下传:
校验和:占一个字节,为CRC校验码的十六进制ASCII码形式。
结束字:占一个字节,采用ASCII字符“X”。
上下位机的数据并未采用原本的形式传输,而是采用了ASCII码的形式传输,主要是为了避免要传输的数据与指令中的起始字符和结束字符字发生混淆。从而避免数据直接以其原本的形式传输时因数据与控制字节一致而导致的误操作.
PLC地址的分配:
在PLC中,为了方便管理数据,所有接收和发送的字符都存储在V存储器中,:
:
VB100
接收缓存区的长度
VB101
起始字“A”
VB102
数据的目标地址:
VB103
VB104
数据的长度:
VB105
VB106
数据
VB107
基于s7200的串行口通讯协议的实现 来自淘豆网m.daumloan.com转载请标明出处.