ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

bgagnon's profile - activity

2022-06-20 04:26:52 -0500 received badge  Nice Question (source)
2015-04-08 13:17:41 -0500 received badge  Famous Question (source)
2014-01-28 17:26:49 -0500 marked best answer Creating an RVIZ plugin for a new display type

Hello,

So for my project I created my own message type and was hoping to have it displayed in RVIZ. It is a slight adaptation of GridCells, but instead of containing a list of Points, it contains a list of a Point message that I created. The custom Point message contains two more pieces of information.

My problem is that the User Guide for RVIZ has told me that there is no API documentation. Is this still true? Is there any way for me to write a plugin? I think using RVIZ to display custom types of messages would make it even more powerful of a tool. Thanks for the help,

Blair

2014-01-28 17:26:48 -0500 marked best answer "Corrected" or actual odometry Data

Hello,

Right now I'm playing around with a node which build a GridCells and publishes it. It also broadcasts a transform that says the GridCells are aligned exactly on the map I have.

Then, when the node receives 'odom' data, it adds a cell corresponding to the odom position data to the GridCells.cells list. When I run it in rviz, I want to simply have the path that the turtlebot has taken to be traced out. Everything works great except the odom traced does not line up with the turtlebot and is offset by a few meters.

Where can I get the actual or "corrected" or the position of the robot that the gmapping node thinks it is. Essentially I'm asking how gmapping, or rviz or tf or move_base (not sure which one) knows where the robot is. How is the position of the robot model determined and is that position published?

Thanks for all the help!

2014-01-28 17:26:48 -0500 marked best answer Creating a throttle node

Hello,

I was only able to find documentation online for command line tools for throttling or the other topic_tools for that matter.

Is there a way to create a throttle node from a launch file? I want to go from 30hz to something less. Thanks,

Blair

2014-01-28 17:26:47 -0500 marked best answer Advice on mapping with custom information

Hello,

When I first started using ROS, I didn't implement it to it's fullest extent and ended up writing code that was already written for me (much better none the less) and now I would like some direction on what I should do so that I don't go down this path again.

I'm working on mapping and navigation and would like to expand the amount of information that is kept in the map message. My current understanding is that, using slam_mapping, a laser scan is converted to a map topic which gets published. This map topic contains MapMetaData and an OccupancyGrid which says what the chances of collision with the robot is in a given spot on the map.

I would like to add more information to the map, for example (not what I'm actually doing, but same deal) storing temperature data as I build the map. I want to use what's already given to me to the fullest and utilize it properly. What should I do?

Currently, this is my best idea: Create my own topic type similar to that of the OccupancyGrid and instead of probability data, it will contain data about the temperature. If this is the way to go, how do I go about creating my own topic type?

All help greatly appreciated!

Blair

2014-01-28 17:26:35 -0500 marked best answer Permission errors roscreate-pkg using ROS electric without rosws

Hello,

I've been able to find questions similar to the one, but they all end being resolved in a way that I don't think I can choose.

I'm running ROS Electric on a turtlebot laptop and have another computer running ROS Fuerte. Both are as updated as possible. They are both network properly and can communicate well.

The problem I am having is common, I can't create new packages anywhere because of a permission error. I have no problems on my workstation computer, just the laptop running ROS Electric. Here is the terminal output below after running this command (occurs through ssh or on the laptop itself) from ~/ros_workspace

    robolab@robolab:~/ros_workspace$ roscreate-pkg robonav
Traceback (most recent call last):
  File "/opt/ros/electric/ros/bin/roscreate-pkg", line 35, in <module>
    roscreate.roscreatepkg.roscreatepkg_main()
  File "/opt/ros/electric/ros/tools/roscreate/src/roscreate/roscreatepkg.py", line 125, in roscreatepkg_main
    create_package(package, author_name(), depends, uses_roscpp=uses_roscpp, uses_rospy=uses_rospy)
  File "/opt/ros/electric/ros/tools/roscreate/src/roscreate/roscreatepkg.py", line 63, in create_package
    os.makedirs(p)
  File "/usr/lib/python2.6/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/home/robolab/ros_workspace/robonav'

I've tried tirelessly to get the package path's set correctly and when I do

echo $ROS_PACKAGE_PATH

it shows this.

/home/robolab/ros_workspace:/opt/ros/electric/share:/opt/ros/electric/stacks

What more must I do to tell ROS where my stuff should go... Keep in mind I don't have rosws since this is electric. Below are the lower contents of my ~/.bashrc file and my setup.sh file.

Bash file

source /opt/ros/electric/setup.bash
export ROS_MASTER_URI=http://192.168.0.214:11311
export ROS_HOSTNAME=192.168.0.214
export ROS_PACKAGE_PATH=~/ros_workspace:/opt/ros/electric/share:/opt/ros/electric/stacks
export ROS_WORKSPACE=~/ros_workspace

setup file

export ROS_ROOT=/opt/ros/electric/ros
export PATH=${ROS_ROOT}/bin:${PATH}
export PYTHONPATH=${ROS_ROOT}/core/roslib/src:${PYTHONPATH}
export ROS_PACKAGE_PATH=~/ros_workspace
export ROS_PACKAGE_PATH=/opt/ros/electric/stacks:${ROS_PACKAGE_PATH}
2014-01-28 17:26:34 -0500 marked best answer Using rosbag with rosjava

Hello everyone,

I'm using the latest software for java and rosjava and after searching for a few hours, I couldn't find any api information on how to use rosbag from rosjava. Specifically, writing and reading to and from a bag file. Is this possible?

Any help would be greatly appreciated. Thanks,

Blair

2014-01-28 17:26:12 -0500 marked best answer Message Type: rosjava subscriber problem

Hello ROS community,

My problem seems pretty simple to fix, but since I'm new to ROS (and my java is a bit rusty) and I'm running into a few problems. Right now, all I'm doing is trying to create a subscriber node that will subscribe to the turtlebot's /odom message. Currently in my onNewMessage method, I have no code except a simple System.out.println("Well, at least I got something..."); To test if I successfully detect the message.

Unfortunately I never make it to that point in my code as I run into this guy:

EXCEPTION: java.lang.NegativeArraySizeException) org.ros.exception.RosRuntimeException: java.lang.NegativeArraySizeException

I'm positive that the /odom topic is running and can rostopic echo it just fine. Here is my code, I got it from the rosjava external documentation and modified it to try and accept the nav_msgs/Odometry type instead of a String. I got the original code here: http://docs.rosjava.googlecode.com/hg/rosjava_core/html/getting_started.html

package mypackagename;

import nav_msgs.Odometry;

import org.ros.message.MessageListener;
import org.ros.namespace.GraphName;
import org.ros.node.AbstractNodeMain;
import org.ros.node.ConnectedNode;
import org.ros.node.topic.Subscriber;

public class OdometryCollector extends AbstractNodeMain {
   public GraphName getDefaultNodeName() {
     return new GraphName("mypackagename/OdemetryCollector");
   }

   public void onStart(ConnectedNode connectedNode) {
      Subscriber<nav_msgs.Odometry> odomCollector =    connectedNode.newSubscriber("/odom", "nav_msgs/Odometry");
      odomCollector.addMessageListener(new MessageListener<nav_msgs.Odometry>() {

  public void onNewMessage(nav_msgs.Odometry arg0) {
         System.out.println("Well, At least I got something...");
  };
 });
 }
}

This is my console output with the --info option activated:

Loading node class: robonav.OdometryCollector Jun 20, 2012 9:36:36 AM org.ros.internal.node.client.Registrar <init> INFO: MasterXmlRpcEndpoint URI: http://192.168.0.24:11311 Jun 20, 2012 9:36:36 AM org.ros.internal.node.client.Registrar onPublisherAdded INFO: Registering publisher: Publisher<publisherdefinition<publisheridentifier<nodeidentifier< robonav="" odemetrycollector,="" <a="" href="http://192.168.0.226:39828">http://192.168.0.226:39828/>, TopicIdentifier</rosout>>, Topic<topicidentifier< rosout="">, TopicDescription<rosgraph_msgs log,="" acffd30cd6b6de30f120938c17c593fb="">>>> Jun 20, 2012 9:36:36 AM org.ros.internal.node.client.Registrar callMaster INFO: Response<success, registered="" [="" robonav="" odemetrycollector]="" as="" publisher="" of="" [="" rosout],="" [<a="" href="http://192.168.0.24:55348">http://192.168.0.24:55348/]> Jun 20, 2012 9:36:36 AM org.ros.internal.node.topic.DefaultPublisher$1 onMasterRegistrationSuccess INFO: Publisher registered: Publisher<publisherdefinition<publisheridentifier<nodeidentifier< robonav="" odemetrycollector,="" <a="" href="http://192.168.0.226:39828">http://192.168.0.226:39828/>, TopicIdentifier</rosout>>, Topic<topicidentifier< rosout="">, TopicDescription<rosgraph_msgs log,="" acffd30cd6b6de30f120938c17c593fb="">>>> Jun 20, 2012 9:36:36 AM org.ros.internal.node.client.Registrar onSubscriberAdded INFO: Registering subscriber: Subscriber<topic<topicidentifier< odom="">, TopicDescription<nav_msgs odometry,="" cd5e73d190d741a2f92e81eda573aca7&gt;&gt;&gt;="" jun="" 20,="" 2012="" 9:36:36="" am="" org.ros.internal.node.client.registrar="" callmaster="" info:="" response<success,="" subscribed="" to="" [="" odom],="" [<a="" href="http://192.168.0.24:60375">http://192.168.0.24:60375/]> Jun 20, 2012 9:36:36 AM org.ros.internal.node.topic.DefaultSubscriber$1 onMasterRegistrationSuccess INFO: Subscriber registered: Subscriber<topic ...

(more)
2012-11-29 01:31:13 -0500 received badge  Famous Question (source)
2012-10-16 04:09:03 -0500 received badge  Famous Question (source)
2012-09-27 00:49:18 -0500 received badge  Famous Question (source)
2012-09-16 08:28:37 -0500 received badge  Popular Question (source)
2012-09-16 08:28:37 -0500 received badge  Notable Question (source)
2012-09-11 05:42:39 -0500 received badge  Popular Question (source)
2012-09-11 05:42:39 -0500 received badge  Notable Question (source)
2012-09-07 02:15:24 -0500 received badge  Popular Question (source)
2012-09-07 02:15:24 -0500 received badge  Notable Question (source)
2012-09-06 08:39:55 -0500 received badge  Notable Question (source)
2012-09-06 08:39:55 -0500 received badge  Popular Question (source)
2012-09-06 08:39:55 -0500 received badge  Famous Question (source)
2012-08-31 07:13:00 -0500 received badge  Popular Question (source)
2012-08-31 07:13:00 -0500 received badge  Famous Question (source)
2012-08-31 07:13:00 -0500 received badge  Notable Question (source)
2012-08-24 10:12:19 -0500 received badge  Popular Question (source)
2012-08-24 10:12:19 -0500 received badge  Notable Question (source)
2012-08-24 10:12:19 -0500 received badge  Famous Question (source)