DCS实现机泵运行时间累积 点击:667 | 回复:3



pdengong

    
  • [版主]
  • 精华:20帖
  • 求助:71帖
  • 帖子:1937帖 | 3671回
  • 年度积分:1068
  • 历史总积分:55076
  • 注册:2011年4月11日
发表于:2017-04-07 08:23:31
楼主

DCS实现机泵运行时间累积?

不同厂家实现方案不一样。


在合适的时间我会贴出霍尼epks的一中组态策略。

1分不嫌少!


楼主最近还看过



白煮扁豆

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 12回
  • 年度积分:0
  • 历史总积分:100
  • 注册:2017年6月09日
发表于:2017-06-28 10:45:14
1楼

lz 顶一个             

songguangxin

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 63回
  • 年度积分:1
  • 历史总积分:56
  • 注册:2007年11月19日
发表于:2017-07-05 10:52:11
2楼

无论那套DCS(和利时、浙江中控、deltv、epks)都有读取系统时间的功能块,当某台机泵启动时刻读取系统时间存储起来,当一旦停机,在停机时刻再将系统时间读取出来,做差即可。或者采用定时器或计时器都可以实现。

例1:浙江中控JX-300xp为例用ST语言编写的读取系统时间和日期的自定义功能块

FUNCTION_BLOCK FB_SYSTEMDATE(**获取系统日期**)

VAR_INPUT

YEAR_IN1:INT;

MONTH_IN2:INT;

DAY_IN3:INT;

END_VAR

VAR_OUTPUT

YEAR_R:INT;

MONTH_R:INT;

DAY_R:INT;

Q1:BOOL;

END_VAR

VAR

TEMPYEAR:INT;

TEMPMONTH:INT; 

TEMPDAY:INT;

END_VAR

TEMPYEAR=YEAR();

TEMPMONTH=MONTH();

TEMPDAY=DAY();


YEAR_R=TEMPYEAR;

MONTH_R=TEMPMONTH;

DAY_R=TEMPDAY;

END_FUNCTION_BLOCK


FUNCTION_BLOCK FB_SYSTEMTIME(**获取系统时间**)

VAR_INPUT

HOUR_IN1:INT;

MINUTE_IN2:INT;

SECOND_IN3:INT;

END_VAR

VAR_OUTPUT

HOUR_R:INT;

MINUTE_R:INT;

SECOND_R:INT;

Q1:BOOL;

END_VAR

VAR

TEMPHOUR:INT;

TEMPMINUTE:INT; 

TEMPSECOND:INT;

END_VAR

TEMPHOUR=HOUR();

TEMPMINUTE=MINUTE();

TEMPSECOND=SECOND();


HOUR_R=TEMPHOUR;

MINUTE_R=TEMPMINUTE;

SECOND_R=TEMPSECOND;

END_FUNCTION_BLOCK

在用TEXTCODE功能块,进行时间判断,代码如下

IF (HOUR_SYS=7 OR HOUR_SYS=16 OR HOUR_SYS=0) 

AND MINUTE_SYS=49 AND SECOND_SYS=55 

THEN RL1=ON;

END_IF;

例2:和利时MACS 6可用TIMER-EVENT功能块进行时间判定;

例3:和利时MACS 5可用HSRTC功能块进行时间判定


sky3235582

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 129回
  • 年度积分:0
  • 历史总积分:246
  • 注册:2005年12月07日
发表于:2017-07-20 15:03:04
3楼

看看!!!!!!!!!!


热门招聘
相关主题

官方公众号

智造工程师