- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软PLC开发系统设计及实现现
软PLC开发系统设计及实现现摘 要:介绍了软PLC开发系统的构成和功能,并针对梯形图编辑到目标代码生成的过程,论述了编辑模块、编译模块和仿真模块的设计方案。首先,利用Visual Studio 2005建立梯形图编辑界面和梯形图组件库,实现组件调用和梯形图编辑功能;其次,根据梯形图的构成特点,通过一定的扫描规则来构成二叉树,并通过后序历遍算法来获得指令表;然后,为了实现编辑环境和运行环境的高效通信,通过查表的方式将指令表转换为较为简单的目标代码;最后,建立仿真环境来验证编程的正确性。
关键词:软PLC; 梯形图; 指令表; 二叉树
中图分类号:TN91934 文献标识码:A 文章编号:1004373X(2012)10001503
基金项目:国家863计划资助项目(2009AA04Z111);广东省重大科技专项项目(2010A080401006)0 引 言
传统PLC是一种高效可靠的自动化控制技术,被广泛应用于各种工业场合,然而开放性差、通用性差和价格昂贵等问题,成为了该技术发展的瓶颈。随着计算机技术的不断发展和PLC的IEC611313国际标准的制订[1],软PLC技术应用而生,突破了传统PLC的局限性,逐渐被应用于各种自动化控制领域。所谓软PLC技术,就是使用PC机作为硬件支撑平台,利用软件实现标准硬件PLC的基本功能,或者说,将PLC的控制功能封装在软件内,运行于PC的环境中[24]。
1 系统的结构及功能
如图1所示,软PLC系统由编辑环境和运行环境组成。其中,编辑环境运行于PC上,为用户提供PLC程序的开发条件,并生成目标代码;而运行环境以下位机为基础,对编辑环境生成的目标代码进行解析和执行,控制I/O完成动作。本系统以Windows XP 操作系统及Visual Studio 2005开发工具为软件平台,设计并实现了软PLC系统的编辑环境。
图1 软PLC系统构成该编辑环境主要由PLC梯形图语言编辑模块、编译模块和仿真模块组成。各模块的功能如下:
(1) 编辑模块:由梯形图组件库及梯形图编辑界面2部分构成,实现梯形图的管理和编辑(图元添加、删除、复制、剪切、粘贴、撤销、重复),存储和显示,以及语法查错等功能。
(2) 编译模块:扫描PLC梯形图程序,将其转换为指令表语言,并生成一定格式的目标代码。
(3) 仿真模块:模拟下位机执行程序的过程,验证梯形图程序的逻辑正确性。
2 软PLC的编辑模块
2.1 编辑界面的设计
PLC梯形图编辑环境采用MFC文档/视图结构,其编辑界面由工程管理窗口、梯形图编辑窗口、编译信息窗口和图元工具栏等部分组成,如图2所示。为实现上述各个部分的功能,本系统定义了框架类、视图类、文档类和组件库管理类,分别负责视图与文档的协调、梯形图的显示、梯形图图元信息的储存和恢复以及梯形图组件库的调用。
图2 梯形图编辑界面2.2 梯形图组件库的设计
梯形图组件库是根据IEC611313进行开发,其作用是为用户提供梯形图基本元素进行编程开发。梯形图的元素包括很多类型,其中包括基本类型(触点、线圈、定时器、计数器等)和特殊类型(计算功能块,运动控制块等)。
由于组件库中的梯形图元素均具有相似性,因此可以利用基类对所有元素进行封装,形成统一的编程接口,从而采用继承的方式表现各元素的多态性。
为了向编辑环境提供梯形图图元,实现PLC梯形图功能,本系统将采用动态链接库的形式进行组件库设计,编辑环境可通过动态链接库的相关函数,来调用组件库里面的基本元素。
主要的接口函数及功能如下:
(1) GetLDElementNum:获取组件库中梯形图元素数目;
(2) GetLDElementClass:获取组件库中梯形图动态类型,用于动态创建元素;
(3) GetLDElementMenuName:获取组件库中梯形图元素菜单名称,用于生成菜单栏;
(4) GetLDElementIcon:获取组件库中梯形图元素图标,用于生成工具栏;
(5) LDCreateFromString:获取组件库中元素创建函数,使元素能够从保存中恢复。
3 软PLC的编译模块
3.1 指令表转换
梯形图形象直观,与电气控制原理图相呼应,但对于PLC来说是不可执行代码,无法直接运行[5]。在完成梯形图编辑后,需要将其转换成更接近机器语言的指令表语言。由文献[6]可知,梯形图的“能流”是从左边母线出发依次通过各个元素流向右边的母线,具有“从左到右,从上到下”的特点。根据这一特点,可以将梯形图中每个元素看作是一个节点,而相邻两个元素之间的串联(或并联)可以抽象为两节点的连接关系,因此梯形图中的每个阶梯均可以看作是一棵顺序二叉
您可能关注的文档
- 社会化媒体中品牌声誉管理.doc
- 试论毕业设计指导及实践.doc
- 试论杜甫诗歌经典化历程.doc
- 试论海堤工程中施工主要技术.doc
- 该如何要回演出劳务费-.doc
- 试论构建家校良性互动及谐教育共同体.doc
- 语文多元化阅读浅议.doc
- 语文及听、说、读、写训练.doc
- 语文学习生活化体现工具、人文性.doc
- 试论新课程改革下英语素质教育.doc
- 高考总复习思想英语UNIT 1ART.pdf
- 高考总复习思想语文学习任务群三如何写好议论文开头.pdf
- 【乡村振兴】运河转身——南方城市运河沿线景观提升设计规划方案【城市景观设计】【城市地标设计】.pptx
- 【投放】百度营销投放平台实操指南【互联网】【广告投放】.pptx
- 【生鲜】生鲜平台APP推广方案【运营推广】【生鲜运营】.pptx
- 【综艺】贵州文旅项目《拼个假期去旅行》策划方案【综艺】.pptx
- 【乡村振兴】某市万亩高标准农田乡村田园休闲生活体验场景打造规划设计建设方案【乡村振兴】.pptx
- 【文化活动】长乐和平街历史文化街元旦春节元宵节活动方案【文旅】【旅游】【已水印】.pptx
- 【文化】特斯拉企业文化手册.pptx
- 【乡村振兴】城市古城历史文化保护和特色风貌塑造试点综合整治规划【古城特色文化街区规划】【城市设计】.pptx
文档评论(0)