STM32 电机教程 2 - 直流有刷电机转动控制
前言
有刷电机是大家最早接触的一类电机,中学时物理课堂上介绍电动机也是以它为模型来展示的。有刷电机的主要结构就是定子+转子+电刷,通过旋转磁场获得转动力矩,从而输出动能。电刷与换向器不断接触摩擦,在转动中起到导电和换相作用。
有刷电机采用机械换向,磁极不动,线圈旋转。电机工作时,线圈和换向器旋转,磁钢和碳刷不转,线圈电流方向的交替变化是随电机转动的换相器和电刷来完成的。
在有刷电机中,这个过程是将各组线圈的两个电源输入端,依次排成一个环,相互之间用绝缘材料分隔,组成一个像圆柱体的东西,与电机轴连成一体,电源通过两个碳元素做成的小柱子(碳刷),在弹簧压力的作用下,从两个特定的固定位置,压在上面线圈电源输入环状圆柱上的两点,给一组线圈通电。
随着电机转动,不同时刻给不同线圈或同一个线圈的不同的两极通电,使得线圈产生磁场的N-S极与最靠近的永磁铁定子的N-S极有一个适合的角度差,磁场异性相吸、同性相斥,产生力量,推动电机转动。碳电极在线圈接线头上滑动,像刷子在物体表面刷,因此叫碳“刷”。
相互滑动,会摩擦碳刷,造成损耗,需要定期更换碳刷;碳刷与线圈接线头之间通断交替,会发生电火花,产生电磁破,干扰电子设备。
有刷电机采用机械自动换向方式,控制起来特别简单,特别是直流有刷电机,只需在电机电极上通上直流电就可以让其转动起来,本节以下图所示的1718直流有刷电机为例 ,为大家展示如何用NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH让其转动起来!!
示例详解
本节用到ST官方推出的NUCLEO-F103RB和X-NUCLEO-IHM07M1 3SH 开发板。
NUCLEO-F103RB对应的大致原理接线图:
X-NUCLEO-IHM07M1 3SH部分原理图:
- 准备操作
- X-NUCLEO-IHM07M1 3SH是一款专门用于PMSM(永磁同步)或BLDC(直流无刷 )的电机驱动板(后面的章节将会给大家展示),当然也可以用于驱动直流有刷电机,本节就用它来控制直流有刷电机(1718,电压7-11V,实际使用9.6V),X-NUCLEO-IHM07M1 3SH电机驱动板驱动芯片型号为L6230(详细数据手册可在st官网下载),本节仅用IN1,IN2,和OUT1,OUT2即可!
需要用到的信号 |
对应MCU引脚 |
EN1 |
PC10 |
IN1 |
PA8 |
EN2 |
PC11 |
IN2 |
PA9 |
本节将直接使能EN1及EN2引脚,并直接置高或拉低IN1或IN2引脚,实现有刷直流电机的正反转(全速)。
- 打开stcubemx,新建工程,MCU选择stm32f103rb,在弹上的列表中双击STM32F103RBTX(LQFP64封装的那个):
本按下方图分别对RCC,SYS,GPIO进行配置并生成工程:
- 在main.c中main函数里加入如下代码,让电机实现正转10秒后反转10秒循环:
设置工程下载后自动运行:
编译代码,下载程序运行可以看到电机成功转动起来,并如程序设定效果一致实现了正转10秒后反转10秒循环。
本节,成功让电机转动起来并实现了转动方向控制,但是电机的转速是完全是受控制,下一节将结合STM32的定时器产生PWM波的功能来控制PWM波的占空(相当于控制电机的电压)实现电机的速度控制(开环)!OK,本期实验完成!同时如果大家有什么疑问或是有想了解的其它内容,也欢迎大家留言!!最后喜欢这个公众号的同学们记得加关注了,每天都会有技术干货推出!!
文中源码资料下载,关注十三公众号:
在公众号里给十三发送 “下载|STM32 电机教程2” :
STM32 电机教程 2 - 直流有刷电机转动控制相关推荐
- STM32 电机教程 33 - 无刷电机无感控制快速实现
前言 上一节<STM32 电机教程 32 - 基于ST X-CUBE-SPN7 无刷无感电机库的电机驱动实现>给大家分享了ST的官方的无刷电机无感控制实现方案(基于NUCLEO-F103R ...
- STM32 电机教程 25 - ST MCLIB实战之开环svpwm控制
前言 上一节已经成功手动将工程修改成绝对式位置传感器方案FOC,有些朋友可能按照上面的操作电机已经成功转动起来了,可能有些朋友的还是有点问题,电机转动不起来有很多因素,如接线相序不对,位置不对,FOC ...
- STM32 电机教程 6 - 步进电机转动控制
前言 上一讲给大家介绍了步进电机的基础知识,相信大家对步进电机的基本工作原理有了一定的了解(如果没看上一节内容,可以先看一下,https://blog.csdn.net/zhanglifu360188 ...
- STM32 电机教程 9 - BLDC电机基础
本节内容整理自<无刷直流( BLDC)电机基础>( MicroChip 公司,编号 AN885)和<直流无刷电机的原理及其控制>( infineon 公司) 前言 无刷直流 ( ...
- STM32 电机教程 31 - 无刷无感控制原理
前言 前面<STM32 电机教程 29 - 无刷无感入门1>和<STM32 电机教程 30 - 无刷无感入门2>我们通过两种方式有BLDC电机无HAL传感器的情况下成功地让电机 ...
- STM32 电机教程 30 - 无刷无感入门2
前言 无刷直流 (Brushless Direct Current, BLDC)电机是一种正快速普及的电机类型,它可在家用电器.汽车.航空航天.消费品.医疗.工业自动化设备和仪器等行业中使用.正如名称 ...
- STM32 电机教程 29 - 无刷无感入门1
前言 无刷直流 (Brushless Direct Current, BLDC)电机是一种正快速普及的电机类型,它可在家用电器.汽车.航空航天.消费品.医疗.工业自动化设备和仪器等行业中使用.正如名称 ...
- STM32 电机教程 11 - BLDC 6 步方波开环速度控制
前言 无刷直流 (Brushless Direct Current, BLDC)电机是一种正快速普及的电机类型,它可在家用电器.汽车.航空航天.消费品.医疗.工业自动化设备和仪器等行业中使用.正如名称 ...
- STM32 电机教程 15 - BLDC 速度环内嵌电流环
前言 无刷直流 (Brushless Direct Current, BLDC)电机是一种正快速普及的电机类型,它可在家用电器.汽车.航空航天.消费品.医疗.工业自动化设备和仪器等行业中使用.正如名称 ...
最新文章
- 如何写一篇不水的机器学习论文?这17页指南从建模、评估到写报告,手把手教你...
- 三大运营商齐发力大数据
- 【数字信号处理】相关函数应用 ( TDOA 时差估计实例 | 调制波特率 | 带宽 | 码元数量 | 信息量 )
- Python的IDE:利用MyEclipse2017软件的PyDev插件实现Python编程
- ahjesus解决win下U盘无法写入的问题
- 遗传算法求解装箱问题c语言,求解装箱问题的遗传算法-南昌航空大学期刊网.pdf...
- 悉尼大学计算机录取要求,Q 同学_悉尼大学_计算机_录取成功案例分享
- linux命令补遗 - 1
- MyEclipse9.0 XJad的配置
- perl练习——FASTA格式文件中序列GC含量计算perl数组排序如何获得下标或者键
- python 实现 加减乘除,对数指数,三角反三角计算器
- C# 实现支持markdown语法编辑器
- 卖辣椒包的也要IPO:给肯德基们“打工”,但志不在此
- 抢红包算法 c语言版本,抢红包算法实现示例
- 原创 全城公交标注系统 (2)
- 成长为 iOS 大 V 的秘密
- iOS开发--下滑返回dismiss
- 07 Django组件-中间件
- TCP协议发送SKB时ip_summed初始值为0
- 一点点的社会经济学和组织领导学