登录
首页 PLC论坛 施耐德电气PLC
回帖 发帖
正文

主题:[每日小技巧 190731] SoMachine Basic中如何获取控制器的状态给上位机监控

点击:1529 回复:7

可以使用系统字%SW6实现:
控制器状态:
0 = 无配置
2 = 停止
3 = 运行
4 = 暂停
5 = 低电压
如何使用:
通过程序操作快或者在动态数据表中查看%sw6。
19-07-31 22:18
低电压都知道?这个强
19-08-01 09:42
第三方上位机与施耐德通讯无法直接读取I、Q状态,只能与M的字,双字,浮点区域通讯,无法与位区域通讯,所以写程序好麻烦,要将I,Q填入MW中去。
Good Luck~
19-08-01 11:14

引用 cvlsam 在 2019/8/1 11:14:48 发言【内容省略】

版主说的是施耐德哪款PLC?
19-08-01 13:32

引用 guanyumou 在 2019/8/1 13:32:00 发言【内容省略】

M200,其实其他PLC也是差不多的。
Good Luck~
19-08-01 14:57

引用 cvlsam 在 2019/8/1 14:57:39 发言【内容省略】

我用的是M218,通信协议Modbus,最早也是只支持03、06、16功能码,也就是说只能对M区进行读写!后来更新了一下固件,就支持01、02、15功能码了!这款PLC问题比较多,当做Modbus TCP客户端的时候,连接一个以上服务器时,当其中一个服务器中断时会影响客户端对另外一个服务器的读写。
最后修改:2019/8/1 17:00:51
19-08-01 16:59

引用 guanyumou 在 2019/8/1 16:59:18 发言【内容省略】

我不清楚施耐德自家的触摸屏是不是也是这样的情况,不过我有空会试一试施耐德自家的组态软件是不是也是这样,如果都是这样的话,这就是法国人的思路问题了。
19-08-02 05:42
M区寄存器是PLC内部的软寄存器,在Modbus通讯时读写数据容易且稳定,一般一个扫描周期就可以完成,如果直接读取I、Q状态一般是I、Q物理地址通过FPGA芯片再到IQ的映射区,中间经过了逻辑状态处理过程,如果CPU本机的I、Q可能可以在一个扫描周期可以完成,那通过总线连接的IO模块在处理总线中断情况下Modbus通讯未必可以马上获得当前的I、Q最新状态,在以前PLC软硬件平台的整体性能比较弱的情况下为了可靠性都会采用M区来读写,不过现在PLC的性能越来越好,Modbus通讯的功能码开放已经不再受限于PLC的本身的软硬件平台的性能了。
19-11-04 21:47

工控新闻

更多新闻资讯