Dashgo-D1 带陀螺仪的建图导航

2023-05-16

PathGo 导航模块的默认固定 IP 是 192.168.31.200 ,默认用户名为 eaibot , 默认密码为 eaibot 。

D1与F4的坐标系已经校准正确的情况下

扫描建图

  打开一个终端,ssh登录导航模块并启动建图launch

  $ ssh eaibot@192.168.31.200
  $ roslaunch dashgo_nav gmapping_demo_imu.launch

  打开另一个终端,启动 rviz,查看建图效果

  $ export ROS_MASTER_URI=http://192.168.31.200:11311 
  $ roslaunch dashgo_rviz view_navigation.launch

  通过 EAI 团队开发的手机 APP 控制小车移动建图,目前仅支持 Android。

  在 APP 启动界面,选择 “WIFI” 便进入到WiFi连接界面,如下图所示:

  这里写图片描述

  需要输入的 Master IP 是导航模块的 IP 地址,即 192.168.31.200。

  然后点击 连接

  连接成功后,界面如下:

  这里写图片描述

  方向的操控,如下图所示:

  这里写图片描述

保存地图

  打开一个终端,ssh登录导航模块,切换到地图保存地址并使用 map_server 对已经建好的地图进行保存

  $ ssh eaibot@192.168.31.200
  $ roscd dashgo_nav/maps
  $ rosrun map_server map_saver -f retest_map

  注意:retest_map 为自定义地图名,若与已保存地图名称同名,便覆盖原来的地图信息。

自主导航

  在已经启动 gmapping_demo_imu.launch 的终端,Ctrl + C 关闭 gmapping_demo_imu.launch 程序

  切换到 launch 文件目录,使用 vim 修改 navigation_demo_imu.launch 文件,引用已经保存好的地图

  $ roscd dashgo_nav/launch
  $ vim navigation_demo_imu.launch
<launch>
  <include file="$(find dashgo_driver)/launch/demo_imu.launch"/>
  <node name="flashgo_node"          pkg="flashgo"  type="flashgo_node" output="screen">
  <param name="serial_port"         type="string" value="/dev/flashlidar"/>  
  <param name="serial_baudrate"     type="int"    value="230400"/>
  <param name="frame_id"            type="string" value="laser_frame"/>
  <param name="inverted"            type="bool"   value="false"/>
  <param name="angle_compensate"    type="bool"   value="true"/>
  <param name="ignore_array"   type="string" value="" />
  <param name="ignore_value"  type="double"  value="0" />
  </node>

  <include file="$(find dashgo_description)/launch/dashgo_description.launch"/>
  <node pkg="tf" type="static_transform_publisher" name="base_link_to_laser4" 
    args="0.0 0.0 0.2 3.14 3.14  0.0 /base_footprint /laser_frame 40" />

  <arg name="map_file" default="$(find dashgo_nav)/maps/my_map.yaml"/>
  <node name="map_server" pkg="map_server" type="map_server" args="$(arg map_file)" />

  <arg name="initial_pose_x" default="0.0"/> <!-- Use 17.0 for willow's map in simulation -->
  <arg name="initial_pose_y" default="0.0"/> <!-- Use 17.0 for willow's map in simulation -->
  <arg name="initial_pose_a" default="0.0"/>
  <include file="$(find dashgo_nav)/launch/include/imu/amcl.launch.xml">
    <arg name="initial_pose_x" value="$(arg initial_pose_x)"/>
    <arg name="initial_pose_y" value="$(arg initial_pose_y)"/>
    <arg name="initial_pose_a" value="$(arg initial_pose_a)"/>
  </include>

  <include file="$(find dashgo_nav)/launch/include/imu/teb_move_base.launch"/>
  <include file="$(find rosbridge_server)/launch/rosbridge_websocket.launch"/>
  <node name="robot_pose_publisher" pkg="robot_pose_publisher" type="robot_pose_publisher" />
</launch>

  将 my_map.yaml 改成已经保存好的地图名称 retest_map.yaml

  注意:若对vim命令操作不熟悉,可参考 vim的基本使用,也可自行百度。

  然后,启动导航launch

  $ roslaunch dashgo_nav navigation_demo_imu.launch

  切换到打开 rviz 的终端,Ctrl + C 关闭 rviz , 再重新启动 rviz

  $ roslaunch dashgo_rviz view_navigation.launch

设置起点

  rviz 打开后显示 D1 默认所在的位置是栅格的中心点,不一定是 D1 实际所在的位置

  注意:每次打开 rviz 都要检查并设置起点。

  点击 2D Pose Estimate

  根据当前 D1 实际位置,在地图上选择正确的位置,并调整好 D1 的正前方方向(正前方的调整:在选择位置时,按住鼠标不放,拖动方向便可)

设置目标点

  点击 2D Nav Goal

  在地图上选择要到达的目标点位置,并调整好 D1 停止时的正前方方向(正前方的调整:在选择位置时,按住鼠标不放,拖动方向便可)

  设置好目标点后,导航模块便自主计算路径并控制 D1 向目标点移动

  注意:每次导航时,都要先点击 2D Nav Goal 然后选择目标点,小车便自主导航移动。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Dashgo-D1 带陀螺仪的建图导航 的相关文章

随机推荐

  • Malloc是如何分配内存的?

    基础知识思考整理 地址 xff1a http blog csdn net aganlengzi article details 51339493 在用户调用malloc之后 xff0c 系统中发生了什么呢 xff1f 首先明确以下几点 xf
  • 多维数组的初始化。大括号{}与小括号()的区别

    include lt stdio h gt int main void int a 3 2 61 0 1 2 3 4 5 int b 3 2 61 0 1 2 3 4 5 int p int p1 p 61 a 0 p1 61 b 0 pr
  • ubuntu16.04修改复制粘贴快捷键的方法

    Ubuntu虚拟机在terminal使用CTRL 43 C CTRL 43 V xff0c 复制 xff0c 粘贴的办法 xff1a 选择 xff1a Terminal gt Preference gt Shortcut 把你要修改的复制
  • 虚拟机ubuntu16.04的备份与恢复方法

    本文目的在于记录在命令行的模式下进行linux系统的备份与还原 xff0c 虽然系统的备份方法有很多种 xff0c 但本文只记录最简单粗暴的一种 首先成为root用户 xff1a sudo su 然后进入文件系统的根目录 当然 xff0c
  • VSCode C++代码提示和补全

    网上都说安装完扩展C C 43 43 Extension就可以了 xff0c 但我这儿不行 xff0c 发现是因为需要自己另外提供头文件 xff0c 于是利用了mingw的头文件 1 解压i686 4 9 3 release posix d
  • vs 写c++一个类的头文件放在改工程下的一个子目录里,include出错

    工程名test 类名http 子目录 xff1a http 在主源文件中include这个http 的头文件时 xff0c include 34 http http h 34 编译出错 一定要改成绝对路径 include 34 home m
  • STM32 FreeRTOS堆、栈以及系统堆栈

    stm32以及freertos 堆栈解析 https blog csdn net sinat 36568888 article details 124320985 1 当freertos采用heap 4内存分配方案时 xff0c stm32
  • 在linux下如何编译c/c++代码(库)

    目录 在linux下如何编译c c 43 43 代码 库 1 运行环境 1 学知资料 2 Linux下静态库和动态库的区别 2 基本文件类型 2 c c 43 43 程序编译使用基本流程 2 gcc和g 43 43 区别 3 gcc基本使用
  • Ubuntu系统用火狐浏览器无法上网问题的解决方法

    刚做的Ubuntu系统用火狐浏览器无法上网问题的解决方法 首先打开终端 xff0c 输入 xff1a sudo apt get update 等待出现完成字样 其次再输入 xff1a sudo apt get install firefox
  • Raspberry Pi2/3引脚介绍

    引脚图 Raspberry Pi2 3引脚如下图所示 xff1a Raspberry Pi 3 的硬件接口通过开发板上的 40 排针 J8 公开 功能包括 xff1a 17x GPIO 引脚1x SPI 总线1x I2C 总线2x 5V 电
  • robot_pose_ekf 使用说明

    协方差参数的设置 主要确定mpu6050和odom编码器协方差参数的设置 参考 xff1a turtlebot node协方差的设置 mpu605参数的设置 参考 xff1a https github com Arkapravo turtl
  • 互斥锁、读写锁 、 自旋锁和RCU锁

    基础知识思考整理 http blog csdn net aganlengzi article details 50996227 互斥锁 mutex xff1a 在访问共享资源之前对进行加锁操作 xff0c 在访问完成之后进行解锁操作 加锁后
  • Dashgo D1概述

    概述 Dashgo D1是深圳EAI科技专门针对ROS开发的移动平台 xff0c 自主研发的核心结构保证了载重大 动力足 续航长和扩展性强的性能 xff0c 深受创客 科研 企业的欢迎 主要特性 xff1a 易于使用 由整机及其附件组成 x
  • 搭建Dashgo运行环境

    安装 设置用户的串口读取权限 span class hljs built in sudo span usermod span class hljs operator a span G dialout your user name your
  • 超声波避障

    运行如下脚本 roslaunch dashgo bringup bringup smoother ob span class hljs preprocessor launch span 在另一个终端运行 rostopic span clas
  • 虚拟机VirtualBox安装Ubuntu14.04

    本教程的运行环境 xff1a Windows 7 虚拟机 VirtualBox xff0c Ubuntu 14 04 1 准备 下载 VirtualBox5 0版可以使用后面提供的OVA镜像直接导入 xff0c 镜像是ROS的集合环境 xf
  • 树莓派实现自主导航

    使用 Flash Lidar F4 激光雷达进行自主导航 树莓派的IP假设为192 168 11 100 该教程基于地图已经建好并保存的情况下 teb amcl demo launch 的 args 参数要与前面 gmapping demo
  • 键盘控制移动

    PathGo 导航模块的默认固定 IP 是 192 168 31 200 xff0c 默认用户名为eaibot 默认密码为 eaibot 1 不带陀螺仪的底盘驱动 打开一个终端 xff0c 运行以下命令 xff0c 启动底盘驱动 带平滑加减
  • Dashgo-D1 不带陀螺仪的建图导航

    PathGo 导航模块的默认固定 IP 是 192 168 31 200 xff0c 默认用户名为 eaibot xff0c 默认密码为 eaibot D1与F4的坐标系已经校准正确的情况下 扫描建图 打开一个终端 xff0c ssh登录导
  • Dashgo-D1 带陀螺仪的建图导航

    PathGo 导航模块的默认固定 IP 是 192 168 31 200 xff0c 默认用户名为 eaibot 默认密码为 eaibot D1与F4的坐标系已经校准正确的情况下 扫描建图 打开一个终端 xff0c ssh登录导航模块并启动