王 梅,陈希平,张 传,张 岩
1 嵌入式系统与自动化仪器仪表 1.1 嵌入式系统及其发展 嵌入式系统(Embedded System)是以计算机技术为基础,适用于对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。它的最大特点在于能够根据特定用户的需求,对软硬件进行合理裁剪,具有功耗低、体积小、集成度高等特点,有利于整个系统的小型化,提高系统的智能化和网络化程度。 嵌入式计算机经历了基于芯片的嵌入式系统(以单片机技术的应用为代表)、标准总线的嵌入式计算机系统(如STD总线、VEM总线、Multibus总线)、PC总线的嵌入式计算机系统、高性能嵌入式微处理器在嵌入式计算机系统中的应用几个发展阶段。 计算机软硬件技术的飞速发展,使得高性能嵌入式微处理器应用成为当前的热点,而实时多任务操作系统正成为这一应用中的重要核心部分。它与当前智能控制、网络等新技术的进一步融合,对业界产生深远的影响,也推动了嵌入式系统飞速发展。 1.2 自动化仪器仪表与嵌入式系统 高级嵌入式计算机系统和网络技术的应用,使仪器仪表将传感测量、补偿计算、工程量处理与故障诊断等功能集于一身,并能充分利用网络时代的优势,完成远程维护、远程控制、故障预报等以前无法实现的功能。在这其中,芯片、总线、接口技术,成为仪器仪表的内核,嵌入式系统成为技术的代表,并由此形成了仪器仪表行业发展的趋势。 2 仪器仪表中高级嵌入式计算机系统的方案设计 2.1 注意要点 ? 实时性好 特定用户通常对获取结果的时间延迟有明确限制,设计时必须充分考虑这一因素。 ? 可靠性高 作为核心部件,嵌入式系统的损坏常造成系统的瘫痪,带来无法估量的损失,因此要求有较高的可靠性。 ? 集成度高 出于开发效率和占用空间方面的考虑,要求嵌入式系统要有较高的集成度。 ? 功耗低 某些移动设备、便携式设备等需要电池供电,决定了系统应当有更低的功耗。 ? 环境适应能力强 自动化仪器仪表的工作环境往往是不可控的,特别是热、冲击、光、强电磁场等,因此应考虑到对于这些干扰的防护措施。 2.2 开发过程 (1) 目标产品的功能分析及定义 ① 嵌入式系统的主要目标是进行数据采集还是进行控制;② 是否需要显示界面,需要显示时,是以图形方式还是文本方式显示;③ 是否需要与其他的设备进行数据交换,如需要,选择何种方式,何种协议;④ 仪器仪表的各项主要性能指标定义。 (2) 根据需要的功能来确定硬件设备和软件 (3) 嵌入式系统的软件开发可以分为以下几个层次: ① 对硬件设备进行直接控制的软件开发;② 没有用户图形界面的应用程序开发;③ 基于图形界面的通用应用软件的开发;④ 在基础应用软件上的高层开发。 很多开发环境主要应用于第③、④层次,因此开发可以不在目标机上进行,而在PC机上或PC的模拟环境中进行。 3 高级嵌入式计算机系统中硬件和软件的设计与选型 3.1 硬件选型 在选择高档嵌入式微处理器时,要综合考虑其性能、功耗、价格、供货保证、开发工具的配备以及工程师过去对这种处理器的经验和软件的支持等因素。同时,兼顾产品的整体成本,而不要只看到某一部件。有时,一个快速而廉价的CPU可能意味着外设成本的成倍增加。 3.2 软件开发平台的选择 实时多任务操作系统(RTOS)采用微内核技术,设计追求灵活性,可配置、可裁剪、可扩充、可移植;强实时和高可靠性,有适应各种主流CPU的版本,非常适合仪器仪表的高级嵌入式计算机系统应用。目前主要有Integrated System公司的PSOS、Microtec Research公司的VRTX、Wind River System公司的Vxworks、QNX Software Systems Ltd公司的QNX等。许多颇具实力的软件公司也加入了这一行列,推出Windows CE、Hopen OS、嵌入Linux、OS-9等。 (1) 评价一个RTOS一般可以从任务调度机制、内存管理、任务通讯、最小内存开销、任务切换时间、最大中断禁止时间等几个方面来衡量。 (2) 在选择软件开发平台时,结合开发目标和系统功能,还应该注意以下几个方面: ① 实时操作系统的开发环境。所用编程语言的类型(以C或C++等通用语言为佳);提供的开发工具包是否完备等。② 实时操作系统对图形功能的支持,提供的图形用户接口是否满足需求。③ 实时操作系统对网络功能、通信功能的支持。这对于实现仪器仪表网络化目标十分重要。 4 应用实例 兰州炼化公司自动化研究院为了研制新型质量仪表和现有仪表的升级换代,综合分析了油品质量指标分析仪、光谱仪、工业色谱仪、近红外分析仪,并充分考虑现实需求和采用专门设计的正压防爆装置对控制器的需求,提出了开发高级通用控制系统。设计方案如下: (1) 质量仪表通用控制器主要用于为分析器实现分析提供需要的电气条件,并采集数据、记录、输出结果。主要功能有:① 测量 包括温度、压力、流量等的测量;② 控制 要求控制器能灵活实现各种控制功能以应用于特定仪表;③ 输入与输出 多功能、智能化在线质量仪表必须能够接收控制中心发出的指令,以多种方式向控制中心输出状态信息及检测结果,并即时显示图形。 综合分析质量仪表主要性能指标的要求,提出通用控制器的技术指标,见表1。
表1


图1 通用控制器硬件结构图
(2) 通用控制系统主要由嵌入式计算机系统、IO板和所需的信号调理板、功率驱动等信号功率板组成(见图1)。由于开发周期及开发成本的限制,嵌入式计算机系统主板选用商业化嵌入式计算机。针对仪表的功能,自行设计部分信号调理板、功率驱动等专用接口板。 根据技术指标的要求,嵌入式计算机主要配置如下:主板:研华PCA6145L;CPU:INTEL / AMD 486;内存:8M / 16M;机箱:研华MBPC-641;数采板:研华PCL812PG;DOC2000:16M或以上;显示器:640 x 480 VGA液晶平板显示器。经过比较,控制系统软件采用QNX实时嵌入式操作系统作为软件开发平台,以充分利用其体积小,实时性好的特点提高系统可靠性。

图2 通用控制器软件结构框图
如图2所示,通用控制器软件由4个部分组成。① 主程序是唯一运行在图形界面的程序,用PHAB开发完成,主要任务是显示分析结果、仪表状态及参数,辅助输入仪表运行参数、显示操作提示,并完成系统运行管理,是其它几类程序的调度程序和管理程序;② 仪表IO服务程序用以完成系统的低级IO操作的执行,后台运行,直接接受主程序的管理和调度;③ 面板键盘服务程序以中断方式管理仪表面板键盘,地位和运行方式类似IO服务器程序;④ 针对个别仪表的特殊功能,设计专用服务程序,以后台方式运行,通过进程间通讯直接接受主程序的管理和调度。由于通用控制器针对的是质量仪表系列,故界面的总体风格应该保持一致;其界面和控制程序必须模块化,且具有一定的组态功能。 (3) 设计完成的在线质量仪表通用控制系统具有智能化的优点,并且较灵活。采用通用控制系统开发新型在线质量仪表时,只需根据仪表的特殊硬件接口要求制作相应的信号接口板,在通用控制器软件提供的接口函数中编制仪表的特殊运行逻辑,并设置显示变量,即可完成一种仪表控制器的设计。 这类新型仪表具有界面美观、操作简便、功能多样的特点,并且可以适应现场控制系统对智能仪表的需求。 |