日常:
看了很多博客都没有42BYGH34-401这种电机 其实都一样 我这个是两相的步进电机 调了两周终于把这个42步进电机转起来了,期间经历了各种问题,废话不多说上图。
TB6600驱动器:
这里我用了一个220v转24v 3A的一个开关电源 三角插头是我把机箱的充电线给剪了做的一个这样的 切记不要接错 怎么接去百度 接下来我要说的就是驱动器的AB两相 怎么区分呢 正常步进电机会有一个标签按那个接A+ A- B+ B-就行了 判断AB的方式就是万用表蜂鸣器档 鸣叫的话就是一相
?下边来说说驱动器另外几个引脚
?PUL+:脉冲信号输入正。PUL-:脉冲信号输入负。DIR+:电机正、反转控制正。DIR-:电机正、反转控制负。 EN+:电机脱机控制正。 EN-:电机脱机控制负。VCC:电源正端“+” GND:电源负端“-”
通俗来说 两种接法共阴极或者共阳极 共阳极三个+接5v 共阴极三个 - 接地 EN+-可以不接
PUL就是接受脉冲的引脚 步进电机收到32发出的脉冲 步进电机驱动器转化成角位移给步进电机实现转动的效果
DIR就是控制电机方向
EN就是能不能脱机控制步进电机
代码:?
#include "stm32f10x.h"
#include "bsp_led.h"
#include "bsp_exti.h"
#include "MicroStepDriver.h"
#include "bsp_usart.h"
#include "MSD_test.h"
/**
* @brief 主函数
* @param 无
* @retval 无
*/
int main(void)
{
//初始化LED
LED_GPIO_Config();
//初始化按键
EXTI_Key_Config();
//初始化串口
USART_Config();
//步进电机初始化
MSD_Init();
//打印帮助命令
ShowHelp();
while(1)
{
//处理串口数据
DealSerialData();
}
}
/*********************************************END OF FILE**********************/
接线:
?PUL+ ? --- ? PA3 ?PUL- ? --- ? GND ?DIR+ ? --- ? PB14 ?DIR- ? --- ? GND ?ENA+ ? --- ? PC4 ?ENA- ? --- ? GND?
|