6FX3002-5CL12-1AH0西门子V90动力电缆
在阿里云iot平台建立一个产品,产品下建立两个设备。比如我建立了一个产品叫 S7-1500,两个产品分别是 PLC1和PLC2,产品自定义两个TOPIC,一个 ${deviceName}/user/recv,订阅权限,一个 ${deviceName}/user/send,发布权限。
然后在规则引擎 云产品流转中建立一条规则,数据格式选二进制。
添加规则之后需要编辑规则,分三步,1、处理数据,2、转发数据,3、错误处理
前面两步是必须的,错误处理可选,当出现转发错误的时候,可以进行相应的操作,比如发布错误报警topic给管理员。
1、处理数据,编写SQL。
其实简单的转发不需要“编写”SQL,只要进行简单的选择操作,会自动生成SQL语句。
因为是二进制,全部转发,字段处填入 *,topic只要自定义,产品选择我们刚才建立的S7-1500,设备选PLC1,余下topic部分选择user/send,条件留空,不填
接下来是转发数据,点击添加操作按钮,如下
选择发布到另一个topic,topic选自定义,下面选择S7-1500,PLC2,user/recv,确定就OK了。然后返回上一级,启动该规则,然后再建立一条规则,只是PLC1和PLC2换一下,将PLC2的send转发给PLC1的recv,然后启动规则。
云端设置就完成了,在PLC端,两个PLC各自订阅自己的recv主题,PLC1发布的send主题会自动转发给PLC2,PLC2的会自动转发给PLC1。这样就实现了两个CPU之间的远程通讯,不管他们距离多遥远,只要他们能够连接阿里云服务器,就可以实现通讯。