Functional Description
Main_chronoamp_page.vi is the main program. It calls sub-vi's which:
(1) Collect chronoamperometry data using analog I/O and a potentiostat
(2) Displays the chronoamperometry data
(3) Extracts the electrode area from chronoamperometry data using the Cottrell Eq'n
(but you need to know the diffusion coefficient)
(4) Extracts the Diffusion Coefficent from chronoamperometry data using the Cottrell Eq'n
(but you need to have previously measured the electrode area)
Caveats and Additional Notes
************************************************************************************
An update has been uploaded. This update has been in use
in my lab for several weeks now and includes several corrections.
(1) The data processing vi's stay open so you can use them.
(2) An issue with saving the time.current data was corrected.
(3) The programs have been tested in Labview 8.0, so the Labview 8.0 versions are in the update. They should work fine in higher versions with some minor vi renaming substitutions.
Description of sub-vi's
The "chronoamp_engine.vi" is the main data collection program. It is developed for an
Princeton Applied Research potentiostat, but the GPIB connection is used only to set the
resting potential and turn the cell on and off. With an analogue potentiostat, these
functions could be done manually, as long as the rest potential is entered into the
appropriate location in the program. This vi uses an analogue output attached to the
external input of the potentiostat to control the electrode potential. It also uses a
pair of analogue inputs attached to the E-output and I-outputs of the potentiostat to
collect data.
The data collection rate of 500 hz should be more than sufficient for chronoamperometry.
The current range setting is the sensitivity of the potentiostat, and it is used to
translate the voltage output of I-output into current (A). The program saves a
spreadsheet file columns of time, potential and current.
Screen shot:
"Chronoamp_engine.vi" is set up so it can do double potential-step chronoamperometry, but
no analysis vi's have been developed for double potential step methods as of this time.
The E-settings are self-explanatory. The tau settings need to add up to the total time. The pulse waveform is assembled
by "pulse waveform generator.vi" which has the following screenshot:
The "display chronoamp data.vi" displays the chronoamperometry potential and current data
on a single display. The user has a chance to specify which file to display before the
program runs, and then can look at the file for a while before choosing to end the
sub-vi. The Y-axis on the current data can be expanded so that it can be displayed on
the same axis set as the potential.
Screen shot of a very dilute solution (1.1E-4 M)
The "chronoamp_area.vi" uses the Cottrell Equation to calculate the area of the electrode
from a known concentration of a standard electroactive material, the number of electrons
transfered, and the diffusion coefficent. And a file generated by the chronoamp engine.
You should standardize the electrode area before trying to do other chronoamp
experiments. The display shows a plot of current vs. the reciprocal of the square root of time (A standard Cottrell plot).
The user defines the linear region (high value and low value, red line) to use to calculate the linear regression,
whose slope will give the area
The "chronoamp_diffusion.vi" uses the Cottrell Equation to calculate the diffusion
coefficient of the electroactive compound under study from a known concentration, the
number of electrons transfered, and the electrode area. And a file generated by the
chronoamp engine. This vi is almost identical to the one that calculates area.
The "regression.vi" is a program developed for another application which has been
co-opted for this program. Some versions of Labview lack a regression function, so
having the vi defined from scratch will increase how robust the set of vi's are. The
regression vi is designed to do regressions of multiple sets of y-axis data against one
set of x-axis data, and it returns the slopes, the intercepts, and the regression
statistics for each Y-axis set.
*************************************************************************************
The Theory of Chronoamperometry is extensively discussed in Chapter 5 of Bard and
Faulkner, Electrochemical Methods: Fundamentals and Applications, 2nd Ed, Wiley, New
York: 2001.
*************************************************************************************
To get electrode areas, standardize with:
Diffusion coefficient of [Fe(CN)6]3- in 0.1 M KCl at 25°C is 0.76E-5 cm2/sec
Diffusion coefficient of [Fe(CN)6]4- in 0.1 M KCl at 25°C is 0.65E-5 cm2/sec
(According to Bard+ Faulkner ref above)
OR, for nonaqueous solvents:
Nikos G. Tsierkezos J. Solution Chem (2007) 36:289–302 says that ferrocene's diffusion coefficent is:
Acetonitrile at 273K: 1.74E-5 cm2/sec
CH2Cl2 at 273K: 1.12E-5 cm2/sec
Ref also gives other temperatures and a bunch of other solvents.
**************************************************************************************
A simulation program:
ESP 2.4 by carlo Nervi will simulate chronoamperometry data.
http://lem.ch.unito.it/chemistry/esp_manual.html
The data generated by the chronoamp engine is not in the right format to be directly
imported into ESP, but a translation program should not be too hard to write.
*************************************************************************************
More chronoamp tips are in the blog.
*************************************************************************************
Update Dec 2011:
A Labview 2010 version of this program implemented on a NI-USB-6251-BNC interfaced to a Bioanalytical Systems, Inc CV-27 (analogue potentiostat) has been uploaded. This version also has the bug fix where the original program calculated too many points to sample dor the duration of the experiment. This program was developed in my collaborator's lab since I don't have Labview 2010 (yet).
Previous and current (CHE 0911537) support by NSF is gratefully acknowledged for this work.
Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.
Thanks for posting! Do you mind including a screen shot or two to give us a better idea of what your code looks like?
Will do! Thanks!