新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 基于MAX110的容錯數(shù)據(jù)采集系統(tǒng)的設(shè)計

基于MAX110的容錯數(shù)據(jù)采集系統(tǒng)的設(shè)計

作者: 時間:2006-05-07 來源:網(wǎng)絡(luò) 收藏

摘 要: 論述了一種采集系統(tǒng)的設(shè)計方法,通過在MAX110的中斷服務(wù)程序中使用,實現(xiàn)了對MAX110意外停止轉(zhuǎn)換的故障恢復(fù),確保了MAX110自動連續(xù)轉(zhuǎn)換功能的性,可提高數(shù)據(jù)采集系統(tǒng)的可靠性。

在工業(yè)過程控制系統(tǒng)的設(shè)計中,與工業(yè)現(xiàn)場環(huán)境相聯(lián)系的接口電路的設(shè)計在保證性能的同時,要求有較高的可靠性和性能價格比。對于模擬輸入通道的設(shè)計,串行接口的模擬數(shù)字(A/D)轉(zhuǎn)換器愈來愈受到設(shè)計者們的關(guān)注。串行接口A/D轉(zhuǎn)換器接口電路設(shè)計簡單、芯片體積小、信號線大大減少、易于采取隔離措施,而且許多串行接口芯片的工作模式可編程、設(shè)計靈活。其中,MAXIM公司的二通道±14bit串行ADC MAX110在從串行接口讀取數(shù)據(jù)的同時還完成下一轉(zhuǎn)換過程控制方式數(shù)據(jù)的寫入(包括轉(zhuǎn)換啟動控制),這樣便可實現(xiàn)數(shù)據(jù)的自動采集;在程序設(shè)計時,數(shù)據(jù)采集進(jìn)程獨立設(shè)計,數(shù)據(jù)按預(yù)先設(shè)定的方式自動存儲到循環(huán)隊列中,完成和主進(jìn)程的數(shù)據(jù)交換,給系統(tǒng)程序的設(shè)計提供了很大的方便。但由于系統(tǒng)受環(huán)境的干擾,A/D轉(zhuǎn)換器控制數(shù)據(jù)可能會出錯,導(dǎo)致ADC意外停止轉(zhuǎn)換,使數(shù)據(jù)采集進(jìn)程停止,本文提出了針對這種故障的[1]設(shè)計方法。

1 基于MAX110的數(shù)據(jù)采集系統(tǒng)的結(jié)構(gòu)

工業(yè)過程控制的許多慢過程,對A/D轉(zhuǎn)換器轉(zhuǎn)換速度要求較低,所以選用慢速A/D轉(zhuǎn)換器便可以滿足設(shè)計要求?!?4bit串行ADC MAX110BCPE轉(zhuǎn)換時間可達(dá)到10ms,且可編程控制,精度和速度也可以滿足如溫度控制對象的數(shù)據(jù)采集要求。作者在設(shè)計適用于溫度控制的模糊智能調(diào)節(jié)器的過程中,數(shù)據(jù)采集部分使用了基于串行ADC MAX110的具有容錯功能的數(shù)據(jù)采集設(shè)計方法。系統(tǒng)結(jié)構(gòu)如圖1所示。

模擬信號隔離可選兩種方法:選用模擬隔離放大器或在A/D的數(shù)字接口采用光電隔離。模擬隔離放大器價格較高,所以選擇數(shù)字隔離方法,而采用串行A/D可大大減少數(shù)字信號隔離路數(shù)。如圖1所示,MAX110的數(shù)字側(cè)與微處理器全部采用了光電隔離器件,將MAX110的數(shù)據(jù)輸入輸出信號、時鐘信號、轉(zhuǎn)換結(jié)束中斷請求信號由PC817實現(xiàn)電氣的隔離。在后續(xù)的模擬通道中采用了多路開關(guān)CD4051選通輸入的各路模擬信號,其中通道選擇信號也采取光電隔離的方法,這樣使A/D轉(zhuǎn)換器之后的所有電路都與微處理器部分隔離。

2 A/D異常停止轉(zhuǎn)換故障的自動恢復(fù)原理

2.1 串行ADC MAX110的控制與數(shù)據(jù)傳遞

串行ADC MAX110的轉(zhuǎn)換方式和標(biāo)定由芯片控制字確定,控制字確定了MAX110 A/D轉(zhuǎn)換的通道、速度等各種工作方式。MAX110 的控制字包含:轉(zhuǎn)換時間控制,SCLK與過采樣頻率的比率控制、輸入通道選擇、增益標(biāo)定控制、內(nèi)部振蕩器掉電控制、模擬部分掉電控制。每次轉(zhuǎn)換按新送入的控制字工作??刂谱指袷郊翱刂谱肿饔靡姳恚?。

MAX110采用與Microwire SPI QSPI 串行接口通訊協(xié)議SPI: Serial Peripheral Interface, QSPI Quick SPI)兼容的串行接口標(biāo)準(zhǔn)[3]。其時序?qū)崿F(xiàn)如圖2所示。當(dāng)微處理器檢測到MAX110轉(zhuǎn)換完標(biāo)志 變高時,AD中斷產(chǎn)生,中斷服務(wù)程序首先將串行時鐘信號SCLK初始化為0,再將MAX110片選信號 低,開始串行數(shù)據(jù)的全雙工傳輸:送MAX110轉(zhuǎn)換命令字,同時接收MAX110轉(zhuǎn)換結(jié)果。數(shù)據(jù)的發(fā)送和接收過程是:首先,微處理器將要送命令字的最高位送到MAX110接收命令字的引腳DIN,然后將SCLK置高,MAX110利用SCLK時鐘信號的上升沿將命令字最高位讀入;這時微處理器將MAX110的轉(zhuǎn)換結(jié)果最高位讀入。微處理器再將SCLK置低,使SCLK出現(xiàn)下降沿;MAX110在下降沿將轉(zhuǎn)換結(jié)果的第二位送到DOUT引腳,微處理器將命令字的第二位送到DUN引腳,再將SCLK置高,MAX110利用SCLK 的上升沿讀入命令字的第二位;微處理器讀入MAX110轉(zhuǎn)換結(jié)果的第二位。如此循環(huán)直到將十六位數(shù)據(jù)接收完畢,命令字寫完畢,完成數(shù)據(jù)交換,最后將 引腳置高。當(dāng)MAX110的 引腳被置高時,MAX110開始新的轉(zhuǎn)換,轉(zhuǎn)換的工作方式由剛接收到的命令字確定。微處理器A/D中斷結(jié)束,直到MAX110下一次轉(zhuǎn)換結(jié)束時間的到來。

2.2 A/D異常停止轉(zhuǎn)換故障的檢測及自動恢復(fù)

A/D轉(zhuǎn)換器MAX110的啟動包括標(biāo)定和轉(zhuǎn)換控制字的設(shè)置,耗時較長,設(shè)計時將MAX110設(shè)置為連續(xù)轉(zhuǎn)換方式,本次轉(zhuǎn)換啟動下次轉(zhuǎn)換,下次轉(zhuǎn)換的轉(zhuǎn)換控制字由本次提供,這樣MAX110就可以連續(xù)產(chǎn)生采集數(shù)據(jù)中斷,實現(xiàn)數(shù)據(jù)的自動采集。但這種轉(zhuǎn)換方式有可能出現(xiàn)A/D轉(zhuǎn)換停止的故障。因為系統(tǒng)受到外界干擾時,可能會影響到某些數(shù)據(jù)線信號波形的偶然畸變,而串行A/D MAX110每次轉(zhuǎn)換都建立在收到正確轉(zhuǎn)換命令的基礎(chǔ)上,如受到干擾,轉(zhuǎn)換命令字錯誤,有可能導(dǎo)致MAX110停止轉(zhuǎn)換,或者進(jìn)入休眠方式或模擬電路電壓切離的低功耗方式,這樣系統(tǒng)將停止數(shù)據(jù)采集。

解決這種停止轉(zhuǎn)換故障的方法如圖3所示。在數(shù)據(jù)的自動采集過程中,下次轉(zhuǎn)換的正常工作建立在本次正確送入控制字的基礎(chǔ)上,所以在微處理器的中設(shè)置一個按一定時間間隔不停增長的計數(shù)器ADRUN,在A/D轉(zhuǎn)換中斷服務(wù)程序中將ADRUN計數(shù)器值清零。若A/D正常轉(zhuǎn)換,ADRUN計數(shù)器的值將保持在某一范圍內(nèi);若A/D停止正常轉(zhuǎn)換,ADRUN計數(shù)器的值將超出預(yù)先設(shè)定的范圍。在系統(tǒng)程序的主循環(huán)中每次判斷ADRUN計數(shù)器的值,若ADRUN計數(shù)器超限,說明MAX110停止轉(zhuǎn)換,隨即將MAX110重新初始化,使數(shù)據(jù)采集模塊恢復(fù)正常工作,同時在系統(tǒng)的故障數(shù)據(jù)庫中做出記錄以備分析。這種設(shè)計方法保證了數(shù)據(jù)采集模塊的穩(wěn)定運行,使系統(tǒng)具備了一定的容錯功能。

本文論述的容錯數(shù)據(jù)采集系統(tǒng)已在自行設(shè)計的以Intel 80C196為微處理器的智能調(diào)節(jié)器中使用和測試。測試時,給數(shù)據(jù)采集系統(tǒng)注入故障,使AD采集進(jìn)程停止工作,實驗證明,在預(yù)先設(shè)定的時間內(nèi),故障得以排除并記錄了故障情況,數(shù)據(jù)采集正常進(jìn)行。但這種容錯設(shè)計方法的可靠性依賴于探測故障時所使用的定時器的可靠性,若定時器異常停止工作,系統(tǒng)將不能檢測到A/D轉(zhuǎn)換的故障。

p2p機(jī)相關(guān)文章:p2p原理




評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉