Ask Your Question

is it possible to use nao_ctrl and choregraphe simultaneously?

asked 2011-08-24 05:59:53 -0500

Nick Armstrong-Crews gravatar image

If it is not possible out of the box, can you suggest some code changes / a high-level approach?

My desired task is to teleoperate the limbs (with nao_ctrl and openni_nao), while having Choregraphe do face recognition and attention / gaze servoing with the head.

Thanks for any tips!

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2011-08-24 19:40:12 -0500

AHornung gravatar image

There's no reason why it shouldn't work, as long as you don't try to do conflicting things (but I don't know in detail how openni_nao is communicating with ROS / NaoQI). In fact, you can even connect nao_ctrl to the simulated Nao running in Choregraphe (use the correct port and IP for NaoQI).

Of course, if you start changing Nao's leg joint angles in Choregraphe while he's walking with nao_ctrl you will produce a fall in the worst case - in the best case NaoQI won't even let you control it or will stop the walk. Same for the head: if you do gaze servoing then just don't try to change the head angles at the same time with teleoperation.

edit flag offensive delete link more


Confirmed to work! A bit touchy, though... I sometimes get the error: "Address already in use" Could not create Proxy to "ALMotion". Desc: 'Port not free. Another broker is using this port.' Overall, seems to work better if I have nao_ctrl running first, then open Choregraphe. THANKS!
Nick Armstrong-Crews gravatar image Nick Armstrong-Crews  ( 2011-08-29 15:06:49 -0500 )edit
PS - if I get the error above, I can get back in business by: closing (and disconnecting from robot) Choregraphe and nao_ctrl, then running nao_ctrl, then running Choregraphe and connecting it to robot
Nick Armstrong-Crews gravatar image Nick Armstrong-Crews  ( 2011-08-30 02:04:39 -0500 )edit

answered 2011-08-28 09:55:40 -0500

If choregraphe + nao_openni doesn't work for some reason, try running nao_openni, then from a separate bash screen try simply:


from naoqi import ALProxy
mp = ALProxy("ALMotion", NAO_IP, NAO_PORT)
fdp = ALProxy("ALFaceDetection", NAO_IP, NAO_PORT)
ftp = ALProxy("ALFaceTracker", NAO_IP, NAO_PORT)


If this works, then we can copy it in a .py file and make it a node for nao_openni.

edit flag offensive delete link more


Errors! on fdp.enableTracking(): 'The array has a size of 0 and you want it to be of size 1' ... and on ftp.startTracking(): 'Function startTracking does not exist in module ALFaceTracker'
Nick Armstrong-Crews gravatar image Nick Armstrong-Crews  ( 2011-08-29 14:58:09 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools


Asked: 2011-08-24 05:59:53 -0500

Seen: 768 times

Last updated: Aug 28 '11