Windows CE是微软公司开发的一个开放、可升级的32位嵌入式操作系统。与Windows 95 /98、WindowsNT不同的是,Windows CE是所有源代码全部由微软自行开发的嵌入式新型操作系统、其操作界面虽来源于Windows 95 /98,但Windows CE是基于Win32 AP I重新开发的、新型的信息设备平台。Windows CE具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点[ 1 ] 。微软在2002 年推出了新一代Windows CE. NET后,其性能有了更进一步的提高,支持蓝牙技术、支持TCP / IPv6,并在实时多任务控制领域得到了成功的应用[ 2 ]。相对于DOS,Windows CE. NET是运行于保护模式的多线位操作系统,很适合的稳定性具备极其重大意义: 相对Windows桌面操作系统,Windows CE. NET是嵌入式实时操作系统,其独特体系结构和运行机制使其能快速响应外部中断触发,并调度相关应用程序做处理[ 3 ] ,因此它能够完全满足的实时性要求。Win2dows CE. NET是一个实时操作系统,它提供了实时开发所需的重要技术,其中包括:
(2)中断嵌套允许更高优先级的中断立刻被执行而不必等到较低优先级的中断服务程序执行完毕。内核能嵌套CPU所支持的全部数量的中断服务程序。
(3)每一线程的时间片允许应用程序在多线程原则上设置时间片,这就从另一方面代表着能够使调度程序适应应用程序的当前要求。
(4)优先权倒置是指当两个线程竞争同一个资源时,资源被低优先级的线程占用而拖延了高优先级线程的执行的情形。为了纠正这种情形并释放高优先级的线程,Windows CE允许低优先级线程继承更加紧急的线程优先级并且以更高的优先级来运行直到它释放它所占用的资源。
为了使用户可以方便的将Windows CE转向一个新的硬件平台,微软提供了完整的开发工具p latformbuilder 4. 2,它包括了一些必需的工具,以便开发人能为组件化的操作系统版本创建特定平台的软件开发包( SDK) 。平台向导( Platform Wizard)允许开发人员根据将要创建设备的类型简便快捷地建立新的平台,参见图1。
要创建一个基于Windows CE. NET的操作系统平台,一定要经过下面几个步骤: ①选择一个标准的开发板( SDB ) 来创建Windows CE 平台。②使用平台向导(Platform Wizard)中备选的设备及目录中所列举的特征对平台做定制。③Build 并生成镜像文件( im2age) 。④将平台下载到目标设备,调试平台。⑤平台创建完毕,输出软件开发工具包( SDK) 。
定制平台时,用户都能够开发自己的OEM硬件适配层(OAL) ,OAL是处于Windows CE系统内核与目标设备硬件之间,用来抽象硬件功能的连接层,实现操作系统的可移植性。OEM硬件适配层分为OEM抽象层和设备驱动程序两部分。
硬件开发平台是用于模拟嵌入式系统设备的目标设备,可用于开发、调试和验证定制平台的性能。Plat2form Builder支持基于PC机的硬件开发平台(CEPC) ,CEPC是最灵活的Windows CE设备,很适用于嵌入式系统的开发调试阶段。
数控激光切割机由激光切割机主机、CO2激光器、水冷机、外光路系统、数控系统及自动编程软件等组成[ 4 ] (见图2) 。其中激光器及外光路系统是数控激光切割机的关键配套部件,其性能指标将直接影响激光切割板材的切割质量,而激光切割机主机则是实现激光进行优质切割的载体。所以,对数控激光切割机主机的开发设计显得很重要。
随着近年来计算机技术的发展,工业PC机和模块化的集成电路逐渐进入数控领域, PC机以其特有的开放性成为开放式数控系统的基础,它丰富了数控系统的硬、软件资源,有利于实现总线式、模块化、开放化的数控系统,该系统利用流行的操作系统平台作支撑,采用标准的应用开发环境,具有较好的互操作性、移植性、互换性和伸缩性,展现了良好的开放性能,同时又具有方便、灵活的特点。同时充分的利用Windows CE强大的图形界面功能、多线程机制和多媒体定时器来解决数控软件的实时多任务处理能力,其良好的软硬件兼容能力可以在一定程度上完成建立在标准总线基础上的模块化开放式数控系统。开放式数控系统可采用分层的体系结构,如图3所示。各层之间实现隔离,层与层之间通过标准的接口进行通讯,实现了开放式控制管理系统应有的分层体系结构,使数控软件易于组装、扩充和维护。第一层为管理层。它是系统的界面部分,可完成系统的管理、显示、诊断和监控。通过响应状态选择控件产生的不同消息来进行不同界面之间的切换,其调用操作由操作系统管理完成。
第二层为功能单元层。它是系统的控制部分,包括代码生成、编译解释、插补运算和运动控制, I/O 处理和数据采集等,是相对独立的功能单元。它们之间通过在软件中建立的多个数据缓冲器来进行大量的数据交换。译码可将数控指令解释成为系统内部的数据格式,插补运算完成数据插补产生加工数据、速度处理和辅助功能设备控制。运动控制程序完成位置伺服的控制。I/O信号处理模块接收各种按键的输入,转化为程序变量或系统消息以供操作。数据采集模块负责采集各运动轴的信息和A /D信号,用于实现数据实时显示、实时控制等功能。
第三层为支撑层,包括运动控制卡、运动控制器的设备驱动程序、I/O卡和工业PC机。