各位老师朋友,今天在工厂看到程序中有用到SFC14.SFC15 系统功能块,用于读取DP从站的数据,有疑惑,请各位帮忙分析一下,万分感谢!
程序如下:
call sfc14
LADDR: W#16#420 //读取十进制地址为1056 的模块数据
RET_VAL: #RET_ERRO_SFC14 //错误代码存储位置
RECORD:P#DB380.DBX58.0 //将1056模块数据读取值存在DB1380.DBX0.0开始的数据区。
程序监控图片见附件
问题1:我的注解W#16#420这个是地址转化为十进制的地址是1056.,我的理解是否正确?
问题2:SFC14这个系统功能块RECORD接口填写的地址正常应该是P#DB1380.DBX0.0 BYTE 10,
这样带数据长度的才行,为什么这个程序中不需要加BYTE 10指明长度程序也不会报错,
而自己编写程序调用sfc14不带数据长度就会报错。
问题3:作者的这段程序没有错误,那么从地址为W#16#420这个模块读取了多少数据过来,
数据长度是多少呢,BYTE10 16 还是32?
问题4:W#16#420这个是地址对应的DP从站模块是贝加莱(B+R)的接口模块,是第三方
的DP从站模块,与SFC14的应用是否有关联?


