【S081】四轮式高空作业平台定位车
作品说明 |
作者:陈文岩、谭飞、彭小龙、杨春宝
单位:内蒙古工业大学 机械电子工程专业
指导老师:武建新
1. 作品概述
本项目所设计的四轮式高空作业平台定位车机器人主要来源于生活中的实际用途,在创意方面采用的主要是连杆机构的优越性与实用性,大家合理分工,通过大家的彼此合作成功的完成了这次课程设计的任务。在机器人的设计方面采集多方面的资料,元件的使用功能需要我们进一步掌握很研究,才能做好这次实验,动手动脑能力的提升的这次课程设计最为突出的特点。
作品说明
四轮式高空作业平台定位车
2. 机器人设计的构思方案
机器人设计过程的主要思路是在于将电机齿轮的回转运动转变为其他元件的直线运动,在起初设计时,我们用机械手制作了剪刀式的升降系统,在装配到电机上时遇到了最大的难题,升降的幅度有限且稳定性十分差,在经过改良之后我们使用了连杆的升降机构来实现升降功能,在机器人的稳定性方面我们在车上增加了支架,当机器人使用升降功能时放下相关的支架,后车轮支起实现机器人作业时的稳定性。
3. 作品功能介绍
本项目设计作品为四轮式高空作业平台定位车,主要应用于维修人员对电力,通讯,路灯,有线电视等高空设备的维修,消防人员在高空环境下的救援以及广告、摄景的拍摄等行业,还可以将高空作业所需要的器械、工件、材料等运送上去………为了满足在高空作业时各种特殊情况的需要,此平台可以由按钮、声控及遥控器三种方式控制,并且在四轮车上安装了一个可升降工作台,可以直接从地面将工作人员送到高空以达到高空作业的要求。在四轮车的后轮附加了一个支撑架,当传送的物体过重时,可以减小后轮的承受力,达到保护后轮的作用。在车前部安装有传感器,可以实现自动避障的功能,避免因操作中的失误而引发安全事故。
3.1 移动部分
考虑到在实际生活中车轮比较灵活多变,所以我们采用了4个轮子的小车结构,在后排两轮处各连接一个电机实现对小车的驱动,而前排两轮则连接一个可换向机构,两排轮之间用一个平台(用于安装生产线)连接。小车运动由遥控手柄控制,在作业时小车的后轮会被装有两个电机的支架撑起,起到稳定与保证安全的作用。小车的前方安装声控及感应传感器,在遇到障碍物或者有声音信号时,小车可以改变行驶的方向,这点有利于对机器人起保护作用。
3.2 生产线部分
生产线部分主要由电机齿轮、机械手连杆、支撑腿装置组成。
① 齿轮传动
齿轮传动主要是将电机回转运动转化,由两个轮支撑,其中一个靠圆周电机驱动。齿轮传动在工业中起到举足轻重的作用,因为它的传动效率很高,并且十分的灵活。
② 机械手连杆
我们利用机械制作原理进行改进,并采用连杆机构有效的将齿轮的回转运动转化为连杆的升降运动,其中通过传动轴进行运动的传动。我们在连杆的顶部设置了活动“工作台”,机器人通过这样的装置可以有效的把地面及地面以上的人或物升降到一定的高度,我们在升降台下面安装了回转系统(由电机进行驱动),所以这可以使“工作台”在机器人上进行平面360度的灵活工作。这一切的工作过程都靠程序进行控制,严谨的程序才是机器人最为关键的血液。
③ 支撑腿
考虑到由于机器人是有4个轮子进行活动工作的,在工作时由于滚动摩擦力较小,底部小车要进行运动影响工作的效率,所以我们在后轮上安装了由两个电机驱动的机械支撑腿,它通过程序控制可以灵活的上下滑动,运动时保持撑起状态,当必要工作时支撑腿放下将后轮撑起,保证工作的稳定性。
4. 机器人设计图
机器人实物图
机器人三维建模图
5.机器人运转程序
#include "config.h" #include "lib_io.h" #include "lib_arm.h" #define rignt 1-Input(1,1) #define left 1-Input(4,1) #define q Input(3,1) #define sheng Input(2,1) int i; void move_front(int l,int r,int zeng,int de) //机器人向前运动 { Servo(4,85+l+zeng); Servo(5,87-r-zeng); Delay(de); //最小值是25 } void stop_wait() //等待50毫秒 { int i; for(i=0;i<14;i++) { Servo(3,8); Servo(2,110); Delay(50); } } void xun_xian() //巡线程序 { if(rignt==1&&left==0) //右侧检测到黑线 { move_front(14,0,2,22); //往右拐 LedIn(1,1); LedIn(2,1); LedIn(3,0); LedIn(4,0); stop_wait(); } else if(left==1&&rignt==0) //左侧检测到黑线 { move_front(0,16,2,27); //往左拐 LedIn(1,0); LedIn(2,0); LedIn(3,1); LedIn(4,1); stop_wait(); } else { move_front(20,11,10,20); //往前直走 LedIn(1,2); LedIn(2,2); LedIn(3,2); LedIn(4,2); stop_wait(); } }
int main(void) { int x,y; Initial_ARM(); while(sheng==0) //没有声音机器人一直等待 ; while(sheng==1) ; Servo(3,8); Servo(2,110); while(q==0) { xun_xian(); // xun_xian(); } while (q==1) {
Initial_ARM(); Delay(3000); for (x=8,y=110;x<61,y>49;x++,y--) { Servo(3,x); Servo(2,y); Delay(20); } } } |
6. 项目总结
在此次的项目实践活动中,我们通过自己的思考和学习进行机器人的设计,通过四个重要的环节学习到了很多原来从没有接触过的东西。这种类型的项目设计灵活性很强,大家都尽全力将自己组的机器人做到最好,即使任务比较重大家仍然十分的开心。在最后的调试环节我们让自己设计的机器人进行实验,比较有成就感。这里每一个人都有自己的想法有自己的做法,开拓了我们的思维,让我们很大程度上增长了见识。总之在这次项目设计中我们每一个人都很大的收获,不仅锻炼了我们团队合作的能力,取长补短,而且使我们的机器人集多数人的想法变得更加的灵活多变。
* 本项目未获得作者开源授权,无法提供资料下载。
|