CN113253719A - 基于ros操作系统的智能移动设备及通信建立方法 - Google Patents
基于ros操作系统的智能移动设备及通信建立方法 Download PDFInfo
- Publication number
- CN113253719A CN113253719A CN202110368966.0A CN202110368966A CN113253719A CN 113253719 A CN113253719 A CN 113253719A CN 202110368966 A CN202110368966 A CN 202110368966A CN 113253719 A CN113253719 A CN 113253719A
- Authority
- CN
- China
- Prior art keywords
- upper computer
- remote control
- information
- ros
- control end
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000004891 communication Methods 0.000 title claims abstract description 34
- 230000008569 process Effects 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 11
- 230000000007 visual effect Effects 0.000 claims description 11
- 238000005259 measurement Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 9
- 230000009471 action Effects 0.000 claims description 7
- 238000012800 visualization Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000007613 environmental effect Effects 0.000 claims description 6
- 230000001133 acceleration Effects 0.000 claims description 4
- 230000033001 locomotion Effects 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 4
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 claims description 3
- 229910052802 copper Inorganic materials 0.000 claims description 3
- 239000010949 copper Substances 0.000 claims description 3
- 238000009434 installation Methods 0.000 claims description 3
- 238000004088 simulation Methods 0.000 claims description 3
- 230000003068 static effect Effects 0.000 claims description 3
- 230000001502 supplementing effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 abstract description 35
- 238000013461 design Methods 0.000 abstract description 3
- 239000003642 reactive oxygen metabolite Substances 0.000 description 49
- 238000005516 engineering process Methods 0.000 description 10
- 240000007651 Rubus glaucus Species 0.000 description 3
- 235000011034 Rubus glaucus Nutrition 0.000 description 3
- 235000009122 Rubus idaeus Nutrition 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 229910000838 Al alloy Inorganic materials 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 239000000956 alloy Substances 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0242—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明公开一种基于ROS操作系统的智能移动设备,包括:底盘、下位机、红外传感器、温湿度传感器、蜂鸣器、电动机、舵机、编码器、IMU、车轮、上位机、激光雷达、摄像头、排线、电源、电源开关和远程控制端;采用了ROS操作系统,运用分布式架构的设计思想,实现将机器人的功能和软件,做成一个个节点,然后每个节点通过话题进行沟通;用了ROSjava协议作为主要通讯协议,实现了与上位机ROS操作系统通信的完美协调;适用于任何需要对移动设备进行自主控制和智能控制的场景。
Description
技术领域
本发明涉及智能移动设备技术、Android设备以及WIFI物联网应用领域,尤其涉及一种基于ROS操作系统的智能移动设备以及远程通信建立方法。
背景技术
目前,在企业生产技术不断提高、对自动化技术要求不断加深的环境下,智能移动设备以及在智能移动设备基础上开发出来的产品已成为自动化物流运输、柔性生产组织等系统的关键设备。世界上许多国家都在积极进行智能移动设备的研究和开发设计。移动机器人是机器人学中的一个重要分支,出现于20世纪初。当时斯坦福研究院(SRI)的NilsNilssen和charles Rosen等人,在1966年至1972年中研制出了取名shakey的自主式移动机器人,目的是将人工智能技术应用在复杂环境下,完成机器人系统的自主推理、规划和控制。智能移动设备是一个集环境感知、规划决策,自主导航等功能于一体的综合系统,它集中地运用了计算机、传感、信息、通信、导航及白动控制等技术,是典型的高新技术综合体。
在现有技术中,对底层电机的控制回路大都只有编码器一种,严重影响了导航精度和定位准确性。而在本技术中,同时采用编码器和IMU两种器件,对其融合信息进行处理,以修补单一器件带来的误差。
现有技术中,大都通过手柄,键盘等外设控制移动设备运动,增加了制作成本和材料损耗同时限制了使用场景。尽管存在PC远程控制移动设备的方法,但控制难度较大,操作门槛太高。本技术提供了一种远程控制移动设备的方法,通过Android端接收发送数据,查看移动设备信息和控制设备运动。
现有技术中蓝牙通信的远程通信方法具有效率低,传输范围近等缺陷。
发明内容
本发明实施例公开了一种基于ROS操作系统的智能移动设备及通信建立方法,能够在简化硬件设备条件的情况下实现对智能移动设备的控制以及智能移动设备自主建图导航。
本发明所采用的技术方案是:
一种基于ROS操作系统的智能移动设备,包括:底盘、下位机、红外传感器、温湿度传感器、蜂鸣器、电动机、舵机、编码器、IMU、车轮、上位机、激光雷达、摄像头、排线、电源、电源开关和远程控制端;
底盘设置在车轮上,在底盘的中轴线垂直切面处放置激光雷达和摄像头,且激光雷达高于摄像头放置;
下位机通过排线分别连接电动机和舵机,电动机和舵机控制车轮的转动及调整方向;
编码器的连接电动机和下位机;
红外传感器、温湿度传感器、蜂鸣器均连接下位机;
IMU(Inertial Measurement Unit惯性测量装置)连接下位机;
上位机通过排线与下位机连接;
激光雷达和摄像头通过排线与上位机连接;
电源置于底盘上通过电源开关与下位机和上位机连接;
远程控制端与上位机无线连接。
底盘包括上层板和下层板,上层板和下层板之间通过竖直支架固定;
上层板和下层板之间留有空隙放置下位机、上位机、电动机、舵机、编码器、IMU、红外传感器、蜂鸣器、电源以及开关电源;
舵机设置在底盘前端两侧,电动机作为后轮驱动分置于底盘后端两侧;
上层板中间设置有第一切口和第二切口,温湿度传感器经由第一切口伸出,电源开关经由第二切口嵌入。
激光雷达使用铜柱支撑于移动设备最高水平线。
红外传感器的探测距离为0.02m-0.16m,红外传感器探测方式为直线测量;激光雷达为0.16m-13m的激光雷达,激光雷达扫描范围为周身360°;摄像头的视觉深度范围为0.6m-8m。
惯性测量装置(IMU)获取惯性误差信息;惯性误差信息通过加速度和角速度进行测量,按照牛顿惯性理论,预测下一时刻的位置,最终实现对电机的闭环控制;
使用红外传感器和激光雷达进行融合,获取障碍物距离信息并且采集位置信息;红外传感器用于补充激光雷达的探测范围,由于小车本体的存在导致激光雷达的探测距离需要做屏蔽处理,被屏蔽意外处理掉的地方使用红外传感器优化避障的功能;
激光雷达对移动设备的周边进行扫描采集环境障碍信息;
摄像头用于采集图像和视频信息;
编码器用于记录智能移动设备所移动的路程和速度信息;基于惯性误差信息用于修正移动设备的速度、角速度信息;
下位机接收和发送信息给上位机,同时对接收的信息进行处理并发送动作指令给电动机、舵机和蜂鸣器,并且在收集到温湿度传感器的信息后发送反馈信息给上位机;
上位机用于控制激光雷达和摄像头的启动停止,上位机接收到各个传感器的数据,发送给下位机,上位机与Android进行通信;传感器包括IMU、编码器、激光雷达、深度摄像机和温湿度传感器。
一种基于ROS操作系统的智能移动设备远程通信建立方法,包括:
步骤一、将上位机在Linux系统下配置Ubuntu环境,安装搭建ROS操作系统;
步骤二、控制上位机在ROS操作系统下安装功能包,功能包包括:发布订阅服务功能包、调用摄像头功能包、调用雷达功能包、导航功能包和建图功能包;
步骤三、在远程控制端(Android端)基于ROSjava通信协议搭建与上位机通信的环境,导入ROS相关库,添加ROS相关依赖,获取远程控制端的权限,远程控制端的权限包括网络权限、存储权限、唤醒权限以及后台运行权限;
步骤四、在上位机上运行ROS操作系统,将远程控制端根据IP地址与对应的ROS系统的移动设备连接;
步骤五、在远程控制端(Android端)选择当前操作模式,包括操作模式建图模式或者导航模式;当远程控制端选择建图模式,上位机打开建图节点进行slam建图,进入步骤六;当远程控制端选择导航模式,上位机打开导航节点进行导航,进入步骤七;
在远程控制端首先选择建图模式或者导航模式,远程控制端根据用户的选择,发送相应的指令给上位机;由上位机打开对应模式节点(包括建图节点和导航节点),再传回信息给远程控制端;
步骤六、远程控制端在接收到上位机传送的数据之后,转换成图片信息显示在远程控制端。在建图模式下,控制移动设备行动,建图的过程实时显示在远程控制端;
步骤七、在导航模式下,在完整地图下选取目标点,发送目标点信息给上位机,由上位机处理规划路径后,将指令发送给下位机,控制远程控制端与上位机按照ROSjava协议互相发布话题并订阅服务、运行服务和功能;远程控制端与上位机按照ROSjava协议进行远程通信,协议要求两端严格按照创建节点,发布话题和服务的要求搭建通信平台。本发明中上位机端发布的话题和服务包括:地图数据信息、摄像头信息、雷达信息、导航信息、环境信息以及其它信息;远程控制端的话题和服务包括:虚拟摇杆、可视化地图、模式切换、目标点信息以及其它信息。
所述步骤三具体包括以下步骤:
S31、在远程控制端配置ROS环境和ROS依赖,ROS依赖包括rosjava工具包、图片传输格式包和运动数据集包;
S32、在远程控制端安装导航功能包和建图功能包;
S33、在远程控制端配置订阅话题、开启服务、调用摄像头、调用雷达、运行建图节点、运行导航节点、虚拟摇杆和发布接收话题;节点是信息发送接收站,在信息发送接收站里提供多种话题,供接收者订阅,发布者创建。上位机和下位机通过节点机制交换信息。建图节点指建图模式中的信息发送接收站;导航节点指导航模式中的信息发送接收站;
S34、在上位机编写roscpp、rospy程序、脚本文件运行ROS的算法(包括Gmapping、Navigation),以及逻辑运算处理(逻辑运算处理包括Slam路径规划、障碍物判别和指令接收之后的各种动作);
S35、在上位机中安装移动设备建图和导航过程中需要的仿真工具、调试工具和可视化工具(可视化工具名称:rviz三维可视化平台);
步骤四中,远程控制端根据IP地址与对应的ROS系统连接包括显式连接模式和隐式连接模式:
显式连接模式通过输入静态IP地址,通过WIFI实现与ROS操作系统的连接,可以连接不同的ROS操作系统;隐式连接通过将IP地址嵌入远程控制端,固定IP地址不需要重复输入IP地址,连接一套ROS操作系统。
在建图模式下,上位机打开建图节点,并发布建图话题,远程控制端订阅建图话题获得建图过程可视化图像;当建图完成之后,远程控制端保存地图并发布相关信息的话题,上位机订阅所述话题调用保存地图的系统指令并返回结果;
在导航模式下,上位机打开导航节点,并发布地图话题,远程控制端订阅地图话题获得完整地图可视化图像;若干地图存在的情况下,远程控制端选择目标地图并发布相关话题,上位机订阅话题并返回对应地图话题名称。
远程控制端发布虚拟摇杆和调用摄像机的话题给上位机,上位机订阅发布虚拟摇杆和调用摄像机话题;同时上位机发布智能移动设备位姿话题,远程控制端订阅所述话题,远程实时监控智能移动设备当前的位置及朝向信息,实现远程监控以及定位导航。
话题是ros的通信方式,属于一种异步通信。话题内容是指令内容,发送方通过创建话题名并发送指令内容,接收方通过订阅约定好的话题名并获取指令内容采取行动。
与现有技术相比,本发明有的有益效果包括:
本发明公开一种基于ROS操作系统的智能移动设备,
并且由于zigbee协议所带来的近距离传输限制,减少了很多应用场景,故采用rosjava协议提升了传输距离,拓展了应用领域。本技术在Android环境下,导入rosjava包运用同名协议从Ros系统中接收和发布各种话题。
本发明包括的激光雷达,实现了SLAM建图功能、导航避障功能;
本发明包括的深度摄像机,实现了采集图像的功能;
本发明包括的传感器,实现了实时采集移动设备环境信息的功能;
本发明包括的编码器和IMU,实现了监测移动设备当前里程和加速度等信息的功能;
本发明包括的下位机,实现了处理传感器(包括编码器和IMU)采集到的数据的功能;
本发明包括的上位机,实现了自主规划路径、处理下位机补偿数据以及发送数据信息的功能;
本发明包括的远程控制端,实现了接收上位机数据信息以及发送指令信息的功能;本发明组件之间位置结构分层设置,连接过程解决排线避免数据冲突,兼容数据。
本发明一种基于ROS操作系统的智能移动设备通信建立方法,步骤采用了ROS操作系统,运用分布式架构的设计思想,实现将机器人的功能和软件,做成一个个节点,然后每个节点通过话题进行沟通;用了ROSjava协议作为主要通讯协议,实现了与上位机ROS操作系统通信的完美协调;本发明方法采用了数据融合技术,分析处理激光雷达和超声波的数据,判断障碍物的距离及大小信息;
现有技术大都需要连接个人电脑或工控机等大型上位机,而本发明提供了一种基于ROS操作系统的智能移动设备通信建立方法,控制设备变为智能机,携带方便,控制灵活。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的基于ROS操作系统的智能移动设备及远程通信建立方法的总体概括流程图;
图2为本发明实施例提供的基于ROS操作系统的智能移动设备及远程通信建立方法的具体实现流程图;
图3为本发明实施例提供的基于ROS操作系统的智能移动设备及远程通信建立方法的硬件框图;
图4为本发明实施例提供的基于ROS操作系统的智能移动设备的结构示意图。
具体实施方式
下面结合附图对本发明作更进一步的说明。
在本实例中,下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图3和4所示,一种基于ROS操作系统的智能移动设备,包括:底盘1、下位机2、红外传感器3、温湿度传感器4、蜂鸣器5、电动机6、舵机7、编码器8、IMU9、车轮10、上位机11、激光雷达12、摄像头13、排线14、电源15和电源开关16;
底盘1设置在车轮10上,在底盘1的中轴线垂直切面处放置激光雷达12和摄像头13,且激光雷达高于摄像头放置;
下位机2通过排线14分别连接电动机6和舵机7,电动机6和舵机7控制车轮10的转动及调整方向;
编码器8的输入输出端分别连接电动机(6)和下位机2;
红外传感器3、温湿度传感器4、蜂鸣器5均连接下位机2;
IMU9(Inertial Measurement Unit惯性测量装置)通过IIC(Inter-IntegratedCircuit内置集成电路)串口连接下位机2;
上位机11通过排线14与下位机2连接;本实施例中上位机为树莓派;
激光雷达12和摄像头13通过U通过排线14与上位机11连接;
电源15置于底盘1上通过电源开关16与下位机2和上位机11连接。
远程控制端与上位机11无线连接。
编码器8为500线、AB相的光电编码器;
IMU9采用三轴陀螺仪、三轴加速度计及三轴磁力计组合;下位机2采用STM32系列开发板;
上位机11采用树莓派4B+型;
底盘1包括上层板和下层板,上层板和下层板之间通过竖直支架固定,为由铝合金材料制造的上下两层;
上层板和下层板之间留有空隙放置下位机2、上位机11、电动机6、舵机7、编码器8、IMU9、红外传感器3、蜂鸣器5、电源15以及开关电源16;
舵机7设置在底盘前端两侧,电动机6作为后轮驱动分置于底盘后端两侧;红外传感器3为四个,四个红外传感器3分别安装在底盘四个端点附近;
上层板中间设置有第一切口和第二切口,温湿度传感器4经由第一切口伸出,电源开关16经由第二切口嵌入。
上层板中轴线上放置激光雷达12和摄像头13;
摄像头13和激光雷达12中点位于底盘中轴线上,激光雷达使用铜柱支撑于设备最高水平线;
红外传感器3的探测距离为0.02m-0.16m探测距离的,其探测方式为直线测量;使用0.16m-13m的激光雷达12,其扫描范围为周身360°;使用视觉深度范围为0.6m-8m的摄像头13,彩色FOV角:H66.1°、V40.2°;深度FOV角:H58.4°V45.5°;
IMU9获取惯性误差信息;惯性误差信息通过加速度和角速度的测量,按照牛顿惯性理论,预测下一时刻的位置,最终实现对电机的闭环控制;
使用红外传感器3和激光雷达12进行融合,获取障碍物距离信息并且采集位置信息;红外传感器用于补充激光雷达的探测范围,由于小车本体的存在导致激光雷达的探测距离需要做屏蔽处理,被屏蔽意外处理掉的地方使用红外传感器优化避障的功能;
激光雷达12对周边范围进行扫描采集环境障碍信息;
摄像头13用于采集图像和视频信息;
编码器8用于记录智能移动设备所移动的路程和速度信息;智能移动设备所移动的路程和速度信息是IMU采集到的信息,基于惯性误差信息用于修正移动设备的速度、角速度信息;
下位机2用于接收和发送信息给上位机,同时对接收的信息进行处理并发送动作指令给电动机、舵机和蜂鸣器,并且在收集到温湿度传感器的信息后发送反馈信息给上位机;
上位机11用于控制激光雷达12和摄像头13的启动停止,上位机11接收到各个传感器的数据,发送给下位机,与Android进行通信;传感器包括IMU、编码器、激光雷达、深度摄像机、温湿度传感器。
树莓派在Linux下安装ROS系统,使用ROS功能指令调用激光雷达12和摄像头13进行建图和导航。
本实施例在移动设备底盘加装控制芯片作为上位机和下位机,通过下位机的输出口控制底盘上的一对电机及舵机;两只编码器分别与两侧电机以及下位机相连形成闭环回路;装有Linux系统的设备作为上位机通过USB线与下位机的控制芯片通信;激光雷达与摄像头位于底盘中轴线竖直切面通过USB线连接至上位机;电源模块置于底盘尾部分压后分别给上位机与下位机供电;上位机安装WIFI模块,基于Android开发的应用通过WIFI与上位机通信。本发明适用于任何需要对移动设备进行自主控制和智能控制的场景。
如图1和2所示,一种基于ROS操作系统的智能移动设备远程通信建立方法,包括:
步骤一、将上位机在Linux系统下配置Ubuntu环境,安装搭建ROS操作系统;
步骤二、控制上位机在ROS操作系统下安装功能包,功能包包括:发布订阅服务功能包、调用摄像头功能包、调用雷达功能包、导航功能包和建图功能包;
步骤三、在Android端(远程控制端)基于ROSjava通信协议搭建与上位机通信的环境,导入ROS相关库,添加ROS依赖,获取远程控制端的权限,远程控制端的权限包括网络权限、存储权限、唤醒权限以及后台运行权限;
步骤四、在上位机上运行ROS操作系统,将远程控制端根据IP地址与对应的ROS系统的移动设备连接;
步骤五、在Android端(远程控制端)选择当前操作模式,包括操作模式建图模式或者导航模式;当Android端选择建图模式,上位机打开建图节点进行slam建图,进入步骤六;当Android端选择导航模式,上位机打开导航节点进行导航,进入步骤七;
在远程控制端首先选择建图模式或者导航模式,Android端根据用户的选择,发送相应的指令给上位机。由上位机打开对应模式节点(包括建图节点和导航节点),再传回信息给Android端
步骤六、远程控制端在接收到上位机传送的数据之后,转换成图片信息显示在Android端。在建图模式下,控制移动设备行动,建图的过程实时显示在Android端;
步骤七、在导航模式下,在完整地图下选取目标点,发送目标点信息给上位机,由上位机处理规划路径后,将指令发送给下位机,控制远程控制端与上位机按照ROSjava协议互相发布话题并订阅服务、运行服务和功能;远程控制端与上位机按照ROSjava协议进行远程通信,协议要求两端严格按照创建节点,发布话题和服务的要求搭建通信平台。本发明中上位机端发布的话题和服务包括:地图数据信息、摄像头信息、雷达信息、导航信息、环境信息以及其它信息;远程控制端的话题和服务包括:虚拟摇杆、可视化地图、模式切换、目标点信息以及其它信息。
步骤三具体包括以下步骤:
S31、在远程控制端配置ROS环境和ROS依赖,ROS依赖包括rosjava工具包、rojava_core、android_core、图片传输格式包和运动数据集包;
S32、在远程控制端安装导航功能包和建图功能包;
S33、在远程控制端配置订阅话题、开启服务、调用摄像头、调用雷达、运行建图节点、运行导航节点、虚拟摇杆和发布接收话题;节点是信息发送接收站,在信息发送接收站里提供多种话题,供接收者订阅,发布者创建。上位机和下位机通过节点机制交换信息。建图节点指建图模式中的信息发送接收站;导航节点指导航模式中的信息发送接收站;
S34、在上位机编写roscpp、rospy程序、脚本文件运行ROS的算法(包括Gmapping、Navigation),以及逻辑运算处理(逻辑运算处理包括Slam路径规划、障碍物判别和指令接收之后的各种动作);
S35、在上位机中安装移动设备建图和导航过程中需要的仿真工具、调试工具和可视化工具(可视化工具名称:rviz三维可视化平台);
Android引入和上位机ROS操作系统通信的协议和配置ROS依赖,,获取Android端的权限包括:网络权限、存储权限、唤醒权限以及后台运行权限。
步骤四中,远程控制端根据IP地址与对应的ROS系统连接包括显式连接模式和隐式连接模式:
显式连接模式通过输入静态IP地址,通过WIFI实现与ROS操作系统的连接,可以连接不同的ROS操作系统;隐式连接通过将IP地址嵌入远程控制端,固定IP地址不需要重复输入IP地址,连接一套ROS操作系统。
在建图模式下,上位机打开建图节点,并发布建图话题,Android端订阅建图话题获得建图过程可视化图像;当建图完成之后,Android端保存地图并发布相关信息的话题,上位机订阅所述话题调用保存地图的系统指令并返回结果;
在导航模式下,上位机打开导航节点,并发布地图话题,Android端订阅地图话题获得完整地图可视化图像;若干地图存在的情况下,Android端选择目标地图并发布相关话题,上位机订阅话题并返回对应地图话题名称。
Android端发布虚拟摇杆和调用摄像机的话题给上位机,上位机订阅发布虚拟摇杆和调用摄像机话题;同时上位机发布智能移动设备位姿话题,Android端订阅所述话题,远程实时监控智能移动设备当前的位置及朝向信息,实现远程监控以及定位导航。
话题是ros的通信方式,属于一种异步通信。话题内容是指令内容,发送方通过创建话题名并发送指令内容,接收方通过订阅约定好的话题名并获取指令内容采取行动。
以上仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组间可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组间组合成一个模块或单元或组间,以及此外可以把它们分成多个子模块或子单元或子组间。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如软盘、CD-ROM、硬盘驱动器或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明方法。
以示例而非限制的方式,计算机可读介质包括计算机存储介质和通信介质。计算机可读介质包括计算机存储介质和通信介质。计算机存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在计算机可读介质的范围之内。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
Claims (10)
1.一种基于ROS操作系统的智能移动设备,其特征在于,包括:
底盘(1)、下位机(2)、红外传感器(3)、温湿度传感器(4)、蜂鸣器(5)、电动机(6)、舵机(7)、编码器(8)、惯性测量装置(9)、车轮(10)、上位机(11)、激光雷达(12)、摄像头(13)、排线(14)、电源(15)、电源开关(16)和远程控制端;
底盘(1)设置在车轮(10)上,在底盘(1)的中轴线垂直切面处放置激光雷达(12)和摄像头(13),且激光雷达高于摄像头放置;
下位机(2)通过排线(14)分别连接电动机(6)和舵机(7),电动机(6)和舵机(7)控制车轮(10)的转动及调整方向;
编码器(8)的连接电动机(6)和下位机(2);
红外传感器(3)、温湿度传感器(4)、蜂鸣器(5)均连接下位机(2);
惯性测量装置(9)连接下位机(2);
上位机(11)通过排线(14)与下位机(2)连接;
激光雷达(12)和摄像头(13)通过排线(14)与上位机(11)连接;
电源(15)置于底盘(1)上通过电源开关(16)与下位机(2)和上位机(11)连接;
远程控制端与上位机(11)无线连接。
2.根据权利要求1所述的一种基于ROS操作系统的智能移动设备,其特征在于,底盘(1)包括上层板和下层板,上层板和下层板之间通过竖直支架固定;
上层板和下层板之间留有空隙放置下位机(2)、上位机(11)、电动机(6)、舵机(7)、编码器(8)、IMU(9)、红外传感器(3)、蜂鸣器(5)、电源(15)以及开关电源(16);
舵机(7)设置在底盘前端两侧,电动机(6)作为后轮驱动分置于底盘后端两侧;
上层板中间设置有第一切口和第二切口,温湿度传感器(4)由第一切口伸出,电源开关(16)由第二切口嵌入。
3.根据权利要求1所述的一种基于ROS操作系统的智能移动设备,其特征在于,激光雷达使用铜柱支撑于移动设备最高水平线。
4.根据权利要求1所述的一种基于ROS操作系统的智能移动设备,其特征在于,红外传感器(3)的探测距离为0.02m-0.16m,红外传感器(3)探测方式为直线测量;激光雷达(12)为0.16m-13m的激光雷达,激光雷达(12)扫描范围为周身360°;摄像头(13)的视觉深度范围为0.6m-8m。
5.根据权利要求1所述的一种基于ROS操作系统的智能移动设备,其特征在于:
惯性测量装置(9)获取惯性误差信息;惯性误差信息通过加速度和角速度进行测量,按照牛顿惯性理论,预测下一时刻的位置,最终实现对电机的闭环控制;
使用红外传感器(3)和激光雷达(12)进行融合,获取障碍物距离信息并且采集位置信息;红外传感器用于补充激光雷达的探测范围,由于小车本体的存在导致激光雷达的探测距离需要做屏蔽处理,被屏蔽意外处理掉的地方使用红外传感器优化避障的功能;
激光雷达(12)对移动设备的周边进行扫描采集环境障碍信息;
摄像头(13)用于采集图像和视频信息;
编码器(8)用于记录智能移动设备所移动的路程和速度信息;基于惯性误差信息用于修正移动设备的速度、角速度信息;
下位机(2)接收和发送信息给上位机,同时对接收的信息进行处理并发送动作指令给电动机、舵机和蜂鸣器,并且在收集到温湿度传感器(4)的信息后发送反馈信息给上位机(11);
上位机(11)用于控制激光雷达(12)和摄像头(13)的启动停止,上位机(11)接收到惯性测量装置、编码器、激光雷达、深度摄像头和温湿度传感器的数据,发送给下位机,上位机(11)与远程控制端进行通信。
6.一种基于ROS操作系统的智能移动设备远程通信建立方法,其特征在于,包括:
步骤一、将上位机在Linux系统下配置Ubuntu环境,安装搭建ROS操作系统;
步骤二、控制上位机在ROS操作系统下安装功能包,功能包包括:发布订阅服务功能包、调用摄像头功能包、调用雷达功能包、导航功能包和建图功能包;
步骤三、在远程控制端基于ROSjava通信协议搭建与上位机通信的环境,导入ROS相关库,添加ROS依赖,获取远程控制端的权限;
步骤四、在上位机上运行ROS操作系统,将远程控制端根据IP地址与对应的ROS系统的移动设备连接;
步骤五、在远程控制端选择当前操作模式,操作模式包括操作模式建图模式或者导航模式;当远程控制端选择建图模式,上位机打开建图节点进行slam建图,进入步骤六;当远程控制端选择导航模式,上位机打开导航节点进行导航,进入步骤七;
步骤六、远程控制端在接收到上位机传送的数据之后,转换成图片信息显示在远程控制端,在建图模式下,控制移动设备行动,建图的过程实时显示在远程控制端;
步骤七、在导航模式下,在地图上选取目标点,发送目标点信息给上位机,由上位机处理规划路径后,将指令发送给下位机,控制远程控制端与上位机按照ROSjava协议互相发布话题并订阅服务和运行服务。
7.根据权利要求6所述的基于ROS操作系统的智能移动设备远程通信建立方法,其特征在于,所述步骤三具体包括以下步骤:
S31、在远程控制端配置ROS环境和ROS依赖,ROS依赖包括rosjava工具包、图片传输格式包和运动数据集包;
S32、在远程控制端安装导航功能包和建图功能包;
S33、在远程控制端配置订阅话题、开启服务、调用摄像头、调用雷达、运行建图节点、运行导航节点、虚拟摇杆和发布接收话题;建图节点指建图模式中的信息发送接收站;导航节点指导航模式中的信息发送接收站;
S34、在上位机编写roscpp、rospy程序、脚本文件运行ROS的算法和逻辑运算处理;
S35、在上位机中安装移动设备建图和导航过程中需要的仿真工具、调试工具和可视化工具。
8.根据权利要求6所述的基于ROS操作系统的智能移动设备远程通信建立方法,其特征在于,
步骤四中,远程控制端根据IP地址与对应的ROS系统连接包括显式连接模式和隐式连接模式:
显式连接模式通过输入静态IP地址,通过WIFI实现与ROS操作系统的连接;隐式连接通过将IP地址嵌入远程控制端,连接一套ROS操作系统。
9.根据权利要求6所述的基于ROS操作系统的智能移动设备远程通信建立方法,其特征在于,
在建图模式下,上位机打开建图节点,并发布建图话题,远程控制端订阅建图话题获得建图过程可视化图像;当建图完成之后,远程控制端保存地图并发布建图信息的话题,上位机订阅所述话题调用保存地图的系统指令并返回结果;
在导航模式下,上位机打开导航节点,并发布地图话题,远程控制端订阅地图话题获得完整地图可视化图像;若干地图存在的情况下,远程控制端选择目标地图并发布地图话题,上位机订阅地图话题并返回对应地图话题名称。
10.根据权利要求8所述的基于ROS操作系统的智能移动设备远程通信建立方法,其特征在于,
远程控制端发布虚拟摇杆和调用摄像头的话题给上位机,上位机订阅发布虚拟摇杆和调用摄像头话题;同时上位机发布智能移动设备位姿话题,远程控制端订阅所述话题,远程实时监控智能移动设备当前的位置及朝向信息,实现远程监控以及定位导航。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110368966.0A CN113253719B (zh) | 2021-04-06 | 2021-04-06 | 基于ros操作系统的智能移动设备及通信建立方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110368966.0A CN113253719B (zh) | 2021-04-06 | 2021-04-06 | 基于ros操作系统的智能移动设备及通信建立方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113253719A true CN113253719A (zh) | 2021-08-13 |
CN113253719B CN113253719B (zh) | 2023-09-12 |
Family
ID=77220372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110368966.0A Active CN113253719B (zh) | 2021-04-06 | 2021-04-06 | 基于ros操作系统的智能移动设备及通信建立方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113253719B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113671963A (zh) * | 2021-08-23 | 2021-11-19 | 深圳市小二极客科技有限公司 | 机器人传输服务三端控制系统 |
CN117234139A (zh) * | 2023-11-10 | 2023-12-15 | 山东捷构信息科技有限公司 | 一种基于ros吊轨运载机器人的控制系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107607117A (zh) * | 2017-08-09 | 2018-01-19 | 华南理工大学 | 一种基于激光雷达的机器人建图导航系统及方法 |
CN111061266A (zh) * | 2019-12-12 | 2020-04-24 | 湖南大学 | 一种实时场景分析和空间避障的夜间值守机器人 |
CN111766879A (zh) * | 2020-06-24 | 2020-10-13 | 天津大学 | 一种基于自主协同导航的智能车编队系统 |
-
2021
- 2021-04-06 CN CN202110368966.0A patent/CN113253719B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107607117A (zh) * | 2017-08-09 | 2018-01-19 | 华南理工大学 | 一种基于激光雷达的机器人建图导航系统及方法 |
CN111061266A (zh) * | 2019-12-12 | 2020-04-24 | 湖南大学 | 一种实时场景分析和空间避障的夜间值守机器人 |
CN111766879A (zh) * | 2020-06-24 | 2020-10-13 | 天津大学 | 一种基于自主协同导航的智能车编队系统 |
Non-Patent Citations (1)
Title |
---|
苏博妮: ""基于 ROS 系统的室内移动机器人研究与设计"", 《计算机与数字工程》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113671963A (zh) * | 2021-08-23 | 2021-11-19 | 深圳市小二极客科技有限公司 | 机器人传输服务三端控制系统 |
CN117234139A (zh) * | 2023-11-10 | 2023-12-15 | 山东捷构信息科技有限公司 | 一种基于ros吊轨运载机器人的控制系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113253719B (zh) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Asadi et al. | An integrated UGV-UAV system for construction site data collection | |
Heng et al. | Autonomous obstacle avoidance and maneuvering on a vision-guided mav using on-board processing | |
Harapanahalli et al. | Autonomous Navigation of mobile robots in factory environment | |
CN113253719A (zh) | 基于ros操作系统的智能移动设备及通信建立方法 | |
CN106527439A (zh) | 一种运动控制方法和装置 | |
CN110849366A (zh) | 一种基于视觉和激光雷达融合的导航方法及系统 | |
KR20170071443A (ko) | 군집 로봇의 행위 기반 분산 제어 시스템 및 방법 | |
EP2715470A2 (en) | Vehicle navigation | |
AU2012260626A1 (en) | Vehicle navigation | |
Odelga et al. | A setup for multi-uav hardware-in-the-loop simulations | |
CN115499808A (zh) | 一种多个移动机器人间的两维地图信息共享方法 | |
Son et al. | The practice of mapping-based navigation system for indoor robot with RPLIDAR and Raspberry Pi | |
CN114571460A (zh) | 机器人控制方法、装置及存储介质 | |
Rioux et al. | Cooperative vision-based object transportation by two humanoid robots in a cluttered environment | |
CN111708283B (zh) | 一种机器人仿真方法、设备以及计算机可读存储介质 | |
CN116423515B (zh) | 一种多机器人的数字孪生控制系统及其定位与建图的方法 | |
Yu et al. | CSLAM and GPS based navigation for multi-UAV cooperative transportation system | |
Cella et al. | Fueling Glocal: Optimization-Based Path Planning for Indoor Uavs in AN Autonomous Exploration Framework | |
Kurdi et al. | Design and development of efficient guidance system using multifunctional robot with quadcopter | |
Cho et al. | Development of JAUS-compliant controller using Python | |
Wang et al. | Autonomous Navigation System for Indoor Mobile Robots Based on a Multi-sensor Fusion Technology | |
Dosoftei et al. | Real-Time Motion Control of an Electric Driven OMR using a ROS to Matlab Bridged Approach | |
Mohiuddin et al. | An Efficient Lidar Sensing System For Self-Driving Cars | |
Garcia-Rodriguez et al. | Autonomous Navigational System for an Industrial AGV using ROS and ZED Stereo Camera | |
CN112947903B (zh) | 面向教育无人机的基于Scratch的图形化编程系统、平台及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |