Behavior Control
Created
Updated
Index

Kinect Body Control

Control Thumbnail

How To Download and Use This Control

  1. Make sure you have the latest version of EZ-Builder installed.
  2. Select the Install button below to download the file.
  3. Double click the downloaded file to open installer.
  4. The installer will add this control to EZ-Builder.

This EZ-Builder plugin enables controlling servos of your robot by moving joints of your body, which are detected by a Microsoft xBox 360 Kinect only. Servos can be assigned to each joint using the Settings window. Degrees to move the servos are automatically calculated for joints in relation to the connecting joint. For example, the wrist position in degrees is calculated in relationship to the elbow position. And the elbow position in degrees is calculated in relationship to the shoulder position. Each joint can be assigned to control servo positions between 1-180 degrees of your robot.



User-inserted image


Settings
The configuration window provides you with 3 tabs. The general tab contains settings for filtering and such. The other 2 tabs are to specify servos per joint.

Increase the smoothness value to remove servo jitter. However, there will be a slight delay as the smoothness value increases.
User-inserted image


The Upper and Lower servo tabs will specify what servos will be assigned to different joints of your body.
User-inserted image



Kinect Compatibility
I'm unsure of what kinect's work with the SDK in Windows, due to limited information published by Microsoft (or at least hard to find information). There are multiple Kinect versions, the one I used is xBox 360 Kinect. 

Drivers
Compiled against Kinect 1.8 SDK, because I only have an XBOX 360 Kinect. I'm unsure of the compatibility with later versions. The SDK can be installed from here, as you will need the libraries it includes: https://www.microsoft.com/en-ca/download/details.aspx?id=40278

Work In Progress
- The servos for legs are not implemented yet
- The shoulder rotation servos are not implemented yet

#1  
@DJ Nice plugin!... I actually have an asus xtion so in the morning I will see if it will work with your kinect plugin....:)
#3  
@DJ Totally understand that... but the xtion is a very close clone to the kinect... It might actually work...just sayin'. If it doesn't it's ok... The xtion has been discontinued anyway, I believe...
Synthiam
#4  
It won't because the drivers aren't compatible. The only similarities between the two devices is their intended use-case. I don't want to give you any false hope:D

It'd be different if the Windows OS had a built-in API that standardized these device types. Similar to how a camera (of any manufacturer) is compatible because they're built with drivers to fullfill API requirements. This allows a standard for any video hardware to connect and become a camera in the Windows OS. However, with the kinect, the driver is specific and actually a PITA because large SDK files have to be downloaded and installed, etc...
#5  
@DJ... I appreciate that and no worries... Funny thing is the timing couldn't have been better... I just finished building the second heavy duty robot arm.... The plugin would work perfectly with them.... :) If it doesn't work I will eventually pick up a Kinect anyway...

Stay tuned as I should have a video of my BaristaBot within the next week or so...:)
Synthiam
#6  
looking forward to seeing that!

as for the kinect - don't get an xbox kinect. Get the Kinect For Windows. At least, that's what i've been reading. I'm under the impression that the xbox kinect won't work outside of a development environment (i.e. visual studio).

Maybe @ptp has some input on that subject, if he sees this post
#10  
@DJ, @Richard

It's not forgotten but the scope got bigger and i was waiting to get a alpha version.

I'll look to my code base, and i'll post something during the weekend.
#11  
Any news about Kinect V2 support?
#13  
Nice this works:D
Body control would still be nice:) it just needs to be opdated to take kinect20.dll too with kinect10.dll...
#14  
From your perspective (the user) it seems a simple change swap kinect10.dll with kinect20.dll and voila!

The reality is different: Kinect 2.0 has a different API, you will need:
1) change the code to support two different APIs.
2) Check before loading the DLLs (Lazy load) or create/support different plugins (the user can have both sensors or only one of them).

All the above is only possible if you have the real stuff (Kinect V2).
Netherlands
#15  
I have installed the plugin and installed the right kinect software also.
(kinect 1, Windows 10)

The kinect works when I start the Microsoft Kinect software: I can see camera vision and movements.

When I try to use the EZ-robot with kinect plugin, I can connect the EZ-Robot software to the kinect (it's is found by the ez-robot software), but then it ends. No red wire movements or whatever.

I got some info on the plugin-window once, but didn't got that also anymore.

Any help would be nice !

With kind regards,

;-) Arthur
Synthiam
#16   — Edited
Hi Arthur - did you install the driver specified in the description above? I believe it is 1.8, and the link is included above. What do you mean by "then it ends"? Are you meaning the computer shuts down or EZ-Builder crashes? I'll need as much information as you can tell me to help

Also, @ptp made a much better plugin that you can find here: https://synthiam.com/Software/Manual/DepthSensor-15873
#17   — Edited
Oh that's right I forgot there was a Kinect plugin ,I have one Kinect camera from Xbox 360 but it has the funny USB connector that won't fit standard computer USB ports. I guess I need to buy the special adapter to fit on computers,I saw them cheap on Ebay and Amazon. Not sure if it will work with EZ software but I do see articles online how to get it working on any windows 10 Laptops so will try both ways as the camera only cost me 13 dollars at one of those hock shops ,it looks brand new and hopefully will power up when I get the special USB adapter to Laptop kit.
#18   — Edited
Do I have to install the Developer tool kit, because I do not see any lines in the plugin box when i move around.
Synthiam
#19  
Did you install the stuff that is mentioned in the plugin description?
Synthiam
#21  
Great - then long as you’re using the correct 360 Kinect, it works as instructed in the video.
Synthiam
#22  
@Autiboy, just double checking, do you have the power supply for the Kinect plugged in? It cannot work with just USB.
#23  
Yes I have the usb ac power supply for the xbox 360.  The problem is that I cannot see the xbox 360's camera in EZ-Builder when I move.
Synthiam
#24  
In the demo video above, what part is not working for you? You never see the 360’s camera output. It’s expected to see your skeleton when standing in front of the Kinect 360. 

Next Friday I will demo how to use the Kinect with EZ-Builder.
#25  
Thanks DJ That would be nice.  Also the 2nd Fridays video does not work did you not stream that day?
Netherlands
#26  
Nice app. Works great. When will you inplement the shoulder rotation servos then it would be ideal for my inmoov.