微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 机器人技术 > 基于ARM的嵌入式服务机器人控制器的研究

基于ARM的嵌入式服务机器人控制器的研究

时间:11-23 来源:互联网 点击:
1 引言

随着人口老龄化进程的加快,更多老年人,尤其是地震和疾病致残的残疾人,都需要照顾。基于此,这里提出一种基于ARM的嵌入式服务机器人控制系统设计。该服务机器人的控制系统是机器人的神经中枢,因而其设计是机器人研究的核心。该控制系统通常以MCU、 DSP等为核心,采用上、下位机二级分布式结构。其中上位机一般为PC机,下位机为单片机或DSP等微控制器。但随着移动机器人的智能化,控制方法的发展,所需计算量增大,一般的单片机等处理器很难完成控制要求。而基于ARM的嵌入式服务机器人的控制器采用分层与模块化结构,充分体现可扩展性、可移植性的设计原则.同时具有低成本、低功耗、体积小巧、可靠性高、智能化高以及通用性等特点。

2 系统整体结构设计

图1为嵌入式控制系统的软硬件层次结构。



嵌入式系统是以应用为中心,以计算机技术为基础,软、硬件可剪裁,适用于应用系统,对功能、可靠性、成本、体积,功耗要求严格的专用计算机系统。嵌入式系统总体可划分为硬件和软件两部分。硬件由微处理器和外围的接口电路组成,同时还包括传感器及驱动器接口和被控对象(机械装置);而软件一般由实时操作系统及其运行的应用软件构成。其应用软件的功能层由基于RTOS的应用程序组成,用来控制被控对象。

3 系统硬件设计

服务机器人控制系统的硬件平台设计至关重要。首先它是用户控制逻辑的具体执行者,服务机器人的各种控制功能必须通过硬件实现;其次它也是实时控制系统软件移植和运行的硬件环境。这里采用部件模块化,接口标准化,互换性、扩展性好,可靠性高的硬件设计原则。
服务机器人控制系统主要用于实现控制服务机器人的导航、启动、停车、运行控制、路径规划、安全监控、远程控制计算机通讯及语音识别等功能。该控制系统主要由主控、导引、驱动、通讯、安全与辅助、语音识别、液晶触摸屏以及电源管理等单元组成。图2为其功能结构框图。



嵌入式处理器是整个硬件系统的核心元件,其性能好坏直接决定整个系统的运行效果,所提供功能的强弱直接决定嵌入式应用的适应范围和开发复杂度。嵌入式处理器一般具备以下特点:支持实时多任务操作系统;具有强存储区保护功能;处理器结构可扩展;功耗低。图3为基于ARM9的嵌入式系统的服务机器从主控制器模块结构。



选用三星公司ARM9系列的S3C2410处理器作为服务机器人的控制CPU,在嵌入式系统μC/OS-II下实现机器人控制。S3C2410处理器采用 ARM920T内核,5级流水线指令结构,片内锁相环,内部时钟可达200 MHz,因此可用来进行复杂控制算法,提高控制精度。S3C2410有117个I/O口和24个外部中断源,内部具有丰富的接口控制器,如:USB控制器、DMA控制器、UART控制器、I2C控制器等,这样可简化外围电路,同时其内部时钟可达200 MHz,高性能指令集及可与C语言交叉汇编使其能完成复杂运算,提高服务机器人控制的实时性。

ARM处理器模块通过两个RS-232串口分别与传感器模块、伺服控制模块连接,RS-232串口均丁作在中断模式下,以保证系统的实时性。伺服控制模块与传感器模块均基于TI公司的TMS320LF2407型DSP,伺服模块可同时控制4路直流伺服电机,传感器模块可接24路超声传感器和24路红外传感器,模块在设计时充分考虑到降低成本和功耗,同时注重其实时性和可靠性。

人机交互模块采用液晶(LCD)触摸屏及语音交互接口。S3C2410内置有液晶控制器,可以支持最大256 K色的TFT彩色液晶屏、最大4 K色的STN彩色液晶屏,这里选用LQ080V3DG01型8英寸640x480 TFT液晶屏,该液晶屏上配有4线电阻式触摸屏,用于检测屏幕触摸输入信息,有利于提高人机交互的友好性;而语音识别南凌阳公司的SPCE061A完成,该器件是一个16位结构的高集成的微控制器,内部集成有MCU、A/D转换器、D/A转换器、RAM、ROM。具有较高运算速度的16x16位的乘法语音和内积运算指令,CPU时钟最高可达49 MHz。系统支持10个中断向量及14个中断源,具有较强的中断处理能力,适合实时语音处理。具有双通道10位A/D转换器方式的音频输出功能,配置带自动增益控制功能(AGC)的麦克风输入方式,为语音处理带来极大便利。图4为语音识别模块硬件结构。



4 系统软件设计

软件设计的基本原则是:软件结构化、驱动标准化、系统可定制。服务机器人的控制器关键要保证系统的实时性。采用μC/OS-II实时操作系统,其具有结构简单、容易移植、源代码公开等优点。使用μC/OS-II实时操作系统开发服务机器人控制软件就是将整个控制软件的功能划分为若干任务,分别加以实现,并以任务问通信方式实现各个任务间的逻辑关系。整个软件控制体系结构如图5所示。



Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top