導航:首頁 > 操作系統 > 基於單片機的步進電機控制器

基於單片機的步進電機控制器

發布時間:2025-04-09 02:01:40

A. 步進電機單片機控制系統

由於不知道怎麼發圖片,沒有圖片。如果想要你採用我的回答,你發EMAIL到[email protected]我回復你。同時再給你1-2篇關於步進電機驅動的論文和資料。希望對你有所幫助

基於L297/L298晶元步進電機的單片機控制
1 引言
步進電動機是一種將電脈沖信號轉換成角位移或線位移的精密執行元件,由於步進電機具有控制方便、體積小等特點,所以在數控系統、自動生產線、自動化儀表、繪圖機和計算機外圍設備中得到廣泛應用。微電子學的迅速發展和微型計算機的普及與應用,為步進電動機的應用開辟了廣闊前景,使得以往用硬體電路構成的龐大復雜的控制器得以用軟體實現,既降低了硬體成本又提高了控制的靈活性,可靠性及多功能性。市場上有很多現成的步進電機控制機構,但價格都偏高。應用SGS公司推出的L297和L298兩晶元可方便的組成步進電機驅動器,並結合AT89C52單片機進行控制,即可以實現用相對便宜的價格組成一個性能不錯的步進電機驅動電路。
2 工作原理
由於步進電機是一種將電脈沖信號轉換成直線或角位移的執行元件,它不能直接接到交直流電源上,而必須使用專用設備-步進電機控制驅動器 典型步進電機控制系統如圖1所示:控制器可以發出脈沖頻率從幾赫茲到幾十千赫茲可以連續變化的脈沖信號,它為環形分配器提供脈沖序列。環形分配器的主要功能是把來自控制環節的脈沖序列按一定的規律分配後,經過功率放大器的放大加到步進電機驅動電源的各項輸人端,以驅動步進電機的轉動。環形分配器主要有兩大類:一類是用計算機軟體設計的方法實現環分器要求的功能,通常稱軟環形分配器。另一類是用硬體構成的環形分配器,通常稱為硬環形分配器。功率放大器主要對環形分配器的較小輸出信號進行放大.以達到驅動步進電機目的。

圖1 典型步進電機控制框圖
3 硬體組成
文中所控制的步進電機是四相單極式35BY48HJ120減速步進電動機。本文所設計的步進電機控制驅動器的框圖如圖2所示。它由AT89C52單片機、光電耦和器、集成晶元L297和L298組成。AT89C52是美國ATMEL的低電壓、高性能8位CMOS單片機。片內置8K位元組可重復擦寫的
Flash閃速存儲器。256位元組RAM。3個16位定時器.可編程串列UART通道。對完成步進電機的簡單控制已足以勝任。

圖2 本文提出的步進電機控制驅動器框圖
L297是步進電動機控制器(包括環形分配器)。L298是雙H橋式驅動器。它們所組成的微處理器至雙橋式步進電動機的介面如圖3所示。這種方式結合的優點是,需要的元件很少.從而使得裝配成本低,可靠性高和占空間少。並且通過軟體開發。可以簡化和減輕微型計算機的負擔。另外,L297和L298都是獨立的晶元.所以應用是十分靈活的。

L297晶元是一種硬體環分集成晶元.它可產生四相驅動信號,用於計算機控制的兩相雙極或四相單極步進電機 它的心臟部分是一組解碼器它能產生各種所需的相序.這一部分是由兩種輸入模式控制,方向控制(CW/CCW) 和HALF/FULL 以及步進式時鍾CLOCK.它將解碼器從一階梯推進至另一階梯。解碼器有四個輸出點連接到輸出邏輯部分,提供抑制和斬波功能所需的相序。因此L297能產生三種相序信號,對應於三種不同的工作方式:即半步方式(HALF STEP);基本步距(FULL STEP,整步)一相激勵方式;基本步距兩相激勵方式。脈沖分配器內部是一個3bit可逆計數器,加上一些組合邏輯.產生每周期8步格雷碼時序信號,這也就是半步工作方式的時序信號。此時HALF/FULL信號為高電。若HALF/FULL取低電平,得到基本步距工作方式。即雙四拍全階梯工作方式。
L297另一個重要組成是由兩個PWM 斬波器來控制相繞組電流,實現恆流斬波控制以獲得良好的矩頻特性。每個斬波器由一個比較器、一個RS觸發器和外接采樣電阻組成,並設有一個公用振盪器,向兩個斬波器提供觸發脈沖信號。圖3中,頻率f是由外接16腳的RC網路決定的, 當R>10kΩ 時,f=1/0.69RC。當時鍾振盪器脈沖使觸發器置1,電機繞組相電流上升,采樣電阻的R 上電壓上升到基準電壓Uref時,比
較器翻轉,使觸發器復位,功率晶體管關斷,電流下降,等待下一個振盪脈沖的到來。這樣,觸發器輸出的是恆頻PWM信號,調制L297的輸出信號,繞組相電流峰值由Uref確定。L297的CONTROL端的輸入決定斬波器對相位線A、B、C、D或抑制線INH1和INH2起作用。CONTROL為高電平時,對A、B、C、D有控製作用;而為低電平時,則對INH1和INH2起控製作用,從而可對電動機轉向和轉矩進行控制。
L298晶元是一種高壓、大電流雙全橋式驅動器,其設計是為接受標准TTL邏輯電平信號和驅動電感負載的,例如繼電器、圓筒形線圈、直流電動機和步進電動機 具有兩抑制輸入來使器件不受輸入信號影響。每橋的三級管的射極是連接在一起的,相應外接線端可用來連接外設感測電阻。可安置另一輸入電源,使邏輯能在低電壓下工作。L298晶元是具有15個引出腳的多瓦數直插式封裝的集成晶元。
圖3中.AT89C52通過串口經MAX232電平轉換之後與微機相連.接受上位機指令。向L297發出時鍾信號、正反轉信號、復位信號及使能控制等信號。電路中,電阻R13,R15用來調節斬波器電路的參考電壓,該電壓將與通過管腳13,14所反饋的電位的大小比較,來確定是否進行斬波控制,以達到控制電機繞組電流峰值、保護步進電機的目的
由於L297內部帶有斬波恆流電路,繞組相電流峰值由Uref確定。當採用兩片L297通過L298分別驅動步進電機的兩繞組,且通過兩個D/A轉換器改變每相繞組的Uref時,即組成了步進電機細分驅動電路。另外,為了有效地抑制電磁干擾,提高系統的可靠性,在單片機與步進電動機驅動迴路中利用兩個16引腳光電耦合器件TLP521-4組成如圖3所示的隔離電路。其作用是切斷了單片機與步進電動機驅動迴路之間電的直接聯系,實現了單片機與驅動迴路系統地線的分別聯接.防止處於大電流感性負載下工作的驅動電路產生的干擾信號以及電網負載突變產生的干擾信號通過線路串入單片機,影響單片機的正常工作。
4 軟體組成
在該電路中,將P1.0口設為電機開始按鈕,P1.1,P1.2,P1.3為速度選擇按鈕。速度由低到高,P1.4為電機停止按鈕。並設三檔速度的最高速度依次為500pps、1000pps、2000pps 。RXD,TXD 已由MAX232電平轉換接出串口。此外,步進電機其啟動,停止的頻率較低,一般在100-250Hz之間,而最高運行頻率要求較高。通常為1-3kHz,為使其在啟動、運行和停止整個過程中,既不會失步,又能夠盡快精確地達到目標位置,運行速度都要有一個加速一恆速減速的過程。這里採用常用的離散辦法來逼近理想的近似梯形的升降速曲線,如圖5所示。即利用定時器中斷方式來不斷改變定時器裝載值的大小.

本例中.為計算方便,把各離散點的速度所需的裝載值用公式轉化為各自所需的定時時間固化在系統的ROM 中,這里用TH0=(65536-time)/256,TL0=(65536-time)%256來計算裝載值,time表示各階梯所需定時時間。系統在運行中用查表法查出所需的時間,從而大幅度減少佔用CPU的時間,提高系統的相應速度。因此.該程序主要由控制主程序、加減速子程序組成,主程序框圖如圖4所示。

5 結論
本文創新點在於提出應用單片機和L297、L298集成電路構成步進電機控制驅動器。使之具有元件少.可靠性高、占空間少、裝配成本低等優點。通過軟體開發,可以簡化和減輕微型計算機的負擔。另外。在上面提出的在加減速程序中定時器的裝載值用式子計算不精確,這兩條賦值要執行不少的時間.具體做的時候.可直接把初值計算出來或把除號用相加來計算.以達到精確的目的。

B. 基於stm32單片機與tb6600驅動器控制42步進電機的問題

基於STM32單片機與TB6600驅動器控制42步進電機的問題,解決方法如下:

  1. 檢查信號埠短路情況

    • 測量電阻:首先,使用萬用表測量STM32單片機輸出到TB6600驅動器的信號埠對地的電阻。這是為了判斷是否存在短路現象,短路可能會導致信號異常或驅動器無法正常工作。
  2. 核對程序設置

    • 程序審查:仔細檢查STM32的程序設置,確保IO口的配置正確無誤。這包括IO口的模式、輸出電平、以及任何與步進電機控制相關的定時器或PWM設置。
    • 避免沖突:同時,確認沒有其他地方的程序代碼錯誤地修改了這些IO口的設置,以避免潛在的沖突。
  3. 增強IO口驅動能力

    • 判斷驅動能力:如果信號埠看似正常,但步進電機仍然無法正常工作,可能是STM32單片機的IO口驅動能力不足。這通常表現為信號不穩定或驅動器無法正確識別控制信號。
    • 增加上拉電阻:為了提高IO口的驅動能力,可以嘗試在信號線上增加適當的上拉電阻。這有助於增強信號的穩定性和可靠性。
    • 使用邏輯IC轉接:如果增加上拉電阻效果不佳,可以考慮使用邏輯IC來轉接信號。邏輯IC具有更強的驅動能力,能夠確保信號在傳輸過程中不受損失。

通過以上步驟,通常可以解決基於STM32單片機與TB6600驅動器控制42步進電機時遇到的大多數問題。如果問題仍然存在,建議進一步檢查硬體連接、驅動器設置以及步進電機本身的狀態。

C. 基於單片機的步進電機控制,有高手懂嗎本人的畢業論文.學哥學姐.懂的都說幾句..謝謝啦..

為1,TH1的預設值為0CH,TL1的預設值為00H。
③ PC機與AT89C51單片機均採用串列口方式3。
④ 幀格式為:1位起始位,8位數據位,1位偶效驗位,1位停
止位。
⑤ PC機發送的數據幀為:
表1 PC機發送數據幀表
幀起始標志為 02H,假設電動機的運行標號為5號,對應的
ASCII碼值為30H,35H兩個位元組表示。若命令為傳送命令MOV
則用0表示,其對應的ASCII碼值為30H,用一個位元組表示。D
表示步進電動機運行的方向標志,若為0則表示電動機正轉,其
對應的ASCII碼值為30H;若為1,則表示電動機反轉,其對應的
ASCII碼值為31H。P表示PC機傳送給單片機的總的走的脈沖
數。若傳送的命令為設置命令SET則用1表示,其對應的ASCII
碼值為31H,用一個位元組表示。需要單片機設置的參數有:a, V
和 L;為了便於PC機與AT89C51的通信編程,數據的長度取6
個位元組。傳送的數據只有5個位元組,剩餘的1個位元組均用ASCII
碼值30H補足,對應的為0。這樣做不影響效驗和。若為傳送命
令幀,則效驗和定義為方向信號D與總的脈沖數P的十六進制之
和再轉換為相對應的ASCII碼值。若為設置命令幀,則效驗和定
義為a、V與L的十六進制之和再轉換為D對應的ASCII碼值。
幀結束標志為03H。
⑥ PC機採用查詢的方式發送和接收數據,AT89C51單片機
採用串列口中斷的方式接收和發送數據。
3.3 控制軟體的設計
控制步進電動機勻加速、恆速、勻減速運行的程序流
程圖如圖2。
圖2 控制步進電機的程序流程圖
4 結束語
參考文獻:
[1] 韓全立。單片機控制技術及應用[M]。北京:電子工業出
採用本方案可以很好的實現對步進電動機的控制。目前此
版社,2004
方案已經成功應用於電機控制的工廠等並取得了良好的效益,並
[2] 求是科技。單片機典型模塊設計實例導航[M]。北京:人
正試圖將其進一步完善以應用於壓縮機、洗衣機等日常設備中。
民郵電出版社,2004
[3] 胡漢才,單片機原理及系統設計[M]。北京:清華大學出
當然,隨著控制產品與控制技術的發展,步進電機的控制也會得到
版社,2002
進一步完善。
[4] 王曉明。電動機的單片機控制[M]。北京:北京航天航空
大學出版社,2002
[5] 楊金岩,鄭應強,張振仁。8051單片機數據傳輸介面擴展
技術與應用實例[M]。北京:人民郵電出版社,2005

閱讀全文

與基於單片機的步進電機控制器相關的資料

熱點內容
錄像免壓縮 瀏覽:504
總結所學過的簡便演算法 瀏覽:360
南昌哪些地方需要程序員 瀏覽:758
三台伺服器配置IP地址 瀏覽:173
如何用命令方塊連續對話 瀏覽:278
win7linux共享文件夾 瀏覽:304
命令符打開本地服務 瀏覽:599
android應用程序源碼 瀏覽:703
安卓開發工程師簡歷怎麼寫 瀏覽:60
熱水器水量伺服器是什麼意思 瀏覽:117
stk衛星編譯 瀏覽:480
對後台程序員的要求 瀏覽:761
ios大文件夾圖標 瀏覽:626
生的計劃pdf 瀏覽:714
oppoa93加密便簽在哪查找 瀏覽:21
兩個數字的加減乘除運算編程 瀏覽:227
給手機加密碼忘記了怎麼辦 瀏覽:601
單片機運算符 瀏覽:297
移動端微信商城源碼 瀏覽:446
編程貓下一個背景在哪裡 瀏覽:359