实训四搬运车的搭建与控制.docx
《实训四搬运车的搭建与控制.docx》由会员分享,可在线阅读,更多相关《实训四搬运车的搭建与控制.docx(16页珍藏版)》请在冰点文库上搜索。
实训四搬运车的搭建与控制
院系电子信息工程学院班级12电气3姓名学号1273
实训名称搬运车的搭建与控制实训日期2014-5-15
一、实训目的
1.学习用实训套件搭建有机械手的轮式机器人
2.轮式机器人的运动控制
3.机械手的动作规划
二、实训要求
搭建一个如图4.1所示安装有机械手的四轮小车,需要完成如下任务:
图4.1
1.打开电源开关时小车并不运动,通过按钮(碰撞传感器)启动小车,并按照规定的动作进行。
2.前进5s,前进过程中0号灯亮;左转90°,转弯时1号灯亮;再前进5s,0号灯亮;停止前进,所有灯灭。
3.手拿物品接近机械手,所有灯亮(利用红外接近传感器),机械手张开3s后夹持住。
4.后退5s,2号灯亮;左转90°,1号灯亮;前进5s,0号灯亮;停止前进,所有灯灭。
5.机械手张开,所有灯亮,放下物品,完成所有任务,机械手恢复原状,等待。
6.再按一次按钮,再次启动机器人重复上面的运动。
三、实训设备
●MultiFLEX2-AVR控制器,1块;
●多功能调试器、数据连接线及电源线,1套;
●舵机,7个;
●碰撞传感器,1个;
●红外接近传感器,1个;
●LED灯,4个;
第1页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号127303
实训名称搬运车的搭建与控制实训日期2014-5-15
●小车底板,2个;
●橡胶轮子,4个;
●KD舵机连接件,4个;
●机械构型连接件,若干。
四、实训内容
(一)设计方案
搭建一个搬运小车,上有机械手,通过对车轮驱动电机的控制使小车按照既定动作行进,机械手能通过红外接近传感器判断是否开启,并能通过对关节驱动电机的控制按要求完成夹持动作。
(二)硬件搭建过程
1、调试舵机
(1)通过“舵机调试系统”测试舵机是否能正常工作在电机模式和舵机模式;
(2)设置舵机的ID跟舵机表面所贴标号一致;
(3)将舵机模式设定在中位。
2、安装底盘和舵机架
连接底板和舵机架,如图4.2所示。
图4.2
注意:
安装舵机架时,需要注意其两端并不完全对称,需要根据实际情况来装配舵机,以保证轮子的对称分布。
3、安装舵机:
将舵机装入舵机架中中用螺丝固定,如图4.3所示。
注意:
安装舵机时需要对称分布,不要装反,另外,最好在安装舵机前先插入舵机线,否则装上舵机后,舵机线可能会出现不方便插入的情况。
图4.3
第2页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号12
实训名称搬运车的搭建与控制实训日期2014-5-15
舵机与舵机架的连接方式如图4.4所示。
图4.4
4、安装橡胶轮子
如图4.5所示将橡胶轮子与舵机连接,并用螺丝钉固定,成图4.6。
图4.5
图4.6
第3页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号127
实训名称搬运车的搭建与控制实训日期2014-5-15
5、组装机械手
(1)如图4.7所示组装一个3自由度机械手,即手掌、腕关节和肘关节。
机械手爪的组装和手爪与舵机的连接参照图4.8。
三个关节舵机的ID分别为手掌7、腕关节6、肘关节5,并保证该三个舵机在安装前处在舵机模式中位。
图4.8
(2)把安装好的机械手装到另外一个底板上,如图4.9所示。
第4页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号1273
实训名称搬运车的搭建与控制实训日期2014-5-15
图4.9
6、安装传感器、LED灯和控制器
(1)安装碰撞传感器、红外接近传感器、控制器和LED灯到上底板上,
如图4.10所示。
图4.10
(2)把上下两个底板安装到一起,如图4.11所示。
第5页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号123
实训名称搬运车的搭建与控制实训日期2014-5-15
图4.11
7、接线
(1)将碰撞传感器接到IO11,红外接近传感器接到IO10,LED灯分别连接到IO0~IO3。
(2)将机械手上的舵机串联后接入控制器上的任意一个机器人舵机接口,将轮子上的4个舵机两两相连,然后接入控制器空余的机器人接口。
(3)连接好多功能调试器、控制器和PC机。
(4)将直流稳压电源连接到控制器。
(三)软件控制流程
根据实训任务要求,控制程序流程图如图4.12所示。
根据流程图在NorthStar中编制程序。
1、新建工程及参数设置
(1)打开NorthStar应用程序,新建工程,在“工程设置”界面中选择“MultiFLEX2-AVR”和“自定义”选项。
(2)进入“舵机设置”界面,在“当前构型的舵机个数”中填入7。
在“当前构型的舵机列表”中,将前4个Mode设置为“电机模式”。
(3)单击“下一步”按钮进入“AD设置”,这一步不作设置,单击“下一步”按钮进入“IO设置”界面。
单击“完成”按钮进入主界面。
2、增加while循环模块
拖入一个while模块,放在start和end之间,组成一个死循环,这样可以让整个程序永远运行。
3、增加启动开关
拖入一个while模块,两个数字输入模块,一个if模块,一个break模块,一个variable模块,组成一个“软”开关。
该开关与碰撞传感器相对应,可以实现按钮启动机器人,最后连接各模块,如图4.15所示。
第6页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号127
实训名称搬运车的搭建与控制实训日期2014-5-15
图4.15
各图标的属性设置如下:
Variable——变量,int,io11。
DigitalInput——通道11,io11。
While条件1——1。
If条件1——io11==0。
4、小车前进
要让小车前进,左边舵机的速度应该设置为正值,右边舵机的速度应该设置为负值。
(1)拖入一个舵机模块,设置属性如3.16图所示,1、3轮为左前和左后,设置其值为512,2、4轮为右前和右后,设置其值为-512。
图4.16
(2)拖入一个数字输出模块,选择通道0,输出值设置为0。
(3)拖入一个delay模块,延时设置为5000。
5、小车左转和前进
(1)左转。
第7页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号123
实训名称搬运车的搭建与控制实训日期2014-5-15
①再拖入一个舵机模块,设置属性如图4.17所示,ID为1、3的设置值为-512,ID为2、4的设置值为-512。
②拖入一个数字输出模块,选择通道0,输出值设置为1。
③拖入一个数字输出模块,选择通道1,输出值设置为0。
④拖入一个delay模块,延时设置为3000。
图4.17
(2)前进。
①拖入一个舵机模块,按照“步骤4、小车前进”设置。
②拖入一个数字输出模块,选择通道0,输出值设置为0。
③拖入一个数字输出模块,选择通道1,输出值设置为1。
④拖入一个delay模块,延时设置为5000。
6、小车停止
(1)拖入一个舵机模块,设置1、2、3、4号舵机速度为0,如图4.18所示。
(2)拖入一个数字输出模块,选择通道0,输出值设置为1。
图4.18
7、连接各模块如图4.19所示。
第8页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号13
实训名称搬运车的搭建与控制实训日期2014-5-15
图4.19
8、给机械手增加开关,等待夹持物的到来。
参考“3、增加启动开关”,拖入一个while模块,两个数字输入模块,一个IF模块,一个Break模块,一个Variable模块,组成一个“软”开关。
该“软”开关通过红外接近传感器来触发,可以实现物体靠近机械手时启动机器人。
最后连线的效果图如右图所示。
各图标的属性设置如下:
Variable——变量,int,io10。
DigitalInput——通道10,io10。
While条件1——1。
If条件1——io10==0。
9、张开机械手
(1)打开控制器电源,设置调试器到AVRISP模式。
(2)拖入一个舵机模式,双击打开属性对话框,单击“启动服务”,开始下载服务程序。
下载完毕后,从设备管理器查看端口号,在舵机属性对话框的端口号中输入该端口号,然后单击“打开”按钮打开串口,将调试器切换到RS232模式。
单击“卸载全部”,关闭所有舵机的力矩输出。
(3)用手扳开机械手的钳口到合适的位置,扳动腕关节、肘关节的多节到合适的位置。
(4)单击“查询”按钮,开始查询当前舵机位置,舵机位置会滚动显示在窗口中。
选中“保存”复选框,保存当前位置到列表中,如图4.21所示。
单击“确定”按钮保存设置。
第9页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号1303
实训名称搬运车的搭建与控制实训日期2014-5-15
图4.21
(5)拖入一个Delay模块,延时设置为5000。
让机械手张开后,有足够的时间等待物体放入钳口。
10、夹持物体
(1)拖入一个舵机模块,双击打开属性对话框。
(2)把待搬运物体放到机械手钳口中,用手扳动机械手的钳口,让机械手夹住物体。
(3)单击“查询”按钮,开始查询当前舵机位置,舵机位置会滚动显示值窗口中。
选中“保存”复选框,保存当前位置到列表中,如图4.22所示,此处的值根据实际待夹持物体的大小来定。
单击“确定”按钮保存设置。
图4.22
注意:
如果“步骤9、张开机械手”完毕后关闭了控制器或者NorthStar,则需要重新打开串口,然后卸载全部舵机后才可以按照“步骤10、夹持物体”操作。
如果“步骤9、张开机械手”完毕后下载了其他程序,则需要重新“启动服务”并打开串口。
(4)拖入一个Delay模块,延时设置为1000。
延时时间根据舵机的速度设定,需要保证舵机能够完成动作。
11、后退5s
(1)拖入一个舵机模块,设置其参数为“后退”,其设置方法可参考“前进”的设置,只是数值相反。
(2)拖入一Delay模块延时设置为5000。
注意:
此处机械手上的舵机位置必须保持为夹持状态,不能为默认的512。
12、左转、前进、回到原处
参考“5、小车左转和前进”实现。
13、松开机械手恢复原状
参考“9、张开机械手”,松开机械手,放下物体。
连接各模块,可得夹持和放下物体的流程图如图4.23所示。
第10页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号1203
实训名称搬运车的搭建与控制实训日期2014-5-15
图4.23
14、连线、编译、下载
(1)连线:
按照逻辑连接各个模块。
最后所得程序流程图如图4.24所示。
图4.24
(2)编译程序:
在菜单栏中选择“工具”选项,在其菜单中选择“编译”,这时NorthStar开始编译程序。
直到出现Compilesucceeded字样表示编译成功。
如果出现编译错误,则需要根据错误提示修改程序后再次编译。
(3)下载:
设置调试器到AVRISP模式,在菜单栏中选择“工具”选项,在其菜单项中单击“下载”按钮,这时NorthStar开始下载程序。
下载完成后,程序开始运行。
第11页共12页指导老师签名
院系电子信息工程学院班级12电气3姓名学号
实训名称搬运车的搭建与控制实训日期2014-5-15
15、程序调试
把机器人放在场地上,打开让它运行,看是否与任务规划一致,若有不一致的地方,则修改程序,再次编译、下载、运行后查看效果。
五、实训小结
这个实训项目,让我了解了轮式机器人的控制方法和机械手的工作原理。
虽然编程非常困难,但在老师的帮助下我们还是慢慢明白了其中的含义,这次的动手制作,让我非常感兴趣,也让我觉到了上机器人课的乐趣。
编程与动手相结合,让我们在快乐中学习,在学习中更深理解。
虽然搭建也费了不少功夫,但最终还是搭建出来了,很有成就感,以后我会更加努力,更好的学习机器人这门课程。
第12页共12页指导老师签名