图2.29 声音传感器
3.4 碰撞传感器
碰撞传感器是由一个按钮开关和外围电路构成,其输出信号为数字信号。当按钮按下时,信号输出端输出低电平;按钮被释放时,信号输出高电平。
图2.30是“创意之星”的碰撞传感器,输出开关量信号,接IO0~IO11的任意一个接口都可以通过NorthSTAR进行数值读取和编程。碰撞传感器可以当成机器人的触角,或某些位置的限位开关。
图2.30 碰撞传感器
3.5 倾覆传感器
姿态传感器采集的是机器人的姿态信息,专业的姿态传感器(电子罗盘、陀螺仪等)价格昂贵,“创意之星”机器人套件提供了一个基本的姿态传感器——水银开关(输出开关量信号)。
水银开关里有一个位于玻璃管,可自由移动的水银粒。水银开关输出不同的信号与水银粒在玻璃管的位置相关。比如水银粒位于玻璃管A端时,水银开关输出高电平;当传感器由于某种原因姿态改变过大移动到玻璃管B端,水银开关输出低电平。根据水银开关这种输出信号与其本身姿态有关的特性,我们可以借此来检测机器人的姿态。水银开关在测量机器人是否倾覆上非常好用且成本低廉,所以我们也常将之称为倾覆传感器。
26
图2.31是“创意之星”的倾覆传感器,输出开关量信号,接IO0~IO11的任意一个接口都可以通过NorthSTAR进行数值读取和编程。
图2.31 倾覆传感器
3.6 温度传感器
温度传感器是一种检测温度的部件。其核心是美国National Semiconductor公司的LM35温敏传感器。这款传感器的标称温度检测范围是0~70摄氏度。为了传感器的安全起见,不要将传感器放置在超过80摄氏度的环境中,该传感器并不具备防水能力,请不要用该传感器测量水温。
图2.32是“创意之星”的温度传感器,输出模拟量信号,接AD0~AD7的任意一个接口都可以通过NorthSTAR进行数值读取和编程。
图2.32 温度传感器
3.7 光强传感器
光强传感器对可见光波长的光照强度(专业术语即“照度”)很敏感,其核心元件是一只光敏电阻,其输出信号为与光强相关的模拟信号。
图2.33是“创意之星”的光强传感器,输出模拟量信号,接AD0~AD7的任意一个接口都可以通过NorthSTAR进行数值读取和编程。
27
图2.33 光强传感器
3.8 灰度传感器
灰度传感器通过自身的高亮白色LED照亮被检测物体,被检测物体反射LED的白光。由于不同的颜色对白光的反射能力不一样,同样材质白色反射度最高,黑色反射度最低。灰度传感器前端有一个光敏电阻,用于检测反射光的强弱,据此可以推断出被检测物体的灰度值。
图2.34是“创意之星”的灰度传感器,输出模拟量信号,接AD0~AD7的任意一个接口都可以通过 NorthSTAR 进行数值读取和编程。在机器人武术擂台赛中或者足球机器人比赛中,使用多个灰度传感器组成阵列就可以判断比赛场地的颜色梯度。在巡线机器人案例中,可以作为区别白线与周围地面的传感器。
图2.34 灰度传感器
3.9 视觉和语音传感器
在机器人运用中,真正意义上的视觉传感器就是摄像机,它能够让机器人和人一样看到世界万物。而真正意义上的听觉传感器就是麦克风,它能让机器人听到各种声音。不过,看到了不一定能够分辨出来,听到了不一定能够听懂,要让已经具备眼睛和耳朵的机器人能看懂,能听懂,需要您设计相关的程序。
28
“创意之星”高级版使用的MultiFLEX?2-PXA270控制器有两个USB接口,可以接入常见的USB摄像头,还有1个麦克风输入口。我们为“创意之星”开发了图像识别引擎,它能够识别出各种颜色,并将其标示出来。利用这项技术,我们可以让机器人很清楚的看到绿地毯上的红球,并且知道红球的位置。我们为“创意之星”开发了语音识别引擎,您可以定义要让“创意之星”识别的语句,当您对“创意之星”说这些语句时,“创意之星”能够将它识别出来。
利用上述的两种功能,我们可以设计很多有趣的机器人,比如听话的小狗。第九章我们将指导您设计一个能够和您语音对答的机器人。第十章我们将把ROBOCUP机器人足球比赛的全向机器人平台小型化,用“创意之星”搭建出全向足球机器人,这种机器人平台关键技术之一就是图像识别技术,它需要利用摄像头识别场地、球门、足球、己方和对方机器人。
4执行器
机器人之所以有“人”字,是因为人们希望这种新的人造物能够像人一样,有聪慧的大脑、敏感的知觉、灵活的活动能力,能够代替人完成人们所不期望亲力亲为的事情。
机器人常用的运动驱动部件有直流有刷电机、直流无刷电机、步进电机、舵机等。“创意之星”配置了直流有刷电机、微型舵机、机器人专用舵机等。
4.1 CDS5516机器人舵机
proMOTION CDS系列机器人舵机属于一种集电机、伺服驱动、总线式通讯接口为一体的集成伺服单元,主要用于微型机器人的关节、轮子、履带驱动,也可用于其它简单位置控制场合。CDS 5516的特点如下所示:
图2.35 CDS5516机器人舵机
大扭矩:16Kgf?cm的持续转动输出扭矩,大于20Kgf?cm位置保持扭矩; 位置伺服控制模式下转动范围0-300°; 高转速:最高0.16s/60°输出转速 ; 在速度控制模式下可连续旋转,调速; 6.8V~14V宽电压范围供电;
总线连接,理论可串联254个单元; 0.32°位置分辨率 ;
29
高达1M通讯波特率;
双端输出轴,适合安装在机器人关节; 0.25KHz的伺服更新率;
高精度全金属齿轮组,双滚珠轴承; 具备位置、温度、电压、速度反馈; 连接处O型环密封,防尘防溅水。
4.1.1 总线通讯的特点
CDS5516采用半双工串行异步总线通讯,控制器可以通过一个UART接口,控制多达255个的CDS5516。
总线是指能为多个功能部件服务的一组信息传输线,它是计算机中系统与系统之间、或者各部件之间进行信息传送的公共通路。它由一定的物理线路和接口、数据协议规范所构成。
4.1.2 CDS5516的使用
CDS5516采用半双工串行异步总线进行控制,每个舵机都有自己单独的ID号,您在机器人构型搭建时需要对ID号进行配置,以免机器人的某些关节的ID号重叠。博创出厂的CDS5516默认ID为1,在“创意之星”包装盒里有CDS5516 ID编号的不干胶,您设好ID后请将不干胶粘贴到舵机后盖上,避免遗忘。
CDS5516有专用的调试环境RobotServo Terminal,在这个环境下,您可以设置舵机ID、波特率、工作模式、速度限制、角度限制、电压限制等等。
CDS5516采用总线式通讯,您可以串联使用。使用R/C舵机时我们一直很苦恼,如果我们设计的构型有20个舵机,我们需要接20根线都接到控制器,整个机器人会被长短不一、颜色各异的线所包围缠绕。CDS5516让我们摆脱了这种窘境,我们可以将6足爬虫每条腿上的3个CDS5516串联在一起,再连到控制器上。我们可以将机械手的六个关节串联成一串,最后一根线接到控制器上,整个走线非常简单、清晰,可靠性也高很多。
需要注意的是:每个CDS5516需要使用不同ID;每串CDS5516的数量不能太多,最好是6个以下。正常工作下单个CDS5516的电流可能达到500mA~1A,堵转电流可达到2.5A,单组6个CDS5516的工作电流可能达到3-8A。这样的电流会让舵机线发热,并产生比较大的电压降,最后一个 CDS5516可能因为沿途舵机线的分压而导致工作电压过低,CDS5516在电压过低时会出现复位、数据通讯不正常等等状况。
30