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

camilla's profile - activity

2018-10-08 09:24:59 -0500 received badge  Necromancer (source)
2016-12-16 04:09:49 -0500 received badge  Good Question (source)
2015-06-24 13:38:59 -0500 marked best answer Hector plugins for gazebo problem

Can I use hector plugins with ros electric?
The command

apt-get install ros-electric-hector-gazebo

doesn't work!

2015-06-22 00:32:57 -0500 marked best answer navigation stack

When i run the navigation stack I get this error

[ WARN] [1351800032.265951422]: Waiting on transform from /base_link to /world to become available before running costmap, tf error:

I get this error only if I use a static map. The fact is that I never use a frame /world so I can't figure out why that transformation is needed.

This is my local costmap configuration file:

local_costmap:
      global_frame: /map
      robot_base_frame: /base_link
      update_frequency: 5
      publish_frequency: 1
      static_map: false
      rolling_window: true
      width: 1.0
      height: 1.0
      resolution: 0.1

This is my common params configuration file:

obstacle_range: 1.0
raytrace_range: 1.5
robot_radius: 0.1
inflation_radius: 0.1
transform_tolerance: 0.3

observation_sources: laser_scan_sensor 

laser_scan_sensor: {sensor_frame: /ultrasonic_sensor, data_type: LaserScan, topic: scan, marking: true, clearing: true}

This is my global costmap configuration file:

 global_costmap:
      global_frame: /map
      robot_base_frame: /base_link
      update_frequency: 2
      static_map: true
      rolling_window: false
      width: 6.0
      height: 6.0

This is my move_base.launch file:

<launch>

  <param name="map_file_name" value="$(find nxt_lejos_map_server)/mymap.svg"/>
  <node pkg="nxt_lejos_map_server" 
    type="nxt_lejos_map_server" 
    args="org.lejos.ros.nodes.PublishOccupancyMap" 
    name="nxt_lejos_map_server" 
    output="screen" />

     <!--- Run AMCL -->
  <!--- <include file="$(find amcl)/examples/amcl_omni.launch" /> -->

  <node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen">
    <rosparam file="$(find nxt_lejos_navigation)/costmap_common_params.yaml" command="load" ns="global_costmap" />
    <rosparam file="$(find nxt_lejos_navigation)/costmap_common_params.yaml" command="load" ns="local_costmap" />
    <rosparam file="$(find nxt_lejos_navigation)/local_costmap_params.yaml" command="load" />
    <rosparam file="$(find nxt_lejos_navigation)/global_costmap_params.yaml" command="load" />

    <rosparam file="$(find nxt_lejos_navigation)/base_local_planner_params.yaml" command="load" />

    <param name="controller_frequency" value="5.0"/>
  </node>
</launch>
2015-04-23 03:23:02 -0500 marked best answer Problem with navigation stack

Hi
I'm using the navigation stack to move my robot. I defined the tf between /map and /odom and the tf between /odom and /base_link so my tf tree respects the ROS convention. But when I launch move_base.launch I get this warning:

[ WARN] [1346331439.052407413]: Waiting on transform from /base_link to /map to become available before running costmap, tf error:

How can I solve it?

2015-04-07 02:49:20 -0500 received badge  Famous Question (source)
2015-04-05 16:06:58 -0500 received badge  Notable Question (source)
2015-02-11 03:35:12 -0500 received badge  Famous Question (source)
2014-11-11 02:15:52 -0500 received badge  Famous Question (source)
2014-11-05 08:03:18 -0500 received badge  Famous Question (source)
2014-11-05 08:03:18 -0500 received badge  Notable Question (source)
2014-07-28 10:21:01 -0500 received badge  Famous Question (source)
2014-07-14 02:51:58 -0500 received badge  Famous Question (source)
2014-05-20 00:53:51 -0500 received badge  Famous Question (source)
2014-04-20 13:37:03 -0500 marked best answer Local Planner Creation

Hi,

I'd like to create a local planner which implements the vfh algorithm and substitute it in the navigation stack. Any suggestion from where I can start or about previous work about it.
I saw that I should use the interface BaseLocalPlanner of nav_core.
But how can i substitute it when it is finished?
I can't figure out wher to specify which local planner I want to use.
Thank you in advance.

2014-04-20 13:34:31 -0500 marked best answer service problem

Hi, I defined a server called DetectsObs.srv

float32 x
float32 y
float32 theta
float32 threshold
---
Points obstacles
bool obs
bool processFinished

and two msg type
Point.msg

float32 x
float32 y

and Points.msg

Point[] points

I have a service whose response is obstacle_detection::DetectsObs::Response &res (obstacle_detection is my package) I want to set the field obstacles of my response but if I do

obstacle_detection::Point obstacle;
obstacle.x = 0;
obstacle.y = 0;
res.obstacles[0] = obstacle;

I get this error

error: no match for ‘operator[]’ in ‘res->obstacle_detection::DetectsObsResponse_<std::allocator<void> >::obstacles[0]’

What should i do to fix it.
Thank you in advance

2014-04-20 13:33:20 -0500 marked best answer publishers priority

Hi everyone! Is there the possibility to give different priorities to publishers which publish on the same topic? For example I want to teleoperate my robot, so there is a node for teleoperation that send messages on the /cmd_vel topic on the basis of what I click on the keyboard, but I also want to have a node that checks if there are obstacles on my way and in that case stops my robot, so it should publish with a higher priority on /cmd_vel a message that sets the velocities to 0. Is something like this possible? Thanks

2014-04-20 13:31:57 -0500 marked best answer Subscriber issue

What should I do if I want that the callBack function of a subscriber returns a value. In particular I have a subscriber that receive sensor_msgs/Range and I want the callBack function to return the range value that is in the message but I don't now how to implement it.
Any suggestion?

Thanks in advance

2014-04-20 13:24:37 -0500 marked best answer infrared sensor

Anyone can tell me the meanings of the fields of IrMsg.msg (http://svn.code.sf.net/p/roscorobot/code/trunk/Electric/Corobot/corobot_msgs/msg/IrMsg.msg)?

float32 voltage1
float32 voltage2
float32 range1
float32 range2

Why there are two ranges and two voltages?

2014-04-20 13:24:06 -0500 marked best answer Add a camera to erratic robot model

Hi!
I'm running the demo_2dnav_slam .launch which simulates an erratic robot equipped with an hokuyo laser range finder in Gazebo.
I tried to move the robot using

rosrun erratic_teleop erratic_keyboard_teleop

and the simulation was fine.
Then I added a camera sensor to the robot model, adding this code to erratic_base.xacro

<joint name="my_camera_joint" type="fixed">

        <origin xyz="${top_size_x/2 -0.01 -0.04} 0 ${top_size_z/2 +0.025}" rpy="0 0 0" />
            <parent link="base_top_link" />
            <child link="my_camera_link" /> 

    </joint>

    <link name="my_camera_link">
            <inertial>
                <mass value="0.01"/>
                <origin xyz="0 0 0" />
                <inertia ixx="0.001" ixy="0.0" ixz="0.0"
                         iyy="0.01" iyz="0.0" izx="0.0"
                         izz="0.01" />
            </inertial>

            <visual>
               <origin xyz="0 0 0" rpy="0 0 0"/>
               <geometry>
                  <box size="0.05 0.05 0.05" />
               </geometry>
            </visual>

            <collision>
                <origin xyz="0.0 0.0 0.0" rpy="0 0 0" />
                <geometry>
                    <box size="0.001 0.001 0.001"/>
                </geometry>
            </collision>
        </link>

    <gazebo reference="my_camera_link">
     <sensor:camera name="my_camera_sensor">
     <imageFormat>R8G8B8</imageFormat>
         <hfov>90</hfov>
     <nearClip>0.01</nearClip>
     <farClip>100</farClip>
     <updateRate>20.0</updateRate>
        <controller:gazebo_ros_camera name="my_camera_controller" plugin="libgazebo_ros_camera.so">
          <alwaysOn>true</alwaysOn>
          <updateRate>20.0</updateRate>
      <imageTopicName>my_camera/image</imageTopicName>
          <frameName>my_camera_link</frameName>
          <interface:camera name="my_camera_iface" />
        </controller:gazebo_ros_camera>
      </sensor:camera>
      <turnGravityOff>true</turnGravityOff>
      <material>Erratic/White</material>
    </gazebo>

<joint name="my_camera_optical_joint" type="fixed">
      <origin xyz="0 0 0" rpy="${-M_PI/2} 0.0 ${-M_PI/2}" />
      <parent link="my_camera_link" />
      <child link="my_camera_optical_frame"/>
    </joint>
    <link name="my_camera_optical_frame">
      <inertial>
        <mass value="0.01" />
        <origin xyz="0 0 0" />
        <inertia ixx="0.001"  ixy="0.0"  ixz="0.0"
                 iyy="0.001"  iyz="0.0"
                 izz="0.001" />
      </inertial>
      <visual>
        <origin xyz="0 0 0" rpy="0 0 0"/>
        <geometry>
          <box size="0.001 0.001 0.001" />
        </geometry>
      </visual>
      <collision>
        <origin xyz="0 0 0" rpy="0 0 0"/>
        <geometry>
          <box size="0.001 0.001 0.001" />
        </geometry>
      </collision>
    </link>

To do this I followed the tutorial: link

Then I tried to see if the camera was working, with:

rosrun image_view image_view image:=/my_camera/image

And it worked.
The problem is that the new model of the erratic robot lost stability and when i tried to teleoperate the new model it rears up.
Do you know how to fix this problem?

2014-04-20 13:24:03 -0500 marked best answer simulation

Hi!
When I ran a simulation in gazebo and I use rviz to send goals what my robot does in rviz is different from what it does in gazebo.
More precisely if I set a goal with the rviz tool 2d nav goal i can see the robot in gazebo moving in a smooth way but not in the right direction to reach the goal and the robot in rviz which change its position in a non-continuous way (e.g. it disappear from (x,y) and reapper in (x2,y2) which is far from the previous position).
Further more while the robot in gazebo does a rotation of k rad the one in rviz does a rotation of h rad (with h < k).
Setting the laser decay time to 10 and teleoperating the robot I can see that the scans are coinciding if I move the robot forward or backward but they're totally not coinciding if I let the robot rotate in place. Instead I was expecting to see the same translation and rotation performed by the robot in gazebo and the robot in rviz. What could be the issue?

What i do is: To launch pioneer3dx.gazebo.launch to simulate the p3dx robot.

<launch>

  <include file="$(find gazebo_worlds)/launch/office_world.launch"/>

  <include file="$(find p2os_urdf)/launch/upload_pioneer3dx.xml"/>

  <!-- push robot_description to factory and spawn robot in gazebo -->
  <node name="spawn_pioneer" pkg="gazebo" type="spawn_model" 
    args="-z 0.051 
          -urdf 
          -param robot_description  
          -model robot_description" 
    respawn="false" output="screen" />

  <!-- Controller Manager -->
  <include file="$(find pr2_controller_manager)/controller_manager.launch" />

  <!-- load controllers -->
  <node name="diffdrive" pkg="gazebo_plugins" type="gazebo_ros_diffdrive" respawn="true" output="screen"/>


</launch>

Then I'm launching the navigation.launch file:

<launch>
    <master auto="start"/>

    <!-- Run the map server (you can run it here or in another terminal) -->
    <node name="map_server" pkg="map_server" type="map_server" args="$(find p2os_nav)/simple_office_map.yaml" respawn="true"/> 

    <!--- Run AMCL -->
    <include file="$(find p2os_launch)/amcl.launch" />

    <node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen">
        <rosparam file="$(find p2os_launch)/costmap_common_params.yaml" command="load" ns="global_costmap" />
        <rosparam file="$(find p2os_launch)/costmap_common_params.yaml" command="load" ns="local_costmap" />
        <rosparam file="$(find p2os_launch)/local_costmap_params.yaml" command="load" />
        <rosparam file="$(find p2os_launch)/global_costmap_params.yaml" command="load" />
        <rosparam file="$(find p2os_launch)/base_local_planner_params.yaml" command="load" />
        <param name="base_global_planner" type="string" value="navfn/NavfnROS" />
        <param name="conservative_reset_dist" type="double" value="3.0" />
        <param name="controller_frequency" type="double" value="15.0" />
        <remap from="odom" to="erratic_odometry/odom"/>
    </node>


</launch>

and also rviz (with the command rosrun rviz rviz). Surfing on the web i read that it could be a problem of too slow odometry, but what to do to fix it?

The /tf between /odom and /base_link and the nav_msgs odom received by move_base is published by the gazebo diffdrive plugin:

#include <gazebo/gazebo.h>
#include <gazebo/GazeboError.hh>
#include <gazebo/Quatern.hh>

#include <ros/ros.h>
#include <tf/transform_broadcaster.h>
#include <geometry_msgs/Twist.h>
#include <nav_msgs/Odometry.h>

#include <boost/bind.hpp>

class DiffDrive {
public:
  libgazebo::PositionIface *posIface;
  ros::NodeHandle* rnh_;
  ros::Subscriber ...
(more)
2014-04-20 13:23:51 -0500 marked best answer Getting started with Corobot

Hi!
I'd like to start using ros with a Corobot but I can't find any documentation.
What should i do to install the Corobot package?
And are there any tutorials and an urdf model for that robot?
Thank you!

2014-04-20 13:22:48 -0500 marked best answer P2os navigation stack

Hi
I'm using the navigation stack of the p2os package with Gazebo.
I'm launching pioneer3dx.gazebo.launch to simulate the p3dx robot.

<launch>

  <include file="$(find gazebo_worlds)/launch/office_world.launch"/>

  <include file="$(find p2os_urdf)/launch/upload_pioneer3dx.xml"/>

  <!-- push robot_description to factory and spawn robot in gazebo -->
  <node name="spawn_pioneer" pkg="gazebo" type="spawn_model" 
    args="-z 0.051 
          -urdf 
          -param robot_description  
          -model robot_description" 
    respawn="false" output="screen" />

  <!-- Controller Manager -->
  <include file="$(find pr2_controller_manager)/controller_manager.launch" />

  <!-- load controllers -->
  <node name="diffdrive" pkg="gazebo_plugins" type="gazebo_ros_diffdrive" respawn="true" output="screen"/>


</launch>

Then I'm launching the navigation.launch file:

<launch>
    <master auto="start"/>

    <!-- Run the map server (you can run it here or in another terminal) -->
    <node name="map_server" pkg="map_server" type="map_server" args="$(find p2os_nav)/simple_office_map.png 0.1" respawn="true"/> 

    <!--- Run AMCL -->
    <include file="$(find p2os_launch)/amcl.launch" />

    <node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen">
        <rosparam file="$(find p2os_launch)/costmap_common_params.yaml" command="load" ns="global_costmap" />
        <rosparam file="$(find p2os_launch)/costmap_common_params.yaml" command="load" ns="local_costmap" />
        <rosparam file="$(find p2os_launch)/local_costmap_params.yaml" command="load" />
        <rosparam file="$(find p2os_launch)/global_costmap_params.yaml" command="load" />
        <rosparam file="$(find p2os_launch)/base_local_planner_params.yaml" command="load" />
        <param name="base_global_planner" type="string" value="NavfnROS" />
        <param name="conservative_reset_dist" type="double" value="3.0" />
        <param name="controller_frequency" type="double" value="15.0" />
    </node>
</launch>

but I get this error:

[ WARN] [1358420453.650886449, 1103.836000000]: Waiting on transform from /base_link to /map to become available before running costmap, tf error:

This transformation shouldn't be published by the navigation stack itself? I should create a node which publish it?

2014-04-20 13:22:15 -0500 marked best answer Load a map in map_server

And how can I load a map into the map server?
I'm calling:

<node name="map_server" pkg="map_server" type="map_server" args="$(find p2os_nav)/simple_office_map.svg 0.1f"/>

in the launch file but I get this error:

[map_server-1] process has died [pid 12465, exit code 255].
log files: /home/camilla/.ros/log/8b409eb6-5feb-11e2-b202-000fb0a0b12e/map_server-1*.log

and nothing is published on the /map topic. Any ideas? Cheers!

2014-04-20 13:20:53 -0500 marked best answer rviz/gazebo path plot

Hi everyone!
I'd like to plot the path followed by my robot (a p3dx) during the simulation.
Is it possible to do it in gazebo or with a rviz plugin?
Any suggestion?

2014-04-20 13:20:48 -0500 marked best answer Bullet stack

i want to use some elements of bullet library in my code.
In particular I want to convert from quaternions to roll,pitch and yaw.
I've seen that i can do:

btQuaternion q;
double roll, pitch, yaw;
tf::quaternionMsgToTF(msg->pose.pose.orientation, q);
btMatrix3x3(q).getRPY(roll, pitch, yaw);

But I don't know how to include the bullet library in my code. Any help?

2014-04-20 13:17:52 -0500 marked best answer Sensors in Gazebo

Hi all! I'd like to add an hokuyo laser to the pioneer that I'm simulating with gazebo. But I don't know how to do it.
I've seen that with Gazebo you can simulate an erratic robot with a laser on it. So I added:

 <include filename="$(find erratic_description)/urdf/erratic_hokuyo_laser.xacro" />
 <!-- BASE LASER ATTACHMENT -->
<erratic_hokuyo_laser parent="base_link">
    <origin xyz="0.2 0 0.001" rpy="0 0 0" />
</erratic_hokuyo_laser>

to the pioneer3dx.xacro. But when I run the simulation I can't see the laser in the robot model and /scan in the topic list. Any advice?

2014-04-20 13:17:40 -0500 marked best answer gazebo simulation

Hi!
I want to simulate the navigation of a pioneer p3dx in Gazebo.

I can add the robot with:

opt/ros/electric/stacks/p2os/p2os_urdf/launch$ roslaunch pioneer3dx.gazebo.launch

I can control it with the keyboard with:

roslaunch p2os_launch teleop_keyboard.launch

But I'm not able to add the world to the simulation, because when I call:

opt/ros/electric/stacks/simulator_gazebo/gazebo_worlds/launch$ roslaunch office_world.launch

the robot disappear.
Any suggestion?

2014-04-20 13:17:25 -0500 marked best answer gazebo plugin with ros electric

I have a problem creating a Gazebo plugin for ros electric.
On the Wiki I can only find the tutorial for Ros Fuerte, but I should use elctric. Anyone can help me?

2014-04-20 13:14:20 -0500 marked best answer Occupancy grid ChannelBuffer

I was getting a compilation error in a node that creates an OccupancyGrid message.
The method setData in the OccupancyGrid class used to have a byte[] parameter, but the parameter is now a ChannelBuffer. So I changed the code from:

grid.setData(data);

to:

ChannelBuffer buffer = ChannelBuffers.copiedBuffer(data);
grid.setData(buffer);

But now i get this exception when i run the node:

Exception in thread "pool-1-thread-3" java.lang.IllegalArgumentException
    at com.google.common.base.Preconditions.checkArgument(Preconditions.java:76)
    at org.ros.internal.message.field.ChannelBufferField.setValue(ChannelBufferField.java:55)
    at org.ros.internal.message.MessageProxyInvocationHandler.invoke(MessageProxyInvocationHandler.java:46)
    at org.ros.internal.message.$Proxy2.setData(Unknown Source)
    at org.lejos.ros.nodes.PublishOccupancyMap.onStart(PublishOccupancyMap.java:141)
    at org.ros.internal.node.DefaultNode$5.run(DefaultNode.java:506)
    at org.ros.internal.node.DefaultNode$5.run(DefaultNode.java:503)
    at org.ros.concurrent.EventDispatcher.loop(EventDispatcher.java:43)
    at org.ros.concurrent.CancellableLoop.run(CancellableLoop.java:56)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)

What is wrong with my code?

2014-04-20 13:12:35 -0500 marked best answer costmap creation

I would like to create a map of my environment.
I don't want to use gmap because I have yet a plan of the environment. How can I convert my jgpeg in a ros map that I can see in rviz?

2014-04-20 13:12:33 -0500 marked best answer obstacles in rviz

I'm using a NXT with lejos I want move_base to publish on /move_base/local_costmap/obstacles so that I can see the obstacles in rviz. But at the moment it doesn't work. How should I set the costmaps configuration files?

2014-04-20 13:10:16 -0500 marked best answer Rosjava and Arduino

Hi,

Is it possible to use Rosjava with Arduino? Are there any tutoials or packges yet developed about that?

2014-04-20 13:08:30 -0500 marked best answer android_core pubsub tutorial

Hi! I would like to modify the pubsub tutorial in order to have the subscriber running on the AVD and the publisher on my PC. The pubsub tutorial without modifications works, but if I use the command "rostopic pub /chatter std_msgs/String "..."" I don't see the string on the avd screen and if I call "rostopic echo /chatter" I can't see what is published by talker.
Using "rostopic list" I get:

/chatter<br>
/rosout<br>
/rosout_agg

Using "rostopic info /chatter":

Type: std_msgs/String

Publishers: 
 * /rosjava_tutorial_pubsub/talker (http://127.0.0.1:42623/)
 * /rostopic_5792_1348480888907 (http://camilla-TECRA-A5:35002/)

Subscribers: 
 * /android_gingerbread/ros_text_view (http://127.0.0.1:43231/)

Therefore what should I do to put in communication a talker and a subscriber that are running on an avd and on a PC?

2014-04-20 13:05:38 -0500 marked best answer obstacle avoidance with navigation stack

Hi, I'm running the navigation stack and using rviz 2DNav to send goal to my robot but it don't avoid obstacles. I'm sure thta it detects them because they're displayed when I use the grid cells display with the obstacles and inflated obstacles topic. What could be the problem?

2014-04-20 13:04:59 -0500 marked best answer Problem with Gmapping

I'm trying to use gmapping to create a map of my lab.
I'm using a NXT withLejos firmware, I checked that all the topic /tf, /odom and /scan are working well, but I get this error:

[ WARN] [1346231329.853649941]: MessageFilter [target=/odom ]: Dropped 100.00% of messages so far. Please turn the [ros.gmapping.message_notifier] rosconsole logger to DEBUG for more information.

The command I used to launch gmapping is:

rosrun gmapping slam_gmapping scan:=scan (/scan is the topic on which are published the message of type sensor_msgs::LaserScan)

2014-04-20 13:04:47 -0500 marked best answer [ERROR] [1346057546.695789920]: Exception thrown when deserializing message of length [91] from [/nxt_lejos_proxy_mod]: Buffer Overrun

in your opinion whic kind of error is this because it appears when I launch the nav stack but everything works fine.

2014-04-20 13:03:56 -0500 marked best answer [rospack] opendir error [No such file or directory] while crawling /home/camilla/ros_workspace

[rospack] opendir error [No such file or directory] while crawling /home/camilla/ros_workspace

What kind of error is this? Because it appears on the shell but then my node is executed correctly.

2014-04-20 13:03:39 -0500 marked best answer Problem with Rviz

Hi, I want to see the simulation of what my Lego NXT is doing with rviz.
Therefore I created the model of my robot with Lego digital designer and the converted it in the right format, that is to say in a .urdf file.
I renamed my sensors and motors with the name that I specified in the .yaml file. But when I run rviz I get:

Robot Model
    Status Error
    ref_0_link No trasform from [ref_0_link] to [/world]
    ...

In my nodes I specified a tf between the robot base frame and the world frame, and another between the ultrasonic sensor frame and the robot frame.
In fact the links robot and ultrasonic_sensor are the only ones with Transform Ok.
I thought that because of the fact the all the links are children of robot and the joint are fixed there is no need to specify a tf for every link.
Can anyone tell me how to solve my problem?

2014-04-20 13:02:08 -0500 marked best answer ActionClient in Rosjava

Hi, I read that actionlib isn't yet supported with the latest release of rosjava. Is there an alternative to specify, using code and not rviz, a target location to a base that is running tha navigation stack? Thank you in advance!

2014-04-20 13:00:54 -0500 marked best answer missing run.py from rosjava_bootstrap

Hi, I'm trying to do the "Getting started with NXT leJOS, using nxt_lejos_proxy" tutorial (http://www.ros.org/wiki/nxt_lejos_proxy/Tutorials/Getting%20Started#Create_a_Scratch_Package), but when i run "roslaunch proxy.launch" I get this error:

ERROR: cannot launch node of type [rosjava_bootstrap/run.py]: Cannot locate node of type [run.py] in package [rosjava_bootstrap].

Looking into my rosjava_bootstrap folder there isn't any run.py file. I've seen that this file is present in the rosjava electric-tag release (http://code.google.com/p/rosjava/source/browse/?name=electric-tag) but I don't know how to download it. Can someone give a tip?

Thank you in advance,

Camilla

2014-04-20 13:00:04 -0500 marked best answer problem with nxt_lejos_lcp_proxy

Hi everybody! I'm a researcher, I'm working with ROSJava and a NXT. I'm trying to run LCPProxy.java but I have a problem. After launching the node I get this output:

* Configurate ROS Node

*********************
* Running LCPProxy *
*********************

ROS Node Path: /home/camilla/my_workspace/nxt_lejos/nxt_lejos_lcp_proxy/
* Reading property file
Path: /home/camilla/my_workspace/nxt_lejos/nxt_lejos_lcp_proxy/nxt_lejos_ros/lcp_proxy.properties
BRICK-NAME: OKAY
CONNECTION: USB
YAML: NXT.yaml
Differential navigation features enabled
WHEEL_DIAMETER: 5.6
TRACK_WIDTH: 16.0
REVERSE: true
* Connecting with a NXT brick
Log.listener: Protocols = 1
Log.listener: Search Param = null
Log.listener: Searching for any NXT using USB
Found NXT: Unknown 001653079D95
ROS Node connected with a NXT brick
* Bind NXT brick with ROS
* Processing YAML file
YAML Path: /home/camilla/my_workspace/nxt_lejos/nxt_lejos_lcp_proxy/NXT.yaml
list size2
Type is ultrasonic
I found an ultrasonic  sensor description
ultrasonic_sensor
PORT_1
10.0
point1
Found NXT: Unknown 001653079D95
Failed to open connection to the NXT

It seems that the configurate and the connect steps succeed, but there is a problem in the bind() one. In particular in during the first iteration of the for loop in processYAML(). Infact debbuging the code I saw that the last instruction called is:

us = new UltrasonicSensor(node, port);

But I can't figure out why and where there is a new attempt to connect to the brick which produces the last two lines of the output:

Found NXT: Unknown 001653079D95
Failed to open connection to the NXT

can you help me find a solution?or at least to understand where in the code and why there is the new attempt of connection?

I'm using a NXT with the traditional Lego firmware and a usb connection.

my YAML file is:

nxt_robot:
  - type: ultrasonic
    name: ultrasonic_sensor
    port: PORT_1
    min_range: 0.01
    max_range: 2.5
    desired_frequency: 10.0
  - type: differential_navigation_system
    name: pilot
    port: PORT_AC
    desired_frequency: 10.0
    track_width: 16.0
    wheel_diameter: 5.6
    reverse: true

(specifing another sensor or actuator as first element of the yaml file I get the same error, so the problem isn't specific of the ultrasonic sensor).

my lcp_proxy.properties file is:

NXT-BRICK: OKAY
CONNECTION-TYPE: USB
YAML-ROBOT-DESCRIPTOR: NXT.yaml
DIFFERENTIAL_NAVIGATION_FEATURES: true
WHEEL_DIAMETER: 5.6
TRACK_WIDTH: 16.0
REVERSE: true

Looking forward to hearing from you. :)

2014-04-20 06:54:23 -0500 marked best answer Local planner creation

Hi, I developed a local planner which implements the vfh algorithm and substituted it in the navigation stack. But I get this error:

[FATAL] [1366724467.565835509, 463.545000000]: Failed to create the vfh_local_planner/VFHPlannerROS planner, are you sure it is properly registered and that the containing library is built? Exception: According to the loaded plugin descriptions the class vfh_local_planner/VFHPlannerROS with base class type nav_core::BaseLocalPlanner does not exist. Declared types are base_local_planner/TrajectoryPlannerROS dwa_local_planner/DWAPlannerROS pr2_navigation_controllers/PoseFollower

I changed the navigation.launch this way:

<node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen">
...
        <param name="base_local_planner" type="string" value="vfh_local_planner/VFHPlannerROS" />
...
</node>

I also changed properly the parametrs in the base_local_planner_params.yaml. And at the beginning of my code I added:

//register this planner as a BaseLocalPlanner plugin 
PLUGINLIB_DECLARE_CLASS(vfh_local_planner, VFHPlannerROS, vfh_local_planner::VFHPlannerROS, nav_core::BaseLocalPlanner)

My CMakeLists.txt is the following:

cmake_minimum_required(VERSION 2.4.6)
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)

# Set the build type.  Options are:
#  Coverage       : w/ debug symbols, w/o optimization, w/ code-coverage
#  Debug          : w/ debug symbols, w/o optimization
#  Release        : w/o debug symbols, w/ optimization
#  RelWithDebInfo : w/ debug symbols, w/ optimization
#  MinSizeRel     : w/o debug symbols, w/ optimization, stripped binaries
#set(ROS_BUILD_TYPE RelWithDebInfo)

rosbuild_init()

#set the default path for built executables to the "bin" directory
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
#set the default path for built libraries to the "lib" directory
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

#uncomment if you have defined messages
#rosbuild_genmsg()
#uncomment if you have defined services
#rosbuild_gensrv()

rosbuild_find_ros_package(dynamic_reconfigure)
include(${dynamic_reconfigure_PACKAGE_PATH}/cmake/cfgbuild.cmake)
gencfg()


#common commands for building c++ executables and libraries
#rosbuild_add_library(${PROJECT_NAME} src/example.cpp)
rosbuild_add_library(vfh_local_planner src/vfh_planner_ros.cpp src/vfh_algorithm.cc)
#target_link_libraries(${PROJECT_NAME} another_library)
#rosbuild_add_boost_directories()
#rosbuild_link_boost(${PROJECT_NAME} thread)
#rosbuild_add_executable(example examples/example.cpp)
#rosbuild_add_executable(vfh_local_planner src/vfh_planner_ros.cpp src/vfh_algorithm.cc)
#target_link_libraries(example ${PROJECT_NAME})

Can you help me to solve the error? Thank you in advance.