Gazebo World Model Update
This commit is contained in:
@@ -1,20 +1,32 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!--
|
||||
Drone Landing Simulation - Gazebo World (Ignition Fortress compatible)
|
||||
Drone Landing Simulation - Ignition Fortress World
|
||||
Compatible with ROS 2 Humble
|
||||
-->
|
||||
<sdf version="1.8">
|
||||
<world name="drone_landing_world">
|
||||
|
||||
<physics name="1ms" type="ignored">
|
||||
<!-- Physics -->
|
||||
<physics name="1ms" type="ode">
|
||||
<max_step_size>0.001</max_step_size>
|
||||
<real_time_factor>1.0</real_time_factor>
|
||||
</physics>
|
||||
|
||||
<!-- Ignition Fortress plugins -->
|
||||
<plugin filename="libignition-gazebo-physics-system.so" name="ignition::gazebo::systems::Physics"/>
|
||||
<plugin filename="libignition-gazebo-user-commands-system.so" name="ignition::gazebo::systems::UserCommands"/>
|
||||
<plugin filename="libignition-gazebo-scene-broadcaster-system.so" name="ignition::gazebo::systems::SceneBroadcaster"/>
|
||||
<!-- Ignition Fortress Plugins -->
|
||||
<plugin filename="libignition-gazebo-physics-system.so"
|
||||
name="ignition::gazebo::systems::Physics"/>
|
||||
<plugin filename="libignition-gazebo-user-commands-system.so"
|
||||
name="ignition::gazebo::systems::UserCommands"/>
|
||||
<plugin filename="libignition-gazebo-scene-broadcaster-system.so"
|
||||
name="ignition::gazebo::systems::SceneBroadcaster"/>
|
||||
<plugin filename="libignition-gazebo-sensors-system.so"
|
||||
name="ignition::gazebo::systems::Sensors">
|
||||
<render_engine>ogre2</render_engine>
|
||||
</plugin>
|
||||
<plugin filename="libignition-gazebo-imu-system.so"
|
||||
name="ignition::gazebo::systems::Imu"/>
|
||||
|
||||
<!-- Lighting -->
|
||||
<light type="directional" name="sun">
|
||||
<cast_shadows>true</cast_shadows>
|
||||
<pose>0 0 10 0 0 0</pose>
|
||||
@@ -23,7 +35,7 @@
|
||||
<direction>-0.5 0.1 -0.9</direction>
|
||||
</light>
|
||||
|
||||
<!-- Ground -->
|
||||
<!-- Ground Plane -->
|
||||
<model name="ground_plane">
|
||||
<static>true</static>
|
||||
<link name="link">
|
||||
@@ -50,16 +62,14 @@
|
||||
</link>
|
||||
</model>
|
||||
|
||||
<!-- Landing Pad (static for now) -->
|
||||
<!-- Landing Pad (Rover) -->
|
||||
<model name="landing_pad">
|
||||
<static>true</static>
|
||||
<pose>0 0 0.15 0 0 0</pose>
|
||||
<link name="base_link">
|
||||
<visual name="visual">
|
||||
<geometry>
|
||||
<box>
|
||||
<size>1.0 1.0 0.3</size>
|
||||
</box>
|
||||
<box><size>1.0 1.0 0.3</size></box>
|
||||
</geometry>
|
||||
<material>
|
||||
<ambient>0.1 0.5 0.1 1</ambient>
|
||||
@@ -68,13 +78,125 @@
|
||||
</visual>
|
||||
<collision name="collision">
|
||||
<geometry>
|
||||
<box>
|
||||
<size>1.0 1.0 0.3</size>
|
||||
</box>
|
||||
<box><size>1.0 1.0 0.3</size></box>
|
||||
</geometry>
|
||||
</collision>
|
||||
<!-- H marker -->
|
||||
<visual name="h_center">
|
||||
<pose>0 0 0.151 0 0 0</pose>
|
||||
<geometry><box><size>0.6 0.1 0.001</size></box></geometry>
|
||||
<material>
|
||||
<ambient>1 1 1 1</ambient>
|
||||
<diffuse>1 1 1 1</diffuse>
|
||||
</material>
|
||||
</visual>
|
||||
<visual name="h_left">
|
||||
<pose>-0.25 0 0.151 0 0 0</pose>
|
||||
<geometry><box><size>0.1 0.5 0.001</size></box></geometry>
|
||||
<material>
|
||||
<ambient>1 1 1 1</ambient>
|
||||
<diffuse>1 1 1 1</diffuse>
|
||||
</material>
|
||||
</visual>
|
||||
<visual name="h_right">
|
||||
<pose>0.25 0 0.151 0 0 0</pose>
|
||||
<geometry><box><size>0.1 0.5 0.001</size></box></geometry>
|
||||
<material>
|
||||
<ambient>1 1 1 1</ambient>
|
||||
<diffuse>1 1 1 1</diffuse>
|
||||
</material>
|
||||
</visual>
|
||||
</link>
|
||||
</model>
|
||||
|
||||
<!-- Drone -->
|
||||
<model name="drone">
|
||||
<pose>0 0 5 0 0 0</pose>
|
||||
|
||||
<link name="base_link">
|
||||
<inertial>
|
||||
<mass>1.0</mass>
|
||||
<inertia>
|
||||
<ixx>0.029</ixx><ixy>0</ixy><ixz>0</ixz>
|
||||
<iyy>0.029</iyy><iyz>0</iyz>
|
||||
<izz>0.055</izz>
|
||||
</inertia>
|
||||
</inertial>
|
||||
|
||||
<collision name="collision">
|
||||
<geometry><box><size>0.3 0.3 0.1</size></box></geometry>
|
||||
</collision>
|
||||
|
||||
<visual name="body">
|
||||
<geometry><box><size>0.3 0.3 0.1</size></box></geometry>
|
||||
<material>
|
||||
<ambient>0.8 0.1 0.1 1</ambient>
|
||||
<diffuse>0.9 0.2 0.2 1</diffuse>
|
||||
</material>
|
||||
</visual>
|
||||
|
||||
<!-- Arms -->
|
||||
<visual name="arm_fl">
|
||||
<pose>0.12 0.12 0 0 0 0.785</pose>
|
||||
<geometry><box><size>0.2 0.02 0.02</size></box></geometry>
|
||||
<material><diffuse>0.3 0.3 0.3 1</diffuse></material>
|
||||
</visual>
|
||||
<visual name="arm_fr">
|
||||
<pose>0.12 -0.12 0 0 0 -0.785</pose>
|
||||
<geometry><box><size>0.2 0.02 0.02</size></box></geometry>
|
||||
<material><diffuse>0.3 0.3 0.3 1</diffuse></material>
|
||||
</visual>
|
||||
<visual name="arm_bl">
|
||||
<pose>-0.12 0.12 0 0 0 -0.785</pose>
|
||||
<geometry><box><size>0.2 0.02 0.02</size></box></geometry>
|
||||
<material><diffuse>0.3 0.3 0.3 1</diffuse></material>
|
||||
</visual>
|
||||
<visual name="arm_br">
|
||||
<pose>-0.12 -0.12 0 0 0 0.785</pose>
|
||||
<geometry><box><size>0.2 0.02 0.02</size></box></geometry>
|
||||
<material><diffuse>0.3 0.3 0.3 1</diffuse></material>
|
||||
</visual>
|
||||
|
||||
<!-- Rotors -->
|
||||
<visual name="rotor_fl">
|
||||
<pose>0.17 0.17 0.05 0 0 0</pose>
|
||||
<geometry><cylinder><radius>0.08</radius><length>0.01</length></cylinder></geometry>
|
||||
<material><diffuse>0.2 0.2 0.2 1</diffuse></material>
|
||||
</visual>
|
||||
<visual name="rotor_fr">
|
||||
<pose>0.17 -0.17 0.05 0 0 0</pose>
|
||||
<geometry><cylinder><radius>0.08</radius><length>0.01</length></cylinder></geometry>
|
||||
<material><diffuse>0.2 0.2 0.2 1</diffuse></material>
|
||||
</visual>
|
||||
<visual name="rotor_bl">
|
||||
<pose>-0.17 0.17 0.05 0 0 0</pose>
|
||||
<geometry><cylinder><radius>0.08</radius><length>0.01</length></cylinder></geometry>
|
||||
<material><diffuse>0.2 0.2 0.2 1</diffuse></material>
|
||||
</visual>
|
||||
<visual name="rotor_br">
|
||||
<pose>-0.17 -0.17 0.05 0 0 0</pose>
|
||||
<geometry><cylinder><radius>0.08</radius><length>0.01</length></cylinder></geometry>
|
||||
<material><diffuse>0.2 0.2 0.2 1</diffuse></material>
|
||||
</visual>
|
||||
|
||||
<!-- IMU -->
|
||||
<sensor name="imu" type="imu">
|
||||
<always_on>true</always_on>
|
||||
<update_rate>100</update_rate>
|
||||
<topic>/drone/imu</topic>
|
||||
</sensor>
|
||||
</link>
|
||||
|
||||
<!-- Odometry Publisher -->
|
||||
<plugin filename="libignition-gazebo-odometry-publisher-system.so"
|
||||
name="ignition::gazebo::systems::OdometryPublisher">
|
||||
<odom_frame>odom</odom_frame>
|
||||
<robot_base_frame>base_link</robot_base_frame>
|
||||
<odom_topic>/model/drone/odometry</odom_topic>
|
||||
<odom_publish_frequency>50</odom_publish_frequency>
|
||||
</plugin>
|
||||
|
||||
</model>
|
||||
|
||||
</world>
|
||||
</sdf>
|
||||
|
||||
Reference in New Issue
Block a user