[AB] AB综合 | 把EXCEL数据写入PLC变量

[复制链接]
查看61465 | 回复0 | 2024-7-25 09:07:21 | 显示全部楼层 |阅读模式
前言:在面前文章介绍了如何在EXCEL中读取PLC变量,其原理是利用EXCEL与RSLinx均支持DDE协议,在RSLinx中建立DDE Topic,构成一条数据通道,两者之间通过这条专用通道进行数据交换。既然可以在EXCEL中读取PLC数据,那么能不能把EXCEL中的数据写入到PLC呢?

测试环境

1. Microsoft Excel 2019

2. Studio 5000 30.00

3. RSLinx Classic Gateway 4.00

4. Studio 5000 Logix Emulate 30.00

实现功能

1. 在Excel中读取液位实时值、水泵频率值;

2. 在Excel中设定水泵频率,将其写入PLC,改变频率值.

方法步骤

1. Studio 5000的控制器标签里存放有2个变量:实时液位LT、水泵频率HZ.



2. 在RSLinx Classic中,点击DDE/OPC菜单,选择Topic Configuration.



3. 在弹出的配置窗口,按下图标识的顺序进行,该步骤是将PLC控制器指定到一个DDE通道--testDDE.



4. 在Edit菜单中,选择Copy DDE/OPC Link,这时出现刚才已经建好的testDDE通道,选择在线,找到液位变量LT,点OK.



5. 打开Excel,编辑好相关信息,在“当前液位”右侧的表格,单击右键--选择性粘贴—粘贴链--确定,“当前频率”也按照相同的方法添加,具体如何操作,请参看《利用DDE将PLC数据传输到EXCEL》。另外,把Topic通道名称填入到下图所示位置,在VBA编程会用到.



6. 在Sheet1中右键,点击“查看代码”,进入EXCEL的VBA编程环境.



7. 编写代码:判断EXCEL是否与RSLinx建立的DDE Topic通道连接上了.



8. 编写代码:EXCEL与RSLinx正常连接时,在EXCEL中修改水泵频率值,通过按钮确认后,将其写入PLC,从而改变当前频率值.



测试效果

视频中可以看到液位实时变化,频率修改成功.



video: https://mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl&action=mpvideo&auto=0&vid=wxv_833883954133499906

结束语:综上所述,利用DDE数据交换机制,Excel不仅能读取PLC变量的数据,还能把数据写入PLC变量,本文介绍的方法是在仿真器完成的,实体PLC同样适用。另外,本文只改变一个变量的值,后面有时间的话,讲一讲如何将EXCEL数据批量写入到PLC数组中。



【AB PLC工作室】

微信公众号ID:abseme

      坚持原创  注重实用

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则