说明书—识别搬运机器人_第1页
说明书—识别搬运机器人_第2页
说明书—识别搬运机器人_第3页
说明书—识别搬运机器人_第4页
说明书—识别搬运机器人_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、作品名称:识别搬运机器人 指导老师:吴爱梅、刘永平作者:谢春伟、杜存忠、董航、高军林机器人综合了机械学、电子学、计算机科学、自动控制工程、人工智能、仿生学等多个学科的最新研究成果,代表了机电一体化的最高成就,是当今世界科学技术发展最活跃的领域之一。一、作品组成1.BASIC Stamp微控制器BASIC Stamp微控制器是以PBASIC为编程语言,通过解释器对PBASIC应用程序进行解释执行的微型计算机,具有8路或16路I/O通道,每个I/O通道接脚可以直接连接发光二极管、蜂鸣器、颜色识别传感器等各种传感器。通过增加一些额外元器件,可以实现不同的功能。BASIC Stamp由一个5伏特电压调

2、节器、晶振器、Serial EEPROM、及一个PBASIC解释器组成。2.伺服马达伺服马达有三根不同色线,分别为:黑、红、白,其中红色的为电源线;黑色为地线;白色的为控制信号线,通过对这信号线输入脉冲序列来控制电机的运动,可以控制电机的运动速度,运动方向。3.传感器TCS230颜色传感器属于图像传感器,图像传感器可分为互补金属氧化物半导体(CMOS)图像传感器和电荷耦合器件(CCD)图像传感器两类。CMOS型和CCD型固态图像传感器在光检测方面都利用了硅的光电效应原理,采用感光元件作为影像捕获的基本手段,感光元件的核心都是一个感光二极管(photodiode),该二极管在接受光线照射之后能够

3、产生输出电流,而电流的强度则与光照的强度对应。每个感光元件对应图像传感器中的一个像点,由于感光元件只能感应光的强度,无法捕获色彩信息,因此必须在感光元件上方覆盖彩色滤光片。TCS230颜色传感器是由一个颜色检测器组成,包括一个TAOS TCS230 RGB 的传感器芯片,白色的发光二极管,瞄准镜,板卡上的插槽和连接线。TCS230颜色传感器通过插槽或直接相连来与其他BASIC Stamp模块接口,在其固定的范围内对可见光颜色进行检测。4.机械手 主要有手爪支架,手爪臂,及手爪组成,用来模拟人手用来抓取已识别的物体,然后进行搬运指定区域。二、创新来源该作品启示于生活当中港口码头对不同颜色的集装箱

4、搬运。从而联想到机器人根据不同颜色自动分拣的目的,以提高搬运工作效率。三、实现功能机器人从指定区域启动后,到达设定目的地用机械手对不同色块进行分捡和搬运。机器人在得到指令后启动,不需再次接触机器人,由机器人自主运行完成任务,每次任务机器人连续运行。四、调试说明1.将机器人放置于启动区的中心位置,此位置相对比较重要(此位置关系到整体的运动结果)。保证机器人在第一次行走后能到达正五边行的中间位置。2.调整传感器的位置,与水平面夹角约为75度。(可根据实际的情况调整)3.若机器人经测试未能达到指定位置,可进行参数的调整。五、注意事项1.CMUCAM传感器对周围的环境要求比较严格,故在改变环境的情况下

5、,需要重新设置各种颜色的参数值。2.调试时,尽量保证周围无相同颜色的物体,以免误检测。3在每次运行机器人前,必须对机器人各部件进行详细检查。例如,电源电压(6-9v),机械手的灵活性等。4伺服电动机必须调零。六、机器人的控制1机器人控制组成部分机器人主要由单片机控制,通过驱动电路控制直流伺服电动机,从而控制机器人的行走和机械手的动作。控制流程图1所示: 图1 控制流程图2机器人直流电源和功率放大器 该机器人的驱动采用的是直流伺服电动机,直流电源由4节5号电池提供,电压范围为6-9V,所以它省略了整流电路和稳压电路。功率放大电路,我们采用的是PWM脉宽调制电路,脉宽调制放大电路有较宽的频带,动态

6、特性较好,抗干扰能力强。功率放大电路如图2所示: 图2 功率放大电路3.单关节机器人的建模与控制该机器人的机械手抓物属于单关节的位置控制,其单关节开环控制传递函数框图如图3所示:图3 单关节开环控制传递函数框图单关节的位置控制是利用由电机组成的伺服系统使关节的实际角位移跟踪预期的角位移,把伺服误差作为电机输入信号,产生适当的电压。即式中,kp是位置反馈增益(v/rad); 是系统误差;n 是转比。实际上“位置负反馈”把单关节机器人系统从开环系统变为闭环系统。关节角度的实际值可用光电编码器或电位器测出。 对式进行拉普拉斯变换,得其闭环传递控制函数框图如图4所示:图4闭环传递控制函数框图七、电子元

7、件布置图:八、 程序流程图九、程序与调试' $STAMP BS2' $PBASIC 2.5DOGOSUB arm_on 大角度打开机械手GOSUB arm_off 关闭机械手GOSUB arm_on1 小角度打开机械手GOSUB arm_off 关闭机械手LOOParm_on: FOR i=1 TO 20 PULSOUT 13,450 PAUSE 20 NEXT RETURNarm_off: FOR i=1 TO 20 PULSOUT 13,780 PAUSE 20 NEXT RETURNarm_on1: FOR i=1 TO10 PULSOUT 13,450 PAUSE 20

8、 NEXT RETURN'$STAMP BS2' $PBASIC 2.5' CMUcam Boe-Bot Demo Program 3' Copyright 2002, Seattle Robotics' Basic Stamp 2' CMUcam jumpered for Baud 9600RcvData VAR Byte(10)step1 VAR WordConfid VAR Bytei VAR Wordblue_count VAR Wordred_count VAR Word' Pause 1 second for CMUcam s

9、tartup'PAUSE 1000' Send "reset" to sync CMUcam and StampSEROUT 10, 84, "RS",CRSERIN 9, 84, WAIT (":")PAUSE 1000' Turn on auto adjust for 5 secondsSEROUT 10, 84, "CR 18 44",CRSERIN 9, 84, WAIT (":")PAUSE 100' Pause 5 seconds for CMUcam

10、 to auto adjust to lighting conditionsPAUSE 5000' Turn off auto adjustSEROUT 10, 84, "CR 18 44 19 32",CRSERIN 9, 84, WAIT (":")PAUSE 100' Send command - Set poll mode - only sends one return packet -' of data after each command - reduces data flowSEROUT 10, 84, "

11、PM 1",CRSERIN 9, 84, WAIT (":")PAUSE 100' Send command - Set raw data mode - also suppress Ack:/Nak: to -' further reduce serial dataSEROUT 10, 84, "RM 3",CRPAUSE 100'直行至五边形中间位置GOSUB arm_onstep1=200GOSUB FwdGOSUB arm_offMain:DO WHILE(blue_count<3) GOSUB CMUCam

12、_blue IF RCVData(2) < 55 AND Confid>15 THEN blue_count=blue_count+1 '记录识别到的颜色个数 GOSUB arm_on1 step1=80 '向前行走一段距离 GOSUB Fwd IF blue_count<3 THEN GOSUB arm_off'机械手动作 GOSUB back ELSE step1=1 GOSUB turn_left ENDIFLOOPGOSUB turn_back_right_180 blue_count=0DO WHILE(blue_count<2) GO

13、SUB CMUCam_blue IF RCVData(2) > 41 AND Confid>15 THEN '记录识别到的颜色个数 blue_count=blue_count+1 GOSUB arm_on '机械手动作 step1=80 GOSUB Fwd '向前行走一段距离 IF blue_count<2 THEN GOSUB arm_off GOSUB back ENDIF ELSE step1=1 GOSUB turn_right ENDIFLOOPstep1=210GOSUB Fwdstep1=17GOSUB turn_rightstep1=1

14、00GOSUB FwdGOSUB arm_onstep1=200GOSUB backstep1=17GOSUB turn_rightstep1=130GOSUB Fwdstep1=10GOSUB turn_leftred_count=0DO WHILE(red_count<3) GOSUB CMUCam_red IF RCVData(2) > 40 AND Confid>15 THEN red_count=red_count+1 '记录识别到的颜色个数 GOSUB arm_on1 step1=110 GOSUB Fwd '向前行走一段距离 GOSUB arm_

15、off ELSE step1=1 GOSUB turn_right ENDIFLOOPGOSUB arm_on1step1=100GOSUB backstep1=22GOSUB turn_rightGOSUB arm_onstep1=100GOSUB Fwdred_count=0DO WHILE(red_count<3) GOSUB CMUCam_red IF RCVData(2) < 55 AND Confid>15 THEN red_count=red_count+1 '记录识别到的颜色个数 IF red_count<3 THEN GOSUB arm_on1

16、 IF red_count<3 THEN step1=160 ELSE step1=120 ENDIF GOSUB Fwd '向前行走一段距离 GOSUB arm_off '机械手动作 ELSE GOSUB arm_on step1=120 GOSUB Fwd ENDIF ELSE step1=1 GOSUB turn_left ENDIFLOOPstep1=200GOSUB FwdPAUSE 200red_count=0DO WHILE(red_count<1) GOSUB CMUCam_red IF RCVData(2) < 35 AND Confid&g

17、t;15 THEN red_count=red_count+1 '记录识别到的颜色个数 ELSE step1=1 GOSUB turn_left ENDIFLOOPstep1=150GOSUB Fwdstep1=100GOSUB backstep1=21GOSUB turn_leftstep1=255GOSUB FwdPAUSE 50000GOTO MainFwd: FOR i=1 TO step1 PULSOUT 14,803 PULSOUT 15,650 PAUSE 20 NEXT RETURNback: FOR i=1 TO step1 PULSOUT 14,708 PULSOU

18、T 15,850 PAUSE 20 NEXT RETURNturn_back_left_180: FOR i=1 TO 44 PULSOUT 14,708 PULSOUT 15,650 PAUSE 20 NEXT RETURNturn_back_right_180: FOR i=1 TO 44 PULSOUT 14,803 PULSOUT 15,850 PAUSE 20 NEXT RETURNturn_right: FOR i= 1 TO step1 PULSOUT 14,803 PULSOUT 15,850 PAUSE 20 NEXT RETURNturn_left: FOR i=1 TO step1 PULSOUT 14,708 PULSOUT 15,650 PAUSE 20 NEXT RETURNarm_on: FOR i=1 TO 10 PULSOUT 13,850 PAUSE 20 NEXT RETURNarm_off: FOR i=1 TO 50 PULSOUT 13,1060 PAUSE 20 NEXT RETUR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论