|
From: <hsu...@us...> - 2009-06-16 03:02:11
|
Revision: 17129
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=17129&view=rev
Author: hsujohnhsu
Date: 2009-06-16 03:02:05 +0000 (Tue, 16 Jun 2009)
Log Message:
-----------
update urdf2factory to spawn models given model name.
Modified Paths:
--------------
pkg/trunk/demos/door_demos_gazebo/launch/pr2_and_door.launch
pkg/trunk/drivers/simulator/gazebo_plugin/src/urdf2factory.cpp
Modified: pkg/trunk/demos/door_demos_gazebo/launch/pr2_and_door.launch
===================================================================
--- pkg/trunk/demos/door_demos_gazebo/launch/pr2_and_door.launch 2009-06-16 02:51:13 UTC (rev 17128)
+++ pkg/trunk/demos/door_demos_gazebo/launch/pr2_and_door.launch 2009-06-16 03:02:05 UTC (rev 17129)
@@ -1,33 +1,35 @@
<launch>
- <group name="gazebo">
- <param name="/use_sim_time" value="true" />
- <!-- start gazebo -->
- <node pkg="gazebo" type="gazebo" args="$(find gazebo_robot_description)/gazebo_worlds/empty.world" respawn="false" output="screen">
- <env name="LD_LIBRARY_PATH" value="$(find gazebo_plugin)/lib:$(find gazebo)/gazebo/lib:$(find Cg)/Cg/lib:$(find ogre)/ogre/lib:$(find opende)/opende/lib:$(optenv LD_LIBRARY_PATH)" />
- <env name="GAZEBO_RESOURCE_PATH" value="$(find gazebo_robot_description):$(find gazebo)/gazebo/share/gazebo" />
- <env name="OGRE_RESOURCE_PATH" value="$(find ogre)/ogre/lib/OGRE" />
- </node>
-
- <!-- send pr2.xml to param server -->
- <!-- push robotdesc/door to factory and spawn robot in gazebo -->
- <param ns="pr2" name="robotdesc/pr2" command="$(find xacro)/xacro.py '$(find door_demos_gazebo)/robots/pr2_and_door.xacro.xml'" />
- <node pkg="gazebo_plugin" type="urdf2factory" args="robotdesc/pr2" respawn="false" output="screen" />
-
- <!-- load door and handle controllers -->
- <node pkg="mechanism_control" type="spawner.py" args="$(find door_demos_gazebo)/door_defs/door_controllers.xml" respawn="false" output="screen" />
- <node pkg="door_demos_gazebo" type="set_door.py" output="screen"/>
-
- <!-- uncomment for visualization -->
- <!--
- <node pkg="rviz" type="rviz" output="screen"/>
- -->
-
- <!-- Robot state publisher -->
- <node pkg="robot_state_publisher" type="state_publisher" name="robot_state_publisher">
- <param name="publish_frequency" type="double" value="50.0" />
- <param name="tf_prefix" type="string" value="" />
+ <group name="gazebo">
+ <!-- start gazebo -->
+ <node pkg="gazebo" type="gazebo" args="$(find gazebo_robot_description)/gazebo_worlds/empty.world" respawn="false" output="screen">
+ <env name="LD_LIBRARY_PATH" value="$(find gazebo_plugin)/lib:$(find gazebo)/gazebo/lib:$(find Cg)/Cg/lib:$(find ogre)/ogre/lib:$(find opende)/opende/lib:$(optenv LD_LIBRARY_PATH)" />
+ <env name="GAZEBO_RESOURCE_PATH" value="$(find gazebo_robot_description):$(find gazebo)/gazebo/share/gazebo" />
+ <env name="OGRE_RESOURCE_PATH" value="$(find ogre)/ogre/lib/OGRE" />
</node>
-
- </group>
+
+ <!-- send pr2.xml to param server -->
+ <!-- push robotdesc/door to factory and spawn robot in gazebo -->
+ <param ns="pr2" name="robotdesc/pr2" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pr2.xacro.xml'" />
+ <node pkg="gazebo_plugin" type="urdf2factory" args="robotdesc/pr2" respawn="false" output="screen" />
+
+ <param ns="door" name="robotdesc/door" command="$(find xacro)/xacro.py '$(find door_demos_gazebo)/door_defs/door_defs.xml'" />
+ <node pkg="gazebo_plugin" type="urdf2factory" args="robotdesc/door 0 0 0 0 0 0 doorbot" respawn="false" output="screen" />
+
+ <!-- load door and handle controllers -->
+ <node pkg="mechanism_control" type="spawner.py" args="$(find door_demos_gazebo)/door_defs/door_controllers.xml" respawn="false" output="screen" />
+ <node pkg="door_demos_gazebo" type="set_door.py" output="screen"/>
+
+ <!-- uncomment for visualization -->
+ <!--
+ <node pkg="rviz" type="rviz" output="screen"/>
+ -->
+
+ <!-- Robot state publisher -->
+ <node pkg="robot_state_publisher" type="state_publisher" name="robot_state_publisher">
+ <param name="publish_frequency" type="double" value="50.0" />
+ <param name="tf_prefix" type="string" value="" />
+ </node>
+
+ </group>
</launch>
Modified: pkg/trunk/drivers/simulator/gazebo_plugin/src/urdf2factory.cpp
===================================================================
--- pkg/trunk/drivers/simulator/gazebo_plugin/src/urdf2factory.cpp 2009-06-16 02:51:13 UTC (rev 17128)
+++ pkg/trunk/drivers/simulator/gazebo_plugin/src/urdf2factory.cpp 2009-06-16 03:02:05 UTC (rev 17129)
@@ -51,8 +51,9 @@
void usage(const char *progname)
{
- printf("\nUsage: %s xml_param_name [initial x y z roll pitch yaw]\n", progname);
- printf(" e.g. read robotdesc/pr2 from param server and send to gazebo factory to spawn robot\n\n");
+ printf("\nUsage: %s xml_param_name [initial x y z roll pitch yaw gazebo_model_name]\n", progname);
+ printf(" For example: urdf2factory robot_descriptions 0 0 1 0 0 90 pr3_model\n\n");
+ printf(" Note: gazebo_model_name defaults to pr2_model.\n\n");
}
int main(int argc, char **argv)
@@ -84,9 +85,12 @@
std::string robot_model_name("pr2_model");
// make sure this is not the ros-generated commandline log filename
- if (argc >= 9 && robot_model_name.find(std::string(" __log:")) == robot_model_name.size())
+ if (argc >= 9)
{
- robot_model_name = std::string(argv[8]);
+ std::string name = std::string(argv[8]);
+ ROS_ERROR("Model Name: %s %d\n",name.c_str(),name.find(std::string(" __log:")));
+ if (name.find(std::string(" __log:")) == -1)
+ robot_model_name = name;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|