Search code examples
pythonubuntuterminalros

ROSLAUNCH not working. Got error path messages


I am doing a ROS project that have 1 service, 2 topics, 3 nodes. "Fotoplesmytograf" is the first node that collect data from a pulse sensor. Sends the data via topic"/fpmg_raw" to a "lp_filter". Then "lp_filter" sends a filter output y[k] to a "do_filter_calc" and it returns y[k] = -a1y[k-1]-a2y[k-2]+b1u[k-1]+b2u[k-2] back to "lp_filter". "lp_filter" sends the data via topic "/fpmg_filtred" to evaluate_data. Using Rosbag to record the result.

To launch this package in my Beaglebone Black i use a launch file. Since "BBB" does not allow to have several terminals open.

When I run the this launch file:

<launch>
<node pkg = "pulse_sensor" type="fotopletysmograf.py" name=" fotopletysmograf " output="screen"/>
<node pkg = "pulse_sensor" type="lp_filter.py" name="lpfilter" output="screen"/>
<node pkg = "pulse_sensor" type="do_filter_calc.py" name="dofiltercalc" output="screen"/>
<node pkg = "pulse_sensor" type="evaluate_data.py" name="evaluatedata" output="screen"/>
</launch>

I get this error:

ERROR: cannot launch node of type [pulse_sensor/fotopletysmograf.py]: pulse_sensor
ROS path [0]=/opt/ros/melodic/share/ros
ROS path [1]=/home/ubuntu/catkin_ws/src
ROS path [2]=/opt/ros/melodic/share
ERROR: cannot launch node of type [pulse_sensor/lp_filter.py]: pulse_sensor
ROS path [0]=/opt/ros/melodic/share/ros
ROS path [1]=/home/ubuntu/catkin_ws/src
ROS path [2]=/opt/ros/melodic/share
ERROR: cannot launch node of type [pulse_sensor/do_filter__calc.py]: pulse_sensor
ROS path [0]=/opt/ros/melodic/share/ros
ROS path [1]=/home/ubuntu/catkin_ws/src
ROS path [2]=/opt/ros/melodic/share
ERROR: cannot launch node of type [pulse_sensor/evaluate_data.py]: pulse_sensor
ROS path [0]=/opt/ros/melodic/share/ros
ROS path [1]=/home/ubuntu/catkin_ws/src
ROS path [2]=/opt/ros/melodic/share

My file structure look like this:

ubuntu@beaglebone:~/catkin_ws/src/puls_sensor$ ls
2021-12-01-20-54-26.bag  CMakeLists.txt  include  launch  package.xml  scripts  src

The scripts files is in scripts folder. And launch file is in launch folder.

I checked if it was my ~/.bashrc folder was correct. I got these source line all way down in the file:

source /opt/ros/melodic/setup.bash
source ~/catkin_ws/devel/setup.bash

Any got a idea on whats wrong?

Thanks for your time.


Solution

  • I figured out what the problem was. I made a typo mistake. It should be:

    "puls_sensor"

    <node pkg = "puls_sensor" type="fotopletysmograf.py" name=" fotopletysmograf " output="screen"/>
    

    not "pulse_sensor"

    <node pkg = "pulse_sensor" type="fotopletysmograf.py" name=" fotopletysmograf " output="screen"/>
    

    Sorry for taking the small mistake.

    Again thanks for the people to took their time to look at the problem :)