




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
我们毕业啦其实是答辩的标题地方组态软件及应用技术15.1动态数据交换的概念第15章
组态王与其它应用程序的动态数据交换(DDE)15.2组态王与Excel间的数据交换15.3组态王与VB间的数据交换15.4如何重新建立DDE连接15.1动态数据交换的概念DDE(DynamicDataExchange:动态数据交换)是WINDOWS平台上的一个完整的通信协议,它使支持动态数据交换的两个或多个应用程序能彼此交换数据和发送指令。DDE始终发生在客户应用程序和服务器应用程序之间。DDE过程可以比喻为两个人的对话,一方向另一方提出问题,然后等待回答。提问的一方称为“顾客”(Client),回答的一方称为“服务器”(Server)。一个应用程序可以同时是“顾客”和“服务器”:当它向其他程序中请求数据时,它充当的是“顾客”;若有其他程序需要它提供数据,它又成了“服务器”。
应用程序名主题项目规定例子规定例子规定例子组态王VIEW
tagname
工程人员自己定义温度ExcelExcel
电子表格名sheet1单元r2c2VB执行文件名vbdde窗体的LinkTopic属性Form1控件的名称Text表15-1客户程序填写服务器程序的标识名DDE对话的内容是通过三个标识名来约定的:应用程序名(application):进行DDE对话的双方的名称。商业应用程序的名称在产品文档中给出。“组态王”运行系统的程序名是“VIEW”;MicrosoftExcel的应用程序名是“Excel”;VisualBasic程序使用的是可执行文件的名称。
主题(topic):被讨论的数据域(domain)。对“组态王”来说,主题规定为“tagname”;Excel的主题名是电子表格的名称,比如sheet1、sheet2……;VisualBasic程序的主题由窗体(Form)的LinkTopic属性值指定。
项目(item):这是被讨论的特定数据对象。在“组态王”的数据词典里,工程人员定义I/O变量的同时,也定义项目名称(参见2.3定义外部设备和数据变量)。Excel里的项目是单元,比如r1c2(r1c2表示第一行、第二列的单元)。对VisualBasic程序而言,项目是一个特定的文本框、标签或图片框的名称。建立DDE之前,客户程序必须填写服务器程序的三个标识名。为方便使用,列表如表15-1所示。15.2组态王与Excel间的数据交换图15-1组态王访问Excel的数据流向为了建立DDE连接,需要在“组态王”的数据词典里新建一个I/O变量,并且登记服务器程序的三个标识名。当Excel作为“顾客”向“组态王”请求数据时,要在Excel单元中输入远程引用公式:=VIEW|TAGNAME!设备名.寄存器名此设备名.寄存器名指的是“组态王”数据词典里I/O变量的设备名和该变量的寄存器名。设备名和寄存器名的大小写一定要正确。15.2.1组态王访问Excel的数据在本例中,假设“组态王”访问Excel的数据,“组态王”作为客户程序向Excel请求数据。数据流向如图15-1所示。下位机驱动程序组态王Excel“组态王”作为客户程序,需要在定义I/O变量时设置服务器程序Excel的三个标识名,即:服务程序名设为Excel,话题名设为电子表格名,项目名设置成Excel单元格名。具体步骤如下:1.在“组态王”中定义DDE设备在工程浏览器中,从左边的工程目录显示区中选择“设备\DDE”,然后在右边的内容显示区中双击“新建”图标,则弹出“设备配置向导”(DDE设备的配置参见2.3定义外部设备和数据变量),已配置的DDE设备的信息总结列表框如图15-2所示。定义的连接对象名为EXCEL(也就是连接设备名),定义I/O变量时要使用此连接设备。图15-2利用设备配置向导定义DDE设备图15-3组态王定义变量并与Excel进行连接2.在“组态王”中定义变量在工程浏览器左边的工程目录显示区中,选择“数据库\数据词典”,然后在右边的目录内容显示区中用左键双击“新建”图标,弹出“变量属性”对话框,在此对话框中建立一个I/O实型变量。如图15-3所示。变量名设为fromExceltoView,项目名设为r2c1,表明此变量将和Excel第二行第一列的单元进行连接。3.创建“组态王”画面新建组态王画面名为test,如图15-4所示。图15-4组态王运行系统输出变量为文本对象“#####”设置“模拟值输出”的动画连接,如图15-5所示。设置完成后,选择菜单“文件\全部存”命令,保存画面。在工程浏览器中选择菜单“配置\运行系统”,弹出“运行系统配置”对话框,从对话框中选择主画面配置卡片,将画面test设置为主画面。图15-5设置模拟变量值输出的动画连接图15-6在Excel的A2单元(第二行第一列)中输入数据784.启动应用程序首先启动Excel程序,然后启动组态王运行系统。TouchVew启动后,TouchVew就自动开始与Excel连接。在Excel的A2单元(第二行第一列)中输入数据78如图15-6所示,可以看到,TouchVew中的数据也同步变化。如图15-7所示。特别地,在Excel的A1单元中输入一个数值,A2单元中输入公式=SQRT(A1)公式的含义是:A2单元的值是A1单元值的平方根,如图15-8所示。利用Excel的功能,默认情况下,每当任一数据发生变化时,公式的值都将重新计算。单元A1的值改变时,单元A2的值也将同时变化,并传给“组态王”中与之有连接的变量。如图15-9所示。在“组态王”中就可以得到这个变量的平方根,好像“组态王”在独立计算一样。用类似的方法,可以极大地扩充“组态王”的功能。(在“组态王”中也有求平方根函数,此处仅以Excel的函数为例)。图15-7组态王访问Excel交换数据图15-8在ExcelA2单元中输入公式=SQRT(A1)公式A1输入数据16图15-9组态王访问Excel交换数据具体步骤如下:1.在“组态王”中定义设备在工程浏览器中,从左边的工程目录显示区中选择“设备”,然后在右边的内容显示区中双击“新建”图标,则弹出“设备配置向导”(设备的配置可请参见2.3定义外部设备和数据变量,在这里比如建立了OMRON的PLC),已配置的设备的信息总结列表框如图15-11所示。图15-11设备安装向导按照实际情况选择本站点的类型(请参见第9章网络连接),一般如果是单机,各选项都要选择。选择“本机是校时服务器”,同时输入“校时间隔”,表示本机发送校时信息的时间间隔。默认为180秒。单击“确定”,完成了双机热备中主机的基本配置。注意:在定义变量时必须要选择“允许DDE访问”,否则在客户应用程序不能访问到组态王的变量。15.2.2Excel访问组态王的数据在本例中,假设“组态王”通过驱动程序从下位机采集数据,Excel又向“组态王”请求数据。“组态王”既是驱动程序的“客户”,又充当了Excel的服务器,Excel访问组态王的数据。数据流向如图15-10所示。图15-10Excel访问组态王的数据流向2.在“组态王”中定义I/O变量在工程浏览器左边的工程目录显示区中,选择“数据库\数据词典”,然后在右边的目录内容显示区中用左键双击“新建”图标,弹出“变量属性”对话框,在此对话框中建立一个I/O实型变量。如图15-12所示。变量名设为FromViewToExcel,这个名称由工程人员自己定义。必须选择“允许DDE访问”选项。该选项用于组态王能够从外部采集来的数据传送给VB或EXCEL或其它应用程序使用。该变量的项目名为“OMRON.AR001”。变量名在“组态王”中使用,项目名是供Excel引用的。连接设备为OMRON,用来定义服务器程序的信息。图15-12Excel定义变量并与组态王进行连接3.创建画面在组态王开发系统中建立画面test1,如图15-13所示。图15-13在组态王开发系统中建立画面test1为文本对象“%%%%%”设置“模拟值输出”动画连接,如图15-14所示。选择菜单“文件\全部存”,保存画面。在工程浏览器中选择菜单“配置\运行系统”,弹出“运行系统配置”对话框,从对话框中选择主画面配置卡片,将画面test1设置为主画面。选择菜单“文件\全部存”,保存画面。在工程浏览器中选择菜单“配置\运行系统”,弹出“运行系统配置”对话框,从对话框中选择主画面配置卡片,将画面test1设置为主画面。图15-144.启动应用程序启动“组态王”画面运行系统TouchVew。TouchVew启动后,如果数据词典内定义的有I/O变量,TouchVew就自动开始连接。然后启动Excel。如图15-15所示,选择Excel的任一单元,比如r1c1,输入远程公式:=VIEW|tagname!OMRON.AR001图15-15Excel组态王的变量VIEW和tagname分别是“组态王”运行系统的应用程序名和主题名,OMRON.AR001是“组态王”中的I/O变量FromViewToExcel的项目名。在Excel中只能引用项目名,不能直接使用“组态王”的变量名。输入完成后,Excel进行连接,如图15-16所示。若连接成功,画面test1将显示数值,如图15-17所示。图15-16图15-17组态王运行系统输出15.3组态王与VB间的数据交换图15-18组态王访问VB的数据流向在VisualBasic可视化编程工具中,DDE连接是通过控件的属性和方法来实现的。对于作“顾客”的文本框、标签或图片框,要设置LinkTopic、LinkItem、LinkMode三个属性。control.LinkTopic=服务器程序名|主题名control.LinkItem=项目名其中,control是文本框、标签或图片框的名字。control.LinkMode有四种选择:0=关闭DDE;1=热连接;2=冷连接;3=通告连接。如果“组态王”作为“顾客”向VB请求数据,需要在定义变量时说明服务器程序的三个标识名,即:应用程序名设为VB可执行程序的名字,把话题名设为VB中窗体的LinkTopic属性值,项目名设为VB控件的名字。15.3.1组态王访问VB的数据在本例中,假设“组态王”访问VB的数据,“组态王”作为客户程序向VB请求数据。数据流向如图15-18所示。使VB成为“服务器”很简单,需要在“组态王”中设置服务器程序的三个标识名,并把VB应用程序中提供数据的窗体的LinkMode属性设置为1,具体步骤如下:图15-19VB中建立窗体和控件图15-20组态王中定义DDE设备1.运行可视化编程工具VisualBasic选择菜单“File\NewProject”,显示新窗体Form1。设计Form1,将窗体Form1的LinkMode属性设置为1(source),如图15-19所示。修改VB中窗体和控件的属性:窗体Form1属性:LinkMode属性设置为1(source);LinkTopic属性设置为FormTopic,这个值将在“组态王”中引用。文本框Text1属性:Name属性设置为Text_To_View,这个值也将在“组态王”中被引用。
2.生成vbdde.exe文件在VisualBasic菜单中选择“File\SaveProject”,为工程文件命名为vbdde.vbp,这将使生成的可执行文件默认名是vbdde.exe。选择菜单“File\MakeEXEFile”,生成可执行文件vbdde.exe。3.在“组态王”中定义DDE设备在工程浏览器中,从左边的工程目录显示区中选择“设备\DDE”,然后在右边的内容显示区中双击“新建”图标,则弹出“设备配置向导”(DDE设备的配置设备的配置可请参见2.3定义外部设备和数据变量),已配置的DDE设备的信息总结列表框如图15-20所示。定义I/O变量时要使用定义的连接对象名VBDDE(也就是连接设备名)。4.在工程浏览器中定义新变量定义新变量,变量名为FromVBToView,项目名设为服务器程序中提供数据的控件名,此处是文本框Text_To_View,连接设备为VBDDE。“变量属性”对话框如图15-21所示。5.创建“组态王”画面新建组态王画面名为test,如图15-22所示。图15-22新建组态王画面名为test为对象“#####”设置“模拟值输出”的动画连接,如图15-23所示。图15-23组态王为变量模拟值输出建立动画连接设置完成后,选择菜单“文件\全部存”。选择菜单“数据库\主画面配置”,将画面test设置为主画面。DDE连接设置完成。6.执行应用程序在VB中选择菜单“Run\Start”,运行vbdde.exe程序,在文本框中输入数值,如图15-24所示。运行组态王,得到VB中的数值,如图15-25所示。图15-24在VB文本框中输入数值图15-25组态王得到VB中的数值如果画面运行异常,选择TouchVew菜单“特殊\重新建立未成功的DDE连接”,连接完成后再试一试以上程序。15.3.2VB访问组态王的数据在本例中,假设VB访问“组态王”的数据,VB作为客户程序向“组态王”请求数据。“组态王”通过OMRON驱动程序从下位机采集数据,VB又向“组态王”请求数据,数据流向如图15-26所示。图15-26VB访问组态王的数据流向1.在“组态王”中定义设备在工程浏览器中,从左边的工程目录显示区中选择“设备”,然后在右边的内容显示区中双击“新建”图标,则弹出“设备配置向导”(设备的配置可请参见2.3定义外部设备和数据变量,在这里比如建立了OMRON的PLC),已配置的设备的信息总结列表框如图15-27所示。定义的连接对象名为OMRON(也就是连接设备名),定义I/O变量时要使用此连接设备。图15-27在组态王中定义设备2.在“组态王”中定义I/O变量在工程浏览器左边的工程目录显示区中,选择“数据库\数据词典”,然后在右边的目录内容显示区中用左键双击“新建”图标,弹出“变量属性”对话框,在此对话框中建立一个I/O实型变量,如图15-28所示。变量名设为FromViewToVB,这个名称由工程人员自己定义。项目名为OMRON.HR001。选择“允许DDE访问”选项。变量名在“组态王”内部使用,项目名是供VB引用的,连接设备为OMRON,用来定义服务器程序的信息,已在前面定义。图15-28在组态王中定义I/O变量3.创建画面在组态王画面开发系统中建立画面test1,如图15-29所示。为文本对象“%%%%%”设置“模拟值输出”动画连接如图15-30所示。图15-29组态王中输出变量画面图15-30组态王为变量输出变量输出建立动画连接选择菜单“文件\全部存”,保存画面。选择菜单“数据库\主画面配置”,将画面test1设置为主画面。4.运行可视化编程工具VisualBasic继续使用上一节的例子,设计Form1如图15-31所示。5.编制VisualBasic程序双击Form1窗体中任何没有控件的区域,弹出“Form1.frm”窗口,在窗口内书写Form_Load子例程,如图15-32所示。6.生成可执行文件在VB中选择菜单“File\SaveProject”保存修改结果。选择菜单“File\MakeExeFile”生成vbdde.exe可执行文件。激活OMRON驱动程序和“组态王”运行系统TouchVew。在VisualBasic菜单中选择“Run\Start”运行vbdde.exe程序。窗口Form1的文本框Text2中显示出变量的值,如图15-33所示。图15-31V
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 模拟应聘面试题及答案
- 2025年音乐理论与实践考试试题及答案
- 西方国家的社会公正理念探讨试题及答案
- 2025年统计学基础知识考试题及答案
- 吓人测试题及答案
- 2025年翻译学专业考试题及答案
- 优衣库招聘面试题及答案
- 规划中心面试题及答案
- 宝钢财务面试题及答案
- 汽车电子技术模拟试题
- 无创机械通气护理要点
- TCCAATB0045-2023城市航站楼服务规范
- 七下道法【选择题】专练50题
- 2024年北京第二次高中学业水平合格信息技术试卷试(含答案详解)
- 职业压力管理学习通超星期末考试答案章节答案2024年
- 人力资源管理:基于创新创业视角学习通超星期末考试答案章节答案2024年
- 安全环保职业健康法律法规清单2024年
- 基于杜邦分析法的蔚来汽车经营财务分析及建议
- 职业教育专业教学资源库建设工作方案和技术要求
- 江苏省徐州市2023-2024学年七年级下学期期末英语试卷(含答案解析)
- 2024年西藏初中学业水平考试生物试题(原卷版)
评论
0/150
提交评论