蔡永東,竺春祥,吉嘉偉,丁哲錸,鄭逸鑒,張珂,錢嘉程
(中國(guó)計(jì)量大學(xué) 工程訓(xùn)練中心,浙江杭州,310000)
本文設(shè)計(jì)了基于FPGA的電機(jī)測(cè)試系統(tǒng)。FPGA與MCU通過FSMC通訊,同時(shí)滿足高速加載和高速處理。FPGA的高速數(shù)據(jù)處理優(yōu)勢(shì)在電機(jī)測(cè)試過程中體現(xiàn)在系統(tǒng)對(duì)信號(hào)的測(cè)量誤差小,響應(yīng)快、精度高等方面,并且該系統(tǒng)易于小型化、可操作性強(qiáng)、集成度高。
圖1為電機(jī)測(cè)試系統(tǒng)總體結(jié)構(gòu)圖。系統(tǒng)硬件部分主要由STM32、FPGA、ADC模塊和DDS模塊組成。STM32主要包括以太網(wǎng)通信電路、SDRAM數(shù)據(jù)緩存電路等。FPGA包括脈沖輸出電路(CO模塊)、轉(zhuǎn)速/轉(zhuǎn)矩測(cè)量輸入模塊(CI模塊)、高速DDS模擬量輸出模塊ACM9767、高速 ADC模擬量輸入模塊ACM7606、低通濾波電路。裝置主要工作流程:系統(tǒng)與FPGA 的硬件連接初始化,F(xiàn)reeRTOS初始化,與此同時(shí),F(xiàn)PGA各路控制線程啟動(dòng)。當(dāng)接收到STM32的測(cè)試波形指令時(shí),F(xiàn)PGA測(cè)量相應(yīng)的峰峰值、頻率值;當(dāng)接收到STM32的輸出波形指令時(shí),輸出相應(yīng)波形的信號(hào)。
圖1 電機(jī)測(cè)試系統(tǒng)總體結(jié)構(gòu)圖
FPGA主控采用Cy-clone IV系列的芯片,型號(hào)為EP4CE40F23C8N,擁有 8個(gè) I/O Bank,532個(gè)用戶 I/O,適合多通道同步數(shù)據(jù)采集與處理場(chǎng)景。STM32主控芯片采用STM32H743ZIT6,單核480MHz及豐富的資源,適用于工業(yè)場(chǎng)景同時(shí)滿足高性能及顯示要求的應(yīng)用。使用EDA技術(shù)設(shè)計(jì)電路板,完成產(chǎn)品設(shè)計(jì),設(shè)計(jì)制作嵌入式最小系統(tǒng)電路、電機(jī)控制電路、接口電路。
硬件電路組成如圖2所示,主要包括:1.LCD顯示,2.雙通 道 DDS(ACM9767)AO輸 出,3.FPGA,4.STM32,5.網(wǎng) 線RJ45接口,6.邏輯電平輸出(DO-3.3V),7.脈沖輸出電路(CO),8.AI-8通道ADC模塊、ACM7606,9.上位機(jī)操作軟件,10.方波輸入頻率測(cè)量(CI)。
圖2 硬件電路實(shí)物
軟件程序設(shè)計(jì)總體結(jié)構(gòu)如圖3所示。包括上位機(jī)軟件開發(fā),嵌入式軟件開發(fā)和硬件編程語言設(shè)計(jì)。如圖4所示,上位機(jī)軟件使用QChart繪圖庫在Qt開發(fā)環(huán)境下,通過TCP/IP協(xié)議,建立與下位機(jī)的通信連接,實(shí)現(xiàn)電機(jī)系統(tǒng)實(shí)時(shí)的參數(shù)測(cè)量、數(shù)據(jù)存儲(chǔ)及可視化。嵌入式STM32使用Visual Studio及其插件Visual GDB在線調(diào)試,實(shí)時(shí)接收FPGA傳送的數(shù)據(jù),合理管理各個(gè)線程,將數(shù)據(jù)通TCP/IP協(xié)議傳送。FPGA使用Quartus Prime設(shè)計(jì)并制作測(cè)量控制電路系統(tǒng),進(jìn)行時(shí)序設(shè)計(jì)和檢驗(yàn),實(shí)現(xiàn)ADC采集、DDS輸出和FSMC協(xié)議通信等功能。
圖3 軟件整體結(jié)構(gòu)
圖4 上位機(jī)操作界面
該電機(jī)測(cè)試系統(tǒng)可以測(cè)量1-100KHz的脈沖輸入信號(hào),精度控制在0.2%以內(nèi),滿足電機(jī)實(shí)際轉(zhuǎn)矩轉(zhuǎn)速的脈沖頻率測(cè)量。高速ADC可以快速測(cè)量5-300Hz 的電機(jī)電壓的實(shí)際輸出量,通過FSMC與網(wǎng)口迅速傳給上位機(jī)實(shí)現(xiàn)實(shí)時(shí)控制。DO輸出3.3V電壓穩(wěn)定,可控制電機(jī)的開啟關(guān)閉等狀態(tài)CO輸出1-100KHz的PWM波(上位機(jī)默認(rèn)占空比設(shè)定為50%),頻率輸出穩(wěn)定,可作為直流電機(jī)的控制信號(hào)。在10-10KHz部分,AO 輸出波形的峰峰值穩(wěn)定,頻率輸出的相對(duì)誤差整體小于0.2%,可以作為電機(jī)其他轉(zhuǎn)矩動(dòng)態(tài)測(cè)量所需的信號(hào)。綜上測(cè)試結(jié)果顯示,該FPGA與MCU的異構(gòu)系統(tǒng)具有較快的響應(yīng)速度與較高的測(cè)量精度滿足電機(jī)實(shí)時(shí)動(dòng)態(tài)加載控制。如圖5,設(shè)計(jì)的CI和AI功能分別測(cè)量電機(jī)輸出的脈沖方波的頻率以及實(shí)時(shí)的波形圖。根據(jù)AI功能的實(shí)際測(cè)試,AI測(cè)量頻率范圍為5-300Hz,AI測(cè)量幅度范圍為-7V至7V,AI測(cè)量精度為1%-3%。
圖5 方波輸入頻率的相對(duì)誤差
如圖6,DO功能輸出3.35-3.48V的高電平到電機(jī)。如圖7,CO功能為自動(dòng)輸出頻率為1529Hz-3MHz的方波脈沖或者輸出處于頻率范圍中設(shè)定好脈沖次數(shù)的方波,脈沖次數(shù)滿時(shí)停止輸出。CO脈沖計(jì)數(shù)輸出設(shè)定脈沖輸出計(jì)數(shù)值與實(shí)際脈沖輸出值一致。圖8中方波(為綠色)加了0.005的下偏移量,正弦波(為藍(lán)色)加了0.01的下偏移量,測(cè)試輸出不同波形信號(hào)時(shí)產(chǎn)生的頻率誤差。
圖6 直流偏置DO輸出的相對(duì)誤差
圖7 方波輸出頻率CO的相對(duì)誤差
圖8 AO輸出頻率的相對(duì)誤差
下圖中電壓峰峰值相對(duì)誤差的單位為%,Vpp峰峰值單位為V,頻率單位為Hz。LogFreq為原頻率取log10。
本文針對(duì)傳統(tǒng)電機(jī)測(cè)試系統(tǒng)中步驟繁瑣,效率較低等問題,設(shè)計(jì)了基于FPGA的電機(jī)測(cè)控系統(tǒng),以STM32+FPGA為核心構(gòu)成電機(jī)測(cè)試系統(tǒng)的主控單元,以及采用FSMC總線通信和數(shù)據(jù)乒乓處理算法對(duì)雙核心進(jìn)行控制和數(shù)據(jù)流不間斷傳輸。通過實(shí)物設(shè)計(jì)和制作對(duì)系統(tǒng)可行性進(jìn)行了驗(yàn)證。實(shí)現(xiàn)了電機(jī)參數(shù)的測(cè)試及數(shù)據(jù)的處理和儲(chǔ)存,并能夠在上位機(jī)里實(shí)時(shí)顯示出來,響應(yīng)快并運(yùn)行穩(wěn)定。
圖9 AO輸出峰峰值(峰峰值5V設(shè)定)
圖10 正弦波輸出峰峰值相對(duì)誤差