作者 | 主题 |
---|---|
妥妥哥 侠士 经验值:1205 发帖数:92 精华帖:4 |
楼主 2021-01-27 14:15:28
主题:如何实现S7-1500 + WinCC GroupDisplay组显示 闲暇之余逛论坛看到某版发帖如何实现S7-1500 + WinCC GroupDisplay组显示,本以为是一个技术分享贴,奈何是一个广告贴,一个技术论坛却充满了铜臭味真是呵呵哒! 废话少说,我来分享我实现办法: 1,在需要报警的FB中调用Program_Alarm, 声明一个static byte,用于储存Get_AlarmState的状态输出, 声明一个Static bool或者byte储存Get_AlarmState的Error输出, 声明一个temp Word 储Get_AlarmState的状态输出; 如下: 2,在FB声明一个输出,如EventState,用于连接到wincc的组显示控件,熟悉PCS7的朋友都知道组显示各个bit代表的意义,Bit0-15为各个报警的状态(到达,离开,确认等),Bit16-31为报警的触发位,如Bit31为Alarm High,对应的Bit15是Alarmhigh的状态;然后将Get_AlarmState获取相关状态赋值给EventStete,这里有一点需要注意,Bit0-15正常状态下为TRUE,Bit16-31正常状态下为FALSE,所以未使用的位分别赋值TRUE或者FALSE; 3,wincc的报警消息利用EventState来做,也可以用AS加载来上传消息,我用的是后者,可同时上传消息内容和其他参数,再次不做赘述; 4,最最关键的一点,如何在导航栏中显示报警?利用自定义对象(或者直接用组显示),建立如下三个属性;分别关联组显示的属性 Relevant一定要赋值为TRUE 5,保存画面树!!!这样相关的报警就会显示到导航栏上 看到某些疯狂嚎叫的人着急了,抽点时间做个demo(TIA16_UPD2 + WinCC7.5_SP1_UPD5) 我个人的总结:只要了解GroupDisplay控件,Program_alarm和Get_AlarmState的用法,实现起来并不难,主要是组态流程画面之后一定要保存一次画面树 链接:https://pan.baidu.com/s/1zXAkem5Q2kVbNZ-O2rUcIQ 提取码:tgtv --来自百度网盘超级会员V5的分享 |