<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于FPGA的電機智能驅動(dòng)控制系統設計

基于FPGA的電機智能驅動(dòng)控制系統設計

作者: 時(shí)間:2011-07-28 來(lái)源:網(wǎng)絡(luò ) 收藏

  根據 PLC 的組合以及器的類(lèi)型(CAN 或 EtherCAT),工業(yè)網(wǎng)絡(luò )或為串行總線(xiàn),或為標準的100Mb 以太網(wǎng)接口。對這兩種解決方案,該原型在 PLC 和電機之間均使用直接連接,或為用于 CAN 的雙線(xiàn)串行接口,或為用于 EtherCAT 的標準 RJ45 100Base-TX 以太網(wǎng)連接。

  電機控制 PCB 板一般是器中眾多 PCB 板之一,專(zhuān)門(mén)用于根據來(lái)自 PLC 的命令對電機進(jìn)行控制。該電機控制 PCB 板可以讓 FPGA 充分發(fā)揮其靈活性。與常規 ASIC/微處理器方案中采用的單接口、單電機控制算法解決方案不同,Spartan-6 FPGA 可以用專(zhuān)用網(wǎng)絡(luò )和電機控制 IP 模塊和控制軟件重新編程,以滿(mǎn)足客戶(hù)的特定需要。采用這種方式,一塊 FPGA PCB 板就可以實(shí)現多塊 ASIC 板才能實(shí)現的功能。同時(shí),它還提供了可以根據最新標準更新 IP核的機制,實(shí)現面向未來(lái)的器。

  該電機控制板的設計無(wú)需從頭開(kāi)始,賽靈思設計服務(wù)部采用目標設計平臺概念,通過(guò)把賽靈思 Spartan-6 SP605 評估套件、NetMot FMC 板和工業(yè)網(wǎng)絡(luò )和電機控制 IP 核結合在一起,集成了客戶(hù)想要的所有元件,這樣在客戶(hù)完成新 PCB 板之前就交付了這款概念驗證原型。圖2 顯示了如何把各個(gè)組件結合在一起,實(shí)現原型開(kāi)發(fā)平臺。最終,客戶(hù)的集成工作大為簡(jiǎn)化,無(wú)需對最終設計進(jìn)行重新工程設計,就能夠探求最佳的設計選擇。

  基于FPGA的電機智能驅動(dòng)控制系統設計

  圖2:基于 Spartan-6 FPGA 的電機控制板原型

  圖2 中文字:

  基于FPGA的電機智能驅動(dòng)控制系統設計

  SP605 基礎目標設計平臺是一種通用 FPGA 平臺,在業(yè)經(jīng)驗證的設計實(shí)現中集成了一個(gè) Spartan-6 LX45T 和許多常用外設,比如 DDR3 RAM、程序/比特流存儲用閃存、調試用 UART 以及 FPGA 編程用 JTAG。SP605 及所有最新賽靈思開(kāi)發(fā)板的另一個(gè)關(guān)鍵元件是 FPGA 夾層卡 (FMC) 接插件,它可以讓設計人員使用定制的功能和接口擴展基礎開(kāi)發(fā)板。

  SP605 的這種特性使我們能夠使用 QDeSys NetMot FMC(www.qdesys.com)的功能來(lái)擴展這個(gè)基本平臺。QDeSys NetMot FMC 具有電機控制所需要的電力電子元件,比如電壓逆變器,以及用于采集傳感器數據的模數轉換器 (ADC)??梢园央姍C直接與圖 2 所示的輸入/輸出端相連。NetMot FMC 還通過(guò)添加兩個(gè) CAN 接口和兩個(gè)以太網(wǎng)物理層接口,擴展了 SP605 的工業(yè)網(wǎng)絡(luò )連接功能。它們通過(guò) FMC 接插件和 PLC,通過(guò)標準接口訪(fǎng)問(wèn)FPGA。

  測試用 PC 機一方面用作 PLC 軟件的主機,另一方面通過(guò) UART 和 JTAG 接口,用作 FPGA編程/調試平臺。此外,我們還在這臺測試用 PC 機上用賽靈思 ISE?12.1 設計套件為 SP605的 LX45T PFGA 開(kāi)發(fā) MicroBlazeTM 處理器系統。該系統負責處理來(lái)自 PLC 的命令并相應地對電機進(jìn)行控制。

  圖 2 所示的 MicroBlaze 軟件應用、網(wǎng)絡(luò )和電機控制 IP 模塊代表隨接口(EtherCAT 或 CATopne)和選擇的電機類(lèi)型會(huì )發(fā)生變化的設計模塊。賽靈思設計服務(wù)部面臨的主要挑戰之一是要確保這些選項之間的切換盡量簡(jiǎn)化,從而保證客戶(hù)能夠在將來(lái)把相同的方法重復用于諸如 Profinet 更先進(jìn)的工業(yè)網(wǎng)絡(luò )類(lèi)型以及新型電機中。

  3 實(shí)現細則

  讓我們來(lái)詳細查看 Spartan-6 系統的各個(gè)組成部分。如圖 3 所示,我們使用的電機控制 IP 模塊——賽靈思電機控制庫 (XMCLIB) 在兩個(gè)設計版本中是完全相同的。這個(gè)定制 IP 核可以直接插在賽靈思嵌入式開(kāi)發(fā)套件 (SDK) 上,讓 FPGA 控制 NetMot FMC 的電機電力電子系統。這樣我們就可以把 IP 核添加到 Xilinx Platform Studio (XPS) 項目的嵌入式設計中,并對其進(jìn)行配置,使之適用于通過(guò) FMC 接插件連接到 FPGA 的電機。XMCLIB 軟件驅動(dòng)程序是一套底層功能,使電機控制應用能夠訪(fǎng)問(wèn) XMCLIB 寄存器接口。

  基于FPGA的電機智能驅動(dòng)控制系統設計

  圖3:CAN/EtherCAT 嵌入式系統

  基于FPGA的電機智能驅動(dòng)控制系統設計

  另一方面,網(wǎng)絡(luò ) IP 核也是兩個(gè)系統版本的不同之處。對于 CAN 版設計,我們選擇標準的 LogiCORETM IP XPS 控制器區域網(wǎng)絡(luò ),該網(wǎng)絡(luò )隨同 ISE 12.1 設計套件提供,并由博世公司許可。對于 EtherCAT 版設計,我們使用倍福公司針對賽靈思 FPGA 開(kāi)發(fā)的 EtherCAT 從控制器IP核 (www.beckhoff.com)。兩種 IP 核在 XPS 工具的 IP 目錄標簽上都有提供,使設計的集成和配置工作異常簡(jiǎn)單明了。在本案例中,我們沒(méi)有使用簡(jiǎn)單的驅動(dòng)程序來(lái)提供對網(wǎng)絡(luò ) IP 核的訪(fǎng)問(wèn),我們使用了Port 公司 (www.port.de) 提供的 CANopen 和 EtherCAT 協(xié)議棧解決方案。該解決方案提供了功能齊全的開(kāi)箱即用型協(xié)議實(shí)施方案。

  最終,我們設計出了一種定制嵌入式軟件應用,可以在運行于 MicroBlaze 處理器系統的 Micrium(www.micrium.com)μC/OS-II 上運行。μC/OS-II 是一種嵌入式操作系統,可增強原型系統的實(shí)時(shí)功能,并提供多任務(wù)、消息隊列和信號量等功能。

  我們還意識到,應該讓?xiě)玫慕Y構能夠適用于多種不同的網(wǎng)絡(luò )接口。為此,我們設計了一個(gè)接口抽象層,可以讓我們封裝通信和軟件的電機控制組件。

  在這個(gè)接口的一側(圖 4),我們實(shí)現了一個(gè)網(wǎng)絡(luò )模塊(Port 公司的 CANopen 或 EtherCAT),用以管理系統中可用網(wǎng)絡(luò ) IP 核的通信。這些模塊可以無(wú)縫地插入我們的接口抽象層上。在這些協(xié)議棧的頂層,我們把通信和控制數據(比如 PDO、SDO 和 NMT 狀態(tài)交易)傳輸到抽象層中,然后抽象層將數據進(jìn)行轉譯并以諸如啟動(dòng)/停止、以特定速率旋轉或旋轉到特定位置之類(lèi)的命令提交給電機控制應用。

  基于FPGA的電機智能驅動(dòng)控制系統設計

  圖4:接口抽象層

  基于FPGA的電機智能驅動(dòng)控制系統設計

  為了為接口抽象層確定一組通用信息和命令,我們研究了工業(yè)網(wǎng)絡(luò )領(lǐng)域現有的專(zhuān)著(zhù),研讀了 IEC 61800-7 標準。對現有的現場(chǎng)總線(xiàn)技術(shù),有幾種用于標準化與驅動(dòng)設備通信的方案(比如 CANopen 使用的 CiA-402、Profinet 使用的 PROFIdrive)。IEC 68000-7 標準提出了驅動(dòng)器的通用表達,并計劃提供這種通用表達與現有驅動(dòng)器特性之間的一組映射。

  IEC 68000-7 標準提出的概念為我們開(kāi)發(fā)接口抽象層奠定了基礎,使我們能夠對系統的網(wǎng)絡(luò )組件進(jìn)行封裝。我們因此可以更改系統中的網(wǎng)絡(luò )接口,而這只需要對軟件稍加定制修改,就可以讓其與現有的電機控制應用兼容。

  4 展望未來(lái)

  這款智能驅動(dòng)控制系統原型的成功交付清晰地展現了 FPGA 在工業(yè)以太網(wǎng)網(wǎng)絡(luò )、現場(chǎng)總線(xiàn)和電機控制領(lǐng)域的發(fā)展潛力。雖然要開(kāi)發(fā)出功能齊全的產(chǎn)品還有一些工作要做,但賽靈思設計服務(wù)部已為客戶(hù)量身定制了一款目標設計平臺,并通過(guò)性能增強,打造出了一款能夠顯著(zhù)降低最終工程產(chǎn)品的開(kāi)發(fā)工作量與風(fēng)險的定制解決方案。下一步賽靈思設計服務(wù)部將考慮擴展該目標設計平臺,以支持 Profinet IP 核和協(xié)議棧,向客戶(hù)展現賽靈思設計服務(wù)部采用的模塊方案和設計實(shí)踐的效果。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 智能驅動(dòng) 嵌入式

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>