1、V13 plc move指令输出引脚是可以增加或减少的(OUT1、OUT2),这个怎么在
SCL中实现?比如要FC程序块的输入引脚是活动的.....
2、想做一个程序?实现从 StartBit(M30.4) 开始偏离ByteOffest 地址(2)的字节的这一位(M32.4),继续向下偏离,偏离数量Quantity(3)个位进行置位或复位
(M30.4:=Value;, M32.4:=Value;,M32.4:=Value;)
输入StartBit:ANY;、Quantity:INT;、ByteOffest:INT;、Value:Bool
如果Value的数据类型为ANY更好,这样就可以实现偏离地址的数量的地址的赋值了
可能要考虑到S7-1200和S7-300的SCL语言的区别
菜鸟在此谢过了!!!!........
最佳答案
1. 引脚的自动添加应该是系统块的功能,暂时没有看到编程实现方法,应该不可以。
2.1200在寻址这块不如300方便。1200不支持any指针,直接输入位可能不好实现。我写了一个简化版的程序,接口输入M位的字节地址和位地址,利用POKE_BOOL指令可以实现对存储器位的写入,可以实现要求。见附件。
FOR #i:= #StartMBit_Byte TO #StartMBit_Byte + #Quantity*#ByteOffest BY #ByteOffest DO
POKE_BOOL(area:=16#83,
dbNumber:=0,
byteOffset:=#i,
bitOffset:=#StartMBit_Bit,
value:=#Value);
END_FOR;
图片说明:
提问者对于答案的评价:
非常谢谢!
再其次S7-300 做scl 了? 很大不同吗? 谢谢
最佳答案作者回复:
S7-300寻址会方便点。
https://support.industry.siemens.com/cs/document/59623719
现在流行用符号寻址,1200,1500会成为主流的。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc139481.html