请问现在程序中是不是这样的对应关系? DB10.DW0--PQW272 直到DB10.DW20 --PQW310
DB11.DW0--PIW272 直到DB10.DW20 --PIW310
这样是不是这两个功能块就能读所有从站的输入输出地址?
还有一个问题就是如果地址不是连续的,是不是中间空着的地址也要计入长度。例如;在其中加一个ET200从站,一个输出模块地址为Q0.0 Q0.1 ,另一个输入模块I1.0 I1.1这样的话上面的程序要如何改动?谢谢。
问题补充:
请大家看清图片,我手头没有这个模块,所以要问清楚对应关系。我的是DANFOSS变频器,10个字,两台就40个字节,但模拟量是从272开始的。不是从0开始。资料中说:“输入输出域必须以0为起始地址”那么我这个FC11 12的功能块长度岂不是要写成LEN=620字节,因为最后一个字为PIW310 ,PQW310。而IOCS=78字节。请问对否?
图片说明:
最佳答案
可参考:《PROFINETIO设备通讯块FC11和FC12的编写》
http://www.ic37.com/htm_tech/2012-12/88805_910208.htm
《s7-300 FC12用法》
http://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_ID=87328&cid=1029
《如何编写PROFINET IO设备通讯块FC11和FC12》
http://www.5iplc.com.cn/html/73/t-773.html
《如何使用通讯功能块FC11和FC12用于PROFINET IO 控制器编程》
http://www.ad.siemens.com.cn/download/docMessage.aspx?id=3006
提问者对于答案的评价:
第一位给出的资料还是有点用的,数据都是从0算起,虽然从站是以模拟量为起始的。所以数据的LEN会很大,DB数据块设定也会很大,可以设为数组省事。是不是从0开始还得去现场验证。
第二位给以我的图片程序中得出给出长度LEN=40,这应当是不对的,不知您是否用过。
总之,感谢吧!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc241214.html