Project:Kinect Robotic Arm: Difference between revisions

From London Hackspace Wiki
 
(32 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Goals ==
The idea here is to have an intelligent Robot Arm that is able to find and pick objects,
The idea here is to have an intelligent Robot Arm that is able to find and pick objects,
not using a pre-determined sequence of steps nor some kind of remote control, but
not using a pre-determined sequence of steps nor some kind of remote control, but
Line 5: Line 7:
Later one could add some wheels to it - with a mobile platform, this would in fact be
Later one could add some wheels to it - with a mobile platform, this would in fact be
converted into an autonomous robot. The Kinect would also be used to detect and avoid
converted into an autonomous robot. The Kinect would also be used to detect and avoid
obstacles.
obstacles - No more sensors should be needed.


In terms of usefulness, although it doesn't really have to be useful, as it is so cool,
In terms of usefulness, although it doesn't really have to be useful, as it is so cool,
it could be used to pick lego parts that might be spread on the floor and put them into a box.
it could be used to pick lego parts that might be spread on the floor and put them into a box.


== Hardware ==
== Hardware ==
* Robot Arm Kit - 6 DOF
* Robot Arm Kit - 6 DOF
: (includes the SSC32 Servo Controller)
: (includes the SSC32 Servo Controller)
* Kinect
* Kinect (PC Version)
* Arduino Uno
* Arduino Uno
* Raspberry Pi
* Raspberry Pi
== Kinect ==
This is a special version of Kinect - it has a "Near Mode" that allows to see objects as close as 40 centimeters (the normal Kinect only sees objects from 80 centimeters)
[[File:Kinect Windows.jpg]]


== The Arm ==
== The Arm ==
With 6 degrees of freedom it's very flexible.
[[File:Robotic Arm.jpg]]


== The Servo Controller ==
== The Servo Controller ==
It allows to control up to 32 servos, so, one has plenty of room for aditional developments.
[[File:SSC32_Controller.jpg]]
== Raspberry Pi ==
With the ARM11 processor 700Mhz, 512Mb RAM running Linux, there's plenty of processing power to analyse the Kinect depth data.
[[File:Raspberry_Pi.jpg]]


== Problems & Challenges ==
== Problems & Challenges ==
Line 27: Line 47:
this controller is prepared to integrate with Arduino.
this controller is prepared to integrate with Arduino.


The Kinect would be connected the Raspberry Pi, as there is no drivers of Kinect for Arduino, but there is
The Kinect would be connected the Raspberry Pi, as there is no drivers of Kinect for Arduino, but there is something called "OpenKinect" that allows to communicate with Kinect from Linux, and one can't install Linux
something called "openKinect" that allows to have Kinect acessible from Linux, and one can't install Linux
in Arduino.
in Arduino.
One might ask why to have an Arduino, and not connect the Rasperry Pi directly to the servo controller?
One might ask why to have an Arduino, and not connect the Raspberry Pi directly to the servo controller?
It might be possible, but one only has documentation on how to connect the server controller to Arduino ...
It might be possible, but one only has documentation on how to connect the server controller to Arduino ...


Line 39: Line 58:
== Resources ==
== Resources ==


[http://www.bizoner.com/arduino-6-dof-programmable-clamp-robot-arm-kit-ready-to-use-p-238.html?zenid=92v195vfrga0j0og967d15agv3 Arm Kit info]
* [http://www.bizoner.com/arduino-6-dof-programmable-clamp-robot-arm-kit-ready-to-use-p-238.html?zenid=92v195vfrga0j0og967d15agv3 Arm Kit info]
[http://www.lynxmotion.com/images/html/build136.htm SSC-32 Manual]
* [http://www.microsoft.com/en-us/kinectforwindows/ Kinect]
[http://www.microsoft.com/en-us/kinectforwindows/ Kinect]
* [http://www.parallax.com/eddie Eddie - Mobile Robot Platform with Kinect]
[http://www.kinecthacks.net/kinect-controlled-delta-robot/ Kinect Controlled Delta-Robot]
* [http://openkinect.org/wiki/Main_Page Open Kinect SDK]
[http://www.parallax.com/eddie Eddie - Mobile Robot Platform with Kinect]
* [http://www.kinecthacks.net/kinect-controlled-delta-robot/ Kinect Controlled Delta-Robot]
[http://openkinect.org/wiki/Main_Page Open Kinect SDK]
* [http://jonmacey.blogspot.co.uk/2012/07/raspberry-pi-and-kinect.html Raspberry Pi and Kinect]
[http://jonmacey.blogspot.co.uk/2012/07/raspberry-pi-and-kinect.html Raspberry Pi and Kinect]
* [http://www.lynxmotion.com/images/html/build136.htm SSC-32 Manual]
[http://robotics.nuvvo.com/lesson/7437-moving-servos-with-a-ssc-32-and-an-arduino SSC32 and Arduino]
* [http://www.lynxmotion.com/p-395-ssc-32-servo-controller.aspx SSC-32 Servo Controller Specifications]
[http://www.lynxmotion.com/p-395-ssc-32-servo-controller.aspx SSC-32 Servo Controller Specifications]
* [http://robotics.nuvvo.com/lesson/7437-moving-servos-with-a-ssc-32-and-an-arduino SSC32 and Arduino]
[http://www.lynxmotion.com/images/html/build128.htm SSC-32 software]
* [http://www.lynxmotion.com/images/html/build128.htm SSC-32 software]
 
== Comments & Suggestions ==
 
(add your comment or suggestion here)
 
[[Category:Projects]]

Latest revision as of 15:12, 3 June 2013

Goals

The idea here is to have an intelligent Robot Arm that is able to find and pick objects, not using a pre-determined sequence of steps nor some kind of remote control, but instead use Kinect sensor to find the objects to pick.

Later one could add some wheels to it - with a mobile platform, this would in fact be converted into an autonomous robot. The Kinect would also be used to detect and avoid obstacles - No more sensors should be needed.

In terms of usefulness, although it doesn't really have to be useful, as it is so cool, it could be used to pick lego parts that might be spread on the floor and put them into a box.

Hardware

  • Robot Arm Kit - 6 DOF
(includes the SSC32 Servo Controller)
  • Kinect (PC Version)
  • Arduino Uno
  • Raspberry Pi

Kinect

This is a special version of Kinect - it has a "Near Mode" that allows to see objects as close as 40 centimeters (the normal Kinect only sees objects from 80 centimeters)

Kinect Windows.jpg

The Arm

With 6 degrees of freedom it's very flexible.

Robotic Arm.jpg

The Servo Controller

It allows to control up to 32 servos, so, one has plenty of room for aditional developments.

SSC32 Controller.jpg

Raspberry Pi

With the ARM11 processor 700Mhz, 512Mb RAM running Linux, there's plenty of processing power to analyse the Kinect depth data.

Raspberry Pi.jpg

Problems & Challenges

Having the arduino connected to the arm's servos using the SSC32 controler shouldn't be too dificult as this controller is prepared to integrate with Arduino.

The Kinect would be connected the Raspberry Pi, as there is no drivers of Kinect for Arduino, but there is something called "OpenKinect" that allows to communicate with Kinect from Linux, and one can't install Linux in Arduino. One might ask why to have an Arduino, and not connect the Raspberry Pi directly to the servo controller? It might be possible, but one only has documentation on how to connect the server controller to Arduino ...

Eventually one might be able to control the Kinect with Arduino without using OpenKinect ...

The most difficult part will be to analyse the raw data that comes from Kinect and get some meaning out of it...

Resources

Comments & Suggestions

(add your comment or suggestion here)