0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

WINCC面板的关闭/打开SV及KV柜Q1主空开的控制原理

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2020-05-11 10:20 次阅读

WINCC面板的关闭/打开SV及KV柜Q1主空开的控制原理

---------------------------------------------------------

FB100中使用:

R_TRIG_Anfo_Off_Halt (CLK:="DB_ARG".On_Off.Anfo_Off_Halt);

R_TRIG_Cancel (CLK:="DB_ARG".On_Off.Cancel);

R_TRIG_Anfo_Off (CLK:="DB_ARG".On_Off.Anfo_Off);

If (R_TRIG_SK90_ZutrittAnfo.Q Or R_TRIG_K90_ZutrittAnfo.Q)

And Not xHM_K90_ZutrittAnfo And ST_BA.K90_AnfoSG = WORD#0

OR MASTER_DIAG_STAT_REG_PF Or R_TRIG_Anfo_Off_Halt.Q Then

xHM_K90_ZutrittAnfo := True; 请求进入

R_TRIG_SK90_ZutrittAnfo.Q:= False;

End_If; 请求进入

If (R_TRIG_SK6_TE.Q And xHM_K6_TE) Or (ST_BA.K6_TE And Not ST_BA.K40) Or "DB_ARG".On_Off.Quitt Or R_TRIG_Cancel.Q Then 当ON_OFF的送点ON功能激活时

xHM_K6_TE := False; 结束K6进程停止

End_If; 停止

If (R_TRIG_SK90_ZutrittAnfo.Q Or F_TRIG_K90_ZutrittAnfo.Q Or "DB_ARG".On_Off.Quitt Or R_TRIG_Cancel.Q) And xHM_K90_ZutrittAnfo And Not MASTER_DIAG_STAT_REG_PF Then

xHM_K90_ZutrittAnfo := False;

End_If;

If (R_TRIG_SK6_TE.Q Or R_TRIG_Anfo_Off.Q) And Not xHM_K6_TE Then

xHM_K6_TE := True;

R_TRIG_SK6_TE.Q := False;

End_If;

---------------------------------------------------------

FB142系统赋值

xON := SVQxK AND (KVQxK OR Cfg.X1); SV及KV柜Q1空开在接通状态

xOFF := NOT SVQxK AND (NOT KVQxK OR Cfg.X1); SV及KV柜Q1空开在关闭状态

Cfg.X1:控制带不带KV柜,不带为1 带为0

xS_LS := (bVisutasten = Byte#2); 控制关闭/打开按钮。

R_Trig_S_LS(CLK := xS_LS); 触发激活脉冲。

WINCC面板控制关闭:

IF FrgAnw AND R_Trig_S_LS.Q THEN 按钮点了

IF xOFF AND NOT TP_MAZ.Q THEN 空开已经关闭了,而且间隔时间已经满足

IF NOT xOff_aktiv AND NOT xON_aktiv THEN 没有处于激活开电或关电

iSKette := 10; 去开电步骤

ELSE

iSKette := 0;

END_IF;

ELSIF xON THEN

IF NOT xOff_aktiv AND NOT xON_aktiv THEN

iSKette := 110; 去关电步骤

END_IF;

ELSE

xF_MAZ := True; 空开状态不对故障

END_IF;

END_IF;

TP_MAZ(IN := On_Off.Qx_Off, PT := T#2m) 断开点后的间隔时间2m

打开ON

CASE iSKette OF

10 : (*Start*)

xAnwOff := False;

xAnwOn := True; 选择打开模式

xOn_aktiv := True; 启动被激活

iSKette := 20;

20 : (*Kraftspeicher laden*)

TON_Timer.PT := T#2s; 激活延迟2s

xTimer := True;

SVKx := True; SVK1先保持打开

IF TON_Timer.Q THEN 时间满足后

xTimer := False;

SVKx := False; SVK1被关闭

xQx_On := True; ON状态被激活

iSKette := 30;

END_IF;

30 : (*Verzoegerung Einschalten*)

IF xOn THEN 检测NOVS,KV柜Q1开关启动状态

xQx_On := False;

TON_Timer.PT := Tver_On; 延迟启动时间开始

xTimer := True;

IF TON_Timer.Q THEN 时间到达

xTimer := False;

iSKette := 40;

END_IF;

END_IF;

40 : (*Quitt Zutrittsanforderung, Halt bei Taktende*)

xQuitt := True; 复位

xQuitt_5s := True;

TON_Timer.PT := T#5s; 延迟5s

xTimer := True;

iSKette := 50;

50 : (*Quitt 5s Rueckfuehrkreis und Depassivierung*)

xQuitt := False ;

IF TON_Timer.Q THEN 时间到达后

xTimer := False;

xQuitt_5s := False;

xQuitt_Usr := True;

xSteuEin := True; 启动点激活

iSKette := 60;

END_IF;

60 : (*Quitt Usermeldungen*)

xQuitt_Usr := False;

xOn_aktiv := False; 返回初始化

iSKette := 0;

END_CASE;

关闭SVK1继电器

CASE iSKette OF

110: (*Start*)

xAnwOn := False;

xAnwOff := True; 选择打开模式

xOff_aktiv := True; 关闭被激活

xF_AnlBerOff := False;

iSKette := 120;

120: (*Verzoegerung Ausschalten*)

TON_Timer.PT := Tver_Off; 延迟时间激活

xTimer := True;

xErrorOffClear := False;

IF ((TON_Timer.PT - TON_Timer.ET ) < T#10s) THEN  剩余10S停止关闭请求  

xAnfo_Off_Halt := True; 发出请求关闭停止

END_IF;

IF TON_Timer.Q AND On_Off.Anl_Bereit_Off THEN 延时到达关闭准备满足

xTimer := False;

xAnfo_Off_1 := True; 前往下一步

iSKette := 140;

ELSIF TON_S_LS_Off.Q THEN

xTimer := False;

xAnfo_Off_1 := True;

iSKette := 135;

ELSIF TON_Timer.Q AND NOT On_Off.Anl_Bereit_Off THEN 时间到达,结束

关闭报错

xTimer := False;

xAnfo_Off_1 := True;

xF_AnlBerOff := True; 发出关闭准备错误

iSKette := 130;

END_IF;

///////////////////////////////////////////////////////

TON_S_LS_Off.Q 的解析:

TON_S_LS_Off(IN := (xS_LS OR Sxx_Off) AND xOff_aktiv, PT := T#4s)

xS_LS: xS_LS := (bVisutasten = Byte#2) wincc按钮一直按住

Sxx_Off:模块外部输入管脚,指按钮。

按钮信号一直被按住要超过4s

///////////////////////////////////////////////////////

On_Off.Anl_Bereit_Off 的解析:

On_Off.Anl_Off := xAnl_Off

On_Off.Anfo_Off := xON AND xAnwOff

FB200 机器人

_ST_ROB.E30_Anfo_Abschalt := ON_OFF.Anl_Off;

IF NOT AnwORob AND ON_OFF.Anfo_Off THEN

IF NOT _ST_ROB.A30_Abschaltung_erlaubt THEN 机器人没有发出机器人停止

ON_OFF.Anl_Bereit_Off := False; 选择OFF准备将被关闭

IF ON_OFF.Anfo_Off_1 THEN

xF_AAE := True;

END_IF;

END_IF;

END_IF;

机器人控制ON_OFF能否被实施完成

130: (*nicht Bereit Ausschalten 1s Cancel ausgeben*) 结束关闭指令

xAnfo_Off_1 := False;

xAnwOn := xON;

xAnwOff := xOFF;

TON_Timer.PT := t#1s;

xTimer := True;

xCancel := True;

IF TON_Timer.Q THEN

xTimer := False;

xCancel := False;

iSKette := 0;

END_IF;

135: (*Ausschalten ohne Bereit 5s Warnung ausgeben*) 等待去第150步

xAnfo_Off_1 := False;

TON_Timer.PT := t#5s;

xTimer := True;

xOff_Visu := True;

IF TON_Timer.Q THEN

xTimer := False;

xOff_Visu := False;

iSKette := 150;

END_IF;

140: (*Anlage Bereit zum Ausschalten 30s Anl_Off ausgeben*)

xAnfo_Off_1 := False;

TON_Timer.PT := t#30s;

xTimer := True;

xAnl_Off := True; 请求OFF发出

IF TON_Timer.Q THEN

xTimer := False;

xAnl_Off := False;

iSKette := 150;

END_IF;

150: (*Leistungsschalter, Medien, Licht usw. Aus*)发出控制的VSK1为1

xSteuEin := False;

xQx_Off := True;

SVKx := True; VSK1为1

iSKette := 160;

160: (*Leistungsschalter Aus*)

xQx_Off := False; 返回0步

iSKette := 0;

END_CASE;

On_Off.Cancel

FB100

R_TRIG_Cancel (CLK:="DB_ARG".On_Off.Cancel);

If (R_TRIG_SK90_ZutrittAnfo.Q Or F_TRIG_K90_ZutrittAnfo.Q Or "DB_ARG".On_Off.Quitt Or R_TRIG_Cancel.Q) And xHM_K90_ZutrittAnfo

And Not MASTER_DIAG_STAT_REG_PF Then

xHM_K90_ZutrittAnfo := False;

End_If;

If (R_TRIG_SK6_TE.Q And xHM_K6_TE) Or (ST_BA.K6_TE And Not ST_BA.K40) Or "DB_ARG".On_Off.Quitt Or R_TRIG_Cancel.Q Then

xHM_K6_TE := False;

End_If;

关闭请求进入K90和K6进程停止

----------------------------------------------------------------

On_Off.Anfo_Off := xON AND xAnwOff;

On_Off.Anfo_Off_1 := xON AND xAnfo_Off_1;

On_Off.Anfo_Off_Halt := On_Off.Anfo_Off AND xAnfo_Off_Halt;请求停止

/////////////////////////////////////////////////////

FB100

R_TRIG_Anfo_Off_Halt (CLK:="DB_ARG".On_Off.Anfo_Off_Halt);

If (R_TRIG_SK90_ZutrittAnfo.Q Or R_TRIG_K90_ZutrittAnfo.Q)

And Not xHM_K90_ZutrittAnfo And ST_BA.K90_AnfoSG = WORD#0

OR MASTER_DIAG_STAT_REG_PF Or R_TRIG_Anfo_Off_Halt.Q Then

xHM_K90_ZutrittAnfo := True;

R_TRIG_SK90_ZutrittAnfo.Q:= False;

End_If;

请求停止发出后FB100请求进入安全门发出

/////////////////////////////////////////////////////

On_Off.Qx_On := xQx_On;

On_Off.Qx_Off := xQx_Off;

On_Off.Quitt := xQuitt;

On_Off.Quitt_5s := xQuitt_5s;

On_Off.Quitt_USR := xQuitt_USR;

On_Off.STEUEIN := xON AND xSteuEin;

On_Off.On_aktiv := xOn_aktiv AND NOT On_Off.STEUEIN;

On_Off.Anl_Bereit_Off := On_Off.Anfo_Off;

On_Off.Anl_Off := xAnl_Off;

FB100中

R_TRIG_Anfo_Off (CLK:="DB_ARG".On_Off.Anfo_Off); 关闭请求

If (R_TRIG_SK90_ZutrittAnfo.Q Or R_TRIG_K90_ZutrittAnfo.Q)

And Not xHM_K90_ZutrittAnfo And ST_BA.K90_AnfoSG = WORD#0

OR MASTER_DIAG_STAT_REG_PF Or R_TRIG_Anfo_Off_Halt.Q Then

xHM_K90_ZutrittAnfo := True;

R_TRIG_SK90_ZutrittAnfo.Q:= False;

End_If;

请求关闭,FB100 的K90发出

On_Off.FS_Frg_Auto := F_Trig_Hupe.Q AND Mit;

On_Off.FS_LSP_Ein := (R_Trig_FS.Q OR R_Trig_LSP.Q) AND Mit;

On_Off.ErrorOffClear := NOT xF_AnlBerOff AND NOT On_Off.Anfo_Off AND NOT On_Off.Anfo_Off_1 OR Cfg.X0;

On_Off.Cancel := xCancel;

xON := SVQxK AND (KVQxK OR Cfg.X1); SV和KV柜的反馈/ 打开继电器

xAnwOff:选择关闭继电器

IF ((TON_Timer.PT - TON_Timer.ET ) < T#10s) THEN  

xAnfo_Off_Halt := True;

END_IF;

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制
    +关注

    关注

    4

    文章

    997

    浏览量

    122160
  • WinCC
    +关注

    关注

    5

    文章

    195

    浏览量

    47651
  • 进程
    +关注

    关注

    0

    文章

    194

    浏览量

    13877

原文标题:你知道-ON_OFF的使用吗?

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    这个电路Q1Q3会同时导通吗?

    在这个电路图中,MCU_CTL是MCU发出的数字控制信号,有没有可能在某种条件下,上管Q1和下管Q3同时导通?
    发表于 03-29 16:31

    63a和40a空开哪个安全

    和火灾。在住宅和商业建筑中,空开通常被安装在配电盘中,用来控制不同电路的供电。 63A空开的安全性 63A空开适用于电流较大的电路,通常用于主电源开断器和主回路开断器。它具有以下安全特
    的头像 发表于 02-26 10:47 732次阅读

    空开额定电流是计算电流的几倍

    的基本概念 空开(开关)是指一种能够断开或接通电路的开关设备,用于控制与保护电气设备。空开通常包括断路器、熔断器等,用来保护电气设备不受过载和短路等电流异常情况的损害。 二、额定电流的定义 额定电流是指电器设备额
    的头像 发表于 02-05 15:36 501次阅读

    空开能不能直接接电机?

    各位前辈,请教一下空开能不能直接接电机? 因现场需要,电机为一开一备,而控制系统(接触器和热保护等)为一套,当电机出现故障时,切换到备用电机工作,而备用电机的接线方式是:电机直接接到热保护
    发表于 12-29 06:58

    优化电池充电:关闭还是打开电源?

    优化电池充电:关闭还是打开电源? 随着移动科技的不断发展,电池的使用已经成为人们生活中不可或缺的一部分。无论是智能手机、笔记本电脑、手表还是其他电子设备,它们都需要电池来提供能源。然而,很多人对于
    的头像 发表于 12-11 10:44 748次阅读

    配电箱内的交流空开如果错装成了直流空开会发生什么?

    某单位生产一种配电箱,主要给160W~200W(AC220V)的通信设备配电,但后来发现:箱内本应安装施耐德EASY8 C10的交流空开,结果却装成了直流空开(C65H-DC,C10A,125V
    发表于 12-11 06:26

    python控制已经打开的浏览器

    。 一、Python控制已经打开的浏览器的常见需求和用途 1.切换浏览器标签页:有时候我们需要控制已经打开的浏览器标签页,例如打开多个网页后
    的头像 发表于 11-22 14:29 1462次阅读

    MOS管的开启与关闭

    中选用的是 PMOS 来作为开关管进行斩波控制,因此,我们知道只需要在 Q1 的 Vgs 施加负电压就可以顺利打开 MOS 管 Q1。 但是,从MOS 管的生产工艺上我们了解到,PMO
    的头像 发表于 11-20 16:27 993次阅读
    MOS管的开启与<b class='flag-5'>关闭</b>

    为什么我的Labview 2023 Q1用Crack破解后依然需要激活?

    为什么我的Labview 2023 Q1用Crack破解后依然需要激活? 运行时如图。
    发表于 11-12 11:20

    labview 和 wincc 的区别 使用场景

    labview 和 wincc 的区别 使用场景 都是上位机软件,都可以做监控软件 wincc的名气也比较大 对比的资料较少 写这些文章的人,从自己的从事的行业出发,带有自己的思维 使用的场景 肯定
    发表于 10-27 18:01

    为什么不建议漏电保护空开

    不建议漏电保护空开是因为漏电保护空开的单价比较高,而且在使用的期间也要时常更换,中间所流失的电费比普通的空开要高很多。并且漏电保护空开在电流过大的时候也会存在危险。 除了价格贵且易损坏
    的头像 发表于 09-13 14:59 1.5w次阅读

    一个非常简单的镍镉电池放电限制器电路

    电池与负载断开。C1 通过 R1 充电并打开Q2 。 集电极电流流过R2打开Q1,电池连接到负载
    发表于 09-11 17:23

    用Arduino做一个语音应用程序来打开关闭警报

    电子发烧友网站提供《用Arduino做一个语音应用程序来打开关闭警报.zip》资料免费下载
    发表于 07-10 10:46 0次下载
    用Arduino做一个语音应用程序来<b class='flag-5'>打开</b>和<b class='flag-5'>关闭</b>警报

    如何通过Google Assistant打开关闭LED

    电子发烧友网站提供《如何通过Google Assistant打开关闭LED.zip》资料免费下载
    发表于 06-28 11:54 0次下载
    如何通过Google Assistant<b class='flag-5'>打开</b>和<b class='flag-5'>关闭</b>LED

    黑暗传感器继电器-打开/关闭12V灯泡

    电子发烧友网站提供《黑暗传感器继电器-打开/关闭12V灯泡.zip》资料免费下载
    发表于 06-27 15:17 0次下载
    黑暗传感器继电器-<b class='flag-5'>打开</b>/<b class='flag-5'>关闭</b>12V灯泡