Welcome to the Gizmo For You Bolg. Any documentation, thoughts or articles related to any of the Gizmo For You projects can be found here.
Making of RoboBench
As we tend to say... "It all starts from an idea" The idea about the RoboBench actually came to us few months back when we posted about "some" way of displaying our Gizmos interactively and Live through our website. We called this method "Gizmos Under your Fingers". Due to allot of projects that came few days after the post, we had to shelve the idea. Finally few months later we found some time to work on this and RoboBench was born.
We shall try and describe here the entire process of making the bench. Hopefully after reading this, everyone will have some knowledge about how to make something similar or generally... some new knowledge.
We looked all over the place for the best possible solution of robotically manipulating objects. CNC machines, Servo actuated arms, pneumatic arms and allot more. Most of these products, although do the job they were intended for well, they don't quite match our application. We needed something affordable (so we can take it apart and hack the begesus out of it) and easy on the eyes.
At some point we said to our selves "if this is supposed to be fun then why not use a toy for the job?" And so we did. The Robotic arm we chose was the well known and many times awarded Edge Robotic Arm from OWI Toys. It does exactly what we want it, has a nice look to it and even comes with its own USB controller to hook up to the computer. Not to mention that the prices was really appealing.
So after some nights and days of anticipation we finally received our toy.
The best present an engineer can get is a completely disassembled gadget and try to assemble it without looking at the instructions :) After a few hours we had the base assembled...
then the upper part...
After few more hours and our baby was finally complete.
Sadly the controller by default was operated by a simple Windows based Flash app and interfaced with a USB enabled controller. So the next step was to hack the board and make it work with a serial connection, so we could interface anything we wanted to it with ease. The default board looked like this:
The left part is the main Controller. The part number is EM78M612 and it is a basic universal serial bus controller or (micro-controller with USB for short). We never worked with this controller before and don't have any programmers for it, but this won't stop stubborn guys like us :). The other 3 chips are basically simple switches and their part number is ST1152 (although we never found the data-sheet for them), something like H-Bridges but they also invert the voltage for reverse and the best thing of all is that they operate by simple HIGH and LOW signals at 5v level, which is perfect for a 5V PIC 16F88. You can even make these your self with a few Mosfets so that the result would look like this:
After about an hour of debugging all the signals, here is what we come up with:
Each signal represents the 5V digital pin for controlling each motor as they are described in the Edge Robotic Arm manual.
In the image above you can see the final result with our own controller and all signals routed. It's all a bit messy but we were so excited to make this work as soon as possible that looks of the PCB were not so important.
Now all we have to do is plug in the Serial cable to this board and program the controller. All done.
We aren't going to post the source files for the entire PHP site we have, but shall explain in short the main thing that you should know about making something of your own.
The most critical part here is to find a way for sending out Serial data through PHP. Sure there are other ways of doing it but hey, this isn't the Hubble or the Mars Rover, so we go with the fastest route.
We didn't write the serial class for PHP but to find out everything about it you can go here. Read through the articles carefully and it should be a breeze.
At the end of the day, presentation is what matters. After tinkering with the Web Camera to find the perfect angle and adjusting the lighting, we finally composed a nice scene for our RoboBench.
Hopefully this was insightful to everyone who read this article.