42步进行星减速电机

一、设备型号:

1、42HS34步进电机+42XG减速机1:14,电机扭矩为0.28N

2、TB6600S电机驱动器

3、51单片机开发板

4、可移动电源

 二、代码运行

#include <reg51.h>
#define uint unsigned int

unsigned char timer1;

sbit DIR=P1^0;
sbit ENA=P1^1;
sbit PWM=P1^2;

void system_Ini()
{
TMOD = 0x00; //13λ
TH1 = 0xfd; //253
TL1 = 0x06; //6
EA = 1;
ET1 = 1;
TR1 = 1;
}

/*********************************************************
2^13=8192
25332=8096
8096+6=8102
8192-8102=90
12(1/11059200)= 1.09us
*********************************************************/

main()

{
system_Ini();
DIR = 0;
ENA = 0;
while(1)
{
if(timer1==40)
{
timer1=0;
}
if(timer1<20)
{
PWM=0;
}
else
{
PWM=1;
}
}
}

void Ti1(void) interrupt 3

{
TH1 = 0xfd;
TL1 = 0x06;
timer1++;
}

使用T1定时器实现。具体可参考51单片机控制42步进电机——程序实现(中断PWM/延时函数)_yukuaidere的博客-CSDN博客

三、电路连接

根据代码,进行连接其中pwm接口为驱动器上的pul接口均为脉冲信号口。该电路中使用的是共阳极,使能端可不接。

电机线的链接为蓝:B-,绿:A-,红:B+,黑:A+。电源接为9-10V即可。

四、注意事项

在使用驱动器时要注意细分与电流的调试与电机必须一致或在小于临界值的范围内,否则电机无法运行。可以根据电机所给型号来确定。

驱动器中s1-s3为细分开关,s4-s6为电机电流开关。

我使用的电机输入电流为1.3A,所以我将驱动器的控制电流选择为1.0A,即开关为s4on,s5off,s6on

/* 42电机步距角为1.8°/脉冲 16细分 360/1.8*16=3200 个脉冲电机转一圈 一个脉冲周期设为1ms 则3.2s转1圈 */

细分相关知识可参考入门到入魂:单片机如何利用TB6600高精度控制步进电机(42/57)_千歌叹尽执夏的博客-CSDN博客此处使用的是八细分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值