diff --git a/README.md b/README.md new file mode 100644 index 0000000..8696990 --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +### Tutorial code for using a Linux Joystick device with ROS + +This code demonstrates how to setup a linux joystick device with ROS and interface it with the turtlesim program. The tutorial text is available on the ROS Wiki article [Writing a Teleoperation Node for a Linux-Supported Joystick][1]. + +[1]:http://wiki.ros.org/joy/Tutorials/WritingTeleopNode diff --git a/turtle_teleop/src/teleop_turtle_joy.cpp b/turtle_teleop/src/teleop_turtle_joy.cpp index 187b54b..e4a4690 100644 --- a/turtle_teleop/src/teleop_turtle_joy.cpp +++ b/turtle_teleop/src/teleop_turtle_joy.cpp @@ -1,7 +1,7 @@ // %Tag(FULL)% // %Tag(INCLUDE)% #include -#include +#include #include // %EndTag(INCLUDE)% // %Tag(CLASSDEF)% @@ -34,7 +34,7 @@ TeleopTurtle::TeleopTurtle(): nh_.param("scale_linear", l_scale_, l_scale_); // %EndTag(PARAMS)% // %Tag(PUB)% - vel_pub_ = nh_.advertise("turtle1/command_velocity", 1); + vel_pub_ = nh_.advertise("turtle1/cmd_vel", 1); // %EndTag(PUB)% // %Tag(SUB)% joy_sub_ = nh_.subscribe("joy", 10, &TeleopTurtle::joyCallback, this); @@ -43,10 +43,10 @@ TeleopTurtle::TeleopTurtle(): // %Tag(CALLBACK)% void TeleopTurtle::joyCallback(const sensor_msgs::Joy::ConstPtr& joy) { - turtlesim::Velocity vel; - vel.angular = a_scale_*joy->axes[angular_]; - vel.linear = l_scale_*joy->axes[linear_]; - vel_pub_.publish(vel); + geometry_msgs::Twist twist; + twist.linear.x = l_scale_*joy->axes[linear_]; + twist.angular.z = a_scale_*joy->axes[angular_]; + vel_pub_.publish(twist); } // %EndTag(CALLBACK)% // %Tag(MAIN)%