|
2004/10/17 (日) 交流インピーダンス法
・・・とは、電気化学測定技術の一つで、周波数の異なる様々な電流を電極に流し、そのときの電流に対する電位の位相のずれを測定するもので、それを複素平面にプロットしたものが複素インピーダンスプロットです。実は私はまだ実際の系でこの測定をやったことがなくて、講演や論文にもちょこちょこ登場するのですが、みるからに難しそうな図、あまり理解していませんでした。 考える前にやってみよう!ということで、昨日夜遅くまでがんばって、理論式をもとにExcelVBAを駆使して、複素インピーダンスプロットをシミュレートしてみました(暇人だよ)。 電荷移動抵抗成分、電気二重層のキャパシタンス成分、Warburgインピーダンス、溶液抵抗をくみあわせた等価回路をパラメーターとして入力し、それに加えて周波数(というか角速度ω)のプロット範囲を指定してやれば、あとはExcelマクロが数秒間ゴリゴリ計算してくれ、グラフができあがるのです。下にある図を出力する適切なパラメーターを探すのに結構苦労しました(笑)。
 ちなみにコード Sub read01() Dim Capa As Double, Rc As Double, Zwar As Double, _ Rsol As Double Dim OmegaMax As Double, OmegaMin As Double, OmegaStp As Double Dim Omega As Double
Capa = Cells(18, 2).Value Rc = Cells(19, 2).Value Zwar = Cells(20, 2).Value Rsol = Cells(21, 2).Value
OmegaMax = Cells(22, 2).Value OmegaMin = Cells(23, 2).Value OmegaStp = Cells(24, 2).Value
i = 0
For Omega = OmegaMin To OmegaMax Step OmegaStp
Calc01 Capa, Rc, Zwar, Rsol, Omega, i
i = i + 1 If i > 50000 Then Exit For End If
Next Omega
End Sub
Sub Calc01(Cd, Rct, Sigma, Rom, Om, k)
Dim Zre As Double, Zim As Double ここからが計算部分 Zre = Rom + (Rct + Sigma * Om ^ (-0.5)) / ((Cd * Sigma * Om ^ 0.5 + 1) ^ 2 _ + Om ^ 2 * Cd ^ 2 * (Rct + Sigma * Om ^ (-0.5)) ^ 2)
Zim = (Om * Cd * (Rct + Sigma * Om ^ (-0.5)) ^ 2 + Sigma * _ Om ^ (-0.5) * (Cd * Sigma * Om ^ 0.5 + 1)) / _ ((Cd * Sigma * Om ^ 0.5 + 1) ^ 2 + Om ^ 2 * Cd ^ 2 * _ (Rct + Sigma * Om ^ (-0.5)) ^ 2)
Cells(k + 31, 1) = Zre Cells(k + 31, 2) = Zim
End Sub Private Sub CommandButton1_Click()
Range("a31:b50050").ClearContents read01
End Sub
|