最近做了一个项目,共有136个I/O点,买256的不划算,128的又用不了。
后来经过问一些前辈,找到了解决的办法,略微整理一下,发出来大家学习和讨论。
思路:把多个在下位机内存中连续排列的参数在WinCC中定义为一个Tag,它的长度是多个参数之和,取得这个Tag后编程将其分成多个参数。
具体做法:
1。在PLC中的Q2.0到Q5.7总共32点中有21个WinCC需要通信,将其在WinCC中定义为一个变量QD2,地址为QD2.
2。在WinCC内部变量中定义Q2.0到Q5.7的需要使用的变量。
3。在C脚本中定义全局动作,在动作中编程。如Q5.0=QD2&1;&为双字与。
4。定义动作的触发为变量QD2有变化时。
此时就可以在WinCC中正常使用了。
小结:用这种方式得到的变量比其他变量多了一个用全局动作转换的过程,故实用于对实时性要求不高的一些监控量。
注意:双字的格式。如Q5.0为QD2的第0位,Q4.0为QD2的第8位。