《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 業(yè)界動(dòng)態(tài) > 基于FPGA的控制:數(shù)百萬個(gè)供您遣用的晶體管(常見問題)

基于FPGA的控制:數(shù)百萬個(gè)供您遣用的晶體管(常見問題)

2008-06-24
作者:美國國家儀器

概覽

現(xiàn)場可編程門陣列(FPGA)技術(shù)提供了專用硬件電路所特有的可靠性、真正的并行執(zhí)行和閃電般的快速閉環(huán)控制" title="閉環(huán)控制">閉環(huán)控制性能。本文給出了關(guān)于可重配置" title="可重配置">可重配置的基于FPGA的硬件目標(biāo)平臺(tái)在閉環(huán)控制應(yīng)用中使用的常見問題(FAQ)的解答。

?

圖1.NI CompactRIO是一個(gè)小而堅(jiān)固的基于FPGA的控制系統(tǒng)

?

什么是現(xiàn)場可編程門陣列(FPGA)?

一個(gè)FPGA是一種包含有一個(gè)可重配置的門陣列邏輯電路矩陣的設(shè)備。通過配置,F(xiàn)PGA的內(nèi)部電路以一定方式相連接,從而創(chuàng)建了軟件應(yīng)用的一個(gè)硬件實(shí)現(xiàn)。與處理器不同,F(xiàn)PGA使用專用硬件進(jìn)行邏輯處理,而不具有操作系統(tǒng)。FPGA在本質(zhì)上是完全并行的,故不同的處理操作不必競爭相同的資源。因此,增加額外的處理時(shí),應(yīng)用某一部分的性能不會(huì)受影響。而且,多個(gè)控制循環(huán)可以以不同的速率在單個(gè)FPGA設(shè)備上運(yùn)行。基于FPGA的控制系統(tǒng)" title="控制系統(tǒng)">控制系統(tǒng)可以加強(qiáng)關(guān)鍵互鎖邏輯,也可以通過設(shè)計(jì)防止操作人員強(qiáng)奪I/O" title="I/O">I/O。然而,不同于擁有固定硬件資源的硬連接的印制電路板(PCB)設(shè)計(jì),基于FPGA的系統(tǒng)可以完全重新連接其內(nèi)部電路,以支持控制系統(tǒng)在現(xiàn)場部署后可以重新配置。FPGA設(shè)備提供了專用硬件電路所特有的性能與可靠性。

單個(gè)FPGA可以通過在單個(gè)集成電路(IC)芯片上集成數(shù)百萬個(gè)邏輯門以代替數(shù)以千計(jì)的分立元件。一個(gè)FPGA芯片的內(nèi)部資源包括一個(gè)被I/O組塊環(huán)圍的可配置邏輯組塊(CLB)矩陣。在FPGA矩陣內(nèi),信號(hào)通過可編程的互連開關(guān)和連線傳遞。

?

?

圖2.FPGA芯片的內(nèi)部構(gòu)造

?

與基于處理器的系統(tǒng)相比,基于FPGA的控制系統(tǒng)有何特點(diǎn)?

與基于處理器的控制系統(tǒng)相似,F(xiàn)PGA已經(jīng)被應(yīng)用于各種類型工業(yè)控制系統(tǒng)的實(shí)現(xiàn),包括模擬處理控制、離散邏輯、批處理控制系統(tǒng)或基于狀態(tài)機(jī)的控制系統(tǒng)。然而,基于FPGA的控制系統(tǒng)還是與基于處理器的系統(tǒng)存在顯著的差別。

為FPGA設(shè)備編譯控制應(yīng)用程序時(shí),受益于專用硬件電路的性能與可靠性優(yōu)勢,最終得到的高度優(yōu)化硅實(shí)現(xiàn)可以支持真正的并行處理。由于FPGA芯片上不存在操作系統(tǒng),所以代碼實(shí)現(xiàn)方式確保了最優(yōu)的性能與可靠性。

除了提供高可靠性,F(xiàn)PGA設(shè)備還可以以極快的循環(huán)速率執(zhí)行確定性的閉環(huán)控制。對于大多數(shù)基于FPGA的控制應(yīng)用,其速率受限于傳感器、傳動(dòng)裝置和I/O模塊,而不是FPGA的處理性能。例如,包含在LabVIEW FPGA模塊中的比例積分微分(PID)控制算法以300納秒(0.000000300秒)的速率運(yùn)行。PID控制常用于模擬過程數(shù)值的調(diào)節(jié),如壓力、溫度、作用力、位移、流體流動(dòng)或電流等。

?

?

圖3.在LabVIEW FPGA中執(zhí)行PID控制

?

基于FPGA的控制系統(tǒng)提供速率超過1 MHz的確定性的閉環(huán)控制性能。事實(shí)上,許多算法可以在單個(gè)FPGA時(shí)鐘(40 MHz)周期內(nèi)執(zhí)行完成。由于是并行處理,所以易于實(shí)現(xiàn)多速率控制系統(tǒng)。因?yàn)樵贔PGA上的專用硬件子系統(tǒng)內(nèi)運(yùn)行控制邏輯,故在增加額外處理時(shí),應(yīng)用的運(yùn)行速度不會(huì)因此降低。在許多情況下,F(xiàn)PGA硬件中一個(gè)軟件定義的門陣列可以用于替代一個(gè)昂貴且耗時(shí)的自定義印制電路板(PCB)布線圖。

FPGA可以以數(shù)字的方式處理非常高速的信號(hào),并時(shí)常用于重新配置I/O模塊的功能特性。例如,一個(gè)數(shù)字輸入模塊可以用于僅讀入每條數(shù)字線的真/假狀態(tài)。另外,該同一個(gè)FPGA可以被重新配置,以執(zhí)行這些數(shù)字信號(hào)的處理和測量脈寬、執(zhí)行數(shù)字濾波或甚至測量來自一個(gè)積分編碼器傳感器的位置和速率信息。

基于FPGA的系統(tǒng)時(shí)常將運(yùn)動(dòng)控制和電機(jī)驅(qū)動(dòng)整流集成到單個(gè)基于FPGA的控制應(yīng)用中。相比之下,基于微處理器的系統(tǒng)通常將電機(jī)驅(qū)動(dòng)整流分配給獨(dú)立的硬件,因?yàn)殡姍C(jī)電流或扭矩控制需要較高的循環(huán)速率(通常為20 kHz)與門驅(qū)動(dòng)整流信號(hào)的精確定時(shí)。

?

?

圖4.基于微處理器的控制(左)與基于FPGA的控制(右)

?

我如何利用LabVIEW FPGA模塊編程實(shí)現(xiàn)我的控制應(yīng)用?

LabVIEW FPGA模塊支持您使用高層次的圖形化數(shù)據(jù)流編程方法,以創(chuàng)建您的模擬或數(shù)字控制邏輯的一個(gè)高度優(yōu)化的門陣列實(shí)現(xiàn)。您可以使用常規(guī)的LabVIEW編程技術(shù)開發(fā)您的FPGA應(yīng)用。當(dāng)您以如CompacRIO機(jī)箱或R系列智能DAQ設(shè)備等FPGA硬件為目標(biāo)平臺(tái)時(shí),LabVIEW編程面板簡化為僅包含專為工作于FPGA之上而設(shè)計(jì)的函數(shù)。與傳統(tǒng)LabVIEW相比,其主要的編程差別在于FPGA設(shè)備使用整型算術(shù)而不是浮點(diǎn)算術(shù)。而且,也不存在多線程或優(yōu)先權(quán)的概念,因?yàn)槊總€(gè)循環(huán)運(yùn)行于獨(dú)立的專用硬件,并不使用共享資源,這樣使得每個(gè)循環(huán)以“時(shí)間關(guān)鍵(time critical)”的優(yōu)先權(quán)并行執(zhí)行。

LabVIEW FPGA面板包含廣泛的知識(shí)產(chǎn)權(quán)(IP)庫。下表列舉了一些用于開發(fā)基于FPGA的控制系統(tǒng)的關(guān)鍵功能模塊。如欲了解更多細(xì)節(jié),敬請查閱LabVIEW FPGA模塊用戶手冊

?

?

表1.LabVIEW FPGA中用于控制的關(guān)鍵函數(shù)

?

?

LabVEIW編譯器如何將我的圖形代碼轉(zhuǎn)換為FPGA電路?

LabVIEW FPGA模塊利用一個(gè)自動(dòng)的多步驟過程,將您的LabVIEW應(yīng)用編譯到FPGA硬件。在后臺(tái),您的圖形代碼被轉(zhuǎn)化為基于文本的VHDL代碼。然后調(diào)用業(yè)界標(biāo)準(zhǔn)的Xilinx ISE編譯器工具,該VHDL代碼被優(yōu)化、精簡和綜合到由LabVIEW設(shè)計(jì)的硬件電路實(shí)現(xiàn)。這一過程也對設(shè)計(jì)施加了定時(shí)限制,以力圖實(shí)現(xiàn)FPGA資源(有時(shí)稱為“結(jié)構(gòu)”)的有效利用。

在FPGA編譯過程中執(zhí)行了大量的優(yōu)化工作,以精簡數(shù)字邏輯并創(chuàng)建LabVIEW應(yīng)用的一個(gè)最優(yōu)實(shí)現(xiàn)。然后,該設(shè)計(jì)被綜合至一個(gè)高度優(yōu)化的硅實(shí)現(xiàn),它提供了真正的并行處理能力以及專用硬件所特有的性能與可靠性。

最終結(jié)果是一個(gè)包含門陣列配置信息的比特流文件。當(dāng)您運(yùn)行該應(yīng)用時(shí),該比特流被加載" title="加載">加載至FPGA芯片,并用于重新配置門陣列邏輯。該比特流也可以被加載至非易逝性閃存,當(dāng)目標(biāo)平臺(tái)加電時(shí)被同時(shí)加載。FPGA芯片上不存在操作系統(tǒng),但可以利用內(nèi)置于FPGA應(yīng)用的啟動(dòng)邏輯鏈來開始和停止運(yùn)行。

?

?

圖5.LabVIEW FPGA編譯過程

?

FPGA運(yùn)行速度很快,但是更快速的循環(huán)速率如何改進(jìn)控制系統(tǒng)的性能?

一般而言,控制系統(tǒng)的速率影響其性能、穩(wěn)定性、健壯性和抗干擾等特性。更快速的控制系統(tǒng)通常更為穩(wěn)定、易于調(diào)整、并不易受條件變化和干擾影響。

為提供穩(wěn)定、健壯的控制,一個(gè)控制系統(tǒng)必須能夠測量其過程變量,并在一個(gè)固定的時(shí)段內(nèi)設(shè)置傳動(dòng)裝置輸出命令。可快速變化的系統(tǒng)(工廠車間)需要快速控制系統(tǒng),以確保在可接受范圍內(nèi)的可靠性能。作為一個(gè)指導(dǎo)原則,控制循環(huán)的速率應(yīng)當(dāng)至少高于系統(tǒng)(工廠車間)的時(shí)間常數(shù)的十倍。時(shí)間常數(shù)是系統(tǒng)速率的一個(gè)度量。

例如,在響應(yīng)來自一個(gè)H-橋驅(qū)動(dòng)裝置的24伏輸出時(shí),DC電機(jī)的電流可能以1安培/秒的速率變化。為了精確控制電機(jī)電流,控制系統(tǒng)必須快速對電流進(jìn)行采樣并頻繁調(diào)整傳動(dòng)裝置的輸出。如欲了解更多信息,請參閱在線文檔PID嵌入式控制指南

?

?

圖6.典型的閉環(huán)控制系統(tǒng)

?

NI提供哪些可用的FPGA硬件目標(biāo)平臺(tái)?

?

NI提供大量用于部署基于FPGA的控制應(yīng)用的高性能平臺(tái)。此部分將介紹幾個(gè)關(guān)鍵的平臺(tái)。如欲得到NI所提供的可重配置硬件目標(biāo)平臺(tái)的完整列表,敬請?jiān)L問ni.com/fpga

CompactRIO可重配置嵌入式系統(tǒng)是一個(gè)面向要求最高穩(wěn)固性和可靠性的工業(yè)應(yīng)用的小尺寸、模塊化系統(tǒng)。CompactRIO專為惡劣環(huán)境設(shè)計(jì),它具有極寬的工作溫度范圍、高沖擊與振動(dòng)評級(jí)和若干工業(yè)認(rèn)證與評級(jí)。CompactRIO評級(jí)為海軍環(huán)境,I類,2級(jí),適合危險(xiǎn)場所,并提供高達(dá)2300伏的隔離。與所有來自NI的FPGA目標(biāo)平臺(tái)相似,CompactRIO使用C系列工業(yè)I/O模塊,以實(shí)現(xiàn)與工業(yè)控制傳感器與傳動(dòng)裝置的低成本直接連接。此外,世界范圍內(nèi)有許多第三方廠商提供C系列I/O與通信模塊。如欲獲得關(guān)于利用CompactRIO執(zhí)行控制的指南,敬請下載CompactRIO機(jī)器自動(dòng)化白皮書

?

?

圖7.CompactRIO可重配置嵌入式系統(tǒng)

?

NI R系列智能數(shù)據(jù)采集(DAQ)設(shè)備是面向PCI與PXI/CompactPCI總線的插入式板卡,其板上FPGA硬件用于用戶定義的信號(hào)處理與控制。多達(dá)8個(gè)模擬輸入、8個(gè)模擬輸出和160個(gè)數(shù)字I/O通道被內(nèi)置于智能DAQ設(shè)備中。您也可以將一個(gè)擴(kuò)展底板連接至任何一個(gè)數(shù)字端口,并添加C系列工業(yè)I/O模塊。R智能DAQ設(shè)備支持定義您自己的硬件功能特性,并為定時(shí)、觸發(fā)、同步、數(shù)字信號(hào)處理和控制提供了無限可能。

PXI R系列智能DAQ系統(tǒng)在工業(yè)標(biāo)準(zhǔn)PXI外型尺寸下提供FPGA的性能與可靠性。除了來自NI的智能DAQ設(shè)備,尚有來自NI與世界范圍的其他廠商的數(shù)百個(gè)非可重配置的插入式板卡可供使用。PXI系統(tǒng)可以啟動(dòng)進(jìn)入Windows或LabVIEW實(shí)時(shí)操作系統(tǒng)。C系列I/O模塊提供信號(hào)調(diào)理,并將儀器系統(tǒng)級(jí)的精度與隔離或高電流驅(qū)動(dòng)能力等工業(yè)特性相結(jié)合。R系列擴(kuò)展底板用于將C系列模塊連接至智能DAQ設(shè)備。如欲了解更多信息,請查看描述R系列智能DAQ設(shè)備的在線應(yīng)用說明

?

?

圖8.PXI R系列智能DAQ系統(tǒng)

?

PCI R系列智能DAQ系統(tǒng)支持您將基于FPGA的控制能力添加至任何臺(tái)式機(jī)、工控機(jī)或包含一個(gè)PCI插槽的單板卡計(jì)算機(jī)(SBC)。與所有的NI FPGA目標(biāo)平臺(tái)相似,智能DAQ設(shè)備可以在上電時(shí)即刻從位于插入式板卡上的非易逝性閃存加載其比特流。NI-RIO驅(qū)動(dòng)接口與R系列設(shè)備同時(shí)提供,無需額外費(fèi)用,也無需運(yùn)行時(shí)部署許可的費(fèi)用。了解更多信息

?

?

圖9.PCI R系列智能DAQ系統(tǒng)

?

NI緊湊視覺系統(tǒng)(Compact Vision System)是一個(gè)穩(wěn)固的獨(dú)立平臺(tái),它面向工業(yè)機(jī)器視覺與I/O應(yīng)用,如機(jī)器人、自動(dòng)化測試和自動(dòng)化檢測等應(yīng)用。所有的緊湊視覺系統(tǒng)均包含一個(gè)用戶可編程的FPGA,用于實(shí)現(xiàn)自定義的觸發(fā)器、計(jì)數(shù)器、脈寬調(diào)制(PWM)、運(yùn)動(dòng)與其他數(shù)字控制操作。NI緊湊視覺系統(tǒng)使用IEEE 1394(火線)技術(shù)可以實(shí)現(xiàn)與超過300個(gè)兼容攝像頭的連接。

?

?

圖10.NI緊湊視覺系統(tǒng)

?

如欲了解來自NI的關(guān)于可編程自動(dòng)化控制器(PAC)硬件技術(shù)的更多信息,敬請?jiān)L問ni.com/pac

?

我可以獲得怎樣的閉環(huán)控制性能?

在絕大多數(shù)情況下,F(xiàn)PGA的計(jì)算性能是如此之快以致控制循環(huán)的速率僅受限于傳感器、傳動(dòng)裝置和I/O模塊。這一點(diǎn)完全不同于傳統(tǒng)的控制系統(tǒng),因?yàn)閷τ趥鹘y(tǒng)控制系統(tǒng),其處理性能是典型的限制因素。

例如,利用R系列智能DAQ設(shè)備,離散控制應(yīng)用的輸入/輸出與控制邏輯的計(jì)算,均可以利用板上的5伏TTL數(shù)字I/O線以20 MHz的控制循環(huán)速率實(shí)現(xiàn)。這些數(shù)字線可以在一個(gè)以25納秒速率運(yùn)行的LabVIEW單周期定時(shí)循環(huán)內(nèi)被訪問。通常,數(shù)量可觀的控制邏輯可以被包含在一個(gè)單周期定時(shí)循環(huán)內(nèi)。

對于使用高電流C系列數(shù)字I/O模塊的24伏離散邏輯控制應(yīng)用,循環(huán)速率受限于模塊的更新速率。例如,NI 9423數(shù)字輸入模塊與NI 9474數(shù)字輸出模塊均具備1微秒的更新速率,從而得到500 kHz的最大24伏離散控制性能。

在模擬過程控制應(yīng)用中,控制循環(huán)速率也受限于I/O模塊的更新速率。NI 9215模擬輸入模塊與NI 9263模擬輸出模塊,提供16位精度以及10微秒更新速率下的同時(shí)采樣功能。這樣得到了50 kHz的閉環(huán)模擬過程控制性能。

?

?

圖11.循環(huán)周期時(shí)間(T)是指執(zhí)行控制循環(huán)的一個(gè)周期所需的時(shí)間

Algorithm算法

?

我可以預(yù)期多少基于FPGA的控制循環(huán)中的抖動(dòng)?

衡量控制系統(tǒng)的性能與魯棒性的一個(gè)常用尺度便是抖動(dòng),它是實(shí)際循環(huán)周期時(shí)間與期望的循環(huán)周期時(shí)間的偏差。在通用操作系統(tǒng)如Windows中,抖動(dòng)是不受控制的,故無法確保閉環(huán)控制系統(tǒng)的穩(wěn)定性。具有實(shí)時(shí)操作系統(tǒng)的基于處理器的控制系統(tǒng),通常能夠確保控制循環(huán)抖動(dòng)小于100微妙。

在基于FPGA的應(yīng)用中,控制循環(huán)不必與其他任務(wù)共享硬件資源,而控制循環(huán)可以利用FPGA時(shí)鐘實(shí)現(xiàn)精確定時(shí)。基于FPGA的控制循環(huán)的抖動(dòng)取決于FPGA時(shí)鐘源的精度。對于CompactRIO cRIO-910x可重配置機(jī)箱,F(xiàn)PGA時(shí)鐘抖動(dòng)在40 MHz FPGA時(shí)鐘速率情況下僅為250皮秒(0.000000000250秒)。如欲了解更多細(xì)節(jié),請參閱可重配置機(jī)箱產(chǎn)品手冊

?

?

圖12.為確保穩(wěn)定性,控制循環(huán)抖動(dòng)必須是受限的

?

我是否能夠創(chuàng)建自定義的I/O模塊?

?

是的,NI提供了一個(gè)模塊開發(fā)工具包(MDK),使得您可以開發(fā)自定義的C系列模塊并將其連接至一個(gè)可重配置的FPGA。該工具包提供了許可權(quán)、設(shè)計(jì)導(dǎo)則和對通用I/O模塊節(jié)點(diǎn)的訪問,以創(chuàng)建與您的定制模塊電路的接口。此外,Electronics Workbench電路教學(xué)平臺(tái)現(xiàn)在提供C系列I/O模塊模板,這些模板已被預(yù)組裝并配有常見信號(hào)連接端選項(xiàng)。如欲了解關(guān)于自定義模塊開發(fā)的更多信息,請訪問CompactRIO技術(shù)庫

?

?

?

圖13.Electronics Workbench電路教學(xué)平臺(tái)現(xiàn)提供C系列I/O模塊模板

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 成a人v欧美综合天堂 | 欧美一区二区三区久久综合 | 国产成人在线看 | 成年免费大片黄在线观看com | 特级a毛片 | 国产人成精品 | 精品国产亚一区二区三区 | 欧美一区二区在线视频 | 欧美freehdvideos性 | 欧美午夜免费观看福利片 | 2021免费日韩视频网 | 精品国产第一国产综合精品 | 日本www色视频成人免费网站 | 亚洲精品乱码中文字幕无线 | 日韩欧美三区 | 免费h片网站 | 国产高清不卡视频在线播放 | 好男人社区成人影院在线观看 | a国产在线| 美女视频很黄很暴黄是免费的 | 日本人xxxxx 日本人69视频 | 一级一级特黄女人精品毛片视频 | xxx性欧美在线观看 youjizzxxxx18日本 | 护士bd | 国产亚洲精品国产福利在线观看 | 国产满18av精品免费观看视频 | 欧美在线不卡 | 91在线精品麻豆欧美在线 | 三级黄色毛片视频 | 最近更新2019中文字幕国语 | 午夜免费看视频 | 一本大道香蕉大在线最新 | 羞羞视频在线观看 | 一本大道香蕉中文在线高清 | 亚洲欧美二区三区久本道 | 欧美在线视频观看 | 最近中文字幕大全高清视频 | 成人网免费| 亚洲免费高清 | 乱亲h女 小说 | 妞干网免费在线 |