Team:Cambridge/Project/Instrumentation
From 2012.igem.org
Contents |
Instrumentation - Biologger
Instrumentation (Biologger) was a vital aspect of our project in the development of the biosensing kit. The term instrumentation includes all the mechanical, electrical and software components which allow the incorporation of our multiple independent modules into a working and field-ready kit. The design process as well as the testing data and videos of the different parts of the instrumentation can be reviewed at our Design page
Mechanical
The mechanical chassis prototype, as can be seen from the image on the left, was made using two materials: foam and aluminium. Foam was chosen due to its easy manipulation and aluminium due to its excellent strength to weight ratio. The prototype includes a rotary mechanism (a central metal axon connected to the cuvette holder cylinder), which can be driven in steps by a DC electric motor (and a suitable code). It should be noted at this point that this is merely one possible implementation of suitable instrumentation and in particular it was one that could be developed as a prototype, always within the constraints of this project. We do not wish to claim that this is an ideal solution!
The purpose is that our self-developed sensor, which was made using two light dependent resistors (and can be seen in the design page), an orange and a blue theatrical filter, takes multiple readings from different biosensors, each found in a different cuvette. It should be noted that each cuvette holder is coated on the inside with highly reflective mylar film (image on the right). In this way, most of the light produced by the bacteria is concentrated for more accurate sensor measurements.
Electrical
The hardware/software electronic interface was achieved using an Arduino microcontroller. The arduino circuitry, as illustrated on the left, is made up of our sensor, the motor, and a PCB or a breadboard (both were used in the process of our project). The final setup we developed, however, does not have a second transistor for driving the motor, as the motor used did not provide a great initial torque. However, in cases where the motor to be used is too violent at start a second transistor is required. The Bluetooth modem (Bluesmirf Gold) is an extra to be used when communication with mobile devices (e.g. with Android operating system) is required. The LDRs of our sensor sit in a biased potential divider setup allowing for a direct ratiometric output without further calculations needed to be made in the software (more information, including testing data for our sensor can be found in the design page as well). The circuitry is incorporated into the mechanical chassis for an attractive, ergonomic overall design. The functionality of the system, including the sensitivity of our manually-made sensor setup in the right geometry using our manually-made cuvette holders was tested with success! The results can be seen in our Design page. The code of the pre-set C++ program for driving the arduino can be found and downloaded in our Arduino Code pageNote that there are two different programs: one for PCs and one for android devices.
Software
Software applications were developed, as mentioned before, for both PCs and android devices. This was done in order to provide extra flexibility as the potential use of our kit is field work. The computer software is written in the free open-source language python with cross-platform wxWidgets used to implement a GUI. The idea was to develop a fully functional GUI for collecting sensor data from all six inputs and display these as line graphs and in a final bar chart.
The image below on the right is a screengrab of the GUI under development and testing its ratiometric ability. The higher values are when one LDR is covered, the lower for the other and no change is observed when both are illuminated equally. By controlling the illumination, we managed to make our application write iGEM in morse code (image on the right)! The android GUI was made in Java using Eclipse editing mostly [http://www.amarino-toolkit.net/index.php/home.htmlAmarino] projects' open-source code (General Public License). The first screen (image below on the left) asks for the address of the Bluetooth modem connected to Arduino. B.Subtilights was the first logo of our team, and as we decided not to abandon it completely, it is the logo included in this application. This application is also functional as it can successfully connect, read real-time data and plot them in any Android phone/tablet.
The code (for programmers) as well as a ready application to be downloaded (for non-programmers this is the Bio_Logger.apk file) can be found in our Android application page. The code for the Pyhton program can also be found and be downloaded in our Python software page.
It should be noted that amarino_2.apk, found in the link above must also be downloaded on the android device for our application (Bio_Logger) to be perfectly functional, as it requires one of the amarino libraries.