李紅波,李盛,陳恒
(西京學(xué)院 控制工程學(xué)院,西安 710123)
DSC的USB多通道同步數(shù)據(jù)采集系統(tǒng)設(shè)計*
李紅波,李盛,陳恒
(西京學(xué)院控制工程學(xué)院,西安710123)
為了降低USB多通道同步數(shù)據(jù)采集系統(tǒng)的設(shè)計難度和復(fù)雜度,本文利用單一DSC(數(shù)字信號控制器)芯片設(shè)計了一款USB四通道同步數(shù)據(jù)采集系統(tǒng)。通過軟件編程DSC內(nèi)設(shè)的ADC、定時器和USB2.0通信模塊等,實現(xiàn)同步采集并實時上傳采集數(shù)據(jù)到Lab VIEW上位機。本文結(jié)合三相有功功率測量實例,詳細介紹了該同步數(shù)據(jù)采集系統(tǒng)的設(shè)計過程,為多通道同步數(shù)據(jù)采集系統(tǒng)設(shè)計提供了一種理想方案。
同步采集;DSC;Cortex-M4;Lab VIEW
目前,設(shè)計USB多通道同步數(shù)據(jù)采集的方案較多。上位機軟件較多采用VC++、VC.NET或Lab VIEW等軟件來設(shè)計,其中基于圖形化編程方法的Lab VIEW軟件專業(yè)易用,應(yīng)用較多。下位機硬件較多由高性能控制器和同步采樣芯片進行組合設(shè)計,但因其在采樣速度、集成度、設(shè)計復(fù)雜度和調(diào)試難度等的不同,主要有4種方案:第一種,采用USB單片機和同步采樣芯片構(gòu)成的方案[7],這種方案設(shè)計簡單,但由于數(shù)據(jù)采用串行輸出,采樣速度低,不適合高速實時采樣的場合。第二種,采用ARM處理器、USB接口芯片和同步采樣芯片構(gòu)成的方案[3],該方案集成度不高,設(shè)計復(fù)雜。第三種,采用高性能FPGA/CPLD作為同步采樣芯片和USB接口芯片的時序發(fā)生器和邏輯控制器的數(shù)據(jù)采集系統(tǒng)[2,5-6],設(shè)計較復(fù)雜,調(diào)試較困難。第四種,FPGA/CPLD、32位控制器和同步采樣芯片構(gòu)成的數(shù)據(jù)采集系統(tǒng)[1],該設(shè)計靈活性高,但設(shè)計復(fù)雜,調(diào)試困難,性價比低。本文利用單片DSC進行設(shè)計,不僅保證了性能,而且大大降低了數(shù)據(jù)采集系統(tǒng)的設(shè)計難度、復(fù)雜度和調(diào)試難度,縮短了開發(fā)周期。
DSC數(shù)字信號控制器是意法半導(dǎo)體公司生產(chǎn)的基于Cortex-M4核的高性能片上系統(tǒng)控制器,專門為解決模數(shù)混合信號的控制應(yīng)用問題而推出的。該控制器內(nèi)部帶有DSP擴展、FPU浮點運算單元和高級模擬外設(shè)。4個獨立的12位ADC轉(zhuǎn)換器支持超高速雙模式操作,使得6位采樣時,速度高達18 Msps;12位采樣時速度高達10 Msps。另外,全速USB2.0通信接口,支持DMA雙緩沖區(qū)工作,使數(shù)據(jù)傳輸速率達到了最高極限。該主控器不僅可以方便地用來設(shè)計三相電能表、三相電機控制器、傳感器以及音視頻濾波等混合信號電路系統(tǒng),而且還可廣泛應(yīng)用于醫(yī)療、便攜式設(shè)備的場合,成為測控領(lǐng)域的集成解決方案。
2.1 系統(tǒng)構(gòu)成
系統(tǒng)主要由4路信號輸入電路、4路信號調(diào)理電路、
DSC控制器和Lab VIEW上位機組成,多通道數(shù)據(jù)采集系統(tǒng)框圖如圖1所示。
圖1 多通道同步數(shù)據(jù)采集系統(tǒng)框圖
其中,被測模擬信號接入信號輸入電路,完成4路信號隔離輸入;信號調(diào)理電路完成4路輸入信號的放大和極性變換功能,以滿足ADC轉(zhuǎn)換器的信號輸入要求;DSC控制器作為系統(tǒng)主控,負責(zé)定時采集和USB數(shù)據(jù)通信; Lab VIEW上位機負責(zé)接收采集數(shù)據(jù),及時處理后將數(shù)據(jù)顯示出來并存儲,完成采集的目的。
2.2 信號輸入電路
高電壓大電流交流信號經(jīng)過電壓互感器TV1~TV3和電流互感器TA1~TA3隔離輸入后,信號被衰減到一定的范圍內(nèi)。信號輸入電路如圖2所示,其中uia、uib和uic分別是電流互感器的二次電流在負載Ra、Rb和Rc上的壓降,輸出取樣電壓范圍為-0.5~+0.5 V。uva、uvb和uvc是電壓互感器的二次輸出電壓,輸出取樣電壓范圍-1.5~+1.5 V。
圖2 信號輸入電路
2.3 信號調(diào)理電路
從信號輸入電路來的信號,再經(jīng)過后級運算放大器放大,其中電流信號增益為3;然后通過運算放大器把雙極性信號變換到單極性信號0~3.0 V以內(nèi),以適應(yīng)ADC量程,可以保證采樣精度。信號調(diào)理電路如圖3所示。由于3路的電壓電流信號調(diào)理電路基本相同,圖中僅給出了1路的電流電壓調(diào)理電路圖。
圖3 信號調(diào)理電路
2.4 ADC轉(zhuǎn)換器
DSC控制器內(nèi)設(shè)的4個ADC轉(zhuǎn)換器,最多可連接16路外部模擬輸入信號,模擬輸入通道只有被編入規(guī)則組或注入組的才能被采集。獨立的ADC在雙模式工作時ADC1(主)和ADC2(從)組成一組,ADC3(主)和ADC4(從)組成二組。工作時每個ADC又有4種采樣模式選擇:單次、連續(xù)、掃描和間斷模式,但當(dāng)工作于雙模式時,從ADC采樣模式服從主ADC采樣模式,并且主從ADC支持同步數(shù)據(jù)采集。當(dāng)兩組ADC在同一個觸發(fā)信號和相同的時鐘驅(qū)動下時,就可實現(xiàn)四通道數(shù)據(jù)同步采集。同步采集ADC結(jié)構(gòu)示意圖如圖4所示。同步時鐘由系統(tǒng)時鐘經(jīng)過分頻器后提供。
ADC轉(zhuǎn)換器共有11路的觸發(fā)源,分別是定時器觸發(fā)/捕獲比較事件信號(TIM1_CC3、TIM1_TRGO、TIM1_TRGO2、TIM2_TRGO、TIM3_TRGO、TIM4_ TRGO、TIM8_TRGO、TIM8_TRGO2、TIM15_TRGO)和外部中斷線輸入信號(EXTI Line2和EXTI Line 11),它們分別被連接到EXT2~EXT14上。
2.5 USB2.0通信接口
USB2.0接口工作于全速模式,支持高達12 Mbps的數(shù)據(jù)傳輸率。該接口通過和控制器共享一塊512字節(jié)的片內(nèi)RAM緩沖區(qū)(包緩沖區(qū))實現(xiàn)上位機內(nèi)存和控制器內(nèi)存進行數(shù)據(jù)交互,最多支持8個端點,每個端點最多可使用64字節(jié)緩沖區(qū)。片內(nèi)專設(shè)了Arbiter部件和雙緩沖區(qū)操作的DMA機制,使得主機與控制器可以進行零遲延的高速訪問,提高了傳輸效率。通信接口USB2.0結(jié)構(gòu)示意圖如圖5所示。
圖4 同步采集ADC結(jié)構(gòu)示意圖
圖5 USB2.0通信接口結(jié)構(gòu)示意圖
系統(tǒng)軟件設(shè)計包括設(shè)備固件程序設(shè)計和上位機Lab-VIEW應(yīng)用程序設(shè)計。
3.1 設(shè)備固件程序設(shè)計
設(shè)備固件程序設(shè)計是基于CMSIS(Cortex Micro Controller Soft Ware Interface Standard)軟件架構(gòu)標(biāo)準設(shè)計的,主程序通過調(diào)用STM32庫函數(shù)完成程序設(shè)計。該程序主要包括ADC配置、定時器T1定時觸發(fā)配置和USB端點配置等三部分。
(1)ADC配置
工作在雙模式時,4個ADC模塊,形成兩組同步采集組,每組在同步觸發(fā)信號下,同時啟動主從ADC轉(zhuǎn)換器,實現(xiàn)4路同步數(shù)據(jù)采集。本系統(tǒng)采用TIM1_CC3事件作為同步觸發(fā)信號,ADC配置的主要代碼如下:
(2)定時器T1定時觸發(fā)配置
TIM1_CC3事件是由Timer1定時器的比較輸出單元產(chǎn)生的,所以需要配置定時器1的比較輸出單元。配置的主要代碼如下:
(3)USB端點配置
在本系統(tǒng)中,采用端點0進行控制傳輸,用于USB設(shè)備枚舉。端點1為IN批量上傳端點,用來把采集后的數(shù)據(jù)上傳至Lab VIEW上位機。端點2為OUT批量傳輸端點,用來接收上位機的命令,實現(xiàn)上位機對數(shù)據(jù)采集過程的管理與控制。根據(jù)固件范例,進行修改相關(guān)描述符(設(shè)備描述符、接口描述符、端點描述符等)、設(shè)備接口函數(shù)和USB通信代碼等,可方便地進行USB設(shè)備固件開發(fā)。
端點1和端點2的主要配置代碼如下:
3.2 上位機應(yīng)用程序
上位機軟件采用Lab VIEW進行設(shè)計,利用LibUSBWin32驅(qū)動程序可方便地實現(xiàn)Lab VIEW與USB設(shè)備的互聯(lián)通信。LibUSB-Win32是一個開源的通用USB設(shè)備驅(qū)動程序。該驅(qū)動程序允許使用者在不寫任何一行核心驅(qū)動程序代碼的情況下,可以訪問Windows系統(tǒng)上的任意一個USB設(shè)備。該驅(qū)動程序支持批量和中斷傳輸,支持USB規(guī)范中定義的所有標(biāo)準設(shè)備請求和支持USB設(shè)備制造商的自定義請求。LibUSB-Win32遵守LGPL和GPL許可協(xié)議,不只用于開源軟件而且允許用于商業(yè)軟件。
圖6是該系統(tǒng)的二瓦計法測量三相電路有功功率的實驗系統(tǒng)界面。
圖6 三相電路有功功率測量實驗系統(tǒng)界面
二瓦計法測量有功功率需要4個參量,本實驗在50 ksps采樣速度下,對Uab、Ia、Ubc和Ib進行同步采樣,并在Lab VIEW中進行數(shù)據(jù)處理,繪制實時曲線和及時顯示平均值、有效值、基波頻率和相位等相關(guān)參數(shù)。實驗證明:本系統(tǒng)具有構(gòu)建簡單、數(shù)據(jù)采集精度高,上傳速度快,開發(fā)調(diào)試方便等特點。
本系統(tǒng)采用單芯片設(shè)計,結(jié)合外部信號輸入電路和調(diào)理電路就可完成采集系統(tǒng)的構(gòu)建,通過Lab VIEW上位機實時顯示數(shù)據(jù)信息,無需外擴USB接口芯片和同步采樣芯片,從而降低了設(shè)計難度和復(fù)雜度,提高了系統(tǒng)穩(wěn)定性。
[1]林偉,王毅男.基于FPGA與STM32的低功耗數(shù)據(jù)采集系統(tǒng)[J].化工自動化及儀表,2015,43(2):210-214.
[2]劉文斌,朱名日,鄭丹平,等.基于FPGA的大容量數(shù)據(jù)采集系統(tǒng)設(shè)計[J].計算機測量與控制,2014,22(11):3751-3753.
[3]潘玲嬌,張自嘉.嵌入式16通道同步數(shù)據(jù)采集系統(tǒng)設(shè)計[J].儀表技術(shù)與傳感器,2013(11):91-92.
[4]張旭,亓學(xué)廣,李世光,等.基于STM32電力數(shù)據(jù)采集系統(tǒng)的設(shè)計[J].電子測量技術(shù),2010,33(11):90-91.
[5]候朝勇,胡學(xué)浩,莊童.基于FPGA的多路同步實時數(shù)據(jù)采集系統(tǒng)[J].電子技術(shù)應(yīng)用,2009(10):103-104.
[6]李朋勃,張洪平.基于USB2.0的高速數(shù)據(jù)采集系統(tǒng)[J].電子技術(shù)應(yīng)用,2009(10):109-111.
[7]劉紅梅,李平舟,郭志華.基于USB2.0的同步數(shù)據(jù)采集系統(tǒng)的設(shè)計[J].現(xiàn)代電子技術(shù),2007(9):136-137.
李紅波(講師),主要研究方向為數(shù)據(jù)獲取與控制、嵌入式技術(shù);李盛(副教授),主要研究方向為生物醫(yī)學(xué)信號處理與儀器、虛擬儀器技術(shù);陳恒(副教授),主要研究方向為電能變換與質(zhì)量檢測、機器人技術(shù)。
USB Multi-channel Synchronous Data Collection System Based on DSC
Li Hongbo,Li Sheng,Chen Heng
(College of Control Engineering,Xijing University,Xi’an 710123,China)
In order to reduce the difficulty and complexity of USB multi-channel synchronous data collection system,a new kind of fourchannel USB data synchronous collection system is proposed using only one DSC(Digital Signal Controller)chip.The system can collect four-channel data and upload to the Lab VIEW synchronously,which is composed of ADC which is embedded in DSC,the timer and the USB 2.0 communication module.The design method of the three-phase active power measurement is introduced in detail,which provides a better resolution for the multi-channel synchronous data collection system.
synchronous sampling;DSC;Cortex-M4;Lab VIEW
TN273
A
國家自然科學(xué)基金(典型非對稱聲帶發(fā)聲機制的空氣動力學(xué)建模及高速攝影研究,61371163)。
(責(zé)任編輯:楊迪娜2016-05-30)