《基于ARM的嵌入式系统在机器人控制系统中的应用.docx》由会员分享,可在线阅读,更多相关《基于ARM的嵌入式系统在机器人控制系统中的应用.docx(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于ARM的嵌入式系统在机器人控制系统中的应用基于ARM的嵌入式系统在机器人控制系统中的应用ronggang导语:据当代机器人技术的开展特点,提出了一种基于ARM、DSP和arm-linux的嵌入式机器人控制系统的设计方法,介绍了嵌入式系统,给出了功能设计、构造设计、硬件设计、软件设计的控制系统的设计经过摘要:根据当代机器人技术的开展特点,提出了一种基于ARMAdvancedRISCMicroprocessor、DSP和arm-linux的嵌入式机器人控制系统的设计方法,介绍了嵌入式系统,给出了功能设计、构造设计、硬件设计、软件设计的控制系统的设计经过,并分别从上述各方面对控制系统的通用性进展
2、了讨论。层次化的体系构造、模块化的硬件、构造化的软件使得设计出的机器人控制系统经过简单的硬件调整和软件定制,就能适用于多种机器人。通过七自由度串联机器人抓取工件的实例验证,该机器人控制系统性能稳定、具有一定的通用性。关键词:嵌入式系统,控制系统,ARM,机器人随着科学技术的开展,机器人将在太空探测、救灾防爆、海洋开发等领域有着广阔的应用前景,因此其开展正在成为国内外研究人员关注的焦点1,2,3。分析上述各种用处的机器人,其构成不过乎机构此题和控制系统两大局部。机构本体在表达机器人特色的同时,也决定了其必然是无人系统,在恶劣的环境下,机器人要具备一定的自主才能。这就要求机器人有一定的“判定才能和
3、“想法,需要复杂的算法,包括运动算法和形式识别算法。一般的微处理器是无法完成这项任务,而上述各种机器人又无法使用计算机控制作业,32位微处理器和嵌入式操纵系统的出现解决了此问题。嵌入式系统是指以应用为核心、以计算机技术为根底、软硬件可裁剪,以及适应应用系统对功能、可靠性、本钱、体积和功耗严格要求的专用计算机系统4,5,6,7。作为嵌入式系统的核心,嵌入式微处理器为8位、16位或者32微处理器。但由于8位和16位微处理器的运行速度、寻址才能和功耗等问题,已较难知足相对复杂的嵌入式应用场合。在32位嵌入式应用领域内,ARMAdvancedRISCMachine获得了宏大的成功8,9,10,11。A
4、RM微处理器一般具有体积小、低功耗、低本钱、高性能的特点;例如,由于它有大量的使用存放器,指令执行速度更快,于是大多数数据操纵都在存放器中完成;它的寻址方式灵敏简单,执行效率高,指令长度固定等。在ARM中,可以嵌入嵌入式操纵系统,在此系统上可完成复杂的算法,可以代替PC机完成各种任务。本文首先介绍了嵌入式系统的构造,然后介绍怎样利用嵌入式操纵系统和ARM、DSP构建机器人控制系统,最后讲明使用此控制系统控制7自由度串联机器人12。2嵌入式系统的构造嵌入式系统主要由嵌入式操纵系统和承载操纵系统的硬件组成。2.1嵌入式操纵系统嵌入式操纵系统是嵌入式系统的控制中心,主要用于对系统的信息处理部件和用户
5、交互界面加以控制。2.1.1嵌入式操纵系统的实时性在嵌入式领域中,实时是一个非常重要的概念。实时系统是指在确定的时间内完成规定功能,并能对外部异步事件作出正确响应的计算机系统。实时系统的核心是必须在确定的时间内执行完一项预先定义的操纵,否那么将引起性能下降甚至系统崩溃等严重后果。需要讲明的是,实时系统并不是讲系统的响应和处理速度非常快,实时系统的实时性的实现需要软硬件的配合来完成。首先应该保证硬件的处理速度知足实时性的要求,同时相对软件而言,实时性表达在组成软件系统的各个任务的执行时限。在嵌入式系统中,评价一个实时系统的性能要从任务调度功能、内存治理功能、最小内存开销、任务切换时间、最大中断制
6、止时间等方面考虑。2.1.2嵌入式系统中的软件嵌入式系统的软件局部,具有以下特点:1嵌入式软件的开发与硬件严密相关。由于嵌入式软件的开发式针对详细硬件平台进展的,它往往牵涉硬件驱动方面的一些软硬结合局部。2软件代码要求高效率和高可靠性。嵌入式系统中软件运行空间有限,内存空间非常珍贵,在软件的编程经过中需时刻考虑软件的运行效率。在实时系统中,处理器必须严格处理异步发生的各种任务。此外,嵌入式软件系统还应有异常处理、快速复位等特点。3软件一般固化在FLASH或者ROM中。为了进步执行速度和系统的可靠性,同时缩短系统复位时间,一般在嵌入式软件调试完毕后,会下载固化到目的板中的FLASH或者ROM中。
7、2.1.3嵌入式系统的应用嵌入式系统产品遍布人们的日常生活,从手机、PDA到家中的空调、冰箱,从小汽车到波音飞机,甚至武器库中的巡航导弹,都有它的踪迹。嵌入式产品已经在很多领域得到广泛的使用,如国防、工业控制、通讯、办公自动化和消费电子领域等。2.2嵌入式系统的硬件系统与普通的PC硬件相比,嵌入式系统的硬件系统具有以下特性:1体积小,集成效率高。嵌入式系统去除了冗余,力争用最小的系统完成目的功能。2面向特定应用。3低功耗,电磁兼容性好,能在恶劣环境下工作,死机时可以快速重启。嵌入式系统硬件在价格、功能、体积、重量、能耗等方面都有严格的限制。3系统功能与设计3.1系统功能本着既能知足多种类型机器
8、人的实际需要,又尽量节约资源的原那么,控制系统提供的功能如下:1上位机监控.响应控制台发出的指令.向下位机发送数据和命令;2通讯总线.现场总线,用于和其他控制器信息交互;3传感器集成.直接集成姿态、位置、深度、高度、速度、加速度等传感器,或预留接口;4脉宽调制.用于调整电机的速度和位置,进而控制机器人的速度和姿态等;5A/D收集.监视工作电压、电流、压力等A/D量,用于系统控制或者状态记录;6I/O控制.用于对外围开关量的监控;7数据记录.用于设定参数的存储、运动道路的定制或者相关监控数据的记录;8通讯协议.便于控制器之间及机器人与上位机之间信息可靠、高效传递;9信息处理.各种传感器输出数据的
9、提取、处理及多传感器信息交融;10控制算法.下位计算法主要是前馈算法和PID算法,上位机算法视详细的机器人而定。3.2系统设计此系统的设计主要是为了可以知足多种机器人控制需求,同时兼顾机器人对控制器体积、重量、功耗等敏感的特性。上位机CPU选用Samsung公司的基于ARM920T5,6核适用于实时环境的低功耗、16/32bit、高性能RISC微控制器S3C2410,它的主频为266MHz;操纵系统选用源码公开、专为ARM设计的、可靠性高的实时、多任务内核arm-Linux;下位机选用Ti公司的具有低功耗、灵敏指令集、内部操纵灵敏、高速的运算才能等性能的DSP-TMS320LF2407。3.2
10、.1体系构造基于ARM、DSP和arm-Linux的机器人控制系统硬件构造图如图1所示。图1机器人控制器硬件构造上位机主要解决算法问题,处理各个传感器送回的信号,根据各个信号,向下位机发送控制命令,同时,上位机接收来自下位机的信号,判定下位机的状态,以便发送相应的数据和命令。下位机主要是对电机的控制,根据上位机发送过来的命令和数据,结合前馈算法和PID算法,对电机进展速度、位置等控制。不同类型的机器人,其主要区别在于上位机的算法编写,上位机的算法与详细的机器人所要求完成的任务有关。在一个机器人系统中,只需一个上位机,作为机器人的“大脑;下位机的个数那么根据机器人需要而定。3.2.2硬件设计硬件
11、设计的原那么是:部件模块化,接口标准化,互换性、扩展性好,可靠性高。硬件可划分为CPU模块、外设模块。两个模块层可叠在一起,机械上可拆分,互相之间有接口相连,便于互换和维护。1CPU模块:上位机包括S3C2410、SDRAM、NANDFLASH、晶振等系统运行的根本要素;下位机包括TMS320LF2407、SDRAM、晶振等系统运行的根本要素。2外设模块:上位机包括电源接口、485总线接口、A/D接口、I/O接口、PWM接口、下位机通讯接口、USBHOST接口、USBSLAVE接口、LCD接口等,同时它也是传感器模块和CPU模块连接的桥梁;下位机包括电源接口、485总线接口、I/O接口、PWM
12、接口、光电编码器接口、上位机通讯接口、A/D接口,FLASH等。S3C2410芯片本身集成了一些通用的外围器件,所以像A/D、USB、I/O等通道直接利用其资源。片内的2个UART分别用作485总线及与下位机通讯接口,这两个串口属于对外连接口,为了防止引入外界干扰,用高速光隔HCPL2630进展隔离。TMS320LF2407芯片本身也集成了一些通用的外围器件,可直接利用PWM、A/D、I/O、光电编码器接口等资源。片内UART用作与上位机通讯接口,也用了光电隔离。针对不同的机器人,硬件局部只需做简单的接口调整或者传感器增删。控制器集成尺寸:上位机模块为60mm45mm35mm,总功耗约为5V2
13、00mA,其中CPU模块功耗尽为3.3V30mA;下位机模块尺寸60mm40mm30mm,功耗也是很低的,而一般的PC104总线CPU模块功耗约为5V1000mA。3.2.3软件设计软件设计的根本原那么是:软件构造化,驱动标准化,系统可定制13。软件设计的主要工作是操纵系统的移植、驱动程序的设计、常用API函数的封装、多任务的分解与设计、上位机算法的编写和下位机驱动程序与算法的编写等。其中关键在于上下位机的同步性,当多个控制器一起工作时,同步问题更加重要了。上位机把数据传送给下位机,先把控制器的标号给传下去,只有与此号码相对应模块才能接收下面的数据,当下位机接收到信号后,需要向上位机发送一个确
14、认信号。需要同步多个处理器,分别占用总线。为了使多机通讯同步,不发生信号冲突,在设计硬件时,每个微处理器使用了一个I/O口,并把每个处理器的I/O口用线连在一起。当一个控制器接收或者发送数据时,向其它处理器发送一个高信号,来讲明自己正在使用总线。承受到该信号的处理器得知总线正在忙,不再发送数据,可防止总线冲突。事实证实这种方法是可行的,不会发生总线冲突,多处理器工作时同步性很好。本软件中传感器数据的读取、校验、提取、处理均按照NMEA0183标准进展,便于系统晋级。系统可定制主要是考虑到针对不同机器人其上层软件不尽一样。4实验研究应用于7自由度串联机器人为了验证该机器人控制系统的性能,设计了场
15、景试验:7自由度串联机器人首先抓取第一工件放在加工台上;把其它两个工件依次前移;最后把加工完的工件放在最后的位置上,整个经过如图6图9所示。align=center /align机器人完成这个任务所要经过的经过:机器人抓取第一个工件,并把它放在加工台上,如图2图3所示;机器人把第2个工件移到第一个位置,预备进展加工,如图4图5所示;把第三个工件移到第二个位置上,图6图7所示;机器人抓取加工好的工件,并把它放在第三个位置上,如图8图9所示。这样一个循环周期便完成了一个工件的加工,可使后面的工件依次得到加工。在该控制系统内,上位机S3C2410首次算好1000个点,通过RS485总线传送给每个下位
16、机控制器并把这些点存于下位机FLASH中。每个下位机运行各自的点,每当运行的点数超过500时,便向上位机要500个数据。这样节省了上下位机交互的时间,改善了串联机器人的同步性,进步了跟踪精度。另外,由于ARM9的存在,不需要计算机的控制。上述7自由度串联机器人的每个动作都是“自主完成的,即没有计算机的控制。通过实验证实,该控制系统稳定性好,实时性,可以在恶劣的环境下工作,通用性较强。本文中设计的嵌入式机器人控制系统在七自由度串联机器人上的应用获得了一定成效,实时性、可靠性、通用性均有良好的表现,其体积小、功耗低,实际情况比拟令人满足;此控制系统在上位机ARM中写控制算法,通过总线方式对下位机D
17、SP进展控制,而不需要计算机的控制,可独立自主的判定怎样动作。目前,该嵌入式控制系统的性能上还存在着众多缺乏,主要表如今控制器中的控制算法的设计和功能的完善上,这也是今后努力的方向。本文的创新点是机器人的自主性质,即机器人有自己的“判定才能,不须计算机控制。1RichardM.Murray,LiZexiang,S.ShankerSastry.AMathematicalIntroductiontoRoboticManipulationM.America:CRCPress,1994.2WeihaiChen,GuilinYang,EdwinHuiLeongHo.Interactive-MotionC
18、ontrolofModularReconfigurableManipulatorsJ.Proceedingsofthe2003IEEE/RSJIntl.ConferenceonIntelligentRobotsandSystemsLasVegas,Nevada.October2003.3L.Romdhance.DesignandanalysisofahybridserialparallelmanipulatorJ.MechanismandMachineTheory.1999,34:1037-1055.4KarimYaghmour.BuildingEmbeddedLinuxSystemsM.Am
19、erica:OReilly,2004.5MichaelBarr.ProgrammingEmbeddedSystemsinCandC+M.America:OReilly,2001.6JohnCatsoulis.DesigningEmbeddedHardwareM.America:OReilly,2001.7严丽平,曾辉,宋凯.嵌入式智能家庭网关的研究与设计J.微计算机信息.2005,2:1416.8孙天泽,袁文菊,张海峰.嵌入式设计及LINUX驱动开发指南基于ARM9处理器M.北京:电子工业出版社,2005.9陈渝,李明,杨晔.源码开放的嵌入式系统软件分析与理论基于SKYEYE和ARM开发平台M.北京:北京航空航天大学出版社,2004.10周立功.ARM微控制器根底与理论M.北京:北京航空航天大学出版社,2003.11李驹光,聂雪媛,江泽明.ARM应用系统开发详解.M北京:清华大学出版社,2003.12刘和平,王维俊,江渝.TMS320LF240xDSPC语言开发应用M.北京:北京航空航天大学出版社.2003.13王松,李新军,梁建宏.微小型机器人嵌入式自驾仪设计J.北京航空航天大学学报.2005,317:775-779