時間:2017-12-22 11:14:07來源:網(wǎng)絡(luò)轉(zhuǎn)載
工業(yè)設(shè)計人員可以利用快速原型與基于模型的設(shè)計將電機控制算法移至ZynqSoC環(huán)境。
自20世紀90年代以來,電機驅(qū)動開發(fā)人員一直采用多芯片架構(gòu)實施電機控制與處理需求。
在這種架構(gòu)中,離散數(shù)字信號處理(DSP)芯片負責(zé)執(zhí)行電機控制算法,F(xiàn)PGA實施高速I/O與網(wǎng)絡(luò)協(xié)議,離散型處理器負責(zé)處理執(zhí)行控制。然而,隨著賽靈思?Zynq?-7000AllProgrammableSoC的問世,設(shè)計人員已經(jīng)找到了能將這些功能組合到單個器件的方法,而且還可以集成其它處理任務(wù)。減少部件數(shù)量與復(fù)雜性不僅可以降低系統(tǒng)成本,而且還能提升系統(tǒng)性能與可靠性。
但是,驅(qū)動開發(fā)人員如何才能夠改變自己長期形成的設(shè)計實踐,轉(zhuǎn)而采用ZynqSoC呢?
長期以來,工業(yè)設(shè)計人員一直采用基于模型的設(shè)計,通過仿真和C代碼生成,在DSP芯片上研發(fā)定制電機算法。
如今,賽靈思與MathWorks合作開發(fā)了一種全新工作流程——將基于模型的設(shè)計擴展至可用Zynq-7000AllProgrammableSoC的處理系統(tǒng)和可編程邏輯。
針對電機控制的ZYNQSOC
如今,先進的電機控制系統(tǒng)都屬于控制算法與工業(yè)網(wǎng)絡(luò)的組合,包括EtherCAT、Profinet、Powerlink以及SercosIII,其能夠從計算資源中提取處理帶寬。此外,控制系統(tǒng)現(xiàn)在還聚合了其它需求,其中包括運動控制層、PLC層、診斷層以及用戶界面,以便進行調(diào)試和保養(yǎng),或遠程監(jiān)控。采用與處理系統(tǒng)自然貼合的元件,這些需求能轉(zhuǎn)化為邏輯分組和實體分組,而其它元件則最好適合于硬件輔助減負與加速。
您所選擇的硬件平臺應(yīng)該提供穩(wěn)健的可擴展型系統(tǒng)。賽靈思ZynqSoCs就能滿足上述需求,其配有高性能處理系統(tǒng),以支持聯(lián)網(wǎng)、運動、soft-PLC、診斷以及遠程維護功能,并與可編程邏輯相結(jié)合,從而加速硬件中性能臨界的功能。對于處理方面,ZynqSoC與帶有NEON控制處理器、浮點擴展的ARM?Cortex?-A9雙核處理系統(tǒng)相結(jié)合,可加速軟件執(zhí)行速度。對于可編程邏輯,該器件配有444000個邏輯單元和2200個DSP48Slice,能提供大量的處理帶寬。利用五個高吞吐量AMBA?-4AXI高速互連,可編程邏輯與處理系統(tǒng)緊密耦合,相當(dāng)于3000多個PIN的有效帶寬。
表1列出了ZynqSoC器件所能實現(xiàn)的處理性能。
采用Simulink與控制系統(tǒng)工具箱(CONTROLSYSTEMSTOOLBOX)的設(shè)備與電機模型
現(xiàn)代控制算法的系統(tǒng)時間與系統(tǒng)變量可跨越多個數(shù)量級,從而導(dǎo)致硬件/軟件分組成為一項艱巨、耗時、重復(fù)的任務(wù)。圖2給出了一個典型的電動驅(qū)動。其電源頻率通常為50Hz-60Hz,經(jīng)過整流后,形成連續(xù)電壓(直流)。然后,該連續(xù)電壓轉(zhuǎn)換成變頻電壓,可控制饋送電機終端的電功率級。此外,控制器還必須讀取電機基本變量,其中包括電流和電壓??刂破魍瑯右脖仨氉x取或確定軸的位置,包括軸的轉(zhuǎn)速和通信網(wǎng)絡(luò)或監(jiān)視控制器的處理命令。
Simulink?可提供用于多域系統(tǒng)仿真和基于模型設(shè)計的方框圖環(huán)境,其完全適用于含有控制算法和設(shè)備模型的仿真系統(tǒng)。基于廣泛用于Simulink中對控制系統(tǒng)建模進行系統(tǒng)分析、設(shè)計與調(diào)節(jié)的方法,MathWorks的控制系統(tǒng)工具箱等產(chǎn)品可提供各種各樣的“應(yīng)用”。利用Simulink執(zhí)行系統(tǒng)建模,可以加快電機控制系統(tǒng)的開發(fā)速度,而且還可以從以下幾個方面降低風(fēng)險:
?降低受損風(fēng)險——在全新控制系統(tǒng)算法用于量產(chǎn)硬件測試之前,仿真法可對此算法進行全面檢驗,這樣就可以規(guī)避硬件測試存在損害驅(qū)動電子系統(tǒng)、電機以及系統(tǒng)其它組件的風(fēng)險。
?加快系統(tǒng)集成速度——支持員工需要將控制系統(tǒng)新算法集成至產(chǎn)品系統(tǒng),這意味著部署新的控制器會消耗有限的時間,而且可能令部署過程變得冗長。
?減少對設(shè)備可用性的依賴——在有些情況下,生產(chǎn)環(huán)境本身并不可用,例如定制驅(qū)動電子系統(tǒng)或電機尚在開發(fā)當(dāng)中或者其所處位置使得控制系統(tǒng)設(shè)計人員無法對其進行訪問。
鑒于上述因素,仿真即是利用生產(chǎn)硬件進行測試的最佳替代方案。Simulink等仿真環(huán)境可以提供框架,以便利用機電組件既存構(gòu)建模塊庫創(chuàng)建裝置模型,進而利用該裝置模型對新的控制系統(tǒng)架構(gòu)進行評估。
將系統(tǒng)模型與快速原型環(huán)境以及最終生產(chǎn)系統(tǒng)相連接,從而進一步降低計劃的風(fēng)險??焖僭凸ぷ髁鞒淘试S算法開發(fā)人員可以在不依賴硬件設(shè)計人員的情況下進行原型設(shè)計。算法研開人員可在高度自動化過程中采用特定平臺支持包,進而將系統(tǒng)硬件和軟件組件部署到可以編譯為特定硬件開發(fā)平臺的設(shè)計模板。硬件與軟件設(shè)計團隊可以將這些相同的硬件和軟件組價重新應(yīng)用于最終生產(chǎn)系統(tǒng)之中,無需做出任何修改即可加速研發(fā)過程、減少失誤。
采用Avnet智能驅(qū)動套件實現(xiàn)快速原型
設(shè)計人員可以將vnetZynq-7000APSoC/模擬器件智能驅(qū)動套件與Simulink以及ZynqSoC工作流程相結(jié)合,實現(xiàn)針對電機控制應(yīng)用的整套快速原型系統(tǒng)。該套件整合了ZynqSoC與最新一代模擬器件高精度數(shù)據(jù)轉(zhuǎn)換器以及數(shù)字隔離技術(shù)。該套件可支持高性能電機控制與雙端口千兆位以太網(wǎng)工業(yè)聯(lián)網(wǎng)(boards-and-kits/1-490M1P.htm)。
該套件配有AvnetZedBoard7020基板、模擬器件AD-FMCMOTCON1-EBZ模塊、額定轉(zhuǎn)速為4000RPM的24VBLDC電機,同時還配有霍爾效應(yīng)傳感器和1250-CPR索引編碼器,其中AD-FMCMOTCON1-EBZ模塊可以驅(qū)動帶有24V外部電源(該套件本身帶有)的無刷直流步進式電機。此外,該套件還含有ZynqSoC磁場導(dǎo)向控制參考設(shè)計以及包括驅(qū)動程序、應(yīng)用軟件與源代碼的模擬器件UbuntuLinux框架。
實例:電機梯形控制
現(xiàn)在讓我們通過Simulink仿真將上述工作流程應(yīng)用于圖1中的電機梯形控制系統(tǒng),通過仿真裝置評估控制器,然后采用智能驅(qū)動套件對該控制器進行原型設(shè)計。最后,我們利用硬件測試的結(jié)果來對Simulink模型進行驗證。
在該實例中,我們將使用智能驅(qū)動套件來驅(qū)動以鋁盤形式存在的慣性載荷以及基礎(chǔ)梯形控制器。該控制器的主要組件如下:
霍爾效應(yīng)傳感器——檢測電機位置
速度估計器——根據(jù)傳感器信號計算轉(zhuǎn)子轉(zhuǎn)速
六步換向器——根據(jù)轉(zhuǎn)子位置與轉(zhuǎn)速計算相位電壓與變頻器使能信號。
脈寬調(diào)制(PWM)——通過驅(qū)動回路驅(qū)動控制器輸出。
我們首先采用適用于控制環(huán)路分析的系統(tǒng)行為、控制環(huán)路模型。首先,我們利用仿真對模型進行評估,模型接受脈沖測試,指令模型按照150轉(zhuǎn)/秒的轉(zhuǎn)速旋轉(zhuǎn),持續(xù)2秒,然后停止。通過調(diào)節(jié)控制回路的比例積分(PI)控制器增益,我們可以獲得1.2秒穩(wěn)定時間,并且過沖可以忽略不計(圖3中紫色陰影標(biāo)志即為控制環(huán)路仿真結(jié)果;有關(guān)本實例的詳情,敬請訪問mathworks.com/zidk)。
設(shè)置好控制環(huán)路增益之后,我們現(xiàn)在可將控制器置于更加精準的系統(tǒng)模型上進行測試。與控制環(huán)路模型相比,系統(tǒng)模型內(nèi)含更加細化的驅(qū)動電子系統(tǒng)模型,更為重要的是,系統(tǒng)模型所包含的細化模型可以指定控制器與外設(shè)實施,其中包括PWM與霍爾效應(yīng)傳感器處理過程中所使用的準確時序模型。
我們已針對ZynqSoC規(guī)劃出了控制器,速度控制器與速度估計器在ARM核上運行,頻率為1kHz,換向器、霍爾傳感器以及PWM均在ZynqSoC可編程邏輯上運行。
我們可以對比控制環(huán)路和系統(tǒng)模型的仿真結(jié)果(圖3中紅色標(biāo)志即為系統(tǒng)模型結(jié)果)。一般來說,兩個波形的相似度非常高,但電機速率除外,它趨向于零。在這些點上,霍爾傳感器粗糙度非常明顯,而且電機軸每次轉(zhuǎn)動只有六個標(biāo)志脈沖。這種高保真系統(tǒng)模型7分鐘內(nèi)即可運行一次為時4秒的仿真,而對于保真較低的控制環(huán)路模型而言,只能運行一次為時7秒的仿真。對于控制系統(tǒng)設(shè)計人員而言,其意義在于上述仿真結(jié)果可以讓我們更加堅信,控制環(huán)路模型對于進一步評估控制器替代方案來說足夠準確,無需使用系統(tǒng)模型進行硬件測試,即可驗證替代方案。
有了這些發(fā)現(xiàn),我們即可利用智能驅(qū)動套件設(shè)計出控制器的原型。通過ZynqSoC推薦的工作流程,我們可以利用Simulink模型生成C代碼與HDL代碼,Simulink模型已被分割成數(shù)個特定于ARM核以及可編程邏輯的子系統(tǒng)(圖4)。
我們按照上述工作流程,使用MathWorks的HDL代碼生成器生成IP核,此IP核將在ZynqSoC器件的可編程邏輯中運行,以便建立在ARM核上運行的可執(zhí)行程序,并且在ARM核與可執(zhí)行程序之間建立AXI總線接口。
將bit文件加載載入可編程邏輯以及在ARM核上運行可執(zhí)行程序之后,我們即可進行環(huán)路中的硬件測試。對于此測試,我們采用經(jīng)過改良的Simulink測試平臺模型,我們已經(jīng)拆除該模型中的驅(qū)動電子系統(tǒng)、電機以及傳感器模型,因為我們采用了環(huán)路中的硬件取代被仿真的裝置模型。為了方便我們檢查測試結(jié)果,同時方便與仿真結(jié)果進行對比,我們可將ZynqSoC設(shè)置成將電機軸速度測量以及其它數(shù)據(jù)存儲于ARM核內(nèi)存之中(圖3中黑色陰影標(biāo)志即為硬件測試結(jié)果)。這樣,我們即可將結(jié)果上傳至MATLABsession,在試驗結(jié)束時將脈沖輸入應(yīng)用于測試平臺,即可處理和查看結(jié)果。如此一來,我們即可在硬件中準確重復(fù)我們采用仿真進行的測試。原型設(shè)計的測試結(jié)果與仿真結(jié)果非常接近,其中包括因霍爾傳感器導(dǎo)致電機速度實測值發(fā)生中斷。
本簡述證明了MathWorks的ZynqSoC工作流程可應(yīng)用于基于模型的設(shè)計,實現(xiàn)仿真和原型設(shè)計。如果想繼續(xù)深入生產(chǎn),您可以將所生成的C代碼和HDL代碼導(dǎo)入Vivado?設(shè)計套件,在該套件中您可將這些代碼與執(zhí)行程序、聯(lián)網(wǎng)IP以及完整執(zhí)行系統(tǒng)所必需的其它設(shè)計組件進行整合。
如需下載本文所述模型以及了解更多有關(guān)如何利用Zynq-7000AllProgrammableSoC/Avnet模擬器件智能驅(qū)動套件完成基于模型的設(shè)計,敬請訪問:mathworks.com/zidk。您還可以從本頁瀏覽在ZynqSoC器件上執(zhí)行完整磁場導(dǎo)向控制模型的Simulink模型,也可以觀看上述實例的視頻,了解更多詳情。
標(biāo)簽:
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責(zé)任。