Thumbnail

Kinect Body Control

Control robot servos using your body and a Microsoft Kinect

+ How To Add This Control To Your Project (Click to Expand)
  1. Make sure you have the latest version of ARC installed.
  2. Select the Get button in this page to download the archive file.
  3. Double click the downloaded archive file to execute installer.
  4. The installer will add this control to ARC.
  5. Load ARC and press the Project -> Add Control button from the menu.
  6. Choose the Camera category tab.
  7. Press the Kinect Body Control icon to add the control to your project.

Manual

This skill 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 relation to the elbow position. And the elbow position in degrees is calculated in relation to the shoulder position. Each joint can be assigned to control servo positions between 1-180 degrees of your robot.

Required Drivers


The SDK 1.8 can be installed from here, as you will need the libraries it includes: https://www.microsoft.com/en-ca/download/details.aspx?id=40278

Main Window


User-inserted image


1. Pause Checkbox
When this is checked no servos will move.

2. Sitting Position Checkbox
When this is checked only the Upper Body servos will be activated, and the lower body will not be detected. As a result, the lower body servos won't be active.

3. Kinect Body Joint Visualization
This section shows a visual representation of the joint values that are detected.

4. Joint Data Output
This section shows a numerical representation of the joint values that are detected.

Configuration - General Tab


User-inserted image


1. Smoothing Value Drop-down
This drop-down adjusts the smoothing value for servo movement. As the smoothing value increases, it removes servo jitter. However, as the smoothing value increases, the more servo delay will be introduced.

Configuration - Upper Body Tab


User-inserted image


1. Upper Body servo Configuration
This section of six servos allows you to set up the servo movement parameters for the upper body such as servo port, board index, servo configuration, max/min degree limitations, multiple servo control, and inverted direction.

Configuration - Lower Body Tab


User-inserted image


1. Lower Body servo Configuration
This section of 6 servos allows you to set up the servo movement parameters for the Lower body such as servo port, board index, servo configuration, max/min degree limitations, multiple servo control, and inverted direction. 

*Note: When the Sitting Position checkbox is enabled (in the Main Window) the Lower Body will not be detected.

How to Use Kinect Body Control


1) Download and install the Kinect SDK (link in the "Required Drivers" section above).

2) Plug your Kinect sensor into wall power and a USB port on your PC.

3) Add the Kinect Body Control skill to your ARC project (Project -> Add Skill -> Misc -> Kinect Body Control).

4) Use the Kinect Body Control Configuration tabs to setup any servos that you would like to move.

5) Connect ARC to the servos/robot that you would like to control.

6) Ensure your body is at least 3 feet away from the Kinect sensor to be detected (ideal distance is 6 feet) and start moving around.

7) If you are experiencing servo jitter, try adjusting the Smoothing value in the Configuration General tab.

Video




Requirements


Kinect Compatibility
We're unsure of what Kinects 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 we use is the XBOX 360 Kinect. 

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

PRO MEMBER
Canada
#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.
PRO MEMBER
Synthiam
#19  
Did you install the stuff that is mentioned in the plugin description?
PRO MEMBER
Synthiam
#21  
Great - then long as you’re using the correct 360 Kinect, it works as instructed in the video.
PRO MEMBER
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 ARC when I move.
PRO MEMBER
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 ARC.
#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.
PRO MEMBER
USA
#27   — Edited
My Kinect module is showing this below:

I am fully updated, windows 10 also

what can I do?

sorry, I do not have the Microsoft xBox 360 - 

User-inserted image
PRO MEMBER
Synthiam
#28   — Edited
You can follow the instructions above to install the appropriate drivers. And ensure your connect is a compatible version
PRO MEMBER
USA
#30  
Received my Xbox 360 Kinect only  - works well, thanks
PRO MEMBER
Synthiam
#31  
Right on! That’s super cool
PRO MEMBER
USA
#32  
Thanks Dj and Jeremie

Almost 2020 soon - sounds futuristic,  lol
PRO MEMBER
USA
#33  
how did this thread get here it is from Dec, 2019
PRO MEMBER
Synthiam
#34  
It’s not a thread. It’s a robot skill and it was updated. You responded to an update for a robot skill.
PRO MEMBER
USA
#35  
got it,
thanks Dj
PRO MEMBER
USA
#36  
I did the Kinect Body Control earlier

wee remote -  xboz 360

more tomorrow :-)

EzAng