Difference between revisions of "Spring 2012: Ajoke Jumoke Williams"

From Course Wiki
Jump to: navigation, search
Line 16: Line 16:
  
 
<h4> Diagram of Electronic Control System </h4>
 
<h4> Diagram of Electronic Control System </h4>
A.<br/>
+
A. To be added later.  
B.<br/>
+
C.<br/>
+
D.<br/>
+
  
'''''Instruments/Code'''''
+
'''''Instruments/Code'''''<br/>
 
Matlab : programming language <br/>
 
Matlab : programming language <br/>
DAQ – <br/>
+
DAQ – National Instruments DAQ Card <br/>
 
Piezoelectric Driver and Controller - TPZ001 <br/>
 
Piezoelectric Driver and Controller - TPZ001 <br/>
 
Bead size: 0.97 um beads used <br/>
 
Bead size: 0.97 um beads used <br/>
Line 30: Line 27:
  
 
<h4> Goals: What we set out to accomplish </h4>
 
<h4> Goals: What we set out to accomplish </h4>
We set out to add functionality to the trap control software, specifically we wanted to automate centering of the DNA-tethered bead using a centering algorithm which we would write in MATLAB. To center the DNA-tethered bead we would need to learn how to talk to different electronics using DAQ and the daqtoolbox in MATLAB, how to test a code which is supposed to provide specific functionality, and a bit about the gui in MATLAB.  
+
We set out to add functionality to the trap control software, specifically we wanted to automate centering of the DNA-tethered bead using a centering algorithm which we would write in MATLAB. To center the DNA-tethered bead we would need to learn how to talk to different electronics using DAQ and the daqtoolbox in MATLAB, how to test a code which is supposed to provide specific functionality, and a bit about the gui in MATLAB. After writing the code, our goals expanded to include writing code to simulate a typical optical trap experiment which would be used to measure the persistence length and the contour length of DNA. <br/>
After writing the code, our goals expanded to include writing code to simulate a typical optical trap experiment which would be used to measure the persistence length and the contour length of DNA. <br/>
+
  
 
<p style="font-family: helvetica; font-size:9pt">  
 
<p style="font-family: helvetica; font-size:9pt">  
  
 
<h4> Motivating the project goal </h4>
 
<h4> Motivating the project goal </h4>
We wanted to center the bead for when we fit the x vx. F curve to the worm chain model  that the force we were calculating was mostly being applied along to axis of the stage movement during the tether’s stretching trajectory. This is necessary because the worm chain model [See Appleyard] we used models the relationship between force and displacement of a linear unit of distance ( x ) of the DNA:  
+
We wanted to center the bead so when we fit the x displacement vs. Force applied curve to the worm chain model  that the force we were calculating was fully being applied to the DNA-tether. Centering the bead also helped ensured that, to estimate the persistence length and the contour length of the DNA , the only "displacement' of the tether in one direction is being measured. This is necessary because in the worm chain model [See Appleyard] there is a relationship between force and displacement of a linear unit of distance ( x ) of the DNA:  
 +
<center>
 
<math> F = \frac{k_{B}}{l_{p}}[(\frac{1}{4}(1 - \frac{x}{l_{c}})^{-2} - \frac{1}{4} +\frac{x}{l_{c}}]</math><br/>
 
<math> F = \frac{k_{B}}{l_{p}}[(\frac{1}{4}(1 - \frac{x}{l_{c}})^{-2} - \frac{1}{4} +\frac{x}{l_{c}}]</math><br/>
 
+
</center>
 
where k_{B} is the Boltzmann constant, l_{c} is the contour length and l_{p} is the persistence length.
 
where k_{B} is the Boltzmann constant, l_{c} is the contour length and l_{p} is the persistence length.
  
Line 46: Line 43:
 
3. Determining the relationship between the output piezoelectric voltage and the feedback voltage fed into the piezoelectric motor so that the stage can be centered accordingly.<br/>
 
3. Determining the relationship between the output piezoelectric voltage and the feedback voltage fed into the piezoelectric motor so that the stage can be centered accordingly.<br/>
 
4. Designing a centering algorithm <br/>
 
4. Designing a centering algorithm <br/>
5. Proof of concept - Simulating data and testing results.<br/>
+
 
6. Testing with real DNA-tethers.<br/>
+
 
Project Steps 1-4<br/>
 
Project Steps 1-4<br/>
We first started out by creating a function called dnaTetherCentering which fed a sine waveform (only along one axis at a time) into the appropriate PiezoDriver channel. The sine waveform was set to repeat 3 cycles every time the piezoelectric controller was triggered (line  ). The next step was figuring out the logical progression of steps for the code. We knew that we wanted to center the dna-tethered bead in one axis at a time. We eventually settled on first centering the dna tether in the x axis,centering the dna tether in the y axis and then going back to the x axis and refining our centering on that axis. These sequence of steps is followed with the use of the variables xcenter and ycenter, as seen in the code. The next step was to design a centeringAlgorithm.  
+
We first started out by creating a function called dnaTetherCentering which fed a sine waveform (only along one axis at a time) into the appropriate PiezoDriver channel. The sine waveform was set to repeat 3 cycles every time the piezoelectric controller was triggered (line  ). The next step was figuring out the logical progression of steps for the code. We knew that we wanted to center the DNA-tethered bead in one axis at a time. We eventually settled on first centering the DNA tether in the x axis,centering the DNA tether in the y axis and then going back to the x axis to collect the data that will be used to fit the worm-chain model. These sequence of steps is followed with the use of the variables xcenter and ycenter, as seen in the code. The next step was to design a centeringAlgorithm.  
 +
 
 
The first iteration of centeringAlgorithm we designed relied heavily on the topography of the dna-tether calibration curve as seen in the figure below.
 
The first iteration of centeringAlgorithm we designed relied heavily on the topography of the dna-tether calibration curve as seen in the figure below.
 
[[File:Dnatethering_20mW_&_two_70mW.jpg|200px|thumb|center|]]
 
[[File:Dnatethering_20mW_&_two_70mW.jpg|200px|thumb|center|]]
The two main features we used to extract the location of the center of the dna-tether were the peak and trough of the curve.  
+
The two main features we used to extract the location of the center of the DNA-tethered bead were the peak and trough of the curve.  
 
In the code, the maximum voltage reading of the QPD was found and added to the minimum voltage reading of the QPD and divided by 2.  
 
In the code, the maximum voltage reading of the QPD was found and added to the minimum voltage reading of the QPD and divided by 2.  
  
  
Another algorithm implemented but not fully debugged tried to discern the dna-tether center by calculating the discrete derivative of the voltage signal from the QPD to the uniaxial position movement of the optical trap's stage. The function, essentially looks for a region with discrete derivative <<< 1 and and then find the voltage reading of that "plateau". Then the function checks to see if other features of a good calibration curve are present such as the large (positive and negative) slope leading to the peak on the position/voltage readout curve.  
+
Another algorithm implemented but not fully debugged tried to discern the dna-tether center by calculating the discrete derivative of the voltage signal from the QPD to the uniaxial position movement of the optical trap's stage. The function, essentially looks for a region with discrete derivative (which would correspond to a region were the derivative is zero) <<< 1 and and then find the voltage reading of that "plateau". Then the function checks to see if other features of a good calibration curve are present such as the large (positive and negative) slope leading to the peak on the position/voltage readout curve.  
 
+
Unfortunately, we haven't had time to test our code with
+
  
  

Revision as of 23:58, 3 March 2012


20.345: Bioinstrumentation Project Lab

Introduction

My role model

Hey, I'm Ajoke(not pronounced -a-joke) Williams and I'm a senior in Biology. I took 20.309 my sophomore year and it was a frightening experience;mostly because the class was really hard for me. Nevertheless the material was awesome. Because of 20.309 I received my first exposure to optics and matlab. Although 20.309 only touched on geometric optics I found thinking about light and its propagation through space and matter exciting. Fast forward to my senior fall year and I found myself taking a Modern Optics class and working in a UROP where I mostly code in matlab, which is pretty ironic since geometric optics was not my friend my sophomore year and I have never before considered myself a "programmer". My expectations for this class are to learn more about optics and how optical components are interfaced with electrical and digital components to make robust biological measurement/imaging systems, to improve my programming skills and learn how to build a PCB board. Right now I think I'm leaning towards working on the STORM imaging method for a final project.



Lab 1: Optical Trapping: UI and Instrument Control

Diagram of Electronic Control System

A. To be added later.

Instruments/Code
Matlab : programming language
DAQ – National Instruments DAQ Card
Piezoelectric Driver and Controller - TPZ001
Bead size: 0.97 um beads used
Lasers wavelength: 976um


Goals: What we set out to accomplish

We set out to add functionality to the trap control software, specifically we wanted to automate centering of the DNA-tethered bead using a centering algorithm which we would write in MATLAB. To center the DNA-tethered bead we would need to learn how to talk to different electronics using DAQ and the daqtoolbox in MATLAB, how to test a code which is supposed to provide specific functionality, and a bit about the gui in MATLAB. After writing the code, our goals expanded to include writing code to simulate a typical optical trap experiment which would be used to measure the persistence length and the contour length of DNA.

Motivating the project goal

We wanted to center the bead so when we fit the x displacement vs. Force applied curve to the worm chain model that the force we were calculating was fully being applied to the DNA-tether. Centering the bead also helped ensured that, to estimate the persistence length and the contour length of the DNA , the only "displacement' of the tether in one direction is being measured. This is necessary because in the worm chain model [See Appleyard] there is a relationship between force and displacement of a linear unit of distance ( x ) of the DNA:

$ F = \frac{k_{B}}{l_{p}}[(\frac{1}{4}(1 - \frac{x}{l_{c}})^{-2} - \frac{1}{4} +\frac{x}{l_{c}}] $

where k_{B} is the Boltzmann constant, l_{c} is the contour length and l_{p} is the persistence length.

Project Steps

1. Understanding the OTKB code and figuring out how to use the variables that were already defined in OTKB.m to write our code, for ease of integration.
2. Writing a skeleton for the data acquisition and then the subsequent update of piezoelectric stage position. <br\> 3. Determining the relationship between the output piezoelectric voltage and the feedback voltage fed into the piezoelectric motor so that the stage can be centered accordingly.
4. Designing a centering algorithm

Project Steps 1-4
We first started out by creating a function called dnaTetherCentering which fed a sine waveform (only along one axis at a time) into the appropriate PiezoDriver channel. The sine waveform was set to repeat 3 cycles every time the piezoelectric controller was triggered (line ). The next step was figuring out the logical progression of steps for the code. We knew that we wanted to center the DNA-tethered bead in one axis at a time. We eventually settled on first centering the DNA tether in the x axis,centering the DNA tether in the y axis and then going back to the x axis to collect the data that will be used to fit the worm-chain model. These sequence of steps is followed with the use of the variables xcenter and ycenter, as seen in the code. The next step was to design a centeringAlgorithm.

The first iteration of centeringAlgorithm we designed relied heavily on the topography of the dna-tether calibration curve as seen in the figure below.

Dnatethering 20mW & two 70mW.jpg

The two main features we used to extract the location of the center of the DNA-tethered bead were the peak and trough of the curve. In the code, the maximum voltage reading of the QPD was found and added to the minimum voltage reading of the QPD and divided by 2.


Another algorithm implemented but not fully debugged tried to discern the dna-tether center by calculating the discrete derivative of the voltage signal from the QPD to the uniaxial position movement of the optical trap's stage. The function, essentially looks for a region with discrete derivative (which would correspond to a region were the derivative is zero) <<< 1 and and then find the voltage reading of that "plateau". Then the function checks to see if other features of a good calibration curve are present such as the large (positive and negative) slope leading to the peak on the position/voltage readout curve.



Results of Project Steps

Code

Centering Algorithm

Results of Project Steps 4 
GUI Code Integrated into OTKB Function
function pushbuttonDNATetherCenter_Callback(hObject, eventdata, handles)