基于ARM的自主式移动机器人设计

发布者:RadiantExplorer最新更新时间:2013-10-21 来源: eefocus关键字:ARM  移动机器人  自主避障  超声传感器 手机看文章 扫描二维码
随时随地手机看文章
自主式移动机器人系统是指根据指令任务及环境信息进行自主路径规划,并且在任务执行过程中不断采集局部环境信息,做出决策,从而实现安全行驶并准确到达目标地点的智能系统。本文以LPC2119为控制核心,介绍了一种轮式移动机器人的设计方案。该机器人系统应用超声传感器、光敏传感器、碰撞传感器采集外部环境信息,采用PTR2000实现移动机器人与计算机通信,从而实现现场信息的反馈和计算机控制命令的发送。

LPC2119是Philips公司推出的支持实时仿真和跟踪的ARM7TDMI-S微处理器,嵌入128KB高速Flash存储器。它采用3级流水线技术,取指、译码和执行同时进行,能够并行处理指令,提高CPU运行速度。由于其具有非常小的尺寸和极低的功耗,非常适合小型化应用。片内多达64KB的SRAM,具有较大的缓冲区规模和强大的处理能力。LPC2119内部集成2个CAN控制器、2个32位定时计数器和4个ADC单元电路。

1 硬件结构

控制器LPC2119主要用来产生2路PWM信号以及处理传感器信息,实现对小车的智能控制。本系统采用IR2110作为H桥电路驱动芯片,用4片STP60NE06搭接H桥电路驱动直流电机,并利用光电编码器检测电机转速;采用16路超声传感器系统作为系统的避碰和简单测距;采用光敏传感器实现机器人对光源的感知和寻找;采用碰撞传感器感知碰撞,使机器人能做出急时处理;采用无线通信芯片PTR2000实现机器人与计算机的无线通信。

1.1 电机的PWM控制

IR2110是美国IR(International Rectifier)公司推出的一种双通道、高压、高速的功率器件栅极驱动的单片式集成驱动器。它把驱动高压侧和低压侧MOSFET或IGBT所需的绝大部分功能集成在一个高性能的封装内,外接很少的分立元件即能提供极快的开关速度和极低的功耗。其特点在于:将输入逻辑信号转换成同相位低阻抗输出驱动信号,可驱动同一桥臂上的2路输出,驱动能力强,响应速度快;工作电压较高,可达600V;内设欠压封锁;成本低、易于调试;电路芯片体积小,为DIP14封装。高压侧驱动采用外部自举电容上电,与其他IC驱动电路相比,在设计上大大减少了驱动变压器和电容的数目,降低了产品成本,减小了体积,提高了系统的可靠性。这种适用于驱动功率MOSFET和IGBT的自举式集成电路,在电源变换、电机调速等功率驱动领域中获得了广泛的应用。

LPC2119单片机的PWM功能建立在标准定时器上,它具有32位的定时控制器及预分频控制器、7个匹配控制器,可实现6个单边PWM或3个双边PWM输出,也可以使用这两种类型的混合输出。此系统使用端口PWM0和PWM1输出两路PWM信号,分别控制移动机器人的2个驱动电机。PWM信号经过光电耦合器形成两路相位相差180°的信号加到IR2110的HIN和LIN引脚上,实现对同一桥臂上的两个MOSFET开关的控制,原理如图1所示。

HIN为高电平期间,Q1、Q4导通,在直流电机上加正向工作电压;HIN为低电平期间,LIN端输入高电平,Q2、Q3导通,在直流电机上加反向工作电压。因此电枢上的工作电压是双极性矩形脉冲波形。由于机械惯性的作用,矩形脉冲电压的平均值决定电动机的转向和转速。[page]

1.2 超声传感器系统

为减轻控制器LPC2119的负担,超声传感器系统由Atmel公司的AT89C1051单片机控制。1051单片机是含有一个1KB可编程E2PROM的高性能微控制器,它与工业标准MCS-51的指令和引脚兼容。它为很多嵌入式控制应用提供了一个高度灵活、有效的解决方案。AT89C1051有以下特点:1KB的E2PROM、128B的RAM、15根I/O线、2个16位定时/计数器、5个二级向量中断结构、1个全双向的串行口且内含精密模拟比较器和片内振荡器,具有4.25~5.5V的电压工作范围及24MHz工作频率,同时还具有加密阵列的二级程序存储器加锁、掉电和时钟电路等。此外,AT89C1051还支持两种软件设置的电源节电方式。空闲时,CPU停止,而RAM、定时/计数器、串行口和中断系统继续工作。掉电时,保存RAM的内容,但振荡器停振以禁止芯片其他功能,直到下一次硬件复位。

1051控制每60ms发送一路超声波,检测回波时间,并完成距离的计算。这样16路超声波循环检测一次约为1s,在常温时超声波的速度约为344m/s,可以计算出障碍物的距离,最后将超声波传感器编号及距离信息传送给LPC2119。

超声波发射及接收子系统如图2所示。1051利用P1.0引脚向外发送40kHz的脉冲信号,此信号作为4-16译码器74HC154的使能信号,引脚P1.1~P1.4作为译码信号,分别对应编号0~15的超声波传感器。此信号经过9013放大后推动换能器产生40kHz的超声波信号。

LM567是一片锁相环电路,其5、6脚外接的电阻和电容决定了内部压控振荡器的中心频率f2,f2≈1/1.1RC。其1、2脚分别通过电容器接地,形成输出滤波网络和环路单级低通滤波网络。2脚所接电容决定锁相环路的捕捉带宽:电容值越大,环路带宽越窄。LM567的工作电压为4.75~9V,工作频率从直流到500kHz,静态工作电流约8mA。

超声子系统基本功能为:当接收器接收到超声波回波时,产生交流小信号,此信号经过LM358组成2级放大电路后,幅值达25mV以上。当LM567的3脚输入幅度≥25mV、频率为40kHz的信号时,8脚由高电平变成低电平,此低电平信号被连接到1051的INT0引脚产生中断信号。1051在超声波发送时启动定时器,在INT0中断时关闭定时器,由此可以得到超声波的传播时间,并计算出障碍物距离。

应用本系统对测量范围为30~400cm的平面物体做了多次测量发现,其最大误差为0.5cm,且重复性好。如果加大超声波发射的驱动电流,接收部分的放大电路再加一级,可以使检测距离增大到600cm。

1.3 无线通信子系统

此系统选用微小型、低功耗、19.2kbps的无线收发MODEM芯片PTR2000实现机器人与计算机的无线通信。该芯片的工作频率为国际通用的数传频段433MHz,采用FSK调制,可连接到计算机的RS232接口。系统采用的通信协议如下:

[开始字符] [数据1] [数据2]……[校验和] [结束字符]

将PTR2000的DO、DIN引脚分别与LPC2119的TXD0(13引脚)和RXD0(14引脚)相连,作为串行通信的通道。CS为PTR2000模块的频率选择信号;PWR为模块节能引脚,正常工作为高电平。TXEN是模块发射接收控制,由LPC2119的I/O口控制。PTR2000是收发一体的集成芯片,采用3.3V供电,可以与LPC2119无缝连接。PTR2000作为发射端与PC机相连时,需要通过一个电平转换器(本文为MAX3232)转换成RS-232电平。PLC2119可以通过把输出口置1或清0将无线收发模块PTR2000设置为发送或接收状态;可通过VB的MSComm控件的RTSEnable属性实现对计算机串口的控制。

1.4 光敏传感器子系统

机器人使用的光敏传感器为硫化镉光电管(CDS)。硫化镉光电管的电阻值随着照射的表面光的多少而变化,光线越强,电阻值越小。硫化镉光电管通常也称为光敏电阻。CDS的电阻值对较少的光线就能产生较大的变化,是机器人系统较为常用的一种光敏传感器。在机器人车体上平均分布8个同样的光敏传感器,感知机器人周围的光强变化。通过采集各传感器的输出电压,由软件算法确定机器人的路径,使机器人总是朝光线更强的方向行走,实现对光源的寻找。

将一个精密电阻与CDS器件串联,该电阻起分压作用,将CDS器件的电阻值转换成应对模/数转换器件(ADC)适当的电压值。CDS器件的分压输出给ADC,随后电压值转换为数字值。当更多的光线照在CDS器件上时,其电阻和ADC上输出的电压值都会减小。一般取这个精密电阻的阻值与CDS器件的最大电阻值相等。

2 软件编程

因任务不同,系统的软件设计有所不同。本移动机器人系统的任务是在已知大小且光线较暗的封闭环境中自主寻找光源。

系统软件在启动后先进行系统的自检和初始化,然后进行路径的规划。先横向遍历整个环境,如果发现光源,机器人停止运动,等待命令;如果没有找到光源,再纵向遍历整个环境,如果发现光源,机器人停止运动;如果还是没有找到,就显示出错信息。当超声波子系统发现前方有障碍物或机器人与障碍物发生碰撞时,将产生外部中断,终止程序的运行,控制器LPC2119将收到障碍物距离或碰撞信息,并由此重新规划路径,由此实现机器人的自主运行。

本设计是一个基于ARM7微处理器的车载嵌入式系统,不仅满足了移动机器人控制系统的要求而且为机器人的转型应用提供了良好的技术支持。在此基础上可以加入各种先进的控制算法,实现移动机器人的智能化。

关键字:ARM  移动机器人  自主避障  超声传感器 引用地址:基于ARM的自主式移动机器人设计

上一篇:基于32位ARM和μC/OS-II的心电信号处理系统
下一篇:嵌入式Linux Kernel错误跟踪技术

推荐阅读最新更新时间:2024-03-16 13:29

日本新超级电脑将采用ARM架构7nm工艺
     日超级电脑内建处理器  ●2011年全球运算最快的超级电脑K Computer。图/摘自网路 由日本理化学研究所(日本理研)及富士通(Fujitsu)合作开发的超级电脑K Computer(京)过去采用SPARC架构处理器,但在新一代Post-K超级电脑中,主导处理器设计的富士通将首度改用ARM架构开发超级电脑用的超高效能运算(HPC)处理器,制程上直接采用更先进的7奈米,晶圆代工龙头台积电确定夺下代工大单。 目前全球主要的高效能运算晶片是由英特尔及超微生产的x86架构处理器,而英商安谋(ARM)近年积极跨足伺服器处理器市场,今年已见到多项成功案例,而安谋也开始与高通、联发科等业者合作,希望在2020年前可以开发出运
[手机便携]
未来五年移动机器人复合增长达30%
数据显示,我国制造业增加值从2012年的16.98万亿元增加到2021年的31.4万亿元,占全球比重从22.5%提高到了30%,持续保持世界第一制造大国的地位。 庞大的制造业,也孕育出了全球最庞大的物流需求,国家邮政局数据显示,2021年全国快递量突破了1000亿件,是5年前的1.7倍,面对数量众多的快递包裹量,依靠人手进行分拣、包装、搬运根本难以应对,因此应用移动打造智能物流系统就成为了许多企业的选择。   如今在许许多多的物流仓库和制造工厂中,正上演着一场史无前例的物流变革,在整齐切割的智能仓库中,灵活往返运输货物的是一台台移动机器人,从商品入库到分拣、出库,都充斥着它们的身影,一个庞大的仓库,往往只需要少数几个员工。
[机器人]
ARM移植OSGi框架
目前,嵌入式计算应用已经广泛运行在各种平台,普遍应用于各个领域。如何实现运行在动态环境,或不同平台的这些应用之间的相互发现和交互,或这些应用程序如何根据设备和服务环境的变化自动灵活的动态配置和扩充是近年来研究的一个热点。OSGI规范是嵌入式应用 智能化 发展所需求的一个开放、通用的解决方案。   1 OSGI介绍   OSGI是Open Servicc Gateway Initiative的简称,该组织建立于1999年,是一个非赢利机构,旨在建立一个开放的服务规范,为通过网络向设备提供服务建立开放的标准。OSGI规范为网络服务定义了一个标准的、面向组件的计算环境。软件组件可以从运行中被安装、升级或者移除而不需要中断设备的操作。软件组
[单片机]
ARM处理器各个模式之间是如何切换的?
1、ARM处理器各个模式之间是如何切换的? 答:除用户模式外的其他6种模式称为特权模式,这些模式中,程序可以访问所有系统资源,也可以任意进行处理器模式的切换。处理器模式可以通过软件控制进行切换(直接设置CPSR寄存器的后五位就可以在6种特权模式之间互相切换),也可以通过外部中断或异常处理过程进行切换(例如,在USR模式下,发生中断后切换到IRQ模式)。 2、ARM各个模式之间切换时,上下文的保存哪些是硬件在做?哪些是操作系统在做? 答:CPU做的: (1)把返回地址保存到相应模式的lr寄存器中,例如从usr模式切换到irq模式,CPU会将usr模式下的pc值,保存到irq模式下的lr寄存器中。 (2)保存CPS
[单片机]
Arm CEO与英伟达黄仁勋的炉边谈话
本文作者Cadence技术专家Paul McLellan 日前Arm召开了2020 Arm DevSummit,会议由Arm CEO Simon Segars主持。他在开场白中简单地讨论了NVIDIA与Arm的收购案。 让我试着把这些弄清楚,我是两家公司的超级粉丝,想象一下Arm在全球部署的CPU技术与NVIDIA的GPU和AI技术相结合该是什么样的。 Simon介绍世界各地的一些合作伙伴正在使用Arm处理器。我将跳过这一点,只谈谈Simon在他的主题演讲中提到的一些特殊项目。 Arm现在已经从世界上最快的超级计算机(日本开发的Arm超级计算机获得超级计算机TOP500第一名)到最小的物联网终端。 接下来是Pr
[嵌入式]
<font color='red'>Arm</font> CEO与英伟达黄仁勋的炉边谈话
Ubuntu安装ARM架构GCC工具链最简单办法
一、安装ARM-Linux-GCC工具链   只需要一句命令:   sudo apt-get install gcc-arm-linux-gnueabi   前提是你的Ubuntu系统版本是官网支持的最新的版本,若不是,请升级。执行以上命令即可。 二、使用工具链   注意!这里不能使用 gcc 命令来召唤它。它的名字是 arm-linux-gnueabi-gcc 。如果出现 Command Not Found,请关闭Terminal,再重新打开。再不行,就变成超级用户,把它添加到 PATH 中。   Tips:查看安装位置。   首先你要取得超级用户权限(临时取得权限可用命令:sudo -i) root@q
[单片机]
脑血氧监测仪的设计研究
介绍了基于ARM的脑血氧监测仪软件的设计与实现。该软件通过控制探头对脑血氧信息进行采集并通过无线方式将信息发送给终端,终端对接收到的信息进行处理和显示,同时将病人信息存储在SQL Server CE2.0数据库中,实现病人信息的查询、添加、删除等功能。 氧是人体新陈代谢的重要物质,脑是人体新陈代谢最活跃的器官之一,正常人脑氧消耗量占全身氧消耗量的20%左右,在心脑血管疾病及脑外伤病人临床抢救与治疗中,如果缺乏对脑组织供氧的监护手段,就有可能造成脑组织神经功能的丧失或损害 。因此,研制一种连续监测脑供氧状况的临床设备,对提高心脑血管和脑外伤病人的诊断和治疗具有重大意义。本脑血氧监测仪可实时地采集左右脑血氧信号,把处理脑血氧信号得到
[测试测量]
脑血氧监测仪的设计研究
ARM设计的高速数据采集远程监控系统技术
随着信息化的不断发展,在工业自动化、电力设备、通信管理、智能终端、智能小区等领域,对数据采集的实时性、可靠性的要求也不断地提高。以往传统的单片机加采集卡的数据采集装置已经不能满足人们使用的要求。随着采集卡的采集频率不断地提升,其所属平台的工作频率也应跟上时代的步伐。同时,在某些情况下,装置的操控人员不可能到工作现场去执行,所以有必要对采集装置进行远程监察和控制。在各种设备的通信方式中,由于以太网具有速度快、通用性好、扩展性强等优点,已13渐成为设备之间进行通信的主要方式。本文提出了基于ARM的高速数据采集装置远程监控系统,在实现对数据的高速采集的同时,能保证数据的可靠性和实时性,并对各帧数据嵌入时间标志为后续数据处理做好准备,
[单片机]
<font color='red'>ARM</font>设计的高速数据采集远程监控系统技术
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved