范文一:ARMOR_1双足竞步机器人的设计与开发
机器人技术与应用
ARMOR-1双足竞步机器人的设计与开发
杨洋
北京物资学院,北京,101149
摘要:ARMOR-1双足竞步机器人是专为2010中国机器人大赛暨RoboCup公开赛设计开发的。本文详细介绍其硬件结构、设计理念和具体的开发过程,并分析在大赛中显示的优势和不足之处。
1 引言
机器人学科是一门交叉性极强的综合性学科,通过动手实践、使用机器人系列教学工具,学生们可以巩固并学习机械设计、电子工程及信息技术等多学科知识。北京物资学院今年首次参加中国机器人大赛暨RoboCup公开赛,专门设计开发出双足竞步机器人ARMOR-1。
2 ARMOR-1双足竞步机器人的硬件构成
由于ARMOR-1是专门为本届机器人大赛的双足竞步项目设计的,所以硬件结构的设计严格按照比赛规则的要求。
整体结构只有双足,用6只舵机和一个伺服舵机控制板完成。ARMOR-1最大尺寸为160mm(长)×103mm(宽)×240mm(高),重量为0.9kg。
压重U型结构
(交叉足脚板);(11)压重;(12)U型结构
2.2 硬件结构组装
ARMOR-1的组装思路如下:
(1)每条腿3个舵机、两个关节,脚底的舵机控制脚板转动走路时保持平衡。
(2)为了使舵机可以自由转动,关节采用U型结构,三个舵机分为两部分,腿部有两个连接在一起的舵机,另外一个与脚底板相连。
(3)脚板上用压重物调节翻转时的重心。
(4)为了减轻机器人主板落地时的冲力,在左上面的铝片粘贴泡沫。
ARMOR-1的装配过程如下:
(1)连舵机,用1号板作为关节连接两个舵机。
2.1 硬件各组件
ARMOR-1的各组件如下。
(1)舵机(重量:55g ;减速比:1/254;输入电压:
7V~10V;最大扭矩:12kgf.cm~16.5kgf.cm;转速:0.269s/60°~0196s/60°) ;(2)锂电池
舵机
锂电池
控制板
(12.3V 2000mA);(3)控制板;(4)铝片1(上片):保护
(2)将2号板连在U型结构一侧。
铝片1(上片):保护电池和控制板铝片2(下片):与舵机连接
螺丝
(3)经两个U型结构连在一起。 (4)将舵机与压重物用热熔胶粘在3号板、4号板(交叉足)上。
电池和控制板;(5)铝片2(下片):与舵机连接;(6)螺丝;
1号板脚底板2号板交叉足脚板
(7)1号板;(8)3号板(脚底板);(9)2号板;(10)4号板
2010年7月30日《机器人技术与应用》
35
专家评述冠军视点收获与建议
实体技术探讨
仿真技术研究
(5)U型结构与脚底板的舵机相连。
(6)将脚底舵机与第1步的两舵机相连。
(7)将U型结构与铝片1相连。
(8)将电池与控制板相连,再粘于板1上。
(9)将板2上端粘上泡沫固定在板1上。
(10)将板1通过下端的U型结构与舵机连接。
36
《机器人技术与应用》第4期
2.3 组装完整的ARMOR-1实体图
ARMOR-1结构简图(正面 )
3 ARMOR-1机器人软件平台概述软件
A R M O R -1机器人使用的软件平台是M o t i o n E d i t o r ,BehaviorControl Programmer。软解开发界面。
在制作过程中,利用图形化编译界面编写ARMOR-1的运动程序。在编译器界面中可以简单操作一个流程图标,然后编译、下载;等待出现“下载成功!”后,自检程序已经下载到机器人的操作系统中。
自检程序下载完毕后,我们可以开始检测ARMOR-1。拔下串口连接线,将机器人带到安全的地方(空旷、无障碍平地),进行自检。
4 ARMOR-1的优势和不足
在本届机器人大赛上,ARMOR-1在双足竞步比赛中能够顺利地完成行走、翻跟头、起立等动作,并且在比赛的场地上可以直线行走。
由于ARMOR-1的部件加工采用手工制作,部件形状的误差较大,因此机器人重心位置的计算难度很大,这使调试机器人行走指令时,对行走平衡感的把握难度加大。在硬件不足的情况下,行走动作等没有出现失误,说明用于比赛的软件程序调试得比较成功。
不足之处在于:和其他参赛机器人比较来看,ARMOR-1行走的速度比较慢,翻跟头的速度也较慢,这在一定程度上影响了比
赛成绩。分析发现,出现这些问题的原因在于:锂电池和控制板都
置于上方,提高了重心,ARMOR-1为了保持平衡,步幅相对较
小。因此, ARMOR-1的硬件结构还有很大的改造空间。
5
总结
为了提高大学生的创新素质,我校积极开展大学生科技训
练和创新性竞赛月活动,校内及校外的各种机器人竞赛已逐渐成
为计算机类专业大学生创新素质培养的重要平台。通过参加本届
全国机器人竞赛,大学生在创新、协作和实践等方面都有巨大收
获,促进了和其他高校之间的交流,激发了进行科技创新的兴趣
和潜力。
范文二:双足竞步机器人的设计与实现
豆丁网标准与论文:http://www.docin.com/week114
双足竞步机器人的设计与实现
王冰,朱旭光,贺智宇,刘子龙,崔哲源
(辽宁工程技术大学电子与信息工程学院,辽宁葫芦岛 125105)
5 摘要:本文介绍了一个六个自由度的小型双足机器人的设计、调试与实现。包括机械结构设
计、电路设计与制作,机器人步态规划算法研究,利用 Atmega8 芯片实现了对六个舵机的
分时控制,编写 VC 上位机软件,通过串口通信对双足竞步机器人进行调试,通过人体仿生
学调试出机器人的步态规划。实现了双足竞步机器人稳定向前行走、立正、向前翻跟头、向
后翻跟头。并在 2011 中国机器人大赛暨 robocup 公开赛荣获双足竞步机器人大学组(狭窄
10 足印)项目比赛二等奖。
关键词:机器人,串口通信,步态规划
中图分类号:TP24
Biped Walking Robot Design and Implementation
15 Wang Bing, Zhu Xuguang, He Zhiyu, Liu Zilong, Cui Zheyuan
(Liaoning Technical University ,School of Electronic and Information Engineering, Huludao,
Liaoning 125105)
Abstract: IThis article describes a six degree of freedom for small biped robot design, debugging and implementation. Including mechanical design, circuit design and production, robot gait planning
20 algorithm, using Atmega8 chip time-sharing of six servo control, the preparation of VC PC software, serial communications through the steps of the bipedal robot competition debugging, debugging a robot by human bionics gait planning. Biped Walking Robot to achieve a steady walk, stand at attention, forward somersaults, backward somersaults. And in 2011 China Robot Competition and robocup legged Walking Robot Open University won the group (the narrow footprint) Project Competition
25 Award.
Key words: Robot; Serial communication; Gait planning
0 引言
机器人是近年来发展起来的综合学科,它集机械、电子、计算机、材料、传感器、控制
30 技术及人工智能等多门学科于一体。反映着一个国家智能化和自动化的水平,同时也是一个
国家高科技实力的重要标志。
双足机器人具有传统的轮式,履带式机器人无法比拟的优越性,步行的环境要求很低,
能适应复杂的地面情况,例如台阶、斜坡、不平整的路面等,活动的盲区较小。因此能够代
替人类在有辐射、有粉尘、有毒环境中作业。此外,双足机器人的能耗较小。与其他机器人
35 相比具有体积小、重量轻、动作灵活等特点。通过研究表明,足式机器人的能耗通常低于轮
式和履带式。双足机器人还是工程上少有的高阶、非线性、非完整约束的多自由度系统,这
对机器人的运动学、动力学及控制原理的研究提供了一个非常理想的实验平台。综上,双足
机器人的研究具有十分重大的科研意义,可以推动仿生学、人工智能、计算机仿真学、通讯
[1]等相关学科发展。
40 双足竞步机器人是一种没有上身的双足机器人,是机器人进行研究理想平台,同时也是
全国机器人大赛的指定项目,我们利用这个机会对双足竞步机器人进行研究,并与其他高校
作者简介:王冰(1990-),男,学生,人工智能
通信联系人:朱旭光(1980-),男,讲师,计算机应用技术. E-mail: xuguang_zhu@yahoo.cn
- 1 -
豆丁网标准与论文:http://www.docin.com/week114
进行交流,相互学习,共同进步。
1 双足竞步机器人总体设计方案
使用 8.4V 电源,通过 7805、7806 稳压芯片分别给 Atmega8 芯片和舵机供电,外部加
45 max232 电路实现 PC 与单片机的串口通信,利用 RB-150MG 舵机(全金属齿、大扭矩、大 转角范围的机器人专用伺服舵机)控制机器人的六个自由度,仿照人体步态规划自主设计的 机械结构,使其重心低、走路平稳。
使用 AVR STDIO 软件编写单片机程序,利用 Atmega8 T0 定时器输出 PWM 值,使舵 机在 0-180 度精确转动,使用 VC++6.0 编写机器人上位机调试软件。在 VC 中插入 MSComm
50 控件,方便实现了与下位机的通信,精确控制舵机的转动角度。对机器人步态规划起到了重
[2]要的作用。简单、快捷的完成机器人的行走、翻跟头。
2 双足竞步机器人的硬件设计
2.1 机械结构设计
要使机器人能够平稳的行走,首先要设计好机械结构。我们选用了 6 个舵机作为机器人
55 腿的 6 个关键,因为舵机的理论旋转角度是 180 度,所以我们把腿部和膝盖的 4 个舵机竖直 放置,脚步的 2 个舵机水平放置。在选材方面,我们主要用的是铝合金板为主要的框架材料, 也用了一些塑料的电路板做底板。机器人的 2 个手臂也是用的金属做支撑,以保证机器人行
[3]走时的稳定,也减少了舵机震动所带来的影响。
60 图 1 机械结构
Fig.1 Mechanical design
- 2 -
豆丁网标准与论文:http://www.docin.com/week114
2.2 电路设计
选用 atmega8 芯片作主控制器,ATmega8 特点:8K 字节的系统内可编程 Flash, 512 字 节 EEPROM,1K 字节 SRAM,32 个通用 I/O 口线,32 个通用工作寄存器,三个具有比
65 较模式的灵活的定时器/ 计数器(T/C), 片内/ 外中断,可编程串行 USART,面向字节的两线 串行接口,10 位 6 路 ADC,具有片内振荡器的可编程看门狗定时器,一个 SPI 串行端口, 以及五种可以通过软件进行选择的省电模式。
电源采用 8.4V 的锂电池,通过 7805 稳压后的 5V 给芯片供电,通过 7806 稳压后的 6V 给舵机供电,这样避免了舵机和控制电路之间的干扰,并且更有力的保证舵机的供电。
70 选用 max232 芯片作串口设计的单电源电平转换,其特点符合所有的RS-232C技术标准, 只需要单一 +5V 电源供电,片载电荷泵具有升压、电压极性反转能力,能够产生+10V 和-10V 电压 V+、V- ,功耗低,典型供电电流 5mA,内部集成 2 个 RS-232C 驱动器,内部集成两 个 RS-232C 接收器。
选用 RB-150MG 舵机控制机器人六个自由度。其特点为全金属齿大扭矩大转角范围的
75 机器人专用伺服舵机,其内部采用的电机为直流有刷空心杯电机,内部采用无铁转子,具有 能量转换效率高、激活制动响应速度快、运行稳定性可靠、自适应能力强、电磁干扰少等优 点,与同等功率的铁芯电机相比体积小、重量轻;舵机反馈电位器采用导电塑料电位器,其 精度和耐磨程度大大优于线饶电位器;电机控制集成电路(IC)采用数字芯片与功率开关组成 H 桥电路,电压控制双极性驱动方式具有反应速度更快、无反应区范围小、定位精度高、抗
80 干扰能力强兼容性好等优势
7805 Atmega8
稳压芯片 主控芯片
8.4V PWM 直流电源
7806 RB-150MG
稳压芯片 舵机
图 2 控制原理图
Fig.2 Control schematic
85 3 双足竞步机器人的软件设计
3.1 AVR 单片机程序设计
RB-150MG 舵机的控制信号为 PWM 信号,通过改变占空比进而改变舵机转动的角度。 通过多次实验,测得脉宽在 0.5ms-2.5ms 时,对应舵机在 0 度-180 度区间转动,并呈线性关 系。由于 atmega8 的 8 位 pwm 控制精度不高,为了可以精确调整舵机所转角度并能分时控
[4]90 制 6 路 pwm,利用 atmega8 t0 定时器软件仿真 pwm 信号输出。 为了实现方便调试双足
竞步机器人步态规划,我们设计 pc 上位机与 avr 单片机进行串
- 3 -
豆丁网标准与论文:http://www.docin.com/week114
口通信,设置 avr 单片机串口接收中断,接收对应舵机编号和该舵机 pwm 参数,并实时改
变舵机角度,实现机器人仿真行走。
AVR 单片机主要程序
//主函数 95
int main()
{ DDRC=0xff; //DDRC 拉高
PORTC=0x3f; UBRRH = (CPU/BAUD/16-1)/256; 100 UBRRL = (CPU/BAUD/16-1)%256; //设置波特率 UCSRB |= (1<><>
UCSRC=(1
TCCR0 = 0; 105 TCCR0 |= (1
} //串口接收中断 SIGNAL(SIG_UART_RECV) 115
{ static int j=0;
if(j==0) {
k = UDR; 120
j++;
} else { 125 duo[k] = UDR; j=0;
}
} //定时器 T0 中断 SIGNAL(SIG_OVERFLOW0) 130
{ i++; TCNT0 = 105; if(i>=800)
135 {i=0;PORTC=0x3f;}
- 4 -
豆丁网标准与论文:http://www.docin.com/week114
if(i==(20+duo[1])) PORTC &=~ (1<0);>0);>
if(i==(20+duo[2])) PORTC &=~ (1<1);>1);>
if(i==(20+duo[3])) 140
PORTC &=~ (1<2); if(i="=(20+duo[4]))" portc="" &="~">2);><3); if(i="=(20+duo[5]))">3);>
PORTC &=~ (1<4); 145="">4);>
if(i==(20+duo[6]))
PORTC &=~ (1<5);>5);>
} 3.2 PC 上位机调试软件设计 选用 VC++6.0 开发环境,利用 MFC 应用程序框架设计 PC 上位机调试机器人软件。添 150
加串口 MSComm 控件,添加对话框控件,每当通过滑动条改变舵机参数值触发串口响应函 数,发送对应舵机编号和该舵机 pwm 参数,并在编辑框生成 AVR 单片机程序,再用正则 表达式分析代码在上位机实现机器人的仿真行走,将调试出稳定的步态程序下载到单片机,
实现机器人的规定动作。上位机调试方法可以大大加快机器人的开发周期,并且能够让步行 机器人行走稳定,上位机具有操作简单、修改容易、使用灵活等特点
155
图 3 上位机调试与仿真界面 Fig. 3 PC debugging and emulation interface 上位机主要代码 //串口初始化 160
if(! m_comm1.GetPortOpen())//判断串口是否已经打开 {
m_comm1.SetCommPort(1); //选择串口号 1 m_comm1.SetPortOpen(TRUE); //打开串口 m_comm1.SetRThreshold(2); //收到两个字节引发 OnComm 事件
165
- 5 -
豆丁网标准与论文:http://www.docin.com/week114
m_comm1.SetInputMode(1);//输入模式选为二进制 m_comm1.SetSettings("9600,n,8,1"); //设置串口参数,波特率 9600,无奇偶校验,1 位 停止位,8 位数据位
MessageBox("串口初始化完毕","提示"); //提示串口成功初始化 170 } //滑动条控件触发响应函数 void CMyDlg::OnCustomdrawSlider1(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here
175 if(m_comm1.GetPortOpen())
{ int a=1;
m_edit1=m_slide1.GetPos(); //获取当前滑动条参数 m_edit2=m_slide1.GetPos()*180.0/85.0; 180
UpdateData(false); CString string="";
char c1='\0',c2='\0'; c1=(char)a; c2=(char)m_edit1; 185 string+=c1;
string+=c2; m_comm1.SetOutput(COleVariant(string)); //发送舵机编号和该舵机参数
if((auto1==1)&&(m_slide1.GetPos()!=b1)) { 190 b1=m_slide1.GetPos(); CString c3; c3.Format("duo[1]=%d;delay(10);",m_slide1.GetPos());
m_edit13+=c3; duo1[d1][0]=1;
195 duo1[d1][1]=m_slide1.GetPos();
d1++; UpdateData(false);
}
}
200
*pResult = 0;
} 4 双足竞步机器人步态规则
步态是在步行过程中,机器人各个关节在时间和空间上的一种协调关系,通过各个关节 [5]的运动轨迹来描述,步态规划的目标是产生期望步态。步态规划是机器人稳定步行的基础, 205
也是双足竞步机器人研究的一个关键技术。
为了保证双足竞步机器人的行走稳定,在狭窄足的竞步机器人中要保证机器人的重心在
行走中不变才能让机器人处于稳定状态。因此,在一个行走周期,先左侧身,右腿迈步,右
[6]脚落地,然后右侧身,左脚迈步,左脚落地。行走方式如下,所示。侧身的幅度要根据机
- 6 -
豆丁网标准与论文:http://www.docin.com/week114
210 器人的机械结构和重心的位置决定,这样才能保证行走中的稳定,当调试结束后用上位机软 件生成 avr 单片机程序。 5 总结 通过对机器人机械结构的设计,和软件调试,完成了机器人的规定动作。用软件弥补了
机械结构的缺陷与不足,为以后在机器人方面研究打下了基础,通过本次设计锻炼我们的动 手能力,提高了团队合作意识。并在 2011 中国机器人大赛暨 robocup 公开赛荣获双足竞步
215 机器人大学组(狭窄足印)项目比赛二等奖。 [参考文献] (References) [1] 谢涛,徐建峰,张永学,等(仿人机器人的研究历史、现状及展望[J](机器人,2002(4):312-320(
[2] 包志军,马培荪,全建刚,等(人行走速度规律的实验研究[J](实验室研究与探索,2000,(6) :39- 42( 220 [3] 俞志伟(双足机器人仿生机构设计与运动仿真[D]:(哈尔滨:哈尔滨工程大学,2006( 丽,刘卫国,伊 强(单片机控制的多路舵机用 PWM 波产生方法 [J](微特电机,2006,(2) :[4] 付 28 - 33( [5] 杨晶东,洪炳镕,黄庆成(双足足球机器人行走步态研究 [J](哈尔滨工业大学学报,2005,37 (7) : 876-878(225 [6] 胡凌云,孙增圻(双足机器人步态控制研究方法综述 [J](计算机研究与发展,2005,42 (5) :728-733(
- 7 -
范文三:双足竞步机器人中期报告
双足竞步机器人中期报告
项目负责人:游博杰 指导老师:张秋实
一.项目简介
本机器人为双足竞步机器人,由两条腿组成,脚的类型为交叉足,顾名思义就是,双足交叉行走的机器人,关节自由度来源于180度双向可变速的舵机,控制部分为舵机控制板(集成)具体的控制源是8位AVR单片机,电源是经稳压后的6v电池,机身材料为铝(暂定,待改进),大小限定为350mm*250mm*200mm以下,重量低于1KG。 具体功能:行走和翻滚。
二.课题研究的主要内容
以舵机控制板为控制系统,关节由舵机驱动,通过对舵机角度的调节来实现动作的实现,舵机的速度调节来实现行走或翻滚的快慢,依据此来设计机械结构,制作机身。
三.完成进度
控制源落实。
机械结构设计完毕。
部分机体制作完成(材料待改进)。
四.遇到的主要问题和解决办法
(1)原控制板因为贴片电阻损坏无法使用;
解决办法:在动手焊完无法修好的情况下的更换控制板得以解决。
(2)电压过高导致舵机超调(即抖动);
解决办法:发现后加稳压模块得以解决。
(3)舵机无法准确到达目标角度;
解决办法:PMW波幅值太大,即速度太快,通过上位机降低速度。
五.预期目标
10周:确定新的机身材料,并采购替补舵机。
11周至12周:测量新舵机尺寸并改进结构。
13周至15周:制作机体并进行相应调试。
16周至17周:能行走和翻滚。
18周以后:细微调整优化速度和平衡性。
范文四:双足竞步机器人比赛规则
双足机器人竞赛规则
竞赛项目:
机器人通过步行的方式从起点线走倒终点线(相距2米)地面为水平的木板起点线于终点线平行。
在行走过程中机器人要按照比赛规则完成指定的动作
竞赛共分为中学组、大学组,每组又分为两个项目(交叉足印、狭窄足印)其区别为关节构造及足部结构。
机器人结构及其规格的设定:
交叉足印竞步机器人:
结构只有双足、并只能以走路的方式来移动,机器人要分清楚正面及背面,以箭头方向作为正面,是自主式脱线控制,用不多于6只伺服马达及伺服马达控制板 来完成,最大尺寸为200mm(长)X 200mm(宽)X 300mm(高),最大重量不超过1Kg。
狭窄足印竞步机器人:
结构只有双足、并只能以走路的方式来移动,机器人要分清楚正面及背面,以箭头方向作为正面,是自主式脱线控制,用不多于6只伺服马达及伺服马达控制板 来完成,最大尺寸为200mm(长)X 200mm(宽)X 300mm(高),最大重量不超过1Kg.,狭窄足印竞步机器人, 单足最大尺寸要能放入(长)150mm X (宽)60mm长方格内。
要求:对于大学组的机器人必须自主设计制造。 竞赛内容:
交叉足印竞步机器人:
大学组:竞赛开始时先走3步、立正、然后卧下、向前翻跟斗3次,再起立、向前走3步、立正、然后卧下(身体向后)、再向后翻跟斗3次、再起立、然后以轻快步履走向终点,参赛者要在指定3分
钟或少于指定时间内完成所有动作,及要走到终点。
中学组:竞赛开始时先走3步、立正、然后卧下、向前翻跟斗3次,再起立、向前走3步、立正、然后卧下(身体向前),向前翻跟斗3次,再起立、然后以轻快步履走向终点,参赛者要在指定5分钟或少于指定时间内完成所有动作,及要走到终点。
狭窄足印竞步机器人:
大学组:竞赛开始时先走3步、立正、然后卧下(身体向前)、向前翻跟斗3次,再起立、向前走3步、立正、然后卧下(身体向后)、再向后翻跟斗2次、再起立、然后以轻快步履走向终点、参赛者要在指定5分钟或少于指定时间内完成所有动作,及要走到终点。
中学组:竞赛开始时先走3步、立正、然后卧下(身体向前)、向前翻跟斗3次,再起立、向前走3步、立正、然后卧下(身体向前)、再向前翻跟斗2次、再起立、然后以轻快步履走向终点、参赛者要在指定7分钟或少于指定时间内完成所有动作,即要走到终点。
1.机器人行走时每次跌倒扣10分,由栽判指定在原位将机器人重新放正继续竞赛,不另补时。
2.不按指定动作次序运行的机器人将按次序偏差次数扣分,每次偏差扣10分。
3.机器人行走每出线一次扣10分。
4.裁判未指定情况下,人为干预一次扣10分。
5.以扣分少者为胜;在扣分相同条件下,以使用时间短者为胜。
自由体操
比赛内容是将10只伺服马达 (不大于150 x 150 x 350 mm) 的人型机器人放在一个2米直径,贴了界线的圆型场地内,在界线内中心点上有一直径25cm圆作为起步区,机器人就在2米场地内,做出体操表演(时间小于2分钟),动作包括起始动作:双手双足贴身直立、向前鞠躬。再做其它动作编体操程序来定。,动作次序不限,例如:前胸翻、后胸翻、右转90度前胸翻、左转90度后胸翻、单手左掌上压、单手右掌上压、双手掌上压、左侧手翻、右侧手翻、倒立、自编动作等,收式为双手双足贴身直立、向前鞠躬、再直立。以上动作除开始及收式外,其它动作各做1次。另外参赛队伍的自主设计的动作由裁判进行评定后根据动作的难度和完成的效果进行加分。
对以上机器人 大学组必须自主制造。
1.机器人每出线一次扣10分。
2.裁判未指定情况下,人为干预一次扣10分。
3.以扣分少者为胜;在扣分相同条件下,以使用时间短者为胜。
范文五:双足竞步机器人(交叉足印)
中国机器人大赛暨
Robocop公开赛
设计名称: 双足竞步机器人(交叉足印)
团队名称: 机电之星1队
设计时间: 2011年7月至2011年8月
设计人员: 杨 、李 、娄
刘 、许 、张
指导教师: 布 、朱
摘 要
本次设计采用ATmega16L单片机作为双足竞步机器人控制单元的核心,使其具备自主决策和智能判断的能力。使用六个SH-14-M模拟舵机作为关节驱动和一个模拟舵机控制板作为机器人的驱动,控制机器人完成各种动作。
其实现的主要功能有:机器人自主地由步行的方式从起点线走到终点线(场地:相距200cm,限宽60cm),利用身体的各关节做一些预定的动作;先从起点走出3步距离、立正、然后卧下、向前翻跟斗3次,再起立、向前走出3步距离、立正、然后卧下(身体向后)、再向后翻跟斗3次、再起立;然后以轻快步履走向终点,机器人会在4分钟以内完成所有动作。
研究的主要内容有:舵机的正确使用, ATmega16L单片机的编程,机器人的步行的步态的设计与规划、行走的轨迹和执行相应动作等。经过团队的努力,本设计实现了大赛所要求实现的全部功能,无论是翻转、行走,还是卧下等都达到了预期的效果,为下一步的继续改进和发展奠定了基础。
关键词:ATmega16L、模拟舵机、翻转、行走、轨迹
目录
第1章 绪论 ....................................................... 1
1.1 机器人的简述 ............................................... 1
1.2 机器人的组成 ............................................... 1
1.3 机器人发展现状及前景 ....................................... 3
1.4 双足竞步机器人的主要研究 ................................... 5
第2章 机器人的总体方案设计 ....................................... 6
2.1 双足竞步机器人竞赛规程的解读 ............................... 6
2.1.1 竞赛内容概述 .......................................... 6
2.1.2 双足竞步机器人的限制 .................................. 6
2.1.3场地规格分析及说明 ...................................... 7
2.2 双足竞步机器人总体分析 ..................................... 8
2.2.1 功能定位 ............................................... 8
2.2.2 自由度的配置 ........................................... 8
2.3系统结构设计 ................................................ 9
2.3.1 布置对称性 ............................................. 9
2.3.2 驱动方案的选择 ........................................ 10
第3章 双足竞步机器人步态规划 ..................................... 12
3.1步态规划的基本原则 .......................................... 12
3.2步态规划的具体方法 .......................................... 13
第4章 控制系统的硬件设计 ......................................... 16
4.1 主控制板 ................................................... 16
4.2硬件电路总体结构 ............................................ 17
4.3 舵机选型 ................................................... 20
第5章 控制系统的软件设计 ......................................... 23
5.1 Arduino简介 ................................................ 23
5.2 程序设计 ................................................... 24
5.2.1主程序 ................................................. 24
5.2.2行走程序 ............................................... 25
结束语 ............................................................ 32
谢词 .............................................................. 33
参考文献 .......................................................... 34
附录 .............................................................. 35
第1章 绪论
1.1 机器人的简述
机器人是作为现代高新技术的重要象征和发展结果,已经广泛应用于国民生产的各个领域,并正在给人类传统的生产模式带来革命性的变化,影响着人们生活的方方面面。
在研究和开发及不确定环境下作业的机器人的过程中,人们逐步认识到机器人技术的本质是感知、决策、行动和交互技术的结合。随着人们对机器人技术智能化本质认识的加深,机器人技术开始源源不断地向人类活动的各个领域渗透。结合这些领域的应用特点,人们发展了各式各样的具有感知、决策、行动和交互能力的特种机器人和各种智能机器,如移动机器人、微机器人、水下机器人、医疗机器人、军用机器人、空中空间机器人、娱乐机器人等。
机器人技术是一门综合了传感与检测、运动控制、图形图像处理等技术的新型学科,它融合了机械、电子、传感器、计算机硬件、软件、人工智能等许多学科的知识,涉及到当前许多前沿领域的技术。随着电子技术的飞速发展,智能机器人在越来越多的领域发挥着人类无法代替的作用。
机器人能力的评价标准包括:智能,指感觉和感知,包括记忆、运算、比较、鉴别、判断、决策、学习和逻辑推理等;机能,指变通性、通用性或空间占有性等;物理能,指力、速度、连续运行能力、可靠性、联用性、寿命等。因此,可以说机器人是具有生物功能的三维空间坐标机器。
1.2 机器人的组成
机器人一般由执行机构、驱动装置、检测装置和控制系统等组成。典型的一个机器人结构示意图如图1.1所示。
图1.1 典型机器人结构示意图
执行机构:即机器人本体,其臂部一般采用空间开链连杆机构,其中的运动副(转动副或移动副)常称为关节,关节个数通常即为机器人的自由度数。根据关节配置型式和运动坐标形式的不同,机器人执行机构可分为直角坐标式、圆柱坐标式、极坐标式和关节坐标式等类型。出于拟人化的考虑,常将机器人本体的有关部位分别称为基座、腰部、臂部、腕部、手部(夹持器或末端执行器)和行走部(对于移动机器人)等。
驱动装置:其按其动力源的形式,分为电动、气压驱动、液压驱动或其组合形式的驱动,其运动过程可由行程、转矩或轴向推力的大小来控制。具体的实现形式,可以是轮式,履带式或者是关节式。
检测装置:其作用是实时检测机器人的运动及工作情况,根据需要反馈给控制系统,与设定信息进行比较后,对执行机构进行调整,以保证机器人的动作符合预定的要求。作为检测装置的传感器大致可以分为两类:一类是内部信息传感器,用于检测机器人各部分的内部状况,如各关节的位置、速度、加速度等,并将所测得的信息作为反馈信号送至控制器,形成闭环控制。另一类是外部信息传感器,用于获取有关机器人的作业对象及外界环境等方面的信息,以使机器人的动作能适应外界情况的变化,使之达到更高层次的自动化,甚至使机器人具有某种“感觉”,向智能化发展,例如视觉、声觉等外部传感器给出工作对象、工作环境的有关信息,利用这些信息构成一个大的反馈回路,从而将大大提高机器人的工作精度。
控制系统:其一般有两种方式。一种是集中式控制,即机器人的全部控制由一台微型计算
机完成。另一种是分散(级)式控制,即采用多台微机来分担机器人的控制,如当采用上、下两级微机共同完成机器人的控制时,主机常用于负责系统的管理、通讯、运动学和动力学计算,并向下级微机发送指令信息;作为下级从机,各关节分别对应一个CPU,进行插补运算和伺服控制处理,实现给定的运动,并向主机反馈信息。根据作业任务要求的不同,机器人的控制方式又可分为点位控制、连续轨迹控制和力(力矩)控制。
1.3 机器人发展现状及前景
现在,国际上对机器人的概念已经逐渐趋近一致,即机器人是靠自身动力和控制能力来实现各种功能的一种机器。联合国标准化组织采纳了美国机器人协会给机器人下的定义:“一种可编程和多功能的,用来搬运材料、零件、工具的操作机;或是为了执行不同的任务而具有可改变和可编程动作的专门系统。”
机器人以其具有灵活性、提高生产率、改进产品质量、改善劳动条件等优点而得到广泛应用。但是,目前绝大多数机器人的灵活性,只是就其能够“反复编程”而言,工作环境相对来说是固定的,所以一般人们称之为操作手(Manipulator)。机械手典型代表的实物图1.2所示。
图1.2 典型机械手实物图
正如人类活动的范围和探索的空间是人类进步的标志一样,机器人的智能同样体现在运动空间的大小上。为了获得更大的独立性,人们也对机器人的灵活性及智能提出更高的要求,要求机器人能够在一定范围内安全运动,完成特定的任务,增强机器人对环境的适应能力。因此,近年来,移动机器人特别是自主式移动机器人成为机器人研究领域的中心之一。自主式机器人的典型代表实物图1.3所示。
图1.3 典型自主移动机器人实物图
智能移动机器人是一类能够通过传感器感知环境和自身状态,实现在有障碍物的环境中向目标的自主运动,从而完成一定作业功能的机器人系统。路径规划是按照某一性能指标搜索一条从起始状态到目标状态的最优或近似最优的无碰撞路径。基于实时传感信息的模糊逻辑算法参考人的驾驶经验,通过查表得到规划信息,实现局部路径规划。模糊逻辑法将模糊控制本身所具有的鲁棒性与基于生理学上的“感知——动作”行为结合起来,为移动机器人在未知环境中导航提出了一种新思路。
我国的智能机器人和特种机器人在“863”计划的支持下,取得了不少成果。其中最为突出的是水下机器人,6000米水下无缆机器人的成果居世界领先水平,还开发出直接遥控机器人、双臂协调控制机器人、爬壁机器人、管道机器人等机种;在机器人视觉、力觉、触觉、声觉等基础技术的开发应用上开展了不少工作,有了一定的发展基础。但是在多传感器信息融合控制技术、遥控加局部自主系统遥控机器人、智能装配机器人、机器人化机械等的开发应用方面则刚刚起步,与国外先进水平差距较大,需要在原有成绩的基础上,有重点地系统攻关,才能形成系统配套可供实用的技术和产品,以期在不久的将来立于世界先进行列之中。
机器人产业在二十一世纪将成为和汽车、电脑并驾齐驱的主干产业。从庞大的工业机器人到微观的纳米机器人,从代表尖端技术的仿人型机器人到孩子们喜爱的宠物机器人,机器人正在日益走近我们的生活,成为人类最亲密的伙伴。机器人技术和产业化在全中国甚至全世界拥有一定的现实基础和广阔的市场前景。
1.4 双足竞步机器人的主要研究
本本次设计采用ATmega16L单片机作为双足竞步机器人控制单元的核心,具备自主决策和智能判断的能力。使用六个SH-14-M模拟舵机作为关节驱动和一个模拟舵机控制板作为模拟舵机的驱动控制机器人完成各种动作。其实现的主要功能有:机器人自主地由步行的方式从起点线走到终点线(场地:相距200cm,限宽60cm),利用身体的各关节做一些预定的动作;先从起点走出3步距离、立正、然后卧下、向前翻跟斗3次,再起立、向前走出3步距离、立正、然后卧下(身体向后)、再向后翻跟斗3次、再起立;然后以轻快步履走向终点,机器人会在4分钟以内完成所有动作。
第2章 机器人的总体方案设计
2.1 双足竞步机器人竞赛规程的解读
2.1.1 竞赛内容概述
机器人通过步行的方式从起点线走到终点线(相距200cm,限宽60cm)。竞赛开始时,机器人先向前走出3步距离、立正、然后卧下(身体向前)、向前翻跟斗3次,再起立、向前走出3步距离、立正、然后卧下(身体向后)、再向后翻跟斗3次、再起立、然后以轻快步履走向终点、参赛机器人要在4分钟以内完成所有动作。
双足竞步机器人计分规则:
1.机器人行走时跌倒一次扣 10 分,由裁判指定将机器人重新放在原位并继续竞赛,不另补 时。
2.不按指定动作次序运行的机器人将按次序偏差次数扣分,每次偏差扣 10分。
3.机器人行走每出线一次扣 10分。
4.在未经裁判允许的情况下,人为干预一次扣 10分。
5.以扣分少者为胜;在扣分相同条件下,以使用时间短者为胜。
从上面的竞赛内容可知,首先应该确保机器人在规定的区域内活动,然后自主向前行走按照要求执行相应的动作,不会跌倒、踩线等错误的动作,这是比赛顺利进行的前提条件;其次机器人应该在可以准确无误的完成相应制定动作的情况下,尽量使整个过程的耗时最少,这是比赛能否取得胜利的关键。
2.1.2 双足竞步机器人的限制
结构只有双足、并只能以走路的方式来移动,机器人要分清楚正面及背面,以箭头方向作为正面,是自主式脱线控制,用不多于6只伺服马达和一个伺服马达控制板来完成,机器人最大尺寸为200mm(长)X 200mm(宽)X 300mm(高),重量不超过1Kg.,机器人头部要能放入(长)200mm X (宽)100mm长方格内。
机器人通过步行的方式从起点线走到终点线(相距200cm,限宽60cm)。竞赛开始时,机器人先向前走出3步距离、立正、然后卧下(身体向前)、向前翻跟斗3次,再起立、向前走出3步距离、立正、卧下(身体向后)、再向后翻跟斗3次、再起立、然后以轻快步履走向终点、参赛机器人要在4分钟以内完成所
有动作。
因此,从上面的限制条件可以知道,对参赛队员制作机器人的材料高度和重量都具有了要求,制作机器人的材料按照使用场合的不同来决定轻重,比如说底盘(机器人的脚底板)在符合条件的情况下,越重越好,这样能使机器人的重心低,在移动过程中保持稳定不会跌倒;而机器人的腿部以上的重量,在符合条件的情况下,越重越好,否则机器人的重心太高,前后卧下的情况下,容易倾倒;这需要参赛队员根据自己的实际情况处理好重量和高度的分配,才能取得满意的效果。
2.1.3场地规格分析及说明
比赛场地(即擂台,如图2.1所示)大小为长、宽分别为是2000 mm,宽600mm的长方形矮台,台上表面即为擂台场地。机器人从出发区启动后,沿着起点线走上擂台。
图2-1 比赛场地
从场地来看,双足竞步机器人的做工一定要精细,做工的精度一定要高,必要时做到标准化。另一方面由于在机器人身上没有各种辅助措施,机器人的稳定性一地要强,应用程序要稳定,各关节的设计要合理可靠等。由于比赛中规定在完成全部动作且得分相同的情况下,按耗时越少排名越高的原则确定名次。所以,最重要的一点是要尽量减少机器人完成动作所用的时间。
2.2 双足竞步机器人总体分析
要设计和开发一个步行机器人,首先应该对其进行总体分析和设计,确定步行机器人的功能、基本结构和系统配置等。
2.2.1 功能定位
根据参赛要求,首先使其能够完成一些基本动作,既开始时先走3步、立正、然后卧下(身体向前)、向前翻跟斗3次,再起立、向前走3步、立正、然后卧下(身体向后)、再向后翻跟斗3次、再起立、然后以轻快步履走向终点、要在指定4分钟或少于指定时间内完成所有动作,及要走到终点。
2.2.2 自由度的配置
该双足竞步机器人设计的目的是要实现拟人下肢多自由度得平稳行走,在实现这个功能的前提下为降低设计的难度,我们按照目前世界上各研究机构普通采用的下肢6个自由度的关节配置形式,来实现行走功能所必须的各关节自由度分布,具体自由度配置为单腿髋关节1个,膝关节1个,踝关节1个。髋关节用于摆动腿,实现迈步,并起到了辅助平衡作用。膝关节主要用来调节重心的高度,及改变摆动腿的着地高度,使之与地形相适应。踝关节用来和髋关节相配合实现支撑腿的移动,以及调整与地面的接触状态。
基于郑元芳博士的理论,来规划自己所要设计的双足机器人的自由度。为了实现这款双足步行机器人的稳步行走,可以规划其运动过程,假设机器人行走步骤:先走3步,立正,然后卧下,向前翻跟斗3次,再起立,向前走3步,立正,然后卧下(身体向后),再向后翻跟斗3次,再起立,然后走向终点。其结构图见下图2-2。
图2-2自由度的分配
2.3系统结构设计
根据确定的自由度配置方案以及选用的模拟舵机、控制板,设计机器人的零件。本着结构简单、尽量采用通用零件、外形美观等原则,对机器人的机构及外观进行优化。
2.3.1 布置对称性
本文设计的机器人机构,其主要特点有以下几点:
(1) 步行运动中普遍存在结构对称性。Goldberg等人研究了步行运动中的对称性,发现机身运动的对称性和腿机构的对称性之间存在相互关系。在单足支撑阶段,对称性的机身运动要求腿部机构也是对称的;在双足支撑阶段,机身对称性运动未必需要腿部机构的对称性,除非有额外的约束条件。根据这一点,我们在结构设计时也采用对称性布置。
(2) 框架的设计有效地利用了舵机的尺寸大小,并使舵机的活动范围能尽量符合各关节的活动范围。
(3) 采用多关节型结构。
(4) 整个结构采用1.2mm的铝锰合金钣金材料。
(5) 由于机器人的各关节是用舵机驱动为了减小机器人的体积、减轻重量,机器人的结构做成是框架型的。框架的设计有效地利用了舵机的尺寸大小,并使舵机的活动范围能尽量符合各关节的活动范围。
实物图机械简图见下图2-3所示 。
图2-3双足机器人(交叉足印)机械结构简图
2.3.2 驱动方案的选择
实现行走的基本问题是对机器人各关节位置、速度的伺服控制和协调控制。如果把连杆以及关节想象为机器人的骨骼,那么驱动器就起到肌肉的作用,它通过移动或转动连杆来改变机器人的构型。驱动器必须有足够的功率对负载加速或者减速。同时,启动器本身要精确、灵敏、轻便、经济、使用方便可靠且易于维护。
目前机器人的驱动方式主要有液压驱动、气压驱动和电机驱动三种方式。液压驱动方式虽然具有驱动力矩大、响应速度快等特点,但是成本高、重量大、工艺复杂,且有发热问题。气压驱动易于高速控制,气动调节阀的制造精度要求没有液压元件高、无污染,但是位置和速度控制困难,并且其工作稳定性差,压缩空气需要除水。液压驱动与气压驱动不能实现试验系统自带能源的目标,直接决定了这两种驱动方式难于应用到双足机器人系统中。电机驱动具有成本低、精度高、可靠且维修方便等特点,容易和计算控制系统相连接,目前的双足机器人大都采用这种方式。
舵机是一种最早应用在航模运动中的动力装置,是一种微型伺服马达,它的控制信号是一
个宽度可调的方波脉冲信号,所以很方便和模拟系统进行接口。只要能产生标准的控制信号的模拟设备都可以用来控制舵机,比如PLC、单片机和DSP等。而且舵机体积紧凑、便于安装、输出力矩大、稳定性好、控制简单。根据所需的驱动力矩要求和性价比方面的考虑,我们决定选用森汗公司生产的14公斤大扭力全金属齿轮舵机。该类型舵机价格适中且规格参数能够满足双足机器人的各项性能要求。因此在综合了开销,性能等一系列因素后我们选择了SH-14-M经过尝试,我们得出了舵机转动角度与脉冲的对应关系:90度对应的差不多是1.6ms的脉冲,也就是说一个1.6ms的脉冲SH-14-M就转到90度,而0度对应的是0.8ms脉冲,180度对应的是2.1ms脉冲。
第3章 双足竞步机器人步态规划
步态规划是双足竞步机器人研究中的一项重要工作,步态规划的好坏将直接影响机器人行走过程中的稳定性、所需驱动力矩的大小以及姿态的美观性等多个方面,同它也直接影响到控制方法及其实现的难易程度。
3.1步态规划的基本原则
双足竞步机器人的步态规划,是指机器人行走过程中其各组成部分运动轨迹的规划,比如说,脚掌何时离开地面、摆动相中整个脚掌在空中的轨迹、何时落地等。关键之就在于所规划的轨迹必须满足零力矩点(ZMP)稳定条件,否则,机器人不能稳定步行步态规划要解决的问题主要有:
1. 保证机器人本体不和环境或者自身发生干涉,从而导致无法实现预定的轨迹。
2. 保证机器人的稳定性。机器人的稳定性问题一直是困扰两足步行机器人发展的重要问题,由于各个关节间的藕合作用,很难设计出理想的ZMP轨迹。现在使用的步态规划方法主要有如下几种:
(1) 基于实验的规划方法
这种规划方法基于力学的相似原理,基本过程如下:让人模仿机器人行走(如果机器人有几个自由度,那么人在模仿行走的时候也尽量只动相应的关节),同时对此人的行走过程进行正面和侧面的录像,然后对这些录像进行分析,得到此人在步行过程各个主要关节的角度变化与时间的函数,然后根据力学相似原理把这些函数相似地推广到机器人的关节变化上。
(2) 基于能量原理的规划方法
这种方法来源于一个生物学假设:人经过千百万年的进化,其行走方式是能量消耗最低的,而且还能保持步行的稳定性。如果机器人也能满足这个假设,则其行走方式将与人一样或很接近。根据能耗最小原则可以建立一个变分方程,并最终得到机器人的轨迹方程。
(3) 基于力学稳定性的规划方法
在机器人行走过程中,其ZMP点必须落在某个区域范围之内,只有这样才能保证步行机器人稳定地行走。实现方法有两种:
a. 计算出理想的ZMP轨迹,然后推导出各个关节的运动函数以实现理想行走。
b. 先大致规划出双足和躯干的运动轨迹,然后进行ZMP计算,最后选出稳定性最好的结
果作为控制方程。
相比前一种方法,后一种可以较快地得到规划结果。在保证了机器人基本性能的前提下,尽量减少控制的工作量,降低成本。所以本文设计将采用第二种方法,结合三次样条插值和机器人的逆运动学规划进行机器人步态的参数化设计。
3.2步态规划的具体方法
合适的步态设计是机器人实现动态行走的关键。在计算各关节轨迹之前,首先要建立机器人所在的空间坐标系。
坐标系的 x轴指向机器人的正面,y轴由右侧指向左侧,z轴垂直向上,原点0位于后脚完全落地时踝关节在地面上的垂直投影处。当机器人沿着直线往前走时,由于只考虑前向运动,双脚和 腰部在侧方向( y轴)上的位置是不变的,因为设定条件为机器人在水平地面行走,且脚面抬起高度为0,所以z轴位置不变。因此,仅仅讨论在 x平面内的轨迹。机器人所在的空间坐标系如图3-1 所示 。
图3-1 机器人的空间坐标系
双足机器人完整的步行过程包括三个阶段
(1) 起步阶段:由初始的双腿并立静止状态变化到行走状态,一条腿向前跨出了半步距离,髋部速度从零上升到恒定值;
(2) 整步阶段:两条腿交替地向前跨出一步距离,髋部速率保持不变;
(3) 落步阶段:后腿向前跨出半步,落在与另一条腿并行的部位,髋部速度减少到零,恢复成双腿并立静止状态。
主要讨论整步的轨迹计算。前向运动的规划步骤如下:
(1) 确定步速和步长;
(2) 设定初始参数,计算踝关节和髋关节轨迹 ;
(3) 根据踝关节和髋关节轨迹计算膝关节轨迹;
(4) 计算ZMP轨迹;
(5) 改变参数值,返回第 2步;
(6) 选取具有最大稳定性的轨迹。
步态规划的流程图如图3-2所示。
图3-2 双足机器人的步态规划流程图
双足步行机器人行走控制的关键是根据踝关节和髋关节的运动轨迹确定膝关节的运动轨迹。在脚面抬起高度为0的情况下,膝关节的轨迹由步幅唯一决定,而步幅和步速则可唯一确定出髋关节的轨迹,其步态周期图如图3-3所示。
图3-3 步态周期图
因为单支撑和双支撑是一个交替的过程,双腿支撑需要有一定时间来保证ZMP点由后脚移动到前脚,所以我们取双支撑的时间间隔为20%个周期。
从上图可以看出在一个完整的步态周期里包括了两个双支撑和两个单支撑时间段,双支撑占20%个周期,单支撑占80%个周期。对于单腿来说整个周期里只有一个摆动周期,占40%个周期,支撑周期由一个单支撑和两个双支撑组成,占60%个周期。
根据机器人自身结构特点,在行走时采用“平行步态”,如图所示。机器人采用这种步态行走时,两脚的落脚痕迹是相互平行的,实现这种步态行走的机器人对其自由度要求较少,但对稳定平衡提出了较高的要求。
第4章 控制系统的硬件设计
4.1 主控制板
主板是洛阳理工学院机电之星队自行开发的AVR控制板,该主板是以ATmega16L单片机微控制器为核心,包括电源模块、USB下载模块、ISP下载模块、电机驱动模块、外部晶振以及各种I/O接口。主板如图4-1所示。
图4-1 主控制板
为了满足对机器人主控制平台的需求,我们设计了基于AVR开发平台的机器人主控制板。机器人主控制板的原理图如附录1所示。进行PCB设计时的技巧和方法如下:
(1) 传输线拐角要采用45°角,以降低回损。
(2) 要采用绝缘常数值按层次严格受控的高性能绝缘电路板。这种方法有利于对绝缘材料与邻近布线之间的电磁场进行有效管理。
(3) 要完善有关高精度蚀刻的PCB设计规范。要考虑规定线宽总误差为+/-0.0007英寸、对布线形状的下切(undercut)和横断面进行管理并指定布线侧壁电镀条件。对布线(导线)几何形状和涂层表面进行总体管理,对解决与微波频率相关的趋肤效应问题及实现这些规范相当重要。
(4) 突出引线存在抽头电感,要避免使用有引线的组件。高频环境下,最好使用表面安装组件。
(5) 对信号过孔而言,要避免在敏感板上使用过孔加工(pth)工艺,因为该工艺会导致过孔处产生引线电感。如一个20层板上的一个过孔用于连接1至3层时,引线电感可影响4到19层。
(6) 要提供丰富的接地层。要采用模压孔将这些接地层连接起来防止3维电磁场对电路板的影响。
(7) 要选择非电解镀镍或浸镀金工艺,不要采用HASL法进行电镀。这种电镀表面能为高频电流提供更好的趋肤效应此外,这种高可焊涂层所需引线较少,有助于减少环境污染。
(8) 阻焊层可防止焊锡膏的流动。但是,由于厚度不确定性和绝缘性能的未知性,整个板表面都覆盖阻焊材料将会导致微带设计中的电磁能量的较大变化。一般采用焊坝(solder dam)来作阻焊层。
4.2硬件电路总体结构
(1) 主芯片
AVR控制板采用的是Atmega16L AVR芯片(如图4-2所示),
图4-2 Atmega16L内部结构图
该芯片具有如下特点:
高性能、低功耗的 8 位AVR? 微处理器
? 先进的RISC结构
? 131 条指令 – 大多数指令执行时间为单个时钟周期 ? 32个8位通用工作寄存器 ? 全静态工作
? 工作于16 MHz时性能高达16 MIPS ? 只需两个时钟周期的硬件乘法器 ? 非易失性程序和数据存储器 ? 16K 字节的系统内可编程Flash ? 擦写寿命: 10,000次
? 具有独立锁定位的可选Boot代码区 ? 通过片上Boot程序实现系统内编程 ? 真正的同时读写操作 ? 512字节的EEPROM ? 擦写寿命: 100,000次 ? 1K字节的片内SRAM
? 可以对锁定位进行编程以实现用户程序的加密 ? JTAG 接口(与IEEE 1149.1标准兼容) ? 符合JTAG标准的边界扫描功能 ? 支持扩展的片内调试功能
? 通过JTAG接口实现对Flash、EEPROM、熔丝位和锁定位的编程
外设特点:
1. 两个具有独立预分频器和比较器功能的8位定时器 /计数器 2. 一个具有预分频器、比较功能和捕捉功能的16位定时器/ 计数器 3. 具有独立振荡器的实时计数器RTC 4. 四通道PWM 5. 8路10 位ADC 6. 8个单端通道
7. TQFP封装的7个差分通道
8. 2个具有可编程增益 (1x, 10x, 或200x)的差分通道
9. 面向字节的两线接口 10. 两个可编程的串行USART
11. 可工作于主机/ 从机模式的SPI串行接口 12. 具有独立片内振荡器的可编程看门狗定时器 13. 片内模拟比较器 ? 特殊的处理器特点:
1. 上电复位以及可编程的掉电检测 2. 片内经过标定的RC振荡器 3. 片内/ 片外中断源
4. 6种睡眠模式: 空闲模式、ADC噪声抑制模式、省电模式、掉电模式、Standby 模式以及
扩展的Standby模式 ? I/O和封装
–32 个可编程的I/O口
–40 引脚PDIP封装, 44 引脚TQFP封装,与44 引脚MLF封装 ? 工作电压:
– ATmega16L:2.7 - 5.5V –ATmega16:4.5 - 5.5V ? 速度等级
– 0 - 8 MHz ATmega16L –0 - 16 MHz ATmega16
? ATmega16L 在1 MHz, 3V, 25°C时的功耗 – 正常模式: 1.1 mA – 空闲模式: 0.35 mA – 掉电模式: < 1="">
下图4-3为ATmega16L实物图。
图4-3 ATmega16L芯片
上述这些特点使采用AVR单片机的应用系统不仅具有运行速度快、结构简单、功能强大的特点,而且具有高可靠性和良好的经济型。AVR软件可以直接进行C/C++语言程序开发,绕开了复杂难懂的汇编,从而可以进行更有效率的系统设计开发工作。
4.3 舵机选型
本设计所选舵机为北京森汉科技有限公司生产的SH-14-M舵机,该类型舵机的扭力达到14公斤且为同轴双端输出铜合金齿轮舵机。价格适中且规格参数能够满足双足机器人的各项性能要求。并且可以进行模拟位置锁存,大大减少控制端的数据量,适合多级联动控制。装有防撞减震轴承,
减少磨损,并且密封。采用国际标准的PWM控制格式,便于移植到其他平台使用。因此在综合了开销,
性能等一系列因素后我们选择了SH-14-M型舵机。舵机SH-14-M实物图4-4所示:
图4-4 舵机SH-14-M实物图
舵机SH-14-M参数如表1所示:
表1 舵机SH-14-M参数表
本设计需要使用6个舵机,其接口为硬件开发板PWM1-PWM10接口。
一个舵机内部包括了一个小型直流马达、一组变速齿轮组、一个反馈可调电位器和一块电子控制板。其中,高速转动的直流马达提供了原始动力,带动变速齿轮组,使之产生高扭力的输出,齿轮组的变速比愈大,舵机的输出扭力也愈大,也就是说越能承受更大的重量,单转动的速度也愈低。
一个微型伺服马达是一个典型闭环反馈系统,其原理可由下图4-5所示:
图4-5 舵机的工作原理示意图
减速齿轮组由马达驱动,其输出端带动一个线性的比例电位器作位置检测,该电位器把转角坐标转换为一比例电压反馈给控制单元,控制单元将其与输入的控制脉冲信号比较,产生纠正脉冲,并驱动马达正向或反向地转动,使齿轮组的输出位置与期望值相符,从而达到舵机精确定位的目的。
SH-14-M舵机的转角达到 185 度,由于采用 8 为 CPU控制,所以控制精度最大为 256 份。经过实际测试和规划,分了 250份。将 0—185 分为 250 份,每份 0.74 度。 控制所需的 PWM 宽度为 0.5ms—2.5ms,宽度 2ms。 舵机的控制信号是脉冲位置调制信号,周期一般为2ms,当方波的脉冲宽度改变时,舵机转轴的角度发生变化,角度变化与脉冲宽度的变化成正比。一般舵机的输出轴转角与输入信号的脉冲宽度之间的关系可用下图4-6所示。
图4-6 控制信号脉冲宽度与输出轴转角的关系图
第5章 控制系统的软件设计
为了实现模型样机的实验调试,在硬件基础上进行了系统软件设计,通过对实际机械系统运动控制理论研究,规划了一套简便的调试方案以验证样机设计的合理性,并进行对预订步态的相应关节控制调试和可行性验证。
5.1 ATmega16L的介绍
ATmega16是基于增强的AVR RISC结构的低功耗8 位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega16 的数据吞吐率高达1 MIPS/MHz,从而可以减缓系统在功耗和处理速度之间的矛盾。
ATmega16 AVR 内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与运算逻辑单元(ALU) 相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC 微控制器最高至10倍的数据吞吐率。
为了获得最高的性能以及并行性, AVR 采用了Harvard 结构,具有独立的数据和程序总线。程序存储器里的指令通过一级流水线运行。CPU 在执行一条指令的同时读取下一条指令( 在本文称为预取)。这个概念实现了指令的单时钟周期运行。程序存储器是可以在线编程的FLASH。
快速访问寄存器文件包括32个8 位通用工作寄存器,访问时间为一个时钟周期。从而实现了单时钟周期的ALU 操作。在典型的ALU 操作中,两个位于寄存器文件中的操作数同时被访问,然后执行运算,结果再被送回到寄存器文件。整个过程仅需一个时钟周期。
寄存器文件里有6个寄存器可以用作3个16 位的间接寻址寄存器指针以寻址数据空间,实现高效的地址运算。其中一个指针还可以作为程序存储器查询表的地址指针。这些附加的功能寄存器即为16 位的X、Y、Z 寄存器。
ALU支持寄存器之间以及寄存器和常数之间的算术和逻辑运算。ALU也可以执行单寄存器操作。运算完成之后状态寄存器的内容得到更新以反映操作结果。
程序流程通过有/ 无条件的跳转指令和调用指令来控制,从而直接寻址整个地址空
间。大多数指令长度为16 位,亦即每个程序存储器地址都包含一条16 位或32 位的指令。
程序存储器空间分为两个区:引导程序区(Boot 区) 和应用程序区。这两个区都有专门的锁定位以实现读和读/写保护。用于写应用程序区的SPM 指令必须位于引导程序区。
在中断和调用子程序时返回地址的程序计数器(PC) 保存于堆栈之中。堆栈位于通用数据SRAM,因此其深度仅受限于SRAM 的大小。在复位例程里用户首先要初始化堆栈指针SP。这个指针位于I/O 空间,可以进行读写访问。数据SRAM 可以通过5 种不同的寻址模 式进行访问。
5.2 程序设计 5.2.1主程序
主程序按照规则要求完成对各个功能模块的逻辑调用和时序的调用开始时在可以躲在障碍物的情况下,先走3步、立正、然后卧下(身体向前)、向前翻跟斗3次,再起立、向前走3步、立正、然后卧下(身体向后)、再向后翻跟斗2次、再起立、然后以轻快步履走向终点、要在指定5分钟或少于指定时间内完成所有动作,及要走到终点。当系统开始后进行初始化,机器人呈现立正状态。紧接着红外传感器检测是否有障碍物,如有障碍物则执行避障子程序,否则执行正常的行走子程序(其中行走子程序包括前进和前后翻动作),然后判断是否走完所需要的动作,如完成则程序结束,否则返回红外检测处开始执行,程序重复执行最终完成设定的动作。其主程序流程图见图5-2所示。
图5-2 主程序流程图
5.2.2行走程序
机器人要完成的行走任务为:先走3步、立正、向前翻跟斗3次、向前走3步、再向后翻跟斗2次、然后以轻快步履走向终点。行走的各阶段都有其标志位,当进入行走子程序时,开始判断此时要执行的动作是前进、向前翻还是向后翻,判断完后执行相应的动作并返回主程序并继续检测障碍物。其行走子程序流程图如下图5-3所示。
图5-3 行走程序流程图
通过程序的编写和联机调试并最终在场地上行走,机器人能够很好的完成所设定的任务,当加入适当的障碍物时,机器人也能够检测到并最终避开障碍物完成设计任务。
第6章机械机构的设计及材料的选用
6.1机械结构的设计
机器人的设计图
机器人的脚的设计如图6-1、6-2所示
图6-1 脚的设计图
图6-2 脚的设计图
机器人的腿部设计如图6-3、6-4所示
图6-3机器人的腿部设计
图6-4机器人的腿部设计
机器人的头部设计如图6-5、6-6所示
图6-5 机器人的头部设计
图6-6 机器人的头部设计
机器人的整机设计如图6-7所示
图6-7 机器人的整机设计
6.2材料的选用
机器人在设计时考虑到其稳定性与可行性,材料的选用是很重要,要求材料具有材质轻,有一定的强度,易加工等。在多次实验后我最终选择厚度为1.2mm的铝锰合金为机器人的设计材料。铝锰合金的实物图如图6-1所示;
图6-1 铝锰合金实物图
铝锰合金板特性
1、铝锰板的物理性能
材质轻: 同相的板厚,铝板比其它金属板重量要轻很多,且易于搬运,降低成本。 结构性强:易切割、裁剪、刨沟、弯曲成圆弧、直角等各种形状,且用普通金属或木器加工工具就可配合设计师做各种造型的变化。
平整性:板材平整,表面光滑,不扭曲,不偏斜。
环保性:可回收再生处理,有利环保。
2、铝锰板的化学性能
超耐候性:优越的超耐候性,超耐腐蚀性及耐污染性,可承受极端的气候条件,不受紫外线和温差的影响,且较其它涂料不易褪色,可永保外观新颖清新,
易保养:使用清水或中性温和清洁剂清洗,即可使板材永久如新。
结束语
按照双足竞步机器人的比赛要求,本机器人可以很好地完成了所有大赛要求的任务。其中机械结构是机器人能否稳定运行的基础,硬件电路决定了机器人实现的功能,而软件部分则是控制的灵魂,算法的好坏直接决定了完成任务的质量。
整个设计过程中,在机器人的机械结构设计上我们曾经遇到了很大的困难,好几次的设计都由于不符合要求已经被改的面目全非。好在全组成员团结合作,最终解决了机械结构的问题。在使用ATmega16L的开发过程中,我们也充分体会到了这款单片机的性能优越性和便利性,其单芯片设计方案对提高产品集成,降低系统成本有很大的帮助。
整个项目的研发无疑是一个充满辛苦的过程。但是在指导老师的悉心指导下,在全组成员的共同努力下,在整个实验室同学的无私帮助下,我们最终完成了任务!
谢词
不知不觉间我们已经做项目二个月了,参加此次机器人大赛也是很偶然的,听说今年有机器人大赛时,我们便有了跃跃欲试的冲动,凭着这种冲动,我们报名参加了这个大赛.凭借高昂的热情和自信乐观的态度我们开展了这个项目。感谢此次机器人大赛,让我们有了一个展现自己的舞台!
在做项目的过程中,我们发现做项目本身就是一个很好的学习环境,机器人大赛给我们一个展现自我与锻炼自我表现的平台,在完成项目的过程中,我们计划安排了时间。在机械确定,硬件设计方面,我们通过比较挑选方案,亲手制作了多个模型,跑遍整个洛阳市 ,才完整买到所有电子零件。进行软件编程时,我们更是尽心与耐心。先一个一个模块通过调试,布局焊接完毕后我们进入了最后一个阶段——总装调试,当看到整个系统正常工作时,我们知道我们成功了,先前的所有辛苦与疲惫此时也灰飞烟灭,剩下的只有激动。能够完成作品,那种成就感和欣慰,没有经历,是永远也无法体会其中的那份无以言表的感受。
我们能这么顺利地完成作品,首先要感谢我们的指导老师布占伟、**荣老师,他们频繁来到实验室,密切关心作品的进度,耐心地指导我们,给与我们所需要的帮助。
我们在这个过程中学习和体会到了很多东西,不仅加强了我们的动手能力、在专业技术知识方面也有所巩固和加深。我们的办事能力,组织能力,交际能力也得到了锻炼,还开拓了我们的视野,同时也给予了我们很多书本上学习不到的知识。
参考文献
[1] 陈立新,两足步行机器人步态及运动稳定性分析[D].现代机械,1995 (3):30-35
[2] 谢涛,徐建峰.仿人机器人的研究历史、现状及展望[J].机器人,2002(7):26-35
[3] 张学允,双足步行机器人动态步行研究[D].哈尔滨工业大学,2001:34-45
[4] 刘志远,两足机器人的动态行走研究[D].哈尔滨工业大学,1991:37-56
[5] 吴 玉,姜复光.机器人工程导论[M].哈尔滨工业大学出版社,1999:123-145
[6] 徐元吕,工业机器人[M].中国轻工业出版社.1999:234-256
[7] 严冰,李晓翠.基于双足机器人的设计实现以及相关改进[J].科协论坛. 2009(5)
[8] 李元宗,机器人学讲义[D].太原工业大学. 2001 :83-115
[9] 蹼良贵,纪各刚.机械设计[M].高等教育出版社. 1996:126-148
[10] 蔡白兴,机器人学[M].清华大学出版社.2002:168-245
[11] 刘鸿文,材料力学[M].高等教育出版社.2003:55-68
附录
程序清单
#include
#include
unsigned int phase = 0;
unsigned int ServoPos[8] = {96, 96, 92, 94, 92, 93, 94, 94};
unsigned int HomePos[8] = {96, 96, 92, 94, 92, 93, 94, 94};
#define SETP_WAIT 100
SIGNAL(SIG_OUTPUT_COMPARE1A)
{
}
SIGNAL(SIG_OUTPUT_COMPARE0)
{
{
}
void homeP(void)
{
ServoPos[0] = HomePos[0]; ServoPos[1] = HomePos[1]; ServoPos[2] = HomePos[2]; ServoPos[3] = HomePos[3]; ServoPos[4] = HomePos[4]; ServoPos[5] = HomePos[5]; ServoPos[6] = HomePos[6]; ServoPos[7] = HomePos[7]; int count; TCCR2 |= (1 } int main(void) { /* PC口的设定 */ DDRC |= (1 TIMSK |= (1<> TCCR1A |= (1<> OCR1A =625; /* 计时器计数器 0 的设定 */ TIMSK |= (1<> SREG |= (1<> TCCR1B |= (1 homeP(); wait_ms(1000); while(1) { } } 转载请注明出处范文大全网 » ARMOR_1双足竞步机器人