这里使用主要介绍如下:
Ignition Robotics基于开发库和云服务等丰富全面的工具箱,提供了一种全新的仿真方式,进一步简化仿真。高度逼真的传感器可在接近真实的环境中快速迭代更新机器人物理设计。在安全上可测试控制策略,并在持续的集成化侧重中利用仿真的诸多优势。
核心仿真器为Gazebo,已经有16年悠久历史。个人最早接触Gazebo是在Player/Stage/Gazebo中,大概2009年,使用其做多人机器人编队和任务仿真研究。从最初作为研究工具到工业和政府机构的广泛应用,Gazebo在各种虚拟竞赛,城市和车辆模拟以及航空器模拟中不断证明自己的高效和实用。
在Ubuntu 20.04版本中:
lsb\_release -cs
main" > /etc/apt/sources.list.d/gazebo-stable.list'这样就可以完成基本功能的安装。这组建可以依据需要自定义安装。
这部分内容之前已经介绍非常全面了,请参考如下链接:
2020年7月15日,官方功能包有694个。
使用如下命令查看ros-foxy-desktop详细信息如下:
要点如下:
在终端输入如下命令测试 ign gazebo:
如果出现如上图所示,蓝,红,绿三个物体,说明安装正常。
在终端选择foxy,如下可以看到ros2的cli:
ros_ign包含提供ROS和Ignition之间集成的软件包 :
更新环境:
import os
from ament_index_python.packages import get_package_share_directory
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument
from launch.actions import IncludeLaunchDescription
from launch.launch_description_sources import PythonLaunchDescriptionSource
from launch_ros.actions import Node
def generate_launch_description():
pkg_ros_ign_gazebo = get_package_share_directory('ros_ign_gazebo')
ign_gazebo = IncludeLaunchDescription(
PythonLaunchDescriptionSource(
os.path.join(pkg_ros_ign_gazebo, 'launch', 'ign_gazebo.launch.py')),
launch_arguments={
'ign_args': '-r sensors.sdf'
}.items(),
)
# RViz
# FIXME: Add once there's an IMU display for RViz2
# pkg_ros_ign_gazebo_demos = get_package_share_directory('ros_ign_gazebo_demos')
# rviz = Node(
# package='rviz2',
# executable='rviz2',
# # arguments=['-d', os.path.join(pkg_ros_ign_gazebo_demos, 'rviz', 'imu.rviz')],
# condition=IfCondition(LaunchConfiguration('rviz'))
# )
# Bridge
bridge = Node(
package='ros_ign_bridge',
executable='parameter_bridge',
arguments=['/imu@sensor_msgs/msg/Imu@ignition.msgs.IMU'],
output='screen'
)
return LaunchDescription([
ign_gazebo,
DeclareLaunchArgument('rviz', default_value='true',
description='Open RViz.'),
bridge,
# rviz
])
博客更新说明2020-07-15: