ros-naoqi / nao_robot

BSD 3-Clause "New" or "Revised" License
53 stars 60 forks source link

Issues with naoqi driver and bridge #38

Open anurag-b opened 5 years ago

anurag-b commented 5 years ago

Hello All,

I am getting the following error as I try to run the following command -

roslaunch nao_bringup nao_full.launch nao_ip:=10.0.0.224 roscore_ip:=10.0.0.52

Error -

`... logging to /home/cvl/.ros/log/7de6e3e2-a0bd-11e8-b486-c48e8ffaa3c3/roslaunch-cvl-nao-9939.log Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://cvl-nao:38346/

SUMMARY

PARAMETERS

NODES /nao_robot/pose/ pose_controller (naoqi_pose/pose_controller.py) pose_manager (naoqi_pose/pose_manager.py) /nao_robot/ naoqi_driver (naoqi_driver/naoqi_driver_node)

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

setting /run_id to 7de6e3e2-a0bd-11e8-b486-c48e8ffaa3c3 process[rosout-1]: started with pid [9964] started core service [/rosout] process[nao_robot/naoqi_driver-2]: started with pid [9975] process[nao_robot/pose/pose_controller-3]: started with pid [9982] process[nao_robot/pose/pose_manager-4]: started with pid [9983] Traceback (most recent call last): File "/home/cvl/nao/nao_ws/src/naoqi_bridge/naoqi_pose/nodes/pose_controller.py", line 49, in from naoqi_driver.naoqi_node import NaoqiNode File "/home/cvl/nao/nao_ws/devel/lib/python2.7/dist-packages/naoqi_driver/init.py", line 35, in exec(fh.read()) File "", line 29, in File "/home/cvl/nao/nao_ws/src/naoqi_bridge/naoqi_driver_py/src/naoqi_driver/naoqi_node.py", line 37, in raise RuntimeError("Error importing NaoQI. Please make sure that Aldebaran's NaoQI API is in your PYTHONPATH.") RuntimeError: Error importing NaoQI. Please make sure that Aldebaran's NaoQI API is in your PYTHONPATH. Receiving information about robot model [W] 9975 qimessaging.remoteobject: Return signature might be incorrect depending on the value, from m to s [nao_robot/pose/pose_controller-3] process has died [pid 9982, exit code 1, cmd /home/cvl/nao/nao_ws/src/naoqi_bridge/naoqi_pose/nodes/pose_controller.py --pip=10.0.0.224 --pport=9559 name:=pose_controller log:=/home/cvl/.ros/log/7de6e3e2-a0bd-11e8-b486-c48e8ffaa3c3/nao_robot-pose-pose_controller-3.log]. log file: /home/cvl/.ros/log/7de6e3e2-a0bd-11e8-b486-c48e8ffaa3c3/nao_robot-pose-pose_controller-3*.log [W] 9975 qimessaging.remoteobject: Return signature might be incorrect depending on the value, from m to [[m]] set prefix successfully to naoqi_driver [I] 9975 qimessaging.session: Session listener created on tcp://0.0.0.0:0 [I] 9975 qimessaging.transportserver: TransportServer will listen on: tcp://127.0.0.1:34053 [I] 9975 qimessaging.transportserver: TransportServer will listen on: tcp://10.0.0.52:34053 using ip address: 10.0.0.52 @ eth0 found a catkin prefix /opt/ros/indigo/share/naoqi_driver/share/boot_config.json load boot config from /opt/ros/indigo/share/naoqi_driver/share/boot_config.json found a catkin URDF /opt/ros/indigo/share/naoqi_driver/share/urdf/nao.urdf Audio Extractor: Start RightBumperPressed LeftBumperPressed ROS-Driver-RightBumperPressed : Start HandRightBackTouched HandRightLeftTouched HandRightRightTouched HandLeftBackTouched HandLeftLeftTouched HandLeftRightTouched ROS-Driver-HandRightBackTouched : Start FrontTactilTouched MiddleTactilTouched RearTactilTouched ROS-Driver-FrontTactilTouched : Start registered subscriber: teleop registered subscriber: moveto registered subscriber: speech nodehandle reset Could not find network interface named eth0, possible interfaces are ... lo wlan0 ================================================================================REQUIRED process [nao_robot/naoqi_driver-2] has died! process has died [pid 9975, exit code 1, cmd /opt/ros/indigo/lib/naoqi_driver/naoqi_driver_node --qi-url=tcp://10.0.0.224:9559 --roscore_ip=10.0.0.52 --network_interface=eth0 --namespace=naoqi_driver name:=naoqi_driver __log:=/home/cvl/.ros/log/7de6e3e2-a0bd-11e8-b486-c48e8ffaa3c3/nao_robot-naoqi_driver-2.log]. log file: /home/cvl/.ros/log/7de6e3e2-a0bd-11e8-b486-c48e8ffaa3c3/nao_robot-naoqi_driver-2*.log Initiating shutdown!

[nao_robot/pose/pose_manager-4] killing on exit [nao_robot/naoqi_driver-2] killing on exit [FATAL] [WallTime: 1534359637.629640] Could not connect to required "joint_trajectory" action server, is the nao_controller node running? [rosout-1] killing on exit [master] killing on exit shutting down processing monitor... ... shutting down processing monitor complete done `

I also tried running the driver to check issues with the driver by running the following command -

roslaunch naoqi_driver naoqi_driver.launch nao_ip:=10.0.0.19 roscore_ip:=10.0.0.52

Error - `... logging to /home/cvl/.ros/log/c1b6ec16-a0bd-11e8-9276-c48e8ffaa3c3/roslaunch-cvl-nao-10036.log Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://cvl-nao:45739/

SUMMARY

PARAMETERS

NODES / naoqi_driver (naoqi_driver/naoqi_driver_node)

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

setting /run_id to c1b6ec16-a0bd-11e8-9276-c48e8ffaa3c3 process[rosout-1]: started with pid [10061] started core service [/rosout] process[naoqi_driver-2]: started with pid [10068] Receiving information about robot model [W] 10068 qimessaging.remoteobject: Return signature might be incorrect depending on the value, from m to s [W] 10068 qimessaging.remoteobject: Return signature might be incorrect depending on the value, from m to [[m]] set prefix successfully to naoqi_driver [I] 10068 qimessaging.session: Session listener created on tcp://0.0.0.0:0 [I] 10068 qimessaging.transportserver: TransportServer will listen on: tcp://127.0.0.1:40908 [I] 10068 qimessaging.transportserver: TransportServer will listen on: tcp://10.0.0.52:40908 using ip address: 10.0.0.52 @ eth0 found a catkin prefix /opt/ros/indigo/share/naoqi_driver/share/boot_config.json load boot config from /opt/ros/indigo/share/naoqi_driver/share/boot_config.json found a catkin URDF /opt/ros/indigo/share/naoqi_driver/share/urdf/nao.urdf Audio Extractor: Start RightBumperPressed LeftBumperPressed ROS-Driver-RightBumperPressed : Start HandRightBackTouched HandRightLeftTouched HandRightRightTouched HandLeftBackTouched HandLeftLeftTouched HandLeftRightTouched ROS-Driver-HandRightBackTouched : Start FrontTactilTouched MiddleTactilTouched RearTactilTouched ROS-Driver-FrontTactilTouched : Start registered subscriber: teleop registered subscriber: moveto registered subscriber: speech nodehandle reset Could not find network interface named eth0, possible interfaces are ... lo wlan0 ================================================================================REQUIRED process [naoqi_driver-2] has died! process has died [pid 10068, exit code 1, cmd /opt/ros/indigo/lib/naoqi_driver/naoqi_driver_node --qi-url=tcp://10.0.0.19:9559 --roscore_ip=10.0.0.52 --network_interface=eth0 --namespace=naoqi_driver __name:=naoqi_driver __log:=/home/cvl/.ros/log/c1b6ec16-a0bd-11e8-9276-c48e8ffaa3c3/naoqi_driver-2.log]. log file: /home/cvl/.ros/log/c1b6ec16-a0bd-11e8-9276-c48e8ffaa3c3/naoqi_driver-2*.log Initiating shutdown!

[naoqi_driver-2] killing on exit [rosout-1] killing on exit [master] killing on exit shutting down processing monitor... ... shutting down processing monitor complete done `

Please suggest the possible solution or a guide to follow to get the robot working with ROS interface. The ROS wiki is not quite informative and there needs to be a better tutorial for the same.

kochigami commented 5 years ago

Hi, I found two error messages in your log. I hope these explanations help you.

  1. both launch files: Could not find network interface named eth0, possible interfaces are ... lo wlan0

Please check if you use wlan0 or lo by ifconfig. Then, please add network_interface argument like this. roslaunch naoqi_driver naoqi_driver.launch nao_ip:=10.0.0.19 roscore_ip:=10.0.0.52 network_interface:=wlan0

I also think we don't have to set roscore_ip argument, but I'm not sure.

  1. nao_full.launch: Please make sure that Aldebaran's NaoQI API is in your PYTHONPATH.") RuntimeError: Error importing NaoQI. Please make sure that Aldebaran's NaoQI API is in your PYTHONPATH.

Please install Python NAOqi SDK. That is because nodes in pose_manager.launch require NaoqiNode, which require Python Naoqi SDK.

I put a link of README in my laboratory which explains how to install and set it. https://github.com/jsk-ros-pkg/jsk_robot/blob/master/jsk_naoqi_robot/README.md Please see jsk_naoqi_robot => Setup Environment => 1,2 This part in step2 explains how to set PYTHONPATH in your .bashrc file.

export PYTHONPATH=$HOME/pynaoqi/<your Python SDK package name>:$PYTHONPATH