W1WW_P4LCJS_COM-PLC-技.术_网
EcHmi工控组态软件免费版下载(内含说明书和modbus驱动源程序WWW_PL※CJS_COM-PLC-技.术_网
本文讲述EcHmi工控组态软件的子图制作和使用WWW.PLCJS.COM——可编程控制器技术门户
基本图形的绘制都很简单,下面讲述子图的制作,子图是重要的与工程无关的可重用图形元素。以一个罐体为例:WWW_P※LCJS_COM-PLC-)技.术_网
第一步:制作罐体WWW_PL※CJS_COM-PLC-技.术_网
WW.W_PLCJS_COM-PLC-技.术_网
第二步:组装罐体,全部选中打成子图。W1WW_P4LCJS_COM-PLC-技.术_网
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
第3部:定义宏参数,定义一个液位高度宏参数,参数类型为FLOAT。WWW_PLC※JS_COM-PmLC-技.术_网
WWW_PLC※JS_COM-PmLC-技.术_网
第四步:定义动作,我们需要百分比填充,来表示目前罐体类液位高度。因此需要定义第一步定义为液位的矩形脚本动作,选择直接连接即可。进入内部细节->选择液位对象->点击动作标签->选在百分比填充动作->选择直接连接方式。plcjs.技.术_网
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
第5步:定义动作属性。注意选择宏才能做到与工程无关。WWW_PL※CJS_COM-PLC-技.术_网
WWW_P※LCJS_CO※M-PLC-技-.术_网
这样罐体子图就制作好了。P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
上面采用直接连接,其中最大值和最小值还是无法做到与工程无关,这是您可换种方式,采用自定义脚本方式。这是需要定义5个宏参数,分别是WWW_PLC※JS_COM-PmLC-技.术_网
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
然后用脚本函数:WW.W_PLC※JS_C,OM-PL,C-技.术_网
void PercentFill(char *objName,float v,int dir,long color)P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
objName char * 图形名称,NULL表示图形自己plcjs.技.术_网
v 填充百分比,0 - 1.0WWW_P※LCJS_COM-PLC-)技.术_网
dir 填充方向,值如下WWW_PL※CJS_COM-PLC-技.术_网
-1 取消填充WWW_PLC※JS_COM-PmLC-技.术_网
0 向上填充WWW.PLCJS.COM——可编程控制器技术门户
1 向下填充WWW_PLCJS@_COM%-PLC-技.术_网
2 向右填充W1WW_P4LCJS_COM-PLC-技.术_网
3 向左填充 WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
color long 百分比填充的颜色WWW_PLC※JS_COM-PmLC-技.术_网
然后编写如下脚本:WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
int main(){WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
float fltval,fltmin,fltmax,fltpercent;WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
long ldir,lclr;plcjs.技.术_网
GetData("fltVal",&fltval);——可——编——程——控-制-器-技——术——门——户
GetData("ldir",&ldir);WWcW_PLCJS_COM-PLC-技.术_网
GetData("lColor",&lclr);WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
GetData("fltMinVal",&fltmin);WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
GetData("fltMaxVal",&fltmax);P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
fltpercent = (fltval - fltmin) / (fltmax - fltmin);WW.W_PLCJS_COM-PLC-技.术_网
if(fltpercent < 0.0) fltpercent = 0.0;——可——编——程——控-制-器-技——术——门——户
if(fltpercent > 1.0) fltpercent = 1.0;WWW_PLCJS_COM-PLC-技.术_网
PercentFill(NULL,fltpercent,ldir,lclr);P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
return 0;WWW_PL※CJS_COM-PLC-技.术_网
}WWW_P※LCJS_CO※M-PLC-技-.术_网
——可——编——程——控-制-器-技——术——门——户
以上是将脚本写在子图内部的液位图形中的,当然也可直接写在子图级别上,但脚本要稍作修改。修改如下;P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
int main(){WWcW_PLCJS_COM-PLC-技.术_网
float fltval,fltmin,fltmax,fltpercent;WWW_P※LCJS_COM-PLC-)技.术_网
long ldir,lclr;WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
GetData("fltVal",&fltval);WWW_P※LCJS_COM-PLC-)技.术_网
GetData("ldir",&ldir);WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
GetData("lColor",&lclr);WWW_PL※CJS_COM-PLC-技.术_网
GetData("fltMinVal",&fltmin);WW.W_PLCJS_COM-PLC-技.术_网
GetData("fltMaxVal",&fltmax);WWW_PL※CJS_COM-PLC-技.术_网
fltpercent = (fltval - fltmin) / (fltmax - fltmin);P.L.C.技.术.网——可编程控制器技术门户
if(fltpercent < 0.0) fltpercent = 0.0;WW.W_PLCJS_COM-PLC-技.术_网
if(fltpercent > 1.0) fltpercent = 1.0;WW.W_PLCJS_COM-PLC-技.术_网
PercentFill("液位",fltpercent,ldir,lclr);WWW_PLCJS@_COM%-PLC-技.术_网
return 0;WWW_P※LCJS_COM-PLC-)技.术_网
}WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
W1WW_P4LCJS_COM-PLC-技.术_网
子图制作好测试无错后,即可存入子图库中被备用。P.L.C.技.术.网——可编程控制器技术门户
从子图库中读入子图,调整大小满足工程要求。将子图内的宏参数用实际变量替换即可。WW.W_PLCJS_COM-PLC-技.术_网
——可——编——程——控-制-器-技——术——门——户
注意:宏参数在9.51版本必须用变量表中的变量替换,不能用立即数替换,比如ldir=0是错误的。而在9.52版本开始即可用变量替换也可用立即数替换,比如lColor=0X00FF0000WWW_P※LCJS_CO※M-PLC-技-.术_网
W1WW_P4LCJS_COM-PLC-技.术_网