基于Nios II步進(jìn)電機控制器IP核的設計與實(shí)現
摘要 根據Nios II處理器的Avalon總線(xiàn)規范,設計了一款面向步進(jìn)電機的控制器IP核。該定制IP核采用軟、硬件協(xié)同設計的方法,功能符合Avalon總線(xiàn)的讀寫(xiě)傳輸時(shí)序,具有完備的步進(jìn)電機驅動(dòng)能力。仿真結果表明,該IP核具有很好的可重用性。利于開(kāi)源共享提高開(kāi)發(fā)效率。
關(guān)鍵詞 SOPC;IP核;FPGA;步進(jìn)電機控制器
隨著(zhù)系統級芯片集成度越來(lái)越高,SOPC技術(shù)成為電子系統設計的熱點(diǎn)。它是利用FPGA器件的可編程性進(jìn)行SOC設計,其最突出優(yōu)點(diǎn)是在提供豐富IP庫的情況下,用戶(hù)可以利用IP庫中的組件按需求來(lái)搭建系統,有較大的靈活性。但是在供應商提供的IP庫中沒(méi)有用戶(hù)所需的IP核時(shí),用戶(hù)只能根據需要自定義IP核。另外,FPGA的傳統應用是在通信、工業(yè)控制等領(lǐng)域。鑒于此,設計了一款步進(jìn)電機控制器IP核,它具有對步進(jìn)電機的轉速、轉向及運轉節拍數進(jìn)行控制的功能。
1 步進(jìn)電機驅動(dòng)原理
步進(jìn)電機驅動(dòng)是通過(guò)按一定順序切換每相線(xiàn)圈中的電流,以達到旋轉切換步進(jìn)電機的過(guò)程。其中,步進(jìn)電機的控制轉速與各繞組中輸入脈沖的頻率成正比,轉向則取決于控制繞組中的通電順序。步進(jìn)電機按其勵磁相數可以分為三相、四相、五相、六相甚至八相制式。其中工業(yè)常用的是三相、四相勵磁制式。其中三相制式又包括單三拍(A—B—C—A)方式及雙三拍(AB—BC—CA—AB)方式,而四相制式則有三種常見(jiàn)方式,即雙四拍(AB—BC—CD—DA—AB)方式;單四拍(A—B—C—D—A)方式;單、雙八拍(A—AB—B—BC—C—CD—D—DA—A)方式。
2 步進(jìn)電機控制器IP核設計
對于面向Nios II處理器開(kāi)發(fā)的所有IP核,包括從設備IP核和主設備IP核兩大類(lèi)。文中設計的步進(jìn)電機控制器IP核是一個(gè)受控對象,屬于從設備。Nios II處理器通過(guò)Avalon總線(xiàn)對步進(jìn)電機控制器IP核的寄存器進(jìn)行參數設置,實(shí)現對步進(jìn)電機的一系列操作。其中Avalon總線(xiàn)接口規范的功能是它定義了信號類(lèi)型、信號的行為及傳輸類(lèi)型等信息。
一個(gè)典型的IP核由硬件文件、軟件文件及組件描述文件組成,步進(jìn)電機控制器IP核也嚴格按照規范來(lái)編寫(xiě)。它的硬件文件由多個(gè)HDL模塊組合完成硬件設計,其中包括邏輯任務(wù)模塊、寄存器模塊及接口模塊,其原理如圖1所示,軟件文件則由寄存器頭文件、驅動(dòng)文件組成。Nios II開(kāi)發(fā)工具自2006年公布新版本以后,軟件可以自動(dòng)生成組件描述文件。
2.1 硬件文件設計
IP核設計部分中的邏輯任務(wù)模塊根據寄存器模塊傳遞的參數產(chǎn)生步進(jìn)電機控制所需的脈沖信號;寄存器模塊則用來(lái)存儲Avalon總線(xiàn)傳來(lái)的參數,包括步進(jìn)電機的轉速、勵磁相數、正/反轉參數、節拍數等;接口模塊是一個(gè)符合Avalon規范的接口,起著(zhù)連接Avalon總線(xiàn)與IP核寄存器模塊橋梁的作用。
評論