https://gitee.com/bingobinlw/some/tree/master.
Overview
Simulation
Px4_command
Slam
map
image_process
planning
P200
AmovCar
此项目运行环境可以手动安装,或下载已安装好了的iso镜像进行虚拟机安装或实体机安装,链接如下:
链接:https://pan.baidu.com/s/1yMvZXezQSPDPkYmSdbEZLA 提取码:y3rr
运行各demo之前,请先更新一下仓库:
git pull
注:有任何疑问都可在issues提问:)
此simulation 包含2D、3D激光雷达模型、深度相机模型、双目相机模型、realsense相机模型、IRlock相机模型。
配置PX4以及ros环境
下载gazebo模型包
编译工作空间,运行launch文件
在18.04已测试通过
建议安装Ubuntu18.04 ,gazebo9
这里给出ubuntu18.04安装步骤
Add ROS to sources.list.
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt update
Install gazebo with ROS.
sudo apt-get install ros-melodic-desktop
# Source ROS
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
please make sure install ros-gazebo related packages
For Gazebo 9,
sudo apt install ros-melodic-gazebo9*
Initialize rosdep.
rosdep init
rosdep update
Install catkin.
sudo apt install python-catkin-tools
Install mavros version 0.29.0 or above. Instructions to install it from sources can be found here: https://dev.px4.io/en/ros/mavros_installation.html. If you want to install using apt, be sure to check that the version is 0.29.0 or greater.
sudo apt install ros-melodic-mavros ros-melodic-mavros-extras
Install the geographiclib dataset
wget https://raw.githubusercontent.com/mavlink/mavros/master/mavros/scripts/install_geographiclib_datasets.sh
chmod +x install_geographiclib_datasets.sh
sudo ./install_geographiclib_datasets.sh
参考于:http://wiki.ros.org/melodic/Installation/Ubuntu
安装必要的工具链
下载编译firmware
下载ubuntu.sh,requirements.txt
wget https://raw.githubusercontent.com/PX4/Firmware/master/Tools/setup/ubuntu.sh
wget https://raw.githubusercontent.com/PX4/Firmware/master/Tools/setup/requirements.txt
然后运行:
source ubuntu.sh
参考于http://dev.px4.io/master/en/setup/dev_env_linux_ubuntu.html
下载源码:
git clone https://gitee.com/bingobinlw/some
sudo apt install python-pip
python -m pip install toml
在此目录下下载px4源码并切换v1.9.2的固件
cd some
git clone https://github.com/PX4/Firmware
或下载码云中的px4源码
cd some
git clone https://gitee.com/bingobinlw/Firmware
然后更新submodule切换固件并编译
cd Firmware
git submodule update --init --recursive
git checkout v1.9.2
make distclean
make px4_sitl_default gazebo
在home目录下创建gazebo_models文件夹
youname@ubuntu:~$ mkdir gazebo_models
下载gazebo模型包 https://bitbucket.org/osrf/gazebo_models/downloads/
把gazebo模型包解压出来的所有模型文件剪切至gazebo_models文件夹
编译之前,请先下载必要的slam包,具体请到ros_slam包中查看readme.md
dir:some/src/mid/slam/ros_slam
查看README.md
And
sudo apt-get install ros-melodic-ar-track-alvar*
运行demo之前请先下载3Dlidar仿真相关的插件包
for ubuntu 18.04
sudo apt-get install ros-melodic-velodyne-gazebo-plugins
cd some
catkin_make
编译成功后运行source_environment.sh
添加Firmware环境变量,some gazebo模型路经,gazebo_modles模型路经
source source_enviroment.sh
运行model demo launch文件
roslaunch simulation models_demo_test_px4.launch
px4控制以及上层应用模块
运行
roslaunch simulation circular_px4.launch
同时会出现一飞机控制界面,要想使用此脚本请先查看下面路经的README.md
dir:some/src/simulation/scripts/README.md
在键盘控制终端中,输入0解锁,然后输入2切offboard,飞机随后会按照你给定的半径与高度飞行,完成一圈后会自动降落。
运行demo之前,请先在QGC中添加航点,然后上传,VFH节点将读取航点信息,当作目标点。
然后重新运行
roslaunch simulation obstacle_avoidance_2Dlaser_vfh_px4.launch
中间终端为GCG中各航点的平面信息,读取航点成功后,在最后一个控制终端中输入2然后回车,VFH节点将开始工作。
运行slam-Demo之前请先安装必要的功能包,具体请看
roscd ros_slam
查看README.md
运行
roslaunch simulation gmapping_demo_px4.launch
cartographer在2019年10月份已经支持以ros包形式安装。若想运行此demo请先安装必要cartogra包。具体请看ros_slam包中的README.md
运行demo之前请先在QGC参数表中配置参数,选择EKF位置来源来自板载计算机
EKF2_AID_MASK = 24
cartogra节点将接收2d激光雷达以及无人机的imu话题。
roslaunch simulation cartographer2Dlidar_location_demo_px4.launch
在定位之前请在键盘控制界面用键盘的**'g'**键调整uav的允许速度为1570,降低uav的运动时的倾斜角度以及速度,以达到更好的定位效果。
结果
如果你想建立更加准确的地图,而且你的robot已经拥有里程计。那么cartogra能够生成准切而稳定的map,不会存在location模式中地图会飘的情况。
运行demo之前请先在QGC参数表中配置参数,选择EKF位置来源来自gps
EKF2_AID_MASK = 1
cartogra节点将接收2d激光雷达以及无人机的里程计话题
roslaunch simulation cartographer2Dlidar_mapping_demo_px4.launch
使用运行demo之前请先确保以安装3D雷达相关插件
for ubuntu 18.04
sudo apt-get install ros-melodic-velodyne-gazebo-plugins
使用一个16线的激光雷达,以及一个imu数据,激光雷达水平安装在飞机的顶部。就其定位效果来看,没有发现2Dlidar定位时会飘的情况,而且无人机速度倾斜角度都可以大幅提高。
运行
roslaunch simulation cartographer3Dlidar_demo_px4.launch
使用深度相机以及室内里程计,为了达到更好的建图效果,其中室内里程计选择用3Dcartogra. 运行demo之前请先安装必要的rtabmap ros包
sudo apt-get install ros-melodic-rtabmap-ros
请先在QGC参数表中配置参数,选择EKF位置来源来自板载计算机
EKF2_AID_MASK = 24
运行demo
roslaunch simulation rtabmap_depthCam_mapping_demo_px4.launch
参考于:http://wiki.ros.org/rtabmap_ros
建图效果:
运行map-Demo之前请先安装必要的功能包,具体请看
roscd octomap
查看README.md
运行
roslaunch simulation octomap_px4.launch
建图效果
运行
roslaunch octomap_3Dlidar_px4.launch
建图效果
运行demo之前请先安装必要的ros包
sudo apt-get install ros-melodic-ar-track-alvar*
运行
roslaunch simulation landing_px4.launch
然后在键盘控制界面输入'0' 解锁,输入'2'切入OFFBOARD,飞机会自动起飞降落到目标板。
运行demo之前请先安装必要的导航包
sudo apt-get install ros-melodic-navigation
运行
roslaunch simulation ros_2Dnav_demo_px4.launch
在键盘控制界面解锁无人机,并控制无人机起飞
然后在rviz界面使用2D Nav Goal 设置目标点,
然后在键盘控制界面输入2运行offboard模式。
参考于:http://wiki.ros.org/navigation
待定
注:有任何疑问都可在issues提问:)