張加嶺,李善波,侯穎釗,趙 杰
(國網徐州供電公司,江蘇徐州221000)
近幾年來,我國對超聲技術的研究十分活躍,科學技術的快速發展,學科之間的相互滲透,超聲工程學在很多領域起著至關重要的作用,按其研究內容可以分為檢測超聲和功率超聲兩種。超聲波獲取信息,然后在通信上的應用,叫做檢測超聲,檢測超聲主要用于超聲波流量計、超聲波探傷、超聲波測厚儀、水下超聲定位與探測、超聲對濃度的檢測等方面。用超聲使物體或物性變化的功率應用,叫做功率超聲,功率超聲主要應用于焊接、清洗、治療等方面。
目前,超聲技術研究和應用已經從電力、冶金和機械等領域擴展到越來越多的領域,并取得了很好的社會效益和經濟效益,成為一種高新技術領域。隨著超聲技術的成熟,其應用越來越廣泛。在控制方式上,傳統的感應加熱電源控制采用模擬技術,存在由于元件易老化、工作點漂移和一致性差等原因引起的產品升級換代困難等缺點。隨著數字集成芯片、單片機、DSP、FPGA的出現,使感應加熱電源數字化成為一種趨勢,數字化的感應加熱電源控制靈活、系統升級方便,只要修改相應的控制算法,而不必對硬件電路進行很大的改動。隨著電力電子器件的發展,電路控制技術也在飛速發展。控制電路最初以相位控制為手段、由分立元件組成,發展到集成控制器,再到計算機控制,向著高頻率、低損耗和數字化的方向發展。超聲波發生器應用數字化控制技術一般有3種形式:MCU控制、DSP控制、FPGA控制。其中MCU控制中,STM32憑借低功耗、高性能、低成本在工業領域得到廣泛的應用。
本文主要介紹以STM32F103RB單片機為核心,輸出2路互補PWM波,帶死區時間控制,為超聲波電源的半橋逆變電路提供信號源,占空比頻率均可調,實現4k范圍的鋸齒波掃頻,掃頻精度達到10Hz,掃頻速度達到100us,并給出掃頻程序流程圖。
超聲波發生器能夠提供一定頻率及一定功率的超聲頻電能,要將此電能高效率的傳輸給換能器,必須在超聲波發生器與換能器之間設置匹配電路,且功率超聲波設備能否高效而安全的工作,很大程度取決于匹配電路的設計。匹配電路主要有靜態匹配和動態匹配2種,動態匹配一般采用頻率跟蹤與功率跟蹤技術;靜態匹配是在超聲波頻電發生器輸出頻率與換能器靜態諧振頻率相同的條件下,電端輸出阻抗與換能器靜態輸入阻抗匹配,它應用于換能器輸出頻率固定的場合。
壓電器件在遠離某一諧振頻率的其他頻率上沒有另外的諧振發生,則在這個諧振頻率附近可以把壓電器件近似看成一個集總系統。其高頻梅森等效電路圖如圖1所示,圖1中的動態電阻R1(即換能器串聯支路的電阻)的計算公式為:

圖1 非諧振點圖

式中GMAX為換能器諧振時的導納值的實部。
動態電感L1(即換能器串聯支路的電感)計算公式為:

式中R1為動態電阻;f2f1為半功率點。
動態電容C1(即換能器串聯支路的電容)計算公式為:

靜態電容C0計算公式為:

式中CT為換能器在1kHz頻率下的電容值。

式中fS為振頻率(換能器等效電路中串聯支路的諧振頻率,稱為串聯諧振頻率),當匹配一致時,在這個頻率下換能器的阻抗最小。

由式(2)-式(6)化簡得出:

由上述推導可見換能器發生串聯諧振時,總電路阻抗不是純組態,在電路中加入匹配電感使電路呈純組態,此時的等效電路圖如圖2所示:
電路總阻抗Z的計算公式:

圖2 串聯諧振點圖

由式(1)-式(8)結合諧振定義可推導出匹配電感L0計算公式為:

為了產生高精度的超聲波掃頻信號源,需要建立相應的系統調試電路對程序進行調試分析,其中STM32外圍電路如圖3所示,包括串口電路、按鍵電路、復位電路、JTAG下載電路等。PC機上用Keil的MDK軟件進行C語言的編寫,通過串口電路下載到STM32F103RB單片機,從GPIO口連接到示波器進行顯示,JATG下載電路進行硬件調試,按鍵電路可對占空比進行控制,并可作為頻率變化精度測量電路。

圖3 系統調試結構圖
STM32系列基于專為要求高性能、低成本、低功耗的嵌入式應用專門設計的ARM Cortex-M3內核。按性能分成兩個不同的系列,STM32F103“增強型”系列和STM32F101“基本型”系列。增強型系列時鐘頻率達到72MHz,是同類產品中性能最高的產品;基本型時鐘頻率為36MHz,以16位產品的價格得到比16位產品大幅提升的性能,是16位產品用戶的最佳選擇。兩個系列都內置32K到128K的閃存,不同的是SRAM有最大容量和外設接口的組合。時鐘頻率72MHz時,從閃存執行代碼,STM32功耗36mA,是32位市場上功耗最低的產品,相當于 0.5mA/MHz。1μs的雙 12 位 ADC,4兆位/秒的 UART,18 兆位/秒的 SPI,18MHz 的 I/O翻轉速度,具有11個定時計數器,其中2個高級定時器、4個普通定時器、個基本定時器。
STM32的高級定時器具有互補輸出功能,通過TIM1_CCMR1寄存器設置為PWM輸出模式,調節輸出PWM的高電平時間來控制占空比,通過外部按鍵電路改變TIM1_CCR1寄存器的值來改變高電平的計數值,從而改變占空比,占空比調節范圍0%-100%連續可調。占空比D計算公式如下:

從公式(11)中可以看出,占空比不僅和TIM1_CR1的值有關,還和預分頻器TIM1_Period的值有關。可通過改變寄存器TIM1_CCR1和TIM1_Period的值,這兩種途徑來改變占空比。
TIM1定時計數器的時鐘頻率為72MHz,使能自動重載寄存器TIM1_ARR,通過改變TIM1_ARR的值來改變預分頻器TIM1_Period的值,輸出PWM波的頻率f為:

從公式(11)和公式(12)可以看出,當調節頻率時,占空比會隨之改變,為了在調頻的同時保證占空比恒定,在改變TIM1_Period預分頻器值的時,必須同時改變TIM1_CCR1寄存器的值,為此推導出預分頻器TIM1_Period和寄存器TIM1_CCR1兩者值之間的數值關系如下:

其中Y代表TIM1_CCR1的變化量,X表示TIM1_Period的變化量,由于寄存器TIM1_CCR1的值恒小于預分頻器TIM1_Period的值,即式(13)中在X變化不大的情況下,Y恒為0,即使X變化很大,公式(13)得到的值也是極其不準確的,所以不可取。通過實驗論證,提出如下解決方案:
設初始占空比為50%,按鍵按下一次,占空比改變i,預分頻器的值每次改變1個單位,則TIM1_CCR1(用 T表示)的值如公式(14)所示:

式中左邊T是頻率改變前TIM1_CCR1的值。
為了清晰地觀察到調頻的同時,正頻寬也隨之變化,將頻率變化步長設置為 18.8Hz。如圖4和圖5所示,頻率由25.9916kHz 經過6次掃頻到26.0104kHz 時,正頻寬由19.31uS 變化到 19.21uS。

圖4 初始掃頻的頻率、正頻寬

圖5 掃頻6次后的頻率、正頻寬
嵌入死區時間是為了防止在驅動半橋逆變或者全橋逆變電路過程中出現同一橋臂上2管同時導通,造成短路現象損壞器件。STM32的高級寄存器具有死區時間嵌入功能,通過高級定時器的死區寄存器TIM1_BDTR嵌入死區時間,死區時間的設置與上升時間和下降時間有關,通過示波器檢測上升時間和下降時間在 20ns到108ns之間變化,所以設置死區時間為110ns,由于在高頻情況下,死區時間設置過大,會導致占空比損失嚴重,所以需要根據具體情況設置死區時間。圖6所示為帶死區時間的互補PWM輸出波形。

圖6 帶死區的互補PWM
掃頻有3種方式:正弦波掃頻、三角波掃頻和鋸齒波掃頻,由于掃頻精度達到10Hz,掃頻速度達到100uS,即采用鋸齒波掃頻或三角波掃頻。掃頻分為自動掃頻和手動掃頻,用手動按鍵掃頻的方式檢測每次掃頻頻率的變化量,即掃頻精度。自動掃頻通過通用定時器TIM3中斷的方式來實現,即掃頻的速度由定時器中斷時間決定,中斷時間可由公式(1-5)得:

其中Tclk為TIM3的輸入時鐘頻率(單位為kHz), 此 時 設 置 為72000kHz;
arr為定時計數器TIM3的自動重裝值;
psc為定時計數器TIM3的預分頻器的值。

圖7 開機掃頻流程圖
經試驗證明換能器串聯諧振頻率在正常的條件下波動不會超過3kHz范圍,為了節約開機掃頻時間,目前設置掃頻范圍為4kHz。掃頻程序流程圖如圖7所示。