家庭服务机器人技术报告
2014年中国机器人大赛暨RoboCup公开赛
家庭服务机器人技术报告
关键词:整体结构,机械手,运动原理分析,相关要求,动态障碍物避碰,比赛场景分析,未来发展方面
机器人名称:郑州大学服务一号
队伍名称:郑州大学服务一队
学校院系:郑州大学信息工程学院
参赛队员:张仁良,曾雨葳,魏鑫,
袁志杰,王豫丰,宋纪元
指导老师:赵新灿
引言
随着社会的发展,我们知道机器人慢慢的走进人们的生活,全球的快速发展,渐渐的机器人慢慢的开始替代人力的劳动,而在这些机器人之中家庭服务类机器人渐渐的突显出其巨大的作用,例如急救,迎宾以及充当保姆照顾老人等等机器人渐渐开始展露头角。
在我国,移动机器人己在水下探险、自动搬运、无人车侦察、清洁服务等方面有了初步的应用,有些方面己经达到或接近于美日欧发达国家水平,但由于我们起步晚,总体水平还比较落后。因此,开展分工合作,各单位选择适合自己的研究方向,跟踪国外学科发展前沿,对提高我国自动化水平、推广移动机器人的应用,进而创造更多经济效益都是很重要的。
综上所述,服务机器人虽然发展很快但是依然不能满足可靠性十足以及现场服务的应用。再看我们实验室的机器人现在还处于起步阶段,我们现在做到的就是把基本框架搭起来了,对理论方面例如运动方程的建立,以及简单的软件算法研究。但是都是比较粗浅的,而且大部分还停留在理论阶段。这篇报告主要是写了我们现在的做到的,以及未来我们要做到的几个方面,以及比赛的情况做了一下汇报。
目录
第一部分整体结构简介及作用分析4~7
第二部分工作原理分析
第三部分比赛场景分析
第四部分未来的发展方向分析
第五部分致谢页7~25页25~26页26~28页27页
备注:第一部分里有比赛之前设计的结构和我们比赛时使用结构(采用之前铁路巡线时的底盘)的对比,及相关说明。
说明:由于第一次写技术报告以及个人语文水平有限,如果给大家带去了误区,希望大家多多谅解。大家要仔细看,多多少少会对自己有所启发,启发后能咱们实验室的服务类机器人作出改进,别还停留在理论阶段,多多去实践,争取能够早日将我们的机器人推出郑大去和各高校进行比赛。
第一部分整体结构简介
图一整体结构
这是比赛之前设计的结构图虽然没有用但是基本运动方程及整体结构的作用方面已经做过基本功能分析。下面简单的介绍各个部分的作用。各部分零件作用:
(1)头部:主要是一个普通摄像头,结合伸缩杆可以实现整体对人脸的查找和识别。但是事实上我们还需要用全景摄像头,或者让普通摄像头上下和左右各180度角旋转达到快速查找的目的。
(2)伸缩杆:属于气泵式伸缩杆为全景摄像头对人和脸部查找提供方便。但是气泵式的速度方面还不行,看各个学校的机器人还是丝杆的比较多,以后多往这方面做做还是可以的。
(3)音响和PC(笔记本)放置平台:前者为机器人语音交互做好准备,后者是为了,软件调试者提供方便。
(4)激光雷达:雷达可以270度方位角扫描,建立一个场景地图可以迅速查找坐标及避开障碍物。这个东西对我们非常的重要,各大高校都有,以后这个方面的研究也是非常重要,由于我也是经验不足,这方面还需要买过来后大家多多去查找资料去了解。
(5)驱架:主要是起支撑作用,支撑丝杆和气泵式伸缩杆。
(6)体感:主要是指微软公司生产的Kinect,XBOX360体感周边外设,感受人体的动作,并根据动作作出相应的回应及服务,软件组的同学还需要多多去了解他的其他方面功能,别停留在对代码的简单套用。
(7)底座:主要是支持上层部分,同时排布有八个超声波传感器,可以270度避障。底座上黑色的竖线上排布可以调节高度和左右间距。这次比赛我们没有激光雷达所以只能靠这几个传感器来进行障碍的躲避其适应差及检测精度差等等,最最重要的是它不具有建立地图的功能,所以这个避障及定位方案不能采用,只能做一个简单的避障小车写写避障算法来玩玩而已。
(8)全向轮:四个独立驱动的伺服电机驱动四个全向轮,实现360度全方位行走,十分灵活而这次我们使用的是左右两个独立驱动轮,前后两个万向轮的结构。这个结构虽然已经经得住考验但是灵活性还是不如四个全向轮或者三个全向轮独立驱动的结构。
(9)手部摄像头:主要是为了手部服务可以识别门把手及简单的握
手姿势的学习等,配合手部完成简单任务。这个部分还需要结合算法例如:粒子滤波,模糊控制等算法,这部分我们是空白不过这部分不是我们现在要努力的方向。
(10)丝杠结构:可以实现手部的上升和下降,结合底座的左右移动
完成开门和握手动作。
图二
机械手简图
图三机械手开合过程演示
(11)机械手:主要由手指部分,底座,电机及联动机构组成,电机连接丝杆转动,带动中间块平动从而带动手指的张合。其他高校主要
要是用机械手也大部分是三个自由度度两个手指的机械臂。我们这个只能实现简单的功能。
补充说明:实物图
图四实物图
实物图中我们缺少了激光雷达,丝杆升降,以及机械手,以及四个独立驱动的全向轮结构,缺少第一者和第四者基本上我们的比赛就无法就行了,因为比赛场景中要求的我们根本无法做到。所以我们和其他高校还是差距非常大的。同时我们电子部分用的是STM32控制板这个板子是很强大的我们还可以继续使用,但是我们的避障传感器还需要使用激光雷达,也是我们下一步要主要研究的。
第二部分工作原理分析
主要是一个轮式结构外加一个气泵升降杆,及两个自由度的机械手,通过丝杆来控制机械手的上升和下降。采用的是四个轮子结构,左右两个轮子是驱动轮各自独立驱动,前后两个也是驱动轮各自独立驱动,这样的结构非常稳定不会摇晃。独立两个轮的驱动方式的转向中心位于两驱动轮连线上,整体可绕该连线上的任一点处转动,转向性能最好,同时四个独立驱动轮通过建立运动方程就可以实现全方位360度全方位前进及后退,这样就大大减少转弯时的运动路程及转弯半径。四个轮子采用伺服电机自带码盘测速及路程累计可以进行室内定位及路径规划。底座的前方中部安装有激光雷达可以实现对室内环境的记忆,可以帮助我们顺利的完成任务而不会撞到人等相关障碍物。气泵式升降杆具有良好的稳定性和升降速度可以快速寻找人的脸部所在位置不会浪费时间(前提是找到了人);Kinect是帮助我们找到人的关键同时可以识别简单的动作进行交互。通过码盘我们实现室内的坐标定位和路径规划实现两个地点之间的准确到达。具备这些功能我们就可以实现取物,开门,以及对特定的主人服务,超市购物等等场合进行应用。
上述是对现有的结构做的原理分析,而我们现在做的主要还是靠的是超声波避障,在底盘的270度方向上都排布有避障传感器,这样就能进行简单避障,但是适应性十分差,对于环境无法迅速适应和学习记忆住相关场景;同时我们无法做到坐标定位,进入到比赛场景里
我们基本上处于一个瞎子的状态,不能定点移动。
采用激光雷达的作用是建立如下图的大致场景:
图五激光建图
这是一个激光发射时采集到障碍物情况:
图六激光雷达扫描过程
激光雷达采集图像的过程是这样,机器人在移动过程中接受激光雷达反射回来的障碍点距离信息,机器人将周围环境信息映射到自身创建
的二维栅格地图中,通过分析机器人自身的位置信息就可以确定障碍点在栅格地图中的位置,并更新栅格地图。通过这种不间断扫描实时更新最终建立如图五所示二维地图。雷达工作过程就是270度发射激光束,把整体的立体给切出一个二维的图,记住自己距离某一个点的距离。见下图七
两个立体圆柱的俯视图
截面图
图七激光雷达截面图示意(大致是这样)
激光建模是一个大工程也是我们必须完成的,这个需要很长时间,才能做得差不多。
下面是底盘的运动学分析以及相应的运动方程及受力分析。
第一、全向轮的运动学分析
①全向轮原理:全向轮的外形如图一所示图八全向轮外形
这种车轮由两部分组成,即主动的轮毂和沿轮毂外缘均匀交
替分布的被动辊子,辊子的轴线方向,与轮毂的端面平行,以自由滚动。当车轮旋转时,轮心相对于地面的速度v是轮毂速度VY与辊子滚动速度VX的合成,VX与VY垂直,见图一。这种结构的车轮在驱动力的作用下可以前进或后退,当受到横向的外力时又可以自由的横向移动,因此经过适当的组合后就可以实现机器人的全向移动和原地转向运动,以及这两种运动的合成。②全向移动底盘的运动学分析
我们设计的全向移动底盘采用四个可以独立控制的全向轮(如图二所示)
图九底盘电机安装示意图
如图二所示,轮心轴线在平面内间隔90度分布,移动底盘的运动分析如图二所示,y轴为底盘的正前方向,x轴为底盘的横向方向,V1、V2、V3、V4分别为四个全向轮的线速度,ϕ为底盘的自转角速度,每个轮子距移动底盘中心O的距离分别是l1、l2、l3、l4,根据运动合成与分析原理,底盘的运动方程如下:
V1=Rω1=VX+ϕlV2=Rω2=-VY+ϕlV3=Rω3=-VX+ϕlV4=Rω4=VY+ϕl
式中ω1、ω2、ω3、ω4是四个全向轮的角速度;VX、VY分别是底盘平移速度V在底盘坐标系下x轴和y轴的分量;l1、l2、l3、l4是底盘几何中心到四个车轮中心的水平距离;R是车轮半径。设A=1/(l1+l2+l3+l4)解方程组,整理的:
(1)
XVY1-Al1-Al4
A
-Al1-Al1-Al4A
-Al1V1V2V3V4
(2-1)
-Al41-Al4*A
A
XVYϕ
Al3-Al4
A
Al3-Al4A
Al3-1Al3
*
V1V2V3V4
(2-2)
-Al41-Al4A
A
XVYϕ
1-Al1Al2A
-Al1-Al1-Al1Al2A
*
V1V2V3V4
(2-3)
Al2-1Al2A
A
VXVYϕ
Al2Al3A
Al2-1Al3A
Al2Al3-1A
Al2Al3A
*
V1V2V3V4
(2-4)
这样,就可以通过所给定的四个全向驱动轮的速度V1、V2、V3、V4计算出移动底盘的运动速度V与方向。 底盘的平动:
平动就是在水平面上沿任意方向的直线运动,即ϕ=0.由式(2)可知,此时四组全向轮速度应满足约束条件:
V1+V2+V3+V4=0
当
V4=-V2
V1=V3=0
;
移动底盘向正前方运动且运动速度V=V4当
V1=-V3
V4=V2=0
;
移动底盘向左运动,运动速度V=V1当
V1+V4=-V2-V3
移动底盘向左前方运动,运动速度V=2V1其他特殊运动形式同上理推出。
移动底盘的原地转动:
3/2
;
我们知道只有V=0,即VX=VY=0时,移动底盘才不会出现平动,此时只要ϕ≠0即可实现移动底盘的原地转动.由(2-1)式可求出V1=v4*l1/l4;由式(2-2)可得出V3=V4*l3/l4;由式(2-3)可得出V2=V1*l2/l1;由式(2-4)可得出V2=V3*l2/l3。
所以只要V1、V2、V3、V4满足这样的关系,底盘即可实现原地转动。 圆弧运动:
底盘可以通过两种方式实现圆弧运动第1种方式
在水平面内通过一系列的平动实现圆弧运动,即ϕ=0,底盘不做自转。在运动过程中,不断改变Vx与Vy的值。在t时刻:
VX(t)=Vrsin(Vt/r-α)
(3)
VY(t)=VrCOS(Vt/r-α)
式中α为起始点指向圆心的向量的方向角;r是圆弧半径;Vr为底盘行走圆弧的线速度。
将式(3)代入式(1)可得:
V1=VrSin(Vt/r-α)V2=-VrCOS(Vt/r-α)V3=-VrSin(Vt/r-α)V4=VrCOS(Vt/r-α)
该方式在绕任一点做圆周运动时需要经过大量的计算,且对电机的控制要求较高。适合对固定方向观察的特殊场合。第2种方式
通过平动与转动相配合实现底盘圆弧运动。这种情况下ϕ≠0,平动的速度被分配到四组全向轮。根据底盘运动圆弧的线速度Vr求出底盘的角速度ϕ,再叠加上平动的速度就可以得到底盘按圆弧运动时四组全向轮的速度与时间的函数。当底盘沿圆弧运动一周时,底盘自身也应旋转一周,所以小车自转
的角速度是ϕ=Vr/r。根据式(1),平动与转动在四组全向轮上的分配速度叠加后可得
V1=VrSin(Vt/r-α)+Vr*l1/rV2=-VrCOS(Vt/r-α)+Vr*l2/rV3=-VrSin(Vt/r-α)+Vr*l3/rV4=VrCOS(Vt/r-α)+Vr*l4/r
该种方式运动计算简单,对电机控制要求简单,适合一般运动的圆弧段。
第二:全向轮的动力学分析
家庭服务机器人的质量为W,重心高度h,平均速度V,最大速度Vmax,最大加速度amax,重力加速度g,最大爬坡能力θ,滚动阻力系数分别为δ。全向轮间距L,全向轮直径D。
由图二所示,V1、V2、V3、V4为时刻t时四轮的速度,F1、F2、F3、F4分别为四轮的驱动力,f1、f2、f3、f4
分别为四个轮所受摩擦力,四轮到机器人质心O的距离分别是l1、l2、l3、l4,其中l1、l3共线,l2、l4共线,O为两线交点。
底盘做平动,由运动状态可知:
当底盘沿X轴或Y轴运动时,仅需两个全向轮参与驱动,此时另外两轮的辊子为滚动状态。这时四轮所受的摩擦力之和:
Ff=f1+f2+f3+f4
则底盘的运动平衡方程为(设全向轮1和3为驱动轮)
F1+F3=Ff
虽然驱动轮驱动电机相同,但是由于l1、l3不等,所以两驱动力:
F1≠F3
查资料可知:使用n个轮子,底盘的重心作用在轮子连线所组成的n边形的内接圆里时,底盘处于稳定状态。使用四个轮子时,当轮距为L,则内接圆的直径D’=2^(-1/2)。即当底盘的重心作用在直径为D’的圆内时,底盘处于稳定状态。
假设l1、l3的极限差距为重心作用在直径上,我们确定每个驱动轮需要提供的驱动力:
F’=0.5*Ff*(L+D’)/L
底盘做加速度为amax运动时,所受的合力:
Fa=W*amax
假设l1、l3的极限差距为重心作用在直径上,我们确定每个驱动轮需要提供的驱动力:
F’’=0.5*Fa*(L+D’)/L
由于底盘刚启动时,需要提供加速度,以及克服摩擦阻力。所以启动时所需驱动力:
F=F’+F’’
则启动时驱动轮的扭矩
M=F*D/2P=M*n/9.549
P为驱动电机功率,单位为瓦(w),n为转速,单位为转每分钟(r/min),M为扭矩,单位为牛米(NM)。此参数作为选择直流电机的重要依据。
当底盘不沿X轴或Y轴运动时,我们选择四轮同时驱动,此时,四轮的辊子为滚动状态。可得四轮所受滚动摩擦力之和为:
Ff=f1+f2+f3+f4
则底盘的运动平衡方程为
F1+F2+F3+F4=f1+f2+f3+f4
此时极限差距为重心作用在两个相邻轮子的中点,单个驱动轮的驱动力为:
F’=0.5*(F1+F2+F3+F4)
底盘做加速度为amax的运动时,所受的合力
Fa=W*amax
由极限差距得,每个驱动轮提供的最大驱动力
F’’=0.5*Fa
由于底盘刚启动时,需要提供加速度,以及克服摩擦阻力。所以单个轮子所需驱动力
F=F’+F’’
则启动时驱动轮的扭矩
M=F*D/2P=M*n/9.549
P为驱动电机功率,单位为瓦(w),n为转速,单位为转每分钟(r/min),M为扭矩,单位为牛米(NM)。此参数作为选择直流电机的重要依据。
爬坡状态受力分析
分解重力W,垂直于斜面Wc和平行于斜面Wp,则四个轮子的总摩擦力为:
Ff=f1’+f2’+f3’+f4’
其中:
f1’+f2’+f3’+f4’=WgCosθ*δ
重力沿斜面向下的分力为:
Wp=WgSinθ
则底盘的运动平衡方程为(设全向轮1和3为驱动轮)
F1’+F3’=f1’+f2’+f3’+f4’+Wp
由极限差距知每个驱动轮需要提供的驱动力:
F=(f1’+f2’+f3’+f4’+Wp)/2
按照一般工况,上坡过程中只需克服摩擦阻力。则启动时驱动轮的扭矩
M’=F*D/2P’=M’n/9.549
P’为驱动电机功率,单位为瓦(w),n为转速,单位为转每分钟(r/min),M’为扭矩,单位为牛米(NM)。此参数作为选择直流电机的重要依据。
第三:动力学分析计算
家庭服务机器人的重量W=50KG,重心高度h=80mm,平均速度V=1.5m/s,最大速度Vmax=1.8m/s,最大加速度amax=0.6m/s,重力加速度g=9.8m/s,最大爬坡能力
1
2
2
θ=10°,全向轮的静摩擦系数μ
=0.6,滑动摩擦系数μ2=0.3,滚动阻力系数分别为δ=0.03。全向
轮间距L=45mm,全向轮直径D=101.6mm,驱动轮转速n=300r/min。 底盘做平动:
则底盘的运动平衡方程为(设全向轮1和3为驱动轮)
F1+F3=f1+f2+f3+f4
每个驱动轮需要提供的驱动力
F’=0.5*(F1+F3)*(L+D’)/L=12.58N
底盘做加速度为amax运动时,所需的力
Fa=W*amax
则
F’’=0.5*Fa*(L+D’)/L
=25.67N
每个驱动轮提供的最大驱动力
F=F’+F’’
=38.25N
则启动时驱动轮的扭矩
M=F*D/2=1.95NM
P=M*n/9.549=61.27W
当底盘不沿X轴或Y轴运动时,
则底盘的运动平衡方程为(设全向轮1和3为驱动轮)
F1+F2+F3+F4=f1+f2+f3+f4
由极限差距得,每个驱动轮需要提供的驱动力
F’=(F1+F2+F3+F4)/2=7.35N
底盘做加速度为amax的运动时,所需的力:
Fa=W*amax=30N
由极限差距得,每个驱动轮需要提供的驱动力
F’’=0.5*Fa
=15N
每个驱动轮提供的最大驱动力:
F=F’+F’’=22.35N
则启动时驱动轮的扭矩
M=F*D/2=1.14NM
P=M*n/9.549=36.29W
爬坡运动时
则底盘的运动平衡方程为(设全向轮1和3为驱动轮)
F1’+F3’=f1’+f2’+f3’+f4’+WgSinθ=99.57N
由极限差距得,每个驱动轮需要提供的驱动力
F=0.5*(F1’+F3’)*(L+D’)/L
=85.19N
按照一般工况,上坡过程中只需克服摩擦阻力。
则启动时驱动轮的扭矩
M’=F*D/2=4.4(NM)
P’=M’n/9.549=138(W)
P’为驱动电机功率,单位为瓦(w),n为转速,单位为转每分钟(r/min),M’为扭矩,单位为牛米(NM)。此参数作为选择直流电机的重要依据。
第四:电机类型选择
电机的选择应综合考虑,一般可参考下列几点:
(1)应根据机械的负载性质和生产工艺对电机的启动、制动、反转、调速等的要求,选择电机的类型。
(2)根据负载转矩、转速变化范围和启动频繁程度等要求,综合考虑电机的温升限度、过载能力和启动转矩,选择电机的功率以及确定
电机冷却通风条件.选择电机的功率时,一般应留有余量,其负载率可在0.8〜0.9范围内选择•
(3)根据使用场所的环境条件,如温度、湿度、灰尘、雨水、瓦斯以及腐蚀和易燃易爆气体含量等,确定必要的防护形式,选择电机的结构形式.
(4)考虑用户的电网电压悄况以及对功率因素等性能指标的要求,确定电机的电压等级以及电机的类型。
(5)根据使用对象的最高转速、电源传动调速系统的过渡过程以及减速机构的复杂程度,对电机的性能要求,选择电机的额定转速。除上述各点外,还要综合考虑电机运行的可靠性、备品备件的通用性、安装维修的难易程度、以及产品价格、运行费用和维修费用等各项经济指标,达到安全运行和节约能源的目的,完成电机的最后选择。对于移动机器人而言,考虑其移动性,机器人一般自身携带电池,因此所采用的驱动电机也以直流电机为主。以此为例,本节介绍移动所用驱动电机的选择原则。一般而言,选择什么样的电机,在很大程度上取决于负载的物理特性、负载的工作特性、系统要求以及工作环境。一旦机器人系统的要求确定后,首先要考虑的是选择多大的电机合适,主要考虑负载的物理特性,包括负载扭矩、惯量等。在伺服电机中,通常以扭矩或者力来衡量电机大小,所以选电机首先要计算出折算到电机轴端负载扭矩或者力的大小。计算出扭矩以后需要留出一部分余量,一般选择电机连续扭矩多≧1.3倍负载扭矩,这样能保证电机可靠的运行。除此外还需要计算折算到轴端负载惯量的
大小,-般选择负载惯量:电机转子惯量
选择出用多大扭矩的电机后,需要做的是了解负载的工作特性和工作环境。负载的工作特性包括如负载是髙速还是低速运行,加速度需要达到多少,是否儒要频繁起停,频率需要达到多少,系统运行精度等。选择伺服电机并没有什么特定的规律可循,关-的是所选择的电机必须适应你负载运动的工作要求。比如在系统精度要求不高、运动速度在几百转以下(不超过1000r/min)但不至于过低(大于
lr/min),不需要频繁起停的情况下,步进电机是一种很好的选择。这是因为步进电机开环控制,控制精度低。速度太高,电机扭矩会下降的很快,将带不动负载;速度过低会出现转动不连续的爬行现象,而且步进电机的响应也不快,不适合频繁启动的应用场合。当运动速度几转到3000多转每分钟以下时,控制精度相对要求较高,可以选择直流伺服电机。直流伺服电机有有刷和无刷两种。前者控制方式简单,价格低廉,但由于有刷直流电机因为存在电刷换相,会有换相环火产生,在真空、防爆、水下等场合是不能使用的,并且由于环火使电机轴膨胀以及传导给连接部件,在系统精度要求高的场合也不能使用。因而在运行环境恶劣、控制精度要求高、运行速度快的情况下,一般选择直流无刷电机。
根据服务机器人一般要求,该机器人平均速度V=1.5m/s,同时由于电机扭矩原因,全向轮直径D定为101.6mm,则周长为C=πD=0.3192m,则电机的转速r=V/C*60=282r/min.
转速较低,故选用步进电机。为减少步进电机的失步现象,故选用伺服步进电机。由以上计算结果,需选用电机参数如下:
类型:伺服步进电机
扭矩:4.4NM
功率:138W
转速:大于300
长度:小于150mm(由经验得)
直径:小于80mm(由经验得)
第三部分比赛场景分析
关键词:场景,规则解读,根据规则结合场景图分析如何完成任务下图是比赛场地的大致平面图:图八大方桌垃圾桶折叠床方凳
盆
栽第Ⅲ区域
储物架床第Ⅱ区域饮料
和水
等物
品圆桌和方桌上
面
有第I区域盆有两子微张波小
炉桌
和子
一上
个面矩形方桌底两种不同的椅子部空的有桌腿第Ⅳ区域
沙发
图十比赛场景图
备注:黄色为墙开口为门,这是一个二维平面图,相关箭头指
出相应的物品,墙大概有一米高。
根据此图我们可以知道这个类似于一个简单的居家环境,所以我们一定得通过激光建模的形式把整个屋子的情形清晰的记录下来,这样我们才能实现定点移动,到达任务的地点并且完成任务,在这个屋子里我们会进行许多任务并完成测试。详细比赛规则参考www.rcccaa.org官网/2014RoboCup-Home比赛规则根据比赛规则我们在分析如何来完成任务。分析部分每年都会有所变化,所以根据规则来进行策略的改写。
第四部分未来的发展方向分析
关键词:运动学分析,底盘的调试,激光建模的学习与使用,软件总结与学习
电子机械方面:基于现在我们的实际情况,现在我们要做的的就是做一个完整的运动学分析,然后在此基础上我们进行底盘的制作与调试,必须把运动的数学方程变成算法编进我们的控制程序中。当我们的底盘完全调试好了,控制灵活自如时,我们在进行激光雷达的研究,文献中有许多这些方面的论文研究我们可以参考并使用,同时再在激光雷达上进行实物测试,最终慢慢进入到建图阶段。达到这一步我们基
本上就能够将我们的机器人推出去参加比赛了。这是我的一个简单思路。以后再往下做就看以后了你们了。
软件方面:本次家庭服务机器人的制作中,软件方面主要涉及到人脸识别与定位、体感识别与骨骼定位、手势识别、语音识别以及与下位机的通信控制方面的内容。
人脸识别方面,主要使用了luxand和opencv两种SDK。识别方面,首先通过kinect得到的人体坐标作出机体的调整,在一定距离内,调节升降杆,以近似30帧每秒的帧率进行图像采集。在得到人脸图像后,采集20张照片方便之后近似度的计算。
体感识别方面,使用kinect体感感应器以及配套的SDK。这里使用红外摄像头进行人体骨骼的检测并用opencv进行显示和部分处理。根据kinect所返回的标定骨骼的坐标进行下位机控制。
手势识别放方面,可通过kinect进行粗略的举手挥手等大动作的识别,也可通过加载腾讯的手掌和拳头分类器进行具体的手势识别,但是对于光照强度等要求有所苛刻。
语音识别方面,使用微软提供的SAPI进行文字阅读以及基于特定语法库的语音识别。特定语法库要每次根据需求自行编写,这牵扯到xml语言的使用,在语音应答方面还需要相关数据库操作的支持。
对比其他学校,大多是使用Ubuntu操作系统,上边可搭载ROS系统插件,ROS中包括Slam动态地图构建、导航与定位、机器人运动仿真、场景3D建模、语音控制、操作杆控制等专门为机器人打造
的接口与与类似于分类器这种预装文件,能够极大的方便我们对于家庭服务机器人的开发。
场景建模方面,所有学校均装备有激光雷达这一设备。这款设备不需要下位机做相关的配合,仅仅是USB连接上位机,通过固有的一套SDK或者ROS的相关接口进行270°范围内可行进空间的二维建模。建模的过程中,操作者仅仅需要手动控制机器人在相关场景中走一圈,即可完成地图的大概构建。
在语音识别方面,中科大使用的是科大讯飞的SDK,这个在中文识别的上是世界上最为精确的,但貌似需要将所采集信号传送至云端进行解析,需要网络方面音频收发的操作。
此外,在kinect的使用方面,其他学校红外摄像头与双目摄像头之间做到了相当好的衔接。通过双目摄像头找到目标物体,并用红外摄像头得到距离的Z值。在正确的目标物、机器人以及机械臂的相对定标之后,即可控制机械臂进行物品的抓取。
第五部分致谢
今年参加的这个比赛可谓是感觉良多,不出去我们就无法知道和别人的差距,所以这个报告写得很详细,我们和人家的差距以及场景的布置都有提及,所以我们根据这些东西来进行制作与学习争取早日让机器人走出实验室,这个机器人我搞了两年,虽说并没有太大的进步但是起码也是一个开始,今年的这个机器人融入很多人的心血,很感谢各位队员们的努力,为了以后留下深厚基础。也很感谢我们的指导老师赵新灿老师,为了实验室争到了服务机器人的设计与制作的机会,总之这是一个开始一个充满挑战的开始。