电化学工作站求峰高实现设计
? 最近在整理去年暑假參與實現的電化學工作站項目,分享一下電化學系統中自己求峰高的設計思路。學計算機的我一開始看到電化學工作站原理真的是很懵逼,然后也去查了很多資料,還去B站看了電化學測試技術公開課,真的很感謝電化學實驗的學長學姐的細心講解原理和提需求。
視頻:
電化學測試技術
這個視頻老師講的很好
以下是峰高算法設計思路
求峰高實現思路設計
1尋峰
1.1簡單尋峰
針對循環伏安法測得的伏安特性曲線,以其零線為基線,以電流最大值位置為峰位置,確定峰值電流的方法為簡單尋峰。由于實際實驗中,基線與零線一致性很差,這種方法得到的峰高誤差較大。
1.2二階導數尋峰
導數法的基本思想是把實驗所得的數據進行平滑后將其視為是一條連續的曲線。而后通過對各個數據線上的點進行求導,然后依據導數的性質確定峰值。在峰值處,一階導數值為零,且峰值之后的數據的導數的值由正變負。一階導數法對孤立的小峰靈敏度高,但是不能分辨重峰。在峰值處,二階導數出現極小值,二階導數尋峰有較好的靈敏度,且對重峰有一定的分辨能力,因此通常利用二階導數進行尋峰。在峰值處,三階導數為零,且峰值之后的數據的導數的值由負變正。三階導數與一階導數方式相似,但是計算復雜程度更高而且更為消耗時間,通常只起到輔助判斷的作用。函數及其對應的各階導數如圖 1.1 所示。
圖1.1 函數及對應的各階導數
2.基線的確定
在確定峰值電流的過程中,基線的確定是否準確,關系到最終峰值電流的精確程度。典型循環伏安特性曲線中,正向掃描時電流的峰值(氧化峰)ip是以零線為基準求算出來的,而進行反向掃描時的表示還原峰的峰電流的求算方法則是以前一個峰的衰減線為基線,以取切線的方式得到對應的基準線。理論上正向掃描時,默認是以零線為其基準線,然而在實際的實驗中得到的數據如圖 2.1(a) 所示,在氧化峰出現前的一部分并非與零線保持一致。
圖2.1(a)
圖2.1(b) 1
如圖 2.1(a)所示,數據起始段并不是完全與圖 2.1(b)典型曲線一樣從零處開始的,而是先快速上升而后才進入平緩的階段。因此采用以零線為基準求算出來的峰值電流是有偏差的,因此該段對應的基線應該以其他的方式得到。
圖2.2反向掃描時峰電流的確定
如圖 2.3 所示,理論上反向掃描時峰電流的確定方法是以前一個峰的的衰減延長線以反向電勢為基準對折來作為當前反向掃描時的基線。如果反向電壓足夠使電流趨于平緩,就可以使得反向掃描時的數據計算更為方便。
由于不能使用零線作為基準線,所以常用的方式是取峰值之前經過極速上升后進入平緩段的數據得到切線,確定為該峰對應的基線。同理,在反向峰的確定過程中,無法精確確定前一個峰的衰減線,因此也需要通過取切線的方式獲得該峰的基線。所以在進行尋峰的過程中,如何準確的利用實驗數據確定峰對應的基線,是尋峰最為關鍵的部分。
3.方案:基于擬合的尋峰算法
在數據擬合方面目前應用廣泛且效果較好的 LM 算法,也是比較成熟的,而且其特點使之在應用該方法進行并非特別復雜的數據擬合時的效果是非常好的。
3.1 算法整體流程
基于擬合的尋峰算法的整體流程為:確定擬合所用函數方程、確定擬合方程參數、對數據進行擬合、根據擬合結果確定基線、根據基線計算峰高,流程圖如圖 3.1 所示。
3. 2 確定擬合函數方程
為了從循環伏安法得到的離散的非線性的數據中確定基線,采用最小二乘擬合的方法擬合具體的實驗數據,給出與數據最小二乘意義上的函數方程。在得到數據的近似函數方程后,通過數學方法來得到基線,進而確定峰高。
因此應用擬合技術進行尋峰的過程中,給出合理的函數方程以及擬合參數是擬合成功的關鍵。進而再得到吻合的函數方程之后,依據其部分數學性質得到基線以及峰位置,最終確定峰高,完成整個尋峰過程。
擬合函數的確定是擬合成功與否的關鍵所在,一個符合數據特征與規律的擬合函數能夠更加快速準確的擬合出方程參數。因此合理的擬合函數的設定,會起到事半功倍的效果。在對循環伏安特性曲線的擬合過程中,采用三次函數與高斯函數結合的復合函數來作為擬合函數。高斯函數及三次函數相關內容及其部分性質如下。
(1)高斯函數的函數方程如公式 3-1 所示。
其中 a、b 與c 為實數常數,且 a > 0,e 為自然數底數。
(2)高斯函數的部分性質:
①高斯函數在峰出現的其他位置函數值接近為零;
②高斯函數在峰之前保持單調遞增性;
(3)典型的高斯函數圖像如圖 3.3 所示。
圖3.3典型的高斯函數圖像
三次函數及其部分性質:
(1)三次函數的函數方程如公式 3-2 所示。
其中a、b、c與d 為實數常數, 且a≠0。
(2)三次函數的部分性質:
①三次函數在與 X 軸只有一個交點的情況下在對稱點的附近是接近線性的;
②在遠離對稱點的位置,曲線的上升(下降)速率很快;
③在與 X 軸只有一個交點的情況下函數單調性確定
(3)典型的三次函數的圖象如圖 3.4 所示。
圖3.4 典型的三次函數圖像
3.3 根據函數方程確定基線
根據直線的點斜式方程,在已知直線上一點和直線斜率的情況下,就可求得直線方程。在具體選定切點和確定切線斜率的問題上,有兩種解決方法。
第一種,使用上文提到的求函數導數的方式,因為長平直部分的一階導數基本上與基線的斜率是一致的。這一點是因為三次函數的特性以及其導函數特性決定的。擬合函數一階導數在此處出現連續的變化極小的值且其數值在不斷增大,而其二階導函數在此處的值對應出現極小值。切點就可以通過這種方式確定到長平直范圍內的一點。
第二種,實際實驗數據中,長平直數據段的表現非常平穩,而且其前面的類似三次函數的極速上升階段很短,數據量很少,擬合過程中為了避免過擬合的出現,可以直接使用線性函數與高斯函數的復合函數來擬合數據,而且理論上線性函數與高斯函數復合函數是三次函數與高斯函數的復合函數的子集。同時線性函數部分正好對應基線的數據特征,這樣就可以直接根據其一次項的系數直接確定斜率
k。這樣可以通過找線性部分與實驗數據交點或者首先出現的差值極小點作為切點。
下面以典型的三次函數與高斯函數的復合函數擬合為例介紹具體的基線方程求算步驟:
(1)取數據平緩范圍內一點為切點 ( x,y)
(2)取三次函數的一階導函數的函數值為切線斜率 k,k 的計算方法如公式 3-4 所示。
(3)根據點斜式得到直線方程即為峰對應基線的方程。
基線方程計算方法如公式 3-5 所示。
3.4 根據基線確定峰高
電化學循環伏安法的實際反應中,峰出現的位置代表著電池內氧化還原反應的反應速率,峰的出現是由于在逐漸變大的電勢的作用下,電極過程受到界面電荷轉移的控制,而電勢的繼續變化,電極表面反應物濃度下降,故而形成電流峰。因此電流峰的出現范圍是有一段接近穩態的數據段的。
實際實驗數據中,在峰頂位置較寬,在峰頂范圍內會出現許多連續的差別很小的數據點,在確定峰位置時,因為擬合數據段采用的是峰所在數據段最大值點數據及其前面所有部分,峰位置對應函數的最大值點。根據前面得到的基線方程,以及峰位置的 X 坐標,通過計算得到峰高。
具體求峰高的方法如下:
(1)根據擬合方程確定峰頂位置得到峰值坐標 (x,y )。
(2)將峰值坐標中的橫坐標帶入基線方程得到y’ ,計算方法如 3-6 所示。
(3)根據峰值坐標中的縱坐標已經步驟 2 中得到的y ',計算峰高 H,計算方法如公式 3-7 所示.
在峰高 H 計算完成后,通過峰高的值,可以很容易的找到半峰電以及峰左界的位置,整個尋峰過程完成,得到了對應實驗數據的高斯峰相關數據。
參考文獻:
[1]劉偉碩. 基于擬合的電化學尋峰算法的研究與實現[D].東北師范大學,2017.[康1]
[2]代燕. 基于電化學參數分析的便攜式恒電位儀系統設計及應用[D].杭州電子科技大學,2020.
[3]電化學分析ppt.豆丁網.第六章極譜定量方法118頁極譜定量依據
[4]電化學表征方法.百度文庫. 基本原理
[5]賈錚. 電化學測量方法[M].北京:,化學工業出版社, 2006.、、
=rrela)
[4]電化學表征方法.百度文庫. 基本原理
[5]賈錚. 電化學測量方法[M].北京:,化學工業出版社, 2006.、、
總結
以上是生活随笔為你收集整理的电化学工作站求峰高实现设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于咖啡秤方案单片机芯片的功能设计
- 下一篇: TGA格式图片文件分析