Airsim动态 | ROS教程(AirSim ROS Tutorial)

导语 今天为大家带来一组教程,为ROS中使用AirSim提供了教学示例。其中包含有AirSim的settings.json,roslaunch和rviz文件的讲解。针对如何在AirSim中添加其他飞机模型,我们在最后讲解了怎么将Gazebo中的飞行模型导入到AirSim中,快来和阿木一起看看吧。

一、设置 1.首先检查是否已经完成airsim_ros_pkgs的安装程序和其他必要的安装。 $ cd PATH_TO/AirSim/ros $ catkin build airsim_tutorial_pkgs

2.请注意,这里如果您的GCC版本不是8以上的版本,则会导致编译失败。 catkin build airsim_tutorial_pkgs -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8

注意: 对于运行示例,以及每当打开新终端时,【setup.bash】都需要获取文件。如果您经常使用 ROS wrapper,则可以添加【source PATH_TO/AirSim/ros/devel/setup.bash】到【/.profile】或【/.bashrc】中,这样可以避免每次打开新终端时都需要运行该命令。

二、示例 1.搭载单目和深度相机以及激光雷达的单无人机 Settings.json - front_stereo_and_center_mono.json

$ source PATH_TO/AirSim/ros/devel/setup.bash $ roscd airsim_tutorial_pkgs $ cp settings/front_stereo_and_center_mono.json ~/Documents/AirSim/settings.json

Start your unreal package or binary here

$ roslaunch airsim_ros_pkgs airsim_node.launch;

in a new pane / terminal

$ source PATH_TO/AirSim/ros/devel/setup.bash $ roslaunch airsim_tutorial_pkgs front_stereo_and_center_mono.launch

以上是使用tf’s启动的rviz。通过使用depth_to_pointcloud启动文件并使用depth_image_proc注册的RGBD云端。

2.两架无人机,并且每架都有摄像头、激光雷达、IMU模块 Settings.json - two_drones_camera_lidar_imu.json $ source PATH_TO/AirSim/ros/devel/setup.bash $ roscd airsim_tutorial_pkgs $ cp settings/two_drones_camera_lidar_imu.json ~/Documents/AirSim/settings.json

Start your unreal package or binary here

$ roslaunch airsim_ros_pkgs airsim_node.launch; $ roslaunch airsim_ros_pkgs rviz.launch

可以在rivz中查看tfs,并在【rostopic list】和【rosservice list】中检查服务缴费。

  1. 二十五架飞机方阵 Settings.json - twenty_five_drones.json $ source PATH_TO/AirSim/ros/devel/setup.bash $ roscd airsim_tutorial_pkgs $ cp settings/twenty_five_drones.json ~/Documents/AirSim/settings.json

    Start your unreal package or binary here

    $ roslaunch airsim_ros_pkgs airsim_node.launch; $ roslaunch airsim_ros_pkgs rviz.launch

同上,可以在rivz中查看tfs,并在【rostopic list】和【rosservice list】中检查服务缴费。 。

Gazebo仿真软件中所使用的飞机模型,也可以直接导入到AirSim中,并且能够使用Gazebo无人机作为飞机动力学模型(FDM)并且生成环境传感器数据。可以实现多轴飞行器,固定翼以及任何其他飞行器模型。

四、导入Gazebo模型 1.确保已经安装了Gazebo依赖项: sudo apt-get install libgazebo9-dev 2. AirLab 该项目是从GCC 8构建出来的,所以AirLib也需要用GCC 8进行构建,从AirSim的根文件进行运行:

./clean.sh ./setup.sh ./build.sh --gcc

  1. Airsim中的设置 AirSim模拟器的UE插件需要用clang构建,所以不能使用上步进行编译,可以使用官方所提供的的二进制文件 (https://github.com/microsoft/AirSim/releases), 或者可以在了另一个文件夹中再次克隆AirSim,并在没有上面选项的情况下构建它,然后可以运行Blocks测试文件或者自己所添加的文件。

在AirSim中的设置需要现在【settings.json】文件中个,添加以下行: "PhysicsEngineName":"ExternalPhysicsEngine"

如果需要更改AirSim无人机的视觉模型,可以按照官网教程进行操作: https://youtu.be/Bp86WiLUC80

  1. 创建 从AirSim的根文件夹执行此操作:

cd GazeboDrone mkdir build && cd build cmake -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8 .. make

  1. 运行 注意此处运行需要先运行AirSim模拟器和Gazebo模型,然后从AirSim根文件夹执行命令:

cd GazeboDrone/build ./GazeboDrone

参考资料: 1.有关ROS API的相关资料可以参考: https://github.com/microsoft/AirSim/blob/master/docs/airsim_ros_pkgs.md

2.AirSim中ROS使用教程: https://microsoft.github.io/AirSim/airsim_tutorial_pkgs/

3.导入Gazebo仿真模型: https://microsoft.github.io/AirSim/gazebo_drone/

  • End -

技术发展的日新月异,阿木实验室将紧跟技术的脚步,不断把机器人行业最新的技术和硬件推荐给大家。看到经过我们培训的学员在技术上突飞猛进,是我们培训最大的价值。如果你在机器人行业,就请关注我们的公众号,我们将持续发布机器人行业最有价值的信息和技术。 阿木实验室致力于前沿IT科技的教育和智能装备,让机器人研发更高效!

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[1\]: 当将机器人加载到gazebo时,运行launch文件出现了缺少gazebo包的错误。解决办法是通过以下命令安装缺失的gazebo包: sudo apt install ros-kinetic-gazebo-ros-pkgs。引用\[2\]: 在运行launch文件时,出现了找不到gazebo_ros资源的错误。解决办法是直接安装缺失的gazebo包: sudo apt-get install ros-kinetic-gazebo-ros-pkgs ros-kinetic-gazebo-ros-control。引用\[3\]: 在运行过程中,持续报错,其中一个错误是找不到gazebo_ros资源。这可能是由于ROS路径配置不正确导致的。你可以尝试检查ROS路径配置是否正确,并确保gazebo_ros包在正确的路径下。 #### 引用[.reference_title] - *1* [ResourceNotFound:gazebo_ros](https://blog.csdn.net/weixin_42591529/article/details/123869969)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [报错:ResourceNotFound: gazebo_ros](https://blog.csdn.net/qq_43406338/article/details/109600827)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [raise ResourceNotFound(name, ros_paths=self._ros_paths) ResourceNotFound: gazebo_ros](https://blog.csdn.net/weixin_41869763/article/details/104244205)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值