From: <goo...@us...> - 2009-07-23 21:08:53
|
Revision: 19526 http://personalrobots.svn.sourceforge.net/personalrobots/?rev=19526&view=rev Author: goodfellow Date: 2009-07-23 21:08:43 +0000 (Thu, 23 Jul 2009) Log Message: ----------- Completed data collection setup Added offline testing system to make sure recording stopping and starting work. (Everything but the recording stopping/starting has been tested on the robot though) Modified Paths: -------------- pkg/trunk/sandbox/person_data/CMakeLists.txt pkg/trunk/sandbox/person_data/person_data.launch pkg/trunk/sandbox/person_data/src/joylistener.cpp pkg/trunk/sandbox/person_data/startRecording.sh pkg/trunk/sandbox/person_data/stopRecording.launch pkg/trunk/sandbox/person_data/stopRecording.sh Added Paths: ----------- pkg/trunk/sandbox/person_data/data_collector_record_dummy.launch pkg/trunk/sandbox/person_data/joylistener_dummy.cpp pkg/trunk/sandbox/person_data/launch_dummy.sh pkg/trunk/sandbox/person_data/person_data_dummy.launch pkg/trunk/sandbox/person_data/src/headhack.cpp pkg/trunk/sandbox/person_data/src/joyemu.cpp pkg/trunk/sandbox/person_data/src/joylistener_dummy.cpp pkg/trunk/sandbox/person_data/src/manual.cpp pkg/trunk/sandbox/person_data/src/named.cpp pkg/trunk/sandbox/person_data/startRecordingDummy.launch pkg/trunk/sandbox/person_data/startRecordingDummy.sh pkg/trunk/sandbox/person_data/stopRecordingDummy.launch pkg/trunk/sandbox/person_data/stopRecordingDummy.sh pkg/trunk/sandbox/person_data/teleop_joystick.launch pkg/trunk/sandbox/person_data/test.launch Modified: pkg/trunk/sandbox/person_data/CMakeLists.txt =================================================================== --- pkg/trunk/sandbox/person_data/CMakeLists.txt 2009-07-23 21:03:45 UTC (rev 19525) +++ pkg/trunk/sandbox/person_data/CMakeLists.txt 2009-07-23 21:08:43 UTC (rev 19526) @@ -32,3 +32,8 @@ rospack_add_executable(talker src/talker.cpp) rospack_add_executable(debugger src/debugger.cpp) rospack_add_executable(joylistener src/joylistener.cpp) +rospack_add_executable(joylistener_dummy src/joylistener_dummy.cpp) +rospack_add_executable(manual src/manual.cpp) +rospack_add_executable(named src/named.cpp) +rospack_add_executable(headhack src/headhack.cpp) +rospack_add_executable(joyemu src/joyemu.cpp) Added: pkg/trunk/sandbox/person_data/data_collector_record_dummy.launch =================================================================== --- pkg/trunk/sandbox/person_data/data_collector_record_dummy.launch (rev 0) +++ pkg/trunk/sandbox/person_data/data_collector_record_dummy.launch 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,4 @@ +<launch> + <node pkg="topic_tools" type="mux" args="/person_dummy_data_muxed /person_dummy_data"/> + <node pkg="rosrecord" type="rosrecord" args="-f /tmp/person_data_dummy /person_dummy_data_muxed"/> +</launch> Copied: pkg/trunk/sandbox/person_data/joylistener_dummy.cpp (from rev 19500, pkg/trunk/sandbox/person_data/src/joylistener.cpp) =================================================================== --- pkg/trunk/sandbox/person_data/joylistener_dummy.cpp (rev 0) +++ pkg/trunk/sandbox/person_data/joylistener_dummy.cpp 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,122 @@ +//Author: Ian Goodfellow +//When deadman switch is not pressed and head switch is pressed, +//button 0 stops recording and button 2 starts recording +//Assumes that recording is started initially + +#include <ros/ros.h> +#include <std_msgs/String.h> +#include "joy/Joy.h" +#include <string> + +const static int headButton = 6; +const static int deadmanButton = 4; +const static int recordButton = 2; +const static int stopButton = 0; + +static bool recording = true; +static bool headButtonPressed = false; +static bool deadmanButtonPressed = false; + +ros::Publisher debug_pub; + +void IA3N_INFO(const char * msg) +{ + //std_msgs::String rmsg; + //rmsg.data = std::string(msg); + //debug_pub.publish(rmsg); + ROS_INFO(msg); +} + +void startRecording() +{ + FILE * result = popen("bash `rospack find person_data`/startRecording.sh","r"); + fclose(result); + recording = true; +} + +void stopRecording() +{ + FILE * result = popen("bash `rospack find person_data`/stopRecording.sh","r"); + fclose(result); + recording = false; +} + + + +void joyCallback(const joy::Joy::ConstPtr & msg) +{ + //IA3N_INFO("Received joystick message!"); + + int n = msg->get_buttons_size(); + + //messages are sized so that they are just long enough to include the last 1 + + + if (headButton < n && msg->buttons[headButton]) + { + //IA3N_INFO("Head button pushed down"); + headButtonPressed = true; + } + else + { + //IA3N_INFO("Head button released"); + headButtonPressed = false; + } + + if (deadmanButton < n && msg->buttons[deadmanButton]) + { + //IA3N_INFO("Deadman button pushed down"); + deadmanButtonPressed = true; + } + else + { + //IA3N_INFO("Deadman button released"); + deadmanButtonPressed = false; + } + + + if (headButtonPressed && ! deadmanButtonPressed) + { + if (recordButton < n && msg->buttons[recordButton]) + { + if (!recording) + { + IA3N_INFO("Restarted recording"); + startRecording(); + } + else + { + IA3N_INFO("You are already recording!"); + } + } + + if (stopButton < n && msg->buttons[stopButton]) + { + if (recording) + { + IA3N_INFO("Stopped recording"); + stopRecording(); + } + else + { + IA3N_INFO("You have already stopped recording"); + } + } + } + + + //for ( int i = 0; i < n; i++) + //{ + // if (msg->buttons[i]) + // IA3N_INFO("Button %d pressed",i); + //} +} + +int main(int argc, char ** argv) +{ + ros::init(argc, argv, "joylistener"); + ros::NodeHandle n; + debug_pub = n.advertise<std_msgs::String>("ia3n_debug",100); + ros::Subscriber chatter_sub = n.subscribe("joy",100,joyCallback); + ros::spin(); +} Property changes on: pkg/trunk/sandbox/person_data/joylistener_dummy.cpp ___________________________________________________________________ Added: svn:mergeinfo + /pkg/branches/gazebo-branch-merge/sandbox/person_data/src/joylistener.cpp:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334 Added: pkg/trunk/sandbox/person_data/launch_dummy.sh =================================================================== --- pkg/trunk/sandbox/person_data/launch_dummy.sh (rev 0) +++ pkg/trunk/sandbox/person_data/launch_dummy.sh 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,2 @@ +#dummy version of launch.sh for offline testing +namedlaunch person_data_dummy.launch Modified: pkg/trunk/sandbox/person_data/person_data.launch =================================================================== --- pkg/trunk/sandbox/person_data/person_data.launch 2009-07-23 21:03:45 UTC (rev 19525) +++ pkg/trunk/sandbox/person_data/person_data.launch 2009-07-23 21:08:43 UTC (rev 19526) @@ -1,8 +1,11 @@ <launch> <node pkg="person_data" type="joylistener" output="screen"/> +<node pkg ="person_data" type="headhack" output="screen" /> +<!-- for some reason putting joylistener after the other launch files broke it, +and putting headhack after them makes roslaunch not find it! --> <include file="$(find person_data)/data_collector_record.launch" /> <include file="$(find person_data)/truly_passive.launch" /> -<include file="$(find pr2_alpha)/teleop_joystick.launch" /> +<include file="$(find person_data)/teleop_joystick.launch" /> </launch> Copied: pkg/trunk/sandbox/person_data/person_data_dummy.launch (from rev 19500, pkg/trunk/sandbox/person_data/person_data.launch) =================================================================== --- pkg/trunk/sandbox/person_data/person_data_dummy.launch (rev 0) +++ pkg/trunk/sandbox/person_data/person_data_dummy.launch 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,11 @@ +<launch> +<!-- dummy version of person_data.launch for offline testing --> +<node pkg="person_data" type="joylistener_dummy" output="screen"/> + +<!-- for some reason putting joylistener after the other launch files broke it, +and putting headhack after them makes roslaunch not find it! --> + +<node pkg="person_data" type="named" args="/person_dummy_data"/> +<include file="$(find person_data)/data_collector_record_dummy.launch" /> + +</launch> Property changes on: pkg/trunk/sandbox/person_data/person_data_dummy.launch ___________________________________________________________________ Added: svn:mergeinfo + /pkg/branches/gazebo-branch-merge/sandbox/person_data/person_data.launch:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334 Added: pkg/trunk/sandbox/person_data/src/headhack.cpp =================================================================== --- pkg/trunk/sandbox/person_data/src/headhack.cpp (rev 0) +++ pkg/trunk/sandbox/person_data/src/headhack.cpp 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,36 @@ +//pointhead.py doesn't seem to work from a launch file and only sends +//one message, so I am writing a node that calls it repeatedly + +#include <ros/ros.h> +#include <std_msgs/String.h> +#include <sstream> +#include <iostream> +using namespace std; + +int main(int argc, char ** argv) +{ + ros::init(argc, argv, "headhack"); + ros::NodeHandle n; + //ros::Publisher chatter_pub = n.advertise<std_msgs::String>("chatter",100); + ros::Rate loop_rate(1); + + + std::string command = "export PERSON_DATA=`rospack find person_data`; "; + command += "export POINT_HEAD=`rospack find pr2_mechanism_controllers`/scripts/pointhead.py; "; + command += "$POINT_HEAD `cat ${PERSON_DATA}/headpan.txt` `cat ${PERSON_DATA}/headtilt.txt`"; + + while (n.ok()) + { + FILE * output = popen(command.c_str(), "r"); + fclose(output); + //std::stringstream ss; + //ss << "Hello there! This is message [" << count << "]"; + //std_msgs::String msg; + //msg.data = ss.str(); + //chatter_pub.publish(msg); + //ROS_INFO("I published [%s]",ss.str().c_str()); + //ros::spinOnce(); + //loop_rate.sleep(); + //++count; + } +} Added: pkg/trunk/sandbox/person_data/src/joyemu.cpp =================================================================== --- pkg/trunk/sandbox/person_data/src/joyemu.cpp (rev 0) +++ pkg/trunk/sandbox/person_data/src/joyemu.cpp 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,52 @@ +//emulates the joystick for offline testing + +#include <ros/ros.h> +#include <std_msgs/String.h> +#include <sstream> +#include "joy/Joy.h" +#include <iostream> +using namespace std; + +int main(int argc, char ** argv) +{ + ros::init(argc, argv, "joyemu"); + ros::NodeHandle n; + ros::Publisher chatter_pub = n.advertise<joy::Joy>("joy",100); + ros::Rate loop_rate(5); + + + joy::Joy joy_msg; + + joy_msg.set_buttons_size(100); + + while (n.ok()) + { + for (int i = 0; i < 100; i++) + joy_msg.buttons[i] = 0; + + cout << "1. Send record stop" << endl; + cout << "2. Send record start" << endl; + cout << "3. Quit" << endl; + + joy_msg.buttons[6] = 1; //press head button to enable record starting/stopping + + + int choice; + cin >> choice; + + if (choice == 3) + return 0; + + assert(choice == 1 || choice == 2); + + if (choice == 1) + joy_msg.buttons[0] = 1; + else + joy_msg.buttons[2] = 1; + + + chatter_pub.publish(joy_msg); + ros::spinOnce(); + loop_rate.sleep(); + } +} Property changes on: pkg/trunk/sandbox/person_data/src/joyemu.cpp ___________________________________________________________________ Added: svn:mergeinfo + Modified: pkg/trunk/sandbox/person_data/src/joylistener.cpp =================================================================== --- pkg/trunk/sandbox/person_data/src/joylistener.cpp 2009-07-23 21:03:45 UTC (rev 19525) +++ pkg/trunk/sandbox/person_data/src/joylistener.cpp 2009-07-23 21:08:43 UTC (rev 19526) @@ -21,9 +21,9 @@ void IA3N_INFO(const char * msg) { - std_msgs::String rmsg; - rmsg.data = std::string(msg); - debug_pub.publish(rmsg); + //std_msgs::String rmsg; + //rmsg.data = std::string(msg); + //debug_pub.publish(rmsg); ROS_INFO(msg); } @@ -45,7 +45,7 @@ void joyCallback(const joy::Joy::ConstPtr & msg) { - IA3N_INFO("Received joystick message!"); + //IA3N_INFO("Received joystick message!"); int n = msg->get_buttons_size(); @@ -54,23 +54,23 @@ if (headButton < n && msg->buttons[headButton]) { - IA3N_INFO("Head button pushed down"); + //IA3N_INFO("Head button pushed down"); headButtonPressed = true; } else { - IA3N_INFO("Head button released"); + //IA3N_INFO("Head button released"); headButtonPressed = false; } if (deadmanButton < n && msg->buttons[deadmanButton]) { - IA3N_INFO("Deadman button pushed down"); + //IA3N_INFO("Deadman button pushed down"); deadmanButtonPressed = true; } else { - IA3N_INFO("Deadman button released"); + //IA3N_INFO("Deadman button released"); deadmanButtonPressed = false; } @@ -81,6 +81,7 @@ { if (!recording) { + IA3N_INFO("Restarted recording"); startRecording(); } else @@ -93,6 +94,7 @@ { if (recording) { + IA3N_INFO("Stopped recording"); stopRecording(); } else @@ -116,6 +118,5 @@ ros::NodeHandle n; debug_pub = n.advertise<std_msgs::String>("ia3n_debug",100); ros::Subscriber chatter_sub = n.subscribe("joy",100,joyCallback); - IA3N_INFO("joylistener subscribed to joy"); ros::spin(); } Added: pkg/trunk/sandbox/person_data/src/joylistener_dummy.cpp =================================================================== --- pkg/trunk/sandbox/person_data/src/joylistener_dummy.cpp (rev 0) +++ pkg/trunk/sandbox/person_data/src/joylistener_dummy.cpp 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,122 @@ +//Author: Ian Goodfellow +//When deadman switch is not pressed and head switch is pressed, +//button 0 stops recording and button 2 starts recording +//Assumes that recording is started initially + +#include <ros/ros.h> +#include <std_msgs/String.h> +#include "joy/Joy.h" +#include <string> + +const static int headButton = 6; +const static int deadmanButton = 4; +const static int recordButton = 2; +const static int stopButton = 0; + +static bool recording = true; +static bool headButtonPressed = false; +static bool deadmanButtonPressed = false; + +ros::Publisher debug_pub; + +void IA3N_INFO(const char * msg) +{ + //std_msgs::String rmsg; + //rmsg.data = std::string(msg); + //debug_pub.publish(rmsg); + ROS_INFO(msg); +} + +void startRecording() +{ + FILE * result = popen("bash `rospack find person_data`/startRecordingDummy.sh","r"); + fclose(result); + recording = true; +} + +void stopRecording() +{ + FILE * result = popen("bash `rospack find person_data`/stopRecordingDummy.sh","r"); + fclose(result); + recording = false; +} + + + +void joyCallback(const joy::Joy::ConstPtr & msg) +{ + //IA3N_INFO("Received joystick message!"); + + int n = msg->get_buttons_size(); + + //messages are sized so that they are just long enough to include the last 1 + + + if (headButton < n && msg->buttons[headButton]) + { + //IA3N_INFO("Head button pushed down"); + headButtonPressed = true; + } + else + { + //IA3N_INFO("Head button released"); + headButtonPressed = false; + } + + if (deadmanButton < n && msg->buttons[deadmanButton]) + { + //IA3N_INFO("Deadman button pushed down"); + deadmanButtonPressed = true; + } + else + { + //IA3N_INFO("Deadman button released"); + deadmanButtonPressed = false; + } + + + if (headButtonPressed && ! deadmanButtonPressed) + { + if (recordButton < n && msg->buttons[recordButton]) + { + if (!recording) + { + IA3N_INFO("Restarted recording"); + startRecording(); + } + else + { + IA3N_INFO("You are already recording!"); + } + } + + if (stopButton < n && msg->buttons[stopButton]) + { + if (recording) + { + IA3N_INFO("Stopped recording"); + stopRecording(); + } + else + { + IA3N_INFO("You have already stopped recording"); + } + } + } + + + //for ( int i = 0; i < n; i++) + //{ + // if (msg->buttons[i]) + // IA3N_INFO("Button %d pressed",i); + //} +} + +int main(int argc, char ** argv) +{ + ros::init(argc, argv, "joylistener"); + ros::NodeHandle n; + debug_pub = n.advertise<std_msgs::String>("ia3n_debug",100); + ros::Subscriber chatter_sub = n.subscribe("joy",100,joyCallback); + ros::spin(); +} Added: pkg/trunk/sandbox/person_data/src/manual.cpp =================================================================== --- pkg/trunk/sandbox/person_data/src/manual.cpp (rev 0) +++ pkg/trunk/sandbox/person_data/src/manual.cpp 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,44 @@ +#include <ros/ros.h> +#include <std_msgs/String.h> +#include <sstream> +#include <string> +using namespace std; + +//first arg is name of topic +//optional second arg is name of node + +int main(int argc, char ** argv) +{ + string topic; + string nodename; + + if (argc >= 2) + topic = argv[1]; + + if (argc >= 3) + nodename = argv[2]; + else + nodename = topic+"_publisher"; + + if (argc < 2 && argc > 3) + return -1; + + ros::init(argc, argv, nodename.c_str()); + ros::NodeHandle n; + ros::Publisher chatter_pub = n.advertise<std_msgs::String>(topic.c_str(),100); + ros::Rate loop_rate(5); + int count = 0; + while (n.ok()) + { + assert(false); //todo-- get line of input from user and publish it. use this to test morgan's mux nodes + std::stringstream ss; + ss << "Hello there! This is message [" << count << "]"; + std_msgs::String msg; + msg.data = ss.str(); + chatter_pub.publish(msg); + ROS_INFO("I published [%s]",ss.str().c_str()); + ros::spinOnce(); + loop_rate.sleep(); + ++count; + } +} Added: pkg/trunk/sandbox/person_data/src/named.cpp =================================================================== --- pkg/trunk/sandbox/person_data/src/named.cpp (rev 0) +++ pkg/trunk/sandbox/person_data/src/named.cpp 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,44 @@ +#include <ros/ros.h> +#include <std_msgs/String.h> +#include <sstream> +#include <string> +using namespace std; + +//first arg is name of topic +//optional second arg is name of node +//similar to manual except it just spews dummy messages instead of requesting that you type them + +int main(int argc, char ** argv) +{ + string topic; + string nodename; + + if (argc >= 2) + topic = argv[1]; + + if (argc >= 3) + nodename = argv[2]; + else + nodename = topic+"_publisher"; + + if (argc < 2 && argc > 3) + return -1; + + ros::init(argc, argv, nodename.c_str()); + ros::NodeHandle n; + ros::Publisher chatter_pub = n.advertise<std_msgs::String>(topic.c_str(),100); + ros::Rate loop_rate(5); + int count = 0; + while (n.ok()) + { + std::stringstream ss; + ss << "Hello there! This is message [" << count << "]"; + std_msgs::String msg; + msg.data = ss.str(); + chatter_pub.publish(msg); + ROS_INFO("I published [%s]",ss.str().c_str()); + ros::spinOnce(); + loop_rate.sleep(); + ++count; + } +} Modified: pkg/trunk/sandbox/person_data/startRecording.sh =================================================================== --- pkg/trunk/sandbox/person_data/startRecording.sh 2009-07-23 21:03:45 UTC (rev 19525) +++ pkg/trunk/sandbox/person_data/startRecording.sh 2009-07-23 21:08:43 UTC (rev 19526) @@ -1 +1 @@ -roslaunch start_recording.launch +roslaunch `rospack find person_data`/startRecording.launch Copied: pkg/trunk/sandbox/person_data/startRecordingDummy.launch (from rev 19500, pkg/trunk/sandbox/person_data/startRecording.launch) =================================================================== --- pkg/trunk/sandbox/person_data/startRecordingDummy.launch (rev 0) +++ pkg/trunk/sandbox/person_data/startRecordingDummy.launch 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,3 @@ +<launch> +<node pkg="topic_tools" type="switch_mux" args="/person_dummy_data_muxed /person_dummy_data"/> +</launch> Property changes on: pkg/trunk/sandbox/person_data/startRecordingDummy.launch ___________________________________________________________________ Added: svn:mergeinfo + /pkg/branches/gazebo-branch-merge/sandbox/person_data/startRecording.launch:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334 Copied: pkg/trunk/sandbox/person_data/startRecordingDummy.sh (from rev 19500, pkg/trunk/sandbox/person_data/startRecording.sh) =================================================================== --- pkg/trunk/sandbox/person_data/startRecordingDummy.sh (rev 0) +++ pkg/trunk/sandbox/person_data/startRecordingDummy.sh 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1 @@ +roslaunch `rospack find person_data`/startRecordingDummy.launch Property changes on: pkg/trunk/sandbox/person_data/startRecordingDummy.sh ___________________________________________________________________ Added: svn:mergeinfo + /pkg/branches/gazebo-branch-merge/sandbox/person_data/startRecording.sh:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334 Modified: pkg/trunk/sandbox/person_data/stopRecording.launch =================================================================== --- pkg/trunk/sandbox/person_data/stopRecording.launch 2009-07-23 21:03:45 UTC (rev 19525) +++ pkg/trunk/sandbox/person_data/stopRecording.launch 2009-07-23 21:08:43 UTC (rev 19526) @@ -1,10 +1,11 @@ <launch> -<node pkg="topic_tools" type="switch_mux" args="/wide_stereo/raw_stereo_muxed /dummy" machine="four"/> -<node pkg="topic_tools" type="switch_mux" args="/narrow_stereo/raw_stereo_muxed /dummy" machine="four"/> -<node pkg="topic_tools" type="switch_mux" args="/tf_message_muxed /dummy" machine="two"/> -<node pkg="topic_tools" type="switch_mux" machine="two" args="/mechanism_state_muxed /dummy"/> -<node pkg="topic_tools" type="switch_mux" machine="two" args="/base_scan_muxed /dummy"/> -<node pkg="topic_tools" type="switch_mux" machine="two" args="/tilt_scan_muxed /dummy"/> -<node pkg="topic_tools" type="switch_mux" machine="two" args="/laser_tilt_controller/laser_scanner_signal_muxed /dummy"/> -<node pkg="topic_tools" type="switch_mux" machine="two" args="/odom_muxed /dummy"> +<include file="$(find pr2_alpha)/$(env ROBOT).machine" /> +<node pkg="topic_tools" type="switch_mux" args="/wide_stereo/raw_stereo_muxed __none" machine="four"/> +<node pkg="topic_tools" type="switch_mux" args="/narrow_stereo/raw_stereo_muxed __none" machine="four"/> +<node pkg="topic_tools" type="switch_mux" args="/tf_message_muxed __none" machine="two"/> +<node pkg="topic_tools" type="switch_mux" machine="two" args="/mechanism_state_muxed __none"/> +<node pkg="topic_tools" type="switch_mux" machine="two" args="/base_scan_muxed __none"/> +<node pkg="topic_tools" type="switch_mux" machine="two" args="/tilt_scan_muxed __none"/> +<node pkg="topic_tools" type="switch_mux" machine="two" args="/laser_tilt_controller/laser_scanner_signal_muxed __none"/> +<node pkg="topic_tools" type="switch_mux" machine="two" args="/odom_muxed __none"/> </launch> Modified: pkg/trunk/sandbox/person_data/stopRecording.sh =================================================================== --- pkg/trunk/sandbox/person_data/stopRecording.sh 2009-07-23 21:03:45 UTC (rev 19525) +++ pkg/trunk/sandbox/person_data/stopRecording.sh 2009-07-23 21:08:43 UTC (rev 19526) @@ -1 +1 @@ -roslaunch stopRecording.launch +roslaunch `rospack find person_data`/stopRecording.launch Copied: pkg/trunk/sandbox/person_data/stopRecordingDummy.launch (from rev 19500, pkg/trunk/sandbox/person_data/stopRecording.launch) =================================================================== --- pkg/trunk/sandbox/person_data/stopRecordingDummy.launch (rev 0) +++ pkg/trunk/sandbox/person_data/stopRecordingDummy.launch 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,3 @@ +<launch> +<node pkg="topic_tools" type="switch_mux" args="/person_dummy_data_muxed __none"/> +</launch> Property changes on: pkg/trunk/sandbox/person_data/stopRecordingDummy.launch ___________________________________________________________________ Added: svn:mergeinfo + /pkg/branches/gazebo-branch-merge/sandbox/person_data/stopRecording.launch:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334 Copied: pkg/trunk/sandbox/person_data/stopRecordingDummy.sh (from rev 19500, pkg/trunk/sandbox/person_data/stopRecording.sh) =================================================================== --- pkg/trunk/sandbox/person_data/stopRecordingDummy.sh (rev 0) +++ pkg/trunk/sandbox/person_data/stopRecordingDummy.sh 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1 @@ +roslaunch `rospack find person_data`/stopRecordingDummy.launch Property changes on: pkg/trunk/sandbox/person_data/stopRecordingDummy.sh ___________________________________________________________________ Added: svn:mergeinfo + /pkg/branches/gazebo-branch-merge/sandbox/person_data/stopRecording.sh:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334 Added: pkg/trunk/sandbox/person_data/teleop_joystick.launch =================================================================== --- pkg/trunk/sandbox/person_data/teleop_joystick.launch (rev 0) +++ pkg/trunk/sandbox/person_data/teleop_joystick.launch 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,49 @@ +<launch> +<!-- this is a fork of pr2_alpha/teleop_joystick. this version only allows +the operator to teleop the base --> + +<param name="base_controller/odom_publish_rate" value="30.0"/> +<param name="base_controller/autostart" value="true"/> +<node pkg="mechanism_control" type="spawner.py" args="$(find pr2_default_controllers)/base_controller.xml" output="screen"/> + +<node pkg="mechanism_control" type="spawner.py" args="$(find pr2_default_controllers)/torso_lift_vel_controller.xml" output="screen" /> + + +<include file="$(find pr2_default_controllers)/head_position_controller.launch" /> + + +<!-- The robot pose EKF is launched with the base controller--> +<include file="$(find robot_pose_ekf)/robot_pose_ekf.launch" /> + + <group name="wg"> +<param name="axis_vx" value="3" type="int"/> +<param name="axis_vy" value="2" type="int"/> +<param name="axis_vw" value="0" type="int"/> +<param name="axis_pan" value="0" type="int"/> +<param name="axis_tilt" value="3" type="int"/> + +<param name="max_vw" value="0.8" /> +<param name="max_vx" value="0.5" /> +<param name="max_vy" value="0.5" /> +<param name="max_vw_run" value="1.4" /> +<param name="max_vx_run" value="1.0" /> +<param name="max_vy_run" value="1.0" /> +<param name="tilt_step" value="0.1" /> +<param name="pan_step" value="0.1" /> + + +<param name="run_button" value="5" type="int" /> +<param name="torso_dn_button" value="500" type="int" /> +<param name="torso_up_button" value="500" type="int" /> +<param name="head_button" value="500" type="int" /> + +<param name="deadman_button" value="4" type="int"/> +<node pkg="teleop_pr2" type="teleop_pr2" output="screen" > +<remap from="/head_controller/command" to="/davy_jones"/> +</node> + + </group> + + +</launch> + Added: pkg/trunk/sandbox/person_data/test.launch =================================================================== --- pkg/trunk/sandbox/person_data/test.launch (rev 0) +++ pkg/trunk/sandbox/person_data/test.launch 2009-07-23 21:08:43 UTC (rev 19526) @@ -0,0 +1,3 @@ +<launch> +<node pkg="person_data" type="headhack" output="screen"/> +</launch> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |