地平线RDK X3作为上层控制器的白蛋一号家庭巡检安防机器人应用介绍
(一)个人介绍
杜道锋,自动驾驶感知算法工程师,“白蛋一号”小型室内安防巡检机器人开发者。狂热的C++轮子制造爱好者,热衷于自主移动机器人开发,在SLAM、嵌入式系统以及视觉感知等方面有一定深入的了解(作者github链接:https://github.com/softdream)。
(二)产品介绍
为了适应老龄化社会的发展,加速家用小型服务型机器人的落地应用,本人开发了一款小型的适用于家庭环境下的家庭巡检安防机器人。本人将其命名为白蛋一号,其核心在于能够在家庭环境内自主巡航的同时监测家庭环境的异常状况(譬如老人跌倒、陌生人入侵、有害气体浓度、 易燃气体浓度、烟雾浓度、火灾情况等等),并且能作为智慧家居的核心接入各种外设(空调、灯光、窗帘、睡眠检测仪等等),方便对智慧家居设备进行统一管理、调度和控制。产品整体外观如图1所示:
该产品主要应用的技术有:SLAM同时地图构建和定位技术、路径规划、路径平滑、路径跟踪、运动控制、任务决策、基于深度学习的视觉检测技术以及传感器检测技术。
(三)硬件构成
该机器人采用的是经典的两轮差速结构,其上搭载了激光雷达、RGB相机、编码器、IMU、烟雾传感器、温湿度传感器等各种外设。机器人的硬件设计采用了分层设计的思路,使用了两个控制器:对于底层各种传感器数据采集以及机器人的运动部分控制使用低成本、性能较小的单片机来完成,而对于上层则需要完成机器人的算法运行,并且需要驱动相机、激光雷达等对计算性能要求高的设备,因此采用性能强悍的SOC(片上系统)。这里使用了地平线的X3派作为上层控制器,其主频高达1.2GHz,有4个A53的核,板载了wifi模块,更为重要的是其上搭载来一个算力高达5Tops的NPU计算单元。
机器人的硬件框图如图2所示:
机器人的部分外设分布如图3所示:
机器人底层控制板如图4所示:
机器人上层控制器——地平线 RDK X3,如图5所示:
(三)软件方案
在机器人的软件开发方面,将抛弃常用的ROS框架,并尽量避免使用第三方库,从硬件驱动到算法的设计,都将以自己设计的轮子为主。
在底层驱动板中,主要实现了对各个传感器的数据采集和初步数据处理的功能,底层驱动板在获取到这些信息之后会直接通过串口上传至X3主控中供其下一步的处理。同时在底层驱动板中实现了对电机的控制功能,在接收到RDK X3主控下发的控制指令(主要是线速度和角速度)之后,会生成对应的pwm方波信号,控制两个直流电机的转速,从而让机器人完成移动动作。
在RDK X3主控中的程序主要分为两种:一种是用于应用支撑的基础程序,包括slam算法、里程计融合算法、路径规划算法、轨迹跟踪、机器人控制以及任务决策等算法,这些算法程序是构成自主移动机器人的支撑,是可以让机器人能够自主移动的关键。另一种是在上述算法基础上自定义的一些应用程序,由于此机器人主要是用来做巡防安检的,因此只针对这一块做一些定制化的应用功能,包括人体姿态检测算法、人脸识别算法等等,同时用户也可在二次开发时根据需要自己更改。
机器人的软件框架如图所示:
(四)特色功能
(1). 室内全自主导航巡检,通过自研的高精度室内单线激光SLAM算法、自研的路径规划算法以及自研的任务决策系统,可以让机器人能够完全自主的移动巡逻,无需人工干预。
(2). 实时室内环境监测和人员安全监测,由于机器人上搭配了很多传感器,可以实时检测室内有无异常情况,同时得益于X3派的强悍的BPU,可以通过视觉检测人体姿态来监测人员的安全情况。
(3). 远程遥控监测功能,可以通过微信小程序远程查看机器人摄像头所捕捉到的画面,同时也可以远程遥控机器人运动,增加了灵活性。
(4). 支持二次开发,开放底层源码和算法设计思路,可供爱好者学习和开发。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由雪飘梦飞转载自D-Robotics官网,原文标题为:白蛋一号家庭巡检安防机器人,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
YDLIADAR激光雷达驱动应用实例
介绍YDLIADAR激光雷达驱动的方案与技术要求,YDLIDAR ROS2驱动,以ROS2标准消息格式发送激光雷达数据。
多模态感知仿生机械手项目案例
本项目提供了一款五指仿生机器手,其仿照人手的外观与自由度,使其能够作为人形机器人的末端执行器,完成人手所能完成的任务。
双机械臂四转四驱机器人设计与实现
该研究设计了一种创新的双机械臂四转四驱机器人,旨在突破传统轮式机器人的限制。该机器人底盘采用四转四驱设计,显著提升了灵活性和负载能力,使其能够在复杂环境中精确移动和执行任务。双机械臂系统使机器人能够高效与现实生活互动,完成复杂任务。
基于RDK X3的机械臂物体拾取操作实例
本文介绍RDK X3该功能包接收用户选择方块数字的请求,通过yolov5检测目标,在Z轴距离确定的情况下解算出物体的三维坐标,并请求仿真机械臂控制节点夹取物体的应用实例。
智能语音聊天机器人功能及使用指南
智能语音聊天机器人通过识别用户语音,调用ChatGPT API获取答复并播放,实现语音聊天。需地平线RDK、ChatGPT API Key及音频板等物料。准备、组装后,安装功能包并运行,配置音频和ChatGPT API Key。常见问题包括设备连接、音频驱动、配置文件及网络访问等。
NodeHub快速入门示例:小海龟绘画
NodeHub快速入门示例,通过键盘控制小乌龟进行绘画。
地平线RDK实现智能循线机器人应用示例
巡线任务,即机器人小车能够自主跟着一条引导线向前运行。地平线RDK通过摄像头获取小车前方环境数据,图像数据通过训练好的CNN模型进行推理得到引导线的坐标值,然后依据一定的控制策略计算小车的运动方式,通过UART向小车下发运动控制指令实现整个系统的闭环控制。
基于RDK X3 & Module的性能检测软件使用示例
Performance Node该应用基于Web网页打造,无论是什么品牌的电脑和手机,只需要在浏览器访问即可。
RDK X3 机械臂捡垃圾经验分享
hobot_arm package 是基于 mono2d_trash_detection package 开发的2D垃圾目标检测+机械臂抓取的应用示例。在地平线的旭日X3派上利用BPU进行模型推理获得感知结果,利用幻尔机械臂作为下位机,进行垃圾抓取的示例。
2D垃圾检测应用示例
本Node是基于hobot_dnn开发的2D垃圾目标检测算法,采用PaddlePaddle开源框架, 利用PPYOLO模型进行垃圾检测任务设计和训练。为了达到快速部署的目的,本Node支持配置文件更换垃圾检测模型,开发者可以将更多精力投入在算法模型能力的迭代,减少部署工作量,识别输出的AI信息不仅可以通过话题发布,还可以在Web页面渲染显示。
在RDK的系统运行实现视觉惯性里程计应用案例,实现机器人定位
视觉惯性里程计(Visual Inertial Odometry,VIO)是融合相机与惯性测量单元(Inertial Measurement Unit,IMU)数据实现机器人定位的算法。VIO定位算法具有成本低、适用环境广等优点,在室外环境下能够有效弥补卫星定位中遮挡、多路径干扰等失效场景。优秀、鲁棒的VIO算法是实现室外高精度导航定位的关键。
OriginBot机器人最小功能系统的机器人底盘驱动应用实例
OriginBot是一款智能机器人开源套件,更是一个社区共建的开源项目,旨在让每一位参与者享受机器人开发的乐趣。该项目是OriginBot机器人最小功能系统,该最小系统可接受/cmd_vel指令控制机器人运动并反馈/Odom信息。
在RDK系统上运行实现的小车巡线控制功能
该功能包通过同时接收赛道识别节点与障碍物识别节点的消息,控制小车巡线与避障。
NodeHub包含各种开源Node,能够快速安装和使用 ,助您快速搭建室内服务机器人Demo!
NodeHub是地平线为广大开发者提供给的“智能机器人应用中心”,该应用中心中包含各种不同功能的开源Node,能够快速安装和使用,通过串联不同的Node可以完成室内服务机器人的搭建。该Demo包含了室内服务机器人所需的基础功能,包括地图建立、自主导航、垃圾检测以及人体骨骼关键点检测等,有助于您快速搭建室内服务机器人!
乐动激光雷达驱动功能应用示例
乐动激光雷达驱动设计方案介绍,LDLIDAR ROS2驱动,以ROS2标准消息格式发送激光雷达数据。
电子商城
登录 | 立即注册
提交评论