嵌入式通信管理机配置软件设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式通信管理机配置软件设计.doc

嵌入式通信管理机配置软件设计   摘要:通信管理机作为变电站自动化系统中的数据枢纽,在整个变电站自动化系统中承担着重要角色。结合通信管理机的开发实践,研究了一种嵌入式通信管理机的配置软件的设计和实现方法。首先详细的介绍了通信管理机的硬件平台。其次针对软件在实现中涉及的VC++、XML语言、多线程处理技术做了详细的介绍。基于此实现了以PC为平台的通信管理机配置软件的开发。   关键词:通信管理机 VC++ 多线程 XML UML   中图分类号:TM73 文献标识码:A 文章编号:1007-9416(2015)09-0000-00   本文介绍的是使用通信管理机控制遥测、遥信的实时监控软件。该控制软件通过串口或网口与通信管理机进行数据交换与处理,实现了对管理机当前状态的监控。本软件使用的串口通信接口是最常用的RS232串口,RS232是一个全双工的通信协议,能够同时进行数据接收和发送的工作。本软件使用C++语言进行开发。C++是面向对象的语言,其生成的目标代码质量和程序执行效率都很高,可移植性好。本文使用了多线程等技术开发出了通信管理机的配置软件。   1 通信管理机   本文使用的通信管理机是以ARM9处理器为核心来搭建硬件平台的。本通信管理机以运行在400MHz的AT91SAM9X25芯片为处理器,为变电站自动化系统提供了丰富的外围接口,包括4个RS232、4个RS422/RS485、4个RS485串口以及3个以太网接口。硬件模块包括电源、时钟系统、复位电路、JTAG调试接口、NAND Flash、DDR2以及用户通信接口。   2 UML建模   统一建模语言是面向对象软件的标准化建模语言。事物、关系以及图构成了UML建模图的三个部分。事物是具有代表性的成分的抽象,是UML模型中最基本的构成,关系是把事物紧密联系在一起,图则是事物和关系的可视化表现。本软件采用模板RTU将RTU信息抽象分类成5大类(遥测、遥信、遥控、遥调、遥脉)。图1是本软件的实例类图。   图1 RTU实例类图   3 通信管理机设计   3.1 软件开发平台   本软件是在微软的Windows7操作系统下,以VC++作为开发工具开发的。图2是最终软件界面。mfc是微软基础类库的简称,是微软公司实现的一个c++类库,主要封装了大部分的windows API函数,vc++是微软公司开发的c/c++的集成开发环境,Mfc也是一个应用程序的框架结构。Mfc不仅仅是一个类集合,它还帮助定义了应用程序的结构并为应用程序处理许多杂务。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。该类库提供一组通用的可重用的类库供开发人员使用。   图2 配置软件界面   3.2 配置文件   可扩展标记语言,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。XML的优点是它将用户界面与结构化数据分隔开来。这种数据与显示的分离使得集成来自不同源的数据成为可能。因此本软件使用XML来保存数据。并将配置分两格文件rtudef.xml和sysdef.xml保存。用户配置保存在rtudef.xml中。而与具体设备相关联的不同厂家的特定参数放到sysdef.xml中。对使用者而言避免了复杂的专业知识,同时这种设计又适应于不同厂家的不同类型设备。   C++标准库中没有操作XML的方法,用C++操作XML文件必须熟悉一种函数库。本软件使用的是libxml。它是一个用来解析XML文档的函数库。它用C语言写成, 并且能为多种语言所调用,例如C语言,C++,XSH。C#,Python,Kylix/Delphi,Ruby,和PHP等。libXML 代码可移植性非常好,因为它基于标准的ANSI C库, 并采用MIT许可证。   3.3 通道口配置初始化   在开始监控之前必须先配置通道。串口的配置主要是通道口、波特率、停止位、数据位、校验位的配置。网口的配置主要是管理机IP地址以及端口号的配置。图3是串口配置,图4是网口配置。通道配置完成,连接设备后即可进行实时值的监控。   //端口名称设置   strncpy_s(config.portName,W2A(strText),sizeof(config.portName));   //波特率设置   config.baudRate=_wtoi(strText);   //停止位设置   selIndex=((CComboBox*)pWnd)-GetCurSel();   if(selIndex==0)   config.stopBits=ONESTOPBIT;   else   

文档评论(0)

jingpinwedang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档