基于WinCE嵌入式系统控制台的设计与实现
扫描二维码
随时随地手机看文章
基于WinCE嵌入式系统控制台的设计与实现
汪国林,余辉
合肥工业大学科研处,合肥230009;中国电子科技集团公司第41研究所,蚌埠233006
[摘要]:本文介绍了基于Wince嵌入式系统控制台的设计与实现。控制台通过Arcnet网络与机器控制单元进行通信,实现状态显示和参数设置。详细介绍了软件部分的界面设计、网络通信和Wince系统定制。
[关键词]:WinceEvcArcnet网络控制台
DesignandRealizationofControllerBasedonWinceSystem
WANGGuo-lin,YUHui.DepartmentofScienceResearch,HefeiUniversityofTechnology,Hefei230009,China.The41stInstituteofChinaElectronicsTechnologyGroupCorporation,Bengbu233006,China.
[Abstrace]:ThispaperintroducedtheDesignandRealizationofconsoleBasedonWinceSystem.ConsolecommunicatewithmachinecontrolunitbyArcnetnetwork,thenshowthestatusofmachineandparametersetting.Thepaperalsointorducedinterfacedesign、networkcommunicationandWincesystenbuilderindetail.
[Keywords]:WinceEvcArcnetnetworkConsole
操作员控制台(以下简称OPC)是烟草包装机设备中的人机界面,整个系统基于Wince嵌入式操作系统,采用了ARCNET网络接口,实现了与包装机设备控制单元的高速通信,很好地满足了系统的实时性、快速性和可靠性要求。
1、系统简介
1.1、系统工作原理
OPC通过ARCNET网络接收来自包装机组控制单元传送来的数据,完成概
图显示、故障信息报警等相应功能;接受维护人员的参数修改和设定,并将数据发送到包装机组控制单元。
整个系统有以下几个部分组成:控制单元、网络接口、人机界面。
由于该系统数据处理量较大,所以整个系统应该具有很高的运行速度及集成度,综合以上考虑采用了速度较快的工业控制板;网络接口采用了自主设计的PC104接口的ARCNET网卡;为了方便用户地使用,人机接口采用了大屏幕液晶触控屏。系统工作原理如图1所示。
图1系统工作原理框图
1.2、ARCNET网络
ARCNET(AttachedResourceComputerNetwork)协议是Datapoint公司于70年代末推出的,其性能特点特别适合于控制需要而得以在工业自动化领域成功应用。实践证明,ARCNET具有可靠性高、通信速率高、可确定的性能以及远距离通信能力等特点,是一种理想的现场总线技术。
首先,现场总线必须能够在预先确定的时间内完成消息传输。ARCNET所采用的令牌传递协议确保能在时间上满足这个要求。其次现场总线中的消息通常是短消息,ARCNET支持长度可变的数据帧(0-507字节),额外开销小,再加上其较高的数据速率(通常为2.5Mbps),使得ARCNET对对短消息具有良好的快速响应性能。其主要特点如下:①时间的可确定性;②逻辑环;③自动应答;④广播消息;⑤自动重构。
2、系统软件设计
MicrosoftWindowsCE是一个32位的、紧凑的、高效和可扩展的操作系统,适用于各种嵌入式系统和产品。它拥有多线程、多任务、确定性的实时、完全抢占式优先级的操作系统环境,专门面向只有有限资源的硬件系统。同时,它的模块化设计方式使得系统开发人员和应用开发人员能够为多种多样的产品来定制它,可以选择、组合和配置WindowsCE的模块和组件来创建用户版的操作系统,例如客户电子设备、专用工业控制器以及嵌入式通信设备等等。采用EVC来设计控制软件,最终完成的代码存储于CF卡中,可靠性高。
2.1、Wince操作系统的定制
一个良好的运行环境决定着程序运行的稳定性,一个稳定的系统也是需要精心定制和裁剪的,微软公司提供了一整套嵌入式系统解决方案,由于它的模块化设计和多种接口的支持,可以定制满足需求的最小软件模块和组件的嵌入式系统平台,利用较小的内存空间来完成目标系统的功能,可以利用其工具PlatformBuilder(简称PB)来实现。PB是开发基于WindowsCE嵌入式操作系统的专用开发工具。本文利用WindowsCE.net的PlatformBuilder4.2并根据目标平台的硬件配置对WinCE操作系统进行定制,删除在所开发的系统中不需要的功能块,精简组件,添加了触摸屏驱动程序,生成新建WinCE平台的映象文件,使系统占用最少的内存,然后将映象文件NK.Bin移植到目标设备的硬件平台即可。同时,使用PlatformBuilder导出在该平台上开发应用程序所需要的SDK。
定制系统时需要加入触摸屏的驱动,系统采用USB接口。过程如下:
(1)在c盘建立一个CEDB文件夹并把需要的所有文件放入该文件夹;
(2)运行PB开发环境,在project.bib文件中添加:
TouchKit.exec:CEDBTouchKit.exeNKS
DrawTest.exec:CEDBdrawtest.exeNKS
Calbration.exec:CEDBcalbration.exeNKS
UpdateEEPROM.exec:CEDBUpdateEEPROM.exeNKS
USBTouch.dllc:CEDBUsbTouch.dllNKSH
(3)编辑project.reg文件,在文件中添加:
[HKEY_LOCAL_MACHINEDriversTouchKit]
"RBSIZE"=dword:800
"RBTIME"=dword:989680
"FLAGS"=dword:1
"BeepFrequence"=dword:1F4
"BeepTime"=dword:64
"ZFilterThreshold"=dword:800
"ZFilterBound"=dword:00100001
"SoundType"=dword:0
[HKEY_LOCAL_MACHINEDriversUSBLoadClients14371_1 _0_0255_255_255USB_TOUCH_Driver]
"DLL"="USBTouch.dll"
[HKEY_LOCAL_MACHINEDriversUSBLoadClients14371_2 _0_0255_255_255USB_TOUCH_Driver]
"DLL"="USBTouch.dll"
[HKEY_LOCAL_MACHINEDriversUSBLoadClients4660_1 _0_0255_255_255USB_TOUCH_Driver]
"DLL"="USBTouch.dll"
[HKEY_LOCAL_MACHINEDriversUSBLoadClients3823_1 _0_0255_255_255USB_TOUCH_Driver]
"DLL"="USBTouch.dll"
[HKEY_LOCAL_MACHINEDriversUSBLoadClients3823_2 _0_0255_255_255USB_TOUCH_Driver]
"DLL"="USBTouch.dll"
(4)编译并生成系统文件。
2.2应用程序设计
此界面的应用程序是在个人计算机上进行的。其开发平台是eVC4.0集成开发环境,在应用程序开发之前,首先利用PlatformBuilder4.2创建该平台上的SDK并导人到eVC4.0中,然后从eVC4.0的环境列表中选择所定制的平台,接下来就可以进行应用程序的开发、调试及运行了。
人机界面的功能模块主要包括机器概图显示、参数设置界面、配置界面、数据统计界面。本系统是采用一个基于主对话框的应用程序,各个不同的功能采用子对话框来表现。主对话框主要完成初始化网卡、启动接收数据线程和调用其它子对话框。工作时,控制台(简称上位机)主要接收包装机组发送来的系统信息并显示,例如各机器的工作状态、检测点故障等。同时,接收用户对参数的修改并向控制单元发送控制指令信息,这一功能通过用户触摸上位机的触摸屏来完成。上位机和控制单元之间通过ARCNET网络来进行通讯。系统流程图如图2所示。
图2系统流程图
2.3ARCNET网络软件设计
由于ARCNET通信协议是由COM20020的内部集成电路完成的,因此通信软件的开发主要体现在应用软件上,主要包括2部分:芯片的初始化和数据包的传输。
①初始化顺序。首先决定总线的工作方式,必须在COM20020内存空间中的奇位置任意作一些读写操作(当COM20020上电时,内部寄存器可以被读写)。在NODEID寄存器中写入一个非零值将会激活COM20020的核心部件,但是NODEID寄存器是否能被操作是由Setup寄存器决定的,所有Setup寄存器应首先被写。在NodeID寄存器中写入一个非零值后(节点地址必须是独一无二的网络才能正常工作),COM20020的核心部件将会被激活,然后设置Configuration寄存器的TXEnable位为1。
②数据包的传输。由于COM20020数据包结构中的有效数据放在数据包的最后位置,使用起来很不方便,本系统中首先按照用户数据包格式打包数据,然后调用函数把用户数据包转换为COM20020数据包格式,放入发送缓冲区内。接受数据包时,通过接收中断从缓冲区读取数据,并做一个相反的处理过程,把COM20020数据包转换为用户格式数据包。数据包格式转换如图3所示。
图3数据包格式转换示意图
3.结语
基于Wince嵌入式系统的操作员控制台的设计开发已成功的应用,并很好地完成了整个包装机系统的状态显示和控制。经实验,满足用户和设计要求。
作者简介:汪国林,男,1974年6月出生,重庆市人,汉族,工学硕士,讲师。合肥工业大学科研处,安徽省合肥市屯溪路193号,邮编:230009。联系电话:0551-2901124,13705601503,EMAIL:hfutwgl@163.com.主要从事:检测技术与自动化装置技术研究。
参考文献:
[1]COM20020DataBook[Z],StandardMicrosystemsCorporation
[2]ARCNETTutorial[Z],ContemporaryControlsCorporation,1999
[3]张冬泉,谭南林,王雪梅等.《WindowsCE实用开发技术》[M],电子工业出版社,2006
[4]周功业,汪惊奇,王建.ARCNET网络下数据采集的设计与实现[J].计算机工程,2003,29(12)