The goal of our project, TERRA, is to automate and selectively dispense the output of a microfluidic device. In order to do so, we identified two main hardware components:
- a system to move the output from location to location
- a system to control when the output is dispensed
Designing the XY-StageIn 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 unusable volume in the output tube. This XY-stage 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||
|Raspberry Pi||Arduino and Raspberry Pi|
Building the First Prototype
The first iteration of the XY-stage 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-stage 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-stage, 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-stage should be and the first physical iteration of the XY-plane.
Refining Our DesignFor the final design of the XY-stage, 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. 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. In order to send our plate holder to the correct position, or its home position, 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. The CAD and STL files are available on our GitHub in order to allow users to easily recreate our system. Click here to download the assembly instructions, CAD, and STL files:
Repurposing the Syringe PumpsOur team decided to repurpose Neptune’s syringe pump hardware to develop our control syringe system because the 2016 team had designed and validated a DIY platform for automating syringe movement. Since the syringe pumps were used to gradually push a syringe to dispense at a constant rate in Neptune’s project, they were able to demonstrate a high degree of control with their hardware platform. This gave us the confidence to reuse their hardware platform for our control syringe system in TERRA. The control syringes are used to actuate valves on the TERRA Adapter, a predesigned chip for our system, enabling the system to selectively dispense outputs onto the vessel. The control syringe system can be broken down to units, with each unit containing a servo motor, 12mL syringe, 3D printed piston, and mounting board. These units can then be combined together in a modular fashion depending on how many are required for your experiment. Every output from your microfluidic chip requires 2 control syringe units, one for dispensing and the other for waste. For example, a 3 output microfluidic chip experiment requires 6 control syringe units. Its recommended to setup a multi-unit system when first setting up TERRA in order to eliminate to need to add further control syringe units for future experiments.
Click here to download the assembly instructions, CAD, and STL files:
Controlling Our HardwareTo control the syringe pumps and the XY translational stage, we designed a back-end software framework in which actuates the servo and stepper motors responsible for movement of the pumps and XY-stage. The XY translational stage moves through a set of timing belts and pulleys, where the pulleys are attached to the shafts of stepper motors. The timing belts are connected to horizontal and vertical 3D printed components of the plate support, so when the motors actuate, the pulleys rotate and the attached components move along their respective axes. The motors are also controlled by a motor driver, which allows for microstepping. Microstepping divides the motion, or steps, of a stepper motor into smaller divisions, allowing smoother and more accurate actuation. We incorporate DRV8825 motor drivers to our XY-stage system. The syringe pumps exist in three states: origin, open, and closed. Each of these states are associated with a specific pulse-width-modulation (PWM) values, which dictates angle the arm of the servo motor. The servo motor is connected to a 3D printed arm, which then moves the piston of the syringe. This then actuates a valve on a microfluidic chip. The stepper and servo motors are controlled by an Arduino Mega 2560, which is connected in the configuration shown below: We have also created a user interface and a back-end software system in order to input data and treat the information from the user. Learn more about our software components here:
|Compatible Well Plates||24, 96, 384 well plate|
|Step Resolution||200 steps/rev to 6400 steps/rev|
|Average Runs Before Failure||8 runs|
|Operating Speed||2.75 mm/sec|
|Time Between Wells||6.56 (24 well), 3.28 (96 well), 6.56 (384 well)|
LimitationsWe have characterized TERRA’s accuracy and consistency limitations to help users plan their experiments. During stress tests and other runs with TERRA we’ve identified several key factors that could lead to inaccuracies in either dispensing or well selection. Future BostonU Hardware teams can improve upon TERRA by remedying these issues via better design, but the following recommendations can be used to manually fix issues for this initial prototype. Since our CAD and STL files as well as our assembly instructions are open-sourced, future teams can recreate our system with the documentation on our Wiki.
Sample Volume Limitations and Inaccuracy
One of the main limitations currently with TERRA is the requirement of dispensed sample volumes to be multiples of the TERRA drops, which is 0.0479 mL. To give users greater control over their sample volume, smaller outer diameter tubing that connects the TERRA Adapter to the nozzle is required. The outer diameter tubing used during the duration of the project was 0.0018 m. While our model verification was done with 0.0018 m sized tubing, users are able to use their own sized tubing to better fit their needs. Another potential solution is to utilize droplet-based microfluidics. If the desired volume is smaller or between such sizes, droplet-based microfluidics allows us to create a smaller droplets containing the experimental output encased in oil within the output fluid. Through this method, the 48 μL droplet
that dispensed from the nozzle is part sample and part mineral oil. The proportions of these liquids can be manipulated through flow rate and microfluidic chip design to achieve the desired volume. In order for TERRA to accurately dispense droplets into the vessel, the output nozzle needs to be filled to the end with the current output. If not, the system introduces a latency in droplet. Depending on how far off the output is from the end of the tube, sample volume inaccuracies are introduced that propagate throughout the run. To reduce this error, TERRA currently requires the user to start the system once the TERRA Adapter chip has stabilized. TERRA then calculates the time necessary for the output nozzle to be filled by the output based on the given flow rate.
If the plate support is close to the Y-axis, the plate may jostle, resulting in sample volumes not entering selected well. Close proximity between the plate support and the Y-axis coupled with sudden movement at the start of homing creates a slight ramming effect, jostling the plate. To fix issues relating to plate security, TERRA automatically sends the plate support to the upper left corner at the end of the run to distance it away from the Y-axis. In addition to fixing plate jostling, moving the plate reader to the upper left corner acts as a loading location so that the user can easily access their well plate.