Document 11034511

advertisement
On Advancement of High Speed Atomic Force Microscope Technology
by
Kimberly E. SooHoo
SUBMITTED TO THE DEPARTMENT OF MECHANICAL ENGINEERING IN
PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF
BACHELOR OF SCIENCE
AT THE
MASSACHUSETTS INSTITUTE OF TECHNOLOGY
JUNE 2008
©2008 Kimberly E. SooHoo. All rights reserved.
The author hereby grants to MIT permission to reproduce
and to distribute publicly paper and electronic
copies of this thesis document in whole or in part
in any medium now known or hereafter created.
Signature of Author:
-
/
Department of Mechanical Engineering
05/09/2008
Certified by:
/
..
S~
Kamal Youcef-Toumi
Professor of Mechanical Engineering
Thesis Supervisor
Accepted by:
John H. Lienhard V
"• ...
Ior of Mechanical Engineering
Chairman. Undergraduate Thesis Committee
MASSACHL••TTS
]
INSTfT
OFTEOHNOLOGY
AUG 1-42008
LIBRARIES
I
ARCHENU
On Advancement of High Speed
Atomic Force Microscope Technology
By
Kimberly E. SooHoo
Submitted to the Department of Mechanical Engineering
on May 9, 2008 in Partial Fulfillment of the
Requirements for the Degree of Bachelor of Science
in Mechanical Engineering
ABSTRACT
High speed atomic force microscopy (AFM) is a developing process in which nanoscale
objects, such as crystal structures or strands of DNA, can be imaged at rates fast enough
to watch processes as they occur. Although current generation AFM is already pivotal in
many fields of research and industry, slow scan rates inhibit the imaging of dynamic
samples. Much advancement has been made in high speed AFM thus far, yet many
subsystems remain to be developed. This thesis outlines the development of a feedback
controller for the AFM scanner, as well as the filters designed to attenuate high frequency
noise. A comparison of the scan signals and scanner output signals are compared, with
and without the controller and filters. Post-data acquisition image processing techniques
are also described and compared with raw data. Finally, these techniques are applied to
the high speed imaging of calcite etched with hydrochloric acid.
Thesis Supervisor: Kamal Youcef-Toumi
Title: Professor of Mechanical Engineering
Table of Contents
1. Introduction .....................................................................................................................
7
2. Instrumentation and Control .........................................................................................
10
2.1
Introduction .......................................................................................................
10
2.2
Piezoelectric Material Feedback Control ...........................................
..... . 10
2.3
Description of PID Control Principle .......................................
........ 15
2.4
PID Control Verification..............................................
17
2.5
Scan Signal Filtering................................................................................
18
2.6
Scan Signal Filtering Verification ........................................
.......... 20
2.7
Summary ........................................................................................................
20
3. Image Processing .................................................................................................... 22
3.1
Introduction....................................................................................................... 22
3.2
Tilt Removal Principle..........................
.....................................
22
3.3
Scaling Principle ......................................................................................... 23
3.4
Experimental Verification.............................................
25
3.5
Summary........................................................................................................... 27
4. Application and System Integration...................................................................
28
4.1
Introduction....................................................................................................... 28
4.2
Experimental Setup........................................................ 28
4.3
Imaging Crystal Etching in Calcite............................................................. 29
4.3.1
Imaging Dry Calcite..................................
... .............. ............. 29
4.3.2
Imaging Calcite in Liquid ..............................................................
32
4.3.3
Imaging Calcite with HC1 .............................................................
..
32
4.4
Conclusion ........................................ ............................................................ 34
5. Conclusions and Recommendations.................................... ............................... 35
6. Appendices........................................................ ....................................................... 37
Appendix A..................................................................................
..............
37
Appendix B ........................................
40
Appendix C ....................................................
42
Appendix D............................................................................................................. 44
MATLAB Tilt Removal, Scaling, and Movie Code..............................
o . ....44
7. Acknowledgements.............................................................................
...................... 46
8. References........................................ .............................
....... ................ 47
List of Figures
Figure 1: Histeresis of piezoelectric material [9]....................................
.......... 11
Figure 2: Block diagram of scanner feedback control loop ......................................
. 12
Figure 3: Block diagram of scanner feedback control loop with strain gage correction.. 13
Figure 4: Screenshot of the PID control and strain gage signal correction program in
LabV IE W ..................................................................................................................
14
Figure 5: Comparison of scan signal and strain gage signal at 10 Hz ...........................
17
Figure 6: Comparison of scan signal and strain gage signal at 500Hz ..........................
18
Figure 7: High frequency steps in scan signal triangle wave generated by LabVIEW
19
software on a desktop PC................................................................................
Figure 8: Scanner response signals to a 10 Hz Triangle Wave...............................
Figure 9: AFM images of a 3pm pitch silicon grating.................................................
Figure 10: Zoomed in portion of silicon grating................................
. 20
25
............ 26
Figure 11: Piezoelectric material layout on the AFM scanner. .....................................
28
........
29
Figure 12: Sample scanning AFM components ........................................
Figure 13: AFM deflection image of 15p~m-by-15p.m area of dry calcite. .................... 30
Figure 14: AFM deflection images of dry calcite at line rates of (a) 1Hz. (b) 10Hz. (c)
20H z. (d) 50H z. (e) 100H z ....................................................................................
31
Figure 15: AFM deflection image of 15pgm-by-15p.m area of calcite in water .............. 32
Figure 16: Progression of calcite etching, imaged at 10Hz line rate. ............................
33
Figure 17: Outer structure of x-y translation stage ......................................
......
38
Figure 18: Inner structure of x-y translation stage .......................................
.......
38
1. Introduction
Atomic Force Microscopy (AFM) is a powerful method of acquiring images with
better than nanometer resolution. The process was invented in 1986 by Binnig et al. as
an advancement of Scanning Tunneling Microscopy [1]. While other nanoscale imaging
techniques are limited to conductive samples (SEM, STM) or a vacuum environment
(SEM, TEM), AFM allows for the imaging of insulators at room pressure, as the
scanning technique is mechanical in nature.
AFM uses a sharp probe at the end of a
cantilever which is dragged over the surface of a sample.
In sample scanning atomic
force microscopes (AFMs), the sample sits on the z-piezo, a stack or tube of piezoelectric
material (piezo) which expands and contracts in the z-direction driven by a feedback
controller to compensate for the deflection of the probe from a setpoint. The motion in
the x and y directions are controlled through x- and y-piezos, respectively. In most
AFMs today, probe vertical deflection is measured within the AFM head using the
reflection of a laser off the cantilever tip onto a photodiode (optical lever detection). The
signal from the photodiode is used to control the z-piezo, causing it to expand and
contract in response to the signal in order to return the cantilever angle to its original
setpoint angle. As the z-piezo responds to the sample contours, the trajectory in the zdirection is plotted and used to create a topographical image of this sample.
The advantages of AFM have led to its prominence in many fields of industry and
research, such as semiconductor manufacturing and nanoscience. Furthermore, AFM is
widely used for imaging DNA strands, proteins, and living cells.
An additional
advantage of using AFM to image biological structures is that the process can be
performed in air or liquid. In 1992, Hansma et al. achieved higher resolution images of
plasmid DNA by imaging samples in n-propanol, reducing the adhesion forces between
the probe tip and sample [2].
Although there has been much success in the development and application of
AFM so far, there is a high demand for much faster imaging. The slow imaging rates
achievable in current AFMs are sufficient (although inconvenient) for imaging stationary
structures. However, when the sample of interest is undergoing a process which takes
only a few seconds or less, the process can not be observed using a typical AFM with
scan rates on the order of several minutes per frame. By vastly increasing the AFM
imaging rate, one could acquire images quickly enough to watch the process as it occurs.
For example, using a high speed AFM, one could scan a molecular motor [3] and align
the single frames of three dimensional data into a real time movie.
In an effort to increase the imaging rate from several minutes per image to several
frames per second, ongoing research aims to redesign the components of the microscope,
and design controllers suitable for imaging biological samples. Running an AFM at high
speeds excites resonances within the system. Thus, some of the mechanical components
must be redesigned with higher resonant frequencies, and electrical components must
include filters to attenuate noise. For example, in high speed imaging, smaller cantilevers
are needed because they have higher resonant frequencies for the same spring constant
[4]. While these small cantilevers are already in limited production, other mechanical
components remain to be redesigned for high speed capabilities. Furthermore, sources of
electrical noise must also be amended. High frequency noise also excites resonances in
the system, and must be eliminated using filters.
In addition to attenuating high frequency signals, adequate control systems must
be designed to control the motion of the high speed scanner. Because the imaging
process is based on mapping a height to an x-y position, faster controllers must be
developed both to ensure that the z-piezos are expanding and contracting in accordance
with their feedback signals from the cantilever deflection, as well as to adequately track
the input x- and y-trajectories.
Many recent developments have contributed to the advancement of high speed
AFM. High speed scanners with flexures on the sides of the z-piezo stack have been
developed to reduce vibration in the x- and y-directions [5]. Smaller cantilevers with high
resonance frequencies have been manufactured [5], while faster control systems have
been developed [6]. To facilitate the high speed imaging enabled by component
redesigns, faster data acquisition systems have also been developed [7].
Despite the advancement in the research of high speed AFM, many challenges
remain to be addressed. Further development of high speed control systems must be
designed and implemented. High frequency noise in scan signals must be attenuated.
Furthermore, post-data acquisition image processing techniques must be developed to
process the raw AFM data.
This thesis will discuss the development of scanner feedback control and x-y scan
signal filtering. The results of these developments will be verified and discussed by
examining the scan signals and scanner response signals. This thesis will then discuss the
post-processing techniques used to display the AFM images and align them into movies.
The implementation of these developments will be experimentally verified by imaging a
crystal calcite structure.
Finally, this thesis will describe the conclusions and
recommendations learned from this research.
2. Instrumentation and Control
2.1
Introduction
Because AFM imaging maps a height value for a given x-y-position, it is crucial
that the scanner follows the desired x-y trajectory in order to obtain an accurate image. If
the position of the scanner is inaccurate, the height values measured at certain locations
on the sample will be recorded as data specific to other locations, resulting in image
artifacts. This chapter will outline the approaches used to minimize two major causes of
image artifacts, namely the hysteresis observed in the sample scanner and resonant
frequencies excited by high frequency signals. Finally, the effects of the discussed
solutions in the AFM system are verified experimentally.
2.2
Piezoelectric Material Feedback Control
In sample scanning AFM, a major cause of image distortion is the observed
hysteresis of the scanner, especially at high scan signal frequencies. The scanner is set up
to track scan signals in the x- and y-directions, which in this case are triangle waves
generated using National Instruments LabVIEW 8.2 software through an Adlink DAQ2010 data acquisition card [7] and tracked with a National Instruments CompactRIO
programmable automation controller. A higher frequency signal drives the scanner back
and forth across a line (for example, in the x-direction), while a lower frequency signal
simultaneously moves the scanner perpendicular to that motion (for example, in the ydirection) to gather data from all the lines in a frame. Without a control mechanism
implemented in the system, the scanner trajectory does not follow a perfect triangle wave,
but instead exhibits hysteresis, as illustrated in Figure 1.
j2
1
1
1
0
10
20
30
40
50
00
70
80
90
100
Drive Votage
IV
Figure 1: Histeresis of piezoelectric material [9].
As illustrated in Figure 1, when the voltage signal sent to the piezo increases or
decreases linearly, the piezo does not expand or contract in a linear fashion. Instead, the
displacement of the piezo differs between increasing and decreasing signals. This
hysteresis causes misalignment between the consecutive images, which is particularly
troublesome when aligning images into movies.
The solution to this phenomenon is to implement a controller so that the scanner
can be manipulated to closely follow the generated scan signal. Two possible types of
control mechanisms are feedback and feedforward control
Feedback control is a method in which the input signal is sent to the system plant,
and its output is fed back to the controller. The difference between the input and output
is measured, and the controller adjusts the following reference signal accordingly. The
advantage of using feedback control is that it operates independently of the causes of the
system disturbances and simply adjusts the signal according to the scanner's response to
the input. One disadvantage is that for feedback one needs an independent sensor to
measure the actual piezo motion. Such a sensor needs nanometer resolution and high
bandwidth. The noise of this sensor is a limiting component to the scan accuracy and scan
speed.
The other option is feedforward control. Feedforward control is a process which
accounts for the disturbances that would adversely affect the ability of a system or uses a
model of the system to track an input signal, and the input signal is modified accordingly.
The advantage of using feedforward control is that no sensor is required in the control
system. Not only do sensors add a relatively high amount of noise, but accurate sensors
with bandwidths low enough for high speed AFM scanning are difficult to find.
Although AFM controllers use a combination of feedforward and feedback
controllers for scanner motion in the z-direction, almost all only use feedforward control
in the x- and y-directions to avoid the problems caused by noisy sensors. However, the
piezoelectric material response is based on many parameters, some of which include scan
speed, temperature, and humidity. The parameters input to an AFM scanner feedforward
controller are numerous and must be changed frequently in order to get reasonable
tracking of the scan signal.
Thus, closed loop feedback control is chosen for this AFM scanner. As this
method only relies on the scanner input and response for controller action, it eliminates
the need to predict the piezoelectric material behavior.
A proportional-integral-derivative (PID) controller is programmed into a National
Instruments LabVIEW field-programmable gate array (FPGA) module.
The PID
controller is integrated into the feedback loop as represented in the block diagram in
Figure 2.
Figure 2: Block diagram of scanner feedback control loop.
The reference signals are the triangle waves generated by the LabVIEW software
on a desktop PC and sent through a scan control box to allow for signal scaling and offset.
Each triangle wave is amplified (using a high voltage amplifier, Fa. Techproject) and sent
to the x- or y-piezos, causing them to expand and contract to move the scanner along its
trajectory. The output of the scanner is then read by strain gages attached to the x- and ypiezos, and the strain gage signals are fed back to the PID controller.
The general form of the feedback loop in Figure 2 assumes equal sensitivities in
the strain gages and the scanner, but in fact these sensitivities are different. To correct for
this difference, gains and offsets are programmed into the FPGA using LabVIEW. The
gain is programmed such that floating point numbers as well as integers can be processed
in the FPGA. This is a necessary step in order for the scanner to track the input signal
sufficiently well. The feedback diagram then becomes as shown in Figure 3.
Figure 3: Block diagram of scanner feedback control loop with strain gage correction.
Figure 3 shows the implementation of the strain gage signal gain and offset into
the feedback loop. The optimal offset and gain values are determined by comparing the
scan control signal to the corrected strain gage signals using a digital oscilloscope
(LeCroy Wavesurfer 452). By adjusting the offset value, the strain gage signal can be
corrected to lie in the range of the scan signal. By adjusting the gain, the amplitude of the
strain gage signal can be closely matched with that of the scan signal.
The elements of the feedback loop which are programmed in LabVIEW are
enclosed in a dotted box in Figure 3. The LabVIEW program includes PID controllers
and strain gage offsets and gains for both the x- and y- signals. A screenshot of the
program is shown in Figure 4.
.~ .•.......
MAIO·
M
AIl.
M
AI2.
M
AI3.
M
M
M
AOO
AOI
A02
t)Fr3)
. ·.r
.2
· · . ··········1iJ
IY gain (floating point) I
Figure 4: Screenshot of the PID control and strain gage signal correction program in LabVIEW.
The top half of the program corresponds to the x-scan signals and the bottom half
corresponds to the y-scan signals. On the left, the x-scan signal, x-strain gage signal, yscan signal, and y-strain gage signal are read in through the analog input block. Each
strain gage signal is then corrected with an offset and a gain. The scan signals and
corrected strain gage signals are read into their respective PID control blocks, where they
are processed and the controller output is sent to the analog output box on the right. After
these output signals are sent to the amplifiers and piezos as illustrated in Figure 3, the
reference and strain gage signals are again read into the LabVIEW program and the cycle
repeats.
14
2.3
Description of PID Control Principle
With a completely linear system, the PID controller would be a viable mechanism
for tracking the scan control signal. The fundamental idea behind a PID controller is that
it corrects an error signal, e, based on three parameters: proportional, integral, and
derivative. Each parameter is associated with a gain value, Kp, Ki, and Kd respectively,
which can be tuned to adjust the performance of the controller. The proportional part of
the controller compensates for the current error, or the difference between the system
output and its input (the setpoint) at a moment in time. Based on this comparison, the
controller adds a term to its output which takes the form of
up = Kp e
(1)
where up isthe proportional component of the output, and e isthe error signal.
The integral component sums the error over time to determine the accumulated
error not already eliminated by the controller. The controller multiplies the integral of
the error by the integral gain, to obtain the output
u, = K,. -e dt
(2)
where ui is the integral component of the output. Since this error is integrated over time,
the accumulation of small persistent errors incites more action from the controller. Thus,
the integral component of the controller is designed to minimize the steady state error of
the scanner response. This component is also added to the controller output in order to
correct for the sum of the error observed by the controller.
Finally, the derivative component measures the rate of change in the error with
respect to time. The derivative of the error is multiplied by the derivative gain such that
Ud = Kd .de
dt
(3)
where ud is the derivative component of the controller output.
As Kd is the gain for the dynamic component of the controller, it is adjusted to
improve the initial transient response of the scanner. For example, at the moment when
the controller is turned on, the error between the scanner output and the scan signal input
will be large. The derivative part of the controller will dominate when the scanner tries
to quickly catch up to the input signal. However, once the controller has been running
long enough for the response to come close to the input signal, the effects of the
derivative component become negligible until a large disturbance occurs in the input
signal (such a drastic change in sample topography).
Each of these three components of the output are summed to get a total controller
output equal to
u = up +u i +ud = K, e+K, -fe.dt+Kd de
dt
(3)
(3)
By adjusting the controller parameters K,, Ki, and Kd, the controller behavior can
be changed to find a suitable response to the system error. We are concerned with the
long term rather than transient response of the scanner, since the scanner will reach its
steady state response very quickly. Thus, we can eliminate the derivative component of
the controller, so that
Kd =0
(4)
u = up +u i = K, e +Ki, - edt
(5)
This then simplifies Equation 3 to
making the controller a PI, rather than PID, controller.
The optimal gain values for the proportional and integral components of the
controller are obtained by comparing the scan control signal to the corrected strain gage
signal both audibly and visually, using the oscilloscope. The main concern is that with
excessively high gain values, the controller would try to track noise in the scan signal,
resulting in system instability. Thus, the gain values are chosen such that they are low
enough to avoid hypersensitivity to noise, but high enough to minimize the steady state
error between the two signals.
2.4
PID Control Verification
The scan signal and scanner response signal are compared with and without PI
control. The derivative component is left out of the controller to avoid system instability
as a result of tracking the noise in the signal. By comparing the signals at 10Hz and
300Hz, it is clear that the controller allows for much better tracking of the scan signal at
both frequencies, as shown in Figure 5 and Figure 6.
Scan and Strdn Gage SIgnal at 10Hzwith PIDOIf
time
Scn and StrainGage S1gns at 10HzWth PID On
1
Unme
Figure 5: Comparison of scan signal and strain gage signal at 10 Hz. a) Signals without PI control. b)
Signals with PI control.
ScanandStrainGage Signalsat 500HzwithPID On
PIDOff
ScanandStrainGage Signdsat 500Hz nwth
I
I
.n-3
a.
.
"
time
-
X 1n3
X
Figure 6: Comparison of scan signal and strain gage signal at 500Hz. a) Signals without PI control.
b) Signals with PI control.
As the scanner hysteresis is more pronounced at higher frequencies, the error
between the signals even with the PI controller is slightly more noticeable at those high
frequencies. For the 10Hz signals, the maximum error is 0.375V, while for the 500Hz
signals, the maximum error is 0.500V. However, given the drastic improvement of the
scanner response with the controller on, the scanner is determined to track the scan signal
sufficiently well.
2.5
Scan Signal Filtering
In addition to feedback control, scan signal filtering is also a crucial component in
eliminating image artifacts. High frequency noise in the scan signal can excite
resonances which would cause the system to go unstable. A point of concern is the high
frequency "steps" observed in the scan signal due to the digital-to-analog (D/A) converter,
shown in Figure 7.
Scanner Response to 10Hz Triangle Wawe Without Filter
scan signal
steps
.5
time (us)
x 104
Figure 7: High frequency steps in scan signal triangle wave generated by LabVIEW software on a
desktop PC.
The scan signal triangle waves are generated as digital signals, but must be
converted to analog voltage signals before being input to the amplifiers and piezoelectric
material on the scanner. A D/A converter takes the digital numbers and converts them
into voltage outputs. Unfortunately, since the converter has a finite sampling rate, the
output signal is discrete rather than continuous.
The discontinuities in the converter output appear as high frequency steps in the
scan signal. In order to avoid exciting resonances due to the conversion, low pass filters
are built for both the x and y scan signals. A low pass filter can be designed for a specific
cut off frequency, where signals with frequencies higher than the cut off undergo
drastic
amplitude attenuation.
The filters for the scan signal are designed with adjustable cut off frequencies to
accommodate different scanning parameters. With a lower cut off frequency, more
high
frequency noise signals are attenuated, but the magnitudes of low frequency
signals are
also slightly attenuated as well. The drawback in this case is that if a filter with
a low cut
off frequency is chosen, although much of the noise is cut out, the triangle
wave is
rounded at its peak and the scanner does not scan the full range. Conversely,
if the filter
has a high cut off frequency, more noise is allowed is to pass through
the filter. The
effects of different filters are examined by sending the scan signal through each filter and
examining the scanner output.
2.6
Scan Signal Filtering Verification
The scanner response to a 10Hz triangle wave without any filter is plotted and
visually compared to the response with a filters with cut off frequency of 300kHz. While
the triangle wave without a filter shows large steps, the filtered wave exhibits a much
smoother signal, as shown in Figure 8.
tr
Tn
mO-rR•canoto 10am
I
0o5
W" w ho, Ff
94
S.-m R-m- Wth3kmmFil
as
04
"I
Q.a
0.0
10
StoI
xlc
Figure 8: Scanner response signals to a 10 Hz Triangle Wave. a) Scanner response without filtering.
b) Scanner response with low pass filter with cut off frequency 300kHz.
With the discontinuities in the scan signal filtered out, the response of the scanner
is much smoother, thereby eliminating much of the high frequency response which would
excite resonances in the scanner. Although at higher scan signal frequencies the peaks
exhibit more rounding when filtered, for a 10Hz triangle wave, this rounding is not
visible.
2.7
Summary
This chapter presented solutions to two causes of AFM image distortion. First, the
feedback mechanism implemented in the scanner system was discussed, and the PI
controller design was examined. The filters designed to cut off high frequency noise
were also presented. Finally, this chapter illustrated the effectiveness of each of the
methods described above.
3. Image Processing
3.1
Introduction
Even after the scanner feedback control and signal filtering during data collection
described in Chapter 2, raw AFM data must be post-processed before being displayed as
images. This chapter will describe the commonly observed problem of tilt in AFM
images, and it will outline two image processing techniques for removing it. This chapter
will then describe the scaling technique used for imaging three-dimensional data. Finally,
the results will be verified experimentally.
3.2
Tilt Removal Principle
The sensitivity of AFM to the height of a sample is what makes it such a powerful
imaging tool, yet it is also makes the technique very sensitive to planar tilt. As the
sample is set on the scanner by hand using wax for adhesion, the sample will always have
some planar tilt relative to the plane of motion of the scanner on which it lays.
The simplest way to remove tilt from AFM data is to perform image processing
techniques after data collection. After all of the images in a sequence are taken, the raw
AFM data is organized into separate matrices, where each entry in the matrix corresponds
to a z-value for a pixel location in the image. Each matrix represents one frame of image
data. With the data organized into matrices, image processing can be performed using
MATLAB computing environment.
The idea behind the tilt removal is that the tilt and planar curvature of an image
can be approximated using a regression model, such as the least squares method. With
the data fit to an approximate polynomial expression, that expression can be subtracted
from the raw data to normalize the tilt and curvature in the image. The two methods of
applying this idea are either to find best fit curves for each line of data, or to find a best
fit surface for the entire frame.
In the line by line technique, the best fit curve of each scan line in the frame is
calculated using a least squares calculation. These curves are of low order such that the
best fit curves do not fit too closely to the raw data, thus eliminating the tilt and planar
curvature of the sample plane but not the higher order topographical curves of the actual
sample. Each best fit curve is subtracted from its corresponding line in the frame.
In the surface fitting technique, a best fit surface of the frame is calculated using a
regression model [8]. Again, this surface is of low order such that the topographical
information in the data is preserved. That surface is then subtracted from the frame to
eliminate tilt and curvature.
Performing both operations, the tilt in an image can be sufficiently removed. One
option is to eliminate tilt line by line first, and then again using the surface fit. Almost all
of the tilt and curvature will be removed by the line fit, as it removes from tilt from every
line in a frame individually. The disadvantage to line fitting first is that information
about changes in sample height from line to line is lost when the best fit lines are
subtracted.
The other option is to remove tilt using the surface fit first, and then line by line
only if necessary.
This allows for the option of preserving as much information as
possible, while still eliminating most of the tilt and curvature. Because both methods are
valuable for different purposes, both were developed and applied to the AFM images.
3.3
Scaling Principle
With the tilt normalized, the next step is to set the scaling of the processed data.
The AFM data is a matrix of z-values in which the indices of the matrix correspond to the
coordinates of each pixel in an image. In order to display the data as a black and white
image, each z-value in the matrix must represent a specific shade on the grayscale
spectrum between black and white. In MATLAB, the value 0 appears in a grayscale
image as black, and the value 63 appears as white. However, since the z-values in an
AFM data matrix will not necessarily fall between 0 and 63, the z-values must be scaled
such that they are compatible with the MATLAB grayscale spectrum.
Furthermore, the same scale must be applied to all of the images in a sequence so
that if the AFM is zoomed in on a high portion of the sample in one frame, the viewer can
still interpret that frame as being at a higher range of z-values. Thus, the scale must be
set such that in the images, black corresponds to the minimum value and white
corresponds to the maximum value over all of the frames in the sequence.
The first step in setting the scale in this way is to determine the maximum and
minimum values over all of the frames. However, simply finding the absolute extrema of
the images would not produce the desired results since AFM data is susceptible to some
noise. This noise causes a few random outliers, or points in the image which contain data
several orders of magnitude higher or lower than the mean value of the images. Although
these points are few enough not to be detectable when viewing a correctly scaled image,
their existence does pose an additional challenge in finding appropriate extrema for
setting that scale.
To find a more appropriate scale for the sequence of frames, the outliers have to
be forced back toward the mean. This is accomplished by applying a low pass filter to
each frame of data, solely for the purpose of finding the maximum and minimum from
the resulting matrices. The low pass filter blurs each image by averaging out an area
surrounding a given pixel, and assigning the average value to that pixel.
With an
averaging area sufficiently large, the outliers are averaged with their surrounding data
points and are reassigned values much closer to the overall mean of the matrix, while the
surrounding points are only slightly affected by the outliers.
Each filtered frame is stored in a multidimensional array. Because the array
stores the filtered matrix of every successive frame in the sequence, the maximum and
minimum of the array also represent the extrema of the entire sequence. These extrema
are obtained and used to normalize the range of z-values in the matrices to that of the
grayscale spectrum in MATLAB. With the image data scaled to match the grayscale
spectrum, the original matrices (rather than the blurred ones used to obtain the extrema)
can be displayed as black and white images.
3.4
Experimental Verification
After both the tilt and scaling processes are developed individually, they are
combined to process a sequence of raw AFM data. The new function first corrects the
frames for tilt (either line by line then surface, or surface then line by line), then scales
the processed data and creates black and white images. These images are aligned into an
Audio Video Interleave (AVI) file so that the full scanning sequence can be replayed as a
movie.
To illustrate the combination of tilt removal and scaling, a raw image of silicon
grating with a 3pm pitch is processed. For this sequence of images, the line by line
method of tilt removal is applied first, then the surface fit method. Each method is
applied such that the tilt removed in all of the frames is the same. More precisely, the
best fit curve of each scan line in only the first frame is calculated. Then, each best fit
curve is subtracted from its corresponding line in all of the frames in the sequence, such
that every frame is normalized with the same set of curves. The new images (linecorrected images) are saved and processed with the surface fitting technique. A best fit
surface of only the first frame of line-corrected images is calculated. That surface is then
subtracted from every frame in the sequence. The resulting sequence of images are all
normalized with the same set of lines and the same surface. One frame of tilted data is
compared with the same frame after image processing, as shown in Figure 9.
I
a
10
15
a.
21
20
21
25
b.
Figure 9: AFM images of a 3pm pitch silicon grating, a) Scaled but still tilted image. b) Scaled and
tilt removed image.
For the purpose of comparison, Figure 9(a) is scaled first so that the tilt can be
observed, rather than observing a blank image due to lack of proper scaling. As shown in
Figure 9(a), the image shows a clear tilt in the sample before tilt processing. The upper
right corner of the image appears much lighter than the bottom left corner due to the tilt
of the sample plane. However, the processed data shown in Figure 9(b) was both
normalized to a flat plane and scaled such that the features of the sample were visible and
the image looks similar to a black and white photograph. Zooming in with the AFM on a
portion in the grating, the contrast in heights is shown clearly after scaling the image
properly, as shown in Figure 10.
500
:·~e~
100
100
20
25
20
200
250
.
250
a.
I
D.
Figure 10: Zoomed in portion of silicon grating. a) Scaled but still tilted image. b) Scaled and tilt
removed image.
In the tilted data, a scale is chosen that fits the wide range of z-values, which
includes the tilt. This means that the highest point in the image is at the height of the
grating at the top of the slant, while the lowest point is between the gratings at the bottom
of the slant, giving the scale a much larger range of z-values. Thus, when the AFM
zooms in, the difference between the height of one grating and its nearby vacancy is not
very apparent. However, when the image tilt is removed, the range of z-values to fit to
the grayscale becomes much smaller. This results in clearer contrast when zooming in on
one grating in the image.
Each of the frames in the processed sequences appears flat and clearly shows the
features of the grating. Thus, the movies also appear as if the grating had been filmed on
a flat surface with a black and white camera.
3.5
Summary
This chapter illustrated the need for tilt normalization and color scaling of raw
AFM image data. This chapter described the development of a MATLAB function which
corrects sequences of AFM images for tilt and scaling, as well as aligns those images into
an AVI movie. Finally, this chapter presented the experimental results of the program
with sample AFM data.
4. Application and System Integration
4.1
Introduction
To test the effectiveness of the image processing techniques described in Chapter
3, a dynamic sample was imaged with the AFM and post-processed.
This chapter
outlines the approach to imaging a block of calcite as it is being etched with hydrochloric
acid (HC1). Finally, the results of the experiment after image processing are presented.
4.2
Experimental Setup
A calcite sample is set up on the sample scanning high speed AFM. The calcite is
placed on the z-piezo of the scanner (Figure 11), and the AFM head is placed above the
sample, sitting on an x-y translation stage (Figure 12).
kinematic mount
x piezos
z piezo
y piezos
Figure 11: Piezoelectric material layout on the AFM scanner.
head translation
stage
scanner
Figure 12: Sample scanning AFM components.
Rough x-y positional adjustments are made using the screws on the sides of the
translation stage, which sits on the kinematic mounts on the scanner. With the sample on
the scanner and the head in place, the AFM was ready for imaging.
4.3
Imaging Crystal Etching in Calcite
4.3.1 Imaging Dry Calcite
Before imaging the calcite etching with HCl, the sample is imaged dry to ensure
that its nanoscale features are clearly visible, and to determine a good approximate
imaging speed and resolution. With slower speeds, higher resolution can be obtained.
However, if the scan speed is too slow, substantial etching will occur within single
frames, and the process can not be accurately imaged.
A small block of calcite is placed on the scanner, and various areas of the calcite
are imaged using a Nanoscope V controller and software. A 15pm-by-15rm area with
visible crystal layers as well as larger steps on the surface is chosen for imaging. These
nanoscale features can be seen in an image taken at 10Hz, shown in Figure 13.
Crystal layers
Larger steps-
50
100
150
200
250
300
350
400
450
500
Figure 13: AFM deflection image of 15pm-by-15pm area of dry calcite.
By finding an imaging speed which maintains the resolution to show these
features, the pits that form in the crystal surface as a result of etching (etch pits) expected
in the experiment should also be clearly visible. The chosen area is scanned several times
in contact mode, at line rates of 1Hz, 10Hz, 20Hz, 50Hz, and 100Hz.
images are shown in Figure 14.
The resulting
a°
a.
D.
L
U.
5
10
10
10
15
20
2
26
I
a.
C.
2
2
e.
Figure 14: AFM deflection images of dry calcite at line rates of (a) 1Hz. (b)10Hz. (c)20Hz. (d)50Hz.
(e) 100Hz.
The resolution at 1Hz gives very good resolution of the sample topography, but
takes several minutes to obtain a full image. A line rate of 10Hz also shows the sample
features clearly, and only takes approximately 25 seconds per frame. Already at 20Hz
the resolution decreases such that the crystal layers in the calcite are much less clear. The
scans at 50Hz and 100Hz are too blurred and noisy to obtain good images of the crystal
layers, despite being very fast. With this information, a scan speed in the range of 110Hz is chosen to obtain high resolution. The exact scan speed is determined during the
etching AFM imaging.
4.3.2 Imaging Calcite in Liquid
Before imaging the calcite in acid, the sample is imaged in water to verify that the
imaging parameters are still valid and that a good image can be obtained in liquid. Water
is added to the surface of the sample, and a 15pm-by-15gm area is scanned at 10Hz in
contact mode. The features of the sample are still clearly visible when imaged
in water,
as shown in Figure 15.
Figure 15: AFM deflection image of 15pm-by-15pm area of calcite in water.
As Figure 15 shows, the surface features are still visible in water, and it is
determined that the sample can be imaged in liquid at 10Hz while still maintaining good
resolution. This suggests that if the sample is imaged in acid, the etch pits on the surface
will be seen in the AFM image.
4.3.3 Imaging Calcite with HCI
After choosing the scan area and speed and verifying that the sample can be
imaged in liquid, 200ul of 0.06 Normal HCl solution is added to the top surface of the
sample and the etching process is imaged. As expected, when scanning in the range of 110Hz, the etch pits are clearly visible in the scan area. A scan rate of 10Hz is chosen so
that the etch pits can clearly be seen changing in time over several frames. The
progression of the etch pits is shown in Figure 16.
Figure 16: Progression of calcite etching, imaged at 10Hz line rate.
The progression shows clear etch pits in regions of the scan area. In the circled
regions of the images in Figure 16, the calcite topography changes throughout the
progression. The topmost layers of the surface show recession as time progresses due to
the crystal etching. However, large portions of the images showed rough surface features
at much higher z-values than the etch pits. Although the cause of these features is
currently unknown, one possible explanation is that they are crystal layer edges in which
the calcite is dissolving much more aggressively.
Regardless of their origin, these features affect scaling in the post-data acquisition
image processing. Because they are at much higher heights than the etch pits, setting the
maximum scale value by these features conceals the more subtle changes in height of the
etch pits.
This issue was resolved by increasing the size of the filter described in Section 3.3.
This blurred the scaling image much more, thereby drastically reducing the effects of the
high "outliers," which in this case were the high features rather than only noise. The
results of the image processing are shown in Figure 16, where the higher structures are
less clear, but the etch pits can be clearly seen changing over time.
4.4
Conclusion
This chapter outlined the implementation of image processing in a high speed
AFM experiment. Using a calcite sample being etched with HC1, the effects of different
imaging speeds were examined using the post-processing techniques outlined in Chapter
3. Furthermore, a lack of visible contours in the etch pits was addressed and resolved
using a larger blurring filter during image scaling. The final result was a sequence of
high resolution etch pit images with clear progression over time.
5. Conclusions and Recommendations
This thesis presented instrumentation and control methods for the AFM process
useful in minimizing image artifacts.
Furthermore, post-data acquisition image
processing techniques were developed to display a sequence of high speed AFM images
as a movie. These developments in high speed AFM technology were motivated by the
need for increased system stability and image quality at high speeds.
The feedback control system for the x-y trajectory of the scanner was designed
with a PI controller and implemented into the AFM.
The controller design was
influenced by the need for the scanner output to track its input signal as closely as
possible without also tracking noise in the signal. The closed loop scanner response was
compared to the open loop response, showing that the control system did greatly improve
the scanner's ability to track the scan signal, even at frequencies as high as 500Hz.
The other development in instrumentation was the implementation of low pass
filters for the scan signal.
Discontinuous steps in the scan signal due to the D/A
converter introduce high frequency noise to the scanner input. Thus, low pass filters
were used to attenuate these steps. The filters were designed with adjustable cut off
frequencies, which could be selected based on the scanning frequency of the AFM.
While the filters with lower cut off frequencies attenuated more high frequency noise,
rounding at the peaks of the scan signal was also more prevalent. However, a
comparison of the scan signal with and without filtering showed a clear attenuation of the
steps in the scan signal using all of the filters.
Next, the image processing techniques for tilt removal and scaling were described.
The line by line and surface fitting techniques were both implemented in the tilt removal
of AFM images. Scaling was set by filtering the entire sequence of image data and
setting the extrema of the sequence to a color bar in MATLAB. The individual frames
were then aligned and converted into movies. These image processing techniques were
tested and verified using AFM image data of a grating.
Finally, a high speed AFM experiment was performed, in which a calcite sample
being etched with HCI was imaged. At a line rate of 10Hz, the resolution was very good,
but extra post-processing was needed to maintain the clarity of the etch pits in the image.
For further advancement of high speed AFM, much development remains to be
done. For example, as the strain gages discussed in this thesis exhibited nonlinear
behavior, more advanced control systems must be implemented for better tracking of the
x- and y-scan signals. Mechanical components must be redesigned for higher resonant
frequencies, while the motions of the AFM components which excite high frequency
dynamics should also be reduced. Finally, image processing techniques which gradually
readjust scaling over time can be implemented so that when sample topography changes
over a sequence of images, the topographical features remain clear throughout the video.
As more of these systems are developed, AFMs can be operated at even higher speeds,
with even better image resolution.
6. Appendices
Appendix A
x-y Translation Stage
In the sample scanning AFM, the sample sits on the z-piezo stack and is translated
in the x-, y-, and z-directions to be scanned by the AFM probe. The AFM head, which
contains the cantilever, photodiodes, and optical equipment, sits on an x-y translation
stage above the sample. The stage is used to manually position the head roughly over the
area of interest in the sample.
Conventional translation stages are on the order of tens of millimeters thick (in
the z-direction). Since the z-piezo stack must be taller than the thickness of the stage in
order for the sample to reach the head, the z-piezo stack must be very tall compared to its
width. Unfortunately, this geometry gives the z-piezo stack a low resonance frequency,
which makes it susceptible to vibration in the x- and y-directions during high speed
scanning.
To enable the use of shorter z-piezo stacks, a new x-y translation stage was
designed. The new stage consists of an outer structure (Figure 17) which holds the inner
structure inside (Figure 18).
' screw hole
0.Pjmj1Su1V.%,
Figure 17: Outer structure of x-y translation stage.
Figure 18: Inner structure of x-y translation stage.
The head sits on the inner structure in Figure 18, which is translated in the x- and
y-directions using the screws set into the screw holes of the outer structure in Figure 17.
Springs connecting all four sides of the outer and inner structures help maintain the
orientation of the AFM head. Small rare earth magnets are glued into the magnet pockets
of the outer structure to maintain the stability of the inner structure as it slides over the
magnets. The bottom surface of the outer structure is only 2.5mm thick, while that of the
inner structure is 1.5mm thick. This design is expected to greatly reduce the requisite
height of the z-piezo stack, and is currently in the manufacturing process.
Appendix B
MATLAB Line by Line, then Surface Fitting Script
function [frameuntilti = lineplane(Z, directory)
%%% untilts AFM image data by taking the best fits of every line in the
%%%first frame (PID offi) and subtracting them from the lines in image
Z,
%%% then the best fit surface of the first frame and subtracting
it
%%% from image Z.
%%% Written by Kimberly E.SOOHOO
%%% May 2008
filename= sprintf(['IMAGES\\' directory '\\filel ');
framel = dlmread(file_name);
frame = abs(f ramel(:,1:256));
% % % ------------------------------------------------------
------------------
%%% Find best fit of PID offl line by line and subtract from original data
%%% of any frame Z
x line = [1:2561;
frame linel =zeros(256, 256);
frame line = zeros(256, 256);
for k= 1:256,
fit= polyfit(x_line,frame(k,:),3);
framelinel(k,:) = frame(k,:)-(fit(1)*x line + fit(2));
frame_line(k,:)= Z(k,:)-(fit(1)*x line +fit(2));
end
%
%
%
-----------------------------------------------------------------------%%%Use polyfitn.m to find a best fit surface for line-corrected frame
1.
%%% Arguments of polyfitn.m are:
%%% (1)matrix with column 1 = x values, column 2 = y values
%%% (2)column vector of dependent variable (z)
%%% (3)variables of best fit surface
A= [1:2561;
B = A';
x= repmat(B, 1, 256);
xcol = x(:);
y= repmat(A, 256, 1);
ycol =y(:);
xycol = cat(2, xcol, ycol);
frameT=frame';
zcol=frame_T(:);
% Use polVfitn to fit a surface to the line-corrected frame 1.
% The orders on the independent variables can be changed here (x^3, xv^4,
% etc.)
polymodel = polyfitn(xycol, zcol, 'x xA2 x*y V^2 v constant');
yval =x;
xval =y;
z sub = polymodel.Coefficients(1)*xval ...
+ polymodel.Coefficients(2)*xval.^2 ...
+ polymodel.Coefficients(3) *xval.*yval ...
+ polymodel.Coefficients(4)*yval.^2 ...
+ polymodel.Coefficients(5)*yval ...
+ polymodel.Coefficients(6);
frameuntilt= frameline-z sub;
Appendix C
MATLAB Surface, then Line by Line Fitting Script
function [frame_untilti = planeline(Z, directory)
file name = sprintf(['IMAGES\V directory '\\filel ']);
framel = dlmread(file_name);
frame = abs(f ramel (:,1:256));
%
%--------------------------------%%% Use polyfitn.m to find a best fit surface for frame 1.
%%% Arguments of polyfitn.m are:
%%% (1) matrix with column 1 = x values, column 2 = y values
%%% (2)column vector of dependent variable (z)
%%% (3)variables of best fit surface
A= [1:2561;
B = A';
x= repmat(B, 1, 256);
xcol = x(:);
y= repmat(A, 256, 1);
yCol = y(:);
xycol = cat(2, xcol, ycol);
frame T=frame';
zcol= frame_T(:);
% use polyfitn to fit a surface to the data from frame 1. The orders
% on the independent variables can be changed here (x^3, x*y^4, etc.)
polymodel = polyfitn(xycol, zcol, 'x x^2 x*V y^2 v constant');
yval = x;
xval =y;
z sub = polymodel.Coefficients(1)*xval ...
+ polymodel.Coefficients(2)*xval.^2 ...
+ polymodel.Coefficients(3)*xval.*yval ...
+polymodel.Coefficients(4)*yval.^2 ...
+ polymodel.Coefficients(5)*yval ...
+ polymodel.Coefficients(6);
plane newl frame-z sub;
plane_new= Z-z_su b;
% % % ------------------------------------------------------------------------
%%%Find best fit of PID offl line by line and subtract from plane
%%%corrected frame Z
x line =[1:2561;
frameuntilt= zeros(256, 256);
for k=1:256,
fit = polyfit(xline,plane_newl(k,:),3);
frame_untilt(k,:) = plane_new(k,:)-(fit(1)*xline +fit(2));
end
Appendix D
MATLAB Tilt Removal, Scaling, and Movie Code
function [1= process_LP(directory)
%Performs untilt (line by line, then plane) and scaling on all frames and
%aligns into movie (.avi)
close all
files = dir(['IMAGESV directory '\file *']);
A= size(files);
numFrames = A(1)-1;
w=5;
filt = ones(w,w)/(wA2);
%%% Read each file (filel, file2, ..., filenumFrames) in sequence.
%%%Perform untilting operation: line by line, then surface fit.
%%%Save each frame in multidimentional array D.
%%%Filter each frame (to later obtain accurate max, min) and save each
%%%filtered frame in multidimentional array E.
for(count = 1:numFrames)
file name = sprintf(['IMAGES\\' directory '\\file%d'],count);
framel =dlmread(file_name);
frame = abs(framel (:,1:256));
[frameuntiltl=lineplane(frame, directory); %This can be planeline
%rather than lineplane
%depending on method
%of choice
D(:,:,count) = frame_Untilt;
im_filt= conv2(frame_untilt, filt);
E(:,:,count)= im filt;
end
%%% Find approximate minimum and maximum over all the frames, using
blurred
%%%frames.
F= E(5:256,5:256,:);
F dim =size(F);
F_new_dim= F_dim(1)*F_dim(2)*F_dim(3);
F_vec= reshape(F, 1, F_new_dim);
max F= max(F vec);
minF = min(F_vec);
close all
figure(5)
%%%Read untilted images (without blurring) from matrix D. Use max and min
%%%values to normalize to the colormap (length 64). Make images and save
%%%each image as a movie frame.
for k = 1:numFrames
G = D(:,:, k);
new_image= 64*(G-minF)/(max F-min_F);
image(new_image);
colormap(gray)
M(k) = getframe;
end
rate = 4;
figure(6)
movie(M,1 ,rate)
movie2avi(M,'mov LP');
7. Acknowledgements
First, I would like to thank Professor Youcef-Toumi for taking me in on this
project and for offering his advice and encouragement over the course of the year. I
would also like to express deep gratitude toward Dan Burns and Dr. Georg Fantner, for
spending so much time and effort in teaching me not only about this project, but about
various facets of research which will be useful in any field. I could not have done this
without their teachings, patience, and generosity.
I would also like to thank my good buddies - Clara, Kev, Vic, Dan, Amy, Michi,
and Michelle - for keeping my spirits up and always making me laugh. Thank you also to
Ani, who helped me with various aspects of my research, and always brought a welcome
break to work.
And of course, to Yasu, who has stuck with me through everything this past year,
bringing me much happiness, encouragement, support, and laughs.
Finally, I would like to thank my parents, Steve and Louise, and my sisters, Ally
and Wendy, for all their love and support throughout the years.
8. References
1.
2.
3.
4.
5.
6.
7.
8.
9.
Binnig, G., C.F. Quate, and C. Gerber, Atomic Force Microscope, in Physical
Review Letters. 1986. p. 930-933.
Hansma, H.G., et al., Reproducible Imaging and Dissection of Plasmid DNA
under Liquid with the Atomic ForceMicroscope, in Science. 1992. p. 1180-1184.
Ando, T., et al., A high-speed atomic force microscope for studying biological
macromolecules,in Proc Natl Acad Sci USA. 2001. p. 12468-72.
Hansma, P.K., et al., Applied physics - High-speed atomic force microscopy, in
Science. 2006. p. 601-602.
Fantner, G.E., et al., Components for high speed atomic force microscopy, in
Ultramicroscopy.2006. p. 881-7.
Schitter, G., F. Allgower, and A. Stemmer, A new control strategyfor high-speed
atomicforce miciroscopy, in Nanotechnology. 2004. p. 108-114.
Fantner, G.E.et al., Data acquisition system for high speed atomic force
microscopy, in Review of Scientific Instruments. 2005.
D'Errico, J., polyfitn.m MATLAB code
http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectld=1 00
65
Image from PI website:
http://www.physikinstrumente.com/tutorial/4_20.html
Download