摘要:根據(jù)工業(yè)應(yīng)用的實(shí)際需要以及網(wǎng)絡(luò)通信發(fā)展的功能要求,提出了基于FPGA智能變送器控制系統(tǒng)的總體方案,設(shè)計(jì)了以XILINX公司的Spartan3系列XC3S4005PO208C可編程邏輯器件為主控制器、DM9000A為以太網(wǎng)通信接口、SJA1000為CAN控制器的硬件系統(tǒng),并給出了系統(tǒng)軟件流程圖,重點(diǎn)論述了數(shù)據(jù)采集和數(shù)據(jù)模擬輸出控制電路的FPGA實(shí)現(xiàn),結(jié)合ISE10.1設(shè)計(jì)軟件給出了A/D、D/A的仿真結(jié)果。
關(guān)鍵詞:FPGA;智能變送器;數(shù)據(jù)采集;可編程邏輯器件
在工業(yè)自動(dòng)化控制系統(tǒng)中,過程參數(shù)壓力、差壓、絕對(duì)壓力、流量等工藝參數(shù)均要嚴(yán)格控制,而這類參數(shù)的測(cè)量與監(jiān)控大多使用變送器。變送器是玉業(yè)過程重要的基礎(chǔ)自動(dòng)化設(shè)備之一,是工業(yè)過程自動(dòng)控制中應(yīng)用最廣、使用最多的一種現(xiàn)場(chǎng)儀表。隨著高參數(shù)、大容量設(shè)備的增加和過程工藝的復(fù)雜化,變送器用量不斷增多。
隨著工業(yè)自動(dòng)化控制技術(shù)的發(fā)展,自控水平越來(lái)越高,對(duì)過程參數(shù)控制精度要求越來(lái)越嚴(yán),要求變送器表不僅精度高,而且要功能多、穩(wěn)定可靠、能準(zhǔn)確傳送過程參數(shù)(壓力、差壓、絕壓、流量)、抗干擾能力強(qiáng)、使用維護(hù)簡(jiǎn)單,并能與控制器、執(zhí)行器等設(shè)備組成功能強(qiáng)大的控制系統(tǒng),實(shí)現(xiàn)通訊和過程的自動(dòng)控制。所以,過去的變送器由于受測(cè)量原理和通訊所限,很難實(shí)現(xiàn)這種高精度控制要求,因此,自然而然地產(chǎn)生了原理先進(jìn)具有通訊功能的智能變送器。這類先進(jìn)的智能變送器集現(xiàn)代科技與一身,是微電子技術(shù)、精密機(jī)械加工技術(shù)、計(jì)算機(jī)技術(shù)和現(xiàn)代通訊技術(shù)完美結(jié)合的產(chǎn)物,能實(shí)現(xiàn)過程控制的多種要求,推動(dòng)了整個(gè)自控技術(shù)的向前發(fā)展。先進(jìn)的智能變送器是工業(yè)過程控制技術(shù)發(fā)展的需要,也是工藝過程實(shí)現(xiàn)高精度控制的必須,具有很好的市場(chǎng)前景。
本文根據(jù)工業(yè)應(yīng)用的實(shí)際需要以及網(wǎng)絡(luò)通信發(fā)展的功能要求,提出了基于FPGA智能變送器控制系統(tǒng)的總體方案,硬件系統(tǒng)設(shè)計(jì)、軟件設(shè)計(jì)。該設(shè)計(jì)實(shí)現(xiàn)了系統(tǒng)MCU主控模塊、數(shù)據(jù)采集模塊、電源控制模塊、數(shù)據(jù)處理模塊、數(shù)據(jù)通信模塊等硬件電路,并給出了系統(tǒng)軟件流程圖,重點(diǎn)論述了數(shù)據(jù)采集和數(shù)據(jù)模擬輸出控制電路的FPGA實(shí)現(xiàn),詳細(xì)闡述了系統(tǒng)各模塊電路的組成原理和實(shí)現(xiàn)方法,給出了整個(gè)電路系統(tǒng)的原理圖,并制作了印刷電路板。結(jié)合XILINX公司的ISE10.1設(shè)計(jì)軟件給出了模/數(shù)轉(zhuǎn)換、數(shù)/模轉(zhuǎn)換的仿真結(jié)果,驗(yàn)證了系統(tǒng)功能。
1 智能變送器的總體設(shè)計(jì)
本智能變送器由前端信號(hào)調(diào)理電路、高速A/D采樣電路、數(shù)字信號(hào)處理電路、模擬輸出電路和數(shù)字輸出電路組成。如圖1所示。
分析不同類型的傳感器,其輸出信號(hào)可分為電流信號(hào)、電壓信號(hào)和電荷信號(hào)3大類,相應(yīng)地設(shè)計(jì)了3種信號(hào)調(diào)理電路。以大型設(shè)備振動(dòng)監(jiān)測(cè)項(xiàng)目為例,縣體的傳感器有加速度、速度和位移傳感器。選擇不同的前端信號(hào)調(diào)理電路,變成統(tǒng)一規(guī)格的電壓信號(hào)供后面的A/D采樣。
A/D采樣部分對(duì)前端電路的輸出電壓信號(hào)進(jìn)行采樣。A/D采樣芯片采用ADI公司的AD7264,AD7264是雙通道同步采樣、14-bit、高速、低功耗、逐次逼近型模數(shù)轉(zhuǎn)換器,采用5V單電源供電,采樣速率高達(dá)1 MSPS。A/D采樣電路與前端信號(hào)調(diào)理電路用同一隔離電源供電,與后級(jí)數(shù)字信號(hào)處理電路隔離。AD7264的數(shù)據(jù)接口為串行接口,便于隔離處理。
數(shù)字信號(hào)處理電路選擇帶有CPU軟核的FPGA。FPGA是智能式變送器的核心,它不但能對(duì)采樣數(shù)據(jù)進(jìn)行計(jì)算、存儲(chǔ)和數(shù)據(jù)處理,還可以通過反饋回路對(duì)傳感器進(jìn)行調(diào)節(jié)。在整個(gè)系統(tǒng)中,F(xiàn)PGA主要實(shí)現(xiàn)對(duì)系統(tǒng)的控制和數(shù)據(jù)的預(yù)處理。
智能式變送器有兩種輸出方式:模擬輸出和數(shù)字輸出。數(shù)字輸出將處理后的信號(hào)直接輸出,通過CAN接口、TCP/IP接口傳給上位機(jī)。模擬輸出通過DAC芯片將信號(hào)轉(zhuǎn)換成標(biāo)準(zhǔn)電壓電流信號(hào)輸出。
2 系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)
智能變送器具有采集、處理、指示、通訊等功能,其硬件設(shè)計(jì)圍繞功能進(jìn)行。整個(gè)智能變送器單元根據(jù)所完成的功能分為以下幾個(gè)主要功能模塊:信號(hào)采集模塊(傳感器放大電路)、信號(hào)轉(zhuǎn)換模塊(模/數(shù)轉(zhuǎn)換和數(shù)/模轉(zhuǎn)換電路)、FPGA控制模塊、通信模塊(以太網(wǎng)和CAN總線通信)以及為整個(gè)系統(tǒng)提供電源的電路部分等。其中FPGA系統(tǒng)為整個(gè)控制器單元的核心,是變送器實(shí)現(xiàn)數(shù)字智能化的標(biāo)志。
智能變送器的硬件總體結(jié)構(gòu)框圖如圖2所示。變送器工作時(shí),由傳感器把被測(cè)量轉(zhuǎn)變?yōu)殡娦盘?hào),然后將信號(hào)作A/D轉(zhuǎn)換,把模擬信號(hào)變換成數(shù)字信號(hào),送入到FPGA(XC3S4005PQ205)控制模塊,F(xiàn)IGA通過FIR濾波器核對(duì)信號(hào)進(jìn)行濾波,并通過查表法對(duì)信號(hào)進(jìn)行自動(dòng)補(bǔ)償,然后根據(jù)實(shí)際需要。經(jīng)數(shù)/模轉(zhuǎn)換后將數(shù)據(jù)傳給下級(jí)電路,同時(shí)也可能通過以太網(wǎng)或CAN總線傳給局域網(wǎng),實(shí)現(xiàn)智能變送功能。系統(tǒng)PCB板實(shí)物圖如圖3所示。
3 系統(tǒng)軟件設(shè)計(jì)與仿真
該系統(tǒng)以XILINX公司的XC3S4005PQ208C作為中央處理器,整個(gè)系統(tǒng)主要包括初始狀態(tài)(Initialization)、數(shù)據(jù)采集狀態(tài)(Data_Sample)、數(shù)據(jù)處理狀態(tài)(Data_Processing)、以太網(wǎng)傳輸狀態(tài)(Enet_Transfers)、CAN總線傳輸狀態(tài)(CAN_Transfers)、和模擬輸出狀態(tài)(Analog_ Transfers)等6種狀態(tài),因此,可以利用有限狀態(tài)機(jī)的設(shè)計(jì)方案來(lái)實(shí)現(xiàn)。其狀態(tài)轉(zhuǎn)換圖如圖4所示,通過開發(fā)工具ISE10.1對(duì)各個(gè)模塊的VHDL源程序及頂層電路進(jìn)行編譯、邏輯綜合,電路的糾錯(cuò)、驗(yàn)證、自動(dòng)布局布線及仿真等各種測(cè)試,最終將設(shè)計(jì)編譯的數(shù)據(jù)下載到芯片中即可。
初始狀態(tài):實(shí)現(xiàn)系統(tǒng)初始化;數(shù)據(jù)采集狀態(tài):完成數(shù)據(jù)采集過程;數(shù)據(jù)處理狀態(tài):對(duì)采集的信號(hào)進(jìn)行一系列的濾波處理,非線性校正等;以太網(wǎng)傳輸狀態(tài),CAN總線傳輸狀態(tài):根據(jù)實(shí)際需要將信號(hào)數(shù)字輸出;模擬輸出狀態(tài):進(jìn)行數(shù)模轉(zhuǎn)換,輸出標(biāo)準(zhǔn)的電壓電流信號(hào)。
3.1 數(shù)據(jù)采集的FPGA設(shè)計(jì)
數(shù)據(jù)采集是工業(yè)測(cè)量和控制系統(tǒng)中的重要部分,它是測(cè)控現(xiàn)場(chǎng)的模擬信號(hào)源與上位機(jī)之間的接口,其任務(wù)是采集現(xiàn)場(chǎng)連續(xù)變化的被測(cè)信號(hào)。對(duì)數(shù)字系統(tǒng)來(lái)說(shuō),數(shù)據(jù)采集主要由傳感器放大電路和A/D轉(zhuǎn)換電路構(gòu)成,由硬件電路可見,系統(tǒng)通過AD7264模/數(shù)轉(zhuǎn)換器來(lái)實(shí)現(xiàn)模/數(shù)轉(zhuǎn)換。AD7264內(nèi)含6個(gè)寄存器,分別是A/D轉(zhuǎn)換器的結(jié)果寄存器、控制寄存器、A/D轉(zhuǎn)換器A和B的內(nèi)部失調(diào)寄存器、A/D轉(zhuǎn)換器A和B通道的外部增益寄存器。由于XC3S4005PQ208C和AD7264都兼容SPI接口,兩者的編程只需按照時(shí)序圖進(jìn)行即可。AD7264與FPGA的接口主要包括PD0數(shù)據(jù)輸入選擇端:DoutA(DoutB)兩路數(shù)據(jù)輸出端;OUTa(OUTb)兩路數(shù)據(jù)輸入端;CoutA(CoutB、CoutC、CoutD)比較器輸出;G3(G2、G1、G0)四路增益控制輸入信號(hào)。增益由控制寄存器的低四位控制;ADSCLK時(shí)鐘信號(hào);ADCS片選信號(hào),低電平有效。AD7264工作頻率為20 MHz,在CS下降沿,跟蹤保持器處于保持模式。此時(shí),采樣、轉(zhuǎn)換同時(shí)被初始化模擬輸入。這需要至少19個(gè)SCLK周期。第19個(gè)SCLK的下降沿到來(lái)時(shí)。AD7262恢復(fù)至跟蹤模式,并設(shè)置DOUTA、DOUTB為使能。數(shù)據(jù)流由14位組成,MSB在前。圖5為AD7264讀寄存器時(shí)序仿真圖。
3.2 數(shù)據(jù)輸出的FPGA實(shí)現(xiàn)
智能化信號(hào)調(diào)理器的輸出分為數(shù)字輸出和模擬輸出,數(shù)字輸出通過CAN接口和TCP/IP輸出到上位機(jī),或者通過總線方式輸出;模擬輸出通過DA轉(zhuǎn)換成標(biāo)準(zhǔn)的電壓電流信號(hào)輸出。系統(tǒng)選用ADI公司AD5422數(shù)/模轉(zhuǎn)換器來(lái)實(shí)現(xiàn)數(shù)/模轉(zhuǎn)換。AD5422通過數(shù)據(jù)移位寄存器輸入數(shù)據(jù),數(shù)據(jù)在串行時(shí)鐘輸入SCLK的控制下首先作為24位字載入器件MSB中。數(shù)據(jù)在SCLK的上升沿逐個(gè)輸入。該24位字在LATCH引腳的上升沿?zé)o條件鎖存,然后數(shù)據(jù)繼續(xù)逐個(gè)輸入,此時(shí)與LATCH的狀態(tài)無(wú)關(guān)。圖6為AD5422寫操作時(shí)序仿真圖。
4 結(jié)束語(yǔ)
采用XILINX公司的ISE10.1設(shè)計(jì)軟件及MODELSIM軟件對(duì)系統(tǒng)進(jìn)行反復(fù)調(diào)試仿真,給出了試驗(yàn)結(jié)果,驗(yàn)證了系統(tǒng)功能。并運(yùn)用美國(guó)PCB公司的608A11作為加速度傳感器。對(duì)設(shè)備的振動(dòng)進(jìn)行監(jiān)測(cè),其模擬輸出的測(cè)試結(jié)果如表1所示。
最終的調(diào)試結(jié)果表明,本文所設(shè)計(jì)的智能變送器器能夠穩(wěn)定的實(shí)現(xiàn)溫度、壓力等變量的變送,并且頻率、幅值的調(diào)節(jié)精度等技術(shù)指標(biāo)均達(dá)到了預(yù)期的設(shè)計(jì)要求。