《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的工控領(lǐng)域監(jiān)控系統(tǒng)設(shè)計(jì)
基于FPGA的工控領(lǐng)域監(jiān)控系統(tǒng)設(shè)計(jì)
摘要: 該系統(tǒng)的功能主要是實(shí)現(xiàn)對(duì)工控領(lǐng)域后臺(tái)裝置的溫度信號(hào)和電壓信號(hào)的實(shí)時(shí)雙監(jiān)控,。其中溫度信號(hào)可根據(jù)PT電阻值隨溫度變化的線性關(guān)系將溫度信號(hào)轉(zhuǎn)換為0~2.5 V變化的電壓信號(hào),。然后送給AD7705的l通道。電壓信號(hào)則可用變壓器轉(zhuǎn)換為O~2.5 V的電壓信號(hào),,送給AD7705的2通道,從而實(shí)現(xiàn)對(duì)溫度和電壓兩路信號(hào)的采集,。
Abstract:
Key words :

引言

整機(jī)在工作時(shí),,大概有4%的能量被各種電力電子器件所消耗,這些被消耗的能量以熱量的形式分別在單個(gè)模塊中通過(guò)散熱器散發(fā)出去,。

針對(duì)以上的現(xiàn)象,,可用PTl00鉑電阻溫度傳感器在散熱器表面感應(yīng)溫度,以保護(hù)電力電子器件不因?yàn)樵诟邷叵逻\(yùn)行而損壞,。金屬鉑(Pt)的電阻值隨溫度變化而變化,,并且具有很好的重現(xiàn)性和穩(wěn)定性,利用鉑的此種物理特性制成的傳感器稱為鉑電阻溫度傳感器,,通常使用的鉑電阻溫度傳感器的零度電阻值為100Ω,,電阻變化率為0.3851Ω/℃。鉑電阻溫度傳感器具有精度高,,穩(wěn)定性好,,應(yīng)用范圍廣等優(yōu)點(diǎn),是最常用的一種溫度傳感器,。

串行外設(shè)接口SPI (Serial Peripheral Interface)是一種高速同步串行輸入輸出端口,。近年來(lái)SPI接口廣泛應(yīng)用于外部移位寄存器、DA轉(zhuǎn)換器,、AD轉(zhuǎn)換器,、串行EEPROM、LED顯示驅(qū)動(dòng)器等外部設(shè)備的擴(kuò)展,。SPI接口可以共享.因而便于組成帶多個(gè)SPI接口器件的系統(tǒng),。其傳送速率可編程,連接線少,,并具有良好的擴(kuò)展性,。

AD7705是典型的具有SPI接口的AD轉(zhuǎn)換器,可以方便地與帶有SPI模塊的控制器進(jìn)行通信,。本文采用FPGA為主控制器,,利用其通用I/O口來(lái)模擬SPI時(shí)序,以采集AD7705的兩路輸入信號(hào)(溫度信號(hào)和電壓信號(hào)),,并將采集到的16位溫度數(shù)字信號(hào)和16位電壓數(shù)字信號(hào)送給DSP進(jìn)行處理,,然后對(duì)數(shù)字信號(hào)進(jìn)行算法還原,最終在1602液晶顯示器上分別顯示兩路實(shí)際信號(hào),,從而實(shí)現(xiàn)對(duì)溫度和電壓兩路信號(hào)的實(shí)時(shí)監(jiān)控,。

l 硬件設(shè)計(jì)方案

該系統(tǒng)的功能主要是實(shí)現(xiàn)對(duì)工控領(lǐng)域后臺(tái)裝置的溫度信號(hào)和電壓信號(hào)的實(shí)時(shí)雙監(jiān)控。其中溫度信號(hào)可根據(jù)PT電阻值隨溫度變化的線性關(guān)系將溫度信號(hào)轉(zhuǎn)換為0~2.5 V變化的電壓信號(hào),。然后送給AD7705的l通道,。電壓信號(hào)則可用變壓器轉(zhuǎn)換為O~2.5 V的電壓信號(hào),,送給AD7705的2通道,從而實(shí)現(xiàn)對(duì)溫度和電壓兩路信號(hào)的采集,。

1.1 P11電阻的特點(diǎn)

PT電阻值可隨溫度的變化而變化,,在0℃時(shí),電阻值為100Ω,。小于0℃時(shí),,阻值隨溫度的降低而減小,;大于0℃時(shí),,阻值隨溫度的增加而增大。阻值隨溫度的變化關(guān)系可用公式1和公式2表達(dá),。

 

其中,,R1為PT電阻在溫度為t時(shí)的電阻值,R0為PT電阻在0℃時(shí)的電阻值,,式(1)和式(2)為溫度系數(shù)TCR=0.003851時(shí),,PT電阻值隨溫度變化的數(shù)學(xué)表達(dá)式,其中,,A,、B、C三個(gè)系數(shù)分別為:

 

由于t2和t3項(xiàng)的系數(shù)都很小,,故可近似的認(rèn)為,,鉑電阻的阻值隨溫度呈線性的變化關(guān)系,又因?yàn)樗臏囟认禂?shù)為TCR=0.003851,,所以在計(jì)算時(shí),,可以直接按照溫度系數(shù)來(lái)計(jì)算。如果把PTl00鉑電阻放在散熱器表面的功率器件周圍,,那么,,就可以根據(jù)測(cè)試點(diǎn)的電阻值估算出溫度。

1.2 溫度信號(hào)轉(zhuǎn)換電路

圖1所示是本系統(tǒng)中的溫度信號(hào)檢測(cè)電路,。

 

圖1電路中,,R14是放在散熱器表面的鉑電阻,用于感應(yīng)散熱器的溫度,,該電路可將PT電阻隨溫度信號(hào)變化的阻值信號(hào)轉(zhuǎn)變成電壓信號(hào),,這樣,根據(jù)PTl00-V點(diǎn)的電壓值,,即可換算出PT電阻R14的電壓信號(hào),,ref-V為基準(zhǔn)電壓信號(hào),ref-V經(jīng)過(guò)圖2所示的差分放大電路后,再根據(jù)圖中元器件的參數(shù)即可計(jì)算出,,最后傳輸?shù)碾妷盒盘?hào)Va為與基準(zhǔn)電壓差值的12倍,。

 

圖3所示為光耦隔離傳輸電路,由圖2所示的差分放大電路輸出的電壓信號(hào)Va經(jīng)過(guò)光耦隔離電路后,,即可以l:1的形式傳送,,即Vb點(diǎn)的電壓信號(hào)和差分放大后的信號(hào)Va是一樣的,將Vb送到AD7705進(jìn)行模數(shù)轉(zhuǎn)換,。然后將其轉(zhuǎn)換成串行序列輸出給FPGA處理,同時(shí)也上傳到DSP控制器,。

 

2 軟件設(shè)計(jì)方案

本系統(tǒng)的軟件設(shè)計(jì)主要是根據(jù)AD7705的特點(diǎn)和操作時(shí)序,,用FPGA的通用GPIO模擬SPI時(shí)序。圖4給出了該系統(tǒng)中AD7705的主狀態(tài)流程圖,。此后,,根據(jù)流程圖再編寫各子模塊,即可完成對(duì)AD7705兩路信號(hào)的實(shí)時(shí)采集,。

 

2.1 AD7705的特點(diǎn)及操作時(shí)序

AD7705是采用∑-△轉(zhuǎn)換技術(shù)來(lái)實(shí)現(xiàn)16位代碼無(wú)丟失性能的AD轉(zhuǎn)換器件,。該器件可以直接接收來(lái)自傳感器的低電平輸入信號(hào),然后產(chǎn)生串行的數(shù)字輸出,。AD7705只需2.7~5.25 V的單電源,,采用雙通道全差分模擬輸入,并有一個(gè)差分基準(zhǔn)輸入,。當(dāng)電源電壓為5 V,、基準(zhǔn)電壓為2.5 V時(shí),這種器件可對(duì)輸入信號(hào)范圍在0~20 mA和0~2.5 V的信號(hào)進(jìn)行處理,,還可以處理±20 mV~±2.5 V的雙極性輸入信號(hào),,其串行接口也可配置為三線接口。其增益值,、信號(hào)極性以及更新速率的選擇均可用串行輸入口由軟件來(lái)配置,。此外,該器件還包括自校準(zhǔn)和系統(tǒng)校準(zhǔn)選項(xiàng),,以消除器件本身或系統(tǒng)的增益和偏移誤差,。

AD7705包括6個(gè)用戶可通過(guò)串口訪問(wèn)的片內(nèi)寄存器。其中第一個(gè)是通訊寄存器,,用于管理通道選擇,,決定下一個(gè)操作是讀操作還是寫操作,以及下一次讀或?qū)懩囊粋€(gè)寄存器,。所有與器件的通訊必須從寫通訊寄存器開(kāi)始,。上電或復(fù)位后,器件將等待在通訊寄存器上進(jìn)行一次寫操作,;

第二個(gè)是設(shè)置寄存器,,用于決定校準(zhǔn)模式,、增益設(shè)置、單/雙極性輸入以及緩沖模式,;

第三個(gè)是時(shí)鐘寄存器,,其中包括濾波器選擇位和時(shí)鐘控制位;

第四個(gè)是數(shù)據(jù)寄存器,,器件輸出的數(shù)據(jù)從這個(gè)寄存器讀出,;

第五個(gè)是零標(biāo)度校準(zhǔn)寄存器,AD7705包含兩組獨(dú)立的零標(biāo)度寄存器,,每個(gè)零標(biāo)度寄存器負(fù)責(zé)一個(gè)輸入通道,。它們都是24位讀,寫寄存器,;

第六個(gè)是滿標(biāo)度校準(zhǔn)寄存器,,AD7705包含兩組獨(dú)立的滿標(biāo)度寄存器,每個(gè)滿標(biāo)度寄存器負(fù)責(zé)一個(gè)輸入通道,。它們都是24位讀/寫寄存器,。

AD7705的寫操作時(shí)序圖如圖5所示。在將片選端CS拉低后,,即可在串行時(shí)鐘的上升沿發(fā)送數(shù)據(jù),,發(fā)送數(shù)據(jù)時(shí),高位在前,。

 

AD7705的讀操作時(shí)序圖如圖6所示,。當(dāng)在AD7705的DRDY信號(hào)腳檢測(cè)到邏輯低電平時(shí),表示可以從AD7705的數(shù)據(jù)寄存器獲取新的輸出字,,當(dāng)完成對(duì)一個(gè)完全的輸出字的讀操作后,,DRDY引腳立即回到高電平。如果在兩次輸出更新之間,,不發(fā)生數(shù)據(jù)輸出,,DRDY將在下一次輸出更新前500個(gè)輸入時(shí)鐘時(shí)間返回高電平。DRDY處于高電平時(shí),,不能進(jìn)行讀操作,。當(dāng)數(shù)據(jù)更新后,DRDY又返回低電平,。

 

2.2 FPGA接口的軟件設(shè)計(jì)

FPGA與AD7705共有5個(gè)接口引腳,,分別為片選端CS、串行時(shí)鐘端SCLK,、串行數(shù)據(jù)輸入端DIN,、串行數(shù)據(jù)輸出端DOUT和串行數(shù)據(jù)請(qǐng)求端

DRDY。

讀AD7705的數(shù)據(jù)寄存器前,需先設(shè)置其時(shí)鐘寄存器和設(shè)置寄存器,,下面以1通道為例來(lái)簡(jiǎn)要說(shuō)明,,首先向AD7705發(fā)送串行數(shù)據(jù)0x20,表示下一操作選擇時(shí)鐘寄存器,,接著發(fā)送串行數(shù)據(jù)0x0C,,設(shè)置時(shí)鐘為2分頻,然后發(fā)送Oxl0,,表示下一操作選擇設(shè)置寄存器,,接著發(fā)送串行數(shù)據(jù)0x44,表示設(shè)置寄存器模式為自校準(zhǔn),,增益l,,單極性,無(wú)緩沖,,然后再向AD7705發(fā)送0x38,表示可以讀通道1的數(shù)據(jù)寄存器,,并等待AD7705的DRDY變低,,然后發(fā)送16個(gè)時(shí)鐘,以讀取通道1的16位轉(zhuǎn)換數(shù)據(jù),。通道2的數(shù)據(jù)讀取與通道1的數(shù)據(jù)讀取相似,,發(fā)送的數(shù)據(jù)分別為0x21,0x0C,,

0x11,,0x44,0x39,。

3 結(jié)束語(yǔ)

本文用有限狀態(tài)機(jī)在FPGA上實(shí)現(xiàn)了對(duì)有SPI接口的AD轉(zhuǎn)換器AD7705的接口應(yīng)用,,并對(duì)AD7705的兩路輸入信號(hào)進(jìn)行了實(shí)時(shí)采集。事實(shí)上,,選用通用I/O口模擬SPI時(shí)序,,相比標(biāo)準(zhǔn)SPI接口IP核更為簡(jiǎn)潔,可以節(jié)約FPGA的片上資源,。由于AD7705提供有雙通道,、低成本、高分辨率的模數(shù)轉(zhuǎn)換功能,,因此,,采用∑-△結(jié)構(gòu)實(shí)現(xiàn)模數(shù)轉(zhuǎn)換,可使得該器件在噪音環(huán)境下免受干擾,,因而很適合于工業(yè)控制應(yīng)用,。
 

發(fā)布者:小宇

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。