Progress Report – March 28, 2019

Over the past two weeks we have picked up momentum on two portions of the project:

  1. Water Cooling System

We have tested and ensured that the water cooling system is water tight within our hermetically-sealed system box.  To test, we pushed water through each inlet tube and ensured it all came out the outlets tubes and that none leaked out onto our EZ Drivers.

2. Control Code

This week we successfully flashed the SD card with the Raspian distro, which is an operating system for the Raspberry Pi. We found an HDMI cord and used a display, keyboard, and mouse from the lab computer to boot the RPi and install the firmware. We also added a custom script to the RPi to try and get it to connect to the Vanderbilt WiFi. After troubleshooting for a few hours, the RPi was still unable to connect. We will discuss with our mentor, Brian O’Grady, on how best to move forward with this.

Progress Report – March 14, 2019

Over the course of the past two weeks, we have progressed in the three following areas:

  1. Tubing Length for the Motors

In order to accurately and precisely send flow media with our motor system, we had to have an optimized tubing length. Since each motor may not have the a flow sensor, it is also important that each motor is constructed in the exact same way, so that the flow is still reliable. This will largely be due to the tubing length that wraps around the motor head. We determined this length to be 85 millimeters. This length provides a high amount of tension, meaning that peristaltic flow can easily be induced with our motor system.

2. The code

Data will be transferred between Arduinos and the Raspberry Pi using a custom struct data structure. This struct will contain information about how the motors must move when ordered. A second custom data structure may be used to send data back to the Raspberry Pi, but this is a secondary priority. The structs will be passed back and forth along the serial connection between the components.

3. The survey for end users

Lastly, we are working on the design of the graphical user interface (GUI). Since we will ultimately not be the end users of this pump system, we wanted to get feedback from some of the people in the Bellan Lab who will be using our design. We want to know what metrics will be most important for them to monitor, and what will be the best way to organize the information in an easy to understand way. The best way to do this was to start constructing a short survey that the users will fill out, so that we can get some preliminary ideas.

Progress Report February 22, 2019

Over the past week we have progressed on and/or finished the following six tasks:

  1. Wires Reconfigured and Reorganized

IMG_2268

Figure 1: Organization of heat sink tubing (center) and wire (pushed to the sides of the box)

There are a variety of wires, tubing, and other electronic connections that are assembled in the box. In order to keep better track of each component and all of the connections, the wires coming and going to each EZ driver were grouped together and zip tied together. They were then moved to the outer edges of the box to leave room for the water cooling tubing along the center of the box. The water cooling tubing had to stay in place so that they could be connected to the heat sinks. Lastly, the power relay stations were adhered to the side of the box so that they would stay in place if the system was moved. By organizing the inside of the box this way, it is much simpler to keep track of all of the connections and components.

2. Water Cooling System –  All Tubing Attached to the 24 EZ Drivers

The water cooling system is quickly coming together. There will be four parallel, identical systems working to cool our EZ drivers simultaneously. Having four systems instead of one will allow for much more cooling and decrease the likelihood of carrying residual heat from one EZ driver to the next. Every set of 6 EZ drivers will be cooled by one of these systems. All the tubing has been attached to the EZ drivers (see Figure 2).

IMG_2270

Figure 2. All tubing connected to the EZ Drivers for hermetically sealed water cooling

Additionally, there needed to be 4 inlet holes and 4 outlet holes in the box to bring the water in and out, so all 8 holes were drilled and prepped with their respective tubes through a plug for hermetic sealing (Figure 3).

IMG_2269

Figure 3. Inlet and outlet holes for the water cooling system with the tubes hermetically sealed

Lastly, our radiators have arrived, so we hope to have the water cooling system completely assembled by next week and running efficiently.

3. Updated CAD Modeling

After attaching the tubing for water cooling, we determined that our shelves for the Arduinos and power supply would not be high enough in their original iteration. Therefore, we measured out the height from the bottom of the box to the top of the tubing and readjusted the heights of the shelves to accommodate the tubing. 839c604f0bdc4a10b82d665a4699415dFigure 4. The shelf that will hold all four Arduinos and is high enough to fit the water-cooling tubing below

c9aff759e52449108127ef61857d8feeFigure 5. The shelf that will hold the AC/DC power converter, as well as a slot for the Raspberry Pi is now high enough to accommodate the water-cooling tubing below

4. Motors began to be prepped for connection

This week, we obtained 15 of our 24 motors that will be used by the Bellan lab for running parallel perfusion experiments. In order to make these stepper motors compatible with our system, the four wires that extended from the motor needed to be prepped for connecting to our hermetically sealed box. This was done by soldering on D-sub bulkhead connectors to the 15 motors that we currently have.

D-subFigure 6. The D-sub bulkhead connector allows for the wires from the motor to be connected to the hermetically sealed box.

5. Arduino Connections

Additionally, the four Arduinos were powered and connected to the Raspberry Pi via USB cable. We are considering working with a Bluetooth or WiFi connection, but are currently proceeding with a wired connection due to its ease of use.

IMG_2271

Figure 7. The four Arduino Unos are connected to our Raspberry Pi via four USB cables

6. Code Writing

A github respository has been created to organize the code for both the Arduinos and the Raspberry Pi. The Arduino code enables control of the lower level motor functionality for each of the 6 stepper motors it is connected to. The Raspberry Pi code is written in Python and communicates with the Arduino through the pyserial library. Wireless Virtual Machine control is enabled through a viewing software.

Progress Report February 1, 2019

Over the past week, we have had four main advances. The first of which was prepping wire connections between the 24 Easy Drivers and the 24 motors. Each Easy Driver + Motor connection requires a set of four wires. We had previously crimped the all wires on one end for connection to the Easy drivers. This week, we soldered the other end of all the wires to 24 D-Subs, to which the motors will plug into. These D-Subs will be mounted on an acrylic board and hermetically sealed on Monday next week with a silicon-based product.

Next, we removed the barrel jack connector from the Arduinos by de-soldering the connections. Beneath them were the raw terminals that corresponded to ground and live power. We then soldered wires to these terminals for each of the Arduinos. One Arduino had less metal left on the terminals from when the power jack was removed, but large amounts of solder enabled the connections to be reestablished. After the Arduinos were soldered, we plugged in their wires to the power source and attached the to the shelf, as seen in the video. Turning on the power yielded green lights on all of them, indicating a successful first step! In the next few days we will add connectors to the Arduino wires for easy removal and troubleshooting.

Additionally, as mentioned earlier, we obtained an acrylic board to replace the top of our box. This was done so that the motors could easily be connected or disconnected from the waterproof box. This ultimately adds another step of customization to the project. Holes were cut in the acrylic to the exact size of the waterproof D-Sub connectors and 4 stop buttons. The stop buttons were prepared by soldering a power line through both terminals of the button, once again furthering the modularity of this project by allowing for shut-off of power to sets of 6 of the Easy Drivers.

 040e56a802ed470bb2a3ff7c5fd008db
Lastly, we created and received more 3D-printed components of the project. This includes the shelf for the four Arduinos, the shelf for the power converter, and the slots for the Easy Drivers. However, there was a problem with the shelf prints, due to the designs being made from the measurements from a different layout schematic. Therefore, we updated the spacing of the shelves to accommodate the Easy Drivers beneath. Also, the Easy Driver slots were too loose for the Easy Drivers in the first iteration, but our second iteration was sufficient to fit the 24 Easy Drivers securely.