Tinker家庭服务机器人
作者:韩新宇 自动化系
指导老师:张新钰 汽车系
关键词:机器人 决策优化 智能控制
摘要
目前的家用服务型机器人仅能完成特定的功能,缺乏泛用性,智能程度也较为欠缺。为此,我们——清华大学未来机器人团队希望构建一个功能齐全、实用方便的智能机器人系统,承担起家庭中方方面面的家务工作,腾出人们的双手,方便人们的生活。
Tinker作为家庭中使用的机器人,配有特别设计的机械结构、多种传感器和多用途机械臂;且有配套的建图、导航、控制算法。为了提供人性化的交互服务,Tinker还有人脸识别、人体姿势识别、语音识别、语音合成等功能。
建图与导航
Tinker能在新的环境中不断探索、不断认知。Tinker拥有用于建图的激光雷达。在环境中时,Tinker会用基于点云匹配的算法确定自己位置并建立环境的地图。
根据地图中的障碍情况,Tinker使用A*算法进行导航。这种实时的算法能避开固定的障碍物和走动的行人、宠物,保障用户的生命与财产安全。
Tinker的建图结果与导航路线规划
由于Tinker配备了低减速比的驱动电机和减速器,在机器人移动时只会发出轻微的噪声。紧凑的结构给Tinker带来了小巧的身材,能让它通过室内的房门;且其重心较低,在运运动时能保持稳定,不会晃动。
机械臂控制与操作
Tinker的机械臂是完成各种操作任务的主要手段。对于简单的操作任务,Tinker通过位于顶部的摄像头定位后即可直接抓取。
Tinker抓取水瓶
对于精细的操作任务(如插插头、拼积木等),Tinker可以用位于机械臂末端的摄像头从不同角度观察任务目标,并确定其精确位置,随后再进行操作。
Tinker精细操作(抓取薄物体)模拟图
此外,Tinker还可以借助机械臂的位置来标定相机的外部参数。机械臂的末端可以夹取一个标记,随着机械臂的位置变化,相机会在不同的地方检测到标记。根据这些位置,可以解出相机自身的位置和朝向。这个功能可以大幅降低启动前的工作量。
Tinker用机械爪夹取标记来确定相机(顶部)的位置姿态
人机交互
Tinker不仅能完成用户的指令,还能通过人性化的交互服务给用户良好的使用体验。Tinker拥有语音识别、人体姿势识别等功能,可以通过动作或语音感知用户的意图,并用语音合成技术做出回应。
Tinker上还搭载了基于稀疏表示的人脸识别算法,可以识别并记录数十张人脸。这使Tinker能针对不同的用户做出个性化的回应。
使用OpenNI+NITE方案检测得到的人体骨架
基于稀疏表示的人脸识别算法检测结果