西门子200 smart modbus自由口通讯个人认为如同2个人打乒乓球的游戏,不、应该是比赛更合适,因为打乒乓球之前必须有一个严格的比赛规则,双方都将遵循这个规则(通讯协议)。所以,通讯基本参数就如先发布比赛规则,然后双方才能在此规则下允许一场友谊比赛。 先说说发球方,即通讯程序中的发送指令(XMT)。该指令仅仅只需2个管脚要用户填写。TBL为发送数据的储存地址区,数据类型(byte),其中,第一个仅仅是发送数据的个数储存地址区,该地址不参与发送数据;PROT为指定通讯端口,集成本机口填写为“0”口,控制的信号板填写“1”口。 程序例子:假设发送字符【Siemens】为例,prot0口
数据块也允许直接写入一串字符的方法进行,图示: 下载到cpu后,监控数据数值,图示: 这样,cpu会按每一秒的节拍方式,由prot0口把字符串“Siemens”无限次发送出去。如果需要多个数据串连续发送,如何来界定这其中的一串数据发送完成?西门子200 smart通讯程序可以用中断或者标志位来界定,其中,发送完成中断在prot0口的中断事件号为事件9、prot1口中断事件号为26;也可以通过标志位prot0口为SM4.5、prot1口为SM4.6来确定。 如果需要调用中断来界定通讯发送完成或者接收完成中断,则需要事先设置通讯中断事件了。 2)主程序调用: 3)中断子程序中实现VD10的累加,图示: 注意!通讯字符发送只允许编写英文字符或者拼音字母,不允许用汉字来编写。 打开这个串口调试软件的界面,图示: 与PLC连接好通讯电缆,就可以监控PLC从prot0口所发送的字符数据内容了。球是发出去了,是否能够让“对方”正常接收是一个未知数,因为能够正确接球,需要考虑硬件的正确连接,软件协议的一致性,干扰原因等因数(这关系到接球方的球艺)。 |
电工学习网 ( )
GMT+8, 2021-12-6 20:45