STM32CubeMX |
您所在的位置:网站首页 › l298n怎么驱动步进电机 › STM32CubeMX |
前言
人生如逆旅,我亦是行人。 ————苏轼《临江仙·送钱穆父》 目录: L298N电机驱动介绍编码器介绍电机介绍新建工程编写代码实验结果 一、L298N电机驱动介绍B站-视频讲解:l298n电机驱动模块 电机正反转 电机调速 L298N是 ST 公司生产的一种高电压、大电流电机驱动芯片。该芯片采用 15 脚封装。主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达 3A,持续工作电流为 2A ;额定功率 25W。内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。使用 L298N 芯片驱动电机,该芯片可以驱动一台两相步进电机或四相步进电机,也可以驱动两台直流电机。 作用与用途: 可实现电机正反转及调速;启动性能好,启动转矩大;工作电压可达到 36V,4A;可同时驱动两台直流电机;适合应用于机器人设计及智能小车的设计;下面为最常见的一款L298N芯片,值得注意的是,它已经内置的5V供电,所以不必从外面再接5V输入。届时5V端子将成为5V输出,为了保证L298N供电的稳定性(供电不足可能引起L298N的烧毁),不建议使用此5V供电作为单片机的电源。 理论上最高可以接入35v(没试过最低和最高的电压,此处是某宝卖家提供的参数),购买直流电机前,先看清楚直流电机的相关参数和性能,如果满足L298N的使用要求,再进行购买使用,否则容易烧毁L298N。 二、GND共地顾名思义,接地线。但要注意的是,此处GND不但要接驱动电源的GND,如果是和别的单片机或者其他系统连接在一起的时候,一定要从这里再引出一根GND和单片机或者系统的GND相连。即整个系统的GND连接在一起,如果不连接在一起,电压没有参考电平,无法进行正常的控制。 三、5V供电这是一个特殊的端口。既可以做L298N的逻辑电压的输入,也可以做外部单片机或系统的5v供电口。具体切换在板载5v跳帽中介绍。 四、板载5V跳帽 12v供电口接≥5V的电源电压时,板载5v跳帽不拔除,5v供电口有电压输出。数值具体大小自己用万用表测,反正当12v口接7.4v时,5v供电口是输出5v的。12v供电口≤5v的电源电压时,板载5v跳帽需要拔除,因为L298N需要逻辑驱动电压来驱动板子。此时5v供电口就变成了L298N的逻辑电压供电的输入口。供电电压在3.3v -5v之间。 五、通道AB使能跳帽 需要PWM控制就拔除,不需要PWM控制就不用拔除(老玩家就别管这句话了,就算不拔除也可以做到PWM调试的,应该懂的都懂)。PWM控制对于电机而言表现出来现象的就是转速控制,在Arduino里用analogWrite(Pin,Value)语句来实现 [Pin(对应的针脚),Value(0-255之间的整型数字)] 六、逻辑输入 IN1和IN2为一组,对应OutA(输出A);IN3和IN4为一组,对应OutB(输出B)。 七、输出AB直接接相应的输出即可。 !!强调!!:L298N电机驱动、STM32单片机、编码器电机三者在使用过程中,一定要把三者的GND连接在一起,也就是共地!!!驱动电压可以接受的输入范围是7~12V,板子标识为VCC输入,一般都是使用航模电池或买电池盒。 原理图:
B站-视频介绍:【电工知识】编码器是干什么用的,这下终于明白了! 编码器(encoder)是将信号(如比特流)或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。编码器可以把角位移或直线位移转换成电信号,是工业中常用的电机定位设备,可以精确地测试出电机的角位移和旋转位置。其最直接的作用就是可以测量位移,通过位移就可以计算出速度。 简单的来说,学习电机上的编码器,是为了能够通过编码器测出电机的转速,从而能够更好地控制电机进行工作。 1.编码器的种类 按输出信号分:增量式和绝对式增量式:就是每转过单位的角度就发出一个脉冲信号。通常为A相、B相、Z相输出,A相、B相为相互延迟1/4周期的脉冲输出,根据延迟关系可以区别正反转,而且通过取A相、B相的上升和下降沿可以进行2或4倍频;Z相为单圈脉冲,即每圈发出一个脉冲。 绝对式:就是对应一圈,每个 基准的角度 发出 一个唯一与该角度对应二进制的数值,通过外部记圈器件可以进行多个位置的记录和测量。 绝对式编码器由机械位置决定的每个位置是唯一的,它无需记忆,无需找参考点,而且不用一直计数,什么时候需要知道位置,什么时候就去读取它的位置,从而大大提高了编码器的抗干扰能力、数据可靠性提高。区别在于:绝对式掉电不丢失读取数值,增量式会丢失。 按传感技术分:光电式和霍尔式(光式、磁式、电容式)光电编码器,是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。这是应用最多的传感器,由光源、光码盘和光敏元件组成。 霍尔编码器是一种通过磁电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。 是由霍尔码盘(磁环)和霍尔元件组成。 光电式:当光线穿过齿轮盘时,接收器会计一次数,并传送给CPU。不同的转速,自然在相同时间内的计数值不一样,进而达到测速的功能。 霍尔式:霍尔码盘是在一定直径的圆板上等分地布置有不同的磁极。霍尔码盘与电动机同轴,电动机旋转时,霍尔元件检测输出若干脉冲信号,为判断转向,一般输出两组存在一定相位差的方波信号 (通常相差90°,我们称为AB相)。 测速可以通过计算相同时间内的脉冲数,判断转向: 可以看到下图,当顺时针旋转时,A相处在下降沿时,B相是高电平。A相处在上升沿时,B相是低电平;当逆时针旋转时,(即把上面的波形从右向左看)A相处在下降沿时,B相是低电平。A相处在上升沿时,B相是高电平。进而判断正反转。
我们通过软件的方法实现四倍频,首先可以看出图中编码器输出的AB相波形,正常情况下我们使用M法测速的时候,会通过测量单位时间内A相输出的脉冲数来得到速度信息,常规的方法,我们只测量A相(或者B相)的上升沿或者下降沿,也就是图中对应数字1234中的某一个,这样就只能计数3次,而四倍频的方法是测量A相和B相编码器的上升沿和下降沿。 这样在同样的时间内,可以计数12次(3个1234的循环)。这就是四倍频的原理。 因为编码器输出的是标准的方波,所以我们可以直接用单片机进行读取,在软件中的处理方法分两种,自带编码器接口的单片机如STM32,可以直接使用硬件计数,而没有编码器接口的单片机如51单片机,可以通过外部中断读取,比如把编码器A相输出接到单片机的外部中断输入口,这样就可以通过跳变沿触发中断,然后在对应的中断服务函数里面,通过B相电平来确定正反转。如当一个A相来一个跳变沿的时候,如果B相是高电平就认为是正转,低电平就认为是反转。 电机(英文:Electric machinery,俗称“马达”)是指依据电磁感应定律实现电能转换或传递的一种电磁装置。 电机在电路中是用字母M(旧标准用D)表示,它的主要作用是产生驱动转矩,作为用电器或各种机械的动力源,发电机在电路中用字母G表示,它的主要作用是利用机械能转化为电能。 我所使用的也是一种减速电机,即电机头部有一个减速器,电机转动带动减速器里的齿轮后再通过减速器的输出轴输出相应的转速。比如减速比是 1: 30,表示电机转动 30圈,电机的减速器转动一圈。
配置两输出IO引脚,作为输出电机驱动的IN1和IN2。 配置定时器1的通道1产生 PWM 波,用以连接 L298N 电机驱动模块的输出A的使能输入。(将跳线帽拔掉) 配置定时器2(TIM2)为编码器模式(Encoder Mode),连接电机上面的编码器的A相与B相。 分频系数表示对计数值进行分频,编码器模式默认时四倍频。 编码器上的AB相应该接编码器模式对应的引脚。 编码器模式就相当于一个专门计数的工具,当编码器的码盘转动时,A、B相输出矩形波形脉冲,进入PA0和PA1进行计数(数脉冲)。
输入项目名称和路径。(注:路径中不允许出现中文。) ![]() ![]() ![]()
完成上述过程,结果是电机会转动起来,如果电机没有转动起来,可以通过检查线路,或者会出现板子烧毁的情况,会其他的情况。如果板子仍可以正常工作且接线无误,则考虑是不是L298N电机驱动的问题,可以通过使用万用表进行测量OUT1和OUT2两个引脚和GND之间是否有电压差,如果测得电压很小,则可能是驱动烧坏。换了新的驱动之后,测试有没有用的时候,切记一定要记得L298N驱动模块与STM32单片机要共地。(同一个电位参考) 谢谢阅读 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |