CentroEPiaggio / kuka-lwr

Software related to the KUKA LWR 4+: for real and for simulation.
The Unlicense
101 stars 81 forks source link

No handshake with real LWR4+ #96

Closed harry17189 closed 6 years ago

harry17189 commented 6 years ago

Dear LWR_HW maintainers

(@marcoesposito1988 @carlosjoserg )

I'm trying to connect a real LWR4+ to the controllers. I'm able to ping the robot and copied the KRL script to the robot. I update the IP address in the KRL script to the network card in the robot.

However when launching the ROS script I get the following output: [ INFO] [1522052045.632956565]: LWRHWFRI node is waiting for model URDF in parameter [/robot_description] on the ROS param server. Creating a KUKA LWR 4+ called: lwr Parsing transmissions from the URDF... Registering interfaces... lwr_hw: Loading joint 'lwr_a1_joint' of type 'PositionJointInterface' lwr_hw: Loading joint 'lwr_a2_joint' of type 'PositionJointInterface' lwr_hw: Loading joint 'lwr_e1_joint' of type 'PositionJointInterface' lwr_hw: Loading joint 'lwr_a3_joint' of type 'PositionJointInterface' lwr_hw: Loading joint 'lwr_a4_joint' of type 'PositionJointInterface' lwr_hw: Loading joint 'lwr_a5_joint' of type 'PositionJointInterface' lwr_hw: Loading joint 'lwr_a6_joint' of type 'PositionJointInterface' Initializing KDL variables... [ WARN] [1522052045.740076983]: The root link box has an inertia specified in the URDF, but KDL does not support a root link with an inertia. As a workaround, you can add an extra dummy link to your URDF. LWR kinematic successfully parsed with 14 joints, and 14 segments. Using root: lwr_base_link and tip: lwr_7_link [ INFO] [1522052045.741988636]: Number of segments: 7 [ INFO] [1522052045.742031205]: Number of joints in chain: 7 Succesfully created an abstract LWR 4+ ARM with interfaces to ROS control preinitialized remote host to 192.168.42. IP 127.0.1.1 - Port 49938 friRemote 49938 FRI Version 1.0.4101.8198 Opening FRI Version 1.0.4101.8198 Interface for LWR ROS server Checking if the robot is Stopped... Please, start the KRL script now. [WARN] [1522052045.955198]: DEPRECATION warning: --shutdown-timeout has no effect. [INFO] [1522052045.955649]: Controller Spawner: Waiting for service controller_manager/load_controller [WARN] [1522052045.968523]: DEPRECATION warning: --shutdown-timeout has no effect. [WARN] [1522052076.068672]: Controller Spawner couldn't find the expected controller_manager ROS interface. [WARN] [1522052076.071433]: Controller Spawner couldn't find the expected controller_manager ROS interface. [lwr/controller_stopper-6] process has finished cleanly log file: /home/dennis/.ros/log/a58e3ce8-30cd-11e8-a54a-3cd92b255452/lwr-controller_stopper-6*.log [lwr/controller_spawner-5] process has finished cleanly log file: /home/dennis/.ros/log/a58e3ce8-30cd-11e8-a54a-3cd92b255452/lwr-controller_spawner-5*.log

I'm running ROS Kinetic on ubuntu 16.04. However I also so an issue about Roscontrol having a breaking change from Indigo, I also have a second pc with ROS Indigo on ubuntu 14.04. Both are unable to initialise a handshake,

We even have a second LWR4+, and tried that one with the KRL script, but no luck.

On the KUKA side I'm running the KRL script. It goes through the steps and finally ends up in the `wait sec 0.05' loop without first waiting for the ROS script.

I know that interface should work, since I had a working system about half a year ago. I can't see what has changed.

Do you have any ideas what to do or how to debug?

With Kind regards Dennis Ellery University of Twente

miguelprada commented 6 years ago

I update the IP address in the KRL script to the network card in the robot.

The IP on the script is where the FRI will send the packets to, so it should be the IP of whichever computer you're running the driver on, not the IP of the robot's network card.

harry17189 commented 6 years ago

Doh,

My apologise, a stupid mistake that cost me two days. @miguelprada Thank you.

So to clarify for future people. The IP in the KRL script should point to the IP of the PC/Laptop controlling the Robot. The IP in the ROS launch file should point to the IP of the FRI interface of the Robot.

Dennis