<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è) > 嵌入式系統 > 設計應用 > 基于SOPC的取樣針移位系統步進(jìn)電機多軸控制器設計

基于SOPC的取樣針移位系統步進(jìn)電機多軸控制器設計

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

是一種完全數字化的電動(dòng)執行機構,從原理上說(shuō),其角位移與的個(gè)數成正比,在正常情況下,具有使用簡(jiǎn)單、運動(dòng)精確、連續運行無(wú)累積誤差等特點(diǎn),因而被廣泛應用于各種位置控制系統中。當前由于儀器內部的機械系統日益復雜,其運動(dòng)往往是多自由度的,因而通常需要利用多個(gè)的運動(dòng)合成來(lái)實(shí)現系統的各種動(dòng)作。例如,對圖1所示的半自動(dòng)生化分析儀的取樣針移位系統,該系統的動(dòng)作執行就是由兩部分組成的:一是固定基座上的步進(jìn)電機控制取樣橫臂進(jìn)行垂直方向上的升降運動(dòng);二是滑塊上的步進(jìn)電機控制取樣橫臂進(jìn)行水平方向上的旋轉運動(dòng)。這兩個(gè)運動(dòng)的合成實(shí)現了取樣橫臂的位置變換。

傳統的步進(jìn)電機多軸控制器是以微控制器(MCU)/微處理器(MPU)/專(zhuān)用集成電路(ASIC)/數字信號處理器(DSP)為核心,再輔以其他外圍分立器件構成的。這種結構的步進(jìn)電機多軸控制器的優(yōu)點(diǎn)在于其硬件結構清晰,易于復制再現,對于類(lèi)似的應用只需要修改其應用軟件即可。然而對于多數實(shí)際應用來(lái)說(shuō),單純依靠軟件的修改通常不足以使其達到其他應用場(chǎng)合所需的要求,并且當系統升級時(shí),通常需要對整個(gè)電路重新進(jìn)行設計,這樣既延長(cháng)了升級的周期,又增加了升級成本,因而在實(shí)際應用中受到了一定的限制。由于可編程邏輯器件(PLD)技術(shù)的飛速發(fā)展,使得單一FPGA/CPLD芯片內部可以集成多個(gè)分立元件的功能,因此在對傳統控制器的改進(jìn)中,通常使用一個(gè)FPGA/CPLD芯片將傳統控制器中的數字電路部分集成到一起,從而形成具有處理器-FPGA/CPLD-模擬電路結構形式的控制器。這類(lèi)控制器比起傳統控制器而言,其硬件結構的可擴展性得到了很大的提高。這是因為FPGA/CPLD芯片具有在不改變其引腳定義的情況下可對其內部邏輯關(guān)系進(jìn)行重構的特性,因而對于不同的應用,可以通過(guò)改變FPGA/CPLD芯片的內部結構來(lái)滿(mǎn)足某些特殊的應用需求,從而在一定程度上使得系統的開(kāi)發(fā)升級更為簡(jiǎn)便,而且成本也更為低廉。因此,這種改進(jìn)型的多步進(jìn)電機控制器的應用范圍也得到了很大的擴展。但是,這種結構的控制器也存在著(zhù)這樣的問(wèn)題:在FPGA外部仍然存在一個(gè)處理器。這樣不僅增加了控制器的尺寸,而且在升級處理器時(shí),硬件電路需要重新設計,使升級成本仍然相對較高。

近年來(lái),由于IP資源復用理念得到了普遍的認同并成為主要設計方式,MCU、DSP、MPU等嵌入式處理器IP成為了FPGA應用的核心。隨著(zhù)處理器內核以IP的形式嵌入到FPGA中,未來(lái)的電路板上可能只有兩部分電路:模擬部分(包括電源)以及FPGA芯片和一些大容量存儲器。這一切都表明可編程片上系統()正在成為FPGA最重要的發(fā)展方向。與傳統多軸控制器相比,這種基于的步進(jìn)電機多軸控制器具有體積小、集成度高、硬件結構穩定、易于開(kāi)發(fā)升級且成本低廉等特點(diǎn),尤其適用于儀器儀表內部控制系統的設計。本文所論述的步進(jìn)電機多軸控制器就是基于方式的步進(jìn)電機多軸控制器。

本文引用地址:http://dyxdggzs.com/article/201706/349095.htm

1 基于SOPC的步進(jìn)電機多軸控制器的硬件結構

基于SOPC的步進(jìn)電機多軸控制器的結構框圖如圖2所示。其外部電路的構成包含模擬電路和數字電路兩部分。模擬電路包括供電電源及功率驅動(dòng)。數字電路主要為FPGA芯片及其相關(guān)電路。

如圖2,基于SOPC的步進(jìn)電機多軸控制器包含兩部分:FPGA芯片及其配置芯片的數字部分和電機控制及位置反饋部分。其中,虛線(xiàn)框內部表示FPGA芯片的內部結構,空心箭頭表示FPGA芯片內部的數據連線(xiàn),實(shí)心箭頭表示外部連線(xiàn)。FPGA芯片內部由MPU模塊、通訊模塊、RAM模塊、ROM模塊、計數器模塊、電機控制模塊等構成。當控制器失電時(shí),這些模塊信息存儲在配置芯片中,等到系統重新上電時(shí),FPGA芯片再從配置芯片中讀取其配置信息,重構內部模塊結構。MPU模塊是整個(gè)控制器的核心,它的功能等同于事實(shí)的微處理器。它通過(guò)通訊模塊與外部主機進(jìn)行數據的交換,并將數據存儲在RAM模塊中。RAM模塊同時(shí)還用于暫存MPU模塊執行ROM模塊所存儲的程序段時(shí)的某些中間過(guò)程值,而MPU則根據ROM模塊中程序執行的結果輸出相應的控制信號給電機控制模塊。電機控制模塊的輸出連接到實(shí)際的芯片引腳上,以驅動(dòng)相應的功率驅動(dòng)電路工作,從而實(shí)現步進(jìn)電機的運轉。在閉環(huán)控制時(shí),步進(jìn)電機軸端的編碼器模塊輸出編碼信號。該信號經(jīng)編碼器反饋電路進(jìn)行隔離等處理之后,由FPGA芯片內部的計數器模塊進(jìn)行計數,并將結果傳輸給MPU模塊進(jìn)行處理,從而形成位置/速度的閉環(huán)控制。圖2只表示了單個(gè)步進(jìn)電機閉環(huán)控制的結構框圖,對于多軸步進(jìn)電機而言,FPGA芯片只需要增加相應的功率驅動(dòng)電路及編碼器反饋電路即可。電機控制模塊和計數器模塊都在FPGA內部集成,因而硬件電路的結構較為穩定。

由于IP技術(shù)的飛速發(fā)展,在圖2中的FPGA芯片內部模塊中,MPU、ROM、RAM、計數模塊等的IP核都可以很方便地獲得,而電機控制模塊由于與具體的功率放大電路實(shí)際相關(guān),因而通常需要用戶(hù)自行設計。下面介紹這一模塊的設計。

2 二相步進(jìn)電機控制模塊結構

以小慣量的二相步進(jìn)電機為例闡述步進(jìn)電機控制模塊的結構。該步進(jìn)電機由兩片PBL3717a芯片所驅動(dòng),其驅動(dòng)時(shí)序及其控制模塊如圖3、圖4所示。

在控制模塊中,mtr_cp為步進(jìn)電機的脈沖輸入端,每個(gè)脈沖驅動(dòng)步進(jìn)電機前進(jìn)/后退一步,脈沖頻率即為步進(jìn)電機運行的速度,因此這個(gè)脈沖信號由MPU模塊根據ROM內部程序的執行結果輸出。mtr_dir為步進(jìn)電機的正/反轉切換信號,mtr_mode為步進(jìn)電機全/半步運行方式選擇,mtr_on_off是電機的啟停位,該位置1時(shí),mtr_cp能夠驅動(dòng)步進(jìn)電機工作;為0時(shí),mtr_cp脈沖被封鎖。設置該位的目的是為了在多個(gè)步進(jìn)電機工作時(shí)分別控制各個(gè)電機的啟停而不影響到其他電機的運行狀態(tài)。mtr_reset是控制模塊復位信號,A_out為圖3中下標為A的驅動(dòng)芯片控制信號,B_out為圖3中下標為B的驅動(dòng)芯片的控制信號。步進(jìn)電機的控制模塊的仿真波形圖如圖5所示。從圖5可以看出,仿真波形完全符合圖2中步進(jìn)電機的驅動(dòng)時(shí)序,即控制模塊的設計滿(mǎn)足預定的設計需求。

由上分析,利用上述多個(gè)步進(jìn)電機控制模塊以圖6所示的方式進(jìn)行適當的連接,就能夠構成本文所論述的基于SOPC的步進(jìn)電機多軸控制器。由于MPU、ROM、RAM、電機控制模塊等都是以功能模塊的形式集成在FPGA芯片內部,因此大大縮小了基于SOPC的步進(jìn)電機多軸控制器的尺寸。這些功能模塊可以根據實(shí)際的應用進(jìn)行添加或刪除(即對FPGA芯片的內部邏輯結構進(jìn)行重構),因此極大地增強了系統設計的靈活性,能更好地滿(mǎn)足不同應用領(lǐng)域的需求。

IP技術(shù)的飛速發(fā)展使得開(kāi)發(fā)人員很容易獲得多數通用模塊的可復用IP核,從而減輕了開(kāi)發(fā)人員的負擔,縮短了開(kāi)發(fā)周期。當系統需要升級時(shí),也不需要對硬件電路重新設計,只需通過(guò)修改FPGA中相應模塊的配置文件,因此節約了控制器的升級成本。同時(shí),由于MPU模塊的功能與實(shí)際的微處理器相同,因而在微處理器上可運行的控制程序也可以很容易移植到MPU模塊中運行。為了便于闡述基于SOPC的步進(jìn)電機多軸控制器,本文側重于闡述多個(gè)步進(jìn)電機同速恒速運行的情況。對于變速運行的情況,可通過(guò)在MPU的脈沖輸出端和各電機控制模塊的脈沖輸入端之間插入MPU可控的分頻模塊來(lái)獲得,同時(shí)增加插補模塊以實(shí)現不同電機之間的聯(lián)動(dòng)功能。

本文所述的基于SOPC的步進(jìn)電機多軸控制器應用于半自動(dòng)生化分析儀的取樣針移位系統中,能夠實(shí)現傳統步進(jìn)電機多軸控制器的所有控制功能,控制器的尺寸小于傳統控制器;當控制器的數字電路部分需要修改時(shí),無(wú)需更換控制器的實(shí)際硬件電路,大大方便了控制器的研究設計工作并節約了相應的開(kāi)發(fā)成本。



評論


相關(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>