嵌入式系统在机电控制中的应用
扫描二维码
随时随地手机看文章
本文介绍了嵌入式系统及其特点,讨论了嵌入式微处理器、软硬件开发平台及嵌入式实时操作系统的选择。以stewart平台伺服控制器为例介绍了嵌入式系统在机电控制系统中的应用及实现方法,通过对典型信号的跟踪结果表明系统设计是成功的。 引言 美国著名未来学家尼葛洛庞帝1999年1月访华时预言,4~5年后嵌入式智能(电脑)工具将是pc和因特网之后最伟大的发明。事实正如尼葛洛庞帝先生所预料的那样,嵌入式系统及其应用已成为当前研究和应用的热点,国际上大牌公司如intel、microsoft(微软)等纷纷投入巨资,分别推出了具有技术优势的基于xsale框架结构的嵌入式硬件平台和windows ce 4.0软件平台,为嵌入式系统的发展注入了强大的活力。今天,嵌入式系统已渗透到日常生活的方方面面,带来的工业年产值已超过1万亿美元,在工业控制、消费电子等领域的应用范围不断扩大,而机电控制是嵌入式系统技术的一个典型应用,采用嵌入式的机器人、sony 机器狗及1997年美国发射的“索纳杰”火星车就是经典的实例。就嵌入式系统的组成、特点,开发所采用的主流软件平台、硬件平台作详细的介绍,并通过stewart平台专用伺服控制器的设计,介绍了嵌入式技术在机电控制系统中的应用及具体实现。? 1 嵌入式系统 嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。由于嵌入式系统具有微内核、系统精简、高实时性、专用性强等特点,因此非常适合应用于机电控制系统。有别于传统的控制系统,嵌入式系统由嵌入式微处理器/微控制器、存储器、输入输出(i/o)和软件组成,这里的软件是指基于rtos开发的且和rtos密切结合的应用软件。这种操作系统和应用软件紧密结合为一体正是嵌入式系统和基于windows应用系统的主要差别所在,也是其可靠性和实时性的重要保证。? 2 嵌入式微处理器 目前有许多款嵌入式微处理器,如intel公司的strongarm、xscale,atmel的at91系列,ibm的powerpc,motorola的68k,三星的s3c4x系列等,其中基于英国arm公司的arm内核的嵌入式微处理器是目前的主流。arm是典型的32位risc芯片——不论是在pda、stb、dvd等消费类电子产品中,还是在机电、gps、航空、勘探、测量等军方产品中都得到了广泛的应用。越来越多的芯片厂商早已看好arm的前景,如intel、ns、ateml、samsung、philips、nec、cirruslogic等全球著名公司都有相应的基于arm处理器的产品。arm处理器的主要特点是:小体积、低功耗、低成本、高性能、16/32位双指令集、全球众多的合作伙伴。事实上arm已成为嵌入式解决方案的risc标准,成为业界的龙头。 文中采用atmel的at91x40[2],设计了用于stewart平台的伺服控制器。at91系列微控制器是基于arm7tdmi嵌入式微处理器的16/32位控制器,用高密度的16位指令实现了高效的32位risc结构,非常适合实时控制应用。atmel公司采用高密度cmos技术,通过片上集成arm7tdmi和大量的flash、片内ram以及各种外围功能模块使其成为强有力的微控制器,为许多需要加强运算的嵌入式应用提供了高度的灵活性和高性价比的解决方案。at91x40的主要片上功能:
·带8kb缓存的arm7tdmi arm thumbcpu核;
·完全可编程的外部总线接口,支持64m寻址空间;
·8优先级、可单独屏蔽的向量中断控制器,4个外部中断源;
·3通道16位定时、计数器;
·5个pwm定时器及1个内部定时器;
·可编程的看门狗定时器;
·两个独立的usart;
·先进的省电特性。? 3 嵌入式rtos的选择 目前嵌入式实时操作系统rtos分为两类:商用型和免费型。其中商用型典型的rtos有:windows ce 4.0(适合于消费类电子产品);vxwork(适合于网络、交换设备等);palm os(适合于pad产品)。免费型rtos有linux(包括ulinux和rt-linux)和μc/osii。综合考虑,这里选择μc/osii作为本系统的rtos。 μc/osii(即μc/os的最新版)主要特点如下:
(1)公开源码:是为数不多的公开源码的rtos,给二次开发和移植提供了可能;
(2)可移植性强:μc/osii绝大多数源码用ansi c编写,少量用汇编语言编写,具有较强的移植性;
(3)可固化:微小内核,可以和应用程序一起固化到flashrom中;
(4)可裁剪:通过条件编译即可实现裁剪,十分方便;
(5)占先式:是实时性的重要保证;
(6)多任务:多达64个任务管理,可以满足大多数控制任务;
(7)可确定性:全部的函数调用与服务执行的时间是可知的;
(8)系统服务:提供众多的系统服务,如:消息队列、信号量、内存管理等。
(9)中断管理:多达255层的中断管理。
(10)稳定性和可靠性:自1992年以来已经有好几百个商业应用。其中nationaloptronics公司成功将μc/os用于三轴运动控制卡中,该三轴运动控