说明书—识别搬运机器人


作品名称:识别搬运机器人

指导老师:吴爱梅、刘永平

作者:谢春伟、杜存忠、董航、高军林

机器人综合了机械学、电子学、计算机科学、自动控制工程、人工智能、仿 生学等多个学科的最新研究成果,代表了机电一体化的最高成就,是当今世界科 学技术发展最活跃的领域之一。

一、作品组成
1.BASIC Stamp 微控制器 BASIC Stamp 微控制器是以 PBASIC 为编程语言, 通过解释器对 PBASIC 应 用程序进行解释执行的微型计算机,具有 8 路或 16 路 I/O 通道,每个 I/O 通道 接脚可以直接连接发光二极管、蜂鸣器、颜色识别传感器等各种传感器。通过增 加一些额外元器件,可以实现不同的功能。 BASIC Stamp 由一个 5 伏特电压调节器、 晶振器、 Serial EEPROM、 及一个 PBASIC 解释器组成。 2.伺服马达 伺服马达有三根不同色线,分别为:黑、红、白,其中红色的为电源线;黑 色为地线; 白色的为控制信号线,通过对这信号线输入脉冲序列来控制电机的运 动,可以控制电机的运动速度,运动方向。 3.传感器 TCS230 颜色传感器属于图像传感器,图像传感器可分为互补金属氧化物半 导体(CMOS)图像传感器和电荷耦合器件(CCD)图像传感器两类。CMOS 型 和 CCD 型固态图像传感器在光检测方面都利用了硅的光电效应原理,采用感光 元件作为影像捕获的基本手段,感光元件的核心都是一个感光二极管 (photodiode) 该二极管在接受光线照射之后能够产生输出电流,而电流的强度 , 则与光照的强度对应。 每个感光元件对应图像传感器中的一个像点,由于感光元 件只能感应光的强度, 无法捕获色彩信息,因此必须在感光元件上方覆盖彩色滤 光片。 TCS230 颜色传感器是由一个颜色检测器组成, 包括一个 TAOS TCS230 RGB 的传感器芯片,白色的发光二极管,瞄准镜,板卡上的插槽和连接线。TCS230 颜色传感器通过插槽或直接相连来与其他 BASIC Stamp 模块接口,在其固定的 范围内对可见光颜色进行检测。

4.机械手 主要有手爪支架,手爪臂,及手爪组成,用来模拟人手用来抓取已识别的 物体,然后进行搬运指定区域。

二、创新来源
该作品启示于生活当中港口码头对不同颜色的集装箱搬运。 从而联想到机器 人根据不同颜色自动分拣的目的,以提高搬运工作效率。

三、实现功能
机器人从指定区域启动后, 到达设定目的地用机械手对不同色块进行分捡和 搬运。 机器人在得到指令后启动,不需再次接触机器人,由机器人自主运行完成任 务,每次任务机器人连续运行。

四、调试说明
1.将机器人放置于启动区的中心位置,此位置相对比较重要(此位置关系到 整体的运动结果) 。保证机器人在第一次行走后能到达正五边行的中间位置。 2.调整传感器的位置,与水平面夹角约为 75 度。 (可根据实际的情况调整) 3.若机器人经测试未能达到指定位置,可进行参数的调整。

五、注意事项
1.CMUCAM 传感器对周围的环境要求比较严格,故在改变环境的情况下, 需要重新设置各种颜色的参数值。 2.调试时,尽量保证周围无相同颜色的物体,以免误检测。 3.在每次运行机器人前,必须对机器人各部件进行详细检查。例如,电源 电压(6-9v),机械手的灵活性等。 4.伺服电动机必须调零。

六、机器人的控制
1.机器人控制组成部分 机器人主要由单片机控制, 通过驱动电路控制直流伺服电动机,从而控制机 器人的行走和机械手的动作。控制流程图 1 所示:

图 1 控制流程图

2.机器人直流电源和功率放大器 该机器人的驱动采用的是直流伺服电动机,直流电源由 4 节 5 号电池提供, 电压范围为 6-9V,所以它省略了整流电路和稳压电路。 功率放大电路,我们采用的是 PWM 脉宽调制电路,脉宽调制放大电路有较 宽的频带,动态特性较好,抗干扰能力强。功率放大电路如图 2 所示:

图 2 功率放大电路

3.单关节机器人的建模与控制 该机器人的机械手抓物属于单关节的位置控制, 其单关节开环控制传递函数 框图如图 3 所示:

图 3 单关节开环控制传递函数框图 单关节的位置控制是利用由电机组成的伺服系统使关节的实际角位移跟踪 预期的角位移,把伺服误差作为电机输入信号,产生适当的电压。即

式中,kp 是位置反馈增益(v/rad);

是系统误差;n 是转比。

实际上“位置负反馈”把单关节机器人系统从开环系统变为闭环系统。关节角度 的实际值可用光电编码器或电位器测出。

对式进行拉普拉斯变换,得

其闭环传递控制函数框图如图 4 所示:

图 4 闭环传递控制函数框图

七、电子元件布置图:

八、 程序流程图

九、程序与调试
' {$STAMP BS2} ' {$PBASIC 2.5} DO GOSUB arm_on GOSUB arm_off GOSUB arm_on1 GOSUB arm_off LOOP ‘大角度打开机械手 ‘关闭机械手 ‘小角度打开机械手 ‘关闭机械手

arm_on: FOR i=1 TO 20 PULSOUT 13,450 PAUSE 20 NEXT RETURN arm_off: FOR i=1 TO 20 PULSOUT 13,780 PAUSE 20 NEXT RETURN arm_on1: FOR i=1 TO10 PULSOUT 13,450 PAUSE 20 NEXT RETURN '{$STAMP BS2} ' {$PBASIC 2.5} ' CMUcam Boe-Bot Demo Program 3 ' Copyright 2002, Seattle Robotics

' Basic Stamp 2 ' CMUcam jumpered for Baud 9600 RcvData VAR Byte(10) step1 VAR Word Confid VAR Byte i VAR Word blue_count VAR Word red_count VAR Word ' Pause 1 second for CMUcam startup 'PAUSE 1000 ' Send "reset" to sync CMUcam and Stamp SEROUT 10, 84, ["RS",CR] SERIN 9, 84, [WAIT (":")] PAUSE 1000 ' Turn on auto adjust for 5 seconds SEROUT 10, 84, ["CR 18 44",CR] SERIN 9, 84, [WAIT (":")] PAUSE 100 ' Pause 5 seconds for CMUcam to auto adjust to lighting conditions PAUSE 5000 ' Turn off auto adjust SEROUT 10, 84, ["CR 18 44 19 32",CR] SERIN 9, 84, [WAIT (":")] PAUSE 100 ' Send command - Set poll mode - only sends one return packet ' of data after each command - reduces data flow SEROUT 10, 84, ["PM 1",CR] SERIN 9, 84, [WAIT (":")] PAUSE 100 ' Send command - Set raw data mode - also suppress Ack:/Nak: to ' further reduce serial data SEROUT 10, 84, ["RM 3",CR] PAUSE 100

'直行至五边形中间位置 GOSUB arm_on step1=200 GOSUB Fwd GOSUB arm_off Main: DO WHILE(blue_count<3) GOSUB CMUCam_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 ENDIF LOOP GOSUB turn_back_right_180 blue_count=0 DO WHILE(blue_count<2) GOSUB 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 ENDIF LOOP step1=210 GOSUB Fwd step1=17 GOSUB turn_right step1=100 GOSUB Fwd GOSUB arm_on step1=200 GOSUB back step1=17 GOSUB turn_right step1=130 GOSUB Fwd step1=10 GOSUB turn_left red_count=0 DO 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_off ELSE step1=1 GOSUB turn_right ENDIF LOOP GOSUB arm_on1 step1=100 GOSUB back '向前行走一段距离 '记录识别到的颜色个数

step1=22 GOSUB turn_right GOSUB arm_on step1=100 GOSUB Fwd red_count=0 DO 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 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 ENDIF LOOP step1=200 GOSUB Fwd PAUSE 200 red_count=0 DO WHILE(red_count<1) GOSUB CMUCam_red IF RCVData(2) < 35 AND Confid>15 THEN red_count=red_count+1 '记录识别到的颜色个数 '向前行走一段距离 '机械手动作 '记录识别到的颜色个数

ELSE step1=1 GOSUB turn_left ENDIF LOOP step1=150 GOSUB Fwd step1=100 GOSUB back step1=21 GOSUB turn_left step1=255 GOSUB Fwd PAUSE 50000 GOTO Main

Fwd: FOR i=1 TO step1 PULSOUT 14,803 PULSOUT 15,650 PAUSE 20 NEXT RETURN back: FOR i=1 TO step1 PULSOUT 14,708 PULSOUT 15,850 PAUSE 20 NEXT RETURN turn_back_left_180: FOR i=1 TO 44 PULSOUT 14,708 PULSOUT 15,650 PAUSE 20 NEXT RETURN

turn_back_right_180: FOR i=1 TO 44 PULSOUT 14,803 PULSOUT 15,850 PAUSE 20 NEXT RETURN turn_right: FOR i= 1 TO step1 PULSOUT 14,803 PULSOUT 15,850 PAUSE 20 NEXT RETURN turn_left: FOR i=1 TO step1 PULSOUT 14,708 PULSOUT 15,650 PAUSE 20 NEXT RETURN arm_on: FOR i=1 TO 10 PULSOUT 13,850 PAUSE 20 NEXT RETURN arm_off: FOR i=1 TO 50 PULSOUT 13,1060 PAUSE 20 NEXT RETURN arm_on1: FOR i=1 TO 50 PULSOUT 13,920 PAUSE 20 NEXT RETURN

CMUCam_blue: SEROUT 10, 84, ["TC 13 20 10 40 50 100",CR] SERIN 9, 84, [STR RcvData\10] Confid = RcvData(9) RETURN CMUCam_red: SEROUT 10, 84, ["TC 30 60 10 50 10 50",CR] SERIN 9, 84, [STR RcvData\10] Confid = RcvData(9) RETURN



相关文档

更多相关文档

搬运机器人培训说明书
搬运机器人说明书(1)
搬运机器人-使用说明书
搬运机器人说明书
搬运机器人设计说明书
搬运机器人毕业设计说明书
ABB搬运机器人培训说明书
中型搬运机器人设计说明书
中型搬运机器人主臂机构设计设计(160N)说明书==
语音识别机器人——操作说明书
ABB工业机器人现场编程-传送带搬运
机器人视觉识别系统研究
基于视觉识别的智能机器人
两足步行椅机器人步行稳定性及关节伺服控制研究
基于AT89C51单片机的智能避障遥控机器人的设计
电脑版