回复:S7-300 STL程序绑定序列号

已锁定

askab

  • 帖子

    405
  • 精华

    5
  • 被关注

    34

论坛等级:侠圣

注册时间:2005-07-24

黄金 黄金 如何晋级?

发布于 2022-07-27 07:52:32

3楼

这个是昨天晚上监控到现在的PLC 运行时间,是按照小时为计算单位的。  

附SCL 如下

VAR_INPUT

start: BOOL:=false;      //  开始

stop:  BOOL:=false;      //  结束 

set_time:BOOL:=false;    // 设定时间使能   

NR:BYTE;                 //定时器编号

PV:INT;                 //预设定时间

S:BOOL;                 // 使能

END_VAR




VAR_IN_OUT

last_status:BOOL;   //上个周期状态    

positive_edge,negative_edge:BOOL;   //记录上升沿和下降沿

END_VAR




VAR_TEMP

    SFC2_status:INT;     //SFC2 执行状态

    SFC3_status:INT;

    SFC4_status:INT;

    SFC2_CYC,SFC3_CYC,SFC4_CYC:BOOL;  // SFC 执行正确

    

END_VAR 


VAR_OUTPUT

CQ:BOOL;             // 定时器运行状态

CV:INT;              // 实际运行时间

run:BOOL;

END_VAR 


run:=( run OR start) AND NOT stop;        // 启动或停止


IF set_time  THEN

    SFC2_status:=SET_RTM(NR := NR // IN: BYTE

            ,PV :=PV  // IN: INT

            ); // INT

    IF SFC2_status  = 0 THEN

        SFC2_CYC:= true;

    ELSE

        SFC2_CYC:= false;       

   END_IF;

END_IF;


      positive_edge   := run AND (NOT last_status);

      negative_edge   := last_status AND (NOT run);

      last_status:= run;

// 读取启动的上升沿和下降沿     


IF ( positive_edge OR negative_edge) THEN

    SFC3_status:=CTRL_RTM(NR := NR // IN: BYTE

             ,S :=S  // IN: BOOL

             ); // INT

     IF SFC3_status  = 0 THEN

        SFC3_CYC:= true;

    ELSE

        SFC3_CYC:= false;       

   END_IF;

END_IF;

SFC4_status:= READ_RTM(NR := NR // IN: BYTE

         ,CQ := CQ // OUT: BOOL

         ,CV := CV // OUT: INT

         ); // INT

      IF SFC4_status  = 0 THEN

        SFC4_CYC:= true;

    ELSE

        SFC4_CYC:= false;       

   END_IF;


END_FUNCTION

可以不用SFC2, 直接调用SFC3/4 然后记录运行时间,SFC2是给预设时间,例如 PLC 运行24 然后叠加1 并清零SFC4,表示工作了一天,再次运行24小时,叠加1 ,并清零表示工作两天,依次类推。

SFC2 一般用于清零比较多。

但我不用这个SFC 做运行时间监控,我一般用心跳检测进行时间累加,时间精度随意可以调整。

大家同行,you ok ? me !
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54776条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。