组态王6.55培训文档.doc
Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-date组态王6.55培训文档组态王6.55培训文档培 训 教 材目 录 共 41 页1建立工程12.建立设备43.定义设备变量114.创建组态画面125报表系统176.报警247.趋势曲线288.组态王与Access数据库连接359.组态王驱动更新与查找41-1建立工程组态王工程管理器是用来建立新工程,对添加到工程管理器的工程做统一的管理。工程管理器的主要功能包括:新建、删除工程,对工程重命名,搜索组态王工程,修改工程属性,工程备份、恢复,数据词典的导入导出,切换到组态王开发或运行环境等。假设您已经正确安装了“组态王6.55”的话,可以通过以下方式启动工程管理器:点击“开始”-“程序”-“组态王6.55”-“组态王6.55”(或直接双击桌面上组态王的快捷方式),启动后的工程管理窗口如图1-1 所示:图1-1 工程管理器新建工程:点击“新建”,如图1-2:图1-2点击“下一步”,如图1-3:图1-3点击“打开”,选择路径完成,如图1-4:图1-4点击“下一步”进入“新建工程向导之三”,如图1-5,在“工程名称”处写上要给工程起的名字。 “工程描述”是对工程进详细说明(注释作用),我们的工程名称是“M258四代撬画面”,工程描述是“M258四代撬画面”。图1-5点击“完成”会出现“是否将新建的工程设为组态王当前工程”的提示,如下图1-6:图1-6选择“是”,生成下图1-7 所示:图1-7组态王的当前工程的意义是指直接进开发或运行所指定的工程。点击“开发”就可以进入工程开发界面。2.建立设备工程建立好以后,在上图工程管理器中双击工程进入以下画面:进入后就要在这个工程中进行开发,首先是要建立设备,以和实际的硬件设备进行通讯,识别报文,采集硬件设备上送的信号。在上面的界面的右边找到设备一栏,如图:选择对应的通讯硬件接线方式,进入界面进行相关设置,在遂宁的工程中使用的RTU的虚拟串口方式,首先双击图中的任意一个串口。在出现的对话框中设置通讯参数,设置参数请与现场设备一致。单击如图串口:会在右边出现相应的内容框:点击图中新建,出现以下画面:点击“工程浏览器”里面的“设备”,双击“新建”,弹出“设备配置向导”对话框,本次工程中建立有三个设备,如图2-1:图2-1说明:“设备”下的子项中默认列出的项目表示组态王和外部设备几种常用的通讯方式,如COM1、COM2、DDE、板卡、OPC 服务器、网络站点,其中COM1、COM2 表示组态王支持串口的通讯方式,DDE表示支持通过DDE 数据传输标准进行数据通讯,其他类似。(特别说明:标准的计算机都有两个串口,所以此处作为一种固定显示形式,这种形式并不表示组态王只支持COM1、COM2,也不表示组态王计算机上肯定有两个串口;并且“设备”项下面也不会显示计算机中实际的串口数目,用户通过设备定义向导选择实际设备所连接的PC 串口即可。)在本次设计中选择“莫迪康”的“ModbusRTU”的“COM”项后单击“下一步”弹出对话框,输入设备逻辑名称“施耐德控制柜”,如图2-2:图 2-2点击“下一步”,弹出链接串口对话框,图 2-3为设备选择连接的串口为COM2,单击“下一步”弹出设备地址对话框,图 2-4在连接现场设备时,设备地址处填写的地址要和实际设备地址完全一致。注:组态王对所支持的设备及软件都提供了相应的联机帮助,指导用户进行设备的定义,用户在实际定义相关的设备时点击上图2-4中所显示的”地址帮助”按钮即可获取相关帮助信息。此次填写设备地址为“1”,点击“下一步”,弹出通讯参数对话框,如图2-5所示,图 2-5点击“下一步”,则出现设备信息总结,点击“完成”,则完成一个设备的定义。图 2-6其他设备的定义请参考上述设备的定义方式进行定义。3.定义设备变量定义好设备后,就可进行变量的添加,在“工程浏览器”中选择“数据词典”,在数据词典中进行变量的定义。进入数据词典后,双击“新建”,点击如图中红框选择,进行添加,如图 如建立“流量计温度”这个I/O实数变量,如图3-1:图 3-1在变量名称中写“流量计温度”,变量类型选择“I/O实数”,最小值,最大值,变化灵敏度,初始值等参数由自己的需求进行定义,然后连接设备选择外部连接的设备,在本次设计中选择“卸车流量计”,寄存器选择“40251”,数据类型“FLOAT”,然后其他的就不需要定义,直接点击“确定”,就完成变量的定义,其他变量的定义请参考上述变量定义的方法进行定义。下面是对变量中参数的一些说明:4.创建组态画面在工程浏览器左侧的“工程目录显示区”中选择“画面”选项,在右侧视图中双击“新建”图标,弹出新建画面对话框,如下图 所示:点击新建,会出现如图的属性框:图 4-1在本次工程中,主画面采用的是加载进入点位图的形式,单击工具箱中的“点位图”,在画面上画出一个矩形框,然后右击点位图,选择“从文件中加载”,选择需要加载进入的图片,如图4-2:图 4-2加载后主画面就建立完整,然后双击画面,进行画面动画连接,如图4-3:图 4-3在命令语言连接中,选择弹起时,进入命令语言编辑框,如图4-4所示:图 4-4在命令语言中输入如图4-4的脚本,即在运行时进行用户登录,然后展示画面“总流程画面”,“报表数据”,关闭“报表数据”。针对其他的脚本,可以参考组态王中命令语言说明,即可以编写简单脚本进行简单的控制。下面就本次工程中的总流程画面进行说明画面开发:图4-5 总画面流程图总流程画面如图4-5所示,下面主要说明管道流动、按钮动画连接。选择工具箱中的“立体管道”,在画面上画好需要连接的管道,然后管道属性双击管道进行定义,按照自己的需要进行定义管道的大小,以及颜色等参数,然后在画面上双击管道弹出动画连接对话框,在对话框中单击“流动”,弹出管道流动连接设置对话框,如图4-6所示:图 4-6在流动条件中设置需要定义的流动条件,本次设计中流动条件为“本站点电磁阀PV4控制&&本站点变频器启停控制&&本站点加气机正在加气状态”,单击“确定”按钮完成动画连接的设置。按钮的设置,如按钮“参数设置”,“趋势曲线”等,即在工具箱中选择单击按钮,然后在画面上画出一下矩形按钮,按钮的属性设置用鼠标右击按钮,可以进行按钮的风格等设置,选择“字符串替换”,即可以设置按钮的显示字符属性,如图4-7所示:图 4-7定义按钮的动画连接,双击按钮,进入动画连接对话框,然后现则命令语言连接中的“弹起时”,出现命令语言对话框,如图4-8所示:图 4-8在命令语言对话框中输入命令语言“ShowPicture("参数设置1");”,单击完成,则完成该按钮的动画连接,其他的按钮可参考此按钮进行定义和设置。对于主流程画面上的指示灯的动画连接设置,下面进行一个简要的说明:如“通信状态”,在图库中选择一个指示灯添加到画面上,然后双击指示灯进入动画连接界面,选择“填充属性”,如图4-9所示:图 4-9在填充属性连接中,表达式中关联定义好的离散变量“通信状态”,即完成通信状态指示灯的动画连接,其他的“卸车模式”,“加气模式”等指示灯的设置可参考通信状态指示灯的设置方法进行设置。变量值输出的设置方法,下面就“汞预冷”这个参数的设置进行讲解。在工具箱中选择“文本”,然后在画面上输入文本,在本次工程中开发中输入“0000”,文本字体颜色设置可以选择工具箱中的“字体”进行设置,然后文本的动画连接则双击文本,进入文本动画连接界面,然后选择“模拟量输出”,进入模拟量动画连接对话框,如图4-10所示,选择连接的变量,即完成模拟量输出连接设定。图 4-10其他的变量连接可参考上述方法进行设置。5报表系统在本次设计中创建报表画面“报表数据”,选择工具箱中的工具,在画面上绘制一报表窗口,如图5-1 所示:图 5-1在本次设计中建立的报表数据画面如图5-2所示,下面就该画面的做一个详细的讲解。图 5-2(1)报表属性设置:双击窗口的灰色部分,弹出“报表设计”对话框,如图5-3:图 5-3在报表设计对话框中输入报表控件名,选择表格尺寸,表格样式可以自定义,然后选择,这里不采用表格样式。(2)输入静态文字:选中B1单元格,在单元格中输入:日期,即完成静态文字的输入,利用同样的方法输入其他静态文字。(3)插入动态变量:合并C1和D1单元格,并在合并的单元格中输入:=本站点$日期。(变量的输入可以利用“报表工具箱”中的“插入变量”按钮实现),利用同样的办法输入其他的动态变量,这样就完成了报表窗口的建立。(4)报表保存:在画面“工具箱”中选择按钮,建立按钮“报表工具箱”,然后在该按钮的动画连接中写入按下时命令语言:本站点报表名=StrTrim( 本站点$日期+"日报表",3);string RepN1;string RepN2;RepN1="D:日报表"+本站点报表名+".rtl" ReportSaveAs("日报表",RepN1); RepN2="D:日报表"+本站点报表名+".xls" ReportSaveAs("日报表",RepN2);即完成报表保存的设置。(5)报表刷新:同“报表保存”按钮一样建立好按钮,然后在动画连接中,写入命令语言:long starttime;starttime=HTConvertTime($年,$月,本站点$日,0,0,0);ReportSetHistData("日报表", "本站点贮槽压力显示", starttime, 1800, "b3:b51");ReportSetHistData("日报表", "本站点泵进口压力显示", starttime, 1800, "c3:c51");ReportSetHistData("日报表", "本站点泵出口压力显示", starttime, 1800, "d3:d51");ReportSetHistData("日报表", "本站点贮槽液位显示", starttime, 1800, "e3:e51");ReportSetHistData("日报表", "本站点贮罐出口温度显示", starttime, 1800, "f3:f51");ReportSetHistData("日报表", "本站点泵池溢流口温度显示", starttime, 1800, "g3:g51");ReportSetHistData("日报表", "本站点仪表风压力", starttime, 1800, "h3:h51");即完成报表刷新。(6)日报表目录列表:选择画面“工具箱”中“插入控件”中的“窗口控制”里面的“简单组合框”,然后拉出需要大小的简单组合框,双击组合框,弹出组合框属性设置窗口,进行相应的设置,如图5-4所示:图 5-4(7)报表查询:在“报表查询”按钮的弹起事件中输入如下命令语言,如图5-5所示:图5-5命令语言如下所示:string eileName;本站点报表名2=本站点报表框1;eileName="D:日报表"+本站点报表框1;ReportLoad("日报表",eileName);本站点日期4=StrMid(本站点报表名2,1,4);本站点日期5=StrMid(本站点报表名2,6,2);本站点日期6=StrMid(本站点报表名2,9,2);本站点日期1=StrToInt(本站点日期4 );本站点日期2=StrToInt(本站点日期5 );本站点日期3=StrToInt(本站点日期6);long starttime;starttime=HTConvertTime(本站点日期1,本站点日期2,本站点日期3,0,0,0);ReportSetHistData("日报表", "本站点贮槽压力显示", starttime, 1800, "b3:b51");ReportSetHistData("日报表", "本站点泵进口压力显示", starttime, 1800, "c3:c51");ReportSetHistData("日报表", "本站点泵出口压力显示", starttime, 1800, "d3:d51");ReportSetHistData("日报表", "本站点贮槽液位显示", starttime, 1800, "e3:e51");ReportSetHistData("日报表", "本站点贮罐出口温度显示", starttime, 1800, "f3:f51");ReportSetHistData("日报表", "本站点泵池溢流口温度显示", starttime, 1800, "g3:g51");ReportSetHistData("日报表", "本站点仪表风压力", starttime, 1800, "h3:h51");上述命令语言的作用是将简单式组合复选框中选中的报表文件的数据显示在“日报表”报表窗口中。(8)删除报表:在按钮“删除报表”的弹起事件中输入如下命令语言,如图5-6所示:图 5-6命令语言如下所示:string FileName;FileName="D:日报表"+"日报表"+"*.rtl"FileDelete( Filename );string FileName1;FileName1="D:日报表"+"日报表"+"*.rtl"listClear("报表框");ListLoadFileName( "报表框", FileName1 );(9)页面设置:在按钮“页面设置”的弹起事件中输入如下命令语言,如图5-7所示:图 5-7当系统处于运行状态时,单击此按钮,弹出“页面设置”对话框,如图5-8所示:图 5-8在“页面设置”对话框中对报表的页面属性做相应设置后,单击“确定”按钮,完成报表的页面设置。(10)报表打印:在“报表打印”按钮的弹起事件中输入如下的命令语言,如图5-9所示:图 5-9当系统处于运行状态时,单击此按钮,弹出“打印属性”对话框,如图5-10所示:图 5-10在“打印属性”对话框中做相应的设置后,单击“确定”按钮,数据报表将被打印出来。(11)打印预览:在“打印预览”按钮的弹起事件中输入如下命令语言,如图5-11所示:图 5-11当处于运行状态时,页面设置完毕后,单击此按钮,系统会自动隐藏组态王的开发系统和运行系统的窗口,并进入打印预览窗口。6.报警(1)设置变量的报警属性:在数据词典中选择需要报警的变量,双击此变量,在弹出的“定义变量”对话框中单击“报警定义”选项卡,如图6-1所示:图 6-1参照此设置方法可以设置完其他变量的报警属性。(2)建立报警窗口:报警窗口是用来显示“组态王”系统中发生的报警和事件信息,报警窗口分:实时报警窗报口和历史报警窗口。实时报警窗口主要显示当前系统中发生的实时报警信息和报警确认信息,一旦报警恢复后将从窗口中消失。历史报警窗口中显示系统发生的所有报警和事件信息,主要用于对报警和事件信息进行查询。本工程中创立的报警窗口如图6-2所示:图6-2双击报警窗口,可以进行报警窗口属性设置,如图6-3所示:图6-3在报警窗口配置属性页可以根据需要对列属性,操作属性,条件属性,颜色和字体属性进行设置。列属性页:报警窗口中的“列属性页”对话框,如图6-4所示:图 6-4在此属性页中您可以设置报警窗口中显示得内容,包括:报警如期时间显示与否,报警变量名称显示与否、报警限值显示与否、报警类型显示与否等。操作属性页:报警窗口中的“操作属性页”对话框,如图6-5所示:图 6-5在此属性页中您可以对操作者的操作权限进行设置。单击“安全区”按钮,在弹出的“选择安全区”对话框中选择报警窗口所在的安全区,只有登陆用户的安全区包含报警窗口的操作安全区时,才可执行如下设置的操作,如:双击左键操作、工具条的操作和报警确认的操作;条件属性页:报警窗口中的“条件属性页”对话框,如图6-6所示:图 6-6在此属性页中您可以设置哪些类型的报警或事件发生时才在此报警窗口中显示,并设置其优先级和报警组。颜色和字体属性:报警窗口中的“颜色和字体属性页”对话框,如图6-7所示:图6-7在此属性页中您可以设置报警窗口的各种颜色以及信息的显示颜色;报警窗口的上述属性可由用户根据实际情况进行设置。7.趋势曲线本次设计中有很多曲线,比如:压力曲线,温控曲线,历史曲线,下面就历史曲线进行介绍。组态王的历史趋势曲线以 Active X 控件形式提供的取组态王数据库中的数据绘制历史曲线和取ODBC数据库中的数据绘制曲线的工具。通过该控件,不但可以实现历史曲线的绘制,还可以实现ODBC 数据库中数据记录的曲线绘制,而且在运行状态下,可以实现在线动态增加/删除/隐藏曲线、曲线图表的无级缩放、曲线的动态比较、曲线的打印等。该曲线控件最多可以绘制16条曲线。(1)设置变量的记录属性:在工程浏览窗口左侧的“工程目录显示区”中选择“数据库”中的“数据词典”选项,在“数据词典”中选择需要进行历史曲线记录的变量,双击此变量,在弹出的“定义变量”对话框中单击“记录和安全区”属性页,如图7-1 所示:图 7-1(2)定义历史数据文件的存储目录在工程浏览器窗口左侧的“工程目录显示区”中双击“系统配置”中的“历史数据记录”选项,弹出“历史记录配置”对话框,如图7-2 所示:图 7-2图 7-3设置完毕后,单击“确定”按钮关闭对话框。当系统进入运行环境时“历史记录服务器”自动启动,将变量的历史数据以文件的形式存储到当前工程路径下。每个文件中保存了变量8 小时的历史数据,这些文件将在当前工程路径下保存30 天。(3)创建历史趋势曲线控件:选择工具箱中的 工具,在画面中插入通用控件窗口中的“历史趋势曲线” 控件,如图7-4 所示:图 7-4右击控件,选择“控件属性”,弹出控件属性框,如图7-5所示:图 7-6历史趋势曲线属性窗口分为五个属性页:曲线属性页、坐标系属性页、预置打印选项属性页、报警区域选项属性页、游标配置选项属性页。曲线属性页:在此属性页中您可以利用“增加”按钮添加历史曲线变量,并设置曲线的采样间隔(即:在历史曲线窗口中绘制一个点的时间间隔)。图7-7坐标系属性页:历史曲线控件中的“坐标系属性页”对话框,如图7-8所示:图 7-8在此属性页中您可以设置历史曲线控件的显示风格如:历史曲线控件背景颜色、坐标轴的显示风格、数据轴、时间轴的显示格式等等。在“数据轴” 中如果“按百分比显示”被选中后历史曲线变量将按照百分比的格式显示,否则按照实际数值显示历史曲线变量。预置打印选项属性页:历史曲线控件中的“预置打印选项属性页”对话框,如图7-9 所示:图 7-9在此属性页中您可以设置历史曲线控件的打印格式及打印的背景颜色。报警区域选项属性页:历史曲线控件中的“报警区域选项属性页”对话框,如图7-10 所示:图 7-10在此属性页中您可以设置历史曲线窗口中报警区域显示的颜色,包括:高高限报警区的颜色、高限报警区的颜色、低限报警区的颜色和低低限报警区的颜色及各报警区颜色显示的范围。通过报警区颜色的设置使您对变量的报警情况一目了然。游标配置选项属性页:历史曲线控件中的“游标配置选项属性页”对话框,如图7-11所示:图 7-11在此属性页中您可以设置历史曲线窗口左右游标在显示数值时的显示风格及显示的附加信息,附加信息的设置不仅可以在编辑框中输入静态信息还可使用ODBC 从任何第三方数据库中得到动态的附加信息。上述属性可由用户根据实际情况进行设置。8.组态王与Access数据库连接(1)创建数据源及数据库首先外建一个数据库,这里我们选用 Access 数据库(路径:d:peixun,数据库名为:mydb.mdb)。然后,用Windows 控制面板中自带的ODBC Data Sources (32bit)管理工具新建一个Microsoft Access Driver(*.mdb)驱动的数据源,名为:mine,然后配置该数据源,指向刚才建立的Access 数据库(即mydb.mdb),如图8-1 所示:图 8-1(2)创建表格模版在工程浏览器窗口左侧“工程目录显示区”中选择“SQL 访问管理器”中的“表格模板”选项,在右侧“目录内容显示区”中双击“新建”图标弹出创建表格模板对话框,在对话框中建立三个字段,如图8-2 所示:图 8-3单击“确认”按钮完成表格模板的创建。建立表格模板的目的是定义数据库格式,在后面用到 SQLCreatTable()函数时以此格式在Access 数据库中自动建立表格。(3)创建记录体在工程浏览器窗口左侧“工程目录显示区”中选择“SQL 访问管理器”中的“记录体”选项,在右侧“目录内容显示区”中双击“新建”图标弹出创建记录体对话框,对话框设置如图8-4 所示:图 8-4记录体中定义了 Access 数据库表格字段与组态王变量之间的对应关系,对应关系如下所示:即:将组态王中本站点$日期变量值写到Access 数据库表格日期字段中;将本站点$时间变量值写到Access 数据库表格时间字段中;将本站点原料油液位值写到Access 数据库表格原料油液位值字段中;单击“确认”按钮完成记录体的创建。注:记录体中的字段名称必须与表格模板中的字段名称保持一致,记录体中字段对应的变量数据类型必须和表格模板中相同字段对应的数据类型相同。(4)连接数据库在工程浏览器窗口的数据词典中定义一个内存整型变量:变量名:DeviceID,变量类型:内存整型;新建一画面,名称为:数据库操作画面;选择工具箱中的工具,在画面上输入文字:数据库操作;在画面中添加一按钮,按钮文本为:数据库连接;在按钮的弹起事件中输入如下命令语言,如图8-5 所示:图 8-5上述命令语言的作用是使组态王与 mine 数据源建立了连接(即与mydb.mdb 数据库建立了连接)。在实际工程中将此命令写入:工程浏览器命令语言应用程序命令语言启动时中,即系统开始运行就连接到数据库上。(5)创建数据库表格在数据库操作画面中添加一按钮,按钮文本为:创建数据库表格。在按钮的弹起事件中输入如下命令语言,如图8-6所示:图 8-6上述命令语言的作用是以表格模板“Table1”的格式在数据库中建立名为“KingTable”的表格。在生成的KingTable 表格中,将生成三个字段,字段名称分别为:日期,时间,原料油液位值,每个字段的变量类型、变量长度及索引类型与表格模板“Table1”中的定义一致。此命令语言只需执行一次即可,如果表格摸板有改动,需要用户先将数据库中的表格删除才能重新创建。在实际工程中将此命令写入:工程浏览器命令语言应用程序命令语言启动时中,即系统开始运行就建立数据库表格。(6)插入记录在数据库操作画面中添加一按钮,按钮文本为:插入记录。在按钮的弹起事件中输入如下命令语言,如图8-7 所示:图 8-7上述命令语言的作用是在表格 KingTable 中插入一个新的记录。按下此按钮后,组态王会将bind1 中关联的组态王变量的当前值插入到Access 数据库表格“KingTable”中,从而生成一条记录,从而达到了将组态王数据写到外部数据库中的目的。(7)查询记录用户如果需要将数据库中的数据调入组态王来显示,需要另外建立一个记录体,此记录体的字段名称要和数据库表格中的字段名称一致,连接的变量与数据库中字段的类型一致,操作过程如下:1、在工程浏览器窗口的数据词典中定义三个内存变量:a、变量名:记录日期变量类型:内存字符串初始值:空b、变量名:记录时间变量类型:内存字符串初始值:空c、变量名:原料油液位返回值变量类型:内存实型初始值:02、新建一画面,名称为:数据库查询画面。3、选择工具箱中的工具,在画面上输入文字:数据库查询。4、在画面上添加三个文本框,在文本框的“字符串输出”、“模拟量值输出”动画中分别连接变量本站点记录日期、本站点记录时间、本站点原料油液位返回值,用来显示查询出来的结果。5、在工程浏览窗口中定义一个记录体,记录体窗口属性设置如图8-8 所示:图 8-8 记录体属性设置对话框6、在画面中添加一按钮,按钮文本为:得到选择集7、在按钮的弹起事件中输入如下命令语言,如图8-9 所示:图 8-9此命令语言的作用是:以记录体 Bind2 中定义的格式返回KingTable 表格中第一条数据记录。8、单击“文件”菜单中的“全部存”命令,保存您所作的设置。9、单击“文件”菜单中的“切换到VIEW”命令,进入运行系统。运行此画面,单击“得到选择集”按钮数据库中的数据记录显示在文本框中,如图8-10所示:图 8-10数据库记录查询10、在画面上添加四个按钮,按钮属性设置如下:a、按钮文本:第一条记录“弹起时”动画连接:SQLFirst( DeviceID );b、按钮文本:下一条记录“弹起时”动画连接:SQLNext( DeviceID );c、按钮文本:上一条记录“弹起时”动画连接:SQLPrev( DeviceID );d、按钮文本:最后一条记录“弹起时”动画连接:SQLLast( DeviceID );上述命令语言的作用分别为查询数据中第一条记录、下一条记录、上一条记录和最后一条记录从而达到了数据查询的目的。(8)断开连接1、在“数据库操作画面”中添加一按钮,按钮文本为:断开数据库连接。2、在按钮的弹起事件中输入如下命令语言,如图8-11所示:图8-11 断开数据库连接命令语言在实际工程中将此命令写入:工程浏览器命令语言应用程序命令语言退出时中,即系统退出后断开与数据库的连接。9.组态王驱动更新与查找在开始菜单找到组态王选择其中的工具里的驱动安装工具,如图:点击后进入界面:点击选择驱动文件,选择对应的驱动加载后会出现如下图:装好之后在设备定义中的驱动列表就可以找到已经装好的驱动,特别注意的是驱动在列表中的路径由上图特别注意的地方来识别。