第 30卷第 2期
2010年 4 月
苏 州 大 学 学 报 (工 科 版 )
JOURNAL OF SUZHOU UN IV ERSITY (ENGINEER ING SC IENCE ED ITION)
Vol130 No. 2
Ap r. 2010
文章编号 : 1673 - 047X (2010) - 02 - 0062 - 05
一 款 分 拣 搬 运 机 器 人 的 设 计
黄宗杰 ,王富东 ,杨春晖 ,马红卫
(苏州大学机电工程学院 ,江苏 苏州 215021)
摘 要 : 结合机器人竞赛 ,介绍了一款分拣搬运机器人的设计和具体实现 。机器人以 SST89E564RD
单片机为控制器 ,辅以传感器模块 、步进电机驱动模块和机械手模块 ,能够按照预先规划好的路线行
走 ,并在行走的过程中完成对色块的夹取 、放置的动作 。
关键词 : 分拣搬运机器人 ; SST89E564RD单片机 ;步进电机驱动 ;机械手
中图分类号 : TP311 文献标识码 : A
0 引 言
分拣搬运机器人是可以进行自动化搬运作业的工业机器人 。当今社会 ,随着生产条件日益现代化 ,劳动
生产率要求越来越高 ,企业更注重效率 ,机器人在社会各领域的作用越来越大 ,对机器人的研究成为热门话
题 ,各项机器人比赛也备受人们的关注 。本文针对第三届江苏省机器人大赛中的分拣搬运机器人项目 ,设计
了一款能够满足比赛要求的机器人 。
1 比赛规则
比赛过程 :自主分拣搬运机器人由启动区边线出发 ,在正五边形上自动寻找带颜色的色块 ,然后抓取或推
动色块放置到对应颜色的存储区 ,比如红色块要放入红存储区 。在指定的时间内搬运色块的数目多者为胜 ,
若成绩相同则时间较短者为胜。
色块的放置 :色块为直径 4cm、高 2cm 的空心塑料块 ,色块按照图中的指示放置 ,蓝色球放在五边形每条
边的中点 ,红色球放置在五边形的顶点 。
搬运规则 :机器人把色块搬运到对应的放置区 ,机器人每次搬取的个数不限 ,但每次搬运色块的颜色必须
相同 。机器人在搬运过程中 ,除正在搬运的色块外不可以碰撞五边形区域内的其他色块 。
2 比赛场地
比赛场地尺寸及位置如图 1所示 ,左下角红色区域为红色块放置区 ,右下角蓝色区域为蓝色块放置区 ,黄
色区域为机器人启动区 。其中存储区外的黑线为宽 1cm 的黑色引导线 。中间正五边形为色块放置区 ,正五
边形的边长为 50 cm。正五边形与启动区在同一中轴线上 ,如图中虚线所示 (实际场地无虚线 ) 。场地的其他
区域均为白色 。场地周边为白色高 20cm 的围栏 (在比赛规则中 ,五边形指正五边形的边线 ,五边形区域指正
五边形边线及其围绕的内部区域 ) 。
收稿日期
作者简介 黄宗杰 (
:
: 2009 - 10 - 10
1984 -
) ,男 ,硕士研究生 ,主要研究方向为智能控制 。
黄宗杰 ,王富东 ,杨春晖 ,等 :一款分拣搬运机器人的设计
63
第 2期
3 系统硬件设计
3. 1 机器人整体设计
本机器人采用三轮车身结构 ,其结构示意图如图 2所示 。两前轮分别利用两个步进电机驱动以控制方向
和速度 ,后轮为万向轮 ,起平衡作用 。该结构可以方便地实现对机器人的控制 ,最大的特点是可以实现原地转
向 ,灵活且效率高 。
图 1 比赛场地示意图
图 2 机器人结构示意图
本机器人采用 SST89E564RD单片机作为控制核心 ,采用步进电机 、舵机为动作器件 ,使用 L298集成块驱
动电路驱动步进电机 ,使用舵机带动机械手夹取物块 。加上光电传感器的配合 ,完成前进 、后退 、寻迹 、左转、
右转 、机械手的张开与闭合等动作 。系统框图如图 3所示 。
3. 2 电源模块
图 3 系统框图
本机器人需要两类电源 :一类是供给单片机 、传感器 、舵机工作的电源 ,通常为 5V,约数十至百毫安 ;另一
类为步进电机驱动电源 ,电压为 12V,电流在数百毫安至数安培之间 。
综合考虑各种方案后 ,本机器人最终采用一组 12V 的电池作为电源 ,一方面直接给步进电机供电 ,另一
方面采用 LM2940作为电压转换器 ,降压成 5V 供给单片机 、传感器和舵机 。另外 ,为了消除舵机对单片机和
传感器电路造成的干扰 ,单独采用一片 LM2940为舵机供电 。
3. 3 传感器模块
本机器人采用反射式红外光电传感器 ,其应用电路如图 所示 。当红外光电二极管 D 发出的光照射在
白色区域上时 ,反射光很强 ,高灵敏度光电晶体管 Q 导通 ,输出低电平 ;当 D 发出的光照射在黑色引导线上
时 ,反射光很弱 ,光电晶体管 Q 截止 ,输出高电平 。从光电晶体管出来的信号经过一个反相器后输入到单片
1
1
4
1
1
64
苏州大学学报 (工科版 )
第 30卷
机 ,供单片机使用 。当反相器输出为高电平时 ,说明传感器位于白色区域上 ;当反相器输出为低电平时 ,说明
传感器位于黑色引导线上。
光电传感器位于机器人的车身前部 ,其位置分布如图 5所示 ,中间三个传感器恰好能保证都检测到黑色
引导线 。将 5个传感器并排安放在机器人小车底盘下部 ,其分布垂直于机器人行走的方向 ,中间 3个传感器
用于寻迹 ,两端的 2个传感器用于判断机器人的车身是否垂直于引导线 。
图 4 传感器电路
图 5 传感器位置分布图
当机器人沿着引导线行走时 , S2、S3、S4工作。当 S2输出为高电平时 ,说明 S2偏离了引导线 ,机器人有
向左偏的趋势 ,需要向右进行调整 ;当 S4输出为高电平时 ,说明 S4偏离了引导线 ,机器人有向右偏的趋势 ,需
要向左进行调整 ;当 3个传感器输出都为低电平时 ,说明机器人的前进方向与引导线大体一致 ,不需要调整 。
当机器人在白色区域上行走 ,且接近比赛场地两侧的黑色引导线时 , S1、S5工作 。如果 S1、S5中的任意
一个输出为低电平时 ,检测另一个传感器的输出是否也为低电平 ,如果是 ,说明机器人垂直于引导线 ,反之 ,说
明机器人的姿态有所偏差 ,需要进行调整使其垂直于引导线 ,从而保证机器人转过 90°后能以一个较正的姿
态开始寻迹行走。
3. 4 控制器模块
本机器人的核心控制芯片 89E564RD 单片机是美国 SST公司推出的一款内嵌 89C52核的单片机 。除了
性价比高之外 ,选用这款单片机还考虑到以下 3点原因 :
(1) 它的引脚和指令系统与 Intel公司的 MCS251系列单片机完全兼容 ,为编写软件程序提供了极大的
方便 。
(2) 它具有在应用编程 ( IAP)和在系统编程 ( ISP)功能 ,为在线调试和程序烧录提供了极大的方便 。
(3) 它内置 3个 16位的定时 /计数器 ,为用定时器产生 2路 PWM信号来控制舵机提供了极大的方便。
3. 5 步进电机驱动模块
本机器人的步进电机驱动模块采用 L298作为驱动芯片 ,用 2片 L298分别驱动左右两个步进电机 。L298
内部包括 H 型电路 ,该电路可以简单地实现步进电机的控制 ,简化了硬件电路的结构 。
L298是一个高电压 、大电流的全桥驱动器 ,它用于接受标准的 TTL 逻辑电平然后驱动电感类负载 ,如步
进电机 、直流电机等 。两个输入使能端能够独立地允许或者屏蔽输入信号 。
步进电机驱动电路如图 6所示 ,电路利用 L298的 ENA和 ENB 可以实现过流保护功能 。当流过电阻 R1
或 R2电流过大时 ,比较器的负端电压大于正端的电压 ,输出为低电平 , ENA和 ENB 为 0,前面电路被切断 ,起
到过流保护作用。输出端的上下共 8个二极管起续流作用 ,保证电机正常工作 。
3. 6 机械手模块
机械手模块包括机械手和舵机两部分 。
机械手设计成对称结构 ,合拢的时候类似于葫芦的形状 ,从而保证能同时稳稳抓取两个色块 ,提高了抓取
的效率 。其结构图参见图 2。
舵机是一种位置伺服的驱动器 ,适用于那些需要角度不断变化并可以保持的控制系统 。本机器人选用的
舵机的工作原理是 控制信号由接收机的通道进入舵机内的信号调制芯片 ,获得直流偏置电压。它内部有一
、宽度为 5 的基准信号 ,将获得的直流偏置电压与电位器的电压比较 ,获得
个基准电路 ,产生周期为
1. m s
:
20ms
第 2期
黄宗杰 ,王富东 ,杨春晖 ,等 :一款分拣搬运机器人的设计
65
图 6 步进电机驱动电路
电压差输出 。最后 ,电压差的正负输出到电机驱动芯片决定电机的正反转 。当电机转速一定时 , 通过级联减
速齿轮带动电位器旋转 ,使得电压差为 0,电机停止转动 。
舵机的控制信号是由单片机的定时器产生的 PWM信号 ,利用占空比的变化改变舵机的位置。 PWM 值
和内部基准值两者比较 ,差值决定舵机的转向以及转角 。在转动的过程中 ,舵机内部的基准值发生改变 ,越来
越接近控制信号给定的 PWM值 ,当两者相等时 ,表明已旋转到指定角度 。
4 系统软件设计
主程序流程图如图 7所示 ,本机器人的软件设计主要包括步进电机
的控制和舵机的控制两部分 。
由于步进电机可以精确地控制到“步 ”,而且每一步走过的距离能够
通过计算准确得到 ,因此对步进电机的控制就非常容易 。选用 2个型号
相同的步进电机 ,一方面可以保证将机器人在白色区域走直线时的误差
控制在很小的范围内 ,另一方面可以实现机器人左转或者右转任意规定
的角度 。配合 S1和 S5这两个传感器在机器人到达引导线时的修正作
用 ,能够有效地消除累积误差 ,从而实现对机器人控制的高效 、准确 。在
单片机内分别储存了与步进电机前进、后退 、左转 、右转等状态对应的数
据表 ,机器人在行走的过程中 ,首先搜索步进电机当前的状态 ,与表中的
数据进行比较 ,根据机器人要做的动作 ,查找对应表格中下一个状态的数
据 ,将此状态赋给步进电机 ,从而控制步进电机的运动 。
单片机系统实现对舵机输出转角的控制 ,需要完成两个任务 :首先是
产生基本的 PWM周期信号 ,本设计是产生 20m s的周期信 号 ; 其次是脉
冲宽度的调整 ,即单片机模拟 PWM信号的输出 ,并且调整占空比 。本设
计采用的方式是改变单片机定时器中断的初值 ,将 20m s分为两次中断执
行 ,一次短定时中断和一次长定时中断 。
图 主程序流程图
7
66
5 路径规划
考虑到除了 正五边形 顶点的红 色
色块和底边的蓝色色块外 ,两个相同颜
色的色块均在同一条水平线上 ,所以机
器人可以同时搬运 两块相同颜色的 色
块 ,从而提高搬运效率 。本机器人参加
比赛 时的 路径 规划如 图 8 所示 , 启 动
区 、蓝存储区和红存储区的编号分别为
A、B、C , ①~⑩代表 10个要搬 运的色
块 ,机器人沿图中所示路线搬运全部色
块的过程为 :
A →①→B →②③→C→④⑤→B →
⑥⑦→C →⑧⑨→B →⑩→A →C →A
6 结束语
苏州大学学报 (工科版 )
第 30卷
图 8 机器人路径规划示意图
本文所设计的机器人能够按照预先规划的路径实现对两种颜色色块的分拣搬运 ,为此类机器人的设计提
供了一种思路和方法 。制作的机器人参加了第三届江苏省机器人大赛 ,运行过程稳定 ,抗干扰能力强 ,最终获
得了该项目二等奖 。但是与参赛的其他机器人相比 ,本机器人在机械手的结构设计和路径规划上还可以进一
步完善 ,例如将机械手设计成环绕型的 ,配合合理的行走路线 ,便能实现一次搬运 5个同一颜色的色块 ,从而
大大缩短所用的时间 。
[ 1 ] 谭浩强 . C 程序设计 (第二版 ) [M ]. 北京 :清华大学出版社 , 2003.
[ 2 ] 马忠梅 . 单片机 C 语言 W indows环境编程宝典 [M ]. 北京 :北京航空航天大学出版社 , 2003.
参 考 文 献
D esign of a Sor tin g an d C on vey in g Rob ot
H uang Zongjie,W ang Fudong, Yang Chunhui,Ma Hongwei
( School of Mechan ical and Elatrical Engineering, Suzhou U niversi ty, Suzhou 215021 , Ch ina)
Abstrac t: Com bining with the robot com petition, this paper introduces the de sign and implem entation of a sorting and
conveying robot. This robot ism ade w ith SST89E564RD MCU as a controller. A ssisted by a sensor module, a stepper
motor driverm odule and a m echanical hand module, the robot can move according to the route which has p rogramm ed
a t the beginning. A t the sam e time, it can p ickup and putdown the color block.
Key W or ds: sorting and ronveying robot; SST89E564RD MCU; stepper motor drive r; mechanical hand