目录
一、JTX1与服务器配置
JTX1的准备
0、前期准备
在JTX1上安装好ubuntu16.04系统,调整无线网卡驱动。利用turtlebot接变压器向JTX1供电。再合适的位置固定好雷达,利用充电宝供电即可。安装ssh。
1、ROS安装包配置
需要在移动端安装的软件有:
sudo apt-get install ros-kinetic-navigation
sudo apt-get install ros-kinetic-hector-slam
sudo apt-get install ros-kinetic-octomap-server
sudo apt-get install ros-kinetic-kobuki
sudo apt-get install ros-kinetic-octomap-rviz-plugins
sudo apt-get install ros-kinetic-vision-opencv
sudo apt-get install ros-kinetic-depth-image-proc
sudo apt-get install ros-kinetic-joy
之后按照(上)的内容,在工作空间内编译驱动。并在src目录下新建/navigation/fake_localization目录,在目录下wget所需文件
wget https://raw.githubusercontent.com/ros-planning/navigation/1.14.2/fake_localization/fake_localization.cpp
wget https://raw.githubusercontent.com/ros-planning/navigation/1.14.2/fake_localization/CMakeLists.txt
wget wget https://raw.githubusercontent.com/ros-planning/navigation/1.14.2/fake_localization/package.xml
最后解压缩8号实验的代码到src文件夹下,合并同名目录。回到工作空间
catkin_make
添加source语句到~/.bashrc或~/.zshrc。
2、网络配置
在~/.bashrc或~/.zshrc(取决于你使用的shell)当中添加:
export ROS_MASTER_URI=http://localhost:11311
export ROS_IP=<IP_OF_Jtx1>
这是因为我们最终只启动一个roscore,是在移动端启动的。
到此JTX1端准备完毕。确保充电宝打开,ttyACM0和ttyACM1串口拥有读写权限。
服务器准备
1、ROS安装包准备
与移动端完全相同。
2、网络配置
在~/.bashrc或~/.zshrc(取决于你使用的shell)当中添加:
export ROS_MASTER_URI=http://<IP_OF_Jtx1>:11311
export ROS_IP=<IP_OF_Server>
安装。
二、代码测试
1、初始化
在服务器端ssh登录移动端,初始化turtelbot
ssh <user_name>@xxx.xxx.xxx.xxx
roslaunch turtlebot_bringup minimal.launch mmwave_device:=1443
初始化成功后turtelbot会发出愉悦的声音。
2、启动建图程序
新开一个终端,ssh登陆移动端
ssh <user_name>@xxx.xxx.xxx.xxx
roslaunch turtelbot_mmwave_launchers radar_mapping.launch
在启动该命令的时候雷达就已经开始建图了,所以在执行命令前就需要将机器人放在合适的位置上。
3、启动远程控制
新开一个终端,在服务器端启动远程操作节点
roslaunch turtlebot_teletop keyboard_teleop.launch
4、可视化建图效果
新开一个终端,在服务端启动rviz查看实时的建图结果
rosrun rviz rviz -d <path>/mapping_visualization.rviz
三、结果
控制机器人在实验室跑了一圈之后,得到建图。注意保存地图命令时,以“名称.格式”即可,不要加路径,否则会保存失败。