热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

matlab通过dde与组态王进行连接实现方法

DDE是什么DDE(DynamicDataExchange:动态数据交换)是WINDOWS平台上的一个完整的通信协议,它使支持动态数据交换的两个或多个应用程序能彼此交换数据和发送指

DDE是什么

DDEDynamic Data Exchange:动态数据交换)是WINDOWS平台上的一个完整的通信协议,它使支持动态数据交换的两个或多个应用程序能彼此交换数据和发送指令。DDE始终发生在客户应用程序和服务器应用程序之间。DDE过程可以比喻为两个人的对话,一方向另一方提出问题,然后等待回答。提问的一方称为顾客Client),回答的一方称为服务器Server)。一个应用程序可以同时是顾客服务器:当它向其他程序中请求数据时,它充当的是顾客;若有其他程序需要它提供数据,它又成了服务器

DDE对话的内容是通过三个标识名来约定的:

应用程序名(application):进行DDE对话的双方的名称。商业应用程序的名称在产品文档中给出。组态王运行系统的程序名是“VIEW”Microsoft Excel的应用程序名是“Excel”Visual Basic程序使用的是可执行文件的名称。

主题(topic):被讨论的数据域(domain)。对组态王来说,主题规定为“tagname”Excel的主题名是电子表格的名称,比如sheet1sheet2 ……Visual Basic程序的主题由窗体(Form)的LinkTopic属性值指定。

项目(item):这是被讨论的特定数据对象。在组态王的数据词典里,工程人员定义I/O变量的同时,也定义项目名称(参见第五章变量定义和管理)。Excel里的项目是单元,比如 r1c2r1c2表示第一行、第二列的单元)。对Visual Basic程序而言,项目是一个特定的文本框、标签或图片框的名称。

建立DDE之前,客户程序必须填写服务器程序的三个标识名。组态王作为DDE服务器的表示名分别为:view | tagname | 设备名.访问地址


MATLAB使用DDE与与组态王进行通讯(实现组态王PID控件仿真)

1.使用组态王新建一个项目,命名为“matlab_kingview_dde”

matlab通过dde与组态王进行连接实现方法


2.添加亚控仿真PLC,命名为仿真plc”,其他默认直接下一步;

3.打开变量表新建变量kp,ki,kd;

matlab通过dde与组态王进行连接实现方法

matlab通过dde与组态王进行连接实现方法

matlab通过dde与组态王进行连接实现方法

以及变量sp,pv,pidout

matlab通过dde与组态王进行连接实现方法

matlab通过dde与组态王进行连接实现方法

4.建立一个新画面,添加kingview pid control控件

matlab通过dde与组态王进行连接实现方法

matlab通过dde与组态王进行连接实现方法

5.双击PID控件,绑定变量。

matlab通过dde与组态王进行连接实现方法

6.保存文件,切换至运行状态。

7.以管理员身份运行Matlab,必须以管理员权限运行!

matlab通过dde与组态王进行连接实现方法

8.打开simulink,使用一个一节惯性环节和两个s-function文件,如下:

matlab通过dde与组态王进行连接实现方法

DDE_Input.m

matlab通过dde与组态王进行连接实现方法

DDE_Output.m

matlab通过dde与组态王进行连接实现方法

另建一个m文件,命名为:Iint_DDE.m

matlab通过dde与组态王进行连接实现方法

9.首先运行Iint_DDE.mmatlab空间输出如下:

matlab通过dde与组态王进行连接实现方法

10.将SIMULINK步数设置为Inf,

matlab通过dde与组态王进行连接实现方法

然后启动simulink,可以尝试调一下pid参数了。

matlab通过dde与组态王进行连接实现方法

winxp,7下pid空间可能需要注册服务。



推荐阅读
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 本文介绍了在Vue项目中如何结合Element UI解决连续上传多张图片及图片编辑的问题。作者强调了在编码前要明确需求和所需要的结果,并详细描述了自己的代码实现过程。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • vue使用
    关键词: ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • HTML学习02 图像标签的使用和属性
    本文介绍了HTML中图像标签的使用和属性,包括定义图像、定义图像地图、使用源属性和替换文本属性。同时提供了相关实例和注意事项,帮助读者更好地理解和应用图像标签。 ... [详细]
  • 图片复制到服务器 方向变了_双服务器热备更新配置文件步骤问题及解决方法
    本文介绍了在将图片复制到服务器并进行方向变换的过程中,双服务器热备更新配置文件所出现的问题及解决方法。通过停止所有服务、更新配置、重启服务等操作,可以避免数据中断和操作不规范导致的问题。同时还提到了注意事项,如Avimet版本的差异以及配置文件和批处理文件的存放路径等。通过严格执行切换步骤,可以成功进行更新操作。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • 如何提高PHP编程技能及推荐高级教程
    本文介绍了如何提高PHP编程技能的方法,推荐了一些高级教程。学习任何一种编程语言都需要长期的坚持和不懈的努力,本文提醒读者要有足够的耐心和时间投入。通过实践操作学习,可以更好地理解和掌握PHP语言的特异性,特别是单引号和双引号的用法。同时,本文也指出了只走马观花看整体而不深入学习的学习方式无法真正掌握这门语言,建议读者要从整体来考虑局部,培养大局观。最后,本文提醒读者完成一个像模像样的网站需要付出更多的努力和实践。 ... [详细]
  • React基础篇一 - JSX语法扩展与使用
    本文介绍了React基础篇一中的JSX语法扩展与使用。JSX是一种JavaScript的语法扩展,用于描述React中的用户界面。文章详细介绍了在JSX中使用表达式的方法,并给出了一个示例代码。最后,提到了JSX在编译后会被转化为普通的JavaScript对象。 ... [详细]
author-avatar
皇家突然回家_390
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有