新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于FPGA技術(shù)高頻疲勞試驗(yàn)機(jī)控制器的設(shè)計(jì)

基于FPGA技術(shù)高頻疲勞試驗(yàn)機(jī)控制器的設(shè)計(jì)

作者: 時(shí)間:2017-06-04 來源:網(wǎng)絡(luò) 收藏

本文引用地址:http://m.butianyuan.cn/article/201706/348102.htm

1簡介

現(xiàn)場可編程門陣列(FieldProgrammable Gate Array)是美國Xilinx公司于1984年首先開發(fā)的一種通用型用戶可編程器件。既具有門陣列器件的高集成度和通用性,又有可編程邏輯器件用戶可編程的靈活性。

由可編程邏輯單元陣列、布線資源和可編程的I/O單元陣列構(gòu)成,一個(gè)FPGA包含豐富的邏輯門、寄存器和I/O資源。一片F(xiàn)PGA芯片就可以實(shí)現(xiàn)數(shù)百片甚至更多個(gè)標(biāo)準(zhǔn)數(shù)字集成電路所實(shí)現(xiàn)的系統(tǒng)。

FPGA的結(jié)構(gòu)靈活,其邏輯單元、可編程內(nèi)部連線和I/O單元都可以由用戶編程,可以實(shí)現(xiàn)任何邏輯功能,滿足各種設(shè)計(jì)需求。其速度快,功耗低,通用性強(qiáng),特別適用于復(fù)雜系統(tǒng)的設(shè)計(jì)。使用FPGA還可以實(shí)現(xiàn)動(dòng)態(tài)配置、在線系統(tǒng)重構(gòu)(可以在系統(tǒng)運(yùn)行的不同時(shí)刻,按需要改變電路的功能,使系統(tǒng)具備多種空間相關(guān)或時(shí)間相關(guān)的任務(wù))及硬件軟化、軟件硬化等功能。

鑒于控制規(guī)模比較大,功能復(fù)雜,故我們在研制過程中,在傳統(tǒng)試驗(yàn)機(jī)的基礎(chǔ)上,通過FPGA技術(shù)及微機(jī)技術(shù)兩者的結(jié)合,來全面提升系統(tǒng)的性能,使整機(jī)的工作效率、控制精度和電氣系統(tǒng)可靠性得到了提高,且操作方便而又不乏技術(shù)的先進(jìn)性。

2控制器結(jié)構(gòu)及內(nèi)容

本控制系統(tǒng)的總體結(jié)構(gòu),下位機(jī)是整個(gè)控制器的核心。用于實(shí)現(xiàn)產(chǎn)生控制試驗(yàn)機(jī)的控制信號和數(shù)據(jù),反饋信號的處理,以及和上位機(jī)進(jìn)行數(shù)據(jù)通信。其控制功能強(qiáng)弱也直接影響著整個(gè)控制器性能的好壞。圖中波形發(fā)生器是用于激勵(lì)和保持電磁激振器的振動(dòng)。在此,波形發(fā)生器應(yīng)輸出正弦波。

3系統(tǒng)采取的技術(shù)路線

系統(tǒng)在實(shí)現(xiàn)技術(shù)參數(shù)、功能要求的基礎(chǔ)上,結(jié)合目前微機(jī)及FPGA等微電子技術(shù),采取了以下主要技術(shù)路線:

(1)下位機(jī)是系統(tǒng)控制的核心。由于本系統(tǒng)控制規(guī)模相對比較復(fù)雜,控制對象具一定特殊性(如高頻率,高負(fù)荷等),且牽涉到控制電機(jī),故不采用傳統(tǒng)的8位機(jī),而是考慮采用功能相對更強(qiáng)大,速度更快的16位機(jī)—87C196系列。

(2)激振器要求輸入波形為正弦波,試驗(yàn)的頻率范圍為80~250Hz.另外,系統(tǒng)還應(yīng)該能夠進(jìn)行掃頻試驗(yàn)。在掃頻試驗(yàn)中,系統(tǒng)以1Hz為步長進(jìn)行掃頻(粗調(diào)),再在粗調(diào)的基礎(chǔ)上進(jìn)行微調(diào)(以0.1Hz為步長),以確定系統(tǒng)的共振點(diǎn)。可以看出,能產(chǎn)生精度為0.1Hz波形的電路模塊是整個(gè)系統(tǒng)設(shè)計(jì)中很關(guān)鍵的一部分,也是設(shè)計(jì)難點(diǎn)之一。這部分如通過或其它專用芯片則不能或很難實(shí)現(xiàn)。系統(tǒng)采用FPGA作波形發(fā)生器,見圖1中虛線框所示部分。這樣做的優(yōu)點(diǎn)是:高速(一般芯片頻率至少幾十兆,甚至上百兆)且能滿足上述精度要求;采用數(shù)字電路實(shí)現(xiàn),抗干擾性好;能把其它邏輯電路也集成至該芯片中,省掉了許多分立元件,同時(shí)也減少了體積;能夠按需改變波形。

(3)直流調(diào)速通過變壓實(shí)現(xiàn),而變壓則通過采用晶閘管的可控整流器來完成。通過輸出可變電壓給移相觸發(fā)器,觸發(fā)器輸出可控導(dǎo)通角給可控整流器,實(shí)現(xiàn)電機(jī)速度的調(diào)整。有利于提高系統(tǒng)的可靠性。

(4)系統(tǒng)部分重要信號用數(shù)字濾波器濾波,該數(shù)字濾波器用FPGA實(shí)現(xiàn)。與軟件濾波相比,此方法有利于改善信號的濾波效果,且濾波速度得到很大提高。

4部分模塊設(shè)計(jì)

FPGA部分可劃分成兩個(gè)模塊,其中正弦波發(fā)生器模塊又可細(xì)分成幾個(gè)小模塊,如圖2所示。

4.1鎖存器設(shè)計(jì)

鎖存器用來將送來的頻率數(shù)據(jù)鎖存穩(wěn)定在FPGA中,可以用片內(nèi)的鎖存器資源(或用觸發(fā)器)來構(gòu)成。

4.2運(yùn)算器設(shè)計(jì)

運(yùn)算器是用來將頻率數(shù)據(jù)轉(zhuǎn)換成正弦波點(diǎn)與點(diǎn)之間的定時(shí)數(shù)據(jù)。該運(yùn)算器實(shí)際上最終可轉(zhuǎn)換成一除法器。該除法器描述如下:

—VECTOR(WIDTH—R-1 DOWNTO 0));

END COMPONENT;

上述描述實(shí)際上是調(diào)用了Altera公司的參數(shù)化模塊庫(LPM)中的一個(gè)元件。元件描述后,只要在程序中用Generic map和port map語句映射該元件即可。所要注意的是,上述口信號remainder是numerator和denominator模運(yùn)算的結(jié)果,所以應(yīng)將remainder與denominator/2相比較,實(shí)際結(jié)果應(yīng)在比較的基礎(chǔ)上決定加1還是不加1.

4.3設(shè)計(jì)

根據(jù)運(yùn)算器傳來的定時(shí)數(shù)據(jù)定時(shí)。它可以通過對基準(zhǔn)時(shí)鐘計(jì)數(shù)來實(shí)現(xiàn),當(dāng)定時(shí)時(shí)間一到,就觸發(fā)波形的輸出。

設(shè)計(jì)中采用了兩個(gè)計(jì)數(shù)模塊來同時(shí)計(jì)數(shù),一個(gè)模塊計(jì)數(shù)時(shí)鐘的上邊沿,而另一模塊則計(jì)數(shù)時(shí)鐘的下邊沿。這樣相當(dāng)于使系統(tǒng)時(shí)鐘頻率提高了一倍,充分利用了系統(tǒng)資源。

4.4波形輸出

波形輸出是當(dāng)滿足定時(shí)要求觸發(fā)后就輸出此時(shí)的正弦值,多個(gè)點(diǎn)的觸發(fā)輸出就形成了一個(gè)正弦波。

為節(jié)省芯片資源,這部分求某時(shí)正弦值的功能不采用構(gòu)造運(yùn)算器來算出正弦值,而是利用查表結(jié)構(gòu)。象Xilinx公司FPGA芯片則可以利用CLB塊來配置RAM或直接利用Logiblox來生成。還有象Altera公司的Flex10k系列就用查找表結(jié)構(gòu)(LUT)來構(gòu)建片內(nèi)ROM或RAM.在工程文件中創(chuàng)建RAM或ROM塊以后,可以通過將各時(shí)刻的正弦值(以ASCII字符表示)寫進(jìn)MIF文件(初始化文件)中,從而存儲在RAM或ROM塊中。在定時(shí)器觸發(fā)后生成該時(shí)的地址,通過查詢該RAM或ROM塊就可輸出該時(shí)得正弦值。


5芯片的具體實(shí)現(xiàn)

本系統(tǒng)的FPGA采用Altera公司的Flex10k系列芯片。芯片利用開發(fā)軟件Max+plusII將各個(gè)模塊(圖1虛線框部分)用VHDL語言描述并輸入,由軟件自動(dòng)編譯、綜合、布局和布線,生成編程用的數(shù)據(jù)文件,加載到FPGA的配置存儲單元。對FPGA芯片進(jìn)行配置可有多種模式,由于本系統(tǒng)中有單片機(jī),所以采用串行從模式,省掉了用一片EPROM來存儲編程數(shù)據(jù)。當(dāng)系統(tǒng)上電時(shí),單片機(jī)自動(dòng)將存在其內(nèi)部的配置數(shù)據(jù)送到FPGA內(nèi)部存儲單元中。

這個(gè)技術(shù)基本上多運(yùn)用于電路方面。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉