请问各位大神,公司有多个300PLC,之间通过以太网连接,询问如果在网络中加入新的PLC,新设置一个IP地址,但ID号与其中一个PLC相同,调用fb8,FB9后,会出现何种问题?IP地址与ID号具体区别?
ASs='html_titleimg_p' STyle='text-align:center;'>
问题补充:
感谢各位,希望再了解下:如果ID与IP已经设置完成了,且编程运行完好,ID不动的情况下,更改所有PLC的IP,无论何种网段,PLC之间依旧可以通讯运行,且调用其余PLC数据?
最佳答案
1:IP地址必须不同,当你建立TCP,ISO_ON_TCP等通信时使用
2:ID必须不同,它是根据你在NETPRO里组态的连接ID号,所确定的,
R_ID,对于同一的连接必须唯一,不同连接ID,R_ID可以相同。ID用来在PLC程序通过SEND/RECVE服务进行发送和接受消息时使用,每个ID号,就意味着占用了一个PLC连接资源。
3:FB8,FB9读取数据时根据"连接ID”来读取的,如果ID号相同,PLC仍然读的是某个老PLC的数据。
补充,如果你仅仅更改了设备的IP地址和在程序里面更改了ID号,而没有下通过NETPRO载网络连接,你PLC里仍旧是以前的东西,PLC还是根据连接ID号来读取数据,至于这个连接ID号,读取是那个设备的数据,是在NETPRO里于这个ID号所对的IP地址决定的。
比如说A,B,C3台PLC
A:192.168.1.100
B:192.168.1.101
C:192.168.1.102
A-B之间的连接ID为1,
A-C之间的连接ID为2,
A程序中进行数据读写的时候ID为1,那么就是A读取B的数据。如果ID改成2了,就是读取C的数据。
此时你增加一个PLCD
IP地址:192.168.1.103
那么要实现通信,你必须新建连接,在新建连接的时候,ID号和以前某个连接的ID号重复系统会报错的。连接完成后,你需要下载组态。
如果你没有新建连接并且下载,你只在程序中新调用了FB8/9还以ID号1来读取数据,那么你读的还是B的数据。
提问者对于答案的评价:
谢谢!非常感谢!
专家置评
已阅,最佳答案正确。