智能驅(qū)動(dòng)器以及許多汽車和 ISM 廠商正面臨著滿足新的市場需求和不斷發(fā)展的標(biāo)準(zhǔn)要求所帶來的重重挑戰(zhàn),。在現(xiàn)代工業(yè)和汽車應(yīng)用中,電機(jī)必須具有高效,、低噪聲,、速度范圍寬,、可靠性高、成本合理等特性,。在當(dāng)今工廠里,,電機(jī)驅(qū)動(dòng)型設(shè)備占總耗電量的三分之二,因此開發(fā)能效更高的系統(tǒng)勢在必行,。由于在許多情況下驅(qū)動(dòng)器只是大規(guī)模工藝的一個(gè)組件,,因此互操作性也是一項(xiàng)關(guān)鍵的設(shè)計(jì)要求。而影響這種要求的關(guān)鍵因素是工業(yè)網(wǎng)絡(luò)協(xié)議的寬度(即現(xiàn)場總線)和相關(guān)器件特性,,因?yàn)樗鼈冇脕順?biāo)準(zhǔn)化驅(qū)動(dòng)器在網(wǎng)絡(luò)中的表達(dá)?,F(xiàn)場總線(比如 CAN 和 Profibus)自身千差萬別,雖然都屬于現(xiàn)場總線,,但是實(shí)際上并不具有互換性,。為了降低成本和改善工業(yè)控制器之間的通信,現(xiàn)場總線提供商已經(jīng)開發(fā)出了基于以太網(wǎng)的工業(yè)網(wǎng)絡(luò)解決方案和數(shù)種新的協(xié)議,,比如 EtherCAT 和 Profinet 等,。除此之外,EtherNET I/P 也在近年來開始大行其道,。不過,,這些都是自成體系的技術(shù),迫使制造商不得不支持所有的提供商,。
賽靈思設(shè)計(jì)服務(wù)部 (XDS) 已經(jīng)為 ISM 領(lǐng)域的一家主要廠商開發(fā)出了一款基于 FPGA,、支持CANopen 和 EtherCAT 接口的電機(jī)控制平臺原型來解決這些問題。賽靈思設(shè)計(jì)服務(wù)部的工作是設(shè)計(jì)并實(shí)現(xiàn)一個(gè)功能齊備的模塊化系統(tǒng),,以便在客戶的新一代智能驅(qū)動(dòng)器中重用,。通過在模塊化系統(tǒng)架構(gòu)中集成賽靈思 Spartan-6 FPGA SP605 評估套件基礎(chǔ)目標(biāo)設(shè)計(jì)平臺以及第三方 IP 核,提供先進(jìn)的電機(jī)控制算法和工業(yè)網(wǎng)絡(luò)支持,,實(shí)現(xiàn)了一款高效,、可擴(kuò)展的設(shè)計(jì)方案。
選擇 FPGA 的原因
客戶現(xiàn)有的基于微控制器的解決方案不能提供客戶最迫切需要的:一種可擴(kuò)展平臺,?;赟partan-6 FPGA 的智能驅(qū)動(dòng)控制系統(tǒng)在單芯片上集成了所有必要的可擴(kuò)展性、邏輯和計(jì)算功能,,在降低成本的同時(shí)還能避免過時(shí),。該平臺可以進(jìn)行多年的升級,以滿足最新工業(yè)網(wǎng)絡(luò)標(biāo)準(zhǔn)的要求并使用最高效的電機(jī)控制算法,。此外,,由于 FPGA 的可重編程特性,因此可以根據(jù)客戶的特定要求對單個(gè)基礎(chǔ)電機(jī)控制系統(tǒng)進(jìn)行定制,從而輕松地與現(xiàn)有工業(yè)網(wǎng)絡(luò)集成,。簡言之,,Spartan-6 FPGA 能夠滿足工業(yè)領(lǐng)域所有的嚴(yán)格要求。
賽靈思目標(biāo)設(shè)計(jì)平臺提供了一套開箱即用的高健碩性,、高集成度,、業(yè)經(jīng)測試的元件,對就像我們的客戶這樣的 FPGA 系統(tǒng)設(shè)計(jì)新手來說,,是一個(gè)理想的起點(diǎn),。您可以通過向基礎(chǔ)平臺添加領(lǐng)域?qū)S煤褪袌鰧S闷脚_解決方案,讓最終設(shè)計(jì)在更大程度上實(shí)現(xiàn)自動(dòng)化,。這些目標(biāo)參考設(shè)計(jì)演示了真實(shí)世界 FPGA 實(shí)現(xiàn)的構(gòu)想,,讓客戶集成精力進(jìn)行最終產(chǎn)品差異化特性的設(shè)計(jì)與開發(fā),從而縮短學(xué)習(xí)時(shí)間,。
我們的解決方案完美組合了 Spartan-6 SP605評估套件和第三方解決方案,,其中包括 QdeSys 公司提供的 NetMot FMC 板,以及德國博世公司 (Bosch) 和倍福公司 (Beckhoff) 提供的工業(yè)網(wǎng)絡(luò) IP 核,。這樣不僅目標(biāo)系統(tǒng)所有的基礎(chǔ)構(gòu)建塊一開始就可以到位,,而且我們無需定制FPGA 開發(fā)板就可以進(jìn)行原型開發(fā),從而讓客戶以最低的成本驗(yàn)證該新平臺的可行性,。為了進(jìn)一步加快產(chǎn)品上市進(jìn)程,,減少初次 FPGA 系統(tǒng)設(shè)計(jì)的風(fēng)險(xiǎn),客戶要求我們不僅要交付原型,,還要為在其新一代智能驅(qū)動(dòng)器中使用 FPGA 提供支持。
最終,,客戶的工程師和管理人員都從該方案受益匪淺,。工程師在賽靈思設(shè)計(jì)服務(wù)部精選的最佳實(shí)踐方式的基礎(chǔ)上,更快地掌握了基于 FPGA 的設(shè)計(jì),,而管理人員則縮短了產(chǎn)品交付時(shí)間,,并降低了業(yè)務(wù)風(fēng)險(xiǎn)。
智能驅(qū)動(dòng)控制系統(tǒng)原型
賽靈思設(shè)計(jì)服務(wù)部的產(chǎn)品組合覆蓋了整個(gè) FPGA 設(shè)計(jì)開發(fā)周期,,從規(guī)范創(chuàng)建到編碼,、驗(yàn)證、時(shí)序收斂和系統(tǒng)集成,。集多年嵌入式處理器系統(tǒng)和軟件應(yīng)用設(shè)計(jì)經(jīng)驗(yàn)之大成,,加上集成第三方 IP 核的能力、優(yōu)秀的項(xiàng)目管理實(shí)踐和全面認(rèn)證的 ISO9001 開發(fā)流程,,賽靈思設(shè)計(jì)服務(wù)部能夠在客戶的產(chǎn)品開發(fā)周期早期交付智能驅(qū)動(dòng)控制系統(tǒng)原型,。在此基礎(chǔ)上開發(fā)出的定制目標(biāo)設(shè)計(jì)平臺能夠讓客戶的工程師熟知 FPGA 設(shè)計(jì)流程,在新一代產(chǎn)品中優(yōu)化該技術(shù)的功能。
該智能驅(qū)動(dòng)控制系統(tǒng)原型的主要組件的詳細(xì)情況,,請參看圖 1,。
可編程邏輯控制器 (PLC) 負(fù)責(zé)運(yùn)行智能驅(qū)動(dòng)器,實(shí)時(shí)連接至工業(yè)網(wǎng)絡(luò),。為實(shí)現(xiàn)該原型,,我們使用兩個(gè)基于 PC 的 PLC 來處理該系統(tǒng)支持的兩個(gè)工業(yè)網(wǎng)絡(luò)標(biāo)準(zhǔn):用于控制器區(qū)域網(wǎng)絡(luò)的 miControl mPLC 和用于 EtherCAT 工業(yè)以太網(wǎng)現(xiàn)場總線系統(tǒng)的 TwinCAT。PLC 負(fù)責(zé)生成預(yù)定義的命令信息(例如啟動(dòng)和停止),,通過分析收到的響應(yīng)(當(dāng)前速度,、溫度、電壓等)驗(yàn)證電機(jī)的運(yùn)行是否正常,。
根據(jù) PLC 的組合以及智能驅(qū)動(dòng)器的類型(CAN 或 EtherCAT),,工業(yè)網(wǎng)絡(luò)或?yàn)榇锌偩€,或?yàn)闃?biāo)準(zhǔn)的 100Mb 以太網(wǎng)接口,。對這兩種解決方案,,該原型在 PLC 和電機(jī)之間均使用直接連接,或?yàn)橛糜?CAN 的雙線串行接口,,或?yàn)橛糜?EtherCAT 的標(biāo)準(zhǔn) RJ45 100Base-TX 以太網(wǎng)連接,。
電機(jī)控制 PCB 板一般是智能驅(qū)動(dòng)器中眾多 PCB 板之一,專門用于根據(jù)來自 PLC 的命令對電機(jī)進(jìn)行控制,。該電機(jī)控制 PCB 板可以讓 FPGA 充分發(fā)揮其靈活性,。與常規(guī) ASIC/微處理器方案中采用的單接口、單電機(jī)控制算法解決方案不同,,Spartan-6 FPGA 可以用專用網(wǎng)絡(luò)和電機(jī)控制 IP 模塊和控制軟件重新編程,,以滿足客戶的特定需要。采用這種方式,,一塊 FPGA PCB 板就可以實(shí)現(xiàn)多塊 ASIC 板才能實(shí)現(xiàn)的功能,。同時(shí),它還提供了可以根據(jù)最新標(biāo)準(zhǔn)更新 IP核的機(jī)制,,實(shí)現(xiàn)面向未來的智能驅(qū)動(dòng)器,。
該電機(jī)控制板的設(shè)計(jì)無需從頭開始,賽靈思設(shè)計(jì)服務(wù)部采用目標(biāo)設(shè)計(jì)平臺概念,,通過把賽靈思 Spartan-6 SP605 評估套件,、NetMot FMC 板和工業(yè)網(wǎng)絡(luò)和電機(jī)控制 IP 核結(jié)合在一起,集成了客戶想要的所有元件,,這樣在客戶完成新 PCB 板之前就交付了這款概念驗(yàn)證原型,。圖 2 顯示了如何把各個(gè)組件結(jié)合在一起,實(shí)現(xiàn)原型開發(fā)平臺,。最終,,客戶的集成工作大為簡化,,無需對最終設(shè)計(jì)進(jìn)行重新工程設(shè)計(jì),就能夠探求最佳的設(shè)計(jì)選擇,。
圖 2:基于 Spartan-6 FPGA 的電機(jī)控制板原型
圖2 中文字:
SP605 基礎(chǔ)目標(biāo)設(shè)計(jì)平臺是一種通用 FPGA 平臺,,在業(yè)經(jīng)驗(yàn)證的設(shè)計(jì)實(shí)現(xiàn)中集成了一個(gè) Spartan-6 LX45T 和許多常用外設(shè),比如 DDR3 RAM,、程序/比特流存儲(chǔ)用閃存,、調(diào)試用 UART 以及 FPGA 編程用 JTAG。SP605 及所有最新賽靈思開發(fā)板的另一個(gè)關(guān)鍵元件是 FPGA 夾層卡 (FMC) 接插件,,它可以讓設(shè)計(jì)人員使用定制的功能和接口擴(kuò)展基礎(chǔ)開發(fā)板,。
SP605 的這種特性使我們能夠使用 QDeSys NetMot FMC(www.qdesys.com)的功能來擴(kuò)展這個(gè)基本平臺。QDeSys NetMot FMC 具有電機(jī)控制所需要的電力電子元件,,比如電壓逆變器,,以及用于采集傳感器數(shù)據(jù)的模數(shù)轉(zhuǎn)換器 (ADC)??梢园央姍C(jī)直接與圖 2 所示的輸入/輸出端相連,。NetMot FMC 還通過添加兩個(gè) CAN 接口和兩個(gè)以太網(wǎng)物理層接口,擴(kuò)展了 SP605 的工業(yè)網(wǎng)絡(luò)連接功能,。它們通過 FMC 接插件和 PLC,,通過標(biāo)準(zhǔn)接口訪問FPGA。
測試用 PC 機(jī)一方面用作 PLC 軟件的主機(jī),,另一方面通過 UART 和 JTAG 接口,,用作 FPGA編程/調(diào)試平臺。此外,,我們還在這臺測試用 PC 機(jī)上用賽靈思 ISE®12.1 設(shè)計(jì)套件為 SP605的 LX45T PFGA 開發(fā) MicroBlazeTM 嵌入式處理器系統(tǒng),。該嵌入式系統(tǒng)負(fù)責(zé)處理來自 PLC 的命令并相應(yīng)地對電機(jī)進(jìn)行控制。
圖 2 所示的 MicroBlaze 軟件應(yīng)用,、網(wǎng)絡(luò)和電機(jī)控制 IP 模塊代表隨接口(EtherCAT 或 CATopne)和選擇的電機(jī)類型會(huì)發(fā)生變化的設(shè)計(jì)模塊,。賽靈思設(shè)計(jì)服務(wù)部面臨的主要挑戰(zhàn)之一是要確保這些選項(xiàng)之間的切換盡量簡化,從而保證客戶能夠在將來把相同的方法重復(fù)用于諸如 Profinet 更先進(jìn)的工業(yè)網(wǎng)絡(luò)類型以及新型電機(jī)中,。
實(shí)現(xiàn)細(xì)則
讓我們來詳細(xì)查看 Spartan-6 嵌入式系統(tǒng)的各個(gè)組成部分,。如圖 3 所示,,我們使用的電機(jī)控制 IP 模塊——賽靈思電機(jī)控制庫 (XMCLIB) 在兩個(gè)設(shè)計(jì)版本中是完全相同的,。這個(gè)定制 IP 核可以直接插在賽靈思嵌入式開發(fā)套件 (SDK) 上,讓 FPGA 控制 NetMot FMC 的電機(jī)電力電子系統(tǒng),。這樣我們就可以把 IP 核添加到 Xilinx Platform Studio (XPS) 項(xiàng)目的嵌入式設(shè)計(jì)中,,并對其進(jìn)行配置,使之適用于通過 FMC 接插件連接到 FPGA 的電機(jī),。XMCLIB 軟件驅(qū)動(dòng)程序是一套底層功能,,使電機(jī)控制應(yīng)用能夠訪問 XMCLIB 寄存器接口,。
圖 3:CAN/EtherCAT 嵌入式系統(tǒng)
另一方面,網(wǎng)絡(luò) IP 核也是兩個(gè)系統(tǒng)版本的不同之處,。對于 CAN 版設(shè)計(jì),,我們選擇標(biāo)準(zhǔn)的 LogiCORETM IP XPS 控制器區(qū)域網(wǎng)絡(luò),該網(wǎng)絡(luò)隨同 ISE 12.1 設(shè)計(jì)套件提供,,并由博世公司許可,。對于 EtherCAT 版設(shè)計(jì),我們使用倍福公司針對賽靈思 FPGA 開發(fā)的 EtherCAT 從控制器IP核 (www.beckhoff.com),。兩種 IP 核在 XPS 工具的 IP 目錄標(biāo)簽上都有提供,,使設(shè)計(jì)的集成和配置工作異常簡單明了。在本案例中,,我們沒有使用簡單的驅(qū) 動(dòng)程序來提供對網(wǎng)絡(luò) IP 核的訪問,,我們使用了Port 公司 (www.port.de) 提供的 CANopen 和 EtherCAT 協(xié)議棧解決方案。該解決方案提供了功能齊全的開箱即用型協(xié)議實(shí)施方案,。
最終,,我們設(shè)計(jì)出了一種定制嵌入式軟件應(yīng)用,可以在運(yùn)行于 MicroBlaze 處理器系統(tǒng)的 Micrium(www.micrium.com)μC/OS-II 上運(yùn)行,。μC/OS-II 是一種嵌入式操作系統(tǒng),,可增強(qiáng)原型系統(tǒng)的實(shí)時(shí)功能,并提供多任務(wù),、消息隊(duì)列和信號量等功能,。
我們還意識到,應(yīng)該讓應(yīng)用的結(jié)構(gòu)能夠適用于多種不同的網(wǎng)絡(luò)接口,。為此,,我們設(shè)計(jì)了一個(gè)接口抽象層,可以讓我們封裝通信和軟件的電機(jī)控制組件,。
在這個(gè)接口的一側(cè)(圖 4),,我們實(shí)現(xiàn)了一個(gè)網(wǎng)絡(luò)模塊(Port 公司的 CANopen 或 EtherCAT),用以管理系統(tǒng)中可用網(wǎng)絡(luò) IP 核的通信,。這些模塊可以無縫地插入我們的接口抽象層上,。在這些協(xié)議棧的頂層,我們把通信和控制數(shù)據(jù)(比如 PDO,、SDO 和 NMT 狀態(tài)交易)傳輸?shù)匠橄髮又?,然后抽象層將?shù)據(jù)進(jìn)行轉(zhuǎn)譯并以諸如啟動(dòng)/停止、以特定速率旋轉(zhuǎn)或旋轉(zhuǎn)到特定位置之類的命令提交給電機(jī)控制應(yīng)用,。
圖 4:接口抽象層
為了為接口抽象層確定一組通用信息和命令,,我們研究了工業(yè)網(wǎng)絡(luò)領(lǐng)域現(xiàn)有的專著,研讀了 IEC 61800-7 標(biāo)準(zhǔn),。對現(xiàn)有的現(xiàn)場總線技術(shù),,有幾種用于標(biāo)準(zhǔn)化與驅(qū)動(dòng)設(shè)備通信的方案(比如 CANopen 使用的 CiA-402,、Profinet 使用的 PROFIdrive)。IEC 68000-7 標(biāo)準(zhǔn)提出了驅(qū)動(dòng)器的通用表達(dá),,并計(jì)劃提供這種通用表達(dá)與現(xiàn)有驅(qū)動(dòng)器特性之間的一組映射,。
IEC 68000-7 標(biāo)準(zhǔn)提出的概念為我們開發(fā)接口抽象層奠定了基礎(chǔ),使我們能夠?qū)ο到y(tǒng)的網(wǎng)絡(luò)組件進(jìn)行封裝,。我們因此可以更改系統(tǒng)中的網(wǎng)絡(luò)接口,,而這只需要對軟件稍加定制修改,就可以讓其與現(xiàn)有的電機(jī)控制應(yīng)用兼容,。
展望未來
這款智能驅(qū)動(dòng)控制系統(tǒng)原型的成功交付清晰地展現(xiàn)了 FPGA 在工業(yè)以太網(wǎng)網(wǎng)絡(luò),、現(xiàn)場總線和電機(jī)控制領(lǐng)域的發(fā)展?jié)摿Αkm然要開發(fā)出功能齊全的產(chǎn)品還有一些工作要做,,但賽靈思設(shè)計(jì)服務(wù)部已為客戶量身定制了一款目標(biāo)設(shè)計(jì)平臺,,并通過性能增強(qiáng),打造出了一款能夠顯著降低最終工程產(chǎn)品的開發(fā)工作量與風(fēng)險(xiǎn)的定制解決方案,。下一步賽靈思設(shè)計(jì)服務(wù)部將考慮擴(kuò)展該目標(biāo)設(shè)計(jì)平臺,,以支持 Profinet IP 核和協(xié)議棧,向客戶展現(xiàn)賽靈思設(shè)計(jì)服務(wù)部采用的模塊方案和設(shè)計(jì)實(shí)踐的效果,。