The goal of this project is to create an open-source liquid handling robot by using LEGO Mindstorm.

+

+

The current project uses two Mindstorm NTX's, a 200μL micropipet, a couple of aluminum beams and a great deal of LEGO bricks. It's programmed using ROBOTC.

+

+

There are a number of limitations with the current design; the robot has very wobbly up/down movements as can be seen on the videos below; also the area available to work in is very small; the robot does not error check the volumes it pipets. Still it can be used to simple experiments and liquid handling.

+

+

==Documentation==

+

+

The finale documentation is not yet ready.

==Specifications==

==Specifications==

Line 382:

Line 390:

'''Sunday''': Have been working on the depth movement all week. Constructed an aluminum rail on which the NTX's roll and a singel motor attached to a differential drive to drive the robot back and forth (the depth movement). To my delight it seems to be working.

'''Sunday''': Have been working on the depth movement all week. Constructed an aluminum rail on which the NTX's roll and a singel motor attached to a differential drive to drive the robot back and forth (the depth movement). To my delight it seems to be working.

Current revision

Contents

Liquid handling robot

The goal of this project is to create an open-source liquid handling robot by using LEGO Mindstorm.

The current project uses two Mindstorm NTX's, a 200μL micropipet, a couple of aluminum beams and a great deal of LEGO bricks. It's programmed using ROBOTC.

There are a number of limitations with the current design; the robot has very wobbly up/down movements as can be seen on the videos below; also the area available to work in is very small; the robot does not error check the volumes it pipets. Still it can be used to simple experiments and liquid handling.

Ideas

Notebook

Week 1

Monday:
Worked on the primary handling operation with a very simpel design and set up the lab space.

The linear actuator works up to aboout 1,6 cm, putting a limit on how much the pipet can be pushed down. Solutions might be: using two actuators, using a rail-design instead or adding more power to the actuator.

The design is becoming quite big. Solution might be to use the power function powers, which are smaller.

The pipet needs to be tested for accuracy.

Tuesday:
Checked the pipet for accuracy, and it was way of. Found another one, Eppendorf 200 ul.

Continued working on the dispensing handling. Created a successful design with two motors that press down on the pipet. I'm a bit nervous about the stress on the motor, but for now they seem to do fine.

The battery in one of the NTX bricks already ran out. I've ordered a rechargeable battery - but no transformer, since they are not sold here. Hopefully the inlet will accepts other transformers as well.

Wednesday: Started designing the holding bay for the pipet. This will control the downward and upward motion of the pipet, but should also be able to be pulled either left or right. Decided to work with only one motor, since this would make it possible to control the entire robot with two NTX's.

Friday: Continued work on holding bay design.

Week 2

Monday: Worked on holding bay design and horizontal control. The design right now uses one motor for the horizontal control, which seems to be working fine. One motor is also used for the lateral control, which is a bit bumpy: the pipet holding and the motors need to be adjusted.

First code for lateral and horizontal control (Horizontal control (22-03-10).c):

Tuesday: Horizontal control: did a test at 40% motor power, with 50 movements back and forth. The bay slides a bit to the right, 0,2 cm after 50 turns. Lateral control: gravity is playing games and the movement changes alot over time. Redid the pipet-holding and added larger wheels. The first testing seems good.

Wednesday: Added a touch sensor to the lateral movements. After 50 runs it seem to "slide", but solved this by adding a touch-sensor, that makes sure the movement is reset after each movement (ie. moves to the same position).

Week 3

Monday: Continued working on the bluetooth connection, which is now finished. Tweaked the different functions that move the robot, so that the distances fit. Did a simple test with liquid handling, 200 ul.

Tasks: Plan and do a advanced experiment where water from 50 wells are moved to 50 other wells.

Thuesday: Build loading bays and pipet-tip removal bay. Built resetting mechanism but since the cables are not long enough, the robot has no reset for the back-forward movement and the dispensing. These two movements are very stable, but will have to look into making longer cables.

Discussed experiment with Martin. Decided to drop 50 well experiment for now and instead focus on emulating real experiment. 800ul, 5ul and 5ul liquid has to be loaded on small glass plate.

Wednesday: Continued working on experiment. Made improvements to the master-slave code. Made a reset-mechanism for the back-forward movement. The space in which the robot can move is quickly becoming crammed; also the pipets movement up and down, are being pushed to their maximum. For future development it would be nice with a longer holding-arm and bigger up-down possibilities. For now the robot is okay though.

Tasks: Make a map over the plate with encoder distances, for easier programming of different assays. Order another transformer.

Week 4

Monday: Finished the platform. The working area is small: 85 mm wide, 58 mm high and 298 mm long. For the first experiment it will be okay, although a bigger width and height is desirable.

Made a new pipet holder, so that the movement is more stable. Created and tested tip-removal.

Tuesday: Worked on improving the depth movement, which is off. Constructed new feet, but are still having trouble creating a precise movement.

Sunday: Have been working on the depth movement all week. Constructed an aluminum rail on which the NTX's roll and a singel motor attached to a differential drive to drive the robot back and forth (the depth movement). To my delight it seems to be working.