首页 基于ARM的嵌入式移动机器人控制系统的设计

基于ARM的嵌入式移动机器人控制系统的设计

举报
开通vip

基于ARM的嵌入式移动机器人控制系统的设计 《工业控制计算机》2008年21卷第7期 *国家自然科学基金项目(50407017)和安徽省教育厅自然科学基金项目(2006KJ019A、2007KJ052A)共同资助 自主式机器人是当前机器人研究中的一个热点,控制器是 机器人系统的核心。随着移动机器人的智能化,控制方法的发 展,所需要的计算量加大,一般的单片机等处理器很难完成控制 的要求。随着电子技术的不断发展,出现了DSP、ARM等高性能 微处理器,能够进行高性能的运算和控制,在微小型自主机器人 中得到广泛的应用。现有机器人系统在硬件和软件开发...

基于ARM的嵌入式移动机器人控制系统的设计
《工业控制计算机》2008年21卷第7期 *国家自然科学基金项目(50407017)和安徽省教育厅自然科学基金项目(2006KJ019A、2007KJ052A)共同资助 自主式机器人是当前机器人研究中的一个热点,控制器是 机器人系统的核心。随着移动机器人的智能化,控制方法的发 展,所需要的计算量加大,一般的单片机等处理器很难完成控制 的要求。随着电子技术的不断发展,出现了DSP、ARM等高性能 微处理器,能够进行高性能的运算和控制,在微小型自主机器人 中得到广泛的应用。现有机器人系统在硬件和软件开发方面虽 然已经逐渐趋于成熟,但依然存在一些问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 。如:实时性差,开放 性差等。早期的机器人小车系统大多数采用 MCS- 52或者 96 系列的单片机作为主控 CUP,存在一些问题,如计算负担过重, 运算速度过慢,控制精度不高,元件过多,经常出现故障等。 本设计选用三星公司的 ARM9系列的 S3C2410处理器作 为移动机器人小车的控制 CPU,并在嵌入式系统 Windows CE 下实现机器人的控制。S3C2410处理器采用的是 ARM920T内 核,5级流水线指令结构,片内锁相环,内部时钟可达到 200MHz,因此可以用来进行复杂 的控制算法以提高控制精度。本文 将介绍基于 S3C2410和 Windows CE系统下移动机器人小车的硬件 和软件设计,框图见图1。该移动机 器人系统具有模块化、易扩展、可 移植、实时性强、可靠性高等优点。 1 硬件的设计 移动机器人小车系统一般由微控制器、电机驱动单元、距离 检测、通讯模块等组成。其系统框图如图 2所示。 微控制器主要处理各个传感器的信息,完成移动机器人控 制算法的运算和决策。电机驱动单元实现移动机器人两轮的驱 动功能。距离检测单元检测移动机器人和障碍物的距离。通讯单 元实现移动机器人与上位机或者多机器人间的通信。 1.1 CPU控制单元 控制器硬件以 S3C2410处理器为核心,使用 2片 SDRAM 组成64MB动态存储器,1片 64MB的 Flash存储器,LCD触摸 屏及电源管理芯片。 S3C2410有 117个 I/O 口和 24个外部中断源,内部 具有丰富的接口控制器如: USB控制器、DMA控制器、 UART控制器、IIC控制器等, 可以简化外围电路,同时其内 部时钟可达到 200MHz,高性 能的指令集以及可以和 C语 言交叉汇编,可以完成复杂的 运算,提高移动机器人控制的 实时性。 1.2电机驱动单元 电机驱动单元主要完成移动机器人动力系统的驱动功能, 能够较好地实现移动机器人的调速及启停功能,从而到达移动 机器人的姿态调整的控制功能。对于直流无刷电机的驱动及控 制,采用MC33035和MC33039来实现直流无刷电机的驱动。 MC33035包含了开环三相和四相电机控制所需要的全部 有效功能,有良好的整流序列的转子译码器、可提供传感器电源 的带温度补偿的参考电压、频率可编程的锯齿波振荡器和可以 驱动大功率 MOSFET的驱动器组成。MC33035还有欠压锁定, 可选时间延迟锁存、内部关断及可接入微处理器的错误指示等 保护功能。 MC33039是高性能闭环速度控制适配器,专门设计为用于 无刷直流电机控制系统。实现允许精确的速度调整而不需要磁 性或光学速度计。直流无刷电机的驱动电路图 3所示。 MC33035的 Brake(制动)、F/R(正反转)、OE(使能)等引 脚分别接 S3C2410的 GPIO口,由 S3C2410来完成电动机的 启动、正反转、制动等功能。MC33039是根据电动机的三个霍尔 元件脉冲信号,通过逻辑关系转换成能够反应速度的脉冲信号, 并由 fout口输出,该端口连接到 S3C2410的计数器,S3C2410 通过定期读取计数器的值来计算电动机的转速。 电机旋转方向的检测电路是把两路霍尔元件经过一个 D 基于ARM的嵌入式移动机器人控制系统的设计* 张捍东 张 彬 岑豫皖 (安徽工业大学电气信息学院,安徽 马鞍山 243002) Embedded Mobile Robot Control System Based on ARM 摘 要 讨论了基于S3C2410微处理器的移动机器人小车控制系统的硬件设计,以及在嵌入式操作系统 Windows CE下的软 件设计。具体分析了各个模块的设计原理、驱动和应用软件的设计。该移动机器人系统具有模块化、易扩展、可移植、硬件体 积小、功耗低、实时性强、可靠性高等优点。 关键词:移动机器人,S3C2410,嵌入式 Abstract The mobile robot control system based on the microprocessor S3C2410 is introduced in this paper.It includes the hard- ware design and the software design,which based on the Windows CE embedded operate system.The principle of various specific hardware modules and the design of driver and the application software are introduced specifically.The mobile robot system has many advantages,such as modular,extensible,portable,smaller hardware,low power consumption,real- time,and high reliability. Keywords:mobile robot,S3C2410,embedded system 图1 移动机器人系统图 图2 嵌入式机器人小车 的硬件系统框图 31 基于ARM的嵌入式移动机器人控制系统的设计 触发器,这样根据 A、B的相位差 来判断电机的旋转方向,如图 4 所示。当电机正传时,A相脉冲超 前 B相脉冲,则 D触发器输出 1,当电机反转时,A相脉冲滞后 B相脉冲,则D触发器输出0。 1.3测距单元 测距单主要是采用超声波传感器来检测移动机器人周围障 碍物的情况,机器人根据此信息作出相应的动作。 在选取超声波传感器来检测距离时,考虑到温度对超声波 测距有一定的影响,因此,采用 DS18B20温度传感器进行周围环境 温度的检测,对超声波传感器信号进 行温度补偿。 超声波测距单元主要有三路,分 别检测前方,左右两方与障碍物的距 离。超声波传感器选用的是 UCM40 的压电陶瓷传感器,它的工作电压是 40kHz的脉冲信号。其发射电路和接 受电路如图5、图6所示。 S3C2410向超声波发射模块发送 40KHz的脉冲信号, UCM40T发射出40KHz的超声波信号,当检测到障碍物后,反 射回来的超声波信号被 UCM40R接受到,并通过信号的处理 经LM567进行解码处理,并发出脉冲信号,使 S3C2410产生中 断,通过发射和接收的时间差计算出障碍物的距离。 温度传感器 DS18B20是 DALLAS公司生产的一线式数字 温度传感器,它的温度测量范围为-55~+125℃,可编程设置为 9~12的A/D转换精度,测温分辨率可达0.0625℃,被测温度用 符号扩展的16位数字量方式串行输出。 1.4通信单元 通信模块采用的是 PTR2000无线通信模块,它的显著特点 是所需外围元件少,因而设计非常方便。该模板块在内部集成了 高频接收、PLL合成、FSK调制/解调、参量放大、功率放大、频道 切换等功能。模块连接到 S3C2410的串口 2,可以直接实现数 据的传输。另一 PTR2000模块通过 RS-232模块连接到 PC 机。可以实现机器人上位机的通信,也可以实现机器人与机器人 间的通信。 2 软件设计 该机器人小车的软件控制平台是嵌入式 WindowsCE系 统,采用 EVC软件来实现应用程序的编写。对于该系统的软件 设计主要包括:底层驱动的设计和应用软件的设计。 2.1底层驱动的设计 底层驱动程序主要是连接应用程序和硬件的一个接口,它 将应用程序的指令转变为对相应的硬件的操作,便于应用程序 方便地控制硬件,而且该驱动程序可以被多个应用程序调用。 WindowsCE的驱动程序可分为本机设备驱动、流驱动、混合型 驱动。本机器人系统采用的是流驱动。流驱动是在系统启动时或 者启动后的任何时候由设备管理器动态加载。通常它们以 DLL 动态链接库的形式存在,该移动机器人驱动的编写步骤如下: 1)在Platform Build环境下编写,采用 DrvWiz向导来完成 驱动的框架结构,包括:代表设备的文件名前缀(移动机器人的 设备名前缀取为:RBT)、实现驱动的各个入口点、生成 RBT.DEF 文件。驱动入口点是指提供设备管理器的标准文件I/O接口。在 该机器人系统中,入口点包括:RBT_init、RBT_deinit、RBT_Read、 RBT_Write、RBT_IOControl等。 2)对移动机器人系统的各个硬件的操作程序都是在上述各 个入口点的函数中实现。因此,在上述生成的入口点的函数中编 写相应的驱动代码。如:硬件的初始化在RBT_init中实现,对硬 件的操作的函数在RBT_IOControl中编写。 3)编写 RBT.DEF文件,在 RBT.DEF定义了 DLL要导出的 接口集,有了该文件,应用软件就可以根据该文件,了解驱动程 序的接口程序及参数,这样就会更方便地访问驱动的各个入口 点,来实现对硬件的操作。 4)在完成上述过程后,再在注册表中建立驱动程序的入口 点,这样设备管理器才能够识别和管理这个驱动,便于系统对该 驱动的访问。 在嵌入式系统中,大多数采用的是中断方式来调用相应的 线程,因此,在编写驱动过程中,要设置好对硬件操作函数所对 应的中断号以及相对应的中断服务程序,以便系统做出正确的 中断响应。 在编写驱动过程中,对硬件操作时,由于 WindowsCE系 统不允许直接对硬件操作,这样就需要开辟内存空间并建立虚 拟地址和物理地址的映射关系,建立好这种映射关系后,对虚拟 地址的访问等于对物理地址的访问,也就是实现对硬件的操作。 因此,在编写驱动中最重要的是设置好中断和中断映射表及正 确地建立物理地址与虚拟地址的映射关系。这样,系统才能够根 据应用程序的指令调用相关的线程,从而实现对硬件的操作。 2.2应用软件的设计 应用软件的设计主要是采用EVC软件来实现。EVC是针对 WindowsCE系统的可视化开发工具,它是 VisualC++的子 图3 直流无刷电机的驱动电路 图4 电机转向检测电路 图5 超声波发射模块 图6 超声波接收模块 32 《工业控制计算机》2008年21卷第7期 (上接第28页) 过程控制软件是以连续控制、顺序控制、数据采集和优化控 制为对象,经过贝利的高度升华而形成的模块化的软件结构(功 能码)。功能码是一种标准子程序,存放在 MFP相关的 ROM 内。为了在 MFP中建立起适应性强的控制策略,在 NVRAM中 准备了足够容量的功能块(FB)空间来存放用户组态。实际上功 能块就是描述组态的数据库。在功能码内存放有功能算法和有 关参数,并且能够一起调入功能块来实现有关的过程控制。 3.2Teleperm-XP系统的软件结构 Teleperm-XP系统软件主要包括 OM650系统的 “过程控 制”和“过程信息”两个功能软件包、ES680的软件系统、AS620 的电站专用软件(功能码数据库)等。 OM650系统的“过程控制”和“过程信息”两个功能软件包 的执行是由安装在每一个 OM-PU/SU/OT中的操作系统、任 务管理器和基础性软件所支持的,它是基于国际标准 X/Win- dowsTM、OSF-MotifTM(OSF,opensoftwarefunction)和图形 系统 DYNAVIS@-X。OM650系统的“过程控制”功能软件包应 用于完全由监视器支持的过程控制任务,该功能软件包可实现 过程操作、过程监视、故障分析等功能;OM650系统的“过程信 息”功能软件包不直接介入过程控制,而是面向过去和未来的过 程事件。 ES680的软件系统是由全图形系统支持的数据库系统,是 基于国际赞同的、标准化的软件,如 UNIX操作系统和相关数据 库、X/Windows和 OSF-Motif。ES680的工程设计是面向过程 工程任务定义的,对工程设计人员来说并不需要有仪表和控制 系统软件方面的专门知识。用户可在基础设计和调试过程中使 用同一个工具。ES680系统中强大的浏览功能可以引导操作员 快速地获得有关仪表和控制系统任务的信息。 AS620有一个内容丰富的电站专用软件 (功能码数据库)。 使用 ES680工程系统通过合乎逻辑地在图形 表格 关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载 上按功能图 连接功能块,能自动地生成 AS620程序码,完成 AS620自动控 制系统的组态。功能图是根据德国大电站运行技术协会(VGB) 的指南设计的。单项级的功能图用作自动控制系统的组态和参 数化。当需要了解相互关系时,区域级功能图和总貌功能图也可 生成。各级功能生成后,就可使用电厂专用符号来设定。 3.3系统软件结构对比分析 Symphony系统使用的是 Windows-NT操作系统,而 Teleperm-XP系统分两种情况;OM650使用的是 X/Window- sTM和 OSF-MotifTM,而 ES680使用的是 UNIX操作系统; Symphony系 统 的 人 系 统 接 口 软 件 (ConductorNT)与 Teleperm-XP系统的OM650系统的“过程控制”和“过程信息” 两个功能软件包相对应,都是为工程师、操作员和维护人员提供 所有过程和系统参数显示的软件组态工具;Symphony系统的 系统工程工具软件 (Composer)与 Teleperm-XP系统的 ES680软件系统相对应,两者均是实现系统组态、控制组态、应 用程序组态的软件组态工具;Symphony系统的过程控制软件 与 Teleperm-XP系统的 AS620电站专用软件相对应,两者均 是由连续控制、顺序控制等功能的基本控制算法模块组成的软 件。 参考文献 [1]孙奎明,时海刚.热工自动化[M]∥600MW级火力发电机组丛 关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf .北 京:中国电力出版社,2006:65-71 [2]华东六省一市电机工程(电力)学会.热工自动化[M]∥600MW火力 发电机组 培训 焊锡培训资料ppt免费下载焊接培训教程 ppt 下载特设培训下载班长管理培训下载培训时间表下载 教材.2版.北京:中国电力出版社,2006:295-308 [3]肖大雏.控制设备及系统[M]∥国产 600MW超临界火力发电机组 技术丛书.北京:中国电力出版社,2006:10-20 [收稿日期:2008.2.28] 集,用它开发嵌入式应用程序相当方便。 应用程序的设计主要是编写可视化控制平台,实现对移动 机器人的控制和监控。 在进行软件的设计时采用模块化设计,把整个系统的任务 分为:决策模块、显示模块、通信模块、感知模块、运动模块。 决策模块是根据感知模块和通信模块的信息通过相应的算 法处理后进行决策,并发出指令给运动模块。 显示模块主要是显示移动机器人当前的数据参数及周围环 境的信息。如:速度、走过的轨迹波形及机器人与障碍物距离。 通信模块主要是完成通信过程中的信号的编码和译码以及 通信协议的设置。 感知模块主要是读取传感器的信息并进行相应的处理,并 把信息传送给决策模块和显示模块。 运动模块是根据决策层的指令调用驱动程序中相应的函 数,来完成对移动机器人电机的转速控制。 在上述各部分中,通信模块、感知模块、运动模块的程序设 计过程中调用驱动中的函数较多。应用程序在调用驱动程序中 的相应的函数是以设备的形式访问,其设计 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 图如图7所示。 该图是应用程序读取驱动程序中函数的过程,该过程大部 分是通过中断的方式打开相应的线程来实现的,因此在中断任 务切换过程中要注意以下几点: 1)当任务进入中断时,原来任务的返回地址无法在中断态 下获得,必须在中断的 ISR中进行一 次CPU工作模式的强制转换。这样在 返回系统工作状态后才能得到原来任 务的返回地址。 2)中断任务的SPSR的寄存器在 CPU工作模式强制转换前保存。 3 结束语 该移动机器人系统能够正确地完 成各种动作,有良好的动态性能和控 制精度,此外还具有模块化、易扩展、 可移植、硬件体积小、功耗低、实时性 强、可靠性高等优点。 参考文献 [1]谈黎.基于 PXA255的嵌入式机器人控制系统———软硬件设计与实 现[J].计算机工程与应用,2005,41(10):93-95 [2]梁建宏,蒲立.微小型机器人嵌入式自驾仪设计[J].北京航空航天大 学学报,2005,31(7):775-779 [3]曹卫华,吴敏,陈鑫.基于DSP控制的足球机器人小车的设计与实现 [J].机器人技术与应用,2002,24(3):19-21 [4]方正,杨华,胡一民,等.嵌入式智能机器人平台研究[J].机器人, 2006,28(1):54-58 [收稿日期:2008.1.29] 图7 应用程序控制流程图 """""""""""""""""""""""""""""""""""""""""""""""" 33
本文档为【基于ARM的嵌入式移动机器人控制系统的设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_149837
暂无简介~
格式:pdf
大小:322KB
软件:PDF阅读器
页数:3
分类:互联网
上传时间:2012-11-14
浏览量:24