轮式移动机器人控制系统的硬件设计要点
21ic 2024-09-04

1 引言

轮式移动机器人是机器人研究领域的一项重要内容,它集机械、电子、检测技术与智能控制于一体,是一个典型的智能控制系统。智能机器人比赛集高科技、娱乐、竞技于一体,已成为国际上广泛开展的高技术对抗活动。现以ARM7处理器为控制核心,采用无线通信技术,并移植嵌入式实时操作系统μC/0S一Ⅱ设计了一套智能机器人控制系统。

2 硬件设计

根据竞技机器人的功能要求进行总体设计,将各个功能进行模块化,其控制系统硬件框图如图1所示。中央处理器采用微控制器结构,用以控制外围设备协调运行。舵机控制机器人的运动方向;驱动电机电动机采用输出轴配有光电编码器的小型直流电机驱动车轮旋转。电磁铁作为机械手夹紧的执行元件。设置了两路超声波传感器、8路光电检测输入和8路开关量检测接口。整个机器人的运行状态和运行参数通过LCD动态显示。


2.1 微控制器的选型

机器人要实现的动作和功能较多,需要多个传感器对外界进行检测,并实时控制机器人的位置、动作和运行状态。系统中的所有任务最终都挂在实时操作系统μC/0S一Ⅱ上运行,因此不仅要考虑微控制器的内部资源,还要看其可移植性和可扩展性。LPC2129是Philips公司生产的一款32位ARM7TDMI—S微处理器,嵌入256 KB高速Flash存储器,它采用3级流水线技术,同时进行取指、译码和执行,而且能够并行处理指令,提高CPU的运行速度。由于它的尺寸非常小,功耗极低,抗干扰能力强,适用于各种工业控制。2个32位定时计数器、6路PWM输出和47个通用I/0口,所以特别适用于对环境要求较低的工业控制和小型智能机器人系统。因此选用LPC2129为主控制器,可以获得设计结构简单、性能稳定的智能机器人控制系统。

2.2 无线通信接口设计

系统采用迅通公司生产的PTR2000无线通信数据收发模块。电路接口如图2所示。该模块基于NORDIC公司生产的射频器件nRF401开发,其特点是:①有两个频道可供选择,工作速率高达20 Kb/s;②接收发射合一,适合双工和单工通信,因而通信方式比较灵活;③体积小,所需外围元件少,接口电路简单,因此特别适合机器人小型化要求;④可直接接单片机串口模块,控制简单;⑤抗干扰能力强;⑥功耗小,通信稳定。

2.3 光电检测模块设计

2.3.1 光电检测过程

设计光电检测模块,使机器人能够检测地面上的白色引导线。光电检测电路主要包括发射部分和接收部分,其原理如图3所示。发射部分的波形调制采用了频率调制方法。由于发光二极管的响应速度快,其工作频率可达几兆赫兹或十几兆赫兹,而检测系统的调制频率在几十至几百千赫兹范围之内,因此能够满足要求。光源驱动主要负责将调制波形放大到足够的功率去驱动光源发光。光源采用红外发光二极管,工作频率较高,适合波形为方波的调制光发射。

接收部分采用光敏二极管接收调制光线,将光信号转变为电信号。这种电信号通常较微弱,需进行滤波和放大后才能进行处理。调制信号的放大采用交流放大形式,可以将调制光信号与背景光信号分离开来,为信号处理提供方便。调制信号处理部分对放大后的信号进行识别,判断被检测对象的特性。因此,该模块的本质是将“交流”的、有用的调制光信号从“直流”的、无用的背景光信号中分离出来,从而达到抗干扰的目的。

2.3.2 光电探头

在机器人底盘前部安装有光电探头,共设置了5个检测点,其结构如图4所示。

从理论上讲,检测点越多,越密,识别的准确性与可靠性越高。但是硬件的开销与软件的复杂程度也相应增加。采用该寻线系统保证了检测的精确度,也节约了硬件的开销。发光二极管发出的调制光经地面反射到光敏二极管。光敏二极管产生的光电流随反射光的强弱线性变化。检测出这种变化,即可判断某一个检测点是否在白色引导线的上方,从而判断机器人和白色引导线的相对位置。

2.4 超声波测距传感器设计与实现

两路超声波传感器用以控制机器人避开障碍物,并预测机器人相对目的地距离,起导航作用,其接收部分与微控制器的捕获和定时管脚相连接。整个超声波检测系统由超声波发射、超声波接收和单片机控制等部分组成。发射部分由高频振荡器、功率放大器及超声波换能器组成。经功率放大器放大后,通过超声波换能器发射超声波。

图5给出由数字集成电路构成的超声波振荡电路,振荡器产生的高频电压信号通过电容C2隔除掉了信号中的直流量并给超声波换能器MA40S2S。其工作过程:U1A和UlB产生与超声波频率相对应的高频电压信号,该信号通过反向器U1C变为标准方波信号,再经功率放大,C2隔除直流信号后加在超声波换能器MA40S2S进行超声波发射。如果超声波换能器长时间加直流电压,会使其特性明显变差,因此一般对交流电压进行隔除直流处理。U2A为74ALS00与非门,control_port(控制端口)引脚为控制口,当control_port为高电平时,超声波换能器发射超声波信号。

图6示出为超声波接收电路。超声波接收换能器采用MA40S2R,对换能器接收到的信号采用集成运算放大器LM324进行信号放大,经过三级放大后,通过电压比较器LM339将正弦信号转换为TTL脉冲信号。INT_Port与单片机中断管脚相连,当接收到中断信号后,单片机立即进入中断并对超声波信号进行处理和判断。

3 实时操作系统μC/OS—II的移植

μC/OS—II是一个嵌入式实时操作系统内核,包含了任务调度、任务管理、时间管理、内存管理和任务间的通信与同步等基本功能。μC/OS—II进行任务调度时,会把当前任务的CPU寄存器存放到该任务堆栈中,然后再从另一个任务堆栈中恢复原来的工作寄存器,继续运行另一个任务。

根据各个控制功能和微控制器的资源结构对任务进行划分,共划分为7个应用任务,其划分过程如图7所示。无线串行通信采用中断接收方式,保证数据接收的实时性。

μC/OS一Ⅱ任务的建立包括定义任务堆栈、设定任务优先级、初始化该任务要求的系统硬件及实现具体的控制过程等4部分。现以任务1为例,介绍应用任务的建立过程。

在嵌入式实时操作系统环境下开发实时应用程序,可使程序的设计和扩展变得容易,而且无需大的改动即可增加新的功能。通过将应用程序分割成若干独立的任务模块,可大大简化应用程序的设计过程;而且能快速、可靠地对实时性要求苛刻的事件。通过有效的系统服务、嵌入式实时操作系统,能使系统资源得到更好的利用。

4 调试运行

在机器人控制系统起动时,μC/OS一Ⅱ对堆栈空间、各个控制寄存器和外设器件的硬件进行初始化,并设定当前各个功能部件的初始状态。

在实时机器人系统下,机器人正常启动后,系统实时监视机器人在比赛场上的运行状况,若出现某一动作或功能无效则给出出错信息。正常运行时实时显示机器人在比赛场上的坐标值和动作状态,如图8所示。

5 结语

根据智能机器人的控制要求,设计了基于无线通信的嵌入式机器人控制系统。在软件设计上移植了嵌入式实时操作系统μC/OS一Ⅱ。利用光电检测模块和超声波导航模块感知外部信息,实现了对智能机器人的控制。

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 【7.24 深圳】2025国际AI+IoT生态发展大会/2025全球 MCU及嵌入式技术论坛


  • 相关技术文库
  • 单片机
  • 嵌入式
  • MCU
  • STM
  • 3AT89C51单片机引脚说明及引脚图

    AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU...

    前天
  • 51单片机对LCD1602液晶的驱动设计

    51单片机——LCD1602 1、1602液晶读写时序 (1)、读状态 RS=L,R/W=H,E=H。(判断忙完毕后释放总线) (2)、读数据 RS=H,R/W=H,E=H。 (3)、写指令 RS=L,R/W=L,D0~D7=指令码,E=高脉冲 (4)、写数据 RS=H,R/W=L,D0~D...

    前天
  • 单片机串口如何接收不定长数据的?

    我们在使用其他STM32的单片机的时候,会发现有些困难,会发现常用的方法并不能用,在还没有接收完数据的时候,就解决不了。于是,只能用通用的方法来解决了。 这个通用的方法,其实原理和使用IDLE的原理一样:...

    前天
  • ARM处理器的选型原则

    鉴于ARM微处理器的众多优点,随着国内外嵌入式应用领域的逐步发展,ARM微处理器必然会获得广泛的重视和应用。但是,由于ARM微处理器有多达十几种的内核结构,几十个芯片生产厂家,以及千变万化的内部功能配置组合,...

    07-10
  • 有哪些低功耗设计方法?单片机系统低功耗设计要点介绍

    功耗,已经是一个老生常谈的话题了。对于功耗,大家多多少少有所了解。目前,很多产品的宣传里便带有低功耗噱头。为增进大家对功耗的认识,本文将基于两点介绍功耗:1.低功耗主要设计方法,2.单片机系统低功耗设计...

    07-10
  • 8位32位MCU如何选择?如何选择合适的MCU?

    MCU,对于普通人而言,是一个高大上的存在。但是,在工业中,MCU确实常见产品。为增进大家对MCU的认识,本文将基于两点介绍MCU:1.8位MCU和32位MCU如何选择?2.如何选择合适的MCU。如果你对MCU具有兴趣,不妨继续往...

    07-09
  • ARM开发:一 ARM微处理器概述

    1.1ARM-Advanced RISC Machines ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。 1991年ARM公司成立于英国剑桥,主要出售芯片设计技术...

    07-08
  • 分析C51单片机的一些误区和注意事项

    简介:常看见初学者要求使用_at_,这是一种谬误,把C当作ASM看待了。在C中变量的定位是编译器的事情,初学者只要定义变量和变量的作 用域,编译器就把一个固定地址给这个变量。怎么取得这个变量的地址?要用指针。 1) C...

    07-08
  • 51单片机几个延时程序

    简介:51单片机几个精确延时程序:在精确延时的计算当中,最容易让人忽略的是计算循环外的那部分延时,在对时间要求不高的场合,这部分对程序不会造成影响. 一. 500ms延时子程序(晶振12MHz,一个机器周期1us.) 程...

    07-08
  • 总结单片机软件抗干扰的几种办法

    简介:在提高硬件系统抗干扰能力的同时,软件抗干扰以其设计灵活、节省硬件资源、可靠性好越来越受到重视。下面以MCS-51单片机系统为例,对微机系统软件抗干扰方法进行研究。 1、软件抗干扰方法的研究 在工程实践中...

    07-08
  • 基于C51单片机实现汽车座椅自动控制系统的软硬件设计

    引言 随着人们生活水平的提高,对汽车座椅的舒适性要求也越来越高,要求对汽车座椅地调节能够更加简单、方便、快捷。目前,汽车座椅位置的调节多采用基于手动调节方式的机械和电动控制两种方式。汽车座椅位置的调节...

    07-02
  • MCS51单片机程序设计时堆栈的计算方法解析

    用C语言进行MCS51系列单片机程序设计是单片机开发和应用的必然趋势。Keil公司的C51编译器支持经典8051和8051派生产品的版本,通称为Cx51。应该说,Cx51是C语言在MCS51单片机上的扩展,既有C语言的共性,又有它自己...

    07-02
下载排行榜
更多
评测报告
更多
广告