Let's Make Robots!

XY Table

Moves over a microwell plate
XY_Table.zip1.54 KB

I had my brother over for Christmas and as he is a scientist and I have done some work for him earlier, he asked me if I could build him an XY table to navigate over a microwell plate http://en.wikipedia.org/wiki/Microtiter_plate 

Everything seems easy late at night after some beer, and after all, he gave me this great 3D printer. So after a quick specification I started designing it in Google Sketchup. As most of the parts are from eBay and shipped out of China the project had a slow progress in the start but was quit fun once I got all my parts.

The parts I got from eBay were;

  • LM6UU 6mm Linear Ball Bearing
  • Step Motor DC 28BYJ-48 with ULN2003 Driver Board
  • T5 Timing Belt for RepRap Prusa Mendel

I’m not sure what the XY table will be used for but I have built in a bracket system so different devices can be mounted. For testing I had this Micropump mp6 and controller and it is hooked up to the Arduino. I’ll probably also add a bracket for a 9g servo so one can have some probes going in to the wells.

One requirement was to have it mounted on a clear acrylic plate so that one could add light from below (the protected film hasn’t been removed yet).

As driving two steppers from an Arduino would use lots of IO pins I added a shift register on a proto board so that the steppers only uses two pins (clock and data). One added bonus of using the shift register is that one can run both steppers at the same time.

Also on the proto board I added a trim pot and a extra tack switch.  These are used to run the pump both for priming and to measure the volume it pumps out. The volume is controlled by the trim pot.
Note. The trim pot is not hooked up to the pump. It only gives an analog value on A0 that is translated to the time the pump is on. So the pot can be used for something else on another probe. The same goes for the switches, they can be used for different things in the Arduino sketch.

All none essential switches are connected with jumpers so he can mix it up and change what he plugs in to the Arduino. I also avoided hardwiring the SPI as he might need an SD card later on. 

All in all a great project and I had great fun building it.

Here are some more pictures

The Sketchup model


From the build

 And some detail from the complete XY table

Here you can see the Micropump mp6 in the front and the controller on a small PCB

The bracket system

It uses about 2,4 sec. to address each well to the run for 96 wells takes less than 4 min.

The protoboard

Update 22/9-2012

XY-table Mark II

This summer I had another request for an XY-table. First I was a bit reluctant as building the same thing twice sounded a bit boring. But as I wasn’t completely satisfied with the first version this gave me an opportunity to build a better one and correct some of my first mistakes.

The first thing was to find some different stepper motors as the one I used is absolutely crap. So I went for these small NEMA-14 motors from Phidgets.com http://www.phidgets.com/products.php?category=23&product_id=3301_0
As these are different motors than the one I originally used I had to redesign some parts of the XY-table to fit these motors.

I also wanted to make my own driver shield for the Arduino so that I could build more if there should come along another request. That was really the fun part of this build and the first time that I used SMD components on my board.

All in all a fun build and probably the first time that I’m actually making some money from my hobby.
Some pictures from the new version.

This is the stepper driver board I made. So if anyone is interested I still have a couple left. The board runs two stepper motors via 3 Arduino lines leaving lots of the IO pins available for other stuff.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Thank you very much for this information. And yes, it’s the same problems with the 12V version.
I have been struggling with this for quite a while and thought it was either something with my programming or my build (friction on the sliders, tension on the belts or something else…).
What puzzled me was the consistency of the errors, but it all makes sense now.
Luckily with the microwell plate I don’t need as sub-mm accuracy so it works fine, but for CNC or a laser device these motors are no good!

I think this problem should be stated on the YourDuino.com product page http://arduino-direct.com/sunshop/index.php?l=product_detail&p=126

Can we get sum schematic and code

I don’t have any schematics as this was a ‘solder as we go along’ type of project, but I have added the Arduino sketch if you’re interested.

My employer's schtick is making automated lab equipment like it's some amazing thing. Well, they charge customers like it's robotic gold. Great piece of work, yet again.

My brother actually sent me this link http://store.clarksonlab.com/256-068.aspx
I can’t rely compare my DIY version with this commercial one, but still… mine is 1/100 of the price and fully hackable :-)

Very neat compact design. Lots of possibilities. Clamp a Sharpy pen with lift mechanism to central mech. and draw circuit boards with it. Or as asketchup printer.

Things like this are what 3d printers are for, great job!

Thank you TinHead.
I’m looking forward to see what will come out of your Mendel, -that looks great by the way!

Well I seem to keep trying getting it perfectly calibrated ... which of course will never totally succeed.

I'm learning OpenSCAD currently, designing a bot finally :)

I’m sticking with Google Sketchup :-)

But as you’re a ‘hard core’ Linux guy, -that might not be an option?