Team:Washington-Software/Project
From 2009.igem.org
(→Overall project) |
(→Overall project) |
||
Line 40: | Line 40: | ||
- | In order to achieve the precision needed in this project, we have replaced the Lego NXT firmware with | + | In order to achieve the precision needed in this project, we have replaced the Lego NXT firmware with [http://www.robotc.net/ RobotC] which provide floating point representations. RobotC also gives us the flexibility to develop sophisticated C programs needed to drive this project. The computations to reverse-triangulate any point in 3-D space is also non-trivial. We use 3x3 rotational matrix to simplify our [[Team:Washington-Software/Modeling | mathematical modeling ]]. |
Revision as of 15:19, 18 October 2009
Home | Team | Project | Modeling | Notebook | Challenges | Miscellaneous |
---|
Contents |
Overall project
BioBrick-A-Bot Model C is the prototype of an extensible Genomic Lab Liquid Handling System. We build it using Lego bricks, so that the system can be easily replicated by other iGEM teams and by researchers in Molecular Biology who cannot afford a typical, $10,000, commercial system. The design is modular plug-and-play, so that we can easily collaborate with future iGEM teams to modify or improved on its design and add new functionalities. This project looks deceptively simple superficially, because it uses Lego bricks, and is being developed by a 11-years old. However, looks is extremely deceiving as explained in the challenges section. The external industry experts and advisors on this team can also testify to that.
BioBrick-A-Bot comprised of 2 robotic modules (ALPHA and PHI), mounted on a frame (BETA). Here’s what the acronyms means:
- ALPHA – Automated Lego Pipette Head Assembly
- PHI – Pneumatic Handling Interface
- BETA – BioBrick Environment Testing Apparatus
In order to achieve the precision needed in this project, we have replaced the Lego NXT firmware with [http://www.robotc.net/ RobotC] which provide floating point representations. RobotC also gives us the flexibility to develop sophisticated C programs needed to drive this project. The computations to reverse-triangulate any point in 3-D space is also non-trivial. We use 3x3 rotational matrix to simplify our mathematical modeling .
Due to a hardware limitation of Lego Minsdstorm, each NXT brick can only be connected to a maximum of 3 motors. We need 6 motors for this project, and use 2 NXT bricks. We design and implemented a Master Slave Synchronization System using blue-tooth wireless technology. ALPHA is the master and when it is properly positioned at the right location, it will transmit wireless messages to PHI to request the type of pipette operations that it needs (either aspirate, dispense or clean)
We provide a proof of concept by transferring blue dyes, 4 at a time, from 1 side of the 96-well plate to the other.
Project Summary
Hardware
- Lego Bricks
- Commonly accessible industry standard
Firmware
- RobotC
- Made in CMU Robotics Academy
- Enables floating point precision
Software
- ALPHA module
- Precise reverse triangulation using Rotational Matrix
- Controller of Master-Slave Synchronization
- Accurately positions pipette head
- PHI module
- Pneumatic control to aspirate and dispense fluid
- Compression pump to "air-clean" system
LegoRoboBrick Modules
This is BioBrick-A-Bot from a side and a front view.
Module ALPHA
ALPHA was created in August 21, 2009. It consists of three double-jointed arms as shown in the picture. One joint is referred as the control arm and is connected to the motor which controls entirely the joint. The other joint, referred as a linkage is loosely attached and moves in a sphere. The end of this attaches to the platform which holds the four pipette tips.
- Videos
- This video shows that the same code can be used for other versions of ALPHA. The only difference is 6 physical constants:
- Top Offset
- Bottom Offset
- Control Arm Length
- Linkage Arm Length
- Inter-arm Angle
- Gear Ratio
Module BETA
BETA provides the environment where the robot can move and conduct its task. It consists of a telescoping frame and a big lego plate under the stand. The telescoping fram is used for holding ALPHAs and PHIs, and the lego plate is where the 96-well plates and petri dishes are placed.
Module PHI
PHI is basically the pipette. It consists of three motors as following:
- Motor A.
- This motor controls the flow of the air. If you look at it from the side when the switch is visible:
- When the switch is to the left, there is a direct flow from the pipet head to the air. This makes it possible to use the second motor (motor B) to attempt to aspirate without aspirating any liquid, and enabling it to blow extra air out.
- When the switch is in the middle, there is no connection.
- When the switch is to the right, the pressure built up in the air tank is released into the pipette head.
- This motor controls the flow of the air. If you look at it from the side when the switch is visible:
- Motor B.
- This motor is connected to a piston, so it can aspirate and dispense liquid.
- Motor C.
- This motor is connected to to compressors compressing air in the air tank. It runs for 7 seconds once the air is released.
- Videos
- This video shows Phi running by itself.