组态王指令说明
组态王命令语言函数手册
组态王命令语言函数手册工业自动化通用组态软件组态王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)。
组态王6.53命令语言函数速查手册
chartAdd .......................................................................................................................7 chartClear ...................................................................................................................8 chartSetBarColor .......................................................................................................8 chartSetValue .............................................................................................................9 ClosePicture .............................................................................................................10 ConfigODBC .................................................................................................................10 Cos ...............................................................................................................................11 Date .............................................................................................................................11 DisplayMCI .................................................................................................................11 Dtext ...........................................................................................................................12 EditUsers ...................................................................................................................13 EnableNavigate .........................................................................................................13 EnableSaveTagValueToIniValueWhenValueChange................................................13 Exit .............................................................................................................................14
组态王命令语言.
6、动画连接命令语言
当鼠标在该按钮上按下时执行一次。 当鼠标在该按钮上 弹起时执行一次。
当鼠标在该按钮上按住,没有弹 起时周期性执行该段命令语言。
举例:通过Exit()函数来实现退出组态王运行系统。
1、选择工具箱中的工具,在画此面函上数使画组一态个王运按行钮环,境退选出中。按钮并 单击鼠标右键,在弹出的下调拉用菜形单式:中E执xit行(O“ptio字n);符串替换” 命令,设置按钮文本为:系统退出参。数:
报警
闪烁:\\本站点\原料油液位1>90||\\本站点\原料油液位1<10 隐含:\\本站点\原料油液位1>10&&\\本站点\原料油液位1<90
仪表 水平滑动杆
运行系统程序退出时执行一次触发条件在运行系统程序启动时执行一次周期性的执行这段命令语言程序周期性的执行这段命令语言程序无论打开画面与否关键字选择命令语言编辑区函数选择运算符输入变量选择热键命令语言链接到工程人员指定的热键上热键命令语言链接到工程人员指定的热键上软件运行期间行期间工程人员随时按下键盘上相应的热键都可以启动这段命令语言程序
}
else
{ \\本站点\控制水流2=1; \\本站点\成品油液位1=\\本站点\
成品油液位1-1;}
if(\\本站点\原料油液位1==0) {\\本站点\原料油液位1=100;}
if(\\本站点\催化剂液位1==0) {\\本站点\催化剂液位1=100;}
if(\\本站点\成品油液位1==100) {\\本站点\成品油液位1=0;}
if(menuindex==0) {ShowPicture("报警和事件画面");} if(menuindex==1&&childmenuindex==0) {ShowPicture("实时趋势曲线画面");} if(menuindex==1&&childmenuindex==1) {ShowPicture("历史趋势曲线画面");}
组态王课件4命令语言
报警管理
组态王具备完善的报警 功能,能够及时发现设 备异常并通知相关人员
处理。
组态王的应用领域
能源管理
组态王在能源管理领域的应用 主要涉及电力、石油、化工等 行业的能源数据监控和分析。
制造业
在制造业中,组态王主要用于 生产线的自动化控制、工艺流 程的监控和管理等方面。
环保监测
组态王在环保监测领域的应用 主要包括对空气质量、水质等 环境因素的实时监测和数据分 析。
该案例介绍了如何使用组态王命令语言编写电机控制系统的程序,实现电机的 启动、停止、调速等控制功能,同时实时监测电机的运行状态和故障信息。
案例四:组态王与其他软件的集成应用
总结词
探讨组态王命令语言与其他软件的接口技术,实现数据共享和系统集成。
详细描述
该案例研究了如何通过组态王与其他软件的接口技术,实现数据共享、系统集成 和远程控制等功能,提高自动化系统的整体性能和稳定性。
变量使用
在程序中,可以通过变量 来存储和传递数据,实现 各种控制逻辑和数据处理 功能。
03
常用命令语言函数
数据处理函数
数据转换函数
用于在不同数据类型之间进行转换,如整数 转浮点数、字符串转日期等。
字符串处理函数
用于字符串的拼接、截取、替换、查找等操 作。
数学运算函数
提供基本的数学运算功能,如加、减、乘、 除、平方、开方等。
交通控制
组态王在交通控制领域的应用 主要涉及城市交通信号灯的控 制、高速公路收费站的监控等
方面。
02
命令语言基础
命令语言概述
命令语言定义
命令语言是一种编程语言,用于 编写自动化脚本和控制程序。在 组态王中,命令语言用于实现各
组态王使用说明
皖西学院监控组态软件实验指导书机械与电子工程学院电气工程教研室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. 请问我在事件命令语言中编程同一时刻处理多项任务,会造成冲突吗?同一时刻处理多项任务,会造成计算机软件在某一时刻负担过重,从而导致系统繁忙无法及时响应用户的操作。
组态王常用的命令语言函数
SQLConnect连接组态王和数据库。
语法:[ResultCode=]SQLConnect(ConnectionID, “ConnectString”;参数描述ConnectionID SQLConnct(产生的连接号ConnectString 连接语句ConnectString格式如下:“DSN=data source name [;attribute= value[;attribute = value]…”例子:组态王以sa身份登录(无密码和名为wang的SQL Server中的pubs数据库连接[ResultCode=]SQLConnect(ConnectionID,“DSN=wang;DA TABASE=pubs;UID=sa; PWD=”属性描述:SQLCreateTable以表格模板中定义的表格类型,在数据库中创建新表。
语法:[ResultCode=]SQLCreateTable(ConnectionID,TableName,TemplateName;参数描述ConnectionID SQLConnct(产生的连接号TableName 想要创建的数据库名TemplateName 表格模板名例子:下例创建一个名为kingview的新表,模板为table1SQLCreateTable(ConnectionID, “kingview”, “table1”SQLSelect访问数据库,得到一个特定的选择集。
选择集中的记录可以由SQLFirst(, SQLNext(, 等函数访问。
语法:[ResultCode=]SQLSelect(ConnectionID, TableName, BindList, WhereExpr, OrderByExpr;参数描述ConnectionID SQLConnct(产生的连接号TableName 表格名称BindList 记录体WhereExpression 指定函数起作用行的条件注意:如果列名是字符串,表达式必须在单引号中。
组态王KingView6.52操作说明
组态王KingView6.52与S7-200系列PLC联机操作说明一、组态王在PLC控制系统中的作用在PLC控制系统中,使用组态王软件主要是用它来构造(设计)一个虚拟的(假的)系统,且该虚拟的系统能反映实际的PLC控制系统的工作情况,以便在监控室通过组态软件也可实现对系统的远程控制,同时也可实时监控系统的运行状况,从而能及时发现并排除故障。
二、用组态王构造一个虚拟的控制系统的必备条件由于组态王所构造的虚拟系统能反映实际的PLC控制系统的工作情况,故该虚拟系统必须具备四个基本条件:(1)模拟PLC的虚拟的PLC,即I/O设备;(2)用以描述工业现场及工控设备(如三机异步电动机启停控制系统中的电动机,照明监控系统中的灯)的图形;(3)反映工控对象各种属性(如:三机异步电动机启停控制系统中的电动机运转与停止的运行状态,启动按钮的开与关的状态;照明监控系统中的灯的亮与灭的状态)的数据,亦即变量;(4)模拟现场设备运行(如:电动机的运转与停止的动作过程,按钮的开与关的动作过程,灯的亮与灭的动作过程)动画,即图形应如何与数据连接,亦即动画连接。
三、组态王实现的DDC远程监控系统1、控制要求控制一盏灯的亮与灭:系统有两个按钮,分别用以控制一盏灯的亮与灭,该系统有两种控制方法:1)通过现场的实际按钮控制;2)通过组态王构造的虚拟系统的虚拟按钮控制。
2、参考《楼宇智能化实训指导》P101把按钮、灯等硬件通过接触器、继电器等接至DDC假设该系统的DDC I/O分配表如下表所示:3、用组态王KingView6.52构造一个虚拟的DDC监控系统(1)新建组态王工程,开始->程序->“组态王”,如图1所示。
图1 打开组态王软件打开后,看到如图2所示界面,点击“新建”。
单击图2 组态王工程管理器图3 新建工程向导选择工程存放路径E:\电力815\DDC第1组图4 选择工程存放路径如:控制一盏灯图5 填写工程名称在组态王工程管理器中双击刚建好的新工程,把它设置为当前工程,设为当前工程后,在工程的最前端会显示一面小红旗,如图6所示。
精心整理组态王常用命令语言函数速查手册讲解
组态王命令语言函数手册“组态王”支持使用内建的复杂函数,其中包括字符串函数、数学函数、系统函数、控件函数、报表函数及其他函数,下面依次介绍各个函数(函数名不区分大小写,按字母排序):Abs此函数用于计算变量值的绝对值,使用格式如下: Abs(变量名或数值); 返回值:整值或实型值;例如: Abs(14); 返回值为14 Abs(-7.5); 返回值为7.5Abs(距离); 返回内存模拟变量“距离”的绝对值。
Ack对变量进行报警确认,或对报警组进行报警确认。
如果函数参数为变量名称,则只对该变量进行报警确认;如果函数参数为报警组名称,则确认所有属于该报警组及其子报警组的变量。
该函数的参数只能是变量名或报警组名,不可以为字符串变量。
此函数常用于按钮命令语言,当发生报警时,用此函数进行报警确认,它将产生确认报警事件。
调用格式: Ack(报警组名);或 Ack(变量名);例如: Ack(全厂);或 Ack(反应罐液位);ActivateApp activate['æktɪveɪt] vt.刺激;使活动;使活泼;使产生放射性app [æp]n.应用程序此函数用于激活正在运行的窗口应用程序,使之变为当前窗口。
获得输入焦点。
该函数也可配合函数SendKeys的使用。
调用形式: ActivateApp(“ExeName”);参数:ExeName 应用程序的执行文件名例如:激活Microsoft Word的正确调用为: ActivateApp("Word.exe");ArcCos arc[ɑːk] adj. 圆弧的;反三角函数的此函数用于计算变量值的反余弦值, 变量值的取值范围在[-1,1]之间,否则函数返回值无效。
调用格式: ArcCos(变量名或数值); 返回值:整值或实型值;例如:ArcCos(1); 此函数返回值为0 ArcCos(temp); 此函数返回变量“temp”的反余弦值。
组态王使用说明
皖西学院监控组态软件实验指导书机械与电子工程学院电气工程教研室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”。
组态王命令语言程序
命令语言程序10.1 命令语言类型组态王中命令语言是一种在语法上类似C语言的程序,工程人员可以利用这些程序来增强应用程序的灵活性、处理一些算法和操作等。
命令语言都是靠事件触发执行的,如定时、数据的变化、键盘键的按下、鼠标的点击等。
根据事件和功能的不同,包括应用程序命令语言、热键命令语言、事件命令语言、数据改变命令语言、自定义函数命令语言、动画连接命令语言和画面命令语言等。
具有完备的词法语法查错功能和丰富的运算符、数学函数、字符串函数、控件函数、SQL函数和系统函数。
各种命令语言通过“命令语言编辑器”编辑输入,在“组态王”运行系统中被编译执行。
其中应用程序命令语言、热键命令语言、事件命令语言、数据改变命令语言可以称为“后台命令语言”,它们的执行不受画面打开与否的限制,只要符合条件就可以执行。
另外可以使用运行系统中的菜单“特殊/开始执行后台任务”和“特殊/停止执行后台任务”来控制所有这些命令语言是否执行。
而画面和动画连接命令语言的执行不受影响。
也可以通过修改系统变量“$启动后台命令语言”的值来实现上述控制,该值置0时停止执行,置1时开始执行。
10.1.1 应用程序命令语言在工程浏览器的目录显示区,选择“文件\命令语言\应用程序命令语言”,则在右边的内容显示区出现“请双击这儿进入<应用程序命令语言>对话框…”图标,如图10.1所示:图 10.1 选择应用程序命令语言双击图标,则弹出“应用程序命令语言”对话框,如图10.2所示:图 10.2 应用程序命令语言菜单条工具栏关键字选择命令语言编辑区变量选择函数选择运算符输入触发条件10.1.1.1 认识命令语言编辑器命令语言编辑器是组态王提供的用于输入、编辑命令语言程序的地方。
编辑器的组成部分如图10.2所示。
所有命令语言编辑器的大致界面和主要部分及功能都相同,唯一不同的是,按照触发条件的不同,在界面上“触发条件”部分会有所不同。
编辑器各部分的大致功能为:◆菜单条:提供给编辑器的操作菜单,“文件”菜单下有两个菜单项:确认和取消。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
组态王
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号,可读可写,
用于改变绘出曲线所用的变量。