技术论坛

 上位机不经过PLC直接读取Drive数据的方法

返回主题列表
作者 主题
冬日
奇侠

经验值:8503
发帖数:3413
精华帖:56
楼主    2022-05-27 11:01:53
主题:上位机不经过PLC直接读取Drive数据的方法 精华帖 

上位机读取驱动数据,一般是上位机-->PLC-->驱动的方式,也就是需要PLC作为中介。

PLC和驱动的通信报文/过程数据,一般在项目完成后就固定下来了,假如上位机需要读取一些原来没有通信的数据,而PLC的程序或者驱动的参数我们又没有条件修改,那么这个方法可能对你有所帮助。因为现场只有两种CU,一个是CU320-2PN,一个是CU250S-2PN,所以没有条件测试其他CU是否工作,但是我相信应该是类似的。

读取方法如下

1,CU是类似300的PLC的,所以连接,通信的时候按照300的PLC来处理即可,由于是PN通信,所以无非就是Ip地址,rack0,slot2。读取的工具网上很多,这里不再浪费时间介绍了。

2,第一步解决了能连接,能读取。那么剩下的核心就是如何指定具体的对应地址,因为这里我们只知道参数地址,不像PLC有绝对地址I,Q,M,DB等等,比如读取某个参数Pxxx,怎么指定他是什么地址?这个问题总结以下几点

a,这些参数是存储在DB区域的,也就是要读取DBxxx,xxx就是参数号

b,db地址有了,那么偏移量是什么呢?这个稍微复杂一点,首先要检查你要读的对象在通信报文里的序号,如下图所示。我这里的CU250因为没有其他对象,所以这个序号就是0

然后检擦你要读取的参数的索引下标(如果有的话),如果只是单一参数不是数组,那下标就是0

c,最后总结读取的方式DB[参数].DBx[报文序号*1024+参数索引],这个x要根据你的参数类型,比如是16位,还是32位整数,还是32位浮点数,这个数据类型可以在参数列表里面查看。

If anything can go wrong, it will.
Zane
至圣

经验值:75765
发帖数:19245
精华帖:376
37楼    2023-02-01 22:12:54
精华帖  主题:回复:上位机不经过PLC直接读取Drive数据的方法


这种帖子,作为系统集成的方案来说是真心不值得推荐的,误人误事。


从我工作的第一天起,就是反对推广这种方案的,毫不夸张地说。看似完美的方案,谁做谁知道,满肚子苦水无处倒。楞把铁杵磨成针是啥赶脚?


问题的根源在于,对实时控制系统的可靠性的认识,而不在于是否用模拟量给定还是用通信给定的数字化非数字化方式。


记住PLC才是实时控制系统,无论模拟给定还是通信给定。


职业人给出的方案就应该是PC-->PLC-->Drive

Zane 注册自动化系统工程师 Always save before download
yming
版主

经验值:126308
发帖数:21931
精华帖:822
38楼    2023-02-02 10:35:39
精华帖  主题:回复:上位机不经过PLC直接读取Drive数据的方法

这类单边通讯很可能会有越来越多的需求。

随着开展预防性维护,产线状态分析、降低生产、能源成本的分析。都需要历史数据的积累支持。

而西门子驱动中,本身就包含许多温度、负荷、进出线传感器数据。

这类读取驱动数据的方案,问题就在于是经过PLC?还是不经过PLC?

我以为,最佳方案还是不经过PLC,保持原有控制系统不变。通过S7单边通讯,采集驱动数据。

学而时习之,不亦说乎?温故而知新,不亦乐乎?
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。