WinCE在嵌入式工业控制系统中的应用思考
Windows CE 2.1及其以前的版本实时性能不强,但Windows CE 3.0及以后的版本实时性能得到明显改善。Windows CE 3.0的实时性能主要通过以下技术实现:支持嵌套中断,高优先级的中断并不需要等待低优先级的中断服务例程(ISR)完成;256个线程优先级,可以灵活调度嵌入式系统的任务;通过固定高优先级中断服务线程(IST)的最大调度延迟改善线程响应时间;使用API函数CeSetThreadQuantum 和 CeGetThreadQuantum修改操作系统中线程的线程量;中断服务子程序的响应时间非常短;支持信号量。在基于Windows CE的参考平台上,使用Hitachi SH3微处理器,系统可以在2~5μs内启动一个中断服务例程(ISR),在 90~170μs内启动相应的中断服务线程。如果考虑其它因素,如CPU类型、时钟频率、总线速度等的影响,许多实际的基于Windows CE平台的响应时间更短。
(4) 模块化
由于存储器资源在移动和嵌入式设备中非常有限,Windows CE设计成一个模块化操作系统,设计者只需选择那些需要的模块以满足指定平台的存储器要求。Windows CE的结构如图1所示,主要包括4个模块:内核(Kernel)、图形窗口事件子系统(GWES)、文件系统(Filesys)和通信模块(Communications)。Kernel负责中断处理、进程和线程管理、虚拟内存管理和其它相关任务;GWES(Graphics Windowing and Events Subsystem)相当于桌面Windows的图形设备接口GDI和用户库;Filesys用于永久存储,包括文件系统、注册表和数据库;Communications模块负责与桌面PC、其它CE设备和因特网的互联。每个模块又分成许多小组件。裁减Windows CE时,可以只选择那些需要的组件。
(5) Win32兼容性
Windows CE采用与Windows 95/NT相同的编程模型,它的API是Win32 API的一个子集,大约有600个API函数,可以实现所有的嵌入式应用。CE只支持UNICODE码,CE API删除了Win32 API中包含ANSI字符串参数的函数。CE还支持当前流行的软件技术和运行库,如MFC(Microsoft Foundation Class)、ATL(Active Template Library)、EVC(Embedded Visual C )、EVB(Embedded Visual Basic)。Win32的兼容性可以容易地把现成的Windows应用程序移植到Windows CE中。目前有许多开发人员精通Windows编程技术,他们只需学习很少的知识就可以开发Windows CE应用程序。
PC机技术的发展必然出现两极分化:一方面PC机功能将进一步加强,达到以前工作站和小型机水平;另一方面,面向普通消费者和特定用途的智能化电子设备将会大量涌现。后者将会普遍采用类似Windows CE的嵌入式操作系统。
4 Windows CE在嵌入式控制系统中的应用分析
嵌入式操作系统是一种应用广泛的系统软件,工业控制是它的传统应用领域,在这一领域里已有一些比较成功的嵌入式操作系统。但是,随着应用对象的扩大和技术的进步,实际应用对工业控制系统的功能和性能提出了许多新的要求。例如,适应恶劣的工作环境,熟悉和友好的用户界面,统一的编程界面,强大的通信功能和多媒体功能等,这些嵌入式操作系统很难满足工业应用的新需要。由于Windows CE 2.1及以前版本的实时性较差,在工业控制领域应用较少,主要应用在移动式(或便携式)产品和信息家电领域。Windows CE 3.0的出现极大地改善了它的实时性能,为Windows CE进入工业控制领域奠定了基础。
虽然Windows CE 3.0作为嵌入式系统平台在工业控制领域还未被广泛采用,但前景非常广阔。许多著名的工业控制器生产商已经开发出基于Windows CE 3.0的工业控制产品,如西门子AG公司的多功能操作面板MP系列,Cybectec公司的变电站现代化平台SMP(Substation Modernization Platform)等。工业控制操作系统需要严格的实时处理功能,高可靠性,良好的开放性,对人机界面、开发环境、可操作性、成本等也有特别的要求。
(1) 实时性
实时性是指能够在限定时间内执行完规定的功能,并对外部的异步事件作出反应的能力。实时性的强弱以完成规定功能和作出响应时间的长短来衡量。提高硬件的处理能力可以在一定程度上提高计算机控制系统的实时性,但是当硬件确定以后,控制系统的实时性能主要由操作系统来决定。无论从汽车制造到工业自动化,还是从电子通信到交通运输,Windows CE 3.0均可为具备确定性响应能力的应用程序提供内建实时支持。
(2) 可靠性
工业控制系统对可靠性要求很高,计算机控制系统发生故障或死机对于企业安全高效生产带来不利的影响。可靠性主要包含两个方面的含义:一是控制计算机本身要连续稳定运行,二是系统检查出故障后要有保持安全状态的能力。虽然软
- 如何使WINCE启动时自动运行应用程序(04-11)
- 基于WinCE操作系统的通用USB数控键盘设计(08-05)
- 基于WinCE的ARM视频监控系统(11-14)
- WinCE系统下BootLoader的开发(04-10)
- WinCE下光电编码器的驱动程序设计(04-12)
- WindowsCE.Net下CAN卡的驱动程序设计(04-12)