,,,,
(青島大學 電子信息學院,青島 266071)
電針療法是將針灸與脈沖電刺激結合而形成的一種穴位刺激療法。電針電刺激生理效應具有持久的刺激作用,同時其參數(shù)可以根據(jù)不同的病人進行調(diào)整,提高了針灸的治療效果。目前失眠癥電針治療儀器多數(shù)采用單片機或者ARM架構的微控制器為控制核心[1-4],例如皮向君設計的基于C8051單片機的電針儀,具有多種雙向恒流脈沖輸出,可以消除因電刺激產(chǎn)生的組織極化現(xiàn)象,能夠自動檢測電極阻抗,保證安全[5];雍明超設計的基于Linux和ARM9的電針治療儀,能夠產(chǎn)生多種脈沖波形,加強了人機交互的功能[6]。
多數(shù)治療儀在電針波形的設計上采用單一的單極性或者雙極性,調(diào)制信號的波形比較少。這是因為單片機在電針波形的產(chǎn)生上是通過軟件程序的中斷和計數(shù)來實現(xiàn)的。本文的電針治療失眠系統(tǒng)是在FPGA上設計實現(xiàn)的。FPGA的工作機制是通過設計芯片內(nèi)部的硬件電路實現(xiàn)相應功能,所以不需要過于復雜的外圍電路,只需對FPGA芯片進行編程即可。本設計在FPGA芯片的內(nèi)部采用直接數(shù)字頻率合成DDS(Direct Digital Frequency Synthesis)技術[7-9],實現(xiàn)任意形式的電子治療波形,如單極性、雙極性、調(diào)制信號等波形,可以更好地適應不同的失眠人群,同時波形的頻率能保證相位連續(xù)性地快速切換。系統(tǒng)將產(chǎn)生電針治療信號的硬件電路模塊集成在一塊可編程FPGA芯片上,提高了系統(tǒng)的集成度和可靠性。由于FPGA具有在系統(tǒng)可編程特性,可根據(jù)不同的應用場合調(diào)整輸出不同波形及頻率信號,具有很強的可擴展性。
現(xiàn)代醫(yī)學通過對睡眠腦電波的分析,得出睡眠腦電波是由4個頻段的信號構成:δ波頻率為0~4 Hz,只有在正常成人深睡時才能檢測到;θ波頻率為4~8 Hz,成人困倦時可檢測到;α波頻率為8~13 Hz,在清醒且閉眼的情況下出現(xiàn);β波頻率為13~30 Hz,安靜閉目時出現(xiàn)。δ波和θ波統(tǒng)稱為慢波,在正常人清醒狀態(tài)下一般檢測不到,β波的出現(xiàn)一般表明大腦皮層處于興奮狀態(tài)[10]。醫(yī)學治療表明,用相應頻段的不同波形的信號去刺激失眠人群,能夠誘導其進入睡眠狀態(tài)。本文在FPGA芯片上實現(xiàn)了用于治療失眠的對應δ波和θ波的多種波形不同頻率的電針信號,其多項參數(shù)可通過現(xiàn)場編程調(diào)整,具有靈活的擴展特性。多模多頻脈沖電針信號實現(xiàn)原理如圖1所示。系統(tǒng)主要由時鐘信號模塊、多模DDS信號發(fā)生器、同步模塊、脈沖寬度發(fā)生器、脈沖個數(shù)控制器、單極性脈沖信號形成器、雙極性脈沖信號形成器、單極性調(diào)制脈沖信號形成器、雙極性調(diào)制脈沖信號形成器、正弦波調(diào)制信號發(fā)生器、模式選擇模塊構成。

圖1 多模多頻脈沖電針信號實現(xiàn)框圖
由晶振電路振蕩產(chǎn)生50 MHz的信號送給各模塊,作為系統(tǒng)的工作時鐘。多模DDS信號發(fā)生器是系統(tǒng)的中心,產(chǎn)生不同波形的基本電針信號。在多模DDS內(nèi)部設置合適的頻率字使其輸出頻率為10 Hz的不同波形的信號。同步模塊、脈沖寬度發(fā)生器、脈沖個數(shù)控制器實現(xiàn)對多模DDS信號發(fā)生器的輸出波形的個數(shù)控制,得到1~8 Hz的不同波形的信號,信號的頻率與δ波和θ波的頻率一致。單極性、雙極性脈沖形成器分別產(chǎn)生單極、雙極性脈沖的電針信號。正弦波信號發(fā)生器作為調(diào)制信號分別送到單極性調(diào)制脈沖信號形成器和雙極性調(diào)制脈沖信號形成器,對單極性脈沖和雙極性脈沖的電針信號進行調(diào)制,實現(xiàn)調(diào)制的單、雙極性脈沖電針信號。單、雙極性脈沖的電針信號以及調(diào)制的單、雙極性脈沖電針信號等4路信號送到模式選擇模塊,控制輸出電針信號的類型。最后經(jīng)過D/A轉換器,將數(shù)據(jù)轉換成模擬信號。
多模DDS信號發(fā)生器是本系統(tǒng)的核心,產(chǎn)生不同波形的基本電針信號。DDS技術是一種新型的頻率合成技術。該技術具有較高的頻率分辨率,既能快速實現(xiàn)頻率切換,又能在頻率改變時保證相位的連續(xù)。
DDS由相位累加器和存儲器ROM組成。相位累加器由一個加法器和一個相位寄存器組成,每來一個時鐘,相位寄存器以步長增加,然后輸入到波形查詢表ROM地址上。波形查詢表ROM包含一個周期任意波形的數(shù)字幅度信息,每個地址對應任意波形中0~360°范圍的一個相位點。查詢表把輸入的地址相位信息映射成任意波形幅度的數(shù)字量信號,驅動DAC輸出模擬量,系統(tǒng)輸出ROM數(shù)據(jù)對應的波形。輸出頻率為[11-14]:
(1)
其中fc為DDS的工作時鐘,N為相位累加字位寬;M為頻率控制字,其數(shù)字范圍為0≤M≤2N-1。
在實際運用中,為了保證信號的輸出質(zhì)量,輸出頻率不要高于時鐘頻率的33%,以避免混疊或諧波進入有用輸出頻帶內(nèi)。
在本系統(tǒng)中,為了對相位的增量進行數(shù)字量化,把2π切割成2N份,取N=32,則2π被等分為2N份,這就確定了每個clk周期的相位增量的量化值。系統(tǒng)中fc=fclk=50 MHz,一個周期的相位被量化為232份,根據(jù)式(1)計算出合適的頻率字M,輸出所需要的10 Hz頻率。
本系統(tǒng)實現(xiàn)的多模DDS信號發(fā)生器,除了包含普通DDS系統(tǒng)的累加器、相位寄存器外,還增加了4個ROM、數(shù)據(jù)分配器、數(shù)據(jù)選擇器、DAC模塊等。4種波形數(shù)據(jù)存儲在4個ROM中,對不同ROM的選擇需要通過數(shù)據(jù)分配器來完成,數(shù)據(jù)分配器的輸出端分別連接到不同的ROM上,分別輸出正弦波、三角波、鋸齒波和方波的電針信號。應用硬件描述語言在FPGA上分別對各模塊進行設計,實現(xiàn)了多模DDS信號發(fā)生器的芯片電路。
從圖1可見,產(chǎn)生治療失眠的變頻多模電針信號的核心是多模DDS信號發(fā)生器,對其輸出波形進行變形和控制就能得到治療失眠的電針脈沖信號。治療失眠的變頻多模電針信號實現(xiàn)電路如圖2所示。晶振電路產(chǎn)生的的50 MHz的時鐘信號送到PL鎖相環(huán),產(chǎn)生系統(tǒng)工作所需要的時鐘信號。

圖2 變頻多模電針信號電路圖
同步模塊、脈沖寬度發(fā)生器、脈沖個數(shù)控制器實現(xiàn)對多模DDS信號發(fā)生器輸出波形的個數(shù)及頻率的控制。圖2中BXFS模塊是多模DDS信號發(fā)生器,輸出端b[7..0]輸出頻率為10 Hz的8位數(shù)據(jù)信號,將 b[7]送到同步模塊wtb的輸入端作為同步的控制信號,實現(xiàn)DDS模塊和脈沖寬度發(fā)生器pwm_tz模塊的同步輸出。通過脈沖寬度控制模塊a[2..0]控制pwm_tz模塊輸出脈沖信號的寬度,脈沖的滿寬度控制在0.1~0.8 s范圍內(nèi)。將脈寬發(fā)生器pwm_tz的輸出信號與DDS模塊的輸出信號進行邏輯“與”運算,就可以得到在1 s內(nèi)輸出電針脈沖信號的個數(shù)。即通過控制a[2..0]輸入000- -111使輸出端bipolar[7..0]在1 s內(nèi)輸出1到8個脈沖,得到1~8 Hz頻率的脈沖信號,與δ波和θ波頻率一致。
脈沖寬度發(fā)生器的仿真波形如圖3所示,脈寬隨著a[2..0]的數(shù)據(jù)在變化,當a[2..0]為000時,脈寬最小,維持時間為0.1 s,在與DDS模塊的輸出信號進行邏輯與運算之后,輸出端bipolar[7..0]對應輸出1 Hz信號;當a[2..0]為111時,脈寬最大,維持時間為0.8 s,在與DDS模塊的輸出信號進行邏輯與運算之后,輸出端bipolar[7..0]對應輸出8 Hz信號。圖4是在脈寬發(fā)生器pwm_tz模塊控制下輸出4個脈沖波形的情形。

圖3 脈沖寬度發(fā)生器仿真波形

圖4 PWM調(diào)制仿真波形
單極性波形生成模塊由圖2中的demux4、SBXTZ、mux4_1組成。數(shù)據(jù)分配器模塊demux4將不同的波形數(shù)據(jù)送到SBXTZ模塊中,對雙極性脈沖信號進行半波整流,成為4組單極性脈沖波形,送到mux4_1對4組進行選擇輸出,得到單極性脈沖波形。
圖2中的dstz是雙極性波形生成模塊,其功能是對輸入信號進行適當?shù)恼{(diào)理,輸出需要的雙極性波形。
正弦波調(diào)制信號的產(chǎn)生是由圖2中的TZBFS模塊實現(xiàn)的,因多模DDS發(fā)生器輸出10 Hz頻率信號,脈寬發(fā)生器PWM的滿寬度是1 s,故設計的調(diào)制信號的輸出頻率為0.5 Hz,實現(xiàn)在1 s時間內(nèi)對輸出波形的調(diào)制。
TZBFS模塊產(chǎn)生的正弦波調(diào)制信號經(jīng)整形后可以得到兩種不同的調(diào)制信號:一種是直接對TZBFS模塊輸出的雙極性正弦波信號全波整流,成為全波整流的脈沖信號,其實現(xiàn)對單極性脈沖信號的調(diào)制;另外一種是直接對雙極性的正弦波信號增加直流偏移量,使其變?yōu)閱螛O性正弦波信號,最后完成對雙極性脈沖信號的調(diào)制。
單極性調(diào)制波的產(chǎn)生是由圖2中的SBTZ模塊實現(xiàn)的,對單極性脈沖進行調(diào)制的信號是TZBFS模塊輸出的信號整流后的脈沖信號,這里的單極性調(diào)制分為滿調(diào)制和非滿調(diào)制兩種。滿調(diào)制將BXFS模塊的輸出信號b[7..0]送到SBTZ模塊進行半波整流,得到單極性脈沖信號,然后,將單極性脈沖信號與調(diào)制信號相乘,得到單極性滿調(diào)制信號。非滿調(diào)制首先將被pwm_tz模塊進行過脈沖個數(shù)選擇的信號bipolar[7..0]送到SBTZ模塊進行半波整流,得到單極性脈沖信號,然后,將單極性脈沖信號與調(diào)制信號相乘,即得到單極性非滿調(diào)制信號。
雙極性調(diào)制波的產(chǎn)生是由圖2中的DBTZ模塊實現(xiàn)的,對雙極性脈沖進行調(diào)制的信號是TZBFS模塊輸出的信號加直流偏移量生成的信號,同樣雙極性調(diào)制也分為滿調(diào)制和非滿調(diào)制兩種。滿調(diào)制將BXFS模塊的輸出信號b[7..0]送到DBTZ模塊直接與調(diào)制信號進行相乘,得到雙極性滿調(diào)制信號。非滿調(diào)制將被pwm_tz模塊進行過脈沖個數(shù)選擇的信號bipolar[7..0]送到DBTZ模塊與調(diào)制信號進行相乘,得到雙極性非滿調(diào)制信號。
最后,將上述形成的單極性波形、雙極性波形、單極性調(diào)制波形以及雙極性調(diào)制波形信號送到mux4_1模式選擇模塊,通過輸出模式控制模塊k[1..0]的選擇輸出特定的模擬波形。本次設計信號在實際應用時可以根據(jù)需要改變設計中的一些參數(shù)以及波形,去適應不同的情況。
測試平臺使用美國Altera公司(現(xiàn)被英特爾收購)EP2C70F896C6N芯片的DE2開發(fā)板,其中數(shù)/模轉換采用ANALOG DEVICES公司的AD9708芯片實現(xiàn),這是一塊8位精度的單通道D/A轉換芯片,支持3 V、5 V供電、具有125 Msps的轉換速率、內(nèi)置1.2 V參考電壓,差分電流輸出。應用Quartus II 軟件,在可編程芯片上實現(xiàn)治療失眠的變頻多模電針信號各模塊電路。
通過不同的撥碼開關,可以控制波形的選擇,如正弦波、三角波、鋸齒波和方波的選擇;可以進行波形個數(shù)的控制,即可以實現(xiàn)1~8個不同個數(shù)的脈沖個數(shù)的輸出,可以選擇不同模式,如單極性波、雙極性波、單極性調(diào)制波、雙極性調(diào)制波。
在圖5~圖10中,圖(a)表示正弦波的各種波形,圖(b)表示三角波的各種波形,圖(c)表示鋸齒波的各種波形,圖(d)表示方波的各種波形。單極性波脈沖信號經(jīng)過數(shù)/模轉換后在示波器上觀察的模擬波形如圖5所示,顯示了以1 s為周期的不同脈沖波形的不同個數(shù)的情況。雙極性波輸出的模擬波形如圖6所示,顯示了雙極性不同脈沖波形的不同個數(shù)的情況。
在示波器上觀察到的單極性的不同波形的滿調(diào)制波形如圖7所示,顯示了以1 s為周期10個脈沖的調(diào)制情況,雙極性的滿調(diào)制波形如圖8所示,顯示了以2 s為周期的20個脈沖的調(diào)制情況。
在使用的過程中還可以控制脈沖的個數(shù),形成非滿調(diào)制的波形信號,由于篇幅的限制,本文只展示具有6個脈沖個數(shù)時的波形,單極性的不同波形的6個脈沖以1 s為周期的調(diào)制波形如圖9所示,雙極性的12個脈沖以2 s為周期的調(diào)制波形如圖10所示。

圖5 單極性波實現(xiàn)波形

圖6 雙極性波實現(xiàn)波形

圖7 單極性滿調(diào)制波實現(xiàn)波形

圖8 雙極性滿調(diào)制波實現(xiàn)波形

圖9 單極性1s 6個脈沖調(diào)制波形

圖10 雙極性2s 12個脈沖調(diào)制波形
