CP341MODBUS__Slave(RS485)通讯失败请教列位朋友会诊(北京奥运放假,我们还要干活呀)

硬件CPU-314,CP341(RS422/485型带Slave狗),西门子15针通讯电缆。北京三威讯通RS485/232转换器。

 手头资料:CP340_341_440_441_通讯及编程.pdf,串口通讯模块的信息与使用.pdf,CP341点对点通讯安装和参数分配(英文).pdf,Modbus_Slave.pdf,Modbus_Master.pdf。PtP通讯例程。已经认真学习。

 网上课堂,技术论坛,找答案,相关文章已阅,有两篇与我相似,但是无答案。也已请教技术支持人员,说不好判断。所以再发贴请列位会诊。

 做法:“PtP通讯例程”MODBUS__Slave由于是CPU315DP,RS232/ASCII,所以根据手头硬件在此基础上做两处修改。CPU修改为314,通讯协议修改为MODBUS__Slave,并在协议中选择“半双工RS485”,R(A)–0V,R(B)–5V。OB1和其他模块维持原有状态。
 硬件连接:15针通讯电缆插入CP341,找一个9孔插头,靠15针接头的一边套入,保证能与15针接头的4,11脚连接,并在9孔插头焊接两根导线(与15针接头的4,11脚连接)引出,然后与RS485/232转换器的RS485端子连接。RS485/232转换器与PC—COM口连接。
 通讯结果:使用仿真测试程序(modscan32),CP341上面RXD灯随仿真测试程序指令信号闪一下(SF灯不亮,TXD灯没动静), PC这边读不到数据。提示“超时”。
 我目前是把4—2,9—11短接的。根据网上朋友说,这样不必要,因为CP341内部已经短接,我也看了文档“串口通讯模块的信息与使用.pdf”的介绍,文章图片指明CP341内部已经短接。但是实际上不是这样。我实验了两种状态。4—2,9—11不做短接,测量11—4电压  3.9V,运行测试程序(modscan32)中测量电压大约还是这个数值,CP341的RXD灯不会闪。4—2,9—11做短接,测量11—4电压  4.55V,差别挺大。运行测试程序(modscan32)中测量电压4.33V,CP341的RXD灯这时随仿真测试程序指令信号闪一下。如果真是内部已经连接,相信不会出现这种差别。
 从PLC运行监测看,模块没有任何错误提示(错误信息字节为0),6个位信号从上到下是0,0,0,0,0,0。(我也看到无错误提示情况下出现0,1,1,0,1,0的情况,照样读不到数据。)
 实验我的RS485/232转换器和其他第三方设备做MODBUS (RS485)通讯。正常。

 我分析信号CP341已经收到,为什么没有回应,发送?可能还是程序问题,但是不知道怎么检查。物理链路考虑到是否应当把第八根线(地线)引出,但是我的RS485/232转换器没有地线,只有两线或者四线,似乎没有办法实验。西门子的例程都不爱拿MODBUS (RS485)说事,各位只好多费心了。
 

最佳答案

这个问题你自己都知道没那么容易得到答案。
 所以说根本不适合在找答案这个板块寻找答案。
 因为根本不可能有一个人上来就帮你明确指出要害之处,除非乱猜。

 这里的互动性比起论坛来说差好多。此等问题建议在论坛探讨。
 时间的反应也迟钝的多。这里再短也有一个周的时间呢。所以如果有人一周后来 回答你的问题,仍旧有可能得到奖赏。
 所以当然不那么积极啦!
 你明白其中的意思了么?

 
 

提问者对于答案的评价:
我还是论坛菜鸟,谢指教.已发到技术论坛.

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc317779.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日
下一篇 2020年11月1日

相关推荐