服务机器人应用开发_第1页
服务机器人应用开发_第2页
服务机器人应用开发_第3页
服务机器人应用开发_第4页
服务机器人应用开发_第5页
已阅读5页,还剩320页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

项目一RGB炫彩灯服务机器人应用开发UBTECHCONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.了解服务机器人的概念、应用场景和发展趋势;2.了解Blockly软件的操作模式;3.了解Arduino软件功能特点;4.了解LED和RGB颜色原理;5.熟练下载、安装ArduinoBlockly开发软件;6.熟练掌握ArduinoIDE开发软件的使用;7.熟练下载并安装Arduino开发板的设备驱动;8.熟练掌握在Arduino开发板上进行程序编写的通用流程;9.熟练掌握程序控制Arduino开发板上的LED灯的方法。内容结构任务背景RGB灯是指每颗LED是由红、绿、蓝三颗芯片组成的电子元器件,可以单独发出红、绿、蓝等三种单色光,也可以其中的两个芯片或者三个芯片发光,根据发光原理和灰度情况,RGB灯可以调节任意颜色的静态色,也可以调节跳变和渐变的颜色。这种彩灯可以做在贺卡中,或者节日时放在重要建筑物上,可以烘托节日的氛围。炫彩LED灯里有控制IC,可以控制每色256级灰度变化,红绿蓝三基色理论上可以混出16位真彩变化,除了七彩的变化外还可以做出跑马灯、流水等各种单点变化,也可以组成屏幕播放文字和视频。任务描述本项目主要任务有:1、认识基于Arduino的开发平台uKitExplore及其构成;2、在电脑端下载安装uKitExploreBlockly、安装开发板设备驱;3、分别在uKitExploreBlockly和ArduinoIDE中编程实现对uKitExplore开发板上的RGB彩灯的控制,让其随机产生不同的炫彩颜色。(一)(二)(三)(四)(五)知识链接(六)认识服务机器人认识服务机器人认识Arduino认识uKitExplore高校版认识uKitExplore开发板RGB闪烁知识链接一、认识机器人智能服务机器人(简称:服务机器人)是机器人家族中的一个年轻成员,到目前为止尚没有一个严格的定义。国际机器人联合会给了服务机器人一个初步的定义:服务机器人是一种半自主或全自主工作的机器人,它能完成有益于人类健康的服务工作,但不包括从事生产的设备。服务机器人的定义知识链接二、认识BlocklyBlockly是Blockly是一个用于给web或者手机app添加可视化程序编辑器的框架,由Google公司发起并维护的一个开源项目,采用JavaScript可视化编程编辑器开发框架。它采用图形化的咬合拼接的积木块表示变量、逻辑表达式、循环以及其他编程概念。它能让用户在不关心语法的情况下进行编程练习,同时摆脱那可怕的命令行。Blockly主要应用在儿童编程领域。知识链接二、认识Blockly知识链接三、认识ArduinoArduino是一款便捷灵活、方便上手的开源电子原型平台,使用类似C语言的开发环境。主要包含两个的部分:硬件部分是可以用来做电路连接的Arduino电路板;软件部分是计算机中的程序开发环境ArduinoIDE。用户在IDE中编写程序代码,将程序上传到Arduino电路板后,程序便会告诉Arduino电路板要做什么。知识链接四、认识uKitExplore高校版uKitExplore高校教育版,硬件主要由两大部分组成:电子元器件和外观结构件。其中,电子元器件包括了uKitExplore开发板、舵机、电机、传感器、面包板和LED灯等,而外观结构件包括了外观结构件包、连接结构件包和扣件包。知识链接五、认识uKitExplore开发板uKitExplore开发板是为uKit拼搭积木设计的开源硬件平台,兼容Arduinomega2560,同时支持C/C++、Blockly编程。可以控制uKit的舵机实现轮模式和舵机模式,开发板提供蜂鸣器、RGB多彩灯、按钮和陀螺仪等丰富的扩展接口。知识链接六、RGB闪烁RGB灯,是由红、绿和蓝三色组成。电脑显示器也是由一个个小的红、绿、蓝点组成的。可以通过调整三个LED中每个灯的亮度就能产生不同的颜色。本项目就是通过一个RGB小灯随机产生不同的炫彩颜色。(一)(二)(三)(四)(五)任务1:下载uKitExploreBlockly任务2:安装uKitExploreBlockly任务3:安装开发板的驱动程序任务4:在Blockly中编程任务5:在ArduinoIDE中编程任务实施任务实施任务1:下载uKitExploreBlockly软件uKitExploreBlockly已经上传至github上,输入下面的地址,点击“assets”的第一项既可下载。下载链接:/UBTEDU/uKit-Explore-Blockly/releases任务实施任务2:安装uKitExploreBlockly双击运行任务1中下载后的程序文件,出现安装界面。点击“一键安装”即可开始安装进程,直至安装完成。任务实施任务3:安装开发板的驱动程序在uKitExploreBlockly安装完成之后,会自动弹出界面,提示安装uKitExplore开发板的驱动程序,只有安装好该驱动电脑才能够识别到uKitExplore开发板的端口。安装开发板驱动任务实施任务3:安装开发板的驱动程序正确安装完uKitExploreBlockly和开发板驱动程序后,在电脑桌面会显示“uKitExploreBlockly”和“ArduinoIDE”的图标;双击打开uKitExploreBlockly,将uKitExplore开发板通过USB数据线连接至电脑。正确连接时电脑会发出“噔”的提示音,表示识别到了端口,同时Blockly会自动识别端口。检测驱动安装情况任务实施任务3:安装开发板的驱动程序在uKitExploreBlockly中编程选择开发板和端口编译代码上传代码010203上传至开发板任务实施任务4:在Blockly中编程任务实施任务5:在ArduinoIDE中编程打开ArduinoIDE任务实施任务5:在ArduinoIDE中编程在ArduinoIDE中进行编程任务实施任务5:在ArduinoIDE中编程编写代码选择示例代码验证及选择开发板选择端口及上传010203上传至开发板任务实施任务5:在ArduinoIDE中编程拓展任务上面任务中RGBLED在红、绿、蓝显示完成之后就熄灭了,利用学习的编程知识去实现一下让其不断的交替闪烁。项目小结本项目中,我们学习了服务机器人的概念及其发展现状,掌握针对Arduino平台的Blockly编程方法,并实现对开发板中的RGBLED进行控制让其实现红绿蓝交替变化的炫彩效果。THANKSBUSINESSDESIGN服务机器人应用开发项目二遥控发光生日音乐盒服务机器人应用开发UBTECH深圳市优必选科技股份有限公司CONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.了解蜂鸣器的发音原理;2.了解红外遥控器的工作原理;3.了解发光二极管的工作原理;4.熟练掌握红外遥控器的使用;5.熟练掌握发光二极管的使用;6.熟练掌握程序调用控制蜂鸣器发音;7.熟练掌握程序调用红外遥控器控制开发板。内容结构任务背景在我们日常生活中,经常使用到的遥控器,是目前使用最广泛的一种遥控通信方式。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空调以及玩具等其它小型电器装置上也纷纷采用红外线遥控。在Arduino中可以用红外遥控来做许多事情,例如可以用红外遥控来控制小车的移动、控制风扇转动等。任务描述本项目主要任务有:1、在Arduino开发板上通过编程制作一个“音乐盒”,程序控制开发板的蜂鸣器发出“生日快乐”的音乐;2、同时外加的LED灯一起随着音乐闪烁,营造温馨、快乐、科技感十足的生日Party气氛;3、整个音乐盒的演奏通过红外遥控器来进行远程控制;(一)(二)(三)(四)知识链接认识蜂鸣器认识红外传感器认识LED灯认识面包板知识链接一、认识蜂鸣器声音是一种压力波,当演奏乐器、拍打一扇门或者敲击桌面时,他们的振动会引起介质——空气分子有节奏的振动,使周围的空气产生疏密变化,形成疏密相间的纵波,这就产生了声波,这种现象会一直延续到振动消失为止。一般的声音总是包含一定的频率范围。人耳可以听到的声音的频率范围在20赫兹到2万赫兹之间。振动与声音知识链接一、认识蜂鸣器蜂鸣器,从字面意思就可以知道,这是一个会发声的元件。蜂鸣器按构造方式的不同,可分为:电磁式蜂鸣器和压电式蜂鸣器。电磁式蜂鸣器广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件;压电式蜂鸣器用于音乐贺卡、电子门铃和电子玩具等小型电子用品上作发声器件。蜂鸣器原理知识链接一、认识蜂鸣器蜂鸣片为银色的金属,有些不带焊接线缆,主要是靠两个振动板在通电的情况下,将电能转化为机械能,从而发声。压电蜂鸣片声音元件的声源主要来自压电振动板。压电振动板由一块两面印刷有电极的压电陶瓷板和一块金属板(黄铜或不锈钢等)组成。使用粘合剂,将压电振动板和金属片粘接在一起,这就是我们俗称的蜂鸣片。蜂鸣片的发声原理知识链接一、认识蜂鸣器在程序中调用相应的函数,就可以使用uKitExplore开发板上面的蜂鸣器,使其产生各种声音。比如,调用Tone()函数用以在一个引脚上产生一个特定频率的方波。调用noTone()函数用以停止由tone()产生的方波。蜂鸣器的使用知识链接二、认识红外传感器人的眼睛能看到的可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。其中红光的波长范围为0.62~0.76μm;紫光的波长范围为0.38~0.46μm。比紫光波长还短的光叫紫外线,比红光波长还长的光叫红外线。红外线遥控就是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的。红外线知识链接二、认识红外传感器红外线发射管(IRLED)也称红外发射二极管,属于二极管类。它是可以将电能直接转换成近红外光(不可见光)并能辐射出去的发光器件。红外发射管红外光电二极管又叫红外接收二极管,也可称红外光敏二极管,其主要功能是把光信号转换成电信号。红外接收管知识链接二、认识红外传感器通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作。其中,红外遥控器发射部分包括键盘矩阵、编码调制、LED红外发送器;设备的接收部分包括光/电转换放大器、解调、解码电路。红外遥控器的工作原理知识链接三、LED灯发光二极管发光二极管简称LED灯,它由镓(Ga)砷(AS)磷(P)的化合物制成的二极管,其正负极管脚长度不一样,图中长的(右边)是正极,短的(左边)是负极。知识链接所谓呼吸灯,就是让灯有一个由亮到暗,再到亮的逐渐变化的过程,感觉像是在均匀的呼吸。认识LED呼吸灯PWM是使用数字手段来控制模拟输出的一种方法。使用数字控制产生占空比不同的方波(一个不停在开与关之间切换的信号)来控制模拟输出。认识PWM三、LED灯知识链接pinMode()函数用以配置引脚为输入或输出模式,它是一个无返回值函数,pin参数表示所要配置的引脚,mode表示设置的模式—INPUT(输入)或OUTPUT(输出)。配置管脚功能的函数pinMode()从一个引脚输出模拟值(PWM)。可用于让LED以不同的亮度点亮或驱动电机以不同的速度旋转。模拟输出函数函数analogWrite()三、LED灯知识链接面包板是由于板子上有很多小插孔,专为电子电路的无焊接实验设计制造的。面包板作用面包板的得名可以追溯到真空管电路的年代,当时的电路元器件大都体积较大,人们通常通过螺丝和钉子将他们固定在一块切面包用的木板上进行连接,后来电路元器件体积越来越小,但面包板的名称沿用了下来。名称由来四、认识面包板知识链接整板使用热固性酚醛树脂制造,板底有金属条,在板上对应位置打孔使得元件插入孔中时能够与金属条接触,从而达到导电目的。一般将每5个孔板用一条金属条连接。板子中央一般有一条凹槽,这是针对需要集成电路、芯片试验而设计的。板子两侧有两排竖着的插孔,也是5个一组。这两组插孔是用于给板子上的元件提供电源。四、认识面包板构造特点知识链接面包板种类无焊面包板就是没有作为底座的母板,没有焊接电源插口引出但是能够扩展单面包板的板子。单面包板就是有母板作为底座,并且电源接入有专用接线柱,甚至有些能够进行高压实验的还有地线接线柱的面包实验板。四、认识面包板(一)(二)(三)(四)任务1:让蜂鸣器发声任务2:LED灯闪烁任务3:LED呼吸灯任务4:遥控发光音乐盒任务实施任务实施任务1:让蜂鸣器发声输入完成后,点击“编译”检查代码有无错误。编写代码编译确保代码没有错误后就可以开始上传了,点击“上传”之后IDE会把代码发送给uKitExplore开发板。上传任务实施任务2:LED灯闪烁本项目需要使用的器件有:uKitExplore开发板1个,红外遥控器1个,面包板1个,发光二极管1个,1K电阻1个,连接线若干。硬件连接任务实施完成以上步骤后,我们可以尝试连接两个或者三个LED灯,并尝试点亮它们。或者尝试变换LED的亮灭速度,让LED保持关闭5秒,然后快速闪烁一下(250毫秒),就像汽车报警器上的LED指示灯那样。编写代码拓展实验任务2:LED灯闪烁任务实施任务3:LED呼吸灯在了解过PWM、pinMode()和analogWrite()函数后,我们利用面包板,制作一个简单的串联电路来实现LED呼吸灯。任务实施任务4:遥控发光音乐盒电路连接如任务2中,不需要做改动。硬件连接电路连接如任务2中,不需要做改动。硬件连接输入完成后,点击“编译”检查代码有无错误。确保无误后就可上传了,点击“上传”之后IDE会把代码发送给uKitExplore开发板。编译上传并观察结果拓展任务对照简谱频率,通过编写程序,让蜂鸣器播放“祝你生日快乐”歌曲。项目小结本项目中,学习了蜂鸣器发声的基本原理、遥控器工作的基本原理、LED灯的呼吸效果的产生原理,并且通过程序对上述知识在Arduino开发板上进行了验证,加深了对蜂鸣器、红外遥控器、发光二极管的认识。THANKSBUSINESSDESIGN服务机器人应用开发项目三巡线机器人服务机器人应用开发UBTECH深圳市优必选科技股份有限公司CONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.了解电机的工作原理;2.了解灰度传感器的工作原理;3.熟练掌握按照说明书装配小车;4.通过程序调用setMotorTurn()控制电机驱动;5.通过程序调用getGrayAllValue()读取灰度传感器数值;内容结构任务背景巡线机器人是以移动机器人作为载体,如3-1所示,以可见光摄像机、红外热成像仪、其它检测仪器作为载荷系统,以机器视觉、电磁场、GPS、GIS的多场信息融合作为机器人自主移动与自主巡检的导航系统,以嵌入式计算机作为控制系统的软硬件开发平台;具有障碍物检测识别与定位、自主作业规划、自主越障、对输电线路及其线路走廊自主巡检、巡检图像和数据的机器人本体自动存储与远程无线传输、地面远程无线监控与遥控、电能在线实时补给、后台巡检作业管理与分析诊断等功能。任务描述本项目主要任务有:1、制作一个基于uKitExplore的轮式巡线机器人;2、uKitExplore作为机器人的大脑,灰度传感器作为机器人的感官,电机作为机器人运动部件,三者结合共同作用下,实现轮式巡线机器人巡线运动;(一)(二)(三)(四)(五)知识链接认识电机认识灰度传感器认识int变量认识void函数局部变量与全局变量知识链接一、认识电机电机就是一种将电能与机械能相互转换的电磁机械装置。电机一般有两种应用形式:第一种是把机械能转换为电能,称之为发电机;第二种是把电能转换为机械能,称之为电动机。电动机(Motors:也称为马达)是把电能转换成机械能的一种设备。它利用通电导线在磁场中受到力的作用,从而旋转的装置。受力方向遵循“左手定则”。电机的工作原理知识链接一、认识电机左手定则是判断通电导线处于磁场中时,所受安培力F的方向、磁感应强度B的方向、通电导体棒的电流l三者方向之间的关系的定律。将左手的食指,中指和拇指伸直,使其在空间内相互垂直。掌心方向代表磁场的方向(从N级到S级),中指代表电流的方向(从正极到负极),那拇指所指的方向就是受力的方向。使用时可以记住,中指,食指,拇指指代“电,磁,力”。知识链接一、认识电机按工作电源种类划分:可分为直流电机和交流电机。直流电动机可划分:无刷直流电动机和有刷直流电动机。交流电动机可划分:单相电机和三相电机。按结构和工作原理可划分:异步电动机、同步电动机。按用途可划分:驱动用电动机和控制用电动机。驱动用电动机可划分:电动工具用电动机、家电等。控制用电动机又划分:步进电动机和伺服电动机等电机的分类知识链接一、认识电机电机连接在uKitExplore开发板的任意一个3PIN口即可。电机可以串联多个,而多个电机是通过ID号加以区分和识别,在控制时注意电机的ID。硬件连接方面要使用USB线连接uKitExplore开发板和电脑,3PIN口接入电机、uKitExplore开发板接入电池并打开开关。电机使用方法知识链接二、认识灰度传感器灰度传感器是一种模拟传感器,有一只发光二极管和一只光敏电阻,安装在同一面上。它利用不同颜色的检测面对光的反射程度不同,光敏电阻对不同检测面返回的光其阻值也不同的原理进行颜色深浅检测。在有效的检测距离内,发光二极管发出白光,照射在检测面上,检测面反射部分光线,光敏电阻检测此光线的强度并将其转换为机器人可以识别的信号。灰度传感器的工作原理知识链接二、认识灰度传感器uKitRoute智能灰度传感器,是一款颠覆传统的高智能灰度传感器,具有多检测点、智能化、多功能化的特点。uKitRoute智能灰度传感器通过颜色采集,可以感知任意两种颜色然后输出相应的电平值。智能灰度传感器知识链接二、认识灰度传感器灰度传感器连接的时候使用7Pin的线,连接灰度口(Route)另外一头连接uKitExplore开发板。通过手机扫描二维码,可以查看具体步骤的操作视频。注意,读取数据时,需要将uKitRoute智能灰度传感器朝地面方向的5个识别点都置于在同一个颜色中,这样读出来的数据会比较准确,还有读取数据时放置一格的连接件读取数据会更加准确。灰度传感器的使用方法知识链接三、认识int变量整数是编程中常用的一种数据,C语言通常使用int来定义整数(int是integer的简写)。在现代操作系统中,int一般占用4个字节(Byte)的内存,共计32位(Bit)。如果不考虑正负数,当所有的位都为1时它的值最大,为232-1=4,294,967,295≈43亿,这是一个很大的数,实际开发中很少用到,而诸如1、99、12098等较小的数使用频率反而较高。知识链接四、认识void函数void的字面意思是“无类型”,常用来声明一个函数,说明该函数不会返回任何数据,void意思是函数的数据类型空,即没有返回值。无返回值的函数:该函数功能只是完成一个操作,应将返回值类型定义为void,函数体内可没有return语句。有返回值的函数:该函数的最后会有一个返回值return,可以用来获取该函数执行结果返回给该函数,让外部调用该函数的。知识链接五、局部变量与全局变量局部变量,也称内部变量,是指在一个函数内部或复合语句内部定义的变量。局部变量的作用域是定义该变量的函数或定义该变量的复合语句。局部变量的生存期是从函数被调用的时刻算起到函数返回调用处的时刻结束。局部变量知识链接五、局部变量与全局变量在所有函数外部定义的变量称为全局变量(GlobalVariable),它的作用域默认是整个程序,也就是所有的源文件。全局变量(一)(二)(三)任务1:搭建机器人结构任务2:硬件连接任务3:编程实现巡线机器人任务实施任务实施任务1:搭建机器人结构利用uKitExplore电子件和外观结构件,按照说明书的步骤和注意事项,搭建一个巡线机器人。任务实施任务1:搭建机器人结构自动巡线小车模型包含灰度传感器、前部、主控板和后部四个部分,首先搭建前部。搭建小车前部任务实施任务1:搭建机器人结构完成头部之后,搭建主控部分。搭建主控部分任务实施任务1:搭建机器人结构搭建后部任务实施任务1:搭建机器人结构搭建完巡线小车,就可以在两驱小车的基础上增加灰度传感器,即可完成自动巡线小车模型,将各个部分组合起来,自动巡线小车模型就搭建完成了。搭建灰度传感器任务实施任务2:硬件连接该项目需要连接电机和灰度传感器,灰度传感器连接在uKitExplore开发板上X3的7PIN接口即可。在控制时注意电机和舵机的ID,电机是依靠ID来控制的。硬件连接方面要使用USB线连接uKitExplore开发板和电脑,3PIN口接入电机、uKitExplore开发板接入电池即可。这里我们接入1号电机、2号电机、灰度传感器。任务实施任务3:编程实现巡线机器人输入完成后,点击“编译”检查代码有无错误。确保没有错误后就可以开始上传了,点击“上传”之后IDE会把代码发送给uKitExplore开发板。完成以上步骤后,会看到小车沿着黑线行驶。编程拓展任务巡线小车是通过地上的黑色线来判断运动的路线的,如果遇到一个黑色十字交叉,即遇到十字路口,小车该如何运动呢?项目小结本项目中,先学习了电机、灰度传感器的工作原理,通过将灰度传感器安装在小车上从而构成具备巡线功能的智能小车,最后在ArduinoIDE中通过编写程序让小车能够识别路线后并正确运行,从而达到巡线的功能。THANKSBUSINESSDESIGN服务机器人应用开发项目四

导盲避障机器人服务机器人应用开发UBTECH深圳市优必选科技股份有限公司CONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.进一步了解电机的工作原理;2.进一步掌握灰度传感器的工作原理;3.了解舵机的工作原理;4.了解超声波传感器的工作原理;5.熟练掌握通过程序调用setMotorTurn()控制电机驱动;6.熟练掌握通过程序调用setServoAngle()控制舵机转动;7.熟练掌握通过程序调用readUItrasonicDistance()读取超声波传感器数值。内容结构任务背景对于视障人士来说如何掌握行走的方式和特性是日常生活的重要部份,他们可以依赖一定的辅助设施,比如传统的盲杖、加入声波探测障碍物的电子盲杖,还有其他的盲人导航设备等等,这一切都有它们的优点和缺点。而导盲避障机器人属于智能特种机器人,可以巡曲线运行并避开障碍物,可用于医疗服务、智能导航等领域。任务描述本项目主要任务有:1、认识基于Arduino的开发平台uKitExplore及其构成;2、能够实现机器人自主循线避障行走。(一)(二)(三)(四)知识链接认识舵机认识超声波传感器static与静态变量const与常量知识链接一、认识舵机舵机(Servo)是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。机连接在uKitExplore开发板的任意一个3PIN口即可。舵机可以串联多个。在控制时注意舵机的ID。舵机是依靠ID来控制的。硬件连接方面要使用USB线连接uKitExplore开发板和电脑,3PIN口接入舵机、uKitExplore开发板接入电池即可。舵机的工作原理知识链接二、认识超声波传感器超声波传感器是将超声波信号转换成其他能量信号(通常是电信号)的传感器。超声波是振动频率高于20kHz的机械波。超声波对液体、固体的穿透本领很大,尤其是在阳光不透明的固体中。超声波碰到杂质或分界面会产生显著反射形成反射回波,碰到活动物体能产生多普勒效应。本项目需要用到超声波传感器元件,硬件连接方面要使用USB线连接uKitExplore开发板和电脑,3PIN口接入电机、uKitExplore开发板接入电池并打开开关。知识链接三、static与静态变量static关键字用于创建只对某一函数可见的变量。然而,和局部变量不同的是,局部变量在每次调用函数时都会被创建和销毁,静态变量只会在函数第一次调用的时候被创建和初始化,静态变量在函数调用结束之后仍然保持着原来的数据。知识链接四、const与常量const关键字代表常量。它是一个变量限定符,用于修改变量的性质,使其变为只读状态。这意味着该变量,虽然可以和任何相同类型的其他变量一样使用,但不能改变其值。如果尝试为一个const变量赋值,编译时将会报错。任务实施(一)(二)(三)任务1:搭建机器人结构任务2:硬件连接任务3:在ArduinoIDE中编程任务实施任务1:搭建机器人结构搭建一辆自动巡线避障小车所需的组件如图所示。安装开发板驱动任务实施任务1:搭建机器人结构1.搭建避障小车模型2.搭建主控板3.搭建动力模块4.搭建灰度传感器模块任务实施任务2:硬件连接1.连接舵机、电机、超声波传感器2.连接传感器3.连接电脑任务实施任务3:在ArduinoIDE中编程输入完成后,点击“编译”检查代码有无错误。确保没有错误后就可以开始上传了,点击“上传”之后IDE会把代码发送给uKitExplore开发板。打开ArduinoIDE,输入以下代码拓展任务完成以上步骤后,思考一下,我们自动避障巡线的机器人除了导盲,还可以运用到什么场景,可以帮助到什么人或什么事。项目小结通过本项目的学习与实践,深刻理解了机器人身上实现多做的最关键组件——舵机的工作原理和使用方法。THANKSBUSINESSDESIGN服务机器人应用开发项目五智能停车场服务机器人应用开发UBTECH深圳市优必选科技股份有限公司CONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.了解四位数码管的工作原理;2.了解红外传感器的工作原理;3.掌握四位数码管的使用方法;4.掌握红外传感器的使用方法;5.通过程序调用readInfraredDistance()读取红外传感器数值。内容结构任务背景智能停车场是现代化停车场车辆收费及设备自动化管理的统称,是将停车场完全置于计算机统一管理下的高科技机电一体化产品。它以感应装置为载体,通过智能设备记录车辆及持卡人进出的相关信息,同时对其信息加以运算、传送并通过字符显示、语音播报等人机界面转化成人工能够辨别和判断的信号,从而实现计时收费、车辆管理等目的。任务描述本项目主要任务有:1.制作一个基于uKitExplore的模拟智能停车场;2.红外传感器作为停车场感应系统;3.数码管作为停车场的车位显示系统。知识链接(一)(二)(三)(四)(五)认识数码管认识红外传感器认识unsignedlong认识unsignedchar认识布尔运算符unsignedchar知识链接一、认识数码管数码管的一种是半导体发光器件,分别由字母a、b、c、d、e、f、g、h来表示。其中h因为是小数点,所以也可以表示为dp,在后面的文字中dp和h表达的意思是一样的。1.数码管的工作原理知识链接一、认识数码管七段数码管分为共阳极及共阴极,共阳极的七段数码管的正极(或阳极)为八个发光二极管的共有正极,其他接点为独立发光二极管的负极(或阴极),使用者只需把正极接电,不同的负极接地就能控制七段数码管显示不同的数字。共阴极的七段数码管与共阳极的只是接驳方法相反而已。2.显示方式知识链接一、认识数码管四位数码管是由四个单独的数码管拼接在一起,可以显示四位数字。四个连在一起的数码管的管脚一共有12个,其中除了与单个相同的8个段控端(a、b、c、d、e、f、g、h)外,还有4个位控端(1、2、3、4)。3.四位数码管知识链接一、认识数码管四位数码管总共有12个引脚,小数点朝下正放在面前时,左下角为1,其他管脚顺序为逆时针旋转。左上角为最大的12号管脚。4.四位数码管的使用方法知识链接二、认识红外传感器红外线(Infrared,IR)是频率介于微波与可见光之间的电磁波,波长在760nm(纳米)~1mm(毫米)之间。它是频率比红光低的不可见光高于绝对零度(即-273.15℃)的物质都可以产生红外线1.红外线知识链接二、认识红外传感器红外线具有反射、折射、散射、干涉、吸收等性质。任何物质,只要它本身具有一定的温度(高于绝对零度),都能辐射红外线。红外传感器测量时不与被测物体直接接触,因而不存在摩擦,并且有灵敏度高,响应快等优点。2.红外测距传感器的工作原理知识链接二、认识红外传感器本项目需要用到红外传感器元件,红外传感器连接在uKitExplore开发板的任意一个3PIN口即可。打开ArduinoIDE,输入下列代码,可实现读取红外传感器的距离并打印到串口。3.红外传感器的使用方法知识链接三、认识unsignedlongunsignedlong表示无符号长整型变量,扩充了变量容量以存储更大的数据,它能存储32位(4字节)数据。与标准长整型不同,无符号长整型无法存储负数,其范围从0到4,294,967,295(2^32-1)。语法:参数:var-你所定义的变量名

val-给变量所赋的值知识链接四、认识unsignedcharunsignedchar是一个无符号数据类型,占用1个字节的内存。char类型变量的大小通常为1个字节(1字节=8个位),且属于整型。整型的每一种都有无符号(unsigned)和有符号(signed)两种类型(float和double总是带符号的)。知识链接1.&&(逻辑与)只有两个运算对象为“真”,才为“真”2.||(逻辑或)只要一个运算对象为“真”,就为“真”3.!(逻辑非)如果运算对象为“假”,则为“真”五、认识布尔运算符unsignedchar任务实施(一)(二)(三)任务1:搭建停车场结构任务2:硬件连接任务3:在ArduinoIDE中编程任务实施任务1:搭建停车场结构利用uKitExplore电子件和外观结构件搭建一个智能停车场,左右两个直立是分别是停车场的入口和出口自动起落杆装置。任务实施1.搭建数码管任务1:搭建停车场结构任务实施2.搭建主控板任务1:搭建停车场结构3.搭建动力模块任务实施任务1:搭建停车场结构3.搭建动力模块任务实施连接电路板与数码管。该项目需要面包板以及若干元器件,面包板专用跳线连接在uKitExplore开发板两侧的数字脚,注意正极和负极,要使用USB线连接uKitExplore开发板和电脑,uKitExplore开发板需要将面包板器件调试成功后才接入电池。这里我们接入、1个数码管、2个舵机、1个超声波传感器、1个红外传感器、4个220欧姆电阻。任务2:硬件连接任务实施任务3:在ArduinoIDE中编程3.搭建动力模块拓展任务完成以上步骤后,我们可以运用我们的电子件以及结构件搭建出具有自己特色的模型。项目小结本项目先后学习了数码管、四位数码管的基本工作原理,以及用来判断距离的红外线距离传感器的工作原理及使用方法,之后组合各种组件搭建起来了智能停车场,最后在ArduinoIDE中编程,模拟实现真实场景中停车场的基本功能。THANKSBUSINESSDESIGN服务机器人应用开发项目六LED点阵广告牌服务机器人应用开发UBTECH深圳市优必选科技股份有限公司CONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.了解LED点阵的物理构造;2.了解LED点阵显示的原理;3.熟练掌握8×8点阵的电路搭建方法;4.掌握通过C语言程序控制8×8点阵的显示;5.熟练通过C语言程序实现在8×8点阵多种滚动效果。内容结构任务背景LED点阵灯牌或称为LED广告牌、LED展示牌,如图6-1所示,是用LED灯管在基板上组成文字和图案,通以电源,可发出红、黄、橙、蓝、白、绿、粉等各种漂亮的颜色,还可以闪烁、变换等,可达到宣传及展示的效果。任务描述本项目主要任务有:1.采用uKitExplore作为广告牌的控制系统;2.面包板作为广告牌载体;3.8×8点阵作为广告牌的显示系统;4.能够实现英文字母和心形图案的滚动显示。知识链接(一)(二)(三)LED点阵工作原理点阵显示屏8×8点阵引脚检测知识链接一、LED点阵工作原理LED点阵由LED灯(发光二极管)组成,以灯珠亮灭来显示文字、图片、动画或视频。每个LED灯放置在行线和列线的交叉点上。如果阵列每行的阳极连在一起,则该阵列为共阳;反之则为共阴。知识链接二、点阵显示屏LED显示器分为图文显示器和视频显示器,均由LED点阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;视频显示屏采用微型计算机进行控制,文字、图像并茂,以实时、同步、清晰的信息传播方式播放各种信息,还可显示二维、三维动画、录像、电视、VCD节目以及现场实况。知识链接三、8×8点阵引脚检测把万用表拨到电阻档,先用黑色探针(输出高电平)随意选择一个引脚,红色探针碰余下的引脚,看点阵有没发光,没发光就用黑色的探针再选择一个引脚,红色探针碰余下的引脚,当点阵发光,则这时黑色探针接触的那个引脚为正极,红色探针碰到的引脚为负极。1.定正负极知识链接三、8×8点阵引脚检测先把器件的引脚正负分布情况记下来,正极(行)用数字表示,负极(列)用字母表示,先定负极引脚编号,黑色探针选定一个正极引脚,红色点负极引脚,看是第几列的二极管发光,第一列就在引脚写A,第二列就在引脚写B,第三列......以此类推。这样就点阵的一半引脚都编号了。剩下的正极引脚用同样的方法,第一行的亮就在引脚标1,第二行就在引脚标2,第三行......以此类推。2.引脚编号任务实施(一)(二)(三)任务1:硬件连接任务2:编程控制点亮第一个LED任务3:在ArduinoIDE中编程任务实施任务1:硬件连接该项目需要面包板以及若干元器件,准备好所需元器件,包括:uKitExplore开发板1个,面包板1个,8×8点阵1个连接线若干。任务实施打开ArduinoIDE,输入下列代码。输入完成后,点击“编译”检查代码有无错误。确保没有错误后就可以开始上传了,点击“上传”之后IDE会把代码发送给uKitExplore开发板。编译和上传步骤如前面的项目,这里不再赘述。完成以上步骤后,8×8点阵第一颗点会不断的闪烁。任务2:编程控制点亮第一个LED任务实施任务3:在ArduinoIDE中编程该任务是在广告牌上滚动显示英文字母和心形图案拓展任务完成以上步骤后,尝试将8×8点阵显示其他的字母或者符号。项目小结本项目中,学习了LED点阵的构成和工作原理,最后在ArduinoIDE中编程实现在8×8点阵上显示寓意ILOVEYOU的符号。THANKSBUSINESSDESIGN服务机器人应用开发项目七机器人组装与调试服务机器人应用开发UBTECH深圳市优必选科技股份有限公司CONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.了解人形机器人;2.了解支撑机器人的关键技术;3.了解Blockly编程;4.熟练安装调试服务机器人;5.熟练校正机器人;6.熟练测试各种传感器组件;7.熟练测试语音模块;8.熟练让机器人连接网络;9.熟练App对机器人的控制过程。内容结构任务背景人型机器人(又称仿生人),是一种旨在模仿人类外观和行为的机器人,尤其特指具有和人类相似肌体的种类。直到最近,人型机器人的概念还主要停留在科学幻想领域,常见于电影、电视、漫画、小说等。机器人学方面的进展已经可以设计出功能化拟真化的人形机器人。人形机器人集机、电、材料、计算机、传感器、控制技术等多门学科于一体,是一个国家高科技实力和发展水平的重要标志,因此,世界发达国家都不惜投入巨资进行开发研究。日、美英等国都在研制仿人形机器人方面做了大量的工作,并已取得突破性的进展。任务描述本项目主要任务有:1.认识基于树莓派的人形机器人;2.在手机或者平板电脑端下载安装控制App;3.在App中完成对机器人的网络配置、舵机校正、以及运动控制。(一)(二)(三)(四)知识链接认识智能机器人人形机器人认识舵机及其相关操作认识远程连接工具VNC知识链接一、认识智能机器人工业机器人目前智能机器人分类行业应用服务机器人家用机器人军用智能机器人知识链接一、认识智能机器人人机交互技术多传感信息耦合技术路径规划技术自主定位导航技术机器视觉技术智能机器人的核心技术知识链接二、人性机器人NAO机器人波士顿动力机器人知识链接二、人性机器人Walker人形服务机器人波士顿动力机器人知识链接二、人性机器人Yanshee人形机器人采用RaspberryPi+STM32开放式硬件平台架构,配置17个自由度的舵机从而可以高度拟人设计,内置800万像素摄像头、陀螺仪及多种通信模块,配套多种开源传感器包,支持多种AI应用的设计学习。Yanshee人形机器人支持众多手机端的控制功能。Yanshee人形机器人预装了基于Face++开源平台的人脸分析,人脸跟踪,手势识别等功能。Yanshee人形机器人知识链接三、认识舵机及其相关操作1.舵机简介2.舵机校正3.舵机回读4.舵机掉电与上电5.舵机保护知识链接四、认识远程连接工具VNCVNC基本上是由两部分组成:一部分是客户端的应用程序(VNCViewer);另外一部分是服务器端的应用程序(VNCSever)。基于树莓派的机器人内置好了VNCSever,因为我们可以方便的通过VNCViewer远程连接控制机器人。知识链接四、认识远程连接工具VNCVNC的链接步骤如下:1.客户端通过VNCViewer连接至VNCServer;2.VNCServer传送一对话窗口至客户端,要求输入连接密码;3.客户端输入联机密码后,VNCServer验证客户端是否具有存取权限;4.若客户端通过VNCServer的验证,客户端即要求VNCServer显示桌面环境;5.VNCServer通过XProtocol要求XServer将画面显示控制权交由VNCServer;6.之后VNCServer由XServer的桌面环境利用VNC通信协议送至客户端,并且允许客户端控制VNCServer的桌面环境及输入装置。(一)(二)(三)(四)(五)任务1:组装Yanshee人形机器人任务2:下载安装Yanshee移动端App任务3:给机器人配置WiFi任务4:通过VNC连接机器人任务5:舵机校正任务实施(六)任务6:对机器人进行运动控制(七)任务7:Blockly编程(八)任务8:回读编程(九)任务9:查看传感器(十)任务10:常见的故障及解决方案任务实施任务1:组装Yanshee人形机器人1.组装Yanshee人形机器人腿部2.组装Yanshee人形机器人手部任务实施任务2:下载安装Yanshee移动端AppYansheeAPP支持iOS及Android双系统网址:/1.Yanshee移动端App2.注册帐号任务实施任务2:下载安装Yanshee移动端App3.开启Yanshee人形机器人长按机器人胸前的按钮2-3秒,直到胸前指示灯闪烁后松开。当听到机器人的开机问候语“Yanshee启动完毕”后表示开启成功。任务实施任务3:给机器人配置WiFia.建立蓝牙链接:可以通过蓝牙让手机连接上机器人;b.然后通过蓝牙通道将WiFi热点的账号信息传送给机器人,Yanshee人形机器人就可以启动WiFi连接无线网络了。c.登录App;d.登录成功App后,请确认手机的蓝牙已经开启、WiFi连接成功,点击主界面右上角的图标,来连接机器人和给机器人配无线网。方法一:通过YansheeApp任务实施任务3:给机器人配置WiFie.根据机器人背部标签的后4位MAC地址值来选择要连接的设备,搜索到的机器人的序列号将会列表,对照序列号,确定是否为手机界面所显示的机器人设备名称f.选择设备后,App会选择与本机WiFi相同的SSID显示在页面中。输入正确的WiFi密码后,点击“加入”按钮,机器人将进行配网连接。g.机器人会语音提示“正在连接网络”。连接网络成功后你会听到“您已经联网成功”的语音提示;若连接失败,你会听到“连接网络失败”的语音提示,此时可重新进行配网连接。方法一:通过YansheeApp任务实施任务3:给机器人配置WiFi1.用HDMI线连接机器人和显示器,将蓝牙键盘鼠标的无线模块插在USB接口上,配对无线连接键盘鼠标。2.直接用VNC访问机器人IP地址,进入到树莓派系统后,直接选择需要连接的网络即可完成对机器人的配网。方法二:直接设置下载安装VNCViewer连接机器人修改显示分辨率010203上传至开发板任务实施任务4:通过VNC连接机器人任务实施任务5:舵机校正首次使用机器人,如果查看到机器人全身某些舵机存在没有水平或垂直对齐的情况时,则需要点击App“侧边栏-舵机校正”进入舵机校正界面,通过点击“+”和“-”按钮调平对应舵机。注意:机器人出现跳舞摔倒现象时,也需要做舵机矫正操作。任务实施任务6:对机器人进行运动控制点击App主界面“运动控制”,进入运动控制界面,分别完成行如下操作:(1)调节音量;(2)文字转语音(TTS);(3)通过遥控器控制机器人左转/右转/前后走;(4)内置动作演示;(5)角色扮演。任务实施任务7:Blockly编程点击主界面“BLOCKLY”进入Blockly界面。左侧是分类模块,拖动这些模块到右侧进行逻辑组合,达到一定的目标。编程完毕,点击“运行”,即可在机器人上查看运行结果-即动作响应情况。任务实施任务8:回读编程点击主界面“回读编程”进入回读编程界面任务实施任务9:查看传感器1.温湿度传感器使用2.运动传感使用3.红外传感使用4.超声波传感使用5.触摸传感使用任务实施任务10:常见的故障及解决方案1.请在平整的地面上运行机器人;2.当机器人在运行时,请与之保持适当的距离,防止被碰伤;3.当机器人在运行时,切勿强行掰动关节,以防夹伤或损坏机器人;4.当机器人在运行时,若机器人出现异常情况,应立即按压紧急停止按钮,并切断电源,以防以防夹伤或损坏机器人;5.为保证舵机保持最佳使用寿命,单次使用机器人时间不超过1小时。操作机器人的注意事项:任务实施解决方法:关闭机器人,并重新安装出现偏差的舵机。请严格按照YansheeAPP的安装指引进行安装,安装时万分留意舵盘中线指示线与结构件相对位置关系。安装完成后第一次开机,机器人四肢偏差90度。任务10:常见的故障及解决方案任务实施解决方法:关闭机器人,拆下掉电舵机所连接的手臂或腿部,确保左手臂舵盘中线指示线(以下简称L0平行指向右侧,右手臂舵盘L0平行指向右侧,左/右腿L0垂直指向地面,然后按照APP指引重新安装机器人。安装完成后第一次开机,机器人四肢与胸部连接处的舵机,一开机即掉电。任务10:常见的故障及解决方案任务实施解决方法:请勿安装,长按胸前按键打开机器人,打开手机端YansheeAPP并连接机器人,在【舵机校准】模式下调整舵机角度,使L0进入平行或垂直于地面的位置。然后按照APP指引安装机器人。安装前,舵机的L0未平行或垂直于地面。任务10:常见的故障及解决方案拓展任务用App通过回读方式实现Yanshee人形机器人敬礼的动作。项目小结本项目中先学习了智能机器人的分类和发展现状和趋势,然后完成组装Yanshee人形机器人,通过连接WiFi完成对机器人的设置,之后通过移动端的App实现对机器人的舵机校正、回读编程,包括查看传感器的数据。THANKSBUSINESSDESIGN服务机器人应用开发项目七机器人Python编程服务机器人应用开发UBTECH深圳市优必选科技股份有限公司CONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.了解四位数码管的工作原理;2.了解红外传感器的工作原理;3.掌握四位数码管的使用方法;4.掌握红外传感器的使用方法;5.通过程序调用readInfraredDistance()读取红外传感器数值。6.掌握基于机器人的Python开发的基本流程。内容结构任务背景Python语言本身比较简单,而且使用起来也比较方便,得益于Python语言自身的设计特点,Python语言的扩展性也非常强,这也是当前人工智能领域的开发人员,更愿意采用Python语言的原因。在当前人工智能发展的大趋势下,不论是专业的研发人员,还是传统行业的从业者,掌握一定的Python开发知识,对于未来的发展都有比较现实的意义。任务描述本项目主要任务有:1.认识树莓派与机器人的关系、Python编程就会用到的工具;2.编程环境的搭建;3.Python基础编程的实操;4.基于机器人的Python编程。知识链接(一)(二)(三)(四)(五)认识Python认识树莓派认识PyCharm认识JupyterNotebookJupyterLab强大的下一代notebook(六)认识Anaconda知识链接一、认识PythonPython在执行时,首先会将.py文件中的源代码编译成Python的bytecode(字节码),然后再由PythonVirtualMachine(Python虚拟机)来执行这些编译好的bytecode。除此之外,Python还可以以交互模式运行,比如主流操作系统Unix/Linux、Mac、Windows都可以直接在命令模式下直接运行Python交互环境。目前市场上有两个Python的版本并存着,分别是Python2.x和Python3.x。新的Python程序建议使用Python3.0版本的语法。知识链接二、认识树莓派树莓派(英文为RaspberryPi),简写为RPi,或者RasPi/RPI,是为学习计算机编程教育而设计,只有信用卡大小的微型电脑,其系统基于Linux。1.认识树莓派树莓派虽小,但五脏俱全和普通电脑无异。电脑能做的大部分事情,在树莓派上都能做。2.树莓派能做什么知识链接三、识PyCharmPyCharm是Python的一款非常优秀的集成开发环境PyCharm。除了具有一般IDE所必备功能外,还可以在Windows、Linux、macOS下使用。PyCharm既适合开发大型项目,也非常适合初学者学习Python使用。由于PyCharm对系统资源要求较高,适合在台式机和笔记本电脑上使用,而不适合在树莓派中安装使用。知识链接四、认识JupyterNotebookJupyterNotebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释。知识链接JupyterLab作为一种基于web的集成开发环境,你可以使用它编写notebook、操作终端、编辑markdown文本、打开交互模式、查看csv文件及图片等功能。可以把JupyterLab当作一种究极进化版的JupyterNotebook。五、熟练掌握JupyterLab的使用知识链接a.交互模式:Python交互模式可以直接输入代码,然后执行,并立刻得到结果,因此Python交互模式主要是为了调试Python代码。b.内核支持的文档:使你可以在Jupyter内核中运行的任何文本文件(Markdown、Python、R等)中的代码。c.模块化界面:可以在同一个窗口同时打开好几个notebook或文件(HTML、TXT、Markdown等等),都以标签的形式展示,更像是一个IDE。五、熟练掌握JupyterLab的使用JupyterLab特点知识链接d.同一文档多视图:能够实时同步编辑文档并查看结果。e.支持多种数据格式:可以查看并处理多种数据格式,也能进行丰富的可视化输出或者Markdown形式输出。f.云服务:使用JupyterLab连接GoogleDrive等服务,极大得提升生产力。五、熟练掌握JupyterLab的使用JupyterLab特点知识链接Anaconda是一个用于科学计算的Python发行版,支持Linux,Mac,Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本Python并存、切换以及各种第三方包安装问题。六、认识Anaconda任务实施(一)(二)(三)(四)(五)任务1:Python开发环境安装任务2:安装Anaconda任务3:Python基础编程任务4:Python高级编程任务5:在机器人上编Python程序(六)任务6:在JupyterLab中编Python程序(七)任务7:常见的故障及解决方案任务实施任务1:Python开发环境安装Python可应用于多平台包括Windows、Linux和macOS。用Python语言进行程序开发,首先需要安装Python,可以通过终端窗口输入“Python”命令来查看本地是否已经安装Python,以及Python的安装版本。1.安装Python语言任务实施任务1:Python开发环境安装演示在PC机上的下载安装过程:任务实施任务1:Python开发环境安装2.运行Python(1)Python3.8Manuals(64-bit):开发文档任务实施任务1:Python开发环境安装(2)Python3.8ModuleDocs(64-bit):网页在线方式文档,如下图所示,可以浏览已经安装的各个模块已经模块中组件的用法。任务实施任务1:Python开发环境安装(3)IDLE(Python3.864-bit):集成开发环境(4)Python3.8(64-bit):Python解释器任务实施任务1:Python开发环境安装3.第一个Python程序通过File-NewFile,将出现Python的程序编辑器,输入如下的代码之后,按F5,或者通过菜单选择【Run】-【RunModule】任务实施任务2:安装Anaconda官网网址,/,选择“Product”,在如图所示的页面中,根据自己的操作系统进行选择,默认选择Windows版本,点击绿色下载按钮进行下载。1.下载Anaconda任务实施任务2:安装Anaconda(1)点击下载好的安装文件进行安装,如图8-30所示,点“Next”;(2)在用户协议中,选择“IAgree”;(3)在安装类别中,选择“Allusers”;(4)选择安装位置,默认即可。(5)安装已经完成,提示要安装PyCharm,这里选择“Cancel”即可。2.安装Anaconda任务实施任务2:安装Anaconda(1)安装完成后的开始菜单相应项,选择“AnacondaNavigator”启动Anaconda;(2)第一次运行要经过一段时间的初始化,之后列出已安装的包;(3)在列表中,点击JupterLab下方的“Launch”启动JupterLab。3.使用Anaconda任务实施任务2:安装Anaconda任务实施任务3:Python基础编程1)Number(数字)Python3支持int、float、bool、complex(复数)。1.数据类型和变量任务实施任务3:Python基础编程2)String(字符串)Python中的字符串用单引号'或双引号"括起来,同时使用反斜杠\转义特殊字符。字符串的截取的语法格式如下:变量[头下标:尾下标]索引值以0为开始值,-1为从末尾的开始位置。区间规则是“前闭后开”。1.数据类型和变量任务实施任务3:Python基础编程3)List(列表)列表截取的语法格式如下:变量[头下标:尾下标]索引值以0为开始值,-1为从末尾的开始位置。1.数据类型和变量任务实施任务3:Python基础编程4)Tuple(元组)元组写在小括号()里,元素之间用逗号隔开。1.数据类型和变量任务实施任务3:Python基础编程5)Set(集合)集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。基本功能是进行成员关系测试和删除重复元素。可以使用大括号{}或者set()函数创建集合,注意:创建一个空集合必须用set()而不是{},因为{}是用来创建一个空字典。1.数据类型和变量任务实施任务3:Python基础编程6)Dictionary(字典)字典(dictionary)是Python中另一个非常有用的内置数据类型。另外,字典类型也有一些内置的函数,例如clear()、keys()、values()等。1.数据类型和变量任务实施任务3:Python基础编程6)Dictionary(字典)(1)字典是一种映射类型,它的元素是键值对。(2)字典的关键字必须为不可变类型,且不能重复。(3)创建空字典使用{}。1.数据类型和变量任务实施任务3:Python基础编程在编程中这些关键字不能用于变量定义,因为他们是Python已经用的默认编程语句。2.Python保留的关键字任务实施任务3:Python基础编程1)代码缩进规则:在Python中代码块是对齐的方式是通过空格或tab键来完成对的,而且Python中是强要求格式的。如果某个代码块没有对齐就会报错。2)注释:为了增加代码的可读性,我们经常需要为他们写上一些必要的注释。Python中单行注释采用#开头。多行注释采用:三个单引号或者三个双引号方式。3)中文编码问题:由于Python源代码是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:3.代码编写规则任务实施任务3:Python基础编程Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。4.条件控制任务实施任务3:Python基础编程循环语句:主要包括for语句和循环语句。5.循环结构1)for语句举例2)while循环语句举例任务实施任务3:Python基础编程6.函数1)自定义函数2)Python库函数任务实施任务3:Python基础编程7.Python模块1)内置模块2)自定义模块任务实施任务4:Python高级编程1.面向对象编程类(Class):用来描述具有相同属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。任务实施任务4:Python高级编程2.进程与线程多线程可以让两个分别顺序执行的任务同时开始执行。形式上类似并发的意思。什么叫“多任务”呢?简单地说,就是操作系统可以同时运行多个任务。任务实施任务4:Python高级编程3.GUI编程(thiker)a.用GUI实现的HelloWorldb.Python编写的计算器任务实施任务5:在机器人上编Python程序通过VNC连接成功机器人,类似Windows中的远程桌面,在VNC中编写Python程序“HelloWorld”程序,请独立完成。任务实施任务6:在JupyterLab中编Python程序通过浏览器在JupyterLab环境中,编写Python程序“HelloWorld”程序,请独立完成。任务实施任务7:常见的故障及解决方案最常见的问题就是TAB键和space键的混用其实,上面的报错还有一个原因经常遇到,就是无首行缩进。1.Python中经常遇到这个错误IndentationError任务实施任务7:常见的故障及解决方案在机器人的树莓派命令行输入ifconfig-a既可以显示其IP地址。如图所示,箭头所指就是本机的ip地址。2.如何查询机器人的IP地址?拓展任务查询系统的帮助文档,通过Python调用系统内置的跳舞动作。项目小结本项目学习了针对树莓派平台的Python基础编程知识,通过GUI实现了计算器程序,为后项目的学习打下了基础。THANKSBUSINESSDESIGN服务机器人应用开发项目九机器人运动控制服务机器人应用开发UBTECH深圳市优必选科技股份有限公司CONTENTS01.学习目标UBTECH02.内容结构03.任务背景04.任务描述05.知识链接06.任务实施07.扩展任务08.项目小结学习目标1.了解四位数码管的工作原理;2.了解红外传感器的工作原理;3.掌握四位数码管的使用方法;4.掌握红外传感器的使用方法;5.通过程序调用readInfraredDistance()读取红外传感器数值。6.熟练掌握机器人官方SDK文档的查看方法;7.掌握对机器人动作控制API调用的通用流程。内容结构任务背景大自然中,从动物界到人类,它们的肢体活动都是靠关节的连接和肢体的互动完成的。而我们机器人想模仿人类的活动也必须有相应的关节才能活动,于是就有了舵机的出现,舵机一般意义上可以直接理解为机器人的关节,我们通过控制他们的角度和结构件连接之后完成机器人组合动作,例如:当人要迈出向前走一步的动作的时候,我们的胯关节提起、膝关节弯曲向前、踝关节跟着朝上伸出,完成向前走一步的动作。由此可见,没有关节就没有运动可言,通过关节的配合,动物们完成了他们肢体的第一次转动。任务描述本项目主要任务有:1、带领大家学习什么是一个基本的舵机动作;2、当一个动作实现的时候,我们通过几个舵机的合作工作完成相应的动作行为;3、我们还可以学到很多物理学和工程学运动知识,最后我们会通过一个实验来完成相应的控制Yanshee机器人头部转动的场景,增强我们对机器人关节——舵机的理解和认识。知识链接(一)(二)(三)(四)(五)认识电动机认识舵机SDK与API机器人的API:YanAPIAPI使用流程知识链接一、认识电动机置于磁场中的导线有电流流过时,将产生切割磁感应线方向的作用力,这种力被叫做安培力。电动机,又称为马达,是一种通电之后持续转动的装置。它可以将电能转化成机械能,驱动其他机器运动。电动机介绍知识链接一、认识电动机步进电机是一种将电脉冲信号转换成相应角位移或线位移的电动机。每输入一个脉冲信号,转子就转动一个角度或前进一步,其输出的角位移或线位移与输入的脉冲数成正比,转速与脉冲频率成正比。步进电机介绍知识链接一、认识电动机伺服电机(servomotor)是指在伺服系统中控制机械元件运转的发动机,是一种补助马达间接变速装置。伺服电机可使控制速度,位置精度非常准确,可以将电压信号转化为转矩和转速以驱动控制对象。伺服电机介绍知识链接一、认识电动机(1)控制方式不同(2)过载能力不同(3)低频特性不同(4)运行性能不同(5)速度响应性能不同步进电机与伺服电机的区别知识链接二、认识舵机舵机的旋转不像普通电机那样只是古板的转圈圈,它可以根据你的指令旋转到0至180度之间的任意角度然后精准地停下来。舵机是个糅合了多项技术的科技结晶,它由直流电机、减速齿轮组、传感器和控制电路组成,是一套自动控制装置。知识链接二、认识舵机Yanshee人形机器人上有17个不同的舵机,用来控制全身的“关节”。知识链接三、SDK与API辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做SDK。API即编程接口,是一些预先定义的函数,提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力。API仅仅是SDK中的一部分,如果SDK中其他内容不多的情况下,可以把两者等同来看。知识链接四、机器人的API:YanAPIYanAPI是基于RESTful接口开发的、针对Python编程语言的API,提供了使用Python获取机器人状态信息、设计控制机器人表现的能力,可以轻松定制与众不同的专属机器人。YanAPI介绍知识链接四、机器人的API:YanAPI官网提供了非常丰富的在线文档,网址为:YanAPI接口文档说明知识链接四、机器人的API:YanAPI(1)引入库(2)程序中引入SDK(3)初始化机器人(4)调用SDKAPI使用流程任务实施(一)(二)(三)任务1:查看官方SDK文档任务2:通过JupyterLab控制机器人任务3:机器人动作API(四)任务4:常见的故障及解决方案任务实施任务1:搭建停车场结构官网地址:YanAPI官网任务实施任务1:搭建停车场结构YanAPI接口文档说明会把所有的API进行简单的分类列表。该文档是用户进行二次开发的重要依据。YanAPI接口文档说明任务实施任务1:搭建停车场结构除了之前的文档说明,还有一个对每一个API进行使用说明的文档,该文档也是用户进行二次开发的重要依据。YanAPI说明任务实施任务1:搭建停车场结构YanAPI接口文档说明会把所有

温馨提示

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

评论

0/150

提交评论