关于FC641顺序块控制

描述

激活

工作原理

该块根据输入变量 "VerAuto" 和 "VerHand"(具体视已经选择的模式(手动或自动))生成输出"VerGes"。在自动模式中,如果存在同步错误,输出"VerGes"  将被阻塞。

收到来自"SK_Verwaltung" 的同步请求后,先将全部步设置成 FALSE ,再设置其转换条件已被满足的步。

转换条件由联锁条件“自动”(Automatic) 和输入  "FrgTrans"的转换条件组成。

顺序错误将会禁用顺序检索。在自动模式中时,若存在同步错误,也会禁用输出 "VerGes"。

如果在同步中发现了多个步,将对第一个步进行同步。此时输出可以适用于多个步的某条错误消息。 

输入  "Cfg"  用于设置特殊功能:

- "Cfg Bit 00" 用于将某个步定义成等待步,也就是说, "Halt" 或 "Freigabe" [enable] 立即访问反馈信号。

- "Cfg Bit 01" 用于定义在内部不允许“停止”(Halt) 的某个步,也就是说,顺序在满足某个转换条件的情况下收到访问请求或停机请求后也不停止执行。

示教步时间

顺序执行期间,通过设置 "M10.7 Teach_Time_SK" 标志可以写入步时间;在在线状态期间,可以通过参数"SNO_Time" 读出步时间。

步时间 "+10 s" 将被组态成步监控时间 (TUeS) 。

对于处于循环时间期间的顺序,应为其计算该时间。

-FC641  顺序块控制-

-Cfg.X1选择什么时候发出K90- Schritt.T上一步的激活的时间

-Schritt.X上一步的激活状态 =1处于激活转台,=0没有激活

IF NOT Cfg.X1 AND Schritt.X THEN     1.下一步的条件满足时发出FR_K90

    IF TransBed OR (NOT TransBed AND xHM_Zeit_abgelaufen) THEN

    -当该步条件满足-或者该步条件不满足和上一步执行时间超过10S时间正常-

       ST_BA.K90_SK := ST_BA.K90_SK;

        xHM_K90Frg:= True;   -发出允许请求进入-

    ELSE

       ST_BA.K90_SK := False;

        xHM_K90Frg:= False;

    END_IF;   

END_IF;

IF Cfg.X1 AND Schritt.X THEN       2.下一步的条件没有满足时发出FR_K90

    IF TransBed OR (NOT TransBed AND NOT xHM_Zeit_abgelaufen) THEN

       ST_BA.K90_SK := False;

        xHM_K90Frg:= False;

    ELSIF NOT TransBed AND xHM_Zeit_abgelaufen THEN

-条件不满足时-上一步执行时间超过10S时间正常-

       ST_BA.K90_SK := ST_BA.K90_SK;

        xHM_K90Frg:= True; -发出允许请求进入-

    END_IF;    

END_IF;


 

激活

IF Teach_Time_SK AND Schritt.S0 AND TransBed THEN

Schritt.S0上一步离开-本步的条件满足-Teach_Time_SK:M10.7-

    SNO_Time :=Schritt.T ;    上一步的激活时间

END_IF;

激活

tHM_SUe:= SNO_Time * 13 / 10 当前步时间的换算

IF TUe_S = T#0s THEN   如果外部设置的等待时间是0s  

    IF (Schritt.T > tHM_SUe)AND (tHM_SUe > T#0s) THEN 比较上一步的T条件时间

        xHM_Zeit_abgelaufen := True ;激活允许请求

    ELSE

        xHM_Zeit_abgelaufen := False ;    关闭允许请求

    END_IF;

ELSE       -TUe_S=10S如果外部设置的等待时间不是0s

    IF Schritt.T > TUe_S  THEN比较上一步的T条件时间大于设置间

        xHM_Zeit_abgelaufen := True ;激活允许请求

    ELSE

        xHM_Zeit_abgelaufen := False ;关闭允许请求

    END_IF;   

END_IF;

IF (MOP_HALT = True) OR (xHM_K90Frg ANDST_BA.K90_AnfoZutritt) THEN

  -请求进入与允许请求进入都有时-

        MOP_HALT:= True;   激活控制步停止

END_IF;

IF (MOP_HALT = True) AND NOT (xHM_K90Frg ANDST_BA.K90_AnfoZutritt) AND Schritt.X THEN

-停止步后-取消请求进入-上一步还在激活就会取消停止-

        MOP_HALT:= False;

END_IF;

激活

通过对K90_SK的控制,使顺序块如果在跳步时,或顺序块条件不满足时不能有允许进入条件

注 : Si.T 步 i的当前或上次的激活时间

         Si.X  显示步 i是否被激活

         Si.U  步 i的没有干扰的总的激活的时间

         Transi.TT  显示转换条件 i是否满足

         HALT_SQ  MOP.HALT "Stop seqencer"  停止程序顺序并且重新激活

激活

激活

  
      审核编辑:彭静

 

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分