基于PC104總線的實時信號采集處理系統
本系統在信號采集板中采用了R=6 Ω,故得到的放大倍數在0~1001之間,保證了該芯片輸出給A/D轉換器的信號電平在0~10 V之間。信號采集板的多路選擇開關采用了AD公司的ADG508A八選一高速選通開關。系統通過2片ADG508A并行控制模擬信號的輸入,實現了對16路信號的實時采集。多路開關的輸入通斷是通過控制使能引腳EN以及CH0,CH1,CH2來完成的,FPGA輸出的地址的最高位分別接到2片ADG508A的使能端,地址低3位分別接入ADG508A的AO,A1,A2。信號采集板的A/D轉換芯片采用了BB公司的ADS7805,其具有高速、低功耗的特點。在5 V的工作電壓下其最高的轉換頻率達到了100 kHz。該芯片內部自帶有時鐘、電壓基準和采樣保持等電路,極大的簡化了用戶的電路設計,并且提高了系統的穩定性。ADS7805采用了逐次逼近式工作原理,A/D轉換結果通過16位數據總線并行輸出,輸入的模擬信號電平范圍為0~10 V,其工作時序圖如圖3所示。本文引用地址:http://www.j9360.com/article/201610/306028.htm
3 軟件系統設計
實時信號采集處理系統的軟件部分包括了信號采集板的FPGA控制邏輯和上位機控制板運行的應用程序。信號采集板在FPGA控制邏輯下實現了信號的采集和傳輸,上位機控制板通過應用程序完成人機界面的交互和數據控制處理。
3.1 FPGA控制邏輯的設計
FPGA控制邏輯是整個數據采集過程的核心部分,它所實現的功能包括:對多路選通開關ADG508A的控制,對地址總線進行譯碼,對A/D轉換模塊ADS7805的控制,將采集的數據在FIFO中進行存儲等。FPGA控制邏輯工作時的操作時序如圖4所示,其在一個總線操作周期內的工作流程按如下順序進行:
(1)FPGA上電后,首先進行全局復位,數據總線設置為三態,地址鎖存清零。
(2)等待BALE信號進入下降沿的有效狀態,對PC104的地址總線進行鎖存。
(3)等待IOR/W信號有效,對地址進行解碼,將鎖存的地址信息譯碼。
(4)對地址進行比對,若比對正確則準備就緒,若比對不正確則將地址鎖存器清零,數據總線設置為三態。
(5)等待PC104數據周期有效時,接收上位機控制板傳輸過來的動作命令數據。
(6)控制INA103芯片對輸入的模擬信號進行調理。
(7)控制ADG508A芯片進行通道選擇。
(8)控制AD7805芯片開始進行數據采集。
(9)以輸入輸出端口的OE信號為觸發脈沖,對所采集的信號數據進行鎖存控制。
(10)等待OE信號拉低,采集數據的鎖存結束,將數據通過總線傳輸給上位機控制板。
(11)等待數據傳輸周期結束,將地址鎖存清零,數據總線設置為三態。
(12)等待下一個時鐘周期到來,再次重復進行讀寫操作。
3.2 應用程序的設計
上位機控制板運行的應用程序主要完成用戶對信號采集板的控制和監視,將所采集到的信號實時在顯示器上進行更新顯示。由于整個系統在外場進行使用時的環境條件往往比較惡劣,且經常會遇到斷電的情況,因此在上位機控制板運行了Windows XP Embedded操作系統來代替了傳統的Windows XP操作系統,從而提高了系統整體的可靠性。本系統的應用程序采用VC++進行源代碼的編寫和調試,應用程序調試編譯成
功后,生成exe可執行程序,在操作系統上電后自動按照默認配置開始運行。應用程序啟動后,首先通過PC104總線將用戶對信號采集板的配置命令發給FPGA控制邏輯,然后FPGA控制邏輯按照上位機具體的指令對多路控制開關芯片,信號調理芯片和A/D轉換芯片進行控制,開始對信號的采集。上位機在接收到中斷信號后對緩存中的信號數據進行讀取和處理,進而在應用程序中對信號數據進行顯示,同時將數據實時進行存儲,供事后做進一步的分析和處理。如圖5所示。
4 結語
本文基于PC104總線,采用了上位機控制板和信號采集板相結合的方式,實現了用戶對信號的實時采集和處理。信號采集板的所有控制功能由FPGA芯片來完成,大大減少電路板的器件數量,同時降低了系統成本,提高系統的可靠性。運行在上位機控制板嵌入式操作系統的應用程序完成了采集數據的實時顯示及用戶命令的配置,使用戶在使用時可以直觀的了解整個系統的工作狀況,并根據現場需要對信號采集的工作參數進行調整。該實時信號采集系統具有較低的功耗、穩定的性能、精簡的體積、和優良的抗震性能,其已經作為某型裝備的便攜式外場檢測設備進行了實地應用,整體運行可靠穩定,具有較廣的推廣前景和較好的軍事經濟效益。
評論