在上一篇文章中,咱们提到了有关于自由口通讯的一些基础知识,给大家解释了什么叫通讯协定,什么叫信息帧或动静报文,起始符/收场符与起始位/休止位之间的关系。那么今天就跟大家聊聊西门子S7200系列的自由口通讯功能及程序的设计。
自由口通讯模式(Freeport Mode)是S7-200系列PLC的一个颇有特点的功能,借助自由口通讯,用户可以自己使用(XMT以及RCV)对端口进行操作,可以是S7-200系列PLC与任何通讯协定已知且拥有串口的智能装备以及节制器实现通讯,如打印机,变频器,智能仪表等。文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
S7-200CPU上的通讯口在电气上是标准的RS-485半双工串行通讯(所谓半双工通讯即发送以及接管不能同时进行,所以在设计程序的时候,发送完后才能接管 ,接管完后才能发送)此串行字符通讯的格式可以包含:文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
(1)一个起始位文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
(2)7位或是8位字符(数据字节)文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
(3)一个奇/偶校验位,或者没有校验位文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
(4)一个休止位文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
(5)波特率:1200、2400、4800、9600、19200、38400、57600或112500bps的波特率文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
知足以上前提的通讯的格式,均可以使用自由口通讯的方式去完成信息的交流。文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
若需要使用PLC通过自由口的方式产生数据出去,必需完成下列几个内容:文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
(1)通讯格式的设置,用于规定通讯双方的通讯格式文章源自微观生活(93wg.com)微观生活-https://93wg.com/24495.html
(2)PLC需要通过XMT指令发送的数据,可以依据通讯协定提供的信息帧格式去筹备,
(3)信息发送完成的判断,用户只有依据信息是不是发送完成后 ,才可以进行信息的接管程序的设计或是抉择下一次的发送。
以上一篇文章中提到的仪表的通讯协定为例:
(1)设置要PLC的中的通讯格式字。
通讯格式字的设置对于PLC来说有特殊的系统存储器来进行存储,在200系列PLC中通过SMB30(port0口)SMB130(Port1口)来进行存储,设置通讯格式字是必需配合从站装备来进行设置,如下所示为仪表提供的参数设置
在这里面,若选择9600的波特率,一名休止位、8个数据、无校验的方式,(注意:不能设置为2个休止位,因PLC自由口通讯时不支撑2个休止位)。则PLC中通讯格式字可设置为16
(2)依据通讯协定筹备需要通过XMT指令发送出去的数据:
假定需要读取仪表中的进程值,需要依据通讯协定的格式,然后筹备好相应的数据:
XMT指令格式:
注:T表示的是指令中TBL的地址,如如所示: T表示VB0,所以T+0表示VB0,T+1,表示VB1顺次下去。port表示的是PLC的端口号。
可以通过在数据块中定义好你需要发送的数据:
(3)信息发送完成的判断
判断信息是不是发送完成可以通过两种方式进行判断,
一种使用发送完成中止的方式去判断
port0以及port1有对应发送完成中止事件,可以通过发送完成中止事件来判断信息是不是发送完成。PORT0以及PORT1两个端口分别分配了两个中止事件用来表示信息发送完成。对于PORT0口来讲分配中止事件9,对于PORT1口来讲分配中止事件26
也能够通过系统存储位来进行判断.
通过特殊完成标志位来进行判断,可以通过对发送完成标志位SM4.5(port0)或SM4.6(port1)的监控来判断数据是不是发送完成。SM4.5=1 表示端口0处于空闲状况,SM4.5 = 0 表示端口0处于传送状况。
以上就是微观生活(93wg.com)关于“名师分享——西门子S7-200系列PLC自由口通讯知识分享(2)”的详细内容,希望对大家有所帮助!
评论