資料介紹
描述
半步電機(jī)驅(qū)動(dòng)器
該項(xiàng)目是如何更準(zhǔn)確地驅(qū)動(dòng)雙極步進(jìn)電機(jī)的示例。驅(qū)動(dòng)是通過(guò)軟件切換 IO(bitbanging)并使用 Arduino MKR 的 PWM 定時(shí)器來(lái)完成的。對(duì)于半橋,我們使用 ST L298N 。
為什么是半步?
雙極步進(jìn)電機(jī)通常通過(guò)切換線圈進(jìn)行四相步進(jìn)。添加中間步驟使其更加準(zhǔn)確和平滑(但扭矩會(huì)小一些)。這是一個(gè)有趣的鏈接,用于說(shuō)明整步和半步之間的區(qū)別。我們將切換以下圖表:

我們總共有 8 個(gè)狀態(tài),一個(gè)接一個(gè)地對(duì)微步進(jìn)行排序。每個(gè)序列狀態(tài)的時(shí)間將定義切換速度和電機(jī)速度。通過(guò)將線圈序列之一相移 180 度(4 微步),方向很容易控制。
Bitbanging 和 PWM
使用的 L298N 電機(jī)驅(qū)動(dòng)器可以驅(qū)動(dòng)全橋 MOSFET 并切換線圈電流的正向、負(fù)向(或關(guān)閉)。

這是通過(guò)軟件 IO 切換 - 位轉(zhuǎn)換 - IN1/IN2 和 IN3/IN4 輸入來(lái)完成的。L298N 驅(qū)動(dòng)器是內(nèi)部設(shè)置的,以防止通過(guò) IN 信號(hào)上的反相輸入門(mén)在一條腿上出現(xiàn)捷徑 - 很好 :)。也可以用 PWM 信號(hào)驅(qū)動(dòng)電橋使能信號(hào) ENA/ENB,在線性區(qū)域稍微控制電流。這是由 Arduino Micro 的硬件完成的。MKR 版本有一個(gè) ATSAMD21,可以產(chǎn)生 25Khz PWM 信號(hào)。有關(guān)詳細(xì)信息,請(qǐng)參閱我的其他高速 PWM 項(xiàng)目。L298N 驅(qū)動(dòng)程序在Arduino Motor Shield Rev3上設(shè)置,它將數(shù)字 IO 和感應(yīng) IO 連接到模擬輸入,因此我們可以測(cè)量通過(guò)電機(jī)的電流。還將使用外部電源 (12V) 并在電機(jī)護(hù)罩上提供支持。(重要:拆焊 Vin 連接?。┪覀兪褂?/font>MKR2UNO轉(zhuǎn)換板將它們連接在一起。
NEMA 17 步進(jìn)器
對(duì)于這個(gè)項(xiàng)目,我們使用 NEMA 17 格式的雙極步進(jìn)電機(jī)。它有 200 步(每步 1.8 度),但使用半步驅(qū)動(dòng)需要 400 步轉(zhuǎn)一圈。每個(gè)線圈的最大電流為 0.75A,我們通過(guò) SenseA 以 1.65V/Amp 測(cè)量 CoilA 上的電流。
軟件代碼
Arduino 代碼寫(xiě)在一張草圖中。我使用全局變量來(lái)定義關(guān)鍵數(shù)據(jù),例如:
- Sequencer[7][8]:每個(gè)驅(qū)動(dòng)信號(hào)的 8 個(gè) ustep 狀態(tài)的序列。
- CurrentArray0[32]:用于監(jiān)視電流和計(jì)算鎖定的滾動(dòng)數(shù)據(jù)
- ShadowArray[512]:調(diào)試數(shù)據(jù)數(shù)組,用于繪制電流圖
關(guān)鍵例程如下,代碼中自解釋?zhuān)?/font>
- MotorLoop(int lps, int dir):驅(qū)動(dòng)電機(jī)在任何方向上進(jìn)行 x 步
- int CalcArray():計(jì)算鎖定狀態(tài),返回%電流偏差(*10)
- MotorPowerDown():通過(guò)關(guān)閉半橋關(guān)閉電機(jī)。(無(wú)電流)
- DataDump():通過(guò)串口轉(zhuǎn)儲(chǔ)監(jiān)控和調(diào)試數(shù)據(jù)
電機(jī)回路
電機(jī)回路正在讀取序列發(fā)生器陣列,寫(xiě)入 IO(EN1/EN2、EN3/EN4)并寫(xiě)入 PWM 占空比(ENA/ENB)。以微秒為單位的相位延遲也在定序器陣列中。方向是通過(guò)將 CoilB 的數(shù)組索引移動(dòng) 0 或 4 來(lái)完成的。第一圈還有一個(gè)啟動(dòng)序列 (#define MOTORSTART)。它的啟動(dòng)速度稍慢(扭矩更大),然后按照編程保持在正常速度。
鎖定監(jiān)控
關(guān)鍵是理解鎖倉(cāng)計(jì)算。該程序在每第 3 個(gè)序列狀態(tài)(最大電流驅(qū)動(dòng))中測(cè)量 CoilA 中的電流,并將其保存在監(jiān)控?cái)?shù)組中。然后計(jì)算當(dāng)前*時(shí)間偏差。為什么?> Current*Time與Watt*Time成線性關(guān)系(假設(shè)電壓恒定),相當(dāng)于Newton*Meter,也就是系統(tǒng)中的能量變化量(焦耳)。測(cè)量這種能量變化并觸發(fā)超過(guò)某個(gè)值,就會(huì)觸發(fā)鎖定。鎖定觸發(fā)器在代碼中定義 (#define MOTORLOCK)
你的馬達(dá)?
對(duì)于每個(gè)電機(jī),此電流*時(shí)間行為都會(huì)不同。要理解這一點(diǎn),您可以轉(zhuǎn)儲(chǔ)測(cè)量的電流數(shù)據(jù)(用分號(hào)分隔),并將其復(fù)制粘貼到 Xls 表,制作數(shù)據(jù)表,計(jì)算觸發(fā)器和圖表:

當(dāng)以不同的 PWM 電平或其他時(shí)序速度驅(qū)動(dòng)時(shí),您會(huì)在測(cè)量中看到嚴(yán)重的斬波尖峰。有一個(gè)設(shè)置可以使電流尖峰達(dá)到一定水平以上。(#define PEAKFILTER),改變并嘗試。:)
- 使用Arduino L298N控制光驅(qū)兩項(xiàng)四線步進(jìn)電機(jī)
- 電機(jī)驅(qū)動(dòng)器L298N模塊介紹
- Arduino實(shí)驗(yàn)17 L298N電機(jī)驅(qū)動(dòng)模塊
- Arduino使用伺服和L298N驅(qū)動(dòng)器的避障車(chē)
- L298n電機(jī)驅(qū)動(dòng)器Arduino開(kāi)源
- 如何使用L298N電機(jī)驅(qū)動(dòng)器
- arduino的L298N電機(jī)驅(qū)動(dòng)模塊 10次下載
- L298N電機(jī)驅(qū)動(dòng)
- L298N電機(jī)驅(qū)動(dòng)的使用
- L298N步進(jìn)電機(jī)驅(qū)動(dòng)器的詳細(xì)資料介紹 46次下載
- L298N電機(jī)驅(qū)動(dòng)器的詳細(xì)資料合集免費(fèi)下載 256次下載
- L298N直流步進(jìn)兩用驅(qū)動(dòng)器電路圖與CPB 0次下載
- L298N電機(jī)驅(qū)動(dòng)器_共地電路圖與PCB源文件 0次下載
- L298N直流步進(jìn)兩用驅(qū)動(dòng)器參考程序 0次下載
- L298N電機(jī)驅(qū)動(dòng)模塊指導(dǎo)書(shū) 63次下載
- 步進(jìn)電機(jī)驅(qū)動(dòng)器有哪些類(lèi)型?該如何分類(lèi)? 1.7k次閱讀
- 如何正確選擇步進(jìn)電機(jī)驅(qū)動(dòng)器 4k次閱讀
- 為什么步進(jìn)電機(jī)要加驅(qū)動(dòng)器 3.6k次閱讀
- L298N引腳定義及功能 4.3w次閱讀
- L298N模塊介紹 9.3k次閱讀
- 如何使用L298N和Arduino板控制直流電機(jī) 1.3w次閱讀
- 步進(jìn)電機(jī)驅(qū)動(dòng)器有什么參數(shù)_步進(jìn)電機(jī)驅(qū)動(dòng)器常見(jiàn)故障維修 1.8w次閱讀
- dfrobotL298N直流電機(jī)驅(qū)動(dòng)模塊DF-MD介紹 4.9k次閱讀
- 步進(jìn)電機(jī)驅(qū)動(dòng)器工作模式_步進(jìn)電機(jī)驅(qū)動(dòng)器電路圖 1w次閱讀
- l298n驅(qū)動(dòng)電機(jī)的工作原理_L298N驅(qū)動(dòng)步進(jìn)電機(jī)程序 7.2w次閱讀
- TMS320F28027與L298N的懸掛運(yùn)動(dòng)控制系統(tǒng)設(shè)計(jì) 4.8k次閱讀
- 基于Intel8253與L298N的電機(jī)PWM調(diào)速方法 7.7k次閱讀
- L298N中文資料匯總_L298N引腳圖及功能_工作原理_特性參數(shù)及典型驅(qū)動(dòng)電路 59.1w次閱讀
- 汽車(chē)動(dòng)力系統(tǒng)之微步步進(jìn)電機(jī)驅(qū)動(dòng)器技術(shù)性分析 2.3k次閱讀
- 微步步進(jìn)電機(jī)驅(qū)動(dòng)器在AFS應(yīng)用中堵轉(zhuǎn)檢測(cè)的實(shí)現(xiàn) 5.7k次閱讀
下載排行
本周
- 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費(fèi)
- 2冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 1次下載 | 10 積分
- 3MDD品牌三極管MMBT3906數(shù)據(jù)手冊(cè)
- 2.33 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管S9012數(shù)據(jù)手冊(cè)
- 2.62 MB | 次下載 | 免費(fèi)
- 5LAT1218 如何選擇和設(shè)置外部晶體適配 BlueNRG-X
- 0.60 MB | 次下載 | 3 積分
- 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
- 0.89 MB | 次下載 | 3 積分
- 7收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊(cè)
- 2.50 MB | 次下載 | 免費(fèi)
- 8MS1000TA 超聲波測(cè)量模擬前端芯片技術(shù)手冊(cè)
- 0.60 MB | 次下載 | 免費(fèi)
本月
- 1愛(ài)華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說(shuō)明
- 0.31 MB | 22次下載 | 1 積分
- 4UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書(shū)
- 838.47 KB | 5次下載 | 免費(fèi)
- 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
- 7100W準(zhǔn)諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
- 8FS8025B USB的PD和OC快充協(xié)議電壓誘騙控制器IC技術(shù)手冊(cè)
- 1.81 MB | 1次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開(kāi)源硬件-PMP21529.1-4 開(kāi)關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問(wèn)
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論