View Full Version : Driving HROS1 with Kinect

09-20-2015, 10:46 PM
Hi, I'm looking into using microsoft kinect to interact with HROS1. Has anyone looked at this possibility?
I was thinking of creating a new motion module. Would need head and body responding to joint data.
Any experiences or suggestion most welcome.

09-21-2015, 12:17 AM
It has been done with dynamixel humanoids before (Bioloid Premium Type-A and/or DARwIn-OP), but I don't think the HROS-1 has been used as a puppet yet. I expect that building a new motion module for the framework would probably be more work than it's worth as there is a lot of stuff you will not need for simple puppet control. Easier method would to modify one of the kinect skeleton tracking examples and simply add a function to build and send a SYNC_WRITE dynamixel packet with the calculated joint angles to the servos via the arbotix-pro (have to send one WRITE packet to the arbotix-pro itself to enable power for servos powered through it) or even just a USB2Dynamixel/USB2AX.

09-21-2015, 12:34 AM
Thanks Tician! I've seen DarwinOP with kinect. Yes, there is heaps of stuff in the framework that is not needed and gets in the way. I was thinking of sending this over wireless to the HROS1 from a computer running kinect via UDP. That way robot is wireless and some processing can be done on the kinect joint data if needed before sending to robot, such as simple offboard stabilisaiton or morphology adjustments. But I guess this could still be done with direct writes to the dynamixels. I guess one problem with direct writes is that it doesn't allow mixed control, say upper body kinect, lower body stabilised robot locomotion. But great idea, as you say probably much easier.

09-21-2015, 12:54 AM
Actually, this might (http://idealab.uga.edu/Projects/Darwin/Reference.html) be useful if you plan on using wireless control. It was designed by another grad student a few years ago for UGA theatre students to control the DARwIn-OP using MAX, but it can handle simple text commands over TCP and/or SSH. Thinking it was able to run the walking engine to control the legs while overwriting the arm movement, but it has been a while since I looked at it. If so, then you could make it walk and then control the arms and head using simple text commands.

edit: unlikely to be plug-and-play with the HROS-1 framework, but could probably be adapted with less effort than building a new motion module.

09-21-2015, 01:06 AM
Hey, great. I'll look through that and see what they have done. Been ages since I looked at MAX/MSP.