TB6612驱动和MG513P3012V电机

用的是stm32f103c9t6

驱动

驱动的意义:实现将3.3v的pwm转换成更高电压比如12v的pwm,同时还可以控制pwm的极性是+12还是-12

 vcc:原先的pwm电平

vm:转换后的pwm电平

pwma:输入pwm

ain2,ain1:

 stby:1正常工作,0待机

ao1-a02: 输出一路pwm连到电机线上,这个pwm的电压就是vm端所接的电压,比如这里就是12v

b01-b02同理

电机

 编码器和电机是两码事!!! 编码器和电机是两码事!!!只是都在一块。

编码器是用来测速度的,(其实可以不用连,当不需要测速时),他会输出两相pwm,利用这两相可以测速度和方向,原理见:

参考资料:

 

(107条消息) stm32学习探究:利用TB6612驱动直流电机_浅亡的博客-CSDN博客_stm32驱动直流电机

(107条消息) 平衡小车—TB6612FNG与直流电机控制教程_果果小师弟的博客-CSDN博客_tb6612fng原理图平衡小车—TB6612FNG与直流电机控制教程_51CTO博客_直流电机 控制

(107条消息) 编码器计数原理与电机测速原理——多图解析_小飞哥玩嵌入式的博客-CSDN博客_编码器计数哎,致敬我烧坏的一半驱动,还好电机和编码器没事。

  • 12
    点赞
  • 74
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TB6612驱动电机是一款直流电机驱动器件,它具有大电流MOSFET-H桥结构,可同时驱动2个电机。每通道输出最高1.2 A的连续驱动电流,启动峰值电流达2A/3.2 A(连续脉冲/单脉冲)。它支持4种电机控制模式:正转/反转/制动/停止,并且PWM支持频率高达100 kHz。[1] TB6612驱动电机的引脚功能如下: - VM电机电源正极是驱动电压输入端,通常需要大于10V。 - VCC是逻辑电平输入端,工作电压范围为2.7V~5.5V。 - PWMA和PWMB是两个电机的PWM脉冲输入,用于控制电机的速度。 - AIN1/AIN2和BIN1/BIN2用于控制电机的正反转和停止。[2] 在使用TB6612驱动电机时,需要根据具体的控制需求编写相应的驱动函数。例如,可以通过设置GPIO口的输出电平来控制电机的正反转和停止。同时,可以通过设置PWM的占空比来控制电机的速度。具体的驱动函数实现可以参考以下示例代码: ```c void go(int pwmnum) { GPIOB->ODR &= ~(1 << 3); // 设置PB3为低电平,控制电机方向 GPIOB->ODR |= 1 << 2; // 设置PB2为高电平,控制电机方向 GPIOB->ODR &= ~(1 << 1); // 设置PB1为低电平,控制电机方向 GPIOB->ODR |= 1 << 4; // 设置PB4为高电平,控制电机方向 MOTOR_Pwm_Valu = pwmnum; // 设置PWM占空比,控制电机速度 MOTOR_Pwm_Valu2 = pwmnum; // 设置PWM占空比,控制电机速度 } ``` 以上代码示例中,通过设置GPIOB口的输出电平来控制电机的正反转和停止,同时设置MOTOR_Pwm_Valu和MOTOR_Pwm_Valu2的值来控制PWM的占空比,从而控制电机的速度。[3]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值