之前把MPU6050的相关知识了解了一下,可以做到测量欧拉角,在平衡小车的开发中需要测量小车的倾角来调整小车姿态。接下来该学习小车的电机驱动部分了,这里整理一下直流电机、减速器、编码器以及TB6612FNG的知识,为下一步驱动电机打基础!

文章目录

  • 一.直流电机
    • 1.定义
    • 2.原理
  • 二.TB6612FNG
    • 1.简介
    • 2.优点
    • 3.使用方法
  • 三.减速器
    • 1.作用
    • 2.分类
  • 四.编码器
    • 1.概述
    • 2.原理
    • 3.四倍频技术

一.直流电机

1.定义

直流电机在生活中很常见,比如玩具赛车的马达就是直流电机,我的平衡小车就采用直流电机驱动。下面是摘抄自百度的直流电机的定义:

直流电机(direct current machine)是指能将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。它是能实现直流电能和机械能互相转换的电机。当它作电动机运行时是直流电动机,将电能转换为机械能;

2.原理

决定直流电机转动方向的是电流的方向;决定直流电机的转速是电流的大小。
直流电机的原理高中物理就学过,这里再总结一下,下面是直流电机的物理模型:

可以分解为5部分:

  • 电刷
  • 换向片
  • 线圈
  • 主磁极

由左手定则知道,当线圈中通有电流时,上下线圈所受的洛伦兹力相反,这样就使线圈转起来了,当线圈转至水平面是,换向片互换位置,线圈电流方向改变,又一次循环开始了…
所以,决定电机转动的就是电刷上电流的大小的方向。

二.TB6612FNG

1.简介


了解了直流电机的驱动原理,可以通过改变电流大小方向来控制直流电机,可以直接用单片机的引脚来实现。可是,单片机IO口带负载能力较弱,况且直流电机是大电流感性负载,所以我们需要使用功率放大器件,用到了TB6612FNG,其主要参数如下:
最大输入电压:VM=15V
最大输出电流:1.2A(平均)、3.2A(峰值)
内置过热保护和低压检测电路

2.优点

有的人喜欢用L298N模块,相比于L298N,TB6612FNG有很多改进的优点:

  • 发热小,无需散热片
  • 支持高达100KHz的PWM输入(L298N是10~20KHz)
  • 体积小,外围电路简单,只需要外接电源滤波电容就可以直接驱动电机

3.使用方法

TB6612FNG可以同时驱动俩路电机,如图,是TB6612FNG与电机的连接图:

TB6612FNG直接连接电机线,输出控制电压,具体的引脚说明如下:

  • VM:接12V电压(电机的额定电压)
  • VCC:模块内部逻辑供电,3.3V或者5V都可
  • GND:接地,三个GND有一个接地就行
  • STBY:置高,模块正常工作,一般3.3V或5V即可
  • PWMA:单片机输出PWM信号,占空比:0~100,对应控制输出电压,控制电机转速。一般输出10KHz的PWM就行
  • AIN0/AIN1:连接单片机IO,控制电压方向,从而控制电机转动方向
  • AO1/AO2:连接电机线,作为TB6612FNG的输出口

三.减速器

1.作用

一般直流电机的转速很快,可以达到每分钟几千上万转的转速,但是这样的转速太快了导致扭矩很小,而且实际中经常会用到转速小、扭矩大的电机,这个时候就要用到减速器了,减速器可以降低转速、提高扭矩。而且减速后的直流电机力矩增大、可控性增强。

2.分类

按照传动级数可以分为:

  • 单级减速器
  • 多级减速器

按照传动类型可以分为:

  • 齿轮减速器
  • 蜗轮蜗杆减速器
  • 行星齿轮减速器

    各种减速器的特点:
    齿轮减速器:减速箱体积小,传递的扭矩大,但是有一定的回程差。
    蜗轮蜗杆减速器:具有反向自锁功能,可以有较大的减速比,但是一般体积较大、传动效率不高、精度不高。
    行星齿轮减速器:结构紧凑,回程间隙小,精度高,寿命长,而且额定扭矩可以很大,但是,贵!!!

一般国产的减速电机都会搭配齿轮减速器的,我使用的这款减速电机就是。

四.编码器

1.概述

上面的知识足以驱动电机转动了,可是要怎么获取电机的转速情况或者电机的转动角度呢?这就用到编码器了!
编码器是一种将角位移或者角速度转换为一连串电数字脉冲的旋转式传感器,所以可以用来测量转动位置和测量速度,从输出数据类型上可以分为增量式和绝对式,从检测原理上一般分为光学式、磁式、感应式、电容式,常见的是光电编码器和霍尔编码器。
下面是百度百科对编码器的解释:

编码器(encoder)是将信号(如比特流)或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。编码器把角位移或直线位移转换成电信号,前者称为码盘,后者称为码尺。按照读出方式编码器可以分为接触式和非接触式两种;按照工作原理编码器可分为增量式和绝对式两类。增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小。绝对式编码器的每一个位置对应一个确定的数字码,因此它的示值只与测量的起始和终止位置有关,而与测量的中间过程无关

2.原理

下图是一个编码器工作的示意图:

一般在电机尾部安装一个光电码盘(霍尔码盘),然后使用光电管(霍尔元件)在电机转动的过程中对码盘进行测量,一般安装俩组光电管,所以测量结果可以输出俩路AB相的脉冲信号,根据AB的相位差可以判断电机的转动方向,根据一定时间脉冲判断电机转速。

3.四倍频技术


通过单片机IO口识别AB相脉冲信号的高低变化,测量AB相的上升沿和下降沿,这样的话,相当于原来测量一个信号的周期内现在可以测量四个信号(原来只是测量一个相的上升沿或者下降沿),这就使测量结果更加准确。
STM32可以通过自带的硬件计数来测量。

直流电机、减速器、编码器与TB6612FNG知识整理相关推荐

  1. 智能车|直流电机、编码器与驱动器---减速器

    智能车|直流电机.编码器与驱动器 直流电机减速器 直流电机减速器 为什么要加减速器: 一般直流电机的转速都是一分钟几千上万转的,所以一般需要安装减速器. 减速器的功能: 减速器是一种相对精密的机械零件 ...

  2. 智能车|直流电机、编码器与驱动器

    智能车|直流电机.编码器与驱动器 直流电机 直流电机原理 减速器 编码器 编码器简介 编码器的工作原理 四倍频采集 编码器采集程序实现 驱动器 TB6612FNG 电机驱动器 TB6612FNG 的主 ...

  3. 智能车|直流电机、编码器与驱动器---驱动器

    智能车|直流电机.编码器与驱动器---驱动器 驱动器 TB6612FNG 电机驱动器 TB6612FNG 的主要参数 引脚说明 驱动器 需要驱动器原因: 改变施加给电机电源±极之间的电压来调整转速,手 ...

  4. python常用变量名_python基础知识整理

    Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...

  5. Spring AOP 知识整理

    为什么80%的码农都做不了架构师?>>>    AOP知识整理 面向切面编程(AOP)通过提供另外一种思考程序结构的途经来弥补面向对象编程(OOP)的不足.在OOP中模块化的关键单元 ...

  6. Linux系统基础知识整理

    一.说明 本篇文章,我将结合自己的实践以及简介,来对linux系统做一个直观清晰的介绍,使得哪些刚接触Linux的小伙伴可以快速入门,也方便自己以后进行复习查阅. 二.基本知识整理 1.Linux文件 ...

  7. 计算机二级c语基础知识,计算机二级C语基础知识整理.doc

    计算机二级C语基础知识整理 1.1 算法 算法:是一组有穷指令集,是解题方案的准确而完整的描述.通俗地说,算法就是计算机解题的过程.算法不等于程序,也不等于计算方法,程序的编制不可能优于算法的设计. ...

  8. js事件(Event)知识整理

    鼠标事件 鼠标移动到目标元素上的那一刻,首先触发mouseover  之后如果光标继续在元素上移动,则不断触发mousemove  如果按下鼠标上的设备(左键,右键,滚轮--),则触发mousedow ...

  9. Spring学习篇:IoC知识整理(一)

    现在正通过spring的官方文档学习spring,将自己学习时的点点滴滴记录下来. Ioc知识整理(一): IoC (Inversion of Control) 控制反转. 1.bean的别名 我们每 ...

  10. 使用Aspose.Cells的基础知识整理

    使用Aspose.Cells的基础知识整理 转自 http://www.cnblogs.com/kenblove/archive/2009/01/07/1371104.html 这两天用Aspose. ...

最新文章

  1. GNN|如何做的比卷积神经网络更好?
  2. QA发现的令人抓狂的BUG
  3. 解决SQL Server 2000 错误15023:当前数据库中已存在用户或角色
  4. 5G NR 决定CORESET0频域位置的offset取值由来
  5. flask 接口 让别人能访问_flask搭建一个前后端分离的系统
  6. P1287 盒子与球(python3实现)
  7. Linux笔记-centos安装elasticsearch7版本
  8. 游戏开发筑基之判断回文数及static(C语言)
  9. mysql 加锁 索引_把MySQL中的各种锁及其原理都画出来
  10. linux brew 安装mysql_mac下通过brew安装mysql
  11. tensorflow keras 搭建相机位姿估计网络--例
  12. FileZilla Server连接服务器失败
  13. 通过身份证地址或家庭地址获取行政区划代码
  14. JavaScript中的模块化开发
  15. Redis的数据结构及底层原理
  16. typename和class
  17. 山东科技大学计算机篮球,球队资料:山东科技大学男子篮球队
  18. 东南大学计算机科学与技术夏令营,2019东南大学网络空间安全学院夏令营招生通知...
  19. 原生js实现(别踩白块小游戏)
  20. 【微信小程序】小程序应用和页面生命周期

热门文章

  1. pcs7更改项目计算机名时出错,pcs7的C/S模式,从AS下装到OS或客户机项目时出错-工业支持中心-西门子中国...
  2. python去除图片复杂背景_去掉图片黑背景输出为透明背景
  3. python:实现杨辉三角
  4. cru使用教程_极客自习室 篇四:「教程向」给你显示器超个频呗!一键提升40%!省下好几百!...
  5. Mac 删除不必要的 Adobe PS AI 组件
  6. Ghost安装系统步骤
  7. 自动驾驶汽车电子电气架构技术开发
  8. Java字符串排序-带数字字母的字符串混合排序
  9. java 字符串去重排序
  10. 微粒群算法(PSO)