回复:S7梯形图编程

一简

  • 帖子

    267
  • 精华

    0
  • 被关注

    25

论坛等级:奇侠

注册时间:2010-03-08

白金 白金 如何晋级?

发布于 2016-12-27 15:57:41

6楼

我用SCL写过,下面是代码可以实现楼主的功能。

FUNCTION_BLOCK mxlFB_blink


KNOW_HOW_PROTECT


VAR_INPUT

    in_enable   :BOOL;  // 闪烁使能

    in_on_time  :REAL;  // 输出为ON时间

    in_off_time :REAL;  // 输出为OFF时间

    in_time_ob35    :REAL:= 0.1;  // OB35的中断时间

END_VAR


VAR_OUTPUT

    out_blink   :BOOL;  // 输出值/BOOL,闪烁

END_VAR


VAR

    count_on    :REAL;  

    count_off   :REAL;  

END_VAR


IF in_enable THEN


    IF (NOT out_blink) THEN

        count_off   := count_off+1.0;

        count_on    := 0.0;

        

        IF count_off>=(in_off_time/in_time_ob35) THEN

            out_blink   := true;

        ELSE

            out_blink   := false;

        END_IF;

    ELSE

        count_on    := count_on+1.0;

        count_off   := 0.0;

        

        IF count_on>=(in_on_time/in_time_ob35) THEN

            out_blink   := false;

        ELSE

            out_blink   := true;

        END_IF;

    END_IF;

ELSE

    out_blink   := false;

    count_on    := 0.0;

    count_off   := 0.0;

END_IF;


END_FUNCTION_BLOCK


工程效率
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54710条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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