首页 机器人讲义

机器人讲义

举报
开通vip

机器人讲义机器人是一个典型的机电一体化系统,它融合了造型技术、机械、电子、传感器、计算机软件硬件和人工智能等众多先进技术,是进行工程训练、教学实验和研究的比较理想的平台。随着信息与自动化技术的发展,许多创新的工程专业都有了共同的专业基础和综合课程,如电子电路、检测技术与传感器、嵌入式微控制器等。创新教育机器人的目的就是为学生提供一个综合实验平台,进行单片机和微控制器、数字电子和模拟电子、数字逻辑、工业传感器和工业控制、基础机器人等课程的学习和实践。通过对机器人模块的学习和研究,不仅能让学生了解机器人学基本原理、运动基础以及相...

机器人讲义
机器人是一个典型的机电一体化系统,它融合了造型技术、机械、电子、传感器、计算机软件硬件和人工智能等众多先进技术,是进行工程训练、教学实验和研究的比较理想的平台。随着信息与自动化技术的发展,许多创新的工程专业都有了共同的专业基础和综合课程,如电子电路、检测技术与传感器、嵌入式微控制器等。创新教育机器人的目的就是为学生提供一个综合实验平台,进行单片机和微控制器、数字电子和模拟电子、数字逻辑、工业传感器和工业控制、基础机器人等课程的学习和实践。通过对机器人模块的学习和研究,不仅能让学生了解机器人学基本原理、运动基础以及相关扩展功能,而且还能熟悉和掌握机器人软件之一PBASIC语言下的BASICSTAMP编译软件的原理和方法,学生可以利用该套件动手组装和调试机器人,搭建检测电路,编写控制软件,获得全方位的系统化的基础工程训练,并逐步熟悉和掌握机器人学的相关知识和要点,并予以拓展和延伸,且在学习中理论与实际联系起来,紧密结合实际动手和解决问题能力,通过“做中学、学中做”高效学习模式,进一步提高创新能力和动手能力。相扑机器人相扑机器人是按照迷你相扑机器人比赛规则设计的,可即时用于参加比赛。它能找到对手的位置再将对手推出界外,而且可自动侦察到边界线,防止意外越线。它的电子部份包括一粒嵌入式BS2-IC,红外线感测器侦察对手及边界线,硬件部份包括经阳极处理黑色铅金属座架和铲子、伺服马达、车轮、可放四粒AA电池箱(不包电池)及螺丝等。QTI线跟踪套件(红外传感器组)QTI传感器由红外发射和接收器组成,用来检测物体 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 面的反射率,原本是用在相扑机器人上检测边界。原理及其应用:当QTI传感器走过一个黑的表面,反射率较低,经过一个亮的表面,反射率是较高。模块里面有一个RC电路,反射率的变化使得电路中的电流变化,而导致RC电路充放电时间的变化,通过RCtime来测量反射率,来实现对特定的表面(例如:黑胶带)进行跟踪。相扑机器人应用..学习基础的嵌入式控制器和基础的机器人..运行用红外线反射原理找寻或避开物体第一章相扑机器人的大脑BASICStamp微控制器及教学板BASICStamp微控制器是以PBASIC为编程语言,通过解释器对PBASIC应用程序进行解释执行的微型计算机,具有8路或16路I/O通道,每个I/O通道接脚可直接连接到按钮开关、发光二极管、扬声器、电压计及其它TTL装置等。通过增加一到两个额外元器件,I/O接脚就可以连接到非TTL装置,如线圈、继电器等。BASICStamp由一个5伏特电压调节器、晶振器、SerialEEPRO、及一个PBASIC解释器组成。PBASIC程序储存在非挥发性(断电后程序仍可保留)的SerialEEPRO内,解释器从EEPRO读取已储存的程序代码或将数据写进去。解释器每次读取一条指令,经过解释后对输入/输出接脚、或本身内部结构进行适当的操作。PBASIC程序储存在EEPRO中,程序可无限地被重复修改及写入BS2型控制模块程序执行速度:4000指令/秒处理器速度:20MHzRAM32位SCRATCHPADRAMN/AEEPROM2K位一块BASICStamp2模块就好象一个很小的电脑。这个很小的"电脑”插在教学底板上。你很快就会看到,教学板使得BASICStamp模块与电源以及串口线连接很容易硬件和软件开始学习BASICStamp的编程类似于开始使用崭新的PC或笔记本电脑。当有一台新的PC或笔记本电脑时,绝大多数人所要做的第一件事是:从包装盒里拿出来,接通电源,安装并测试一些软件,甚至用一种编程语言写一些他们自己所需要的软件。如果这是你首次使用BASICStamp微处理器,那么你将做同样的工作。本章节通过以下步骤告诉你如何安装和使用BASICStamp程序:1)寻找并安装编程软件2)连接BASICStamp模块到电池供电的电源3)连接BASICStamp模块到计算机,以便编程4)初次编写少量的PBASIC程序5)完成后断开电源教学底板上有一个三位开关,见下图。“0”位:关断教学底板电源“1”位:教学底板上电“2”位:教学底板和伺服电机一同上电为了确认BASICStamp模块与你的计算机通讯正常,点击“Run”菜单项,选择“Identify这时,会出现一个下图所示的窗口,样例显示系统在COM2端口检测至UBASICStamp2编写和测试一个程序告诉BASICStamp模块发送一条信息给PC机:'{$STAMPBS2}'{$PBASIC2.5}DEBUG"Hello,thisisamessagefromyoursumobot."END这里有几个特殊的消息语句,你可以通过把它们放进注释的方式(在给定语句行前加右单引号),把它们写进BASICStamp编辑器。这些消息语句叫做编译器指令。以后所有的程序都要用到这两句指令。'{$STAMPBS2}■3P死#夕滲拧|Ied1I9>—StampMode:B52[^―'{$PBASIC2.5}第一条指令是“第二条指令是“编程语言。Stamp”指令,它告诉BASICStamp编辑器你将下载程序到BASICStampPBASIC'指令,它告诉BASICStamp编辑器你使用的是2.5版本的PBASICEND在程序运行结束之后,这个命令把BASICStamp模块置于低功耗模式,所以这个命令比较简便。在低功耗模式下,BASICStamp模块等待复位键按下(或释放)或有新的程序通过编辑器下载。如果板上的复位键被按下,BASICStamp模块将再运行一次已加载的程序;如果新程序被加载进来,旧程序会被擦除,并且开始运行新程序。“DEBUG格式词或控制符就是让BASICStamp发送到调试终端的信息以某种特定方式显示的指令。“DEC就是一个格式词,告诉调试终端显示十进制数值。“CR是一个向调试终端发送回车命令的控制符。控制符“CR之后的文本或数值会显示在原有文本的下一行。你可以修改你的程序使它包含更多的格式词或控制符的调试命令。第二章相扑机器人的动力伺服电机本次实验所用的机器人采用的是Parallax公司的连续旋转伺服电机伺服电机主要有三根线,分别为:黑、红、白,其中红色的为电源线(最大为6V直流电压);黑色为地线;白色的为控制信号线(一般输入周期为23ms左右的脉冲序列),通过对这信号线输入脉冲序列来控制电机的运动,可以控制电机的运动速度,运动方向)。所有ctrtraVouritr;Fi刑e円旳tv尺二汕rw=«vdaltducaaondpipcwtr血tyrtroE>jiilLabdthooid:_:mR滞t沪4“沾hobhrcenter作tingfeedb可d;poi?rtk 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 某件事件发生的次数。PBASIC语言在使用变量之前,要先给出它的名字(variableName)和大小(Size)。这叫声明一个变量:variableNameVARSize在声明变量之后,你也可以对它初始化,即给它一个初始值(或起始值)。value=500在“value=500”中,符号“=”是个运算符。其中Word:0~65535Byte:0~255Nib:0~15Bit:0~1计数并控制循环次数最方便的控制一段代码执行次数的方法是利用FORNEXT循环,语法如下:FORCounter=StartValueTOEndValue{STEPStepValue},NEXT三个点”…表示你可以在FOR和NEXT之间放一个或多个的命令。确保要先声明一个变量参数Counter。参数StartValue和EndValue可以是数值也可以是变量。你在语法描述中看到的位于{}之间的东西,表示可选参数。换句话说,没有它FORNEXT仍将工作,但是你可以将之用于一些特殊目的。测试电机在装配相扑机器人之前还有最后一件事要做,那就是测试电机。在本任务中,你将运行程序,使电机以不同速度和不同的方向旋转。通过这些测试,将确保在装配之前电机工作是正常的。调整速度和方向两个电机的PULSOU命令的参数Duration有多种不同的组合,P13PL2描述运动状况S50650仝速.P13电机逆时斷,P12电机顺时针650&50S50S50650650750S50650750750750两个电机都静止、因为在第四节所做的中匕点调整假如你想让两个电机都运行,给与P13连接的电机发出850的脉宽,给与P12连接的电机发出650的脉宽,现在每通过循环一次要用的时间是:1.7ms-与P13连接的电机1.3ms-与P12连接的电机20ms-中断持续时间1.6ms-代码执行时间一共是24.6ms如果你想使电机运行一段确定的时间,可以计算如下:脉冲数量=时间/0.0246秒=时间/0.0246测试扬声器FREQOU命令FREQOUTPin,Duration,Freql{,Freq2}下面的FREQOU命令实例REQOUT3,2000,3000参数Pin的值是3,意味着高/低信号将送给I/O脚的P3,Duration代表着高/低信号持续的时间是2000,即2000毫秒或2秒。参数Freq1是信号的频率,在此例中,将产生一个3000赫兹的音调。第三章相扑机器人巡航控制通过编程可以使相扑机器人完成许多动作。本章所要介绍的这些动作和编程技术在后面都会再用到。与后面内容唯一不同的是:本章相扑机器人是在无感知的情况下运动,而在后面的内容中,相扑机器人会根据传感器检测到的信号做类似的运动。本章也介绍一些调节和校正相扑机器人巡航路径的方法,包括使机器人走直线、更精确的转弯、计算运动距离等技术。任务概述1编程使机器人做一些基本的动作:向前,向后,左转,右转和原地旋转。2调节任务1的运动,使动作更加精确。3计算机器人运动指定的距离需要发给机器人的脉冲数量。4写程序使机器人由突然启动或停止变为逐步加速或减速运动。5写一些执行基本动作的子程序,并且每一个子程序都能够被多次调用。当机器人向前走时,它的右轮顺时针旋转,而左轮会逆时针旋转。请同学写出:向后走呢?原地左转?原地右转?绕左轮左转?(转90度的效果经测试需要FORcounter=0TO20左右)绕右轮右转?绕左轮右转?绕右轮左转?计算运动某一距离所需时间:编程让机器人前进1s看所走距离是多少(FORcounter=1TO41)即可得到速度>1Un-If.'6?vI:Hi用一\匀变速运动:匀变速运动的关键是给PULSOU命令的Duration参数赋予变量。下面的例程显示的是一个FORNEXT循环它能使相扑机器人的速度由停止到全速。FORNEXT循环每重复执行一次,pulseCount变量就增加1。第一次循环后,pulseCount变量的值是1,就像是在执行命令PULSOUT13,751和PULSOUT12,749。第二次循环后,pulseCount变量的值是2,就像在执行命令PULSOUT13,752和PULSOUT12748。随着pulseCount变量值的增加,电机的速度也在逐渐增加。匀加速:FORpulseCount=1TO100PULSOUT13,750+pulseCountPULSOUT12,750-pulseCountPAUSE20NEXT请同学写出匀减速?用子程序简化运动程序在后面的要求中,相扑机器人将执行运动来避开障碍物。避开障碍物的一个关键的步骤就是需要按预先编好运动程序执行动作。执行这些动作的一个很好的方法是用子程序。子程序一个PBASIC子程序有两个部分。一部分是子程序调用,它告诉程序跳到可重复执行代码部分,执行后回到调用点。另一部分是实际的子程序,它以作为自己的名字的标号为子程序的起点,以RETURNS令结束。这个标号和RETURNS令之间的命令组成一个代码段,执行你想让子程序做的工作。DOCEBUG"Beforesubroutlne*\CREAJSB1000FETUkW第四章红外线导航如今最热门的产品看起来都有一个共性:无线通信。比如私人用户可以把数据无线传输到便携电脑,我们可以通过遥控自由选择频道。许多远程控制和PDA使用频率低于可见光的红外线进行信号通信。使用一些便宜且应用广泛的部件,BASICStamp微控制器也可以收发红外光信号。使用红外线前灯探测道路不接触探测物体并不需要任何就象机器视觉那样复杂的东西。许多机器人使用雷达(RADAR或者声纳(SONA)一个更简单的系统是使用红外光来照射机器人的路线,然后确定何时有光线从目标反射回来。由于红外远程控制技术的发展,红外线发射器和探测器已经很普及并且价格便宜。红外前灯我们在相扑机器人上建立的红外物体探测系统在许多方面就象汽车的前灯。当汽车前灯的射出的光从障碍物体反射回来时,你的眼睛发现障碍物体,然后你的大脑处理这些信息,并据此控制你的身体引导汽车。相扑机器人使用红外线两极管LEDs作为前灯,如上图所示。他们发射红外光,在一些情况下,红外线从物体反射从机器人前进的方向折回。相扑机器人的眼睛是红外检测器。红外检测器发出信号来表明它们是否检测到从物体反射回的红外线。相扑机器人的大脑,BASICStamp微控制器据此做出判断并基于这个传感器的输入控制伺服电机。IR(红外线)检测器有内置的光滤波器,除了需要我们用它的内部的光敏二极管传感器检测的980nm红外线,它几乎不允许其它光通过。红外检测器也有一个电子滤波器,它只允许大约38.5kHz的信号通过。换句话说,检测器只寻找每秒闪烁38,500次的红外光。这就防止了普通光源象太阳光和室内光对IR的干涉。太阳光是直流干涉(0Hz),室内光依赖于所在区域的主电源,闪烁频率接近100或120Hz。由于120Hz在电子滤波器的38.5kHz通带频率之外,它完全被IR探测器忽略。搭建并测试IR发射和探测器IRDetector3TrimmingLettIRCircuitPllRijjhtIF?Circuit用FREQOL命令测试红外发射探测器FREQOU命令主要是用来合成音频。它的实际范围是1到32768Hz。数字音调合成的一个有趣的现象是它包括被称为和声的信号,和声是混在你听到的音调里的更高频率的音调。人不能辨别频率范围从20Hz到20kHz的音调。由FREQOU命令产生的和声从32769Hz开始直到更高。你可以用高于32768Hz的参数Freql直接控制和声。本任务中,你要用命令FREQOUT4,1,38500向P4发送持续1秒的38.5kHz和声,连接P4的红外LED电路将发送和声。如果红外光被小车路径上的物体反射回来,红外检测器将给BASICStamp发送一个信号,让它知道已经检测到反射回的红外光。让每个IRLED探测器组工作的关键是发送1ms频率为38.5kHz的和声信号,然后,立刻将IR探测器的输出存储到一个变量中。下面是一个例子,它发送38.5kHz信号给连接到P4的IR发射器,然后用位变量irDetectLeft存储连接到P11的IR探测器的输出,。FREQOUT4,1,38500irDetectLeft=IN11当没有IR信号返回时,探测器的输出状态为高。当它探测到被物体反射的38500Hz和声时,它的输出为低。当FREQOU命令发送和声后,IR探测器的输出处于低状态不到1毫秒,因此当发送完FREQOUT命令后立即将IR探测器的输出存储到变量中是很重要的。这些存储的值会显示在调试终端或被机器人用来导航。探测红外线干扰如果你偶尔注意到即使检测范围内没有任何物体,你的相扑机器人指示探测到了物体,这说明附近的灯光正产生频率接近38.5kHz的红外光。如果你想在这种灯光下进行机器人比赛或演示,你的红外系统可能会停止工作。每个人最终的想法都是让自己的机器人在公开演示时不要出错,因此在动手做演示之前,用这个红外线干涉探测程序仔细检查任何要演示相扑机器人的区域是非常必要的。程序的原理很简单,不用IRLED发送任何红外光,只是监控有没有检测到红外光,如果检测到红外光,用扬声器发出警报。(红外检测范围调整你可能已经注意到在环境很黑的时候,亮一些的汽车灯可以看到更远一些的物体。通过使相扑机器人的前灯更亮,你也可以增加它的检测范围。更小的电阻使通过LED的电流更多。更多的电流使LED更亮。)探测和避开障碍物IR检测器检测到物体时,输出为高,检测到物体时,输出为低。PBASIC语言中有个条件判断命令语句IF,THEN其句法是:IF(condition)THEN,{ELSEIF(condition)},{ELSE},ENDIF句中“,”的意思是,你可以在关键词之间放置一个代码段(由一条或多条命令组成)。下面是例程:IF(IN5=0)AND(IN7=0)THENGOSUB・#¥%GOSUB!•##ELSEIF(IN5=0)THENGOSUB*—,,%ELSEIF(IN7=0)THENGOSUB%¥#%ELSEGOSUB%¥%¥#ENDIFBack_up,Turn_Left,Turn_LeftBack_up,Turn_RightBack_up,Turn_Left如果左右IR都检测到物体,则执行以下操作:如果只左侧IR检测到物体,则执行以下操作:如果只右侧IR检测到物体,则执行以下操作:请同学完成探测和避开障碍物动作程序:(后退pulsecount=0TO40旋转pulsecount=0TO20)
本文档为【机器人讲义】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_598372
暂无简介~
格式:doc
大小:641KB
软件:Word
页数:12
分类:
上传时间:2018-07-18
浏览量:0