Robotics StackExchange | Archived questions

Errors with nodes and params in launch file of Kinova Jaco2 launch file (Beginner)

Hello, I am a fairly new programmer and completely new to ROS and am trying to externally control a Kinova Jaco2 robotic arm using the example Python scripts in the kinova-ros repository:

https://github.com/Kinovarobotics/kinova-ros

My version of Ubuntu (20.04) uses ros-noetic per the GitHub page. In case I did something in the wrong order or am missing a step in my set-up, I will describe what I have done. After downloading ros-noetic on my machine, I sourced my environment with

$ source /opt/ros/noetic/setup.bash

and created a catkinws directory and src sub-directory and ran catkinmake. I then cloned the above repository into the src directory and ran catkinmake in the catkinws directory again. From there, I have played around with the roslaunch commands with multiple issues while looking at the .launch file for reference. In the repository, the .launch file is called "kinovarobot.launch" and it is in the folder "kinovabringup." When I run

$ roslaunch kinova_bringup kinova_robot.launch

my output is as follows:

$ roslaunch kinova_bringup kinova_robot.launch
... logging to /home/demetriospetrou/.ros/log/b66994b0-14fb-11ed-8b4d-29740da4210c/roslaunch-79VNV42-11762.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

RLException: Invalid <param> tag: Cannot load command parameter [robot_description]: no such command [['/opt/ros/noetic/share/xacro/xacro.py', '/home/demetriospetrou/catkin_ws/src/kinova-ros/kinova_description/urdf/j2n6s300_standalone.xacro']]. 

Param xml is <param name="robot_description" command="$(find xacro)/xacro.py '$(find kinova_description)/urdf/$(arg kinova_robotType)_standalone.xacro'"/>
The traceback for the exception was written to the log file

I have also tried to set the argument "use_urdf" to false as I noticed that this was related to the parameters in the above issue from the .launch file and got the following:

$ roslaunch kinova_bringup kinova_robot.launch use_urdf:=false
... logging to /home/demetriospetrou/.ros/log/97477362-14fc-11ed-8b4d-29740da4210c/roslaunch-79VNV42-11824.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://79VNV42:44431/

SUMMARY
========

PARAMETERS
 * /j2n6s300_driver/connection_type: USB
 * /j2n6s300_driver/ethernet/local_broadcast_port: 25025
 * /j2n6s300_driver/ethernet/local_cmd_port: 25000
 * /j2n6s300_driver/ethernet/local_machine_IP: 192.168.100.100
 * /j2n6s300_driver/ethernet/subnet_mask: 255.255.255.0
 * /j2n6s300_driver/jointSpeedLimitParameter1: 10
 * /j2n6s300_driver/jointSpeedLimitParameter2: 20
 * /j2n6s300_driver/robot_name: j2n6s300
 * /j2n6s300_driver/robot_type: j2n6s300
 * /j2n6s300_driver/serial_number: not_set
 * /j2n6s300_driver/status_interval_seconds: 0.1
 * /j2n6s300_driver/torque_parameters/publish_torque_with_gravity_compensation: False
 * /j2n6s300_driver/torque_parameters/use_estimated_COM_parameters: False
 * /j2n6s300_driver/use_jaco_v1_fingers: False
 * /j2n6s300_tf_updater/base_frame: root
 * /kinova_number_of_robots: 2
 * /kinova_robots: [{'serial': 'PJ00...
 * /rosdistro: noetic
 * /rosversion: 1.15.14

NODES
  /
    j2n6s300_driver (kinova_driver/kinova_arm_driver)
    j2n6s300_tf_updater (kinova_driver/kinova_tf_updater)

auto-starting new master
process[master]: started with pid [11832]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 97477362-14fc-11ed-8b4d-29740da4210c
process[rosout-1]: started with pid [11842]
started core service [/rosout]
ERROR: cannot launch node of type [kinova_driver/kinova_arm_driver]: Cannot locate node of type [kinova_arm_driver] in package [kinova_driver]. Make sure file exists in package path and permission is set to executable (chmod +x)
ERROR: cannot launch node of type [kinova_driver/kinova_tf_updater]: Cannot locate node of type [kinova_tf_updater] in package [kinova_driver]. Make sure file exists in package path and permission is set to executable (chmod +x)

In both cases, I am confused what the issue is with my limited knowledge but it seems that some file is missing from the specified location. I believe once I can call "roslaunch" successfully, I can use the rosrun command to run scripts? Any help and guidance would be very appreciated. Thanks!

Asked by dpetrou on 2022-08-05 15:34:37 UTC

Comments

Answers