功能块有一个WORD格式的“USTATUS”输入管脚,该管脚的注释是”Status word in VSTATUS, can be configured user-specific”,也就是说USTATUS是VSTATUS的一部分,可以用来进行用户自定义的状态输入,将其组合到VSTATUS中。如下图Pic1所示,USTATUS输入为16#1时,仿真MOTOR回路的就地控制,输出VSTATUS为16#10200。USTATUS被加入到VSTATUS的高16位中了。因此,通过USTATUS输入管脚,我们可以为Motor等功能块定制更多的状态。
Pic1.MOTOR回路USTATUS示例 一般来说,我们通常使用某些功能块(MOTOR,VALVE等)的VSTATUS状态返回值和智能图形对象”STATUS DISPLAY EXTEND”来实现状态的上位机显示。 VSTATUS状态返回值是一个输出类型的32位状态字,其高16位为USTATUS(数据类型为WORD)输入,低16位由相应的功能块类型决定。因此,当用户希望自定义的USTATUS状态用STATUS DISPLAY EXTEND功能显示出来时,只要知道其对应于VSTATUS的关系即可,USTATUS的第一位对应VSTATUS的第17位,依此类推。
这里以MOTOR块为例说明,我们希望给该电机一个现场就地/远程选择开关状态指示(1表示就地,0表示远程),此状态可由STATUS DISPLAY EXTEND功能显示出来。 这里可以用USTATUS最低位代表,用STATUS DISPLAY EXTEND功能显示出来;当然,其它位的状态设置方法类似。
√ 首先明确,用户定义的USTATUS为16#0001时,VSTATUS的第17位(BIT16)就对应于该位且值为1。
√ 为观察该电机VSTATUS的值,打开对应的PICTURE,其中self_Motor/1块标识为上面CFC块1(MOTOR块)经OS编译自动生成的的block icon。
Pic2.MOTOR的上位机图标
√ 在其下方添加一个STATUS DISPLAY EXTEND对象,用于显示该电机就地/远程状态。
√ 打开其ConFIG DIAGLOG属性,在GENERAL中定义BIT为FROM STATUSWORD1,BIT NO.为16。
Pic3. 设置STATUS DISPLAY EXTENDED
√ 为该状态位定义相应图片,即:电机为就地操作状态时由索引1连接的图形表示;远程操作状态由索引0连接的图形表示,如Pic4所示。
Pic4.设置相应状态的显示图片
√ 同时在其图形属性组态中,将属性Status1 与self_Motor.VSTATUS 标签连接,见Pic5。 其中该位为1,表示就地状态时显示 ;0,表示远程状态时显示 。
Pic5.关联Status1和相应的VSTATUS
注:这里定做了两个图形文件Localc.bmp和Remote.bmp(存放在<project name>\winproject\<OS name>\GraCS录下),表示1,0两种位状态对应的本地/远程控制状态。 √ 检查测试结果,由图1知道VSTATUS为16#10200表示其第17位1(即:USTATUS最低位的值);同时,参照前面给出的MOTOR块VSTATUS低十六位定义表可知:低字16#0200表示QRUN=1,QMAN_AUT=0(手动),即:电机正以手动方式运行。
√ 运行该画面,该STATUS DISPLAY EXTEND显示为1,表示该电机正处于就地状态,见Pic6所示。
Pic6.马达就地控制显示图标
水电之家为您提供最全面的管材,管件,水电,电线,电工,管材水电品牌的装修知识点和各种管材水电的导购与在线购买服务,拥有最便宜的管材水电价格和最优质的售后服务,每天都有秒杀的抢购活动哦!敬请登陆水电之家:http://shuidian.jc68.com/