2022-10-19
有一款西门子S7-200 smart ,想利用他的扩展通信板CM01进行RS232通信,可是外部设备的RS232通信是需要DTR处于高电平,而CM01上根本没有DTR接线端子,这能否进行通信呢?求教谢谢
评论6
楼主 2022/10/19 15:43:32
把外部设备的DTR和DSR两个脚短接起来应该就行了。
楼主 2022/10/19 16:17:28
S7 200 SMART COM1口的3脚是RTS(发送请求)信号,把这个脚跟你外部设备的DTR连接试一下。另外提醒你一下,S7 200 SMART COM1口的针脚定义不是按照规范的9针COM口定义的,2脚是Tx,5脚是Rx,4脚是信号地。所有你做通讯线的时候要确保这三根线正确的连接到你外部设备上了。连接原则是Rx-Tx, Tx-Rx, GND-GND.
楼主 2022/10/27 15:11:13
建议先用串口调试工具与你外部设备联调,确保你正确了解了通讯协议,然后再在PLC里编程。
楼主 2022/10/31 16:14:21
把外部设备端的通讯口4脚6脚短接,7脚8脚短接,用串口调试工具看能否收到数据。根据我以前调试串口的经验,RS232用3根线通讯时,短接上述两组针脚应该是可以完成握手信号的交互的。
楼主 2022/10/31 16:28:19
如果外部设备每次发来数据的长度是固定的,可以用PLC里面的通讯口接收中断功能来收取数据,当串口收起10个字节的数据后产生中断,在中断程序里对数据进行处理。
楼主 2022/11/1 16:46:04
你的外部设备跟PC机通讯时,通讯线应该是这样连接的吧:
适配器 PC
2 -- 3
3 -- 2
4 -- 6
6 -- 4
5 -- 5
7 -- 8
8 -- 7
短接的原理就是在对方设备通讯口针脚不完整的情况下,利用自己的针脚完成