# openeuler 移植gmapping
**Repository Path**: wlzfly/ros_openeuler_gmapping
## Basic Information
- **Project Name**: openeuler 移植gmapping
- **Description**: No description available
- **Primary Language**: C++
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 3
- **Created**: 2021-07-18
- **Last Updated**: 2021-07-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# openeuler 移植gmapping
## 1. 环境要求
1) 操作系统版本:openEuler 20.03 LTS
2) 内核版本:4.19.90-2003.4.0.0036
3) 板卡(树莓派、RK3399)已经安装了 ROS Melodic,假设ROS安装在/root/devel_isolated下(如果安装在其他目录,需要修改下面的相应地方)
4) 板卡联网,假设板卡ip是192.168.10.106(需要把下面所有这个ip的地方替换成板卡的实际ip)
5) 电脑主机安装了ROS,假设电脑主机ip是192.168.10.105(需要把下面所有这个ip的地方替换成电脑主机的实际ip)
## 2. gmapping编译
#### 2.1 设置ros环境变量
```bash
$ vim ~/.bashrc
```
内容设置为
```
source /root/devel_isolated/setup.bash
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib64
export ROS_MASTER_URI=http://192.168.10.106:11311
export ROS_HOSTNAME=192.168.10.106
```
```bash
$ source ~/.bashrc
```
#### 2.2 workspace准备、源码下载和编译
```bash
$ mkdir -p /root/ws/src
$ cd /root/ws/src
$ catkin_init_workspace
$ git clone https://github.com/ros-perception/slam_gmapping.git
$ git clone https://github.com/ros-perception/openslam_gmapping.git
$ cd ..
$ catkin_make
```
#### 2.3 添加gmapping的环境变量
```bash
$ vim ~/.bashrc
```
内容设置为
```
source /root/devel_isolated/setup.bash
source /root/ws/devel/setup.bash
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib64
export ROS_MASTER_URI=http://192.168.10.106:11311
export ROS_HOSTNAME=192.168.10.106
```
```bash
$ source ~/.bashrc
```
## 3. gmapping运行测试
#### 3.1 修改配置
```bash
$ roscd gmapping
$ vim launch/slam_gmapping_pr2.launch
```
修改如下相应的配置
```
```
#### 3.2 下载bag文件[mylog.bag](files/mylog.bag)
#### 3.3 开启4个终端
4个终端如下图所示

从左上到右下,
1) 第1个终端在电脑主机端,需要配置如下环境变量,然后准备运行rviz。rviz里面查看时,添加map和LaserScan /robotxdj/laser/scan。
```bash
$ export ROS_MASTER_URI=http://192.168.10.106:11311
$ export ROS_IP=192.168.10.105
$ rosrun rviz rviz
```
2) 后3个终端在板卡端,分别运行
```bash
$ roscore
$ roslaunch gmapping slam_gmapping_pr2.launch
$ rosbag play --clock mylog.bag
```
#### 3.4 4个终端运行结果


