恭喜,你发布的帖子
发布于 2017-09-21 09:54:43
9楼
回芳季先生(或女士), 上面所说的主站从站是指使用MODBUS库做的程序。因为它方便不会出错,否则就用自由口了。既然是使用MODBUS库做的程序,自然是没有办法看见里面是否使用了诸如SM0.1的东西,所以就不正面回答你的问题了。
所以说需要“初始化过程”那是我自己说,不是西门子官方的说法,但可以说这不是瞎说,是有大量产品作为事实依据的。
如果你想试验是不是需要初始化过程,请你用库指令做个从站程序,其中的站地址和奇偶检使用VB*,波特率使用VD*,并在数据块赋值,这是西门子为方便用户不必经下载而修改通讯参数的做法。做好后,弄一个相同奇偶检和波特率,不同地址的主站与你做好的从站通讯,一定OK。 接着,你弄个与你的PLC不相同的奇偶检和不相同的波特率,相同地址的MODBUS主站(三者中有一个不符合要求就行)来与PLC通讯,肯定通不上。这里要求修改PLC的奇偶检、波特率、地址,以适应通讯要求,修改后不断电重启,不做运行--停止切换,也不重新下载程序,你就知道能不能实现通讯了。 主站也可以按此类似试验。
如果你有空试验,敬请将结果与大家共享。
初始化是必须的,但MODBUS的初始化没有要求是在PLC启动的时候才可以做。
库程序,不管主站还是从站,都有一个MODE参数可以控制是否启用MODBUS通讯。
自由通讯的通讯参数,是可以运行时修改的,不像系统块中的端口设置,那个是需要下载并重启才能生效。
至于一个端口做主从切换进行通讯,我是不会这么去做的,也建议不用去尝试
请填写推广理由:
分享
只看
楼主