公司用的是施耐德的大型PLC系统,现在有别家单位(距离20多公里)需要我们给它们提供我们大泵的开关状态,以及部分压变的读数,要求走移动公司局域网。因为我们已经通过这条局域网读到它们的Modbus TCP数据了。
但现在的问题是,我这边无法指定哪几个变量可以访问,也就是说只要给了对方我们的PLC的地址,对方就能读取全部变量的数据,甚至可以远程控制阀门开关等。请问哪种方式可以避免这种情况?
我知道的PLC里也提供串口通讯,通过写write_var模块可以指定哪些变量对方可以访问,但串口是不是无法走移动公司的专线网络传输?
-
引用 jwx0453 2024/3/4 10:47:11 发表于2楼的内容
-
-
fammmy 发表于 2024/3/4 10:49:45
云网关是一种方法,modbusTCP是可以设置起始地址的,然后在寄存器数量上做限制,
或者单独规划一片存储区,在里面存储他可以读的变量,你需要做一下单向传送,把
所有他能读的数据传过去,然后把这个存储区的地址提供过去,这样就算他控制也
只能到这个存储区,到不了你程序那里。
一般情况下,你提供什么地址他们就用这些地址,不会自己再去摸索研究其他地址的
东西,不用担心他控制。你的程序结构也有问题,对外的数据地址和你程序的控制地址
不能是同一个,这是常识。如果他们没有控制需求,在你提供给他们的点表上均标注只读。
引用 fammmy 2024/3/4 10:49:45 发表于3楼的内容
-
引用 xz6903 2024/3/4 10:58:12 发表于4楼的内容