为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

萝卜圈三维机器人教程

2019-06-05 7页 pdf 7MB 4阅读

用户头像 个人认证

素华

人民教师

举报
萝卜圈三维机器人教程萝卜圈三维机器人教程日期:2012/4/28版本:1.3萝卜圈三维机器人在线仿真平台目录目录目录目录第一章开始机器人的探索之旅——初步的构建及编程知识介绍.....................11.1让我们飞...........................................................................................................................11.2基本训练任务..................
萝卜圈三维机器人教程
萝卜圈三维机器人教程日期:2012/4/28版本:1.3萝卜圈三维机器人在线仿真平台目录目录目录目录第一章开始机器人的探索之旅——初步的构建及编程知识介绍.....................11.1让我们飞...........................................................................................................................11.2基本训练任务....................................................................................................................61.3体验跑道竞速..................................................................................................................161.4金字塔之旅......................................................................................................................18第二章迷宫灭火——程序设计的提高..........................................192.1迷宫灭火.........................................................................................................................192.2迷宫灭火回家..................................................................................................................232.3迷宫灭火搜救回家.........................................................................................................30第三章跑道竞速——机器人结构的合理性的提高................................313.1汽车悬挂系统模拟及前轮转弯.....................................................................................313.2体验极速快感.................................................................................................................403.3两轮摩托车的跑法.........................................................................................................42第四章3D图书馆——请开动你的头脑.........................................434.1路线选择和基本跑法.....................................................................................................434.290度直角转弯——变形金刚?......................................................................................504.3手臂的模拟.....................................................................................................................56第五章野外生存——更快更高更强............................................585.1三种基本跑法..................................................................................................................585.2爬绳索与过吊桥的结合跑法..........................................................................................615.3石板桥与过吊桥的结合跑法..........................................................................................62萝卜圈三维机器人在线仿真平台1第一章开始机器人的探索之旅第一章开始机器人的探索之旅第一章开始机器人的探索之旅第一章开始机器人的探索之旅————————初步的构建及编程知识介绍初步的构建及编程知识介绍初步的构建及编程知识介绍初步的构建及编程知识介绍同学们,你能想象出吗?在几千米深的大洋底部,机器人在连接或修复海底的电缆;在餐厅里,机器人侍者在为顾客提供优质服务;在医院的手术台前,机器人在为病人做开颅手术……这些并非科学幻想,它们正在或将要成为现实。那么,目前世界上机器人技术发展到了什么样的水平,又在哪些领域得到了应用?现在,让我们萝卜圈的仿真机器人系统,了解机器人吧。1.11.11.11.1让我们飞让我们飞让我们飞让我们飞很多同学都有自己的飞行梦,现实我们很难自由的构建自己的飞行器,现在我们通过萝卜圈的仿真系统来构建属于自己的飞行器吧!通过本节课的学习,你将能够:初步掌握机器人构建的基本技巧初步掌握机器人构建的基本技巧初步掌握机器人构建的基本技巧初步掌握机器人构建的基本技巧。。。。初步掌握编程的基本方法以及通过任务场景欣赏自己的作品初步掌握编程的基本方法以及通过任务场景欣赏自己的作品初步掌握编程的基本方法以及通过任务场景欣赏自己的作品初步掌握编程的基本方法以及通过任务场景欣赏自己的作品。。。。一一一一、、、、机器人构建机器人构建机器人构建机器人构建构建好之后,保存退出。文件名:飞。思考:1、为什么风扇叶左右不会碰撞的话,前后一定也不会碰撞?2、飞行器的构建首先要注意什么问题?3、为什么要反转电机?萝卜圈三维机器人在线仿真平台2二二二二、、、、程序编写程序编写程序编写程序编写写好之后,保存退出。文件名:飞。三三三三、、、、选择选择选择选择““““训练训练训练训练----前进前进前进前进””””场景场景场景场景,,,,查看效果查看效果查看效果查看效果。。。。四四四四::::如何才能安全降落如何才能安全降落如何才能安全降落如何才能安全降落????1、结构的改进:添加一个距离传感器,注意设置端口号。2、程序的改进:添加一个条件循环让飞行器飞行3秒后开始下降萝卜圈三维机器人在线仿真平台3当满足条件时,以28的电机速度下降电机速度设置为28思考:飞行器下降时的电机设置应注意什么问题?注意注意注意注意::::1.3版在电机开始飞行之前设置版在电机开始飞行之前设置版在电机开始飞行之前设置版在电机开始飞行之前设置3秒延时秒延时秒延时秒延时巩固与提高巩固与提高巩固与提高巩固与提高::::利用直升机控制器构建飞行器利用直升机控制器构建飞行器利用直升机控制器构建飞行器利用直升机控制器构建飞行器萝卜圈三维机器人在线仿真平台4小节:通过本节的学习我们学到了什么?1、_____________________________________________________________2、_____________________________________________________________拓展:直流电机驱动说明直流电机(如图1)是一种驱动轴可连续旋转的驱动模块,其旋转速度可调,转向可正转或反转。直流电机通常用于机器人运动。4个直流电机配合轮子,可实现机器人的前进、后退、左转、右转和停止等动作,几乎所有采用轮式运动的机器人都要使用直流电机。在驱动直流电机时,可设置其速度和转向,或使其停止。萝卜圈仿真中的直流电机的速度通常在0-20之间,一般应用可使用10的速度。直流电机有2种安装点,方形安装点用于安装,圆形安装点为驱动轴。驱动直流电机时,其圆形安装点上安装的部件可以转动。正转正转正转正转/反转反转反转反转::::默默默默认的旋转方向定义为认的旋转方向定义为认的旋转方向定义为认的旋转方向定义为::::从直流电机内部向驱动轴方向看从直流电机内部向驱动轴方向看从直流电机内部向驱动轴方向看从直流电机内部向驱动轴方向看,,,,逆时针方向转动是正转逆时针方向转动是正转逆时针方向转动是正转逆时针方向转动是正转,,,,顺时针方向是反转顺时针方向是反转顺时针方向是反转顺时针方向是反转。。。。设设设设置为置为置为置为““““反转电机反转电机反转电机反转电机””””旋转方向相反旋转方向相反旋转方向相反旋转方向相反。。。。直流电机属性设置直流电机属性设置直流电机属性设置直流电机属性设置直流电机可设置名称、端口、反转电机等属性(图2)。名称名称名称名称:直流电机在添加到编辑区时会自动按序号命名(第1个除外),修改成有意义的名称有助于在编程时识别具体的直流电机。端口端口端口端口:所有要驱动的直流电机都需要为其分配一个端口,可用范围为1~30。在编写控制程序时,没有分配端口的直流电机不会出现在直流电机列表中,无法使用。反转电机反转电机反转电机反转电机:选中“反转电机”属性时,控制程序在驱动其正转时,直流电机反转,反之驱动轴图1直流电机萝卜圈三维机器人在线仿真平台5正转。通常情况下,4轮结构的机器人将左侧2个直流电机设为反转,右侧2个不设置反转。在编程时驱动机器人时,可按照一般思维设置左、右两侧的转向,如直行——都正转,左转——左侧反转、右侧正转等。相关编程模块相关编程模块相关编程模块相关编程模块图形化编程中与直流电机相关的编程模块有“驱动”类的“直流电机驱动”、“多直流电机驱动”、“停止直流电机”、“停止所有直流电机”4个模块,如图3所示。““““直流电机驱动直流电机驱动直流电机驱动直流电机驱动””””用于驱动单个直流电机。此模块有2个容器,左容器放置表示直流电机端口号的整型类模块,可放置“机器人端口”、“常量int”、“变量int”等模块。右容器放置设置直流电机的速度和转向的整型类模块,可放置“常量int”,“变量int”等,数值为正时直流电机正转,为负时反转。““““多直流电机驱动多直流电机驱动多直流电机驱动多直流电机驱动””””用于驱动一个或多个直流电机。此模块没有容器,在其属性面板(如直流电机名称在编程时便于识别选择直流电机端口用于程序驱动选择“反转电机”时实际转向与程序设置相反图2直流电机属性多直流电机驱动图3直流电机相关编程模块直流电机驱动停止直流电机停止所有直流电机图4多直流电机属性设置选择驱动,速度8,正转选择驱动,速度8,反转不驱动,保持之前的状态萝卜圈三维机器人在线仿真平台6图4)中列出机器人上所有的直流电机,选择需要驱动的直流电机,输入其速度和设置转向,未选择的直流电机不会被驱动,保持之前的驱动状态。““““停止直流电机停止直流电机停止直流电机停止直流电机””””用于停止一个或多个直流电机。此模块没有容器,在属性面板中选择需要停止的直流电机,未选择的直流电机保持之前的状态。““““停止所有直流电机停止所有直流电机停止所有直流电机停止所有直流电机””””用于停止机器人上所有直流电机。此模块没有容器,也无需设置参数,使用此模块将停止机器人上所有的直流电机。1.21.21.21.2基本训练任务基本训练任务基本训练任务基本训练任务本节我们以训练任务为线索,通过完成训练任务,进一步提高自己的构建机器人和程序的设计能力。通过本节课的学习,你将能够:利用模板利用模板利用模板利用模板构建构建构建构建机器人机器人机器人机器人的基本技巧的基本技巧的基本技巧的基本技巧。。。。区分飞行与车行结构上不同区分飞行与车行结构上不同区分飞行与车行结构上不同区分飞行与车行结构上不同,,,,初步了解伺服电机的使用初步了解伺服电机的使用初步了解伺服电机的使用初步了解伺服电机的使用。。。。1.2.1训练—前进一一一一、、、、机器人构建机器人构建机器人构建机器人构建这么复杂的机器人其实可以通过创建模板,就可以很简单的做出来。文件名:训练萝卜圈三维机器人在线仿真平台7二、程序编写写好之后,保存退出。文件名:训练。三三三三、、、、选择选择选择选择““““训练训练训练训练----前进前进前进前进””””场景场景场景场景,,,,查看效果查看效果查看效果查看效果。。。。四四四四::::变形变形变形变形????结构改进:更换较轻的轮子萝卜圈三维机器人在线仿真平台8程序改进:将左右手臂旋转90度延时500直流电机启动,开始前行,速度设置改为7前行4秒将头部和左右手臂的电机启动,以43的速度效果如何?看一下!你的机器人飞起来了么?萝卜圈三维机器人在线仿真平台9思考:如果将伺服电机转动的角度改变一下,会怎样?巩固与提高巩固与提高巩固与提高巩固与提高::::独立完成训练独立完成训练独立完成训练独立完成训练—后退任务的程序设计后退任务的程序设计后退任务的程序设计后退任务的程序设计小节:通过本节的学习我们学到了什么?1、_____________________________________________________________2、_____________________________________________________________拓展:伺服电机驱动说明说明说明说明说明伺服电机(图9)是一种驱动轴可旋转到指定角度且可保持在此角度的驱动部件,伺服电机不能像直流电机能连续旋转,其旋转角度为-180°~+179°。伺服电机可用于控制机械手臂、仿生类机器人(昆虫、动物)、类人机器人或其它完成特定动作的机械结构,通常情况下需要多个伺服电机配合使用。在驱动伺服电机时,可直接设置其目标角度,或使用高级模块使其平滑转动。伺服电机在仿真开始时总是处于0°的角度。伺服电机有2种安装点,方形安装点用于安装,圆形安装点为驱动轴。驱动伺服电机时,其圆形安装点上安装的部件可转动。相关编程模块相关编程模块相关编程模块相关编程模块与伺服电机相关的编程模块有“驱动”类中的“伺服电机驱动”、“多伺服电机驱动”、“多伺服步进驱动”、“多伺服总时间驱动”4个模块,如图10所示。“伺服电机驱动伺服电机驱动伺服电机驱动伺服电机驱动”是基本驱动模块,将单个伺服电机从当前角度直接驱动到目标角度。此模块有2个容器,左容器放置表示伺服电机端口号的模块,可放置“机器人端口”、“常量int”、“变量int”等。右容器放置表示伺服电机角度值的模块,可放置“常量int”、“变量int”等。“多伺服电机驱动多伺服电机驱动多伺服电机驱动多伺服电机驱动”是基本驱动模块,将一个或多个伺服电机从当前角度直接驱动到目标角度。此模块没有容器,在属性面板中列出了机器人所有的伺服电机,选择需要驱动的伺服电机,并输入其目标角度。“多伺服步进驱动多伺服步进驱动多伺服步进驱动多伺服步进驱动”是高级驱动模块,将一个或多个伺服电机从当前角度,按照指定的步进角度,以指定的间隔时间驱动到目标角度。此模块没有容器,在属性面板中设置其驱动参数,“步进量(角度)”设置所有选择的伺服电机每次改变的角度差值,“间隔时间(毫秒)”设置两次步进之间的等待时间,“伺服电机列表”中选择需要驱动的伺服电机,“值”输入目驱动轴图1伺服电机伺服电机驱动多伺服电机驱动多伺服步进驱动多伺服总时间驱动图2伺服电机相关编程模块萝卜圈三维机器人在线仿真平台10标角度,不选择的伺服电机不被驱动。此模块为堵塞执行,执行时间约为:执行时间=(最大角度差÷步进量)×间隔时间此模块驱动时,同时驱动所有选择的伺服电机,直到所有伺服电到达目标角度。角度差较小的伺服电机先达到目标角度,并保持不动,等待角度差较大伺服电机到达目标角度。“多伺服总时间驱动多伺服总时间驱动多伺服总时间驱动多伺服总时间驱动”是高级驱动模块,将一个或多个伺服电机从当前角度在指定时间内自动匀速驱动到目标角度。在属性面板中设置其驱动参数,“驱动总时间(毫秒)”设置驱动的总时间,“伺服电机列表”中选择需要驱动的伺服电机,“值”输入目标角度,不选择的伺服电机不被驱动。此模块会自动计算每次驱动时,每个伺服电机的步进量和间隔时间。一般情况下,多个不同差值的伺服电机驱动时,差值较大伺服电机旋转较快,差值较小的伺服电机旋转较慢,整体效果为同时到达目标角度。此模块为堵塞执行,执行时间为“驱动总时间”的设定时间。当前角度当前角度当前角度当前角度:伺服电机在执行某种驱动之前时的角度,进入仿真后,所有伺服电机的“当前角度”为0°。目标角度目标角度目标角度目标角度:伺服电机要旋转到的角度(范围-180°~+179°)。设置的目标角度小于-180°时,伺服电机旋转到-180°时不再旋转,大于179°时,转到179°不再旋转。角度差角度差角度差角度差:当前角度与目标角度的差值。1.2.2训练训练训练训练—左转左转左转左转通过本节课的学习,你将能够:初步掌握指南针及距离探测器的使用初步掌握指南针及距离探测器的使用初步掌握指南针及距离探测器的使用初步掌握指南针及距离探测器的使用。。。。初步掌握转弯程序的构建初步掌握转弯程序的构建初步掌握转弯程序的构建初步掌握转弯程序的构建。。。。一一一一、、、、机器人构建机器人构建机器人构建机器人构建文件名:左转注意注意注意注意::::不要忘记给探测器设置端口号不要忘记给探测器设置端口号不要忘记给探测器设置端口号不要忘记给探测器设置端口号萝卜圈三维机器人在线仿真平台11二、程序编写当距离探测≥3000时,条件循环成立,执行循环内程序左转至90度直行思考:为什么要设置这样的判断条件?当从0度右转1度是多少度?三三三三、、、、选择选择选择选择““““训练训练训练训练----左转左转左转左转””””场景场景场景场景,,,,查看效果查看效果查看效果查看效果。。。。四四四四、、、、汽车差速转弯的模拟汽车差速转弯的模拟汽车差速转弯的模拟汽车差速转弯的模拟萝卜圈三维机器人在线仿真平台12程序改进:巩固与提高巩固与提高巩固与提高巩固与提高::::独立完成训练独立完成训练独立完成训练独立完成训练—右转右转右转右转任务的程序设计任务的程序设计任务的程序设计任务的程序设计小节:通过本节的学习我们学到了什么?1、_____________________________________________________________2、_____________________________________________________________拓展:传感器说明距离传感器距离传感器距离传感器距离传感器说明说明说明说明距离传感器用于检测传感器前方与物体之间的距离,返回值为0~3000的整型数值。距离传感器最大检测距离为3000,超出其检测范围时返回3000。距离传感器在工作时会发射一条蓝白相间的射线,指示其检测的方向和检测范围。射线照射到物体上表示检测到了此物体,射线会被此物体截断。距离传感器常用于检测机器人某个方向有无物体及物体的距离。当距离传感器的返回值小于3000时表明此传感器的前方(3000范围内)有物体,具体的数值表示与物体的距离。相关编程模块相关编程模块相关编程模块相关编程模块与距离传感器相关的编程模块是“侦测”类中的“距离”模块,此模板获取指定的距离传感器的返回值,其返回值为整形。模块为容器内模块,不能连接,可放置到赋值、逻辑类的关系表达式、运算类等模块容器内,在属性面板中选择要获取返回值的距离传感器。障碍传感器障碍传感器障碍传感器障碍传感器萝卜圈三维机器人在线仿真平台13说明说明说明说明障碍传感器用于判断在指定的检测距离内有无障碍物,检测到障碍时返回1,没检测到障碍时返回0。障碍传感器默认的检测距离为500,最大检测距离为500,最小检测距离为1。障碍传感器在工作时会发射一条蓝白相间的射线,指示其检测的方向和距离,射线照射到物体上表示检测到了此物体,射线会被此物体截断。障碍传感器常用于检测特定的范围内有无物体,并不关心与物体的具体距离。如迷宫灭火项目中常使用障碍传感器用于走迷宫。相关编程模块相关编程模块相关编程模块相关编程模块与障碍传感器相关的编程模块有“侦测”类中的“障碍”、“驱动”类中的“传感器设置”和“简便传感器设置”。“障碍”模块用于获取返回值,“传感器设置”和“简便传感器设置”用于设置障碍传感器的检测距离。“障碍”模块用于获取指定的障碍传感器的返回值,其返回值为整型。模块为容器内模块,不能连接,可放置到赋值、逻辑类的关系表达式,运算类等模块容器内,在属性面板中选择要获取返回值的距离传感器。“传感器设置”模块用于设置障碍传感器的检测距离。此模块有2个容器,左容器放置需要设置的障碍传感器的端口号,可放置“机器人端口”、“常量int”、“变量int”等。右容器放置设置的检测距离,可放置“常量int”、“变量int”等。“简便传感器设置”模块用于设置障碍传感器的检测距离。此模块在属性面板中选择要设置的障碍传感器,在右容器中放置要设置的检测距离的模块,可放置“常量int”、“变量int”等。障碍传感器的检测距离有效范围为1~500,不在此范围时自动设为500。灰度传感器灰度传感器灰度传感器灰度传感器说明说明说明说明灰度传感器将检测到的各种颜色转换成灰度值,使用0~255的数值表示,其检测距离固定为5。转换方式依照计算机图像学公式进行转换,纯白色的灰度值为255,纯黑色的灰度值为0。灰度传感器常用于检测颜色的区别,如轨迹类任务用于区分黑色轨迹线和灰白色地面。为了提高机器人仿真效率,通常只有与任务相关的指定物体的颜色可以被灰度传感器检测到,如轨迹、跑道、迷宫场地、颜色标记等。而大的地形、草地、山、建筑、家具等物体,在灰度检测到时总是返回0。相关编程模块与灰度传感器相关的编程模块有“侦测”类中的“灰度”模块,此模块获取灰度传感器的返回值,其返回值为整型。模块为容器内模块,不能连接,可放置到赋值、逻辑类的关系表达式、运算类等模块容器内,在属性面板中选择要获取返回值的灰度传感器。光线传感器光线传感器光线传感器光线传感器说明说明说明说明光线传感器用于检测其前方的光线强度。理想条件下,光线传感器在0距离检测1坎萝卜圈三维机器人在线仿真平台14德拉发光强度的光源时返回值为1000,即在0距离、0角度检测1支蜡烛时,其返回值为1000。光线传感器距离光源越近返回值越大,反之越小;与光源的夹角越小返回值越大,反之越小。光线传感器通常用于检测迷宫灭火中的蜡烛、足球比赛中的发光足球等。光线传感器与1坎德拉发光强度的光源在0度夹角的情况时,返回值与光源距离的关系如图28所示。光线传感器在安装时,应与要检测到的光源的中心保持在同一水平线,其前方不要有遮挡物,为扩大检测的范围,可以在不同的方向安装多个光线传感器。相关编程模块与光线传感器相关的编程模块有“侦测”类中的“光线”模块,此模块获取光线传感器返回值,其返回值为整型。模块为容器内模块,不能连接,可放置到赋值、逻辑类的关系表达式、运算类等模块容器内,在属性面板中选择要获取返回值的光线传感器。接触传感器接触传感器接触传感器接触传感器说明说明说明说明接触传感器用于检测其前方是否与其它物体接触,当其前方接触到其它物体时,返回1,没有接触到其它物体时返回0。接触传感器常用于检测机器人某个方位是否接触到其它物体,一般安装到机器人最外缘的位置,使之能最先接触到其它物体。相关编程模块与接触传感器相关的编程模块是“侦测”类中的“接触”模块,此模块获取接触传感器返回值,其返回值为整型。模块为容器内模块,不能连接,可放置到赋值、逻辑类的关系表达式、运算类等模块内,在属性面板中选择要获取返回值的距离传感器。指南针传感器指南针传感器指南针传感器指南针传感器图3光线传感器检测曲线萝卜圈三维机器人在线仿真平台15说明说明说明说明指南针传感器用于获取方向,返回其前方(指南针上标有“N”(北方)的方向)与场景的正北(+Z轴)方向的夹角,返回值为0~359度。指南针传感器常用于使机器人转到某个方向,或使机器人沿某个方向行进。使用指南针传感器时需要水平安装,且指针面朝上,否则可能无法正常工作。相关编程模块相关编程模块相关编程模块相关编程模块与指南针传感器相关的编程模块有“侦测”类中的“指南针”模块,此模块获取指南针传感器的返回值,其返回值为整型。模块为容器内模块,不能连接,可放置到赋值、逻辑类的关系表达式、运算类等模块容器内,在属性面板中选择要获取返回值的指南针传感器。海拔高度计海拔高度计海拔高度计海拔高度计说明说明说明说明海拔高度计返回传感器相对海平面的垂直距离,返回值为整型。萝卜圈仿真场景的海平面是Y轴坐标为0的XZ平面,海拔高度计的位置高于海平面时返回正值,低于海平面时返回负值。海拔高度计常用于检测机器人的行进过程中的高度变化。相关编程模块相关编程模块相关编程模块相关编程模块与海拔高度计相关的编程模块有“侦测”类中的“海拔”模块,此模块获取海拔高度计的返回值,其返回值为整型。模块为容器内模块,不能连接,可放置到赋值、逻辑类的关系表达式、运算类等模块容器内,在属性面板中选择要获取返回值的海拔高度计。延时模块延时模块延时模块延时模块说明说明说明说明“延时”模块是编程模块,此模块是堵塞执行,程序等待指定的时间后再执行下面的模块。使用此模块可使机器人保持当前状态一定时间,如停止1秒,保持前进2秒,转弯0.5秒等。计时计时计时计时说明说明说明说明计时是编程模块,常用于控制某段程序或子程序执行指定的时间,或计算某段程序执行的时间。有“驱动”类中的“开始计时”和“获取计时”2个模块。“开始计时”模块设置计时开始并将计时时间清0,下次获取的计时时间从当前时刻开始。在使用“计时”之前必须至少使用一个“开始计时”,否则“计时”模块的返回值将不确定。“计时”模块用于获取从上次开始计时到当前经过的时间,单位为毫秒。计时类模块与“延时”的区别为:延时模块在执行时无法执行其它程序模块,必须等待其执行完毕。而计时类模块可看作是系统自动更新的时间“变量”,程序在需要时获取这个“变量”的值或清空其值。因此,在使用计时类模块时,可以同时执行其它模块、子程序等。萝卜圈三维机器人在线仿真平台161.1.1.1.3333体验跑道竞速体验跑道竞速体验跑道竞速体验跑道竞速一一一一、、、、机器人构建机器人构建机器人构建机器人构建文件名:走轨迹二二二二、、、、程序设计程序设计程序设计程序设计文件名:走轨迹如果左侧灰度<100,则左转如果右侧灰度<100,则右转如果都没有则直行萝卜圈三维机器人在线仿真平台17三三三三、、、、选择选择选择选择““““训练训练训练训练----走轨迹走轨迹走轨迹走轨迹””””场景场景场景场景,,,,查看效果查看效果查看效果查看效果。。。。四四四四、、、、体验跑道竞速体验跑道竞速体验跑道竞速体验跑道竞速结构改进:思考:换用较重的控制器为什么可以以更快的速度行进?注注注注::::前面的蓝色块前面的蓝色块前面的蓝色块前面的蓝色块,,,,可以有个小角度的抬头可以有个小角度的抬头可以有个小角度的抬头可以有个小角度的抬头,,,,2222度角就可以度角就可以度角就可以度角就可以。。。。换用较轻的直流电机目的是减换用较轻的直流电机目的是减换用较轻的直流电机目的是减换用较轻的直流电机目的是减少整个车身的重量少整个车身的重量少整个车身的重量少整个车身的重量,,,,该场景限制车身重量该场景限制车身重量该场景限制车身重量该场景限制车身重量<<<<1500150015001500。。。。程序改进:萝卜圈三维机器人在线仿真平台18注注注注::::整个程序基本不变整个程序基本不变整个程序基本不变整个程序基本不变,,,,注意将原来左转的改为右转注意将原来左转的改为右转注意将原来左转的改为右转注意将原来左转的改为右转,,,,灰度灰度灰度灰度<<<<180180180180即可即可即可即可。。。。巩固提高巩固提高巩固提高巩固提高::::继续改进结构继续改进结构继续改进结构继续改进结构,,,,提高成绩提高成绩提高成绩提高成绩。。。。小节:通过本节的学习我们学到了什么?1、_____________________________________________________________2、_____________________________________________________________*1.4*1.4*1.4*1.4金字塔之旅金字塔之旅金字塔之旅金字塔之旅本节为综合技能实践课本节为综合技能实践课本节为综合技能实践课本节为综合技能实践课。。。。利用萝卜圈的网络利用萝卜圈的网络利用萝卜圈的网络利用萝卜圈的网络pkpkpkpk功能功能功能功能,,,,4444人一组人一组人一组人一组,,,,组织学生比赛组织学生比赛组织学生比赛组织学生比赛。。。。本节课设本节课设本节课设本节课设置的目的是通过竞赛的形式置的目的是通过竞赛的形式置的目的是通过竞赛的形式置的目的是通过竞赛的形式,,,,提高学生的综合技能的掌握提高学生的综合技能的掌握提高学生的综合技能的掌握提高学生的综合技能的掌握。。。。学生在想更快学生在想更快学生在想更快学生在想更快、、、、更稳的过程中更稳的过程中更稳的过程中更稳的过程中体验体验体验体验、、、、提高提高提高提高。。。。萝卜圈三维机器人在线仿真平台19第二章第二章第二章第二章迷宫灭火迷宫灭火迷宫灭火迷宫灭火————————程序设计的提高程序设计的提高程序设计的提高程序设计的提高在这一章的学习中,我们会通过三种模式的迷宫任务,使我们对传感器和程序设计有一个进一步的认识和提高。我们在这一章更关注的是程序设计的合理性和技巧程序设计的合理性和技巧程序设计的合理性和技巧程序设计的合理性和技巧,通过的学习使同学们能够自己自己设计判断程序,使我们的机器人带有一定的智慧!2.12.12.12.1迷宫灭火迷宫灭火迷宫灭火迷宫灭火一一一一、、、、左手法则左手法则左手法则左手法则:让机器人沿墙壁的左侧行驶,那么机器人一定可以走完全部靠墙的房间。同理,若让机器人沿右侧行驶,也一定可以走完,称为右手法则。名称前中控制(右转控制)左前控制(差速右转控制)左后控制(直行控制)左转控制作用当前方有障碍物时,使车身右转当左前有障碍时,使车身右差速行驶,离开墙壁一些距离。当左后有障碍时,使车身直行当所有障碍检测为0时,使车身左转示意图电机设置判断条件障碍中障碍左前障碍左后前三者都为0二二二二、、、、构建机器人构建机器人构建机器人构建机器人萝卜圈三维机器人在线仿真平台20注意3个光线传感器及3个障碍传感器的位置,及直流电机的位置。三三三三、、、、程序编写程序编写程序编写程序编写下图为程序主体部分萝卜圈三维机器人在线仿真平台21为3个障碍传感器赋值,依次为左后、左前、前中用三个光线传感器的“或”判断,确定车身所处位置为:前方有光源前方有光源前方有光源前方有光源If判断的两个分支:若不成立则继续用“迷宫”子程序探索;若成立则执行灭火程序。在“灭火”子程序前的电机速度为8的前行200毫秒延时的模块,可以理解为“迷宫”和“灭火”两个子程序之间的缓冲或者衔接。下图为迷宫子程序的VPL程序图,相关电机设置参照左手法则的图表设置障碍判断依次为:中、左前、左后。注意注意注意注意::::判断条件同时满足两个或两个以上时判断条件同时满足两个或两个以上时判断条件同时满足两个或两个以上时判断条件同时满足两个或两个以上时,,,,前前前前面面面面的判断优先的判断优先的判断优先的判断优先。。。。萝卜圈三维机器人在线仿真平台22下图为灭火子程序的VPL程序图思考思考思考思考::::若下图此判断条件成立说明机器人在什么位置若下图此判断条件成立说明机器人在什么位置若下图此判断条件成立说明机器人在什么位置若下图此判断条件成立说明机器人在什么位置????思考思考思考思考::::若下图左侧光线传感器若下图左侧光线传感器若下图左侧光线传感器若下图左侧光线传感器----右侧光线传感器右侧光线传感器右侧光线传感器右侧光线传感器>>>>20202020说明机器人车身与蜡烛的位置关系如说明机器人车身与蜡烛的位置关系如说明机器人车身与蜡烛的位置关系如说明机器人车身与蜡烛的位置关系如何何何何????以蜡烛为基准以蜡烛为基准以蜡烛为基准以蜡烛为基准,,,,偏向那边偏向那边偏向那边偏向那边????若条件成立时的差速转弯电机设置萝卜圈三维机器人在线仿真平台23当下图这两个条件当下图这两个条件当下图这两个条件当下图这两个条件都都都都不满足时不满足时不满足时不满足时,,,,说明车身与蜡烛位置什么关系说明车身与蜡烛位置什么关系说明车身与蜡烛位置什么关系说明车身与蜡烛位置什么关系????试一试,下图模块你自己能看懂么?通过电机端口赋值的方法可以不用通过属性面板来实现电机的设置,你注意到了吗?注意这个停止电机与上面的停止所注意这个停止电机与上面的停止所注意这个停止电机与上面的停止所注意这个停止电机与上面的停止所有电机的有电机的有电机的有电机的差别差别差别差别此为卢俊工程师的恶搞,大家不用理会O(∩_∩)O哈哈~巩固提高巩固提高巩固提高巩固提高::::在整个程序中在整个程序中在整个程序中在整个程序中仍仍仍仍有有有有很很很很多可以优多可以优多可以优多可以优化化化化的的的的地地地地方方方方,,,,大家大家大家大家用自己的方法进行改进用自己的方法进行改进用自己的方法进行改进用自己的方法进行改进。。。。小节:通过本节的学习我们学到了什么?1、_____________________________________________________________2、_____________________________________________________________2.22.22.22.2迷宫灭火回家迷宫灭火回家迷宫灭火回家迷宫灭火回家本节内容是在上节的基础上,在灭火之后回到起始位置。““““回家回家回家回家””””的的的的难点难点难点难点在在在在于于于于,,,,我们我们我们我们如如如如何能何能何能何能够让够让够让够让机器人自己机器人自己机器人自己机器人自己知道知道知道知道,,,,它它它它是在那个是在那个是在那个是在那个房房房房间灭火的间灭火的间灭火的间灭火的呢呢呢呢????我们注意到机器人在灭火过程中,不需要知道是在什么房间,而在不同房间灭火,机器人所机器人所机器人所机器人所走走走走过的过的过的过的路路路路程是不同的程是不同的程是不同的程是不同的,,,,那么机器那么机器那么机器那么机器人所用的时间人所用的时间人所用的时间人所用的时间也也也也是不同的是不同的是不同的是不同的,由此分析,我们可以通过设置不同的计时判断不同的计时判断不同的计时判断不同的计时判断机器人是在那个房间灭火的,再根据机器人在不同房间的位置来决定回家的路线。注注注注::::灭火之后不能进灭火之后不能进灭火之后不能进灭火之后不能进入其入其入其入其他房他房他房他房间间间间。。。。萝卜圈三维机器人在线仿真平台24在以上的分析中的几个问题:1、用什么确定机器人灭火的房间?2、不同房间回家的路线相同吗?一、不同房间回家路线的选择分析:1、从1房间返回思路:可以让车倒行,沿墙壁的右侧返回。2、从2房间返回思路:先是继续以左手法则前行至路口,改为右手法则返回。从2房间返回至路口判断可以通过计时控制判定。3、从3房间返回思路:继续以左手法则前行即可返回。4、从4房间返回思路:以右手法则返回。5、无论从哪个房间返回,都可以以灰度判断是否回到起点。6、在前面灭火程序的基础上,继续进行改进即可,前面灭火模块不变。7、右手法则和后行右手法则的程序设定,可以通过参照左手法则进行设定,并构建响萝卜圈三维机器人在线仿真平台25应的子程序二、从1房间返回1、后行右手法则程序与左手法则对照图左后前左前后左中左后左后通过上面图表同学们发现有什么规律吗?萝卜圈三维机器人在线仿真平台26理解之后,后行右手法则程序,可以通过复制→粘贴的方法构建。2、下面是迷宫后行子程序的VPL程序图3、右手法则与左手法则应该有什么关系?同学们尝试自己填写下面表格左右左右1(9)2(9)3(-9)4(-9)1(12)2(12)3(5)4(5)1(7)2(7)3(7)4(7)1(1)2(1)3(13)4(13)4、构建右手法则的VPL程序5、从1房间返回的VPL子程序图萝卜圈三维机器人在线仿真平台27注意注意注意注意::::机器人灰度探测器要机器人灰度探测器要机器人灰度探测器要机器人灰度探测器要添加添加添加添加,,,,同学同学同学同学们们们们思考为什么要这思考为什么要这思考为什么要这思考为什么要这样样样样设置设置设置设置????灰度探测器位置图添加灰度探测器位置原灰度探测器位置三、从2房间返回萝卜圈三维机器人在线仿真平台28四、从3号房间返回五、从4号房间返回六、迷宫灭火回家主程序萝卜圈三维机器人在线仿真平台29萝卜圈三维机器人在线仿真平台30巩固提高巩固提高巩固提高巩固提高::::如如如如果我们果我们果我们果我们的机器人探测的机器人探测的机器人探测的机器人探测到到到到1111房房房房间间间间没没没没有光线有光线有光线有光线,,,,能不能不进能不能不进能不能不进能不能不进入入入入1111房房房房间间间间????同同同同样样样样的的的的道道道道理理理理,,,,我们我们我们我们能不能能不能能不能能不能很很很很快的快的快的快的从其他没从其他没从其他没从其他没有光线的有光线的有光线的有光线的房房房房间中间中间中间中出出出出来来来来,,,,继续探继续探继续探继续探索索索索下一个下一个下一个下一个房房房房间间间间呢呢呢呢????小节:通过本节的学习我们学到了什么?1、_____________________________________________________________2、_____________________________________________________________****2.2.2.2.3333迷宫灭火迷宫灭火迷宫灭火迷宫灭火搜救搜救搜救搜救回家回家回家回家在上一节中,我们已经将迷宫程序的难点解决。本节在上节的基础上添加了“搜救”模块,其实是对第一节内容的一个延伸。由于本章重点放在程序的分析及编写上,所以本节只给出机器人的结构示意图,“搜救”模块,在灭火模块的基础上,同学们自己尝试编写一下程序。“回家”模块也需要做一些改动,给出图示,大家尝试画出回家路线,并将程序改写。机器人结构图萝卜圈三维机器人在线仿真平台31回家路线设计图萝卜圈三维机器人在线仿真平台32第三章第三章第三章第三章跑道竞速跑道竞速跑道竞速跑道竞速————————机器人结构的合理性的提高机器人结构的合理性的提高机器人结构的合理性的提高机器人结构的合理性的提高前面我们已经介绍过用灰度探测器跑“跑道竞速”这个场景,在本章中,我们重点放在改进机器人的结构上,使得我们的成绩有进一步提高。通过本章的学习,希望同学们能够充分认识到机器人结构合理性的重要,在结构合理的基础上放飞自己的思想。3333.1.1.1.1汽汽汽汽车车车车悬挂悬挂悬挂悬挂系系系系统统统统模模模模拟拟拟拟及前及前及前及前轮轮轮轮转弯转弯转弯转弯如何使得我们的机器人的结构更合理且更具有实用性呢?我们首先思考模拟现实生活中的一些实例,比如我们这节所要讲述的汽车悬挂系统的模拟及前轮转弯的思路。现实中,汽车的悬挂系统是依靠弹簧和钢架结构来实现,在萝卜圈中我们如何来实现?一一一一、、、、机器人的构建机器人的构建机器人的构建机器人的构建1111、、、、悬挂悬挂悬挂悬挂系系系系统统统统及前及前及前及前轮轮轮轮转弯的构建图转弯的构建图转弯的构建图转弯的构建图(1)思考:为什么这样的结构可以减少车轮的震动?为什么要用伺服电机而不是“安装块”?(2)思考:为什么要用1*2的安装块将轮子与1*3的安装块间留下间距?萝卜圈三维机器人在线仿真平台332222、、、、机器人的整体构建图机器人的整体构建图机器人的整体构建图机器人的整体构建图注意注意注意注意::::前前前前轮轮轮轮间距与后间距与后间距与后间距与后轮轮轮轮间距的不同间距的不同间距的不同间距的不同,,,,前前前前轮轮轮轮间距间距间距间距用的是用的是用的是用的是1111*3*3*3*3安装安装安装安装块块块块,,,,而而而而后后后后轮轮轮轮是用了是用了是用了是用了1111****2222的的的的安装安装安装安装块块块块。。。。这这这这样样样样的设计使的设计使的设计使的设计使得得得得前前前前轮轮轮轮转弯的转弯的转弯的转弯的效果效果效果效果更更更更加加加加明明明明显显显显。。。。3333、、、、利用利用利用利用1111****1111的的的的安装安装安装安装块块块块我们我们我们我们可以可以可以可以调调调调节节节节我们需我们需我们需我们需要的任意角度的探测要的任意角度的探测要的任意角度的探测要的任意角度的探测,,,,同学同学同学同学们们们们注意注意注意注意到到到到这个这个这个这个特点特点特点特点了了了了吗吗吗吗????4444、、、、观察观察观察观察机器人的整体构建图机器人的整体构建图机器人的整体构建图机器人的整体构建图,,,,我们我们我们我们用什么传感器用什么传感器用什么传感器用什么传感器????并并并并思考思考思考思考它们会它们会它们会它们会有什么有什么有什么有什么样样样样的的的的应应应应用用用用????萝卜圈三维机器人在线仿真平台34二二二二、、、、程序编写及程序编写及程序编写及程序编写及调试调试调试调试1111、、、、场景的分场景的分场景的分场景的分段段段段及构思及构思及构思及构思从从从从上图上图上图上图我们我们我们我们不不不不难发现难发现难发现难发现,,,,我们我们我们我们可以将整个可以将整个可以将整个可以将整个路路路路程分为程分为程分为程分为6666段段段段::::1111、、、、转弯前直行转弯前直行转弯前直行转弯前直行部部部部分分分分2222、、、、222277770000度上度上度上度上坡坡坡坡转弯转弯转弯转弯3333、、、、桥桥桥桥上直行上直行上直行上直行部部部部分分分分4444、、、、540540540540度下度下度下度下坡坡坡坡转弯转弯转弯转弯5555、、、、侧向直行侧向直行侧向直行侧向直行6666、、、、转弯转弯转弯转弯至终点至终点至终点至终点。。。。下面下面下面下面我们我们我们我们将程序的将程序的将程序的将程序的萝卜圈三维机器人在线仿真平台35构建及构建及构建及构建及调试调试调试调试过程进行过程进行过程进行过程进行详细介绍详细介绍详细介绍详细介绍,,,,目
/
本文档为【萝卜圈三维机器人教程】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索