拓冰建站拓冰建站
首页 / 资讯中心 / 正文

自动驾驶轮椅技术解析:从SLAM到路径规划的室内自主导航实践

1. 从“自动驾驶汽车”到“自动驾驶轮椅”一个被忽视的蓝海最近几年自动驾驶汽车Self-driving Car的概念已经火到不行从科技巨头到传统车企都在这个赛道上疯狂投入。但不知道你有没有发现当我们谈论“自动驾驶”时几乎所有的目光都聚焦在“车”上——那些在公路上飞驰的乘用车、卡车。然而有一个与普通人日常生活更近、需求更刚性、技术实现路径可能更清晰的领域却长期被主流讨论所忽视那就是自动驾驶轮椅Autowheelchair。我第一次意识到这个领域的潜力是在一次科技展上。一个初创团队展示了一台改装过的电动轮椅它能在室内复杂环境下自主导航避开行人和障碍物甚至能“召唤”到使用者身边。现场一位行动不便的体验者仅用语音指令就完成了从A点到B点的移动整个过程流畅得令人惊讶。那一刻我就在想为什么我们总想着让汽车在高速上自己跑却很少关注那些连从卧室到客厅都困难的人如何获得最基本的移动自由Autowheelchair或者说智能导航轮椅本质上是一个微缩化、低速化的自动驾驶系统。它要解决的核心问题不是“从城市A到城市B”而是“从沙发到餐桌”、“从病房到护士站”、“从家门口到小区花园”。这个场景看似简单实则对安全性、可靠性、环境适应性的要求极高因为它的使用者往往是身体最为脆弱的人群。今天我就想抛开那些宏大的自动驾驶叙事深入聊聊这个“小而美”的领域它的技术内核是什么现有的方案走到了哪一步以及一个开发者或爱好者如果想动手做一个可能会遇到哪些实实在在的坑。2. Autowheelchair的技术栈拆解不止是“小号自动驾驶汽车”很多人可能会觉得给轮椅加上自动驾驶不就是把特斯拉那套系统等比例缩小吗这个想法既对也不对。对的地方在于其核心的技术模块确实是相通的感知、定位、规划、控制。不对的地方在于每一个模块在轮椅这个特定场景下都面临着截然不同的挑战和优化方向。2.1 感知系统厘米级精度的“微操”自动驾驶汽车在路上跑感知范围动辄上百米主要识别车辆、行人、车道线、交通标志等宏观目标。而Autowheelheelchair的工作环境通常是室内或拥挤的室外小径它的“敌人”是突然滚过来的皮球、低矮的茶几腿、半开的房门、地面微小的落差比如门槛甚至是垂落下来的窗帘。传感器选型与融合策略激光雷达LiDAR在汽车上是标配但在轮椅上就需要权衡。多线机械式激光雷达成本高、体积大。单线激光雷达成本低但只能获取一个水平切面的信息会漏掉低矮或悬空的障碍物。目前更实用的方案是使用固态或小视场角的低成本2D激光雷达主要用于避障和构建2D地图。视觉传感器摄像头必不可少。广角摄像头用于全景感知识别门、人、家具等语义信息。深度摄像头如Intel RealSense Orbbec系列在近距离5米内能提供丰富的3D点云对于识别不规则物体、判断地面平整度至关重要。但视觉对光照变化敏感夜间或光线昏暗的走廊是挑战。超声波传感器成本极低用于最后一道防线的近距离几厘米到几米探测特别适合检测玻璃、镜面等激光雷达和视觉可能失效的物体。融合逻辑轮椅的算力有限不能像汽车那样做复杂的多传感器前融合。更常见的策略是分层决策超声波负责紧急制动激光雷达构建实时2D障碍地图用于路径规划视觉系统进行语义识别这是门可以打开通过这是人需要礼貌避让或跟随和辅助定位。一个关键的感知挑战动态狭窄通道通行。 这是和汽车场景最大的不同。汽车遇到狭窄通道如施工路段通常会减速或等待。而轮椅经常需要穿过比自身宽度宽不了多少的门框。这里的感知不仅要判断“能不能过”还要精确计算“以什么姿态过”。需要融合轮式编码器里程计、IMU惯性测量单元和视觉数据实时估算轮椅与门框两侧的精确距离并微调行进角度。我们团队在早期测试时就发生过轮椅侧边护板刮擦门框的尴尬情况后来通过给轮椅轮廓建立精确的碰撞模型并在规划器中加入“安全膨胀层”才解决。2.2 定位与建图没有GPS的室内“导航术”自动驾驶汽车严重依赖高精GPSIMU高精地图。而Autowheelchair的主战场——室内是GPS的盲区。SLAM同步定位与建图是唯一选择。但用哪种SLAM激光SLAM基于2D激光雷达的SLAM如Gmapping, Cartographer成熟稳定在结构化的室内环境走廊、房间中建图精度高是主流选择。但它对特征少的长走廊或动态物体多的环境如人来人往的客厅容易退化。视觉SLAMVSLAM如ORB-SLAM系列能提供丰富的场景信息辅助语义理解。但纯视觉SLAM在快速运动、光照剧变时容易丢失且尺度可能漂移。对于轮椅这样运动较慢的平台VSLAM是一个很好的补充。多传感器融合SLAM这是目前最实用的方案。我们采用的是一种紧耦合方式以激光雷达的扫描匹配提供稳定、准确的2D位姿估计同时用视觉里程计VO来估计尺度并辅助解决激光在特征重复环境如一模一样的病房门下的匹配歧义。IMU则用于在激光雷达数据间断如快速转弯时点云畸变时提供短时间的姿态预测。地图的维护与更新。家庭或医院环境并非一成不变。今天客厅里多放了一把椅子明天病房门口停了一辆送药车。因此Autowheelchair不能只依赖一张静态地图。它需要具备动态障碍物过滤通过多帧数据关联将人、移动的宠物等临时障碍物从地图中剔除避免它们被当作永久障碍物而影响全局路径规划。地图在线更新检测到环境中出现了新的、长期存在的静态物体如新添的家具可以将其加入到长期地图中。这通常需要一个“可信度”机制只有被多次观测到的稳定物体才会被纳入。2.3 路径规划与控制舒适性高于一切汽车的路径规划关注的是效率、交规和乘员舱的舒适性。轮椅的规划则必须把使用者的生理和心理感受放在首位。全局规划给定一个目标点如“去厨房”规划器如ROS中的global_planner常用A*、D*算法会在地图上找出一条无碰撞的路径。但这里的关键是路径的“可执行性”。一条穿过客厅中央的直线最短但可能需要急转弯绕过多个椅子腿。更好的路径可能是沿着墙边行走虽然距离长但转弯更平缓给使用者的安全感更强。局部规划与动态避障这是核心中的核心。轮椅需要实时处理未知的、动态的障碍物。算法选择DWA动态窗口法和TEB时间弹性带是ROS社区最常用的局部规划器。DWA简单快速适合计算资源有限的场景。TEB则更优它不仅仅考虑“现在怎么躲”还考虑未来一段时间的轨迹优化能让轮椅的运动更加平滑、可预测。对于轮椅使用者来说一个突然的、剧烈的转向或刹车可能会引起不适甚至恐慌。TEB通过优化整个轨迹段能产生更柔和的运动。人性化参数调优这是调参的深水区也是体现工程经验的地方。最大速度与加速度必须设置得非常保守。我们一般将最大线速度限制在0.8米/秒以内加速度低于0.3米/秒²。启动和停止要做到“无感”。与人的交互当规划路径上出现行人时轮椅不应该像机器人一样僵硬地等待或绕行。更好的策略是减速、轻微调整路径以示“意图”如果行人没有让路则礼貌停止。这需要感知模块能识别“人”并判断其运动意图。特殊场景处理比如在门口遇到对面来人谁先过一个简单的策略是让轮椅主动后退到更宽敞的区域显示谦让。这需要在上层行为逻辑中实现。运动控制底层控制器负责将规划器输出的速度指令线速度、角速度转化为左右轮的电机的转速差。对于差速驱动的轮椅这部分相对成熟。但要注意电机响应特性、轮子打滑的补偿。我们曾遇到在光滑地砖上转弯时因一侧轮子打滑导致定位严重偏移的情况后来通过融合IMU数据对航向进行校正来解决。3. 从零搭建一个Autowheelchair原型机的实践指南如果你是一名机器人爱好者或嵌入式开发者想亲手打造一台Autowheelchair原型机下面是一个基于ROS机器人操作系统的、相对可行的技术实现路径和踩坑实录。3.1 硬件平台选型与改装基础车体选择一款成熟的电动轮椅底盘或大功率差速驱动机器人底盘。关键指标载重能力需考虑使用者体重加系统重量、电机扭矩影响爬坡能力室内门槛通常有1-2厘米高、电池容量决定续航建议能支持全天工作。计算单元这是大脑。不建议直接用树莓派算力不足以流畅运行SLAM和视觉处理。推荐入门级NVIDIA Jetson Nano 或 Orin Nano。能流畅运行2D激光SLAM和基础的视觉节点。推荐级NVIDIA Jetson AGX Orin32GB版本。它有足够的算力来同时运行多传感器融合SLAM、实时视觉语义分割用于识别门、椅子等和复杂的规划算法为后续功能扩展留足空间。传感器套件约1-2万元人民币预算的性价比方案激光雷达 Slamtec的RPLIDAR A系列如A1或YDLIDAR的G系列。价格在千元级别性价比高。深度摄像头 Intel RealSense D435i。它同时提供RGB图像、深度图和IMU数据对室内三维感知和VSLAM支持很好。超声波传感器 HC-SR04模块成本极低在轮椅四周均匀布置4-6个。IMU 如果深度相机不自带可以单独购买一个JY901B这样的模块用于提供姿态和角速度信息。主控与电机驱动 根据底盘选择可能需要额外的电机控制器如RoboMaster的C620来接收ROS的速度指令并控制电机。一个真实的坑供电系统。传感器、计算单元、电机驱动都需要不同的电压5V 12V 24V。一台运行Jetson Orin和多个传感器的系统峰值功耗可能超过60W。你必须设计一个多路输出的稳压电源模块并确保电池有足够的容量和放电能力。我们第一个原型机就因电源设计不合理导致在高负载时Jetson板子重启SLAM过程直接中断。3.2 软件框架搭建与核心算法部署操作系统与ROS在Jetson上安装Ubuntu 20.04/22.04 LTS然后安装ROS Noetic或ROS2 Humble。ROS1生态更成熟资料多ROS2在实时性和分布式上更有优势但部分包可能不完善。对于原型开发我建议先从ROS Noetic开始。核心功能包部署驱动层编写或使用现成的包来发布激光雷达、摄像头、IMU的数据到ROS话题。SLAM层使用cartographer_ros或gmapping进行2D建图。cartographer回环检测能力更强适合大范围场景。同时运行rtabmap_ros。这是一个强大的基于视觉/激光的3D SLAM和建图包它不仅能提供定位还能生成带颜色的3D点云地图对于后续的语义理解非常有帮助。通过robot_pose_ekf或imu_filter_madgwick包融合激光里程计、视觉里程计和IMU数据得到一个更稳定平滑的odom里程计话题。导航层move_base是ROS中经典的导航框架。你需要为其配置代价地图costmap_2d。全局代价地图基于静态SLAM地图生成。局部代价地图实时融合激光、深度相机和超声波数据生成机器人周围的障碍信息。规划器配置将局部规划器设置为teb_local_planner。然后开始漫长的调参过程重点调整与速度、加速度、轨迹采样相关的参数目标是让轮椅运动平滑如老司机。人机交互层最简单的在另一台电脑或平板上运行ROS的rviz可视化工具点击“2D Nav Goal”来设定目标点。更友好的开发一个简单的手机App或网页界面通过Wi-Fi与ROS桥接实现一键召唤、定点送人、巡点等功能。第二个大坑坐标变换TF树。这是ROS机器人中最容易出错的地方。你必须清晰地定义所有传感器和机器人底盘之间的坐标关系x, y, z, roll, pitch, yaw并通过static_transform_publisher或 URDF 文件正确发布。如果激光雷达装歪了5度那么建出来的地图就是斜的规划出的路径会直接撞墙。务必用rviz的 TF 显示功能反复检查每个坐标系的关系是否正确。3.3 功能测试与安全冗余设计在空场地完成基本导航后需要进入复杂的真实环境测试。场景化测试狭窄通道穿越测试不同宽度门框从比轮椅宽10厘米开始的通过成功率。动态避障让人在轮椅前方不规则走动测试其避让的流畅性和安全性。地面材质变化从地板到地毯摩擦系数变化可能导致轮子打滑测试定位是否稳定。光照变化从明亮客厅进入昏暗走廊测试视觉相关的功能是否退化。安全是生命线必须设计多层安全冗余。软件急停在ROS中设置一个独立的“急停”话题任何节点检测到危险如超声波检测到极近障碍物都可以发布该消息move_base会立即停止所有运动。硬件急停必须有一个物理急停按钮直接切断电机驱动板的电源优先级高于任何软件。“看门狗”机制主控程序需要有一个心跳监测如果核心节点如move_base意外崩溃看门狗应能触发安全停止或切换到遥控模式。手动接管任何时候使用者通过摇杆或App发出的手动指令优先级都应高于自动驾驶指令实现无缝接管。4. 超越基础导航Autowheelchair的进阶可能性与伦理思考当基础的A点到B点导航实现后Autowheelchair的想象空间才真正打开。它不再只是一个交通工具而是一个移动的智能辅助平台。4.1 场景化智能功能拓展语义导航与场景理解通过训练一个轻量级的图像识别模型可以部署在Jetson上让轮椅能识别“厨房”、“卧室”、“卫生间”的门牌或场景特征。用户可以直接说“去厨房”而无需在地图上点击坐标。识别“椅子”、“桌子”、“床”等物体并理解其关系。当用户说“到桌子旁边”时轮椅能自主规划一条到达桌子旁合适位置如不影响拉出椅子的路径。人机协同与跟随主动跟随模式利用视觉识别特定的人如照护者并保持安全距离跟随。这在超市、公园等场景非常实用。技术上需要结合人体检测、跟踪如使用ROS的people包或darknet_ros和局部规划。社交导航让轮椅在人群中移动时不仅避障还能遵循一些基本的社交规则比如不紧贴陌生人身后、在狭窄空间侧身示意等。这需要更复杂的行为树Behavior Tree来管理不同场景下的决策逻辑。健康监测与紧急响应集成生物传感器如心率带、血氧仪将数据通过轮椅上的计算单元实时分析。一旦检测到异常如心率骤变可自动导航至最近的安全点如靠墙并发出警报或直接联系预设的紧急联系人。与智能家居联动。轮椅可以作为一个移动的控制终端在行走到不同房间时自动打开灯光、调节空调温度。4.2 无法回避的伦理与责任难题技术实现固然激动人心但当我们把这样一个自主系统交给一位行动不便的老人或残障人士时责任问题变得无比沉重。安全边界的界定如何定义“绝对安全”是99.9%的避障成功率还是99.999%在极端 corner case如一个小孩突然从视觉盲区跑出下系统该如何决策是紧急制动可能导致使用者因惯性前倾受伤还是尝试规避可能造成其他风险这需要大量的、近乎残酷的测试和算法优化。责任归属如果一台自动驾驶轮椅发生了意外导致使用者或他人受伤责任方是谁是算法开发者、硬件制造商、系统集成商还是最终进行安全确认的护理人员目前的法律法规在这一块几乎是空白。开发原型用于研究是一回事产品化推向市场则是另一回事必须与保险、法律专家早期介入。隐私与数据轮椅上的摄像头、激光雷达持续扫描着使用者的家庭环境这些数据涉及高度隐私。数据是在本地处理还是上传云端如何加密和存储用户是否拥有完全的控制权和知情权这是产品设计初期就必须构建的信任基石。情感与信任使用者是否愿意将自身的移动自由完全托付给一台机器建立这种信任需要时间也需要系统具备极高的可靠性和透明性。例如在做出避障或绕行决策时能否通过简单的语音或界面提示告知使用者“前方有障碍我将向右绕行”而不是默默地执行一个令人费解的动作。从我个人的实践来看Autowheelchair不是一个炫技的玩具而是一个需要倾注极大责任心的人文科技产品。每一次代码提交、每一次参数调整都可能直接影响一个真实个体的生活质量与安全。它要求开发者不仅是工程师更要成为深刻的理解者和共情者。技术终将进步成本终会下降但在这个过程中对安全的极致追求、对使用者的尊重才是这个领域最核心、最宝贵的价值。
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门