摘要:足球机器人融合了计算机视觉、模式识别、决策对策、自动控制、无线通信、多智能体合作等多项技术,具有极高的研究价值。本文设计了基于ARM7微处理器的集中视觉足球机器人底层控制系统,简化了系统设计,满足微型机器人的控制需要。同时,也有利于足球机器人自主化的转型和发展。
关键词:足球机器人 嵌入式系统 LPC2106 ARM7 PTR2000
以应用为中心的嵌入式系统,已经深入到生活的各个方面。相对于其它领域,智能机器人系统可以说是嵌入式系统应用最典型、最广泛的领域之一。本文对嵌入式系统在足够机器人底层控制系统中的应用进行研究和设计。
1 足球机器人系统
足球机器人是计算机视觉、模式识别、决策对策、自动控制、无线通信、智能体设计与电力传动、多智能体合作等多项技术的结合体,是一个典型的智能机器人系统。足球机器人比赛集高科技、娱乐、竞技于一体,虽历时不长,但已经成为国际上广泛开展的高技术对抗活动,引起社会广泛的关注。研究与开发足球机器人系统,参加机器人足球赛是研究智能机器人,跟踪国际高科技理论技术的理想切入点,同时也是嵌入式计算机系统理论联系实际的极富生命力的成长点。
从国内外的比赛情况来看,目前主要是集中视觉的足球机器人比赛。如图1所示,在整个比赛中,视觉系统通过CCD摄像头和图像采集卡对场上情景进行实时采集和处理,把辨识结果送给决策系统,通过无线发射器向车体系统发出一系列控制命令。机器人根据主机命令做出反应,在场上运动,同时能通过译码器进行位置控制以及基于传感器进行自动避障和简单识别环境。
通常足球机器人系统可以划分为机器人(车体)子系统、通信子系统、视觉子系统和决策子系统四个部分,通过计算机视觉子系统闭环而构成智能决策和控制系统(如图2)。从图2中可以看到,足球机器人车体是整个系统的执行机构,它直接体现了整个系统的性能。小车的性能主要由车体性能与车载嵌入式控制系统——微型足球机器人底层控制系统决定。当小车车体具有了良好的运动性能后,小车的性能就由车载嵌入式系统决定了。因此构建一个快速、安全、可靠的实时嵌入式系统是整个系统的关键。
2 系统设计和实现
2.1 系统任务
通过无线通信系统接受决策子系统传来的控制指令;根据运动指令控制小车左右轮转速;通过传感器判断场上环境信息,辅助机器人定位及运动。
2.2 微处理器选型
传统的微处理器如51、96系列应用于机器人系统,虽然开发周期短,成本低,但其实时性不好,复杂的控制算法难以实现;另外,增加的外围电路数据转换速度慢,使机器人的性能得不到充分的发挥。高速DSP的出现虽然使得系统模块化和全数字化,但其开发套件成本高。与DSP具有同等性能的ARM微处理器资源丰富,具有很好的通用性,其主要技术优点是高性能、低价格、低功耗,可以广泛的应用于各个领域,因此将ARM应用于机器人控制系统不失为一种好的策略。
LPC2106是飞利浦带有一个支持实时仿真和跟踪的ARM7TDMI-S微处理器,嵌入128KB高速Flash存储器。采用3级流水线技术,取指、译码和执行同时进行,能够并行处理指令,提高CPU运行速度。由于具有非常小的尺寸和极低的功耗,非常适用于那些将小型化作为主要要求的应用。多个32位定时器、PWM输出和32个GPIO使它特别适用于工业控制和小型机器人系统。本文就是以LPC2106为核心,设计结构简单、性能稳定的足球机器人车体系统。
2.3 车体系统设计
采用输出轴配有光电编码器的小型直流电机作为驱动电路。LPC2106产生的PWM波经专门的集成电路双H桥驱动器L298放大,驱动左右轮电机。编码器输出两路具有90度相位差的脉冲,经正交脉冲解码,为CPU提供反馈的计数值和转动方向。LPC2106透过无线接收模块接收主机命令,并融合外传感器电路反馈的环境变量进行电机的PID闭环控制。CPU保留JTAG在线调试接口,方便程序的编写、下载和升级。系统硬件组成原理图如图3所示。
(1)电机与驱动电路
微型直流电机以其良好的线性特性、优异的控制性能和非常高的效率广泛的应用于小功率系统中。为了控制直流电动机,采用定频脉宽调制(PWM)控制。这里,由于LPC2106本身就带有6个PWM输出口,直接输出控制信号即可,无须另加电路。不过,其输出的PWM波功率有限,须由驱动电路放大后才能驱动电机。
考虑到电压、电流的等级尺寸、外观等因素,采用了L298来代替三级管所构成的驱动电路。L298驱动电路如图4所示。
L298是恒压恒流双H桥集成电机芯片,可同时控制两个电机,且输出电流可达到2A。L298的EN A(第6引脚)、EN B(第11引脚)分别与LPC2106的PWM4和PWM6相连,作为调制信号。SENSE A,SENSE B为电流反馈引脚。电机控制方向引脚如表1所列。
表1 L298控制引脚使能逻辑关系
ENA(B) | IN1(IN3) | IN2(IN4) | 电机运行情况 |
H | H | L | 正转 |
H | L | H | 反转 |
H | 同IN2(IN4) | 同IN1(IN3) | 快速停止 |
L | X | X | 停止 |
Vss电压最小为4.5V,最大可达36V;Vs电压最大值也是36V。但经过实验,Vs电压应该比Vss电压高,否则有时会出现失控现象。
(2)无线接收模块
小车通过无线接收模块接收主机发出的命令进行运动,通信的高速性、稳定性和准确性至关重要,它将直接影响整个系统的采样周期。采用PTR2000模块作为控制核心,它的显著特别是所需要外围元件少,设计非常的方便。传统的无线通信电路方案不是电路复杂就是调试困难,PTR2000是一款基于nRF401芯片的无线数据收发模块,最高通信速率为20Kb/s,工作距离为10m内。采用抗干扰能力较强的FSK调制/解调方式,其工作频率稳定可靠,功耗极低且灵敏度极高,非常适合小型化的设计且其频率433.92MHz与434.33MHz可选,很好地满足了比赛的要求。
图5给出了PTR2000与LPC2106的接口电路图。其中,DO、DIIV与分别LPC2106的TXD0(13引脚)和RXD0(14引脚)相连,作为串行通信的通道。CS为PTR2000模块的频率选择信号,PWR为模块节能引脚,正常工作为高电平。TXEN是模块发射接收控制,由LPC2106的I/O口控制。PRT2000是收发一体的集成芯片,采用3.3V供电,可以与LPC2106进行无缝连接。PRT2000作为发射端与PC机相连时,需要通过一个电平转换器(这里用MAX3232)转换成RS-232电平。
主机采用广播式通信方式,依次发送13个字节,如图6所示,足球机器人根据ID指针去响应相应的字节,并校验启动位及自身ID校验字节,进行取舍。
(3)传感器模块
场上形势瞬息万变,单纯依靠视觉系统,经常出现空跑、顶牛或带球丢失等情况。为了稳定带球以及避免碰撞,有必要增加相应的传感器来识别场上的物体,实现避障与带球功能。
(4)电源模块
系统用同一电源给IC和电机供电,电池采用8.4V的可充电锂电池。除直接给电机供电外,还需分出5V给外围设备供电,由于LPC2106是双电源供电,CPU内核为1.8V,I/O口需要3.3V,所以电流电压经7805转换成5V电压,由线性稳压器TPS76818QD与TPS75733KTT分别提供1.8V和3.3V电压。同时采用专门的电源监控芯片MAX708S,提高了系统的可靠性。
2.4 程序设计
程序主要由初始化程序、串行通信程序,可调整PWM波输出程序、I/O口控制程序组成。主函数是一个响应中断的循环结构,如图7所示。
ARM7是一个支持多个操作系统移植的芯片。使用合适的实时操作系统(例如μCLinux等)来代替循环等待结构的主程序,使程序设计的任务大大简化,方便了系统任务的扩充,有利于系统的升级和转型。从系统移植的角度看,ARM比传统的51、96系列,甚至DSP单片机都具有明显的优越性。
3 结论
本文研究和设计一个基于ARM7微处理器的车载嵌入式系统,不仅满足了微型足球机器人控制系统的要求,同时,也为机器人的转型应用提供了良好的技术支持。