论文部分内容阅读
从上世纪七十年代到现在,嵌入式实时软件广泛应用于各个领域。但是嵌入式实时软件在开发过程中没有统一的方法。从分析、设计到编程没有一个始终一贯的工程化方法,使得产品形成的每一个过程中人为因素影响十分严重。严重阻碍了嵌入式实时软件的发展。事实上,嵌入式实时系统中通常有60%到90%的支撑成分,是所有应用都需要的公共设施。另外,很多设施的运行方式相同,如启动和结束任务的方式,任务和资源的调度方法,实现和执行状态机的方法。所以本课题设计并实现一个可移植、可复用、可扩展的基于层次组件的嵌入式实时软件框架。主要做了以下工作:首先,分析了实时系统的共同需求以及实时软件常用的五层架构模式,建立了框架模型。模型包括:平台接口(外设驱动接口以及操作系统接口)、组件库(元件、中间件以及通信件)以及扩展点(人机交互扩展以及应用扩展点)。外设驱动接口使得框架具有处理器无关性。操作系统接口使得框架不依赖于具体的操作系统。元件是板级设备的高度抽象、比如液晶显示设备,存储设备。中间件是平台无关的组件、比如数据库,定时器等。通信件是与外部系统通信的组件,比如MODBUS通信。人机交换扩展点用于实现人机交互。应用扩展点用于扩展不同的领域应用。其次,对框架各组件进行详细设计。按照从边界到内部,从下向上进行设计的顺序进行设计。外设接口先分析基本功能,在定义外设接口;分析操作系统的基本功能,从而定义操作系统接口。人机交互界面是重要的内容,设计过程使用了MVC架构模式、状态模式以及命令行模式。元件层以及中间层的设计方法是,先分析每个组件的功能,然后应用观察者模式、代理模式等设计模式,设计元件层以及中间层组件。还提出了智能数据模式来设计智能数据组件。最后,展示了框架在充电基础设施的多个嵌入式实时产品中的应用。充电基础设施产品家族包含多种实时产品,比如直流监控、直流桩、交流桩等。以交流充电桩软件的设计为例讲述了应用方法。本文研究的软件框架已经开发完成并且投入使用。框架具有可移植性、可复用性以及可扩展性。推进了实时软件向模块化和标准化方向发展。