關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 用單片機和CPLD實現步進電機的控制

        用單片機和CPLD實現步進電機的控制

        作者: 時間:2008-06-13 來源:中電網 收藏

          是一種將轉換成角位移的伺服執行器件。其特點是結構簡單、運行可靠、控制方便。尤其是步距值不受電壓、溫度的變化的影響、誤差不會長期積累,這給實際的應用帶來了很大的方便。它廣泛用于消費類產品(打印機、照相機)、工業控制(數控機床、工業機器人)、醫療器械等機電產品中。

        本文引用地址:http://www.104case.com/article/84181.htm

          通常的步進控制方法是采用(PC機、等)配合專用的步進驅動控制器來實現,這存在成本較高、各個環節搭配不便(不同類的必須要相應的驅動控制器與之配對)等問題。

          器件具有速度快、功耗低、保密性好、程序設計靈活、抗干擾能力強、與外圍電路接口方便等特點,越來越多的應用于各種工控、測量、儀器儀表等方面。同時單片機非常適合應用于需要復雜的控制算法的場合。因此本設計采用的方法是:用單片機采集現場信號后計算出步進電機運轉所需的控制信息后,再傳給把接收到的信息轉換成步進電機實際的控制信號(運轉方向、運轉速度)輸出給電機的驅動電路。這樣的好處是單片機與各行其是。單片機可以專注于處理輸入信號與輸出信息之間的轉換等復雜的算法.不必占用過多的資源去直接控制電機,也減小了由此引入干擾的可能性;CPLD只需把單片機傳送過來的信息轉換成電機的控制信號。這樣就發揮了單片機和CPLD兩者的優點。

          1 步進電機原理簡介

          通常電機的轉子為永磁體,當電流流過定子繞組時,定子繞組產生一矢量磁場。該磁場會帶動轉子旋轉一角度,使得轉子的一對磁場方向與定子的磁場方向一致。當定子的矢量磁場旋轉一個角度。轉子也隨著該磁場轉一個角度。每輸入一個電脈沖,電動機轉動一個角度前進一步。它輸出的角位移與輸入的脈沖數成正比、轉速與脈沖頻率成正比。改變繞組通電的順序,電機就會反轉。所以可用控制脈沖數量、頻率及電動機各相繞組的通電順序來控制步進電機的轉動。

          我們使用的單極四相步進電機為例。其結構如圖1:

          四個繞組引出四相(相A1相A2相B1相B2)和兩個公共線(接到電源的正機)。把繞組的某一相接到電源的地線。這樣該繞組就會受到激勵。我們采用四相八拍的控制方式,即1相與2相交替導通,這樣可提高分辨率。每一步可轉0.9°控制電機正轉的勵磁順序如下表:

        單極四相步進電機

          若要求電機反轉,將勵磁信號倒過來傳送即可。

          2 步進電機控制方案

          控制系統的框圖如下

        控制系統的框圖

          本方案采用AT89S51作為主控制器件。它與AT89C51兼容,同時還增加了SPI接口和看門狗模塊,這不但使程序調試變得方便而且也使程序運行更加穩定。在方案中該單片機主要實現現場信號的采集并計算出步進電機運轉的方向和速度信息。然后傳送給CPLD。

          CPLD采用EPM7128SLC84-15,EPM7128是可編程的大規模邏輯器件,為ALTERA公司的MAX7000系列產品。具有高阻抗、電可擦等特點,可用單元為2500個,工作電壓為+5V。CPLD接收到單片機發送過來的信息后,轉換成對應的控制信號輸出給步進電機驅動器。驅動器則把控制信號處理后輸入電機繞組,實現了電機的有效控制。

          2.1 電機驅動器硬件結構

          電機的驅動器采用如下電路:

        電機的驅動器電路

          其中R1-R8的電阻值為320Ω。R9-R12的電阻值為2.2KΩ。Q1-Q4為達林頓管D401A,Q5-Q8為S8550。J1、J2與步進電機的六條引線相連

          2.2 CPLD硬件電路的設計

          使用CPLD器件使電路的設計變得十分簡潔。我們只需要把CPLD的腳引出來, 接上相應的外圍器件就可以了。CPLD與專用數字芯片(如74SC164等)的一個重要區別是其 口的功能可任意在軟件上設定,這樣在硬件設計中便可只用考慮電源線與地線的分布。以減小高頻電流噪聲對數據傳輸的影響。

          在設計CPLD電路時,電源、時鐘以及與目標芯片都可通過接插件進行連接。最后在管腳鎖定的時候把CPLD的I/O分別與單片機和電機電路部分相連就可以了,這樣使電路的安裝調試變得更加簡便。

          2.3 控制的實現

          由于篇幅的限制。在此只討論單片機與CPLD邏輯接口部分以及CPLD中控制信號的產生部分。

          首先說明單片機和CPLD邏輯接口的問題。AT89S51與EPM7128SLC84的I/O電壓都為5V。所以它們的I/O可以直接連接。無需增加額外的電路。如果使用的是I/O電壓為3.3V的可編程邏輯器件,則需要考慮邏輯接口這個問題。

          同時通過時序分析. 我們可以知道該系統中EPM7128SLC84的輸入信號建立時間Ts=8ns。也就是說輸入CPLD的信號必須持續8ns以上才能夠被CPLD識別。單片機如采用12MHZ的晶振,則信號的改變時間為微秒級,完全滿足這個條件。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 韩城市| 盐边县| 锡林浩特市| 禄劝| 会理县| 博爱县| 沙坪坝区| 民勤县| 包头市| 江陵县| 平潭县| 祁阳县| 岚皋县| 祁连县| 房产| 河北省| 洛浦县| 陇西县| 永胜县| 新丰县| 宜都市| 衡南县| 阿城市| 镇坪县| 沙洋县| 沁阳市| 澜沧| 泾阳县| 上虞市| 南投县| 太和县| 墨竹工卡县| 湘乡市| 甘泉县| 库伦旗| 中方县| 六枝特区| 通河县| 西丰县| 五莲县| 临湘市|