基于stm32F103的 A4988驱动

简析步进电机:(会的就略过吧)
我用的是42步电机,常见的还有57步等等。
42步进电机是指安装机座尺寸是42mm的步进电机,其最大输出力矩是0.5NM;
  57步进电机是指安装机座尺寸是57mm的步进电机,其最大输出力矩是3.0NM。我也不懂啥意思。
  二相步进电机和四相步进电机的内部机构没有区别,只是内部引出线的接线方式不同而已。二相电机引出线是4根,四相电机的引出线可以是5根,也可以是6根。一般二相电机的步距角为0.9°/1.8°、三相的为0.75°/1.5°、五相的为0.36°/0.72° .
  以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A。按照某种拍子运行即通电顺序。
固有步距角:对应一个脉冲信号,电机转子转过的角位移用θ表示.θ=360度(转子齿数J*运行拍数),以常规二、四相,转子齿为50齿电机为例.四拍运行时步距角为θ=360度/(50*4)=1.8度(俗称整步),八拍运行时步距角为θ=360度/(50*8)=0.9度(俗称半步).这个步距角可以称之为‘电机固有步距角’,它不一定是电机实际工作时的真正步距角,真正的步距角和驱动器有关.
  正如4988板子背面所标识的,连接方式是依次连接步进电机的1B-1A-2A-2B,或者反向为2B-2A-1A-1B,或者1A-1B-2B-2A,其它的方式一次类推。如果你的电机线是标准的红蓝绿黑的颜色,可以按照颜色连接为:红-蓝-绿-黑,或相反:黑-绿-蓝-红。
  4988板子细分配置需要ramps或其它相似板子的短路块来配置。ramps上对应每个4988驱动都有ms1,ms2,ms3三个短路块来调节细分(需要取下4988板子才可以看到),
ms1 | ms2 | ms3
no | no | no |(整步)
yes | no | no |1/2(2细分)
no | yes | no | 1/4 (4细分)
yes | yes | no |1/8(8细分)
yes | yes | yes | 1/16(16细分)
DIR 控制正反转 ,DIR=1 正转 DIR = 0反转 STEP 接 PWM 每一个脉冲转对应一个角度。一般sleep 和 rest 短接 EN可以使用单片机端口控制,也可以直接连接GND使能,(低电平有效)凡是某个脚上的标志加了一横就是表示低电平有效。ms1,ms2,ms3按照上面接。
代码示例:
void Motor_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);            //GPIO CLOCK ENABLE  
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_13|GPIO_Pin_14;  
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;    
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;   
GPIO_Init(GPIOB, &GPIO_InitStructure);

GPIO_SetBits(GPIOB,GPIO_Pin_8);
  GPIO_SetBits(GPIOB,GPIO_Pin_9); 
GPIO_SetBits(GPIOB,GPIO_Pin_10);

}
period 周期 步数 根据需要更改
void Step_Control(u8 dir,u16 period,u32 steps)
{
u32 i;
for(i=0; i <= steps;i++)
{
DIR = dir;
STEP = 1;
delay_us(1);
STEP = 0;
delay_us(period);
}
int main(void)
{
u8 temp;
int i ;
delay_init();
uart_init(4800);
LED_Init();

LCD_Init();     
Motor_Init();
while(1)
{

    Step_Control(1,1600,200);
    delay_ms(1000);
    Step_Control(0,1600,400);
    delay_ms(1000);
}    

}

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值