To record light intensity, we were inspired by the E. glometer of the Cambridge team of iGEM 2010.
Figure 1.
The E. glometer of Cambrige team (iGEM 2010)
Device built by Cambrige team in 2010 to measure the light intensity of their LuxBrick
Source:https://2010.igem.org/Team:Cambridge/Tools/Eglometer
We use a similar photodiode (TSL230RD) – the same as the TSL230RP-LF but as a surface mounted device (SMD) – and an Arduino Uno. Arduino is a single-board microcontroller created to make electronics more accessible. The main asset of the photodiode is that the output can be either a pulse train or a square wave (50% duty cycle) with its frequency directly proportional to light intensity. Since we are using a microcontroller, it is easy to calculate the frequency with the digital input of the microchip thanks to high or low level detection and we will have a better resolution because low frequencies are easier to measure than low voltages at low light levels. However before measuring with the photodiode, we need to know if the photodiode works as indicated in the datasheet. The photodiode was plugged in on a 5V stabilized power supply.
Figure 2.
A member of the team working on the photodiode
For the same amount of light, we measure the frequency at the output of the photodiode for a pulse train or a square wave (50% duty cycle). According to the datasheet, when using a pulse train the linear relation between the frequency and the irrandiance is given by 1kHz=1µW/cm². When using a square wave (50% duty cycle) it is 1kHz=2µW/cm². This is what we can see on the figure below.
Figure 3.
Oscillograms showing the two different mode of the photodiode.The first oscillogramm shows the pulse train mode and the second the 50% duty cycle mode
Since this frequency will be calculated by the Arduino controller, it may cause some trouble to the program to use a pulse train because the duration of the pulse is always 500ns and can be missed by the controller. The square wave (50% duty cycle) seems to be a better solution because of the 50% duty cycle. It means that the pulse duration depends on the frequency. Its duration is equal to 1/2f and since the light intensity we want to measure will be low, this type of signal can be easily detected by Arduino.
Arduino is an (easily) programmable microcontroller. It is used here to convert the frequency given by the photodiode in irradiance that gives us the light intensity. In addition, it will communicate with the computer and control the lamp intensity to act of the bacterial suspension. To measure the frequency of the peaks emitted by the photodiode, the Arduino algorithm is quite simple. It counts the number of high levels (samples) and the duration of the measurement (length) and with these two elements it makes this calculation: Irradiance=frequency/(frequency scaling)= samples/(frequency scaling × length)
To know if this program works, a function generator was plug in one of the digital input of Arduino instead of the photodiode. By changing the frequency of the square signal sent by the generator and measuring several times the frequency with Arduino and compare the measures to the frequency given by an oscilloscope, we can calculate the accuracy of the program. If the algorithm is right, the curve should follow the equation x=y, which means that Arduino and the oscilloscope measure the same frequencies.
Figure 4.
Characterization of the algorithm in Arduino
The first graph shows us the reponse of Arduino in pulse train mode, the second one shows us the response of Arduino in 50% duty cycle mode, and the last one gives us the standard deviation of the 50% duty cycle mode
According to our experiment, the pulse train mode is not a good option since the curve doesn’t follow at all the x=y curve. Only three points are shown here because the others are worse. On the other hand, the 50% duty cycle mode seems to work better, at least at the low frequency. For frequencies under 35kHz, the curve fits the equation y=x. However, above this critical frequency, the response of the microcontroller seems to break down and follows the equation y=x/2. For frequencies over 100kHz, the system does not give reliable results. This is explained by the time of the "while loop" in the microcontroller program. At the end of this loop, the program jumps back to the beginning of the loop, but when the photodiode emits peaks at increasing frequencies, the microcontroller is not fast enough and misses one pulse out of two which explains the curves y=x then y=x/2. In addition, the plot of the standard deviation as a function of the frequency demonstrates that the system is very precise for low light intensities. The errors are below 0.5% when 100 pulses are recorded. At the lowest illuminations, the device will measure the fluorescence of the bacterial culture every 5 min, which is enough for this kind of sample. In the next paragraph, we are going to see that the device is efficient enough to measure low light intensity like fluorescence.
For the proof of concept of the optical part we use a LED lamp - MR16 (GU5.3)- and a cube filter from a fluorescence microscope with excitation and emission filters and an adjustable lens. The LED lamp was chosen so that we didn't have to buy high-power LEDS and build a card with heat sinks. This lamp illuminates with 520 lumens in a 40° cone under 12V and 6W. The low voltage was chosen as a safety measure and the small angle to avoid losing too much light. The excitation filter is a green interferential filter to excite the red fluorescent protein and the red emission filter is only a colored filter to collect all the red light in order to have a more precise measure. In the cube there is also a dichroic mirror that reflects all the green light and transmits all the red light. This mirror enables us to separate the photodiode from the light source completely.
Figure 5.
TALKE'coli: C2M part
On the left: the real device, on the right: functional schematic
The light from the LED lamp goes through the green excitation filter and illuminate the sample thanks to a dichroic mirror. Then the red fluorescent protein is now excited and re-emits red light that goes through a lens that concentrate it on the photodiode.
With the setup shown above, we put different culture in a 50mL rounded tube and to protect the photodiode from the outside lamp we place all the component in a large box. These are the results we obtained:
Sample | Measure by Tristar [RLU] | Frequency by the oscilloscope [Hz] | Irradiance by the oscilloscope [nW/cm²] |
---|---|---|---|
LB medium | 142 +/- 18.3 | 15.3 +/- 0.4 | 30.6 +/- 0.8 |
Non-induced overnight culture of KillerRed expressing cells | 279 +/- 14.5 | 15.5 +/- 0.4 | 31 +/- 0.8 |
Induced growing culture of KillerRed expressing cells | 8771 +/- 219 | 20.3 +/- 0.4 | 40.6 +/- 0.8 |
Induced overnight culture of KillerRed expressing cells | 31313 +/- 1075 | 32.5 +/- 0.4 | 65 +/- 0.8 |
Figure 6.
Characterization of the fluorescence measurements
The fluorescence readings of Talk'E.coli and of the Tristar microplate reader are linearly related. Furthermore, the precision of both measurements are comparable. Our device is therefore able to detect KillerRed fluorescence with enough precision to allow proper cell growth control.
To kill more or less cells, our device needed to control light intensity. To do so, we made the electronic circuit shown below.
Figure 7.
Electronic circuit that enables us to control light intensity
This circuit stabilizes the amperage of the LED lamp at 0.5A thanks to a bipolar transistor, three diodes and the R3 and R4 resistors.
The MOS transistor is controlled by Arduino and is used like a switch. It allows us to control the average light intensity of the LED lamp.
The first part of this circuit – all components above the MOS transistor BS170 - stabilizes the amperage of the LED lamp and the second – composed by the MOS transistor and Arduino - allows us to control the average light intensity of the LED lamp. The nominal power of the LED is 6W when 12V is applied. That means that the amperage going through the LED lamp is 0.5A. Since we cannot be sure that our alimentation is completely stable, we need to stabilize it thank to a bipolar transistor, three diodes and two resistors. We know that:
Therefore
The value of the resistor is also: In order for the resistor not to burn, the power dissipated due to the Joule effect need to be under 0.25W. But it is not the case here! To solve this issue we use a little trick. We put two resistors in parallel that have 2xR=2.8 Ω So that we divide the power dissipated due to the Joule effect by two but keep the same intensity Ie. This first part enables us to stabilize the current in the LED lamp. But to control the light intensity, we plug an MOS transistor between the first part and the ground whose gate is plug into a Pulse Width Modulation (PWM) output of Arduino. In this configuration, the transistor work as a switch; it is opened when the gate is at Low level (the ground here) and it is closed when the gate is at a high level (5V here). By modulating the time the circuit is opened per periods we can change the average intensity of the light. The figure below gives 3 examples of this system.
Figure 8.
Influence of Pulse Width Modulation(PWM) on the Average Light Intensity
T: period of the signal; I0: maximum light intensity.
The three examples above shows that when the duty cycle of the pulse width modulation changes, the average light intensity changes too. The percentage of the light intensity compared to the maximum I0 is given by the percentage of the duty cycle of the PWM.
We are now able to control light intensity thanks to this circuit, but to plug all the electronic parts - the photodiode and this circuit - a Printed circuit board (PCB) need to be printed. To do so, we used the software called Altium. We can finally create the box to finish the device.
The servomotor is used to change the filter in front of the LED Lamp. Arduino actually possesses a library that provides several functions to control the servomotor. We were inspired by this tutorial on a french website. After discovering how to control the servomotor, we needed to make some calculation to find the right size of the radius of the servomotor and the arm that moves the filter rack. Since we are only using 3 different wavelengths, green for the fluorescence, red for inducing KillerRed, and white light to kill the cell, we only need 3 slots. To make calculations easier, we assign the first slot to the first position and the third slot to the last position.
Figure 9.
On the left, the first position of the servomotor and on the right, the second position of the servomotor.
Known dimensions :
L: distance between the center of the servomotor S and the center of the hole in the box A (6.5cm) h: height from A to S (2cm) R: radius of the filter and also the hole in the box (1cm) X: distance between one part of the arm and the filter rack (0.2cm) b: distance between the beginning of the filter rack and the filter (0.2cm) – 2b is the distance between each filters Dimensions to determine:: a: radius of the servomotor l: length of the arm that moves the filter rack
A rotating servomotor was used to move a sliding filter holder in front of the light and the photodiode. Geometrical considerations explained above allowed us to dimension the lever arm that translates the rotating movement of the motor in the translation of the filter rack. It is known that:
That means:
To have enough power to push and pull the filter rack the angle α need to be bigger than 45°, that means:
But knowing a we can calculate l with [1]:
To build the box, we used the Computer-Aided Design (CAD) software Google SketchUp. It allows us to use a 3D-printer, and save time on the construction process. Our device needs to fulfill several specifications. It needs to be mountable in an incubator, so that the culture is at 37°C under agitation and protected from outside light, but it also has to have enough space to accommodate the electronic circuitry and optical components.
Figure 10.
Main parts of the device
1 - The box with two separated parts where there are the electronic circuitry and optical components in one part and the Erlenmeyer with our engineered bacteria in the other.
2.a - The filter rack with, from left to right, the excitation and emission filters and the dichroic mirror, the red colored filter and a plane mirror and only a mirror that reflects the white light from the LED lamp
2.b - The rail where the filter rack can slide
3 - The lens holder
4 - The box for the LED lamp
5 - The servomotor holder
The box has been made to be mountable in an incubator. On its support, there are holes that fit the holes of the incubator so that you can simply screw them together. There are also two doors, one with a latch that enables us to easily put the Erlenmeyer and a second dedicated to the electronic circuitry and optical components. As a safety and experimental issue, the two parts are completely separated to avoid spreading the culture on the electronic part or illuminating the culture with an unwanted wavelength. There is only one hole that allows us to illuminate the sample.
To create the filter rack, we were inspired by a cube filter which is composed of two excitation filters – green and blue, two emission filters – red and yellow, and two dichroic mirrors. We re-designed it on SketchUp by adding two additional slots. The first slot is used to measure the red fluorescence of KillerRed. There is a green excitation filter on the top, a red emission filter on one side and a dichroic mirror between the two pieces. A red colored filter is on the top of the second slot to induce the KillerRed protein production. There is no filter in the third slot because it is used to activate ROS emission with white light. Since the light comes from above, there is a plate mirror between the two pieces under the slots two and three. The last slot was planned for further use, for instance to measure back-scattering of the cell suspension. For such measure, a colored filter and a half-reflecting mirror would be used. Back-scattering would provide information about the total number of bacteria, similar to OD600nm recording. The filters were taken from the cube filter we receive but the plate mirror was created in a clean room by aluminum sputtering at 70W and 1.2Pa – the thickness of the aluminum is about 20nm.
To focus the beam of the fluorescence, we use a microscope objective. Therefore, we needed a part that could hold it. We created a mold where you just plug the objective into it.
To avoid illuminating the entire box, we put the LED in a smaller one where one side is closed with only a hole that matches the size of the lamp cap. Since the illumination angle of the lamp is small, the light goes almost in one direction and only light up the filters or mirror.
Since the servomotor will move the filter rack, it needed to be securely attached onto the box. We designed a part with two arms that allowed you to screw the servomotor and a flat support to bold it on the box. We drilled many holes so that we can easily adjust the height of the servomotor. As said previously we used a 3D-printer to built these parts, but because of the complexity of the filter rack and its rail they had to be done with a another 3D-printing method. These two parts were completed through Selective Laser Sintering and all the other were made by Fused Deposition Modeling