本發明涉及一種多通道壓力采集系統。
背景技術:
目前,國內現有技術中測量多通道的壓力數據時多是將多個獨立的壓力傳感器組裝在一個機械結構上,組合成多通道的壓力采集系統,每一個壓力傳感器在一套獨立組件中,具有各自獨立的采集電路,由此不可避免的造成硬件資源浪費,并導致采集裝置體積大、重量大、成本高。
技術實現要素:
為解決上述技術問題,本發明提供了一種多通道壓力采集系統。
本發明通過以下技術方案得以實現。
本發明提供的一種多通道壓力采集系統,包括主控電路、ad轉換電路、通道切換電路、傳感器電路;所述主控電路、ad轉換電路、通道切換電路、傳感器電路依次連接,主控電路還與通道切換電路連接;
所述主控電路、ad轉換電路、通道切換電路之間的連接為信號源電路,傳輸傳感器信號;所述主控電路、通道切換電路之間的電路為控制通信電路,主控電路通過控制通信電路對通道切換電路的信號源電路接口的通道切換進行控制;
所述通道切換電路內設有模擬開關陣列,傳感器電路中對應模擬開關陣列設置有傳感器陣列,傳感器陣列中每一傳感器以獨立通道接至模擬開關陣列。
所述傳感器電路由傳感器陣列、恒流源電路組成,基準電壓源和運算放大器構成恒流源電路為傳感器陣列供電,傳感器基于感應產生電信號,壓力傳感器的數量與通道數量一致。
所述通道切換電路由模擬開關陣列、譯碼器和放大器組成,控制通信電路接至譯碼器與模擬開關陣列,控制模擬開關陣列中模擬開關的通斷,模擬開關陣列中模擬開關通路時對應的傳感器陣列中傳感器發送數據至放大器,放大器連接至ad轉換電路。
所述ad轉換電路由adc芯片和信號調理電路組成,信號調理電路連接至通道切換電路并完成信號調理,adc芯片輸出連接至主控電路。
所述恒流源電路由基準電壓源和運算放大器構成。
所述傳感器陣列為壓力傳感器陣列。
所述主控電路由rs-422接口電路、電源變換電路、微處理器、ad控制接口電路和通道控制接口電路組成,電源變換電路接入外部電源并完成電平轉換,rs-422接口電路接入至計算機并實現外部通信,ad控制接口電路連接所述ad轉換電路,通道控制接口電路連接所述通道切換電路;rs-422接口電路、電源變換電路、ad控制接口電路和通道控制接口電路均連接至微處理器。
所述微處理器內包括解算模塊、控制模塊、ad讀寫模塊、通道控制模塊、串口收發模塊、參數存儲模塊;ad讀寫模塊連接所述ad控制接口電路,通道控制模塊連接所述通道控制接口電路,串口收發模塊連接所述rs-422接口電路,參數存儲模塊連接串口收發模塊,結算模塊連接ad讀寫模塊,控制模塊連接以上所有模塊。
所述微處理器為tms320f28335系列芯片,通過spi總線與ad轉換電路通信。
所述放大器為ad620,ad620的引腳1和引腳8之間并聯一個電阻,使放大倍數固定為120倍;所述壓力傳感器陣列中壓力傳感器為npp-301a,npp-301a的引腳5和引腳8之間并聯一個電阻,以減小溫度變化引起的靈敏度誤差。
本發明的有益效果在于:除傳感器為每通道配一個外,其他數據處理電路共用一套電路,大大節約了硬件資源,具有體積小、重量輕,成本低的優點,并且整體還具有采集速率快、精度高的優點。
附圖說明
圖1是本發明的原理示意圖;
圖2是圖1中微處理器的內部原理示意圖;
圖3是本發明使用時的流程示意圖。
具體實施方式
下面進一步描述本發明的技術方案,但要求保護的范圍并不局限于所述。
如圖1所示的一種多通道壓力采集系統,包括:傳感器電路、通道切換電路、a/d轉換電路、主控電路、數據記錄裝置;所述通道切換電路分別與傳感器電路、a/d轉換電路電連接,所述主控電路分別與通道切換電路、a/d轉換電路電連接;
所述傳感器電路主要由壓力傳感器、基準電壓源和運算放大器組成,基準電壓源和運算放大器構成恒流源為壓力傳感器供電,壓力傳感器感應壓力產生電壓信號,壓力傳感器的數量與通道數量一致;
所述通道切換電路主要由模擬開關、譯碼器和儀表放大器組成,譯碼器與模擬開關共同構成壓力測試通道的選擇開關,某一時刻只輸出一路壓力信號,多通道的壓力信號可以循環輸出,由于壓力傳感器輸出的信號電壓很小,需要通過儀表放大器放大后再送入a/d轉換電路;
所述a/d轉換電路主要由運算放大器和模數轉換器組成,運算放大器構成信號調理電路將輸入的電壓信號調理成滿足模數轉換器輸入要求的信號,模數轉換器再將輸入信號轉換成數字信號并送入主控電路;
所述主控電路主要由電源轉換電路、微處理器、rs-422接口電路組成,電源轉換電路用于對供電電源進行隔離和電壓轉換,微處理器控制壓力測試通道的選擇并對a/d轉換電路提供的數字信號進行處理,rs-422接口電路將處理后的數據包傳送給計算機的上位機軟件進行顯示、記錄。
如圖2所示,所述微處理器包括:
用于命令接收和數據發動的串口收發的模塊;
用于每個通道傳感器的初始參數、串口配置參數、a/d讀取spi總線配置參數、a/d配置參數、定時器配置參數等存儲的模塊;
用于將a/d的采集結果轉換成壓力數據的解算模塊;
用于程序的各模塊調度、控制等處理的控制模塊;
用于配置參數和讀取數據的a/d讀寫模塊;
用于每個傳感器分時選擇與a/d連通的通道控制模塊。
作為優選,所述傳感器電路由氣壓傳感器npp-301a、基準電壓adr445和四運算放大器lm124組成,氣壓傳感器npp-301a的引腳5和8之間并聯一個電阻,有助于減小溫度變化引起的靈敏度誤差,adr445和lm124組成恒流源電路為氣壓傳感器供電。
所述通道切換電路由譯碼器74hc237、復選器dg409和放大器ad620組成,譯碼器的輸出控制復選器的使能端,主控電路控制譯碼器的使能端和復選器的通道,放大器ad620的引腳1和8之間并聯一個電阻,使放大倍數固定為120倍。
所述a/d轉換電路的核心器件是ad7176,使用基準電壓adr445作為其5v基準源。
所述主控電路是控制各個電路正常工作的核心電路,其核心器件是dsptms320f28335,dsp與a/d轉換電路通過spi總線通信,dsp與數據記錄裝置通過rs422總線通信。
本發明選用高精度的壓力傳感器npp-301a和高分辨率、轉換速率高的adc采集壓力,利用工作頻率高的dsp實現多通道壓力值的采集控制和數據處理,并通過計算機顯示屏將數值直觀的顯示出來,具有采集速率快、精度高的優點;本發明的多通道壓力采集系統除壓力傳感器為每通道配一個外,其他數據處理電路共用一套電路,大大節約了硬件資源,具有體積小、重量輕,成本低的優點。
具體而言,其中:
(1)主控電路部分
所述主控電路負責對輸入電壓信號進行隔離和電壓變換、對輸入和輸出數據進行計算處理和存儲,以及對a/d轉換電路和通道切換的控制操作。如圖1所示,主控電路包括rs-422接口電路、電源轉換電路、a/d控制接口電路、通道控制接口電路和微處理器電路;其中,所述rs-422接口電路為全雙工異步接口,負責與上位計算機機之間的信號交互,傳輸速率一般為800kbps至4mbps之間,通過該電路上位機可讀取壓力數據;電源轉換電路負責對輸入的供電信號進行隔離和電壓變換,例如將輸入的27v直流電壓進行隔離并轉換為5v、3.3v和1.9v直流電壓;a/d控制接口電路負責對adc芯片進行讀寫控制,該電路可以是多路并行的spi串行總線,以實現多個adc芯片同時轉換,提高采集速率;通道控制接口電路負責將通道選擇信號轉換成模擬開關及譯碼器能夠接受的電平信號,如將3.3v的電平信號轉換為5v信號;微處理器運行相應程序,所述程序實現數據采集、數據發送、參數初始化、通道控制掃描等各部分功能,包含串口收發模塊模塊、參數存儲模塊、控制模塊、解算模塊、a/d讀寫模塊和通道控制模塊等,對整個主控電路的功能邏輯進行控制運算,并對接收的數據進行計算處理。
(2)a/d轉換電路部分
a/d轉換電路負責對輸入的電壓信號進行信號調理后轉換為數字量信號。如圖1所示,a/d轉換電路包含信號調理電路和模數轉換器(adc芯片)。其中,信號調理電路負責將輸入的電壓信號調理成滿足模數轉換器輸入要求的信號;模數轉換器選用高速adc,負責將模擬信號轉換成數字信號,當采集通道數較多、采集速率要求較高時,可使用兩片或多片adc同時轉換。
(3)通道切換電路部分
通道切換電路負責接收主控電路部分發來的通道選擇指令,并選通相應的通道輸出信號。如圖1所示,通道切換電路包含放大器、譯碼器和模擬開關陣列。其中,譯碼器與模擬開關共同構成壓力測試通道的選擇開關,主控電路發來的通道選擇指令包含譯碼器輸入信號、譯碼器使能控制位和模擬開關通道控制位,譯碼器的輸入信號和使能控制位分別控制譯碼器的輸出和使能端,模擬開關的通道控制位控制模擬開關的通道選通,譯碼器輸出的每一位分別控制一個模擬開關的使能端,同一時刻只有一個譯碼器、一個模擬開關及模擬開關的一個通道在工作,只輸出一路壓力信號,通過切換譯碼器、模擬開關及模擬開關通道的開關狀態,使多通道的壓力信號可以循環輸出,當所述通道切換電路設有2個n位輸出譯碼器、n個m通道模擬開關時,可采集的最大通道數為2×n×m個;放大器負責將壓力傳感器輸出的微小信號放大,以滿足a/d轉換電路的輸入要求。
(4)傳感器電路部分
傳感器電路負責將所測的各個通道的壓力轉換成電壓信號,傳感器電路包含壓力傳感器陣列和恒流源電路,其中,壓力傳感器感應壓力產生電壓信號,每個通道需要一個壓力傳感器;恒流源電路負責為壓力傳感器供電,為保證壓力傳感器輸出穩定,每個壓力傳感器有單獨的恒流源供電。
如圖3所示,應用本發明對多通道的壓力數據進行采集的程序主流程,包括如下步驟:
多通道壓力采集系統上電后,
步驟(1):微處理器從參數存儲模塊讀取每個通道傳感器的初始參數、串口配置參數、a/d讀取spi總線配置參數、a/d配置參數、定時器配置參數等;
步驟(2):控制模塊將讀取到的各項參數對壓力傳感器、串口、a/d、spi、定時器進行初始化配置;
步驟(3):控制模塊對定時器進行清零和啟動計時,并開始控制通道0進行a/d轉換和采集,解算模塊根據通道0傳感器的參數和解算算法得到通道0傳感器的壓力數據,控制模塊臨時存儲通道0傳感器的壓力數據;
步驟(4):控制模塊進行通道切換并控制啟動下一個通道進行a/d采集、解算和臨時存儲等處理,直至完成最后一個通道的a/d采集、解算和臨時存儲等處理,完成一次全通道的掃描采集;
步驟(5):控制模塊讀取定時器計數值,并判定計數值是否大于等于設定值t,若計數值大于等于設定值t,則將所有的壓力數據通過串口發送給上位計算機;若計數值小于設定值t,則判斷串口是否收到上位計算機發送的新命令,命令主要包括參數更新存儲和固化、傳感器自校準等。
程序從步驟(5)返回步驟(3)循環執行,持續執行壓力數據的采集。