Advertisement

XTDrone vins-fuison 视觉惯性里程计 (ubuntu 18.04)

阅读量:

一、安装ceres

安装ceres-1.14.0

如果安装过可卸载(我安过2.2.0报错,所以安1.14.0)

复制代码
    sudo rm -r /usr/local/lib/cmake/Ceres
    sudo rm -r /usr/local/include/ceres /usr/local/lib/libceres.a
复制代码
    # CMake
    sudo apt-get install cmake
    # google-glog + gflags
    sudo apt-get install libgoogle-glog-dev libgflags-dev
    # Use ATLAS for BLAS & LAPACK
    sudo apt-get install libatlas-base-dev
    # Eigen3
    sudo apt-get install libeigen3-dev
    # SuiteSparse (optional)
    sudo apt-get install libsuitesparse-dev
    
    
    
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-19/1sqrEfwxCzuJX9k8GgvRclAKWjHS.png)

ceres-solver-1.14.0.tar.gz 复制到主目录
主目录打开终端:

复制代码
    tar zxf ceres-solver-1.14.0.tar.gz
    mkdir ceres-bin
    cd ceres-bin
    cmake ../ceres-solver-1.14.0
    make -j3
    make test
    # Optionally install Ceres, it can also be exported using CMake which
    # allows Ceres to be used without requiring installation, see the documentation
    # for the EXPORT_BUILD_DIR option for more information.
    sudo make install
    
    
    
![](https://ad.itadn.com/c/weblog/blog-img/images/2025-08-19/fjOgqSRXQGvt0LTUhBPlyICY6Au2.png)

二、VINS-Fusion编译

复制代码
    cp -r ~/XTDrone/sensing/slam/vio/VINS-Fusion ~/catkin_ws/src/
    mkdir ~/catkin_ws/scripts/
    cp ~/XTDrone/sensing/slam/vio/xtdrone_run_vio.sh ~/catkin_ws/scripts/
    cd ~/catkin_ws
    catkin_make #或catkin build,取决于您的编译工具

三、无点云输出

即将如下代码添加到/usr/local/lib/cmake/Ceres/CeresConfig.cmake中:

复制代码
    set(EIGEN_INCLUDE_DIR "/usr/local/include/eigen3")  #添加此行
    set(CERES_EIGEN_VERSION 3.3.9)  #添加此行,版本号与你安装的对应
在这里插入图片描述

四、VINS-Fusion仿真

1.PX4飞控EKF配置(可选,视觉定位)

修改rcS配置文件

复制代码
    gedit ~/PX4_Firmware/ROMFS/px4fmu_common/init.d-posix/rcS
复制代码
    	# GPS used
    	#param set EKF2_AID_MASK 1
    	# Vision used and GPS denied
    	param set EKF2_AID_MASK 24
     
    	# Barometer used for hight measurement
    	#param set EKF2_HGT_MODE 0
    	# Barometer denied and vision used for hight measurement
    	param set EKF2_HGT_MODE 3

清除虚拟eeprom中的上一次记录的参数文件: 在重启仿真之前,请确保已经清除虚拟eeprom中的上一次记录的参数文件。

复制代码
    rm ~/.ros/eeprom/parameters*
    rm -rf ~/.ros/sitl*

2.仿真

打开仿真文件

复制代码
    cd PX4_Firmware/
    roslaunch px4 indoor1.launch

vins-fusion

复制代码
    cd ~/catkin_ws
    bash scripts/xtdrone_run_vio.sh

修改话题(视觉定位所需)

复制代码
    cd ~/XTDrone/sensing/slam/vio
    python vins_transfer.py iris 0

查看无人机实时位置、姿态(视觉定位所需)

复制代码
    rostopic echo /iris_0/mavros/local_position/pose

开启视觉定位(视觉定位所需)

复制代码
    cd ~/XTDrone/sensing/pose_ground_truth
    python3 get_local_pose.py iris 1

建立通信

复制代码
    cd ~/XTDrone/communication
    python multirotor_communication.py iris 0 

键盘控制起飞

复制代码
    cd ~/XTDrone/control/keyboard
    python multirotor_keyboard_control.py iris 1 vel

全部评论 (0)

还没有任何评论哟~