基于ROS 系统的智能垃圾清洁车

2022-03-09 01:50莫可钱超张婉怡
科学技术创新 2022年4期
关键词:舵机超声波摄像头

莫可 钱超 张婉怡

(哈尔滨理工大学电气学院,黑龙江 哈尔滨 150006)

近年我国各地纷纷推出垃圾分类政策,但由于市民的积极度不高,相关工作总是难以展开[1]。据统计数据分析,分类知识匮乏以及再分类存在的卫生健康隐患,是市民垃圾分类工作的两大障碍。为解决这一障碍,同时鼓励“互联网+”经济的发展,依托互联网、大数据等技术研发出的智能垃圾车是十分具有实用价值的。

市面上现行路径规划技术包括模板匹配路径规划法、地图构建路径规划法、人工势场路径规划法及人工智能路径规划。前三种方法过于依赖路径模板,对于有突现障碍物的动态电路应对能力差,易受不确定因素影响。本清洁车采用的是基于现代人工智能技术的动态窗口法。该方法不仅能有效改善前三种建图方法中出现的缺点,减少对环境因素的依赖,还高效应用于他所工作的实际情况,是目前最为实用化、系统化的路径规划技术[2-6]。

目前流行的识别技术有红外线识别、超声波识别、视觉识别。红外线与超声波识别虽然原理简单、成本不高,但容易受材料、噪音、温度等外界因素影响,而视觉感知技术相对来说抗干扰能力强,虽然需要较高技术支撑,但得到的信息资源也是最丰富的。本车利用Open CV 视觉识别能够高效地锁定目标物,识别其品类,在复杂多变的环境下仍能稳定运行[7-10]。

本设备不仅完全摆脱人力辅助,完成了从捡到分类再到清洁地面的一条龙服务,而且路线规划精简,环保节能。无需费力脏手,彻底解决家庭卫生问题。

1 硬件部分

硬件部分的主要功能是作为骨架支撑机器完成行动避障和捡拾清理的动作,主要由履带、雷达、车架、机器臂、垃圾箱、电动机、驱动板等六大部分组成。

图1 为清洁机器人整体仿真,由摄像头模块、机械手臂、履带、吸尘器四部分构成。摄像头模块采用Micro python 语言编程的摄像头Open CV 实现视觉传达与识别;机械手臂用来抓取、投放目标;履带可方便爬坡;如遇到地毯等障碍物时,超声波探测仪发出超声波被反弹,系统开始重新规划路线。

图1 机器人仿真概貌图

图2 为机器人零件组装图,小车主要由雷达、车轮、履带、车身、摄像头、电机、机械臂、芯片等部分组成。

图2 机器人仿真零件图

机器的驱动板是一款适用于Jetson Nanol 树莓派3B+/4B 的ROS 机器驱动板,具体部件如图3 所述。它的主要功能包含∶①稳压功能:可以将7-12V 的直流输入电压降压,可用于给主芯片或驱动马达等外部设备供电;②马达驱动:通过马达驱动芯片来驱动马达正转、反转、停止、加速、减速;③舵机驱动:驱动板带有8 路舵机驱动输出接口,在使用内部电压给舵机供电的情况下,可以同时驱动8 个5V 的PWM舵机。④传感器驱动∶驱动板上未被占用的通信口被直接引到了底下的Jetson Nanol 上,并以黄色插针标示,每组通信口均有5V 和GND 供电插针,分别以红色和黑色标示。⑤传感器数据采集:可采集包括马达转速、陀螺仪等关键数据。

图3 驱动板接口概览

2 软件部分

2.1 系统模块

机器的控制系统主要用于控制机器人前行轨迹使其能够灵敏避障,并正确判别及拾捡垃圾、清洁地面。采用ROS 系统为控制系统,无需重新开发已有的系统通,只需加入一些已有开源代码,就可以实现自己需要的功能。ROS 控制有以下几个优点:(1)程序可重复利用性。只需对开发部分进行修改,其余部分可以使用相关功能包来实现;(2)优秀的通信能力。可同时在一个框架内编写很多程序,并让其实现通信,例如:从传感器到舵机的传感程序;(3)多种开发工具平台。ROS 提供了二维绘图与三维绘图可视化工具RViz,可直接确定机器人模型,易于扩展到仿真实验;(4)优良的生态系统。ROS 能将现行多种硬件技术整合到一个操作系统中操作,各硬件的配合度远超其他系统。以ROS 系统搭建清洁车的基础框架,通过控制系统,清洁车将执行寻找垃圾、判别垃圾、前往拾取垃圾等步骤,如图4 所示。

图4 系统总控制过程图

2.2 识别模块

采取Micro python 语言语言编程的摄像头Open CV 和超声波技术进行识别。系统垃圾判别过程如下:机器人一边发出超声波一边循迹,根据超声波返回值的波动情况判断路线中是否存在垃圾,若波动值很大则说明发现垃圾,启动摄像头拍摄下图片。Open CV 通过算法将图像的外部轮廓、颜色等进行解析,将解析信息与系统库存储的特征数值进行比对,若相似度较高则判别为垃圾,并通过已建立的信息库对垃圾进行分类。为了达到理想的识别结果,我们要事先让机器进行神经网络学习。从而让机器根据已有的知识将垃圾进行分类。

2.3 路径规划模块

由以上推导出的轨道运动模型,我们可以根据众多采样速度数据推算最优轨迹。

已知在速度(v,w)的二维空间中,存在无穷多数值组。只有根据机器性能与环境因素的影响方能将采样速度控制在一定范围内。

为保证机器能在障碍物前停下,在最大减速度条件下,速度有一个范围:

2.4 定位导航模块

使用SLAM 模块进行定位和建图。SLAM 指的是将机器放入未知环境中的位置,机器能够一边移动一边绘制地图。定位是指机器在世界坐标系下具有三个自由度的位置信息。建图是建立机器人所感知周围环境的地图,地图基本几何元素是点,点没有方向,只有3 个自由度的位置。

小车利用激光雷达进行SLAM,激光雷达传感器利用光原理进行工作,可进行光探测和测距,它可以轻松探测到300 米以内的障碍物,并准确估计它们的位置。激光雷达每秒最多可以发射200 万个点,点云中的每个撞击点的精确(X,Y,Z)位置可以代表周边环境的真实情况。激光雷达进行扫描障碍物时通常分为4 个步骤:点云处理、点云分割、障碍聚类、边界框拟合。

SLAM 框架如图5 所示,整个系统由前端、后端和回环检测组成。

图5 SLAM 流程图

2.5 机械臂抓取

采用可视化应用RViz 将指令信息进行可视化表达,以3D 图像的方式将ROS 消息展现出来。该应用可以通过建模来直观体现出雷达传感器感知的目标距离,或是从Open CV已拍摄图像值中预估出小车距其距离从而控制机械臂的抓取。在ROS 中,机器以URDF 描述RViz 生成的三维模型,每个模型可以根据自由度进行移动或驱动,从而可以通过控制模型移动来仿真机械臂的各种抓取动作。例如,当需要抓取一个塑料瓶时,RViz 会分析摄像图片和雷达传感器中的距离信息与物品摆放的方位,从而根据已有的URDF 模型进行优化,从而执行抓取。

3 结论

本文设计了一种自带机械臂的智能垃圾清洁车。该设备以ROS 为框架形成一套运作良好的Python 语言编程系统。智能车凭借电力可完成室内导航循迹、垃圾的自动识别与捡拾等基本操作。为用户日常生活中的垃圾分类和卫生清洁提供了极大的便利。

猜你喜欢
舵机超声波摄像头
浙江首试公路非现场执法新型摄像头
摄像头连接器可提供360°视角图像
含齿隙弹载舵机的全局反步模糊自适应控制
蝙蝠的超声波
基于Niosll高精度超声波流量计的研究
基于dsPIC单片机的飞艇舵机控制实现
基于高速同步485总线通信的多通道舵机控制器设计
蝙蝠的超声波
超声波流量计的研究
奔驰360°摄像头系统介绍