组态王指令说明
- 格式:doc
- 大小:63.00 KB
- 文档页数:2
组态王命令语言函数手册工业自动化通用组态软件组态王version6.5命令语言函数速查手册北京亚控科技发展有限公司组态王命令语言函数速查手册1命令语言函数速查手册“组态王”支持使用内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数、报表函数及其他函数,下面依次介绍各个函数(函数名不区分大小写,按字母排序):Abs此函数用于计算变量值的绝对值,使用格式如下:Abs(变量名或数值);返回值:整值或实型值;例如:Abs(14);返回值为14Abs(-7.5);返回值为7.5Abs(距离);返回内存模拟变量“距离”的绝对值。
Ack此函数常和按钮连接,当发生报警时,用此函数进行报警确认,它将产生确认报警事件。
调用格式:Ack(报警组名);或Ack(变量名);例如:Ack(全厂);或Ack(反应罐液位);ActivateApp此函数用于激活正在运行的窗口应用程序,使之获得输入焦点。
该函数主要用于配合函数SendKe ys的使用。
调用形式:ActivateApp(“ExeName”);参数描述ExeName应用程序的执行文件名北京亚控科技发展有限公司2组态王命令语言函数速查手册例如:激活Microsoft Word的正确调用为:ActivateApp("Word.exe");激活组态王:可使用ActivateApp("TouchVew.exe");ArcCos此函数用于计算变量值的反余弦值,变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式:ArcCos(变量名或数值);返回值:整值或实型值;例如:ArcCos(1);此函数返回值为0A rcCos(temp);此函数返回变量“temp”的反余弦值。
ArcSin此函数用于计算变量值的反正弦值,变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式:ArcSin(变量名或数值);返回值:整值或实型值;例如:ArcSin(1);此函数返回值为90A rcSin(temp);此函数返回变量“temp”的反正弦值。
命令语言函数速查手册 “组态王”支持使用内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数及其他函数,下面依次介绍各个函数(函数名不区分大小写,按字母排序): Abs 此函数用于计算变量值的绝对值,使用格式如下: Abs(数值或变量名); 返回值:整值或实型值; 例如: Abs(14); 返回值为14 Abs(-7.5); 返回值为7.5 Abs(距离); 返回内存模拟变量“距离”的绝对值。
Ack 此函数常和按钮连接,当发生报警时,用此函数进行报警确认,它将产生确认报警事件。
调用格式: Ack(报警组名); 或 Ack(变量名); 例如: Ack(全厂); 或 Ack(反应罐液位); ActivateApp 此函数用于激活正在运行的窗口应用程序,使之获得输入焦点。
该函数主要用于配合函数SendKeys的使用。
调用形式: ActivateApp(AppName); 参数 描述 AppName 应用程序的执行文件名 例如: 激活Microsoft Word的正确调用为: ActivateApp("Word.exe"); ArcCos 此函数用于计算变量值的反余弦值, 变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式: ArcCos(变量名); 返回值:整值或实型值; 例如: ArcCos(1); 此函数返回值为0 ArcCos(temp); 此函数返回变量“temp”的反余弦值 ArcSin 此函数用于计算变量值的反正弦值, 变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式: ArcSin(变量值); 返回值:整值或实型值; 例如: ArcSin(1); 此函数返回值为90 ArcSin(temp); 此函数返回变量“temp”的反正弦值 ArcTan 此函数用于计算变量值的反正切值, 使用格式为: ArcTan(变量值); 返回值:整值或实型值; 例如: ArcTan(1); 此函数返回值为45 ArcTan (temp); 此函数返回变量“temp”的反正切值 Bit 此函数用以取得一个整型或实型变量某一位的值(0或1)。
皖西学院监控组态软件实验指导书机械与电子工程学院电气工程教研室2013.3实验一监控组态工程建立与工艺流程图绘制一、实验目的熟练掌握工控组态软件的绘图工具二、实验容熟悉工控组态软件的绘图工具,完成反应工段工艺流程绘制以及外部设备和变量的定义。
三、实验步骤1.1创建工程在工程管理器中选择菜单“文件/新建工程”,或者点击工具栏的“新建”按钮,根据“新建工程向导”对话框完成工程创建,如图一所示图一工程管理器1.2 组态画面双击工程管理器中的工程,打开工程浏览器,在工程浏览器中左侧的“工程目录显示区”中选择“画面”,在右侧视图中双击“新建”,弹出新建画面对话框如图一所示。
图二画面属性设置点击图二确定按钮后,在工具箱和图库中选中相应图素进行监控画面组态,绘制工艺流程图如图三所示。
图三反应车间监控画面1.3定义设备根据工程中实际使用得设备进行定义,本例程使用亚控的仿真PLC设备,使用“PLC-亚控-仿真PLC-串口”驱动,定义设备名称为“PLC”。
1.4定义变量在组态王中定义三个变量:原料油液位(IO实数类型)、成品油液位(IO实数类型)、催化剂液位(IO实数类型)。
原料油液位变量:最小值0,最大值100,最小原始值0,最大原始值100,连接设备PLC,寄存器DECREA100,数据类型short,读写属性为只读,采集频率1000。
记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。
催化剂液位变量:最小值0,最大值100,最小原始值0,最大原始值100,连接设备PLC,寄存器DECREA100,数据类型short,读写属性为只读,采集频率1000。
记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。
成品油液位变量:最小值0,最大值200,最小原始值0,最大原始值200,连接设备PLC,寄存器INCREA200,数据类型short,读写属性为只读,采集频率1000。
记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。
组态王Name:表示变量的名称,字符型,只读。
Comment:表示变量的描述内容,字符型,可读可写。
质量戳相关域:变量的质量戳表示变量的数据质量好坏。
质量戳相关域包括:Quality:表示变量质量戳的值,整型,只读。
QualityString:表示变量质量戳字符串,字符串型,只读时间戳相关域:变量的时间戳表示变量数据的采集时间。
时间戳相关域包括:TimeYear:表示变量时间戳年的值,整型,只读TimeMonth:表示变量时间戳月的值,整型,只读TimeDate:表示变量时间戳日的值,整型,只读TimeHour:表示变量时间戳小时的值,整型,只读TimeMinture:表示变量时间戳分的值,整型,只读TimeSecond:表示变量时间戳秒的值,整型,只读TimeMsec:表示变量时间戳毫秒的值,整型,只读TimeZone:表示变量时间戳时区的值,整型,只读TimeDateString:表示变量时间戳日期的字符串,字符串型,只读TimeTimeString:表示变量时间戳时间的字符串,字符串型,只读组态王的变量(除报警窗和历史曲线变量外)均具有以上14种域。
另外,IO整型和IO实型变量还有下面四个域:MaxEU:最大值,模拟型,可读可写。
MinEU:最小值,模拟型,可读可写。
MaxRAW:表示变量的最大原始值,模拟型,可读可写。
MinRAW:表示变量的最小原始值,模拟型,可读可写。
内存整型,内存实型变量也有MaxEU和MinEU域。
离散变量的报警域包括Ack 表示变量报警是否被应答,离散型,只读。
Alarm 表示变量是否有报警,离散型,只读。
AlarmEnable 表示变量的报警使能状态,离散型,可读可写DataChanged 表示变量的变化状态,当变量值变化时,该域置1,用户可以手动赋值为0,离散型,可读可写。
DataUpDate 表示变量的状态变化,离散型,只读。
默认状态为false。
当从设备上采集上数据,填充实时库时(不管数据是否变化),该值置为true,需要手动复位。
定值上下限设定\\本站点\PLC100_T_YIGONGX100.LoLimit=PLC100_DZ_T_YIGONG_XIAX100;\\本站点\PLC100_T_YIGONGX100.HiLimit=PLC100_DZ_T_YIGONG_SHANGX100;\\本站点\PLC100_P_YIGONGX100.LoLimit=PLC100_DZ_P_YIGONG_XIAX100;\\本站点\PLC100_P_YIGONGX100.HiLimit=PLC100_DZ_P_YIGONG_SHANGX100;\\本站点\PLC100_T_YIHUIX100.LoLimit=PLC100_DZ_T_YIHUI_XIAX100;\\本站点\PLC100_T_YIHUIX100.HiLimit=PLC100_DZ_T_YIHUI_SHANGX100;\\本站点\PLC100_P_YIHUIX100.LoLimit=PLC100_DZ_P_YIHUI_XIAX100;\\本站点\PLC100_P_YIHUIX100.HiLimit=PLC100_DZ_P_YIHUI_SHANGX100;\\本站点\PLC100_T_YIGONGX100.LimitDead=\\本站点\PLC100_DZ_T_FANHUIX100; \\本站点\PLC100_T_YIHUIX100.LimitDead=\\本站点\PLC100_DZ_T_FANHUIX100; \\本站点\PLC100_P_YIGONGX100.LimitDead=\\本站点\PLC100_DZ_P_FANHUIX100; \\本站点\PLC100_P_YIHUIX100.LimitDead=\\本站点\PLC100_DZ_P_FANHUIX100;报警开关设定PLC100_S_GPRS_DIS.AlarmEnable=PLC100_KG_GPRS;PLC100_S_GONGDIAN_DIS.AlarmEnable=PLC100_KG_GONGDIAN;PLC100_T_YIGONGX100.AlarmEnable=PLC100_KG_T_YIGONG;PLC100_P_YIGONGX100.AlarmEnable=PLC100_KG_P_YIGONG;PLC100_T_YIHUIX100.AlarmEnable=PLC100_KG_T_YIHUI;PLC100_P_YIHUIX100.AlarmEnable=PLC100_KG_P_YIHUI;PLC100_BAOJING2=(PLC100_BJKG & 65528)+(PLC100_BAOJING2&7);SHJ_BJXZHFUZHI_PLC100==1;\\本站点\PLC100_T_YIGONGX100.LoLimit=PLC100_DZ_T_YIGONG_XIAX100;\\本站点\PLC100_T_YIGONGX100.HiLimit=PLC100_DZ_T_YIGONG_SHANGX100;\\本站点\PLC100_P_YIGONGX100.LoLimit=PLC100_DZ_P_YIGONG_XIAX100;\\本站点\PLC100_P_YIGONGX100.HiLimit=PLC100_DZ_P_YIGONG_SHANGX100;\\本站点\PLC100_T_YIHUIX100.LoLimit=PLC100_DZ_T_YIHUI_XIAX100;\\本站点\PLC100_T_YIHUIX100.HiLimit=PLC100_DZ_T_YIHUI_SHANGX100;\\本站点\PLC100_P_YIHUIX100.LoLimit=PLC100_DZ_P_YIHUI_XIAX100;\\本站点\PLC100_P_YIHUIX100.HiLimit=PLC100_DZ_P_YIHUI_SHANGX100;\\本站点\PLC100_T_YIGONGX100.LimitDead=\\本站点\PLC100_DZ_T_FANHUIX100; \\本站点\PLC100_T_YIHUIX100.LimitDead=\\本站点\PLC100_DZ_T_FANHUIX100; \\本站点\PLC100_P_YIGONGX100.LimitDead=\\本站点\PLC100_DZ_P_FANHUIX100; \\本站点\PLC100_P_YIHUIX100.LimitDead=\\本站点\PLC100_DZ_P_FANHUIX100;SHJ_BJXZHFUZHI_PLC100=0;Bit(PLC100_BAOJING2,3)==1PLC100_BJKG=(PLC100_BAOJING2&4088)+(PLC100_BJKG & 7);//0XFF8BitSet(PLC100_BAOJING2,3,0);PLC100_BAOJING2=PLC100_BAOJING2;PLC100_KG_T_YIGONG=Bit(PLC100_BJKG,5);PLC100_KG_P_YIGONG=Bit(PLC100_BJKG,7);PLC100_KG_T_YIHUI=Bit(PLC100_BJKG,9);PLC100_KG_P_YIHUI=Bit(PLC100_BJKG,11);\\本站点\PLC100_T_YIGONGX100.LoLimit=PLC100_DZ_T_YIGONG_XIAX100;\\本站点\PLC100_T_YIGONGX100.HiLimit=PLC100_DZ_T_YIGONG_SHANGX100;\\本站点\PLC100_P_YIGONGX100.LoLimit=PLC100_DZ_P_YIGONG_XIAX100;\\本站点\PLC100_P_YIGONGX100.HiLimit=PLC100_DZ_P_YIGONG_SHANGX100;\\本站点\PLC100_T_YIHUIX100.LoLimit=PLC100_DZ_T_YIHUI_XIAX100;\\本站点\PLC100_T_YIHUIX100.HiLimit=PLC100_DZ_T_YIHUI_SHANGX100;\\本站点\PLC100_P_YIHUIX100.LoLimit=PLC100_DZ_P_YIHUI_XIAX100;\\本站点\PLC100_P_YIHUIX100.HiLimit=PLC100_DZ_P_YIHUI_SHANGX100;\\本站点\SHIJIAN_BJPANDUAN_PLC100==1PLC100_S_BAOJING=((PLC100_T_YIGONGX100.HiStatus||PLC100_T_YIGONGX100.LoStatus)&&PLC100_T_YIGONGX10 0.AlarmEnable)||((PLC100_P_YIGONGX100.HiStatus||PLC100_P_YIGONGX100.LoStatus)&&PLC100_P_YIGONGX 100.AlarmEnable)||((PLC100_T_YIHUIX100.HiStatus||PLC100_T_YIHUIX100.LoStatus)&&PLC100_T_YIHUIX100.Ala rmEnable)||((PLC100_P_YIHUIX100.HiStatus||PLC100_P_YIHUIX100.LoStatus)&&PLC100_P_YIHUIX100.Ala rmEnable)||(PLC100_S_GONGDIAN_DIS.Alarm&&PLC100_S_GONGDIAN_DIS.AlarmEnable)||(PLC100_S_GPRS_DIS.Alarm&&PLC100_S_GPRS_DIS.AlarmEnable);\\本站点\SHIJIAN_BJPANDUAN_PLC100=0;(LIKESHANGCHUAN_PLC100==1) || (SHIJIAN_XGPINLV_PLC100==1)if(LIKESHANGCHUAN_PLC100==1){LIKESHANGCHUAN_PLC100=0;ReadTag("PLC100_T_YIGONGX100", 0);ReadTag("PLC100_T_YIGONGX100", 0);ReadTag("PLC100_P_YIGONGX100", 0);ReadTag("PLC100_T_YIHUIX100", 0);ReadTag("PLC100_P_YIHUIX100", 0);ReadTag("PLC100_FAMENFANKUIX100", 0);ReadTag("PLC100_BAOJING1", 0);ReadTag("PLC100_BAOJING2", 0);ReadTag("PLC100_YUNXINGBIAOZHI", 0); ReadTag("PLC100_DZ_FAMENKAIDUX100", 0); ReadTag("PLC100_DZ_ZUIDAKAIDUX100", 0); ReadTag("PLC100_DZ_ZUIXIAOKAIDUX100", 0); ReadTag("PLC100_DZ_T_YIGONG_XIAX100", 0); ReadTag("PLC100_DZ_T_YIGONG_SHANGX100", 0); ReadTag("PLC100_DZ_P_YIGONG_XIAX100", 0); ReadTag("PLC100_DZ_P_YIGONG_SHANGX100", 0); ReadTag("PLC100_DZ_T_YIHUI_XIAX100", 0); ReadTag("PLC100_DZ_T_YIHUI_SHANGX100", 0); ReadTag("PLC100_DZ_P_YIHUI_XIAX100", 0); ReadTag("PLC100_DZ_P_YIHUI_SHANGX100", 0); ReadTag("PLC100_DZ_T_FANHUIX100", 0); ReadTag("PLC100_DZ_P_FANHUIX100", 0);SampleVar("PLC100_T_YIGONGX100"); SampleVar("PLC100_T_YIGONGX100"); SampleVar("PLC100_P_YIGONGX100"); SampleVar("PLC100_T_YIHUIX100");SampleVar("PLC100_P_YIHUIX100");SampleVar("PLC100_FAMENFANKUIX100"); SampleVar("PLC100_BAOJING1");SampleVar("PLC100_BAOJING2");SampleVar("PLC100_YUNXINGBIAOZHI"); SampleVar("PLC100_DZ_FAMENKAIDUX100"); SampleVar("PLC100_DZ_ZUIDAKAIDUX100"); SampleVar("PLC100_DZ_ZUIXIAOKAIDUX100"); SampleVar("PLC100_DZ_T_YIGONG_XIAX100"); SampleVar("PLC100_DZ_T_YIGONG_SHANGX100"); SampleVar("PLC100_DZ_P_YIGONG_XIAX100"); SampleVar("PLC100_DZ_P_YIGONG_SHANGX100"); SampleVar("PLC100_DZ_T_YIHUI_XIAX100"); SampleVar("PLC100_DZ_T_YIHUI_SHANGX100"); SampleVar("PLC100_DZ_P_YIHUI_XIAX100"); SampleVar("PLC100_DZ_P_YIHUI_SHANGX100"); SampleVar("PLC100_DZ_T_FANHUIX100"); SampleVar("PLC100_DZ_P_FANHUIX100");SampleVarEnd();ReadTag("PLC100_T_YIGONGX100", DZ_CAIJIPINLV); ReadTag("PLC100_T_YIGONGX100", DZ_CAIJIPINLV); ReadTag("PLC100_P_YIGONGX100", DZ_CAIJIPINLV);ReadTag("PLC100_T_YIHUIX100", DZ_CAIJIPINLV);ReadTag("PLC100_P_YIHUIX100", DZ_CAIJIPINLV);ReadTag("PLC100_FAMENFANKUIX100", DZ_CAIJIPINLV); ReadTag("PLC100_BAOJING1", DZ_CAIJIPINLV);ReadTag("PLC100_BAOJING2", DZ_CAIJIPINLV);ReadTag("PLC100_YUNXINGBIAOZHI", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_FAMENKAIDUX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_ZUIDAKAIDUX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_ZUIXIAOKAIDUX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_YIGONG_XIAX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_YIGONG_SHANGX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_YIGONG_XIAX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_YIGONG_SHANGX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_YIHUI_XIAX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_YIHUI_SHANGX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_YIHUI_XIAX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_YIHUI_SHANGX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_FANHUIX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_FANHUIX100", DZ_CAIJIPINLV);}if(SHIJIAN_XGPINLV_PLC100==1){SHIJIAN_XGPINLV_PLC100=0;ReadTag("PLC100_T_YIGONGX100", DZ_CAIJIPINLV); ReadTag("PLC100_T_YIGONGX100", DZ_CAIJIPINLV); ReadTag("PLC100_P_YIGONGX100", DZ_CAIJIPINLV); ReadTag("PLC100_T_YIHUIX100", DZ_CAIJIPINLV);ReadTag("PLC100_P_YIHUIX100", DZ_CAIJIPINLV);ReadTag("PLC100_FAMENFANKUIX100", DZ_CAIJIPINLV); ReadTag("PLC100_BAOJING1", DZ_CAIJIPINLV);ReadTag("PLC100_BAOJING2", DZ_CAIJIPINLV);ReadTag("PLC100_YUNXINGBIAOZHI", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_FAMENKAIDUX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_ZUIDAKAIDUX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_ZUIXIAOKAIDUX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_YIGONG_XIAX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_YIGONG_SHANGX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_YIGONG_XIAX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_YIGONG_SHANGX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_YIHUI_XIAX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_T_YIHUI_SHANGX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_YIHUI_XIAX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_YIHUI_SHANGX100", DZ_CAIJIPINLV);ReadTag("PLC100_DZ_T_FANHUIX100", DZ_CAIJIPINLV); ReadTag("PLC100_DZ_P_FANHUIX100", DZ_CAIJIPINLV);。
组态王使用对设备进行配置方式:一、总体说明:1.对设备进行拨号数据采集,在很大程度上方便了用户进行远程调试、监控和数据采集。
但拨号只适用于简单的标准的232串口通讯设备,对于如232C链路、电流环等特殊232串口设备不支持。
当设备为标准RS485/RS422时,需要先通过标准RS485/232转换模块先转换成232接口再接到modem上。
2.只支持传输数据为10位的MODEM。
3.在使用拨号前,首先使用的初始化指令对进行初始化设置,以保证通过进行正常的数据通讯。
二、MODEM初始化设置:―>主叫MODEM(插在PC上的MODEM)设置如下:AT&F&W0&W1 //恢复出厂设置//ATS0=1 //设置自动应答方式//AT&D0 //MODEM忽略DTR信号//ATS37=9 //设置波特率为9600//AT&K0 //不使用流控AT&Y1 //设置文件1为活动状态//AT&W1 //保存当前设置到文件1中//―>被叫MODEM(插在设备上的MODEM)设置如下:AT&F&W0&W1 //恢复出厂设置//ATS0=1 //设置自动应答方式//AT&D0 //MODEM忽略DTR信号//ATS37=9 //设置波特率为9600//AT&K0 //不使用流控ATQ1 //MODEM不返回结果码AT&Y1 //设置文件1为活动状态//AT&W1 //保存当前设置到文件1中//目前市场上的MODEM初始化指令通常为以上几条,由于不同的MODEM有可能指令含义不同,所以具体命令请参看您所选用的MODEM的指令集。
初始化设置时,以上几条指令一般是通过操作系统提供的超级终端软件进行设置,也可以通过标准COMM串口程序(北京亚控公司可以提供)进行设置。
下面以通过串口程序进行指令初始化为例:1.将其中一个猫接到计算机串口上,并给猫上电;2.在上面串口中,波特率,等通讯配置如图中所示,然后点击<打开串口>按钮,并在<发送数据>框中输入如下图中的命令:3.在上图<发送数据>指令中输入上述一条指令后,用鼠标首先点击<接收>框下面的接收按钮,再点击<发送数据>框的发送按钮,则若指令下发成功,接收框中MODEM会返回 Ok的信息。
组态王KINGVIEW 6X命令语言与函数-常见问题解答北京亚控科技发展有限公司2009年07月目录1. 我希望用户能在不退出组态王运行软件的情况下启动一个其他的软件做其他处理,如何实现? (1)2. 我注意到组态王的命令语言窗口中能够写入的编程命令是有限制的,我的编程命令比较长,命令窗口中无法写下,请问如何解决? (1)3. 请问我在事件命令语言中编程同一时刻处理多项任务,会造成冲突吗? (1)4. 请问组态王能否显示十六进制的数据? (1)5. 请问如何编程来在组态王软件中生成一个随机的数据? (1)6. 请问如何编程能够方便地统计一项工序的运行时间?直接采用组态王的年月日时分秒做运算比较麻烦? (1)7. 能否在组态王画面上做一个按钮,实现键盘ctrl+shift切换输入法的功能?28. 在定义数据改变命令语言和事件命令语言时,能不能使用远程变量来作为触发脚本执行的条件? (2)9. 组态王能否实现在运行时调用一个函数,实现类似键盘的“Print Scr een SysRq”屏幕硬拷贝功能? (2)10. 用VarRefAddress()函数实现普通变量间的引用,引用的变量是否可以读写? (2)1. 我希望用户能在不退出组态王运行软件的情况下启动一个其他的软件做其他处理,如何实现?针对这种需求,组态王软件专门提供了一个StartApp()函数来实现此功能,具体请参照此函数的使用说明。
2. 我注意到组态王的命令语言窗口中能够写入的编程命令是有限制的,我的编程命令比较长,命令窗口中无法写下,请问如何解决?针对这种需求,组态王软件提供了自定义命令语言功能。
用户可以先将你的整个编程命令语言进行划分(比如按子功能块),然后每个子功能块都单独的在自定义命令语言中编写,最后在你要用到的命令语言窗口中象调用组态王提供的函数一样调用你自定义的函数来实现功能即可。
3. 请问我在事件命令语言中编程同一时刻处理多项任务,会造成冲突吗?同一时刻处理多项任务,会造成计算机软件在某一时刻负担过重,从而导致系统繁忙无法及时响应用户的操作。
组态王
Name:表示变量的名称,字符型,只读。
Comment:表示变量的描述内容,字符型,可读可写。
质量戳相关域:变量的质量戳表示变量的数据质量好坏。
质量戳相关域包括:
Quality:表示变量质量戳的值,整型,只读。
QualityString:表示变量质量戳字符串,字符串型,只读
时间戳相关域:变量的时间戳表示变量数据的采集时间。
时间戳相关域包括:
TimeYear:表示变量时间戳年的值,整型,只读
TimeMonth:表示变量时间戳月的值,整型,只读
TimeDate:表示变量时间戳日的值,整型,只读
TimeHour:表示变量时间戳小时的值,整型,只读
TimeMinture:表示变量时间戳分的值,整型,只读
TimeSecond:表示变量时间戳秒的值,整型,只读
TimeMsec:表示变量时间戳毫秒的值,整型,只读
TimeZone:表示变量时间戳时区的值,整型,只读
TimeDateString:表示变量时间戳日期的字符串,字符串型,只读TimeTimeString:表示变量时间戳时间的字符串,字符串型,只读
组态王的变量(除报警窗和历史曲线变量外)均具有以上14种域。
另外,IO整型和IO实型变量还有下面四个域:
MaxEU:最大值,模拟型,可读可写。
MinEU:最小值,模拟型,可读可写。
MaxRAW:表示变量的最大原始值,模拟型,可读可写。
MinRAW:表示变量的最小原始值,模拟型,可读可写。
内存整型,内存实型变量也有MaxEU和MinEU域。
离散变量的报警域包括
Ack 表示变量报警是否被应答,离散型,只读。
Alarm 表示变量是否有报警,离散型,只读。
AlarmEnable 表示变量的报警使能状态,离散型,可读可写
DataChanged 表示变量的变化状态,当变量值变化时,该域置1,用户可以手动
赋值为0,离散型,可读可写。
DataUpDate 表示变量的状态变化,离散型,只读。
默认状态为false。
当从设
备上采集上数据,填充实时库时(不管数据是否变化),该值置
为true,需要手动复位。
Group 表示变量所属的报警组ID,模拟型,可读可写。
Priority 表示变量的报警优先级,模拟型,可读可写。
ExtendFieldString1 表示报警变量的扩展域1,字符串型,可读可写
整型,实型变量除包括上面与离散变量相同的报警域外,还包括以下几种域:HiHiLimit 高高报警限,模拟型,可读可写。
HiHiStatus 高高报警状态,离散型,只读。
HiLimit 高报警限,模拟型,可读可写。
Histatus 高报警状态,离散型,只读。
LoLimit 低报警限,模拟型,可读可写。
LoStatus 低报警状态,离散型,只读。
LoLoLimit 低低报警限,模拟型,可读可写。
LoLoStatus 低低报警状态,离散型,只读。
MajorDevPct 大偏差报警限,模拟型,可读可写。
MajorDevStatus 大偏差报警状态,离散型,只读。
MinorDevPct 小偏差报警限,模拟型,可读可写。
MinorDevStatus 小偏差报警状态,离散型,只读。
DevTarget 偏差报警限的目标值, 模拟型,可读可写。
RocPct 变化率报警限,模拟型,可读可写。
RocStatus 变化率报警状态,离散型,只读
和报警窗相关的域有:
Group:表示报警窗口显示的变量的报警组名,组变量,只写。
Priority:表示报警窗口显示的变量的报警优先级,模拟型,可读可写
历史趋势曲线的域包括:
ChartLength 历史趋势曲线的时间长度,长整型,可读可写,
单位为秒。
ChartStart 历史趋势曲线的起始时间,长整型,可读可写,
单位为秒。
ValueStart 历史趋势曲线的纵轴起始值,模拟型,可读可写。
ValueSIze 历史趋势曲线的纵轴量程,模拟型,可读可写。
ValueEnd 历史趋势曲线的纵轴结束值,模拟型,可读可写。
ScooterPosLeft 左指示器的位置,模拟型,可读可写。
ScooterPosRight 右指示器的位置,模拟型,可读可写。
Pen1到Pen8 历史趋势曲线显示的变量,变量ID号,可读可写,
用于改变绘出曲线所用的变量。