|
From: <hsu...@us...> - 2008-08-21 22:59:51
|
Revision: 3440
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=3440&view=rev
Author: hsujohnhsu
Date: 2008-08-21 22:59:59 +0000 (Thu, 21 Aug 2008)
Log Message:
-----------
2dnav demo using new actuator plugins, mechanism controlls and base controller.
Modified Paths:
--------------
pkg/trunk/3rdparty/gazebo/setup.bash
pkg/trunk/3rdparty/gazebo/setup.tcsh
pkg/trunk/controllers/pr2_controllers/src/base_controller.cpp
pkg/trunk/demos/2dnav-gazebo/2dnav-gazebo.xml
pkg/trunk/drivers/simulator/gazebo_plugin/src/test_actuators.cpp
pkg/trunk/robot_descriptions/wg_robot_description/pr2/controllers_gazebo_test.xml
Added Paths:
-----------
pkg/trunk/robot_descriptions/gazebo_robot_description/pr2_test.xml
Modified: pkg/trunk/3rdparty/gazebo/setup.bash
===================================================================
--- pkg/trunk/3rdparty/gazebo/setup.bash 2008-08-21 22:57:17 UTC (rev 3439)
+++ pkg/trunk/3rdparty/gazebo/setup.bash 2008-08-21 22:59:59 UTC (rev 3440)
@@ -17,6 +17,7 @@
export GAZEBO_RESOURCE_PATH=$PR2MEDIA
export OGRE_RESOURCE_PATH=$OGRE_TOP/lib/OGRE
+export MC_RESOURCE_PATH=$PR2MEDIA
echo
echo Current GAZ_TOP is set to $GAZ_TOP
Modified: pkg/trunk/3rdparty/gazebo/setup.tcsh
===================================================================
--- pkg/trunk/3rdparty/gazebo/setup.tcsh 2008-08-21 22:57:17 UTC (rev 3439)
+++ pkg/trunk/3rdparty/gazebo/setup.tcsh 2008-08-21 22:59:59 UTC (rev 3440)
@@ -17,6 +17,7 @@
setenv GAZEBO_RESOURCE_PATH $PR2MEDIA
setenv OGRE_RESOURCE_PATH $OGRE_TOP/lib/OGRE
+setenv MC_RESOURCE_PATH $PR2MEDIA
echo
echo Current GAZ_TOP is set to $GAZ_TOP
Modified: pkg/trunk/controllers/pr2_controllers/src/base_controller.cpp
===================================================================
--- pkg/trunk/controllers/pr2_controllers/src/base_controller.cpp 2008-08-21 22:57:17 UTC (rev 3439)
+++ pkg/trunk/controllers/pr2_controllers/src/base_controller.cpp 2008-08-21 22:59:59 UTC (rev 3440)
@@ -285,7 +285,7 @@
if(odom_publish_counter_ > odom_publish_count_)
{
- //(ros::g_node)->publish("odom", odom_msg_);
+ (ros::g_node)->publish("odom", odom_msg_);
odom_publish_counter_ = 0;
}
@@ -423,6 +423,9 @@
node->advertise_service(prefix + "/set_command", &BaseControllerNode::setCommand, this);
node->advertise_service(prefix + "/get_actual", &BaseControllerNode::getCommand, this); //FIXME: this is actually get command, just returning command for testing.
+
+ node->advertise<std_msgs::RobotBase2DOdom>("odom");
+
return true;
}
Modified: pkg/trunk/demos/2dnav-gazebo/2dnav-gazebo.xml
===================================================================
--- pkg/trunk/demos/2dnav-gazebo/2dnav-gazebo.xml 2008-08-21 22:57:17 UTC (rev 3439)
+++ pkg/trunk/demos/2dnav-gazebo/2dnav-gazebo.xml 2008-08-21 22:59:59 UTC (rev 3440)
@@ -1,9 +1,7 @@
<launch>
<group name="wg">
- <include file="$(find wg_robot_description)/send.xml"/>
- <node pkg="gazebo" type="run-gazebo.sh" args="$(find gazebo_robot_description)/world/robot_rosgazebo.world" respawn="true" />
+ <include file="$(find gazebo_robot_description)/pr2_test.xml"/>
<node pkg="map_server" type="map_server" args="$(find gazebo_robot_description)/world/Media/materials/textures/map3.png 0.1" respawn="false" />
- <node pkg="pr2_gazebo" type="run-pr2_gazebo.sh" args="" respawn="true" />
<node pkg="amcl_player" type="amcl_player" args="scan:=base_scan" respawn="false" />
<node pkg="wavefront_player" type="wavefront_player" args="scan:=base_scan" respawn="false" />
<node pkg="nav_view" type="nav_view" respawn="true" />
Modified: pkg/trunk/drivers/simulator/gazebo_plugin/src/test_actuators.cpp
===================================================================
--- pkg/trunk/drivers/simulator/gazebo_plugin/src/test_actuators.cpp 2008-08-21 22:57:17 UTC (rev 3439)
+++ pkg/trunk/drivers/simulator/gazebo_plugin/src/test_actuators.cpp 2008-08-21 22:59:59 UTC (rev 3440)
@@ -149,6 +149,38 @@
void TestActuators::LoadMC(XMLConfigNode *node)
{
+
+
+ //-----------------------------------------------------------------------------------------
+ //
+ // Read XML's and normalize const and const_blocks
+ //
+ //-----------------------------------------------------------------------------------------
+ TiXmlDocument *pr2_xml = new TiXmlDocument();
+ TiXmlDocument *controller_xml = new TiXmlDocument();
+ TiXmlDocument *transmission_xml = new TiXmlDocument();
+ TiXmlDocument *actuator_xml = new TiXmlDocument();
+
+ std::string pr2_xml_filename = getenv("MC_RESOURCE_PATH"); pr2_xml_filename += "/"; pr2_xml_filename += node->GetString("robot_filename","",1);
+ std::string controller_xml_filename = getenv("MC_RESOURCE_PATH"); controller_xml_filename += "/"; controller_xml_filename += node->GetString("controller_filename","",1);
+ std::string transmission_xml_filename = getenv("MC_RESOURCE_PATH"); transmission_xml_filename += "/"; transmission_xml_filename += node->GetString("transmission_filename","",1);
+ std::string actuator_xml_filename = getenv("MC_RESOURCE_PATH"); actuator_xml_filename += "/"; actuator_xml_filename += node->GetString("actuator_filename","",1);
+
+ std::cout << " pr2 robot xml file name: " << pr2_xml_filename << std::endl;
+ std::cout << " controller file name: " << controller_xml_filename << std::endl;
+ std::cout << " transmission file name: " << transmission_xml_filename << std::endl;
+ std::cout << " actuator file name: " << actuator_xml_filename << std::endl;
+
+ pr2_xml ->LoadFile(pr2_xml_filename);
+ controller_xml ->LoadFile(controller_xml_filename);
+ transmission_xml->LoadFile(transmission_xml_filename);
+ actuator_xml ->LoadFile(actuator_xml_filename);
+
+ urdf::normalizeXml( pr2_xml->RootElement() );
+ //urdf::normalizeXml( controller_xml->RootElement() );
+ //urdf::normalizeXml( transmission_xml->RootElement() );
+ //urdf::normalizeXml( actuator_xml->RootElement() );
+
//-------------------------------------------------------------------------------------------
//
// GET INFORMATION FROM PR2.XML FROM PARAM SERVER
@@ -161,45 +193,18 @@
//-------------------------------------------------------------------------------------------
// parse pr2.xml from filename specified
- pr2Description.loadFile(node->GetString("robot_filename","",1).c_str());
+ pr2Description.loadFile(pr2_xml_filename.c_str());
// get all links in pr2.xml
pr2Description.getLinks(pr2Links);
- std::cout << " pr2.xml link size: " << pr2Links.size() << std::endl;
+ std::cout << " pr2.xml contains " << pr2Links.size() << " links." << std::endl;
// as the name states
LoadFrameTransformOffsets();
-
//-----------------------------------------------------------------------------------------
//
- // Read XML's and normalize const and const_blocks
- //
- //-----------------------------------------------------------------------------------------
- TiXmlDocument *pr2_xml = new TiXmlDocument();
- TiXmlDocument *controller_xml = new TiXmlDocument();
- TiXmlDocument *transmission_xml = new TiXmlDocument();
- TiXmlDocument *actuator_xml = new TiXmlDocument();
-
- std::cout << " robot file name: " << node->GetString("robot_filename","",1) << std::endl;
- std::cout << " controller file name: " << node->GetString("controller_filename","",1) << std::endl;
- std::cout << " transmission file name: " << node->GetString("transmission_filename","",1) << std::endl;
- std::cout << " actuator file name: " << node->GetString("actuator_filename","",1) << std::endl;
-
- pr2_xml->LoadFile(node->GetString("robot_filename","",1));
- controller_xml->LoadFile(node->GetString("controller_filename","",1));
- transmission_xml->LoadFile(node->GetString("transmission_filename","",1));
- actuator_xml->LoadFile(node->GetString("actuator_filename","",1));
-
- urdf::normalizeXml( pr2_xml->RootElement() );
- //urdf::normalizeXml( controller_xml->RootElement() );
- //urdf::normalizeXml( transmission_xml->RootElement() );
- //urdf::normalizeXml( actuator_xml->RootElement() );
-
-
- //-----------------------------------------------------------------------------------------
- //
// parse for MechanismControl joints
//
//-----------------------------------------------------------------------------------------
Added: pkg/trunk/robot_descriptions/gazebo_robot_description/pr2_test.xml
===================================================================
--- pkg/trunk/robot_descriptions/gazebo_robot_description/pr2_test.xml (rev 0)
+++ pkg/trunk/robot_descriptions/gazebo_robot_description/pr2_test.xml 2008-08-21 22:59:59 UTC (rev 3440)
@@ -0,0 +1,7 @@
+<launch>
+ <group name="wg">
+ <include file="$(find wg_robot_description)/send_test.xml"/>
+ <node pkg="gazebo" type="run-gazebo.sh" args="$(find gazebo_robot_description)/world/robot_test.world" respawn="true" />
+ </group>
+</launch>
+
Modified: pkg/trunk/robot_descriptions/wg_robot_description/pr2/controllers_gazebo_test.xml
===================================================================
--- pkg/trunk/robot_descriptions/wg_robot_description/pr2/controllers_gazebo_test.xml 2008-08-21 22:57:17 UTC (rev 3439)
+++ pkg/trunk/robot_descriptions/wg_robot_description/pr2/controllers_gazebo_test.xml 2008-08-21 22:59:59 UTC (rev 3440)
@@ -14,10 +14,10 @@
<include>gazebo_joints.xml</include>
- <robot_filename>./world/pr2_test.xml</robot_filename>
- <controller_filename>./world/controllers.xml</controller_filename>
- <actuator_filename>./world/actuators.xml</actuator_filename>
- <transmission_filename>./world/transmissions.xml</transmission_filename>
+ <robot_filename>pr2_test.xml</robot_filename>
+ <controller_filename>controllers.xml</controller_filename>
+ <actuator_filename>actuators.xml</actuator_filename>
+ <transmission_filename>transmissions.xml</transmission_filename>
<interface:audio name="test_actuators_dummy_iface" />
</controller:test_actuators>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|