產品概述
起源
為了滿足IBM-PC機及其兼容機用於
數據採集與控制的需要,國內外許多廠商生產了各種各樣的數據採集板卡(或I/O板卡)。這類板卡均參照IBM-PC機的匯流排技術標準
設計和生產,用戶只要把這類板卡插入IBM-PC機主機板上相應的I/O
擴展槽中,就可以迅速方便地構成一個數據採集與處理
系統,從而大大節省了硬體的研製時間和投資,又可以充分利用IBM-PC機的軟硬體資源,還可以使用戶集中精力對數據採集與處理中的理論和方法進行研究、進行系統設計以及程式的
編制等。
分類
基於PC匯流排的板卡種類很多,其分類方法也有很多種。按照板卡處理信號的不同可以分為模擬量輸入板卡(A/D卡)、模擬量輸出板卡(D/A卡)、開關量輸入板卡、開關量輸出板卡、脈衝量輸入板卡、多功能板卡等。其中多功能板卡可以集成多個功能,如數字量輸入/輸出板卡將模擬量輸入和數字量輸入/輸出集成在同一張卡上。根據匯流排的不同,可分為PXI/CPCI板卡和PCI板卡。
還有其它一些專用I/O板卡,如智慧型接口卡、虛擬存儲板(電子盤)、信號調理板、專用(接線)端子板等,這些種類齊全、性能良好的I/O板卡與IPC配合使用,使系統的構成十分容易。
主要類型
在工業現場,我們會安裝很多的各種類型的感測器,如壓力的、溫度的、流量的、聲音的、電參數的等等,受現場環境的限制感測器信號如
壓力感測器輸出的電壓或者電流信號不能遠傳或者因為感測器太多布線複雜,我們就會選用分散式或者遠程的
採集卡(模組)在現場把信號較高精度地轉換成數字量,然後通過各種遠傳通信技術(如485、232、
乙太網、各種
無線網路)把數據傳到計算機或者其他控制器中進行處理。這種也算作數據採集卡的一種,只是它對環境的適應能力更強,可以應對各種惡劣的工業環境。
數據採集卡,絕大多數集中在採集
模擬量、數字量、
熱電阻、熱電偶,其中熱電阻可以認為是非電量(其實本質上還是要用電流驅動來採集)其中模擬量採集卡和數字量採集卡用得是最廣泛的。
市場上新出一種二合一採集卡。二合一,指的是數字模擬採集卡,AV+DV採集卡,數字、模擬二合一,數字輸入輸出,模擬接口輸入(DV/AV/S-video)。
最後雖然說是
採集卡,但實際套用中經常需要它輸出
控制信號。採集卡廣泛套用於
安防監控、教育課件錄製、大屏拼接、多媒體錄播錄像、會議錄製、
虛擬演播室、
虛擬現實、安檢X光機、雷達圖像信號、VDR紀錄儀、醫療X光機、CT機、胃腸機、陰道鏡、工業檢測、智慧型交通、醫學影像、工業監控、儀器儀表、機器視覺等領域。
技術參數
視頻採集卡
● DV+AV+Audio全接口視頻捕獲卡,品質與性能的完美結合,SMD貼片電容,做工精良
●全接口
板卡,集成立體聲輸入連線埠,無需再轉接音效卡
●獨有音頻協處理功能,兩路立體聲輸入捕獲,聲音質量大幅提高,並杜絕音頻、視頻不同
●低溫最佳化設計,保證超長時間捕獲的穩定性
●雜波禁止電路,使捕獲的圖像畫質更清晰
●全接口配備,可捕獲任何視頻播放設備中的素材
視頻:720X576/352X288
音頻:8/16/32/44。1/48
制式:N/P制
驅動:標準的DSHOW驅動
數據採集卡
●通道數:就是
板卡可以採集幾路的信號,分為單端和差分。常用的有單端32路/差分16路、單端16路/差分8路
●採樣頻率:單位時間採集的數據點數,與AD晶片的轉換一個點所需時間有關,例如:AD轉換一個點需要T = 10uS,則其採樣頻率f = 1 / T為100K,即每秒鐘AD晶片可以轉換100K的數據點數。它用赫茲(Hz),常有100K、250K、500K、800K、1M、40M等
●快取的區別及它的作用:主要用來存儲AD晶片轉換後的數據。有
快取可以設定採樣頻率,沒有則不可以。快取有RAM和FIFO兩種:FIFO套用在數據
採集卡上,做數據緩衝,
存儲量不大,速度快。RAM是
隨機存取記憶體的簡稱。一般用於高速採集卡,存儲量大,速度較慢。
●解析度:
採樣數據最低位所代表的
模擬量的值,常有12位、14位、16位等(12
位解析度,電壓5000mV)12位所能表示的數據量為4096(2的12次方),即±5000 mV電壓量程內可以表示4096個電壓值,單位增量為(5000 mV)/ 4096=1.22 mV。解析度與A/D轉換器的位數有確定的關係,可以表示成FS/2
n。FS表示滿量程輸入值,n為A/D轉換器的位數。位數越多,解析度越高。
●精度:測量值和真實值之間的誤差,標稱數據
採集卡的測量準確程度,一般用滿量程(FSR,full scale range)的百分比表示,常見的如0.05%FSR、0.1%FSR等,如滿量程範圍為0~10V,其精度為0.1%FSR,則代表測量所得到的數值和真實值之間的差距在10mv以內。
●量程:輸入信號的幅度,常用有±5V、±10V 、0~5V 、0~10V ,要求輸入信號在量程內進行
●增益:輸入信號的放大倍數,分為程控增益和硬體增益,通過數據
採集卡的電壓放大晶片將AD轉換後的數據進行固定倍數的放大。由兩種型號PGA202 (1、10、100、1000) 和PGA203 (1、2、4、8)的增益晶片。
●觸發:可分為內觸發和外觸發兩種,指定啟動AD轉換方式。
系統實例
簡介
在一些工業現場中,設備長時間運行容易出現故障,為了監控這些設備,通常利用數據採集裝置採集他們
數據採集
運行時的數據並送給PC機,通過運行在PC機上的特定軟體對這些數據進行分析,以此判斷當前運行設備的狀況,進而採取相應措施。當前常用的數據採集裝置,在其系統軟體設計中,多採用單任務順序機制。這樣就存在系統安全性差的問題。這對於穩定性、實時性要求很高的數據採集裝置來說是不允許的,因此有必要引入嵌入式作業系統。下面以μC/OSII為作業系統平台,基於ARM7系列處理器,對一種高性能的
數據採集系統開發進行探索。
作業系統簡介
嵌入式作業系統μC/OSII(Microcontroller Operating System)是專為微控制器系統和軟體開發而設計的公開
原始碼的
搶占式實時多任務作業系統核心,是一段微控制器啟動後首先執行的背景程式,作為整個系統的框架貫穿系統運行的始終。對於對實時性和穩定性要求很高的
數據採集系統來說,引入μC/OSII無疑將大大改善其性能。
μC/OSII的特點可以概括為以下幾個方面:公開原始碼,代碼結構清晰、明了,注釋詳盡,組織有條理,可移植性好,可裁剪,可固化。核心屬於搶占式,最多可以管理60個任務。μC/OSII自1992年的第一版(μC/OS)以來已經有好幾百個套用,是一個經實踐證明好用且穩定可靠的核心。對μC/OSII的研究和套用都很多。
系統基本工作原理
套用時,
數據採集系統置於被監控的設備處,通過感測器對設備的電壓或者電流信號進行採樣、保持,並送入
A/D轉換器變成數位訊號,然後將該信號送到FIFO中。當FIFO中存放的數據到了一定數目時,由ARM7從FIFO中讀出,然後通過ARM7的
乙太網接口或者RS232送給
上位機。考慮到要監控的設備可能會很多,所以設計了多路採集通道,他們經過
模擬開關後再進入A/D轉換器。CPLD是整個系統的控制核心,他控制採集通道的切換、A/D轉換器的啟/停、轉換後的數據在FIFO中的存放地址發生器、產生
中斷請求以通知ARM7讀取存放在FIFO中的數據等。
系統硬體結構
該系統採用了Samsung公司的S3C4510B作為系統與
上位機溝通的橋樑,S3C4510B是基於
乙太網套用系統的高性價比16/32位RISC微控制器,他有如下幾個主要特點:
硬體方面內含一個由ARM公司設計的16/32位ARM7TDMIRISC處理器核,ARM7TDMI為低功耗、高性能的16/32核,最適合用於對價格及功耗敏感的套用場合。S3C4510B通過在ARM7TDMI核內容基礎上擴展一系列完整地通用外圍器件。
片上資源包括2個帶緩衝描述符(bufferdescriptor)的HDLC通道;2個UART通道;2個GDMA通道;2個32位
定時器;18個可程式的I/O口。還有中斷控制器;DRAM/SDRAM控制器;ROM/SRAM和FLASH控制器;系統管理器;1個內部32位
系統匯流排仲裁器;1個外部
存儲器控制器等片內的邏輯控制電路。
這些為μC/OSII的移植提供了優良的物理資源。
軟體支持方面他有配套的代碼編輯調試環境ADS12和JTAG線上調試功能,使S3C4510B晶片軟體可以直接用C編寫,這就使μC/OSII的植入成為可能。
12位高速
A/D轉換電路採用AnalogDevices的
AD574,該電路輸出具有三態鎖存功能。預處理電路包括了電流電壓互感器、隔離電路和同步採樣電路,他可以將信號轉換成與AD574相匹配的量值,供後續處理。通訊電路採用常用的
乙太網接口與
上位機相連,而232接口可作為備用,這樣該裝置既可作為攜帶型系統使用,也可通過網路來對設備實施實時監控。
軟體設計
軟體部分要分別編寫S3C4510B部分的程式和CPLD控制程式。前者可分為μC/OSII的移植和各個應用程式的編寫,後者用
VHDL語言實現。
對於S3C4510B部分,根據整個裝置實現的功能和對他的要求進行系統任務分割,並根據實際需要為各個任務分配優先權。系統大致可分為如下幾個任務:初始化CPLD控制參數;對FIFO的讀取;與
上位機的TCP/IP通訊;與上位機的
串口通訊。對應每個任務,需要編寫相應的應用程式,
軟體設計部分的關鍵技術有:
(1)μC/OSII核心向S3C4510B中的移植,要根據處理器的特點合理地修改μC/OSII的3個與處理器相關的檔案:OS_CPUH,OS_CPU_AASM,OS_CPU_C.C。主要是將檔案中的
彙編指令,改為ARM7的彙編指令,並根據CPU的特點對檔案中
暫存器的初值進行改寫。
(2)記憶體配置問題。對於
存儲器容量的設計,要綜合考慮μC/OSII核心代碼和應用程式代碼的大小。每個任務是獨立運行的,必須給每個任務提供單獨的棧空間(RAM),RAM總量的計算公式為:
RAM總量=應用程式的RAM需求+核心數據區的RAM需求+各任務棧需求之總和+最多
中斷嵌套所需
堆疊。
(3)
TCP/IP協定在μC/OSII中的實現。為了滿足
嵌入式設備與Internet網路直接交換信息的要求,在μC/OSII中又移植了LwIP協定棧。
LwIP是瑞士計算機科學院(SwedishInstituteofComputerScience)的AdamDunkels等開發的一套用於嵌入式系統的開放
原始碼TCP/IP協定棧。LwIP的含義是LightWeight(輕型)IP協定。LwIP可以移植到作業系統上,也可以在無作業系統的情況下獨立運行。LwIPTCP/IP實現的重點是在保持TCP協定主要功能的基礎上減少對RAM的占用,一般他只需要幾十k的RAM和40k左右的ROM就可以運行,這使LwIP協定棧適合在低端
嵌入式系統中使用。
LwIP的特性有:支持多網路接口下的IP轉發;支持
ICMP協定;包括實驗性擴展的的UDP(
用戶數據報協定);包括阻塞控制、RTT估算、快速恢復和快速轉發的TCP(
傳輸控制協定);提供專門的內部回調接口(rawAPI)用於提高應用程式性能。
LwIP可以很容易地在μC/OSII的調度下,為系統增加網路通信和
網路管理功能。LwIP協定棧在設計時就考慮到了將來的移植問題,他把所有與硬體,OS,
編譯器相關的部份獨立出來,放在/src/arch目錄下。因此LwIP在μC/OSII上的實現就是修改這個目錄下的檔案,其他的檔案一般不應該修改。在驅動中主要是根據S3C4510B內的
乙太網控制
特殊功能暫存器,編寫網路接口的處傳送包、接收包函式,初始化以及用於
乙太網控制器的外部
中斷服務程式。