1、由于变频器内部累计运行时间关系到变频器是否在质保内,因此变频器内部累计运行时间不可清零,但是客户想要累计运行时间可进行清零操作,便于设备厂家对设备进行管理,故HMI所显示累计时间需要在HMI内部通过宏程序处理。如上图所示,界面左上角按钮为清零按钮,指示灯为清零动作指示。
2、宏程序:累计时间清零宏程序见下图,变量“leijijishi”为变频器累计运行时间地址,变量“xianshizhi”为HMI最终显示的累计时间,变量“qingling”为清零按钮,变量“LED”为清零动作指示。
3、宏程序调用:如下图所示,选择公共窗口-窗口属性-定时器,进行宏程序调用,触发条件选择窗口打开时触发,定时器功能勾选执行宏指令,并选择“jishuqingling”宏程序。
4、清零按钮:如下图所示,清零按钮分别在按下和弹起时执行动作,同时为了防止非厂家管理人员误操作,并对清零按钮进行延时5S的设置。
5、指示灯:如下图,进行清零动作指示,考虑到界面美观,没有清零动作时,指示灯隐藏。
6、累计时间:如下图,累计时间地址更改为RW20006。
7、程序代码:
#include <macro.h>
int MacroMain()
{
// Here to add macro code.
unsigned short A = GetWord(@leijijishi@,0);
unsigned short B = GetWord(@huancunzhi@,0);
unsigned short C ;///= GetWord(@baochizhi@,0);
//unsigned short D = GetWord(@xianshizhi@,0);
unsigned short D;
bool QL = GetBit(@qingling@,0);
bool LED;
D = A - B;
C = D;
if (QL == 1)
{
B = B + C;
SetBit(@LED@,0,1);
}
else
{
SetBit(@LED@,0,0);
}
SetWord(@huancunzhi@,0,B);
SetWord(@baochizhi@,0,C);
SetWord(@xianshizhi@,0,D);
return 0;
}
{{item.nickname}}
{{key+1}}楼{{item.content}}
{{item2.nickname}}
{{item2.content}}