基于单片机的移动机器人设计

2017-09-17 19:50杨婧芳祁惠梅
科学与财富 2017年25期
关键词:移动机器人单片机设计

杨婧芳+祁惠梅

摘要:本设计采用了比较先进的AT89S52为控制核心。ATMEL公司,AY89S51可以说是单片机领域的主流产品,通过构建智能机器人系统,培养设计并实现自动控制系统的能力。此设计所使用的移动机器人工程对象——机器人,两个轮子作为机器人的两条腿。它采用AT89S52单片机作为大脑,通过教学版安装在机器人底盘上。运用反射式红外传感器来进行路径检测和速度监测模块,机器人的大脑——单片机AT89S52基于这个传感器的输入控制伺服电机。基于连续旋转伺服电机的移动机器人,使机器人通过编程自动完成相应的动作。

关键词:单片机;移动机器人;设计

1机器人的构成及设计方案

1.1机器人的构成

机器人主要由八大部分组成,它们分别是单片机(主控制器)模块、传感器模块、电机驱动模块、红外检测模块、电机驱动模块、LCD显示器模块、电源、无焊锡面包板。他们之间互相协作,最终完成动作。

1.2系统设计任务

设计一个基于连续旋转伺服电机的智能移动机器人,系统方案方框图如图1所示。

图1系统方案方框图

1.3系统的设计方案

移动机器人控制系统由单片机(主控制器)电路模块、红外检则模块、电机及驱动模块、电源模块、LCD模块等部分组成。

2移动机器人的硬件设计

2.1移动机器人的硬件连接

机器人大脑需要连接电源来运行,同时也需要连接到PC(或笔记本电脑)以便编程和交互。

2.1.1串口的连接

机器人教学板通过串口电缆连接到PC或者笔记本电脑上以便于用户交互。如果计算机有串行接口,直接使用串口连接电缆。将该串口线一端的串口连接到机器人教学板上,另一端连接到计算机的USB口上,并安装对应的USB驱動程序。

2.1.2ISP下载线的连接

移动机器人程序通过连接到PC或者笔记本电脑的并口上的ISP下载线来下载到教学板上的单片机内。下载线一端连接到PC的并行接口上,另一端(小端)连接到教学板上的程序下载口上。

2.2传感器检测模块

机器人使用红外线二极管LED作为前灯。红外线二极管发射红外光线,如果机器人前面的障碍物,红外线从物体反射回来,相当于机器人眼睛的红外检测(接受)器,检测到反射回的红外光线,并发出信号来表明检测到从物体反射回红外线。机器人的大脑———单片机AT89S52基于这个传感器的输入控制伺服电机。

2.3单片机模块

2.3.1AT89S52单片机模块

控制机器人伺服电机以不同速度运动是通过让单片机的输入/输出(I/O)接口输出不同的脉冲序列来实现的。51系列单片机有4个8位的并行I/O口:P0、P1、P2和P3。这4个接口既可以作为输入,也可以作为输出;也可按位方式(1位)使用。

2.3.2定时/计数器的运用

单片机AT89S52的定时/计数器可以分为定时器模式和计数器模式。其实这两种模式没有本质上的区别,均使用二进制的加一计数;当计数器的值计满回零时能自动产生中断的请求,以此来实现定时或者计数功能。他们的不同之处在于定时器使用单片机的时钟来计数,而计数器使用的是外部信号。定时/计数器能产生更精确的延时,它的最小延时单位为1个机器周期。查阅资料可知,若晶振频率为12MHz,则延时单位为1μs;若为11.0592MHz,则延时单位为1.08μs。

2.4LCD模块

LCD1602有8个数据引脚(D0-D7)与AT89S52相连,用于接收指令和数据。AT89S52通过RS、RW和E这三个端口控制LCD模块。

2.5无焊锡面包板

在面包板插座上插上元器件,比如电阻、LED、扬声器和传感器,就够成了例程电路。元器件靠面包板插座彼此连接。在面包板上端有一条黑色的插座,上面标识着“Vcc”、“Vin”“GND”,称之为电源端口,通过这些端口,可以给点路供电。“Vcc”指教准的+5V电压,“Vin”指电池的正极,“GND”对应于教学板的接地端。左边一条黑色的插座从上到下标识着P10,P11,P12,……,P37(共18个,部分端口并未标出)。通过这些插座,可以将搭建的电路与单片机连接起来。

3移动机器人软件设计

在本次设计中,将反复用到3款软件:KeiluVi-sion2IDE集成开发环境、SLISP下载软件、串口调试软件。

3.1.1KeiluVision2IDE集成开发环境

该软件是德国KEIL公司出品的51系列单片机C语言集成开发系统。C语言在语法结构上更加灵活,功能更加强大。

3.2.2SLISP软件下载工具

该软件是广州天河双龙电子有限公司推出的一款ISP下载软件,使用该软件可以将可执行文件下载到机器人单片机上。该软件的使用需要计算机有并行接口。

3.2.3串口天使软件

此软件用来显示单片机与计算机的交互信息。在硬件上,计算机至少要有串行接口或USB接口来与单片机教学板的串口连接。

3.3光电检测模块设计

3.3.1光电检测过程

光电检测模块的设计,使机器人能够检测地面上的白导线。光电检测电路主要包括发射部分和接收部分。发射部分的波形调制采用调频方式。由于LED的响应速度快,其工作频率可以达到MHz或十MHz以上,检测系统的调制频率可以满足几十~几百千赫的要求。光源驱动器负责将调制波形放大到足够的功率以驱动光源发光。光源采用红外发光二极管,工作频率高,适用于方波调制的光发射。接收部分采用光敏二极管接收调制光,并将光信号转换为电信号。这种电信号通常很弱,可以通过滤波和放大处理。调制信号的放大采用交流放大的形式,将调制光信号与背景光信号分离,为信号处理提供方便。在调制信号处理部分,对放大信号进行识别,判断被检测对象的特征。因此,此模块的本质是将“交流”的、有用的调制光信号从“直流”的、无用的背景光信号中分离出来,从而达到抗干扰的目的。

3.3.2光电探头

光电探头安装在机器人底盘前,安装了5个检测点。从理论上讲,识别点越多,检测越近,识别的准确性和可靠性就越高,但硬件成本和软件复杂度也相应提高。该检测系统保证了检测的准确性,节省了硬件。发光二极管发出的调制光通过地面反射到光敏二极管。光电二极管产生的光电流与反射光的强度成线性关系。检测到这一变化,可以确定测试点是否位于白导线之上,从而确定机器人和白导线的相对位置。。

4结论

在实践过程中,熟悉以单片机为核心控制芯片,并采用C语言对AT89S52进行编程,使机器人实现以下4个基本移动任务:安装传感器以探测周边环境;基于传感器信息作出决策;控制机器人运动(通过操作带动轮子旋转的电机);与用户交换信息。整个机器人系统的设计以单片机为核心,利用了多种电路模块,将软件和硬件相结合。本系统能实现如下功能:自动沿预设轨道行驶:机器人在行驶过程中,能够自动检测预先设好的轨道,实现直道和弧形轨道的前进。若有偏离,能够自动纠正,返回到预设轨道上来。当机器人探测到前进方的障碍物时,可以自动报警调整,躲避障碍物,从无障碍区通过。机器人通过障碍区后,能够自动循迹。机器人能够自动跟随另一个机器人行走,并能够自动调节其距离,使其间距维持在固定数值。

参考文献:

[1]丁易新.基于单片机的移动机器人路径规划模糊控制器设计[J].自动化与仪器仪表,2009,01:25-28.

[2]赵银银.基于C8051F340单片机的移动机器人避障系统设计[J].长春大学学报,2010,12:21-23.

[3]李昌杰.智能移动机器人控制系统设计研究[D].长安大学,2012.endprint

猜你喜欢
移动机器人单片机设计
移动机器人自主动态避障方法
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
瞒天过海——仿生设计萌到家
设计秀
基于Twincat的移动机器人制孔系统
有种设计叫而专
Microchip推出两个全新PIC单片机系列
极坐标系下移动机器人的点镇定