回复:300系统,需要实现计数大于999,并且每月21号固定清零,计数分为本月计数和上月计数

已锁定

askab

  • 帖子

    405
  • 精华

    5
  • 被关注

    34

论坛等级:侠圣

注册时间:2005-07-24

黄金 黄金 如何晋级?

发布于 2021-09-29 12:03:06

6楼

现在300的系统,想完成设备运行周期次数的统计,设备运行周期信号是I1.2,要求每月21号计数自动清零,计数分为本月计数和上月计数,请问用梯形图怎么实现?计数器串联什么意思?c2是完成一次计数999吗?

那么问题的解决分为要分开解决。

第一 I1.2 为运行周期,那么 I1.2 为周期性的脉冲信号,当I1.2 接通或断开的 上升沿 计数器增加一个。

第二,需要制作系统时间去比较21日这个节点。

我是否可以这样理解 例如   8月21日 00:00:00  清零后开始统计   

数据1 为 8月21日 00:00:00 ---31日 23:59:59 之间的计数值。 会有大小月区分。

数据2 为 9月1日  00:00:00-----9月20日 23:59:59 之间的计数值

这样从8月21日 统计到9月20 为一个月,数据为8月和9月  对应你所谓的本月计数和上月计数。


这个程序块 可以读取并写入 PLC 系统时间。

年 ,月 日 

然后分别比较。



FUNCTION_BLOCK FB10

TITLE = 'Block Title'

//

// 写入系统时间

//

VERSION: '1.0'

AUTHOR: baikai

NAME: Sys_time

FAMILY: baikai




VAR_INPUT

//enable_store_time:BOOL:=false;          //存储系统时间  可以记录设备故障时间

//enable_write_time:BOOL:=false;          //写入系统时间

END_VAR

VAR_OUTPUT

year:INT;

month:INT;

day:INT;

hour:INT;

mins:INT;

second:INT;

week:INT;

END_VAR

VAR

read_status:INT;

copy_status1:INT;

copy_status2:INT;

write_status:INT;

read_time:DT;

act_time:ARRAY[0..8] OF BYTE;

write_time:DT;

TS:WORD;

week_no:INT;

END_VAR

read_status:= READ_CLK(CDT := read_time 

         ); // 读取系统时间

copy_status1:= BLKMOV(SRCBLK := read_time  

       ,DSTBLK := act_time 

        );   //转化当前时间,并显示时间。

year:=BCD_TO_INT(act_time[0])+2000;

month:=BCD_TO_INT(act_time[1]);

day:=BCD_TO_INT(act_time[2]);

hour:=BCD_TO_INT(act_time[3]);

mins:=BCD_TO_INT(act_time[4]);

second:=BCD_TO_INT(act_time[5]);

TS:=BYTE_TO_WORD(act_time[7]);

week_no:=WORD_TO_INT(ts AND W#16#F) -1;

IF week_no = 0 THEN

    week:= 7;

ELSE

    week:=week_no;

END_IF;

(*

 IF enable_store_time THEN     // 存储时间

    copy_status2:= BLKMOV(SRCBLK := act_time 

           ,DSTBLK := write_time 

           ); // 当需要写入,先把最后一次的运行时间存储。

        END_IF;

 IF  enable_write_time THEN    // 写入时间   

    write_status:=  SET_CLK(PDT :=  write_time // 

             ); //写入最后一次时存储的时间。 

   END_IF;

      


*)

END_FUNCTION_BLOCK


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

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54618条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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