摘要:采用模块化的设计思想,设计了一个可靠的低价钱双足机器人平台。首先简化机器人的空间运动和受力,通过剖析和求解,得到与机器人平衡相关的各个关节的位移、角度等变量的关系;用C语言在CodeVsionAVR编译器下开发程序,选用1片ATmega128单片机来实时控制20个伺服襟翼,并达到毫秒级的控制精度。最终实现了两足仿人机器人的各个关节的协调平稳运动。
关键词:两足仿人机器人;模块化;单片机;控制精度
0序言
机器人是一种典型的机电一体化产品,随着科学技术的进步,机器人的应用领域不断扩宽[1]。双足仿人机器人具有仿人的外观和步行方法,行走系统占地面积小,活动范围大[2],联通“盲区”小,对步行环境要求低且具有一定的逾越障碍的能力,这种特性遭到了各方的广泛关注,成为机器人研究领域的热点。两足仿人机器人运动过程中的行走和对机器人的控制是研究的重点和难点。双足步行是生物界难度最大的步行动作,但其步行性能却是其他步行结构所难以比拟的,因而双足步行是双足仿人机器人研究的关键技术之一。稳定的步行是双足仿人机器人区别于其他机器人的主要标志。本文研发了一种双足仿人机器人,通过对机器人进行步态规划,使其能否在平地上实现稳定行走。
1整体设计思想
双足机器人在行走过程中,其运动的平稳性受重力、运动机构的惯性、软硬件设计等综合诱因的影响。为提升其稳定性,简化设计思路,双足机器人的设计采用了模块化的设计方式[3]。双足机器人的设计主要分为3个模块:结构运动模块、硬件电路模块、软件程序设计模块。整体设计思路如图1所示。
2双足机器人结构设计
双足机器人的运动与人类的运动形式类似,是通过脚与地面接触来促进机体联通。一个步行周期基本上可以分为4个状态,如图2所示。
(1)双腿着地,机器人的重量平分在两条腿上。
(2)双腿着地,机器人的重心往一条腿上偏斜,重量集中在一条腿上。
(3)单脚着地,机器人的一条腿空起,打算迈步。
(4)双腿落地,机器人的重心从一条腿偏斜到两条腿中间,两条腿受力均匀。
式(1)和式(2)中,m1、m2、m3分别为L1、L2、L3的质量,L1、L2、L3、L4为已知条件,须要求出的关系。因为机器人运动过程中存在惯性,使估算复杂,须要根据以上理论关系结合实验,用软件进行调试。
手臂把重心前移的情况如图4所示。
LsinC1+2LcosB1=H(3)
A1=B1(4)
S1=2LsinA1(5)
其中,H和L已知,S1为重心前移的距离,由式(3)、式(4)、式(5)可以求出:
B1=A1(6)
C1=arccos(H-2LcosB1)×180°/π(7)
机器人手臂运动情况与手臂运动类似。
3硬件电路设计
机器人采用ATmega128单片机[4]作为主控制芯片。ATmega128有64个引脚,53个可编程I/O口,具有处理速率快、功能齐全的特性。各执行部件采用伺服襟翼实现,具有容积紧凑、输出扭矩大、稳定性好等特性。其控制原理图如图5所示。
4软件设计
在机器人动作的过程中,最为关键的是保持重心的位置。为保持机器人运动时的平衡,采用HENG1[60]、HENG2[100]、HENG3[60]、HENG4[60]、HENG5[20]、HENG6[20]6个一维链表调整机器人在运动过程中的重心位置,控制程序的流程图如图6所示。
伺服襟翼I/O控制口为PA口、PD口和PC口的低四位口,程序设计如下:
Voidrobot_duoji(unsignedcharlabel,unsignedcharanglex)
{switch(label)
{case11:angle11=anglex;break;
case12:angle12=anglex;break;
case13:angle13=anglex;break;
…
}
}
通过ATmega128单片机的定时器1实时精确形成20个伺服襟翼的10sPWM波,单片机每10s中断一次,每中断一次angle自加1,加到255后又从0开始自加1,这么循环。angle完成一次自加的周期是2.55ms。用angle与angle(x)比较,假如angle
interrupt[TIM1_OVF]voidtimer1(void)
{
TCNT1H=0xff;
TCNT1L=0xec;
angle++;
if(angle
PORTA|=0x01;
else
PORTA&=0xfe;
…
}
5结束语
通过机构运动剖析与电路的仿真设计,完成了双足机器人的设计。采用模块化的设计方式,以及合理的程序结构和机械部件,使系统结构简单,且具有较好的稳定性、可靠性,较好地实现了双足机器人的直线行走动作。
参考文献
[1]周伯英.工业机器人设计[M].上海:机械工业出版社,1995.
[2]毛勇,王家廞,庄新彦,等.基于气动人工胸肌的双足机器人关节设计[J].电子技术应用,2006,32(3):78-80.
[3]董存辉,摆玉龙,柴乾隆.基于模糊控制的自主寻迹机器人设计[J].电子技术应用,2012,38(5):139-141.
[4]刘兰香,张秋生.ATmega128单片机应用与开发实例[M].上海:机械工业出版社,2006.