Skip to content

Commit

Permalink
[Iris] add example for Iris based upon the edifice-demo depot world (#4)
Browse files Browse the repository at this point in the history
- Include the iris_with_standoffs model in the OSRF edifice-demo-world and add the ignition::gazebo::system::Imu plugin.

Signed-off-by: Rhys Mainwaring <[email protected]>
  • Loading branch information
srmainwaring committed Apr 14, 2022
1 parent 4fefb88 commit c9443a0
Showing 1 changed file with 376 additions and 0 deletions.
376 changes: 376 additions & 0 deletions worlds/iris_arducopter_edifice_demo.world
Original file line number Diff line number Diff line change
@@ -0,0 +1,376 @@
<?xml version="1.0" ?>
<sdf version="1.6">
<world name="Edifice">
<scene>
<grid>false</grid>
</scene>
<physics name="1ms" type="ignored">
<max_step_size>0.002</max_step_size>
<real_time_factor>1.0</real_time_factor>
</physics>
<plugin
filename="ignition-gazebo-physics-system"
name="ignition::gazebo::systems::Physics">
</plugin>
<plugin
filename="ignition-gazebo-sensors-system"
name="ignition::gazebo::systems::Sensors">
<render_engine>ogre2</render_engine>
</plugin>
<plugin
filename="ignition-gazebo-user-commands-system"
name="ignition::gazebo::systems::UserCommands">
</plugin>
<plugin
filename="ignition-gazebo-scene-broadcaster-system"
name="ignition::gazebo::systems::SceneBroadcaster">
</plugin>
<plugin
filename="libignition-gazebo-imu-system.so"
name="ignition::gazebo::systems::Imu">
</plugin>

<gui fullscreen='0'>
<!-- GUI plugins -->

<!-- 3D scene -->
<plugin filename="GzScene3D" name="3D View">
<ignition-gui>
<title>3D View</title>
<property type="bool" key="showTitleBar">false</property>
<property type="string" key="state">docked</property>
</ignition-gui>

<engine>ogre2</engine>
<scene>scene</scene>
<ambient_light>0.4 0.4 0.4</ambient_light>
<background_color>0.8 0.8 0.8</background_color>
<camera_pose>6 0 6 0 0.5 3.14</camera_pose>
</plugin>

<!-- Play / pause / step -->
<plugin filename="WorldControl" name="World control">
<ignition-gui>
<title>World control</title>
<property type="bool" key="showTitleBar">false</property>
<property type="bool" key="resizable">false</property>
<property type="double" key="height">72</property>
<property type="double" key="width">121</property>
<property type="double" key="z">1</property>

<property type="string" key="state">floating</property>
<anchors target="3D View">
<line own="left" target="left"/>
<line own="bottom" target="bottom"/>
</anchors>
</ignition-gui>

<play_pause>true</play_pause>
<step>true</step>
<start_paused>true</start_paused>

</plugin>

<!-- Time / RTF -->
<plugin filename="WorldStats" name="World stats">
<ignition-gui>
<title>World stats</title>
<property type="bool" key="showTitleBar">false</property>
<property type="bool" key="resizable">false</property>
<property type="double" key="height">110</property>
<property type="double" key="width">290</property>
<property type="double" key="z">1</property>

<property type="string" key="state">floating</property>
<anchors target="3D View">
<line own="right" target="right"/>
<line own="bottom" target="bottom"/>
</anchors>
</ignition-gui>

<sim_time>true</sim_time>
<real_time>true</real_time>
<real_time_factor>true</real_time_factor>
<iterations>true</iterations>

</plugin>

<!-- Insert simple shapes -->
<plugin filename="Shapes" name="Shapes">
<ignition-gui>
<property key="resizable" type="bool">false</property>
<property key="x" type="double">0</property>
<property key="y" type="double">0</property>
<property key="width" type="double">250</property>
<property key="height" type="double">50</property>
<property key="state" type="string">floating</property>
<property key="showTitleBar" type="bool">false</property>
<property key="cardBackground" type="string">#666666</property>
</ignition-gui>
</plugin>

<!-- Insert lights -->
<plugin filename="Lights" name="Lights">
<ignition-gui>
<property key="resizable" type="bool">false</property>
<property key="x" type="double">250</property>
<property key="y" type="double">0</property>
<property key="width" type="double">150</property>
<property key="height" type="double">50</property>
<property key="state" type="string">floating</property>
<property key="showTitleBar" type="bool">false</property>
<property key="cardBackground" type="string">#666666</property>
</ignition-gui>
</plugin>

<!-- Translate / rotate -->
<!--
<plugin filename="TransformControl" name="Transform control">
<ignition-gui>
<property key="resizable" type="bool">false</property>
<property key="x" type="double">0</property>
<property key="y" type="double">50</property>
<property key="width" type="double">250</property>
<property key="height" type="double">50</property>
<property key="state" type="string">floating</property>
<property key="showTitleBar" type="bool">false</property>
<property key="cardBackground" type="string">#777777</property>
</ignition-gui>
</plugin>
-->

<!-- Screenshot -->
<plugin filename="Screenshot" name="Screenshot">
<ignition-gui>
<property key="resizable" type="bool">false</property>
<property key="x" type="double">250</property>
<property key="y" type="double">50</property>
<property key="width" type="double">50</property>
<property key="height" type="double">50</property>
<property key="state" type="string">floating</property>
<property key="showTitleBar" type="bool">false</property>
<property key="cardBackground" type="string">#777777</property>
</ignition-gui>
</plugin>

<!-- Inspector -->
<plugin filename="ComponentInspector" name="Component inspector">
<ignition-gui>
<property type="bool" key="showTitleBar">false</property>
<property type="string" key="state">docked</property>
</ignition-gui>
</plugin>

<!-- Entity tree -->
<plugin filename="EntityTree" name="Entity tree">
<ignition-gui>
<property type="bool" key="showTitleBar">false</property>
<property type="string" key="state">docked</property>
</ignition-gui>
</plugin>

<!-- Image / Camera display -->
<plugin filename="ImageDisplay" name="ImageDisplay">
<ignition-gui>
<property type="string" key="state">docked_collapsed</property>
</ignition-gui>
</plugin>

<!-- Joint controller for Panda robot -->
<plugin filename="JointPositionController" name="JointPositionController">
<ignition-gui>
<property type="string" key="state">docked_collapsed</property>
</ignition-gui>
<model_name>Panda</model_name>
</plugin>

<!-- Keyboard -->
<plugin filename="KeyPublisher" name="Key publisher">
<ignition-gui>
<anchors target="3D View">
<line own="right" target="right"/>
<line own="top" target="top"/>
</anchors>
<property key="resizable" type="bool">false</property>
<property key="width" type="double">5</property>
<property key="height" type="double">5</property>
<property key="state" type="string">floating</property>
<property key="showTitleBar" type="bool">false</property>
</ignition-gui>
</plugin>

</gui>

<include>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Depot</uri>
</include>

<include>
<pose>-6 0 0.25 0 0 0</pose>
<uri>model://iris_with_standoffs</uri>
</include>

<include>
<pose>-9.4 1.6 0 0 0 -0.5</pose>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Mecanum lift</uri>
</include>

<include>
<pose>-13.2 -6.0 0.15 0 0 0</pose>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/fog emitter</uri>
</include>

<include>
<pose>-9.0 -1.8 1.038 0 0 0</pose>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Panda with Ignition position controller model</uri>
</include>

<include>
<pose>-9.0 -2.4 0 0 0 1.57</pose>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Reflective table</uri>
</include>

<include>
<pose>-13.2 -6.0 0 0 0 1.57</pose>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Rescue Randy Sitting</uri>
</include>

<include>
<pose>-9.0 -6.21 5.0 0 0.9 -3.14</pose>
<static>true</static>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/16-Bit Thermal Camera</uri>
</include>

<include>
<pose>-9.0 -5.95 5.0 0 0.9 -3.14</pose>
<static>true</static>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/8-Bit Thermal Camera</uri>
</include>

<include>
<pose>-9.075 -6.15 4.995 0 0.9 -3.14</pose>
<static>true</static>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Camera</uri>
</include>

<include>
<pose>-9.04 -6.04 4.97 0 0.9 -3.14</pose>
<static>true</static>
<uri>https://fuel.ignitionrobotics.org/1.0/OpenRobotics/models/Depth Camera</uri>
</include>

<!-- uniform temperature object for comparison against rescue randy's heat signature -->
<model name="uniform_temp_box">
<pose>-13.2 -5.3 0.2 0 0 0</pose>
<link name="box_link">
<inertial>
<inertia>
<ixx>1</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>1</iyy>
<iyz>0</iyz>
<izz>1</izz>
</inertia>
<mass>1.0</mass>
</inertial>
<collision name="box_collision">
<geometry>
<box>
<size>0.4 0.4 0.4</size>
</box>
</geometry>
</collision>

<visual name="box_visual">
<geometry>
<box>
<size>0.4 0.4 0.4</size>
</box>
</geometry>
<material>
<ambient>1 0 0 1</ambient>
<diffuse>1 0 0 1</diffuse>
<specular>1 0 0 1</specular>
</material>
<plugin filename="ignition-gazebo-thermal-system" name="ignition::gazebo::systems::Thermal">
<temperature>295.0</temperature>
</plugin>
</visual>
</link>
</model>

<!-- Mecanum drive teleop -->

<!-- Moving Forward: w -->
<plugin filename="libignition-gazebo-triggered-publisher-system.so" name="ignition::gazebo::systems::TriggeredPublisher">
<input type="ignition.msgs.Int32" topic="/keyboard/keypress">
<match field="data">87</match>
</input>
<output type="ignition.msgs.Twist" topic="/model/Mecanum_lift/cmd_vel">
linear: {x: 1.0, y: 0.0}, angular: {z: 0.0}
</output>
</plugin>

<!-- Moving Backward: x -->
<plugin filename="libignition-gazebo-triggered-publisher-system.so" name="ignition::gazebo::systems::TriggeredPublisher">
<input type="ignition.msgs.Int32" topic="/keyboard/keypress">
<match field="data">88</match>
</input>
<output type="ignition.msgs.Twist" topic="/model/Mecanum_lift/cmd_vel">
linear: {x: -1.0, y: 0.0}, angular: {z: 0.0}
</output>
</plugin>

<!-- Moving right: d -->
<plugin filename="libignition-gazebo-triggered-publisher-system.so" name="ignition::gazebo::systems::TriggeredPublisher">
<input type="ignition.msgs.Int32" topic="/keyboard/keypress">
<match field="data">68</match>
</input>
<output type="ignition.msgs.Twist" topic="/model/Mecanum_lift/cmd_vel">
linear: {x: 0.0, y: -1.0}, angular: {z: 0.0}
</output>
</plugin>

<!--Moving left: a -->
<plugin filename="libignition-gazebo-triggered-publisher-system.so" name="ignition::gazebo::systems::TriggeredPublisher">
<input type="ignition.msgs.Int32" topic="/keyboard/keypress">
<match field="data">65</match>
</input>
<output type="ignition.msgs.Twist" topic="/model/Mecanum_lift/cmd_vel">
linear: {x: 0.0, y: 1.0}, angular: {z: 0.0}
</output>
</plugin>

<!-- Rotating right: e -->
<plugin filename="libignition-gazebo-triggered-publisher-system.so" name="ignition::gazebo::systems::TriggeredPublisher">
<input type="ignition.msgs.Int32" topic="/keyboard/keypress">
<match field="data">69</match>
</input>
<output type="ignition.msgs.Twist" topic="/model/Mecanum_lift/cmd_vel">
linear: {x: 0.0, y: 0.0}, angular: {z: -1.0}
</output>
</plugin>

<!--Rotating left: q -->
<plugin filename="libignition-gazebo-triggered-publisher-system.so" name="ignition::gazebo::systems::TriggeredPublisher">
<input type="ignition.msgs.Int32" topic="/keyboard/keypress">
<match field="data">81</match>
</input>
<output type="ignition.msgs.Twist" topic="/model/Mecanum_lift/cmd_vel">
linear: {x: 0.0, y: 0.0}, angular: {z: 1.0}
</output>
</plugin>

<!--Stop: s -->
<plugin filename="libignition-gazebo-triggered-publisher-system.so" name="ignition::gazebo::systems::TriggeredPublisher">
<input type="ignition.msgs.Int32" topic="/keyboard/keypress">
<match field="data">83</match>
</input>
<output type="ignition.msgs.Twist" topic="/model/Mecanum_lift/cmd_vel">
linear: {x: 0.0, y: 0.0}, angular: {z: 0.0}
</output>
</plugin>

</world>
</sdf>

0 comments on commit c9443a0

Please sign in to comment.