恭喜,你发布的帖子
发布于 2017-11-13 10:48:05
54楼
感谢解答。请问WINCC里有没有写入一个字的某一个位的方法,我没找到。
另外Letham,你的电机块FB的变量全部声明为静态,这样在调用电机块FB的多重FB内监视是看不到电机输入和输出信号的,那么你是通过DB来监视变量表来写入控制值吗?
如果 你非要对某个变量的某个位进行 置位,那么可以考虑WINCC里面的VBS脚本函数 “SetBitInTag(Tag,Bit)”
如果是对某个对象的属性做动态,那倒是很简单,动态链接里就可以选择某个变量的某个位。
我正常编程程序时,程序逻辑里,从来不会直接,使用IO进行连锁,我都是在静态变量定义那些外围的需要和电机控制功能块交换信息的变量,
比如 上图 我的电机控制程序里(最简单的控制一个运行信号,一个启动信号),我都是在程序外围把电机运行信号传递给电机控制功能块的相对应的变量,调用完成后,把电机控制功能块的控制信号,传给输出点。
电机控制功能块,不加任何接口,这个也是个人习惯吧,你可以 把你功能块的和外围相关的做成IN IN_OUT,OUT接口。我不做 是因为接口信号太多,调用功能块时,像只蜈蚣,2边都是管脚。
第二,做接口,涉及到实参到形参传递过程,需要通过L区中转,这样,我还不如自己直接 手段传递IO到电机控制功能块的变量里。
请填写推广理由:
分享
只看
楼主