A4988驅動42步進電機


A4988步進電機驅動器驅動控制42步進電機速度,步進電機調速,調節驅動電流 

   
 
 
1  A4988步進電機驅動器簡介
方便使用,是我們這些用戶最想要的,固有的名詞和深入介紹在這就不多說了,您可以百度,或這下載附件,芯片手冊中有詳細的說明。
A4988 是一款帶轉換器和過流保護的 DMOS 微步進電機驅動器,它用於操作雙極步進電機,在步進模式,輸出驅動的能力 35V 和± 2A
轉換器是 A4988 易於實施的關鍵。只要在“STEP”引腳輸入一個脈沖,即可驅動電動機產生微步。無須進行相位順序表、高頻率控制行或復雜的界面編程。 A4988 界面非常適合復雜的微處理器不可用或過載的應用。
2  產品特點
1 、控制簡單,只需要控制 STEP DIR 兩個端口;
2 、精度調整,五種不同的步進模式:全、半、 1/4 1/8 1/16
3 、可調電位器可以調節輸出電流,從而獲得更高的步進率;
4 、兼容 3.3V 5V 邏輯輸入;
3  芯片典型電路
<ignore_js_op>  
注意步進電機的接線方式,步進電機為兩相四線的步進電機, OUT1AOUT1B分別接電機同相的兩端;OUT2AOUT2B 分別接電機另一相的兩端。在連接步進電機時,一定要知道哪兩個線是同一相。
4  最大額定值
<ignore_js_op>
5  步進模式設置
<ignore_js_op>
例如全模式時,一個脈沖,步進電機旋轉角度 1.8 °;在 1/4 模式時,一個脈沖,步進電機旋轉角度為 0.45 °。
6  模塊連接圖
<ignore_js_op>
測試中選擇型號為 17HS5413(42BYGH) 的兩相四線步進電機,步距角為 1.8 °, 200 個脈沖轉動一圈。
STEP DIR 分別連接單片機的兩個控制端口, EN 可以使用單片機端口控制,也可以直接連接 GND 使能; MS1 MS2 MS3 按照上一節“步進模式設置”,接高低電平,設置步進模式,來選擇不同的步距角。 設置脈沖的頻率,來控制旋轉速度。
2B 2A 1A 1B 分別接步進電機紅、藍、黑、綠線。
VMOT GND 12V 左右直流電源(電壓大小更具步進電機不同,選擇合適電壓)。
VDD GND 3.3V 5V
7  實驗代碼
  1. //初始化步進電機控制端口
  2. //STEP1 PCout(4)
  3. //DIR1 PCout(5)
  4. void STEP_Init(void)
  5. {
  6.         RCC->APB2ENR|=1<<4;    //使能PORTC時鍾
  7.         GPIOC->CRL&=0XFF00FFFF;        
  8.         GPIOC->CRL|=0X00330000;
  9. }
  10. //dir:為方向控制,TRUE:正轉 FALSE:反轉
  11. //period為周期
  12. //steps:脈沖個數
  13. void Step_Control(u8 dir,u16 period,u32 steps)
  14. {
  15.         u32 i;
  16.         for(i=0; i <= steps;i++)
  17.         {
  18.                 DIR = dir;
  19.                 STEP = 1;
  20.                 delay_us(1);
  21.                 STEP = 0;
  22.                 delay_us(period);
  23.         }
  24. }
  25. #define        TRUE  1
  26. #define FALSE 0
  27. //端口定義
  28. #define STEP PCout(4)
  29. #define DIR PCout(5)
  30. int main(void)
  31. {                                  
  32.         Stm32_Clock_Init(9); //系統時鍾設置
  33.         delay_init(72);             //延時初始化        
  34.         STEP_Init();                 //步進電機驅動端口初始化
  35.         LED_Init();                           //初始化與LED連接的硬件接口
  36.         while(1)
  37.         {        
  38.                 LED = !LED;
  39.                 Step_Control(FALSE,1600,200);
  40.                 delay_ms(1000);
  41.                 Step_Control(TRUE,1600,400);
  42.                 delay_ms(1000);
  43.         }         
  44. }
程序實現功能:電機反轉 1 圈、正轉 2 圈。
不改變程序,設置不同的步進模式,觀察步進電機的旋轉角度。
<ignore_js_op> A4988步進電機驅動器使用手冊.rar (636.55 KB, 下載次數: 554) 
此文件主要包含1:A4988步進電機驅動器使用手冊,主要涉及步進模式設置、與單片機和步進電機的連接方式;
              2:A4988芯片手冊;
              3:步進電機驅動程序例程
例程是通過延時來實現控制步進電機速度的,缺點就是單片機“其他的不能干了”;也有使用PWM來控制步進電機的,但是這個缺點就是,調速度時要不停的初始化,脈沖個數也不好控制。個人決定中斷是最好用的,在下次更新的時候我們貼上。
 
 
 
 
 


   
 

大家還有一個比較關心的問題,就是如何調節A4988電機驅動的輸出電流
<ignore_js_op> 

最大輸出電流,與Rs和Vref有關,I=Vref/(8*Rs)。
Rs:在驅動板上是0805的貼片電阻封裝,通過上面的絲印,R***,可以知道電阻的阻值,我手中的模塊上面的電阻絲印為R100,電阻阻值為0.1Ω。
滑動變阻器:驅動板上的滑動變阻器為圓形的,上面有一個缺口,默認向下,順時針旋轉時,相當於上圖的滑動電阻指針向左移動,當缺口朝向A4988芯片時,是一個0Ω和10k的臨界狀態。
VDD加5V電源, Vref的最大電壓為1.67,I=1.67/(8*0.1)=2.09A。步進電機實際測得的電壓是A4988輸出電流的0.7倍,即1.46A。步進電機不同,承受的電流也不同,17HS5413的電流為1.3A,此時的輸出電流,已經高於電機所承受電流,需要將滑動變阻器逆時針旋轉。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM