(Prototype team page) |
|||
Line 1: | Line 1: | ||
− | {{BostonU_HW}} | + | {{BostonU_HW/CSS}} |
+ | {{BostonU_HW/Nav_Bar}} | ||
<html> | <html> | ||
+ | <head> | ||
+ | <meta charset="utf-8"> | ||
+ | <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> | ||
+ | <meta name="description" content="Start your development with a Design System for Bootstrap 4."> | ||
+ | <meta name="author" content="Creative Tim"> | ||
+ | <title>Argon Design System - Free Design System for Bootstrap 4</title> | ||
+ | <script src="https://2018.igem.org/Template:BostonU_HW/JS_jquery?action=raw&ctype=text/javascript" type="text/javascript"></script> | ||
+ | <script src="https://2018.igem.org/Template:BostonU_HW/JS_bootstrap_min?action=raw&ctype=text/javascript" type="text/javascript"></script> | ||
+ | <!-- /* ADJUSTS DEFAULT iGEM CONTENT */--> | ||
+ | <style type="text/css"> | ||
+ | .logo_2018, #sideMenu, #firstHeading, #bars_item { /* HIDES SOME UNWANTED STUFF COMPLETELY */ | ||
+ | display: none; | ||
+ | } | ||
+ | #globalWrapper, #content { /* MAKES BACKGROUND OF MEDIAWIKI TRANSPARENT */ | ||
+ | background-color: transparent; | ||
+ | } | ||
+ | /* ADJUSTS DEFAULT iGEM CONTENT */ | ||
− | < | + | .logo_2017, #sideMenu, #firstHeading, #bars_item { /* HIDES SOME UNWANTED STUFF COMPLETELY */ |
− | < | + | display: none; |
− | < | + | } |
− | < | + | #globalWrapper, #content { /* MAKES BACKGROUND OF MEDIAWIKI TRANSPARENT */ |
− | </div> | + | background-color: transparent; |
− | + | } | |
− | + | body, html, #globalWrapper, #bodyContent, #HQ_page { | |
− | <div class=" | + | width: 100%; |
− | + | margin: 0; | |
− | + | padding: 0; | |
− | + | height: 100%; | |
− | <div class=" | + | } |
− | + | #content { | |
− | < | + | width: 100%; |
− | + | margin: 0; | |
− | </div> | + | margin-top: -33px; |
− | + | padding: 0; | |
− | <div class=" | + | height: 100%; |
− | < | + | } |
− | < | + | html { |
− | + | -webkit-font-smoothing: antialiased; | |
− | < | + | } |
− | + | #logo{ | |
− | + | height:100%; | |
− | < | + | width:100%; |
− | + | margin-top: 2%; | |
− | < | + | } |
− | + | </style> | |
− | </p> | + | </head> |
− | </ | + | <body> |
− | </div> | + | <main> |
− | + | <section class="section-profile-cover section-shaped my-0"> | |
− | <div class=" | + | <div class="shape shape-style-1 shape-default shape-skew alpha-4"></div> |
− | <div class=" | + | <div class="container"> |
− | < | + | <div class="row justify-content-center"> |
− | < | + | <div class="col-lg-4 pt-5"> |
− | + | <img src="https://static.igem.org/mediawiki/2018/c/c9/T--BostonU_HW--TERRA_logo.png" style="width: 250px;" class="img-fluid"> | |
− | < | + | </div> |
− | < | + | <div class="col-lg-8 pt-lg"> |
− | < | + | <h1 class="display-1">Hardware</h1> |
− | < | + | </div> |
− | < | + | </div> |
− | </ | + | </div> |
− | </div> | + | </section> |
− | + | <section class="section section-skew"> | |
− | </div> | + | <div class="container"> |
− | + | <div class="card card-profile shadow mt--300 px-4 pt-3"> | |
− | + | <div class="row justify-content-center"> | |
− | + | <div class="col-lg-12 px-4 pt-3"> | |
+ | <h2 class="display-3 mb-0">Designing the XY-Plane</p></h2> | ||
+ | <small class="h6 text-default"> | ||
+ | In order for TERRA to select for specific locations to dispense fluids, we needed a method of either moving the output tube or the vessel, such as a 96-well plate. We ultimately decided to move the vessel, as that would minimize the length of and amount of dead volume in the output tube. Our team designed an active XY-plane, which would allow us to move the platform in the X- and Y-direction to target a specific location. This XY-plane needed to have the following functions and features: the ability for translational motion; a homing system; a control system; a manufacturing method; material; and motors. </p> | ||
+ | The following morphological chart illustrates our potential means of accomplishing each function or feature and the chosen options are written in green. </p> | ||
+ | </small> | ||
+ | <small class="h6 text-default"> | ||
+ | <table class="table-bordered" style="width:100%"> | ||
+ | <tr> | ||
+ | <th>Function/Feature</th> | ||
+ | <th>Means 1</th> | ||
+ | <th>Means 2</th> | ||
+ | <th>Means 3</th> | ||
+ | <th>Means 4</th> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>Translational Motion</td> | ||
+ | <td>Threaded rod</td> | ||
+ | <td><div class="text-success">Timing belt and pulley system</div></td> | ||
+ | <td></td> | ||
+ | <td></td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>Homing</td> | ||
+ | <td>Manual, user-controlled homing</td> | ||
+ | <td>Optical sensors</td> | ||
+ | <td><div class="text-success">Contact switches</div></td> | ||
+ | <td>Ultrasonic sensors</td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>Control</td> | ||
+ | <td><div class="text-success">Arduino</div></td> | ||
+ | <td>Raspberry Pi</td> | ||
+ | <td>Arduino and Raspberry Pi</td> | ||
+ | <td></td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>Manufacturing Method</td> | ||
+ | <td>Machining</td> | ||
+ | <td><div class="text-success">3D-printing</div></td> | ||
+ | <td></td><td></td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>Materials</td> | ||
+ | <td>HDPE</td> | ||
+ | <td><div class="text-success">ABS</div></td> | ||
+ | <td></td><td></td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td>Motors</td> | ||
+ | <td>Servos</td> | ||
+ | <td><div class="text-success">Stepper</div></td> | ||
+ | <td></td><td></td> | ||
+ | </table> | ||
+ | </small> | ||
+ | <small class="h6 text-default"> | ||
+ | <b>Translational Motion:</b> We chose to use a system of timing belts and pulleys as it is more accurate and creates less backlash than threaded rods. The timing belts and pulleys are also more cost effective, as they are as accurate as higher-end threaded rods, which would be necessary for smooth translational motion. The pulleys are also easier to mount and integrate into the design of the XY-plane than threaded rods.</p> | ||
+ | <b>Homing:</b> Our team chose to utilize contact switches in order to home our system as they were the easiest to integrate into the existing design of TERRA and were low-cost. We had briefly considered manual, user-controlled homing, but realized that it would result in a great amount of human error, as the user would need to approximate the distance from the nozzle to the well A1. Optical sensors and ultrasonic sensors would result in accurate locations, but would increase the cost of TERRA and are harder to integrate to our system. </p> | ||
+ | <b>Control:</b> We decided to use the Arduino Mega to control our XY-plane and syringe pumps, as the addition of Arduino shields allowed for more motors, and therefore syringe pumps, to be connected per microprocessor. Our team also considered the use of a Raspberry Pi, but it would have been harder to integrate into TERRA and it contained more functions than needed for our project. </p> | ||
+ | <b>Manufacturing Method:</b> TERRA is composed of 3D-printed supports, as 3D-printing is more accessible, lower-cost, and allows for quick prototyping. While traditional machining, such as milling and turning, would result in tighter tolerances and more accurate parts, we realized the cost of manufacturing parts in a machine shop were high. In fact, many of these parts only include clearance holes, which will serve its purpose as long as they meet a minimum dimension.</p> | ||
+ | <b>Material:</b> Since our team chose to manufacture our system with 3D-printing, we chose to create our parts with ABS. The typical material for 3D-printing is resin, as it is inexpensive, but resin lacks the resolution needed to create the negative features on certain parts. ABS is stiffer and allows for more accurate parts and is more durable than resin.</p> | ||
+ | <b>Motors:</b> We chose to incorporate stepper motors to the XY-plane as it allowed for a minimum step resolution of 1.8 degrees, which translates to 0.20 mm per step. Stepper motors also allow for microstepping, which allows us to further improve the resolution to 1/16 of a step, or 0.0125 mm. </p> | ||
+ | </small> | ||
+ | <br> | ||
+ | </div> | ||
+ | </div> | ||
+ | </div> | ||
+ | <div class="card card-profile shadow mt-4 px-4 pt-3"> | ||
+ | <div class="row justify-content-center"> | ||
+ | <div class="col-lg-12 px-4 pt-3"> | ||
+ | <h2 class="display-3 mb-0">Design 1</p></h2> | ||
+ | <div class="row"> | ||
+ | <div class="col-6"><img src="https://static.igem.org/mediawiki/2018/a/a1/T--BostonU_HW--old_xy_plane_top.jpeg" style="width: 100%;" class="img-fluid"></div> | ||
+ | <div class="col-6"><img src="https://static.igem.org/mediawiki/2018/5/5d/T--BostonU_HW--old_xy_plane_side.jpeg" style="width: 100%;" class="img-fluid"></div> | ||
+ | </div> | ||
+ | <br> | ||
+ | <small class="h6 text-default"> | ||
+ | The first iteration of the XY-plane was composed of 3D printed parts and HDPE machined parts. We chose to do so in order to test the accessibility of each manufacturing method. All parts were modeled in Creo Parametric and STL files were generated for 3D-printing using a UPrint SE and ABS stock material. The machined parts were created from HDPE stock and milled using a manual NC mill. </p> | ||
+ | Since the first design was part of the prototyping stage, we had chosen to use open ended timing belts in order to have the freedom of adjusting the design of the XY-plane with the least amount of dimensional constraints. We realized, however, that the timing belts were difficult to maintain the correct amount of tension without a proper tensioner, which would not be possible to integrate to our system. Also, it would be difficult to standardize if the user were to cut their own timing belts according to how well they put together their XY-plane. </p> | ||
+ | When designing the XY-plane, we decided that we would like the default, starting position of the plate holder to be in the bottom right of the plane. During the first iteration, we brought the holder to position by traveling the span of the plane fully every time, which caused it to jam into the sides and also stall the motors. From there, we realized that we needed a method for the plane to communicate to the Arduinos in order to stop the motors when it has reached the correct position. </p> | ||
+ | Below are clips of a Creo assembly demonstrating how the XY-plane should be and the first physical iteration of the XY-plane. </p> | ||
+ | </small> | ||
+ | <br> | ||
+ | <div class="row"> | ||
+ | <div class="col-5"><img src="https://static.igem.org/mediawiki/2018/6/67/T--BostonU_HW--old_xy_plane_assembly.gif" style="width: 100%;" class="img-fluid"></div> | ||
+ | <div class="col-7"><img src="https://static.igem.org/mediawiki/2018/6/68/T--BostonU_HW--old_xy_plane_irl.gif" style="width: 100%;" class="img-fluid"></div> | ||
+ | </div> | ||
+ | <br> | ||
+ | </div> | ||
+ | </div> | ||
+ | </div> | ||
+ | <div class="card card-profile shadow mt-4 px-4 pt-3"> | ||
+ | <div class="row justify-content-center"> | ||
+ | <div class="col-lg-12 px-4 pt-3"> | ||
+ | <h2 class="display-3 mb-0">Design 2</p></h2> | ||
+ | <small class="h6 text-default"> | ||
+ | For the final design of the XY-plane, our team decided to 3D-print all of our supports in order to increase accessibility and decrease to cost of the hardware components of TERRA. All parts were printed using the UPrint SE with ivory ABS stock material. Previously, the holes of the 3D-printed parts were too small, mostly due to the relative inaccuracy of this fabrication method, so the new iteration of the supports include clearance holes rather than tight fit holes.</p> | ||
+ | We also chose to choose standard, close-loop timing belts in order to minimize the problems we were encountering with ensuring the tension in the timing belts were correct and that the belt would not slip over the pulleys. Using closed timing belts also eliminates the problems with gluing together ends of the timing belt. </p> | ||
+ | In order to send our plate holder to the correct position, or its "home", we needed a technical and reliable solution. Our team decided to integrate contact switches to the plane, allowing us to consistently and accurately home our system every time we run a new protocol, ensuring that the output from the microfluidic device dispenses to the correct wells of a microtiter plate. This also allows us to further remove human error from our system. This was done by creating negative features on some of the 3D-printed supports to hold the sensors in place.</p> | ||
+ | The CAD and STL files are available on our GitHub in order to allow users to easily recreate our system.</p> | ||
+ | </small> | ||
+ | <br> | ||
+ | </div> | ||
+ | </div> | ||
+ | </div> | ||
+ | </div> | ||
+ | </section> | ||
+ | </main> | ||
+ | </body> | ||
</html> | </html> | ||
+ | {{BostonU_HW/Javascript}} |
Revision as of 16:27, 10 October 2018
Hardware
Designing the XY-Plane
In order for TERRA to select for specific locations to dispense fluids, we needed a method of either moving the output tube or the vessel, such as a 96-well plate. We ultimately decided to move the vessel, as that would minimize the length of and amount of dead volume in the output tube. Our team designed an active XY-plane, which would allow us to move the platform in the X- and Y-direction to target a specific location. This XY-plane needed to have the following functions and features: the ability for translational motion; a homing system; a control system; a manufacturing method; material; and motors. The following morphological chart illustrates our potential means of accomplishing each function or feature and the chosen options are written in green.Function/Feature | Means 1 | Means 2 | Means 3 | Means 4 |
---|---|---|---|---|
Translational Motion | Threaded rod | Timing belt and pulley system |
||
Homing | Manual, user-controlled homing | Optical sensors | Contact switches |
Ultrasonic sensors |
Control | Arduino |
Raspberry Pi | Arduino and Raspberry Pi | |
Manufacturing Method | Machining | 3D-printing |
||
Materials | HDPE | ABS |
||
Motors | Servos | Stepper |
Design 1
The first iteration of the XY-plane was composed of 3D printed parts and HDPE machined parts. We chose to do so in order to test the accessibility of each manufacturing method. All parts were modeled in Creo Parametric and STL files were generated for 3D-printing using a UPrint SE and ABS stock material. The machined parts were created from HDPE stock and milled using a manual NC mill. Since the first design was part of the prototyping stage, we had chosen to use open ended timing belts in order to have the freedom of adjusting the design of the XY-plane with the least amount of dimensional constraints. We realized, however, that the timing belts were difficult to maintain the correct amount of tension without a proper tensioner, which would not be possible to integrate to our system. Also, it would be difficult to standardize if the user were to cut their own timing belts according to how well they put together their XY-plane. When designing the XY-plane, we decided that we would like the default, starting position of the plate holder to be in the bottom right of the plane. During the first iteration, we brought the holder to position by traveling the span of the plane fully every time, which caused it to jam into the sides and also stall the motors. From there, we realized that we needed a method for the plane to communicate to the Arduinos in order to stop the motors when it has reached the correct position. Below are clips of a Creo assembly demonstrating how the XY-plane should be and the first physical iteration of the XY-plane.