发布于 2011-07-23 15:08:09
11楼
在前面 www123456 有关IW与PIW的关系的讲述简单确切。
to楼主:
楼主讲,对下述有疑问:“
程序里面我调用FC105,输入变量地址用IW20。保存,下到PLCSIM仿真控制器没有问题。然后我把IW20改成PIW20,仿真CPU肯定就报错,SF红硬件故障。硬件组态里面我再加一块AI8x12Bit卡件,将IW20的地址设定进去,重新编译下载后,仿真CPU正常。”
楼主调用FC105问题的根本并不在IW20还是PIW20。而在与IW20与PIW20数据类型。
FC105 IN的数据类型应为INT.
PIW是一个16位数,系统默认为WORD数据类型,可在符号表中定义为INT数据类型,而IW的数据类型正好为INT。这样你的PLCSIM仿真才得以进行。你将PIW的数据类型该为INT,你的PLCSIM仿真一样得以进行。
通常情况下WORD用于逻辑运算,INT用于数学运算;
在使用梯形图或SCL等语言编程时区分较严格
在使用语句表编程时系统不检测数据类型是否匹配,即WORD与INT在用法上没有什么区别(WORD可做数学运算,INT也可作逻辑运算)
注意:FC105输入是一定要定义成INT类型。
怎么去将word改成int ?用转换指令还是?
不需转换指令。可在符号表中定义为INT数据类型。
请看:找答案的这个问题:
http://www.ad.siemens.com.cn/service/answer/solution.asp?Q_id=71484&cid=1029
一日三省吾身