基于s7200的串行口通讯协议的实现

基于s7200的串行口通讯协议的实现

ID:12967972

大小:103.00 KB

页数:4页

时间:2018-07-19

基于s7200的串行口通讯协议的实现_第1页
基于s7200的串行口通讯协议的实现_第2页
基于s7200的串行口通讯协议的实现_第3页
基于s7200的串行口通讯协议的实现_第4页
资源描述:

《基于s7200的串行口通讯协议的实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于s7200的串行口通讯协议的实现天津工业大学原晋辉摘要:S7200PLC是广泛用于现场的小型PLC,它具有的自由口通讯协议编程功能是用户自己编写通讯协议成为可能,本例提供了使用S7200编写自由口通讯程序的方法关键词:串行通讯S7200TheProtocolofSerialCommunicationbaseonS7200PLCTianjinpolytechnicuniversityyuanjinhuiAbstract:SIMATICS7200PLCistheminiprogramlogiccontrollerwhichisusedinmanyplace.

2、becauseofthecharacteristicfreeportprotocolofS7200PLC,itispossibleforusertousetheirowneprotocolinprogram,ThemethodofhowtousefreeportprotocolinprogramispresentedKeywordSerialCommunicationS7200PLCS7200广泛使用于工业现场的小型控制器,因为其具有的结构紧凑、扩展性能好、指令丰富的优点。在机械环保等众多行业中都有他在发挥着作用。特别是它具有的自由口通讯的功能,使用户自己定

3、义上下位机之间的通讯协议成为可能。在本例中,采用自由口通讯方式,使用发送指令(XMT)、接受指令(RCV)通过端口0来实现对数据的发送和接收1.1通讯协议1.1.1数据格式:上下位机之间的通讯协议分为上位机的发送数据和下发机的反馈数据:起始字(1字节)数据长度(2字节)目标地址(2字节)数据(3字节)校验和(1字节)结束字(1字节)表1(a)上位机下传数据桢结构起始字(1字节)数据(8字节)校验和(1字节)结束字(1字节)表1(b)下位机反馈数据桢结构说明:(1)起始字:占一个字节,采用ASCII字符“A”。(2)数据长度:占二个字节,表示的是要写入数据的十

4、六进制ASCII码所占用的字节数。(3)目标地址:占二个字节,表示的是要写入数据的十六进制ASCII码所存储的地址。(4)数据:占三个字节,采取十六进制ASCII码形式下传:(5)校验和:占一个字节,为CRC校验码的十六进制ASCII码形式。(6)结束字:占一个字节,采用ASCII字符“X”。上下位机的数据并未采用原本的形式传输,而是采用了ASCII码的形式传输,主要是为了避免要传输的数据与指令中的起始字符和结束字符字发生混淆。从而避免数据直接以其原本的形式传输时因数据与控制字节一致而导致的误操作.1.1.2PLC地址的分配:在PLC中,为了方便管理数据,所

5、有接收和发送的字符都存储在V存储器中,校验标志位则是用了M存储器中的位M0.0:1.1.2.1接收缓存区:VB100接收缓存区的长度VB101起始字“A”VB102数据的目标地址:VB103VB104数据的长度:VB105VB106数据VB107VB108数据VB109CRC校验码VB110结束字“X”表2接收缓存区1.1.2.2发送缓存区:VB300接收缓存区的长度VB301起始字“A”VB302数据:VB303VB305VB306VB110结束字“X”表3发送缓存区1.1.2.3译码区:VW700译码后数据存放的目标地址VW702译码后数据的长度VW70

6、4译码后数据+校验码表4译码区1.1.2.4功能区:VW800校验码产生式G(X)VW810校验后的余数R(X)VW820G(X)在校验时需补足的位数表5功能区1.2自由口通讯的实现1.2.1自由口通讯的初始化:自由口编程的初始化包括设置自由口模式寄存器SMB30(端口0)或SMB130(端口1),接收信息控制字SMB87(端口0)或SMB187(端口1),接收自负的最大数SMB30(端口0)或SMB130(端口1)。在本例中选择无奇偶校验,8位字符,19200波特率,自由口协议,接收缓存区大小设置为1025,故设置SMB130=16#05H;SMB187=

7、16#B0H;SMB194=1025H;1.2.2字符的接收及发送:字符的接收利用接受中断来完成,对于端口1接收中断的事件号为25,利用ATCH指令即可把该事件同相应的中断连接起来,然后在中断中使用RCV指令来接受下传的数据,这些数据被存储在指定的缓存区中。字符的发送通过相同的原理利用发送中断来实现,端口1发送中断的事件号为26,在发送完成中断中利用XMT指令定时的反馈信息发送到端口1中去。1.2.3字符的译码和存储:当端口1接受字符完毕后,程序检测接收缓存区中的开始字符,若是起始字“A”,则对随后的数据地址,数据长度,数据及校验码利用ATH指令进行译码,将

8、其从ASCII码的形式翻译为相应的十六进制数,分别存

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。