发帖数

54

原创数

54

关注者

19

阅读数

26019

点赞数

5

赵云

  • 编码器的分类及增量式光电编码器的工作原理

    一、编码器介绍

    编码器是一种传感器,主要是用来检测机械运动的速度、位置、角度、距离或计数,它是一种集光、机、电为一体的数字化检测装置,它具有分辨率高、精度高、结构简单、体积小、使用可靠、易于维护、性价比高等优点。

    近些年来,它发展为一种成熟的多规格、高性能的系列工业化产品,在数控机床、机器人、雷达、光电经纬仪、地面指挥仪、高精度闭环调速系统、伺服系统等诸多领域中得到了广泛的引用。

    那么,光电编码器可以定义为:一种通过光电转换,将输至轴上的机械、几何位移量转换成脉冲或数字量的传感器,它主要用于速度或位置(角度)的检测。比较典型的光电编码器由码盘(Disk)、检测光栅(Mask)、光电转换电路(包括光源、光敏器件、信号转换电路)、机械部件等组成。

     

    二、编码器的分类

    对于编码器的分类,可以用下图一的结构来表示:

    1.png 

    图一:编码器的分类

    上图一所示的分类只是其中一种分类方法。另外,按照编码器运动部件的运动方式来分,可以分为旋转式和直线式两种。根据检测原理,编码器可以分为光学式、磁式、感应式和电容式。旋转式光电编码器容易做成全封闭型式,易于实现小型化,传感长度较长,具有较长的环境适用能力,因而在实际工业生产中得到广泛的应用。

     

    三、编码器中常用的术语

    1、输出脉冲数/转

    旋转编码器转一圈所输出的脉冲数,对于光学式旋转编码器,通常与旋转编码器内部光栅的槽数相同(也可在电路上使输出脉冲数增加到槽数的2倍,4倍)。

    2、分辨率

    分辨率表示旋转编码器的主轴旋转一周,读出位置数据的最大等分数。绝对值型不以脉冲形式输出,而已代码形式表示当前主轴位置(角度)。与增量型不同,相当于增量型的“输出脉冲/转”。

    3、光栅

    光学式旋转编码器,其光栅有金属和玻璃两种。如果式金属制成的,会开有通光孔槽;如果是玻璃制成的,是在玻璃表面涂了一层遮光膜,在此上面设有透明线条(槽)。在槽数少的场合,可以在金属圆盘上用冲床加工或腐蚀法开槽。在耐冲击型编码器上使用了金属的光栅。玻璃制的与金属制的光栅相比不耐冲击,因此在使用上请注意,不要将冲击直接施加于编码器上。

    4、最大响应频率

    是在1秒内能响应的最大脉冲数(例:最大响应频率为2KHz,即1秒内可响应2000个脉冲),公式如下:

    最大响应转速(RPM)/ 60 *(脉冲数/转)=输出频率Hz

    5、最大响应转速

    是指可响应的最高转速,在此转速下发生的脉冲都可响应,公式如下:

    最大响应频率(Hz)/ (脉冲数/转) * 60 = 轴的转速RPM

    6、输出电压

    是指输出脉冲的电压。输出电压会因输出电流的变换而有所变化。

    7、格雷码

    格雷码是高级数据,因为是单元距离和循环码,所以很安全。每步只有一位变化。数据处理时,格雷码必须转换成二进制码。

    8、转速

    改速度指示编码器的机械载荷限制。如果超出该限制,将对轴承使用寿命产生负面影响,另外信号也可能中断。

     

    四、增量式编码器的工作原理

    1、基本构造及特点

    增量式光电编码器的特点是没产生一个输出脉冲信号就对应于一个增量位移,但是不能通过输出脉冲区别出在哪个位置上的增量。它能够产生与位移增量等值的脉冲信号,其作用是提供一种对连续位移量离散化或增量化以及位移变化(速度)的传感方法,它相对于某个基准点的相对位置增量,不能够直接检测出轴的绝对位置信息。一般来说,增量式光电编码器输出A、B两相互差90读电角度的脉冲信号(也即是两组正交输出信号),从而可以方便地判断出旋转方向。同时还有用作参考零位的Z相标志(指示)脉冲信号,码盘每旋转一周,只发出一个标志信号。标志脉冲通常用来指示机械位置或对积累量清零。

    增量式光电编码器主要由光源、光栅板(码盘)、固定光栅(检测光栅)、光敏管(光电检测器件)和转换电路组成,如下图二所示:

    2.png 

    图二:增量式光电编码器的组成

    在光栅板上刻有节距相等的辐射状透光缝隙,相邻两个透光缝隙之间代表一个增量周期;检测光栅上刻有A、B两组与光栅板相对应的透光缝隙,用以通过或阻挡光源和光电检测器件之间的光线。它们的节距和码盘上的节距相等。并且两组透光缝隙错开1/4节距,使得光电检测器件输出的信号在相位上相差90度电角度。当码盘随着被测轴转动时,检测光栅不动,光线透过码盘和检测光栅上透过缝隙照射到光电检测器件上,光电检测器件就输出两组相位相差90度电角度的近似于正弦波的电信号,电信号经过转换电路的信号处理,可以得到被测轴的转角或速度信息。增量式光电编码器输出信号波形如下图三所示:

    3.png 

    图三:增量式光电编码器的输出信号波形

    2、作用原理

    A、B两点对应两个光敏接受管,A、B两点间距为S2,角度码盘的光栅间距分别为S0和S1。当角度码盘以某个速度匀速转动时,那么可知输出波形图中的S0:S1:S2比值相同,同理角度码盘以其它的速度匀速转动时,输出波形中的S0:S1:S2比值与实际图的S0:S1:S2比值仍然相同。增量式光电编码器内部工作原理示意图如下图四表示:

    4.png 

    图四:增量式光电编码器内部工作原理

    如果角度码盘做变速运动,把它看成多个运动周期的组合,那么每个运动周期输出波形图中的S0:S1:S2比值与实际图的S0:S1:S2比值仍然相同。通过输出波形我们可知每个运动周期的时序图如下图五表示:

    5.png 

    图五:时序图

    我们把当前的A、B输出值保存起来,与下一个A、B输出值做比较,就可以轻易的知道角度码盘的运动方向,如果光栅S0等于S1时,也就是S0和S1弧度夹角相同,且S2等于S0的1/2,那么就可得到此次角度码盘运动位移角度为S0弧度夹角的1/2,除以所消耗的时间,就可以得到此次角度码盘运动位移角速度。

    以上就是增量式光电编码器的工作原理。那么本篇文章就给大家介绍这么多,后面有机会再给大家介绍绝对式编码器的组成及其工作原理。

    收藏 0 回复 0 浏览 232
  • 直流电机驱动原理图设计一

    一、 项目名称:《直流电机驱动器设计》

    二、 原理图设计第一部分

    大家好,今天我们开始对直流电机驱动器项目进行原理图的设计,我们按照上次给大家分享的项目需求分析来着手,根据功能划分来设计各自对应的电路模块。

    我们先来回顾一下这个控制器要实现的功能:

    1.电压采集。

    2.电压保护。

    3.LED灯状态显示。

    4.实现电机正反转调速控制。

    大家看到上面要实现的4个功能,这些功能的实现都需要提供电源。所以我们需要设计一个电源模块,这个模块可以给单片机进行供电、给电机进行供电。

    那么通过上次的分享,我们已经确定了Vbus电压为5V,所以整个电源模块的输入电压我们就可以定为5V,这样只需要通过一个线性电源就可以得到单片机的供电电压。

    5V的输入,我们可以使用一个3.96mm间距的2pin的接线端子输入,那么为了给后级提供能量,一般我们在电源输入处会加一个大的电容,这个大电容的选型主要考虑容值和耐压,关于容值一般我们可以通过经验法来选择,可以通过示波器观察纹波来进行电容容值的调整,调整的依据为:若纹波大,则加大电容的容值,若纹波小则可以减小电容的容值。具体调整到项目要求的纹波范围内即可。当然电容容值大肯定纹波小,能满足要求,但是可能价格就会偏贵,所以需要合理的选择电容的容值,当然有时候也需要考虑库存、通用品,如果自己公司库存有合适的电容也可以直接拿来用,或者有些电容容值可能偏大,但是属于通用品,这样价格也会便宜些,所以电容的选取不是一成不变的,大家心里要清楚。

    关于耐压的选取,一般可以考虑电源结点处电压的1.5倍-2倍之间,同样耐压的选取也需要结合上面提到的库存和通用品考虑,在这两个条件不满足的前提下,再使用我们讲的选取方法进行选择。

    然后大电容旁边一般都会并联一个容值为104的瓷片电容,用于滤除高频干扰,这样就可以得到对应的电路图了。

    111.png 

    接下来,需要选择一个线性电源,把5V降到3.3V给单片机进行供电,这个线性电源芯片可以选用常用的AMS1117-3.3V,同样输出的3.3V后面带有负载,所以3.3V也需要增加一个大的储能电容和小的瓷片电容。

    然后我们可以加一个电源指示灯,用于电源供电指示。最终的电源模块的电路图如下图所示:

    222.png 

    这样电源模块对应的电路就设计好了。然后需要用单片机来实现相关功能的控制,所以就需要设计单片机最小系统模块了。根据上次我们选用单片机型号STM32030F4P6,则可以设计出如下图所示的最小系统:

    333.png 

    大家看上面的图,对于单片机的供电,我们一般都会采用一个大电容和一个小电容,同样大电容作为储能电容,小电容作为滤波电容,大电容的选型一般容值在10uF即可,当然有的单片机会在手册中给出具体的电容容值参数,我们也可以参考手册进行选取。

    然后,单片机的复位引脚的话,我们外面只接了一个104电容,那么,我们说上电外部复位的话,需要复位引脚为低,这样的接法能否保证单片机上电复位引脚为低呢?那么,为了了解这个问题,我们就要查看单片机的数据手册了。

    444.png 

    大家可以看到上图中有一个Rpu上拉电阻,这样当单片机上电时会从VDD出发经过电路Rpu对外面的0.1uF电容进行充电,那么0.1uF电容充电时,等效

    于短路,所以此时复位引脚就变为低电平了,此时单片机就实现了外部复位,随着电容充电的进行,电容充满之后,复位引脚就是高电平,此时就完成了整个外部复位过程。

    所以,综上分析,我们原理图中的104电容是可以实现外部复位功能的。

    555.png 

    然后,我们再来看图中的BOOT0引脚,这个引脚可以配置单片机初始上电时启动的方式,一般我们都是默认从Flash启动,所以这个引脚我们下拉到低电平即可。

    6666.png 

    关于BOOT的配置方式及启动方式,可以参照上图。

    那么以上就是单片机最小系统模块的设计讲解,接下来我们要实现LED灯的控制,所以需要使用一个单片机的IO口来控制LED灯,对应的电路如下图所示:

    777.png 

    接下来,要实现电机调速的话,我们在讲项目需求分析的时候讲过可以通过电位器的方式调整,电位器的话属于模拟量,所以我们需要将电位器接到单片机的AD引脚,具体电路如下图所示:

    888.png 

    图中的102电容是一个滤波电容,这样可以滤波一些高频干扰。

    然后,我们需要对电压进行采集,用于电压保护,而Vbus电压是5V,我们单片机的供电电压是3.3V,所以我们需要对Vbus电压进行分压,分压的话,可以选用两个电阻来实现。

    那么具体分压的电压选多少合适呢?这里需要给大家强调一下,一般将分压电压设在单片机的供电电压的一半为宜,那么如果电压小了会有什么影响呢?如果电压小了可能会导致分辨率不够。

    如果电压过大呢?是不是当电压波动的时候,分压的电压会超过单片机的供电电压啊?这样是不是可能损坏单片机啊?因此电压选择在中间位置是最佳方式。这样就可以得到下图所示的电压采样电路。

    999.png 

    然后,我们再来说下图中D5二极管的作用,它是用来保护单片机引脚使用的,怎么实现这个保护功能呢?

    我们来看下,图中D5的负极接了3.3V,那么我们说一个二极管的导通是不是当正极大于负极0.7V(假设二极管导通电压为0.7V)时,二极管就导通了,这样二极管两端是不是就是0.7V的压降,这样负极是3.3V的话,那么正极最大就是3.3V+0.7V = 4V,那么4V的话,一般3.3V的单片机是可以承受的,所以这样就实现了单片机引脚的保护功能。

    然后,C11电容的作用也是滤除高频干扰。以上就是电压采样模块的分析。

    接下来,使用单片机的话,我们需要将我们编写好的程序下载到单片机中,所以需要有对应的下载电路。下载和仿真这款单片机使用的是SWD协议,所以我们只需要按照协议将接口引出即可,对应的电路如下图所示:

    1111.png 

    图中增加的电阻是为了破坏振荡条件,让仿真和下载更加稳定。

    那么根据我们罗列的项目功能,还有H桥电机控制模块电路还没有设计,这部分的设计在下次文章中再给大家进行详细分析,最后给大家先贴下本项目的最终原理图,供大家学习参考。

    2222.png 

    本篇文章就给大家分享到这里,我们下次再见,谢谢大家!


    收藏 0 回复 0 浏览 226
  • 转子位置传感器之霍尔磁敏传感器介绍

    大家好,我是张飞实战电子的赵云老师,今天我们来介绍转子位置传感器之霍尔磁敏传感器。

    一、转子位置传感器概述:

    转子位置传感器在无刷直流永磁电动机中,主要起两个作用:

        一、通过它检测出转子永磁体磁极相对定子电枢绕组所处的位置,以便确定电子换相驱动电路中功率晶体管的导通顺序;

        二、确定电子换相电路驱动电路中功率晶体管的导通角,从而确定电枢磁场的磁状态。

    为了实现这两个目的,工程上可以采用无接触式旋转变压器、光电式传感器、高频耦合式传感器、磁阻元件传感器和霍尔磁敏传感器等。不同的传感器,有不同的特点和不同的应用场合。

    1.png 

    无接触式旋转变压器和霍尔磁敏传感器是目前被广泛采用的两种转子位置传感器。无接触式旋转变压器除了结构复杂、体积较大和制造成本较高等缺点外,它具有安装定位方便、输出信号大、精度高、对环境条件要求不严、温度适应范围宽、工作稳定可靠,以及容易与电子换向电路的输入阻抗实现阻抗匹配等一系列优点。因此,旋转变压器被广泛地用于精密数控机床、军事装备和宇航技术领域之中。

    霍尔磁敏传感器在具有质量轻、尺寸小、制造成本低和便于大规模生产等优点的同时,存在着对环境条件要求严、温度适应范围窄和可靠性差等缺点。因此,霍尔磁敏传感器被广泛地用于计算机的软硬盘驱动器、激光打印机、视听设备和家用电器等民用电动机产品中。

    、霍尔效应:

    当电流垂直于外磁场通过半导体时,载流子发生偏转,垂直于电流和磁场的方向会产生一附加电场,从而在半导体的两端产生电势差,这一现象就是霍尔效应,这个电势差也被称为霍尔电势差。霍尔效应使用左手定则判断。

    2.png 

    图一:霍尔效应示意图

    3.png 

    图二:霍尔效应示意图

     

    三、霍尔器件分类:

    (1)按结构分类

    霍尔器件按结构可以分为三大类∶霍尔元件、霍尔集成电路和霍尔功能组件。一般而言,霍尔器件是由单独半导体霍尔区构成的分立电子元件,它所产生的电动势很低,在使用时还需要外接放大器,很不方便。随着微电子技术的发展,借助半导体制作工艺将半导体霍尔区及其所需的外周功能电路一起制作在同一块硅外延片上,这就构成了霍尔集成电路和霍尔功能组件。

    (2)按功能分类

    霍尔器件按功能也可以分为三大类∶线性型、开关型和锁定型。

    线性型霍尔器件由电压调节器、霍尔元件、差分放大器和输出级所组成,其结构框图如下图所示。

    4.png 

    图三:线性霍尔器件结构框图

    线性型霍尔器件的输入量是磁感应强度,输出量是电压。输出量与输入量成直线性函数关系,如下图所示。线性型霍尔器件主要用于测量,可制成用来测量各种物理量,例如,磁通、磁通密度、电压、电流、功率、频率、相位移、电磁转矩、直线位移、角度、振动、转速、流量和压力等物理量的仪表。

    5.png 

    图四:线性霍尔器件的输出特性

    开关型霍尔器件由电压调节器、霍尔元件、差分放大器、施密特触发器和输出级等五部分所组成,如图五所示。它的输入量是磁感应强度,输出量是高低电平的数字信号。在正磁场作用之下的开关型霍尔器件的特性曲线如图六所示。所谓正磁场是指磁体的南极 S 指向霍尔器件商标面的磁场;反之,所谓负磁场是指磁体的北极N 指向霍尔器件商标面的磁场。对于开关型霍尔器件而言,当磁感应强度由零开始增大到达某一数值 Bop 时,霍尔器件开通,输出低电平,横坐标上对应 Bop的点被称之为"磁工作点"。当磁感应强度从"磁工作点"开始继续增大时,霍尔器件一直保持开通状态,即一直输出低电平;当磁感应强度由一个大于 Bop 的数值开始减小返回时,在磁感应强度减小返回到达"磁工作点"数值的情况下,霍尔器件仍然保持开通状态,输出低电平; 只有当磁感应强度减小至某一数值 BrP时,霍尔器件才关闭,输出高电平,横坐标上对应 BrP的点被称之为"磁释放点"。磁工作点与磁释放点之差,即数值(Bop-Brp=BHYS 被称之为开关型霍尔器件的"磁滞区"。不同设计的开关型霍尔器件具有不同的磁滞区BHYS,外加磁场的大小不会改变某一开关型霍尔器件的磁滞区的数值大小。开关型霍尔器件的磁滞回线相对于零磁场纵坐标轴是不对称的,它的导通和截止过程只和外界磁场的大小有关,不需要磁场极性的变换。图六给出了开关型霍尔器件在交变磁场作用之下的输出特性。

    6.png 

    图五:开关型或锁存型霍尔器件结构框图

    7.png 

    图六:开关型霍尔器件的输出特性曲线示意

    锁存型霍尔器件同样也是由电压调节器、霍尔元件、差分放大器、施密特触发器和输出级等五部分所组成。锁存型霍尔器件实质上也一种开关型霍尔器件,它与一般开关型霍尔器件的差别在于∶它是由双磁极激发的,其输出特性曲线如下图所示。由图可见,锁存型霍尔器件的输出特性曲线相对于零磁场纵坐标轴是对称的,因此在交变磁场的作用之下可以获得占空比为11的输出波形,如下图七所示,且不受外界温度和交变磁场峰值大小的影响。

    8.png 

    图七:锁存型霍尔器件的输出特性曲线示意

    锁存型霍尔器件的基本工作过程是,当外加磁场方向为正时,差分放大器的输出电压为正,并作为施密特触发器的触发信号。差分放大器的输出电压随着外加磁感应强度的增强而增加,当达到施密特触发器的导通电压阈值时,电路的输出V。由高电平变为低电平。由于触发器的导通和截止的电压阈值被设计成对称的,所以当外加磁感应强度减弱时,触发器仍保持导通状态∶只有当改变磁体的极性并达到一定强度,致使差分放大器输出的负触发信号达到施密特触发器的截止电压阈值时,触发器才由导通突变为截止。因此,磁体的极性每变换一次,锁存型霍尔器件的输出就完成一次开关转换,这种特性特别适用于在无刷直流永磁电动机中作转子位置的传感器件。

    四、霍尔器件的空间配置:

    传感器定子上的霍尔器件的数目和配置方法取决于∶ 电动机本体的相数m、磁极对数p、电枢绕组、逻辑信号处理电路、换向电路、电动机运行时的磁状态角az和逆变电路中功率开关器件的导通角ai等。归结起来,传感器定子上的霍尔器件的数目和配置必须满足以下两个条件

    1)霍尔器件在电动机的一个电周转内所产生的开关状态是不能重复的,每一个开关状态所占的电角度应相等;

    2)霍尔器件在电动机的一个电周转内所产生的开关状态数应和该电动机的磁状态数相对应。

    锁存型霍尔器件是一个仅有"0""1"两种状态的双值器件。一个双值器件有两种状态,二个双值器件有四种状态,n个双值器件有 2"种状态。根据上述原则,对于最常见的"二相导通星形三相六状态"的电动机而言,一般采用三个霍尔器件,它们在圆周空间的配置有两个方案∶ 相互间隔 60°电角或相互间隔 120°电角。两种方案的输出波形组合图分别如下图所示:

    9.png 

    图八:60度电角度安装霍尔波形及输出状态

    10.png 

    图九:120度电角度安装霍尔波形及输出状态

    对于"一相导通星形三相三状态"的电动机而言,至少要两个霍尔器件,然后借助逻辑电路把两个霍尔器件的四种状态处理成相互间隔 120°电角的三个状态;在此情况下,也可以采用三个霍尔器件,然后借助逻辑电路把三个霍尔器件的六种状态处理成相互间隔 120°电角的三个状态。

    综上所述,对于"一相导通星形三相三状态""二相导通星形三相六状态"的电动机而言,其霍尔器件的数目和配置方法如图所示。

    11.png 

    图十:霍尔器件数目和相邻两霍尔器件之间的夹角


    收藏 1 回复 0 浏览 225
  • 归一化在电机控制中究竟有什么用?

    哈喽,大家好,今天我们来了解一下归一化在电机控制中的作用,那么首先我们需要先了解一下归一化的概念,这样才能更好的了解电机控制中为什么会经常用到归一化。

    归一化就是将一个数据变换到(0,1)或者(-1,1)之间的小数,这样的话把数据范围都统一了,在一些算法处理中会更加方便,容易理解。

    下面,我们举两个例子,这样可以更好的理解归一化,假设某个数据的变化范围是[0,1023],那么我们知道这个数据范围的最小值(xmin)是0,最大值(xmax)是1023,若我们得到的一个数据为x,那么归一化的方式就可以表示为:

    1.png 

    如果x=1023,那么此时对1023归一化之后的结果为:

    2.png 

    如果x=500,那么此时对500归一化之后的结果为:

    3.png 

    接着我们再来看如果某个数据的变化范围是[-1023,1023],那么对于大于0的部分的归一化方式跟上面一致,归一化公式还是如下:

    4.png 

    对于小于0的部分[-1023,0],归一化方式就可以表示为:

     5.png 

    假设得到的数据x是-1023,那么可以得到此数据对应的归一化值为:

    6.png 

    假设得到的数据x是-500,那么可以得到此数据对应的归一化值为:

    7.png 

    通过以上实例分析,我们知道了归一化的实际实现方式,当我们有其它数据需要归一化时,就可以很容易的得到对应的归一化值。

    在电机控制中,我们会对电角度进行归一化,我们都知道电角度的变化范围是0至360度,或者-180至180度,那么,同样我们也有两种归一化方式,对于用0-360度范围表示的电角度来说,归一化方式如下:

    8.png 

    如果输入的角度是360度,那么得到的归一化值为1,如果输入的角度是180度,那么归一化值就是0.5,其它角度可以根据上面的角度归一化公式进行计算,这样对于0至360度范围的值就可以变化到0至1范围内了。

    对于-180至180度范围表示的电角度来说,归一化的方式如下:


    9.png

    如果输入的电角度是180度,那么得到的归一化值为1,如果输入的电角度是-60度,那么得到的归一化值为-0.333333333,这样对于-180至180度范围的值就可以变化到-1至1范围内了。

    归一化弄清楚之后,通过归一化,可以得到0至1或者-1至1之间的小数了,但是在电机控制中,大多数的单片机都没有浮点运算单元,而电机控制的算法中会用到大量的乘法运算,如果对于没有浮点运算单元的单片机来说,直接使用进行小数乘法或者小数除法,那么计算一个小数乘法或者计算一个小数乘法需要花费的时间是很长的。

    假设我们整个电机控制算法全部执行完毕需要的时间是30us,那么如果一个小数乘法或者除法运算就花费了几微秒或者几十微秒,整个电机控制算法的就可能无法在30us以内完成了,那么对于一款没有浮点运算单元的单片机来说,又想实现小数乘法或者小数除法应该怎么做呢?

    其实大部分的单片机有整数乘法,如果我们把小数乘法转化为整数形式乘法,那么也是可以实现小数乘法运算的,而且整数乘法运算的速度是比较快的,大部分的单片机都是单指令周期就可以实现,那么怎么实现把小数乘法转换为小数乘法呢?

    接下来我们就要引入定点小数格式了,先给大家介绍一下定点小数格式的表示方法。

    定义为:约定单片机中所有数据的小数点位置是固定不变的。数据的最高位表示符号位,小数点是隐含在符号位之后的。这种格式通常被称为1.15Q15格式,1.15中的1表示数据整数部分的位数,而15表示小数部分的位数。

    下面用一个图示给大家说明下这个定点小数的数据格式啊。

    10.png 

    大家看这幅图啊。Q15格式的话,就是对于一个16位数来说,把最高位作为符号位,然后小数点是隐含在符号位后面的,剩余的15位作为数据位。

    我们不妨根据上面这个数据格式来举例说明一下小数跟定点小数格式的转换方式,假设有一个数为0.5,那么对应的定点小数格式表示就是:

    11.png 

    对应的16位数据格式的16进制表示为0x4000,十进制表示为16384。也就是说,对于-1至1范围的小数来说,16384表示0.5。

    我们再假设有一个数据为-0.3,那么通过定点小数格式表示为:

    12.png 

    计算的方式为:

    微信图片_20211013110810.png 

    上图对应的16位数据格式的16进制表示为0xD99A,十进制表示为-9830。也就是说,对于-1至1范围的小数来说,-9830表示-0.3。

    以上是-1至1之间小数(有符号小数)的定点小数格式表示方式,那么在电机控制中有时还会用到无符号小数(0至1之间的小数),这个时候其实就是将Q15格式表示中的符号位去掉,所有的位都表示数据位,具体表示方式如下图所示:

     13.png

    我们不妨也对这种表示方式举个具体的例子来说明一下,假设小数为0.5,那么对应定点小数格式就表示为:

     14.png

    上图对应的16位数据格式的16进制表示为0x8000,十进制表示为32768。也就是说,对于0至1范围的小数来说,32768表示0.5。

    假设得到的小数为0.7,那么对应定点小数格式就表示为:

    15.png 

    计算的方式为:

    18.png 

    上图对应的16位数据格式的16进制表示为0xB333,十进制表示为45875。也就是说,对于0至1范围的小数来说,45875表示0.7。

    那么通过以上分析,我们知道了如何将一个小数表示为定点小数(整数)格式,经过这样的表示后,在我们程序编写中,就很好实现一个小数乘法了,最后给大家总结一下将小数转换为整数表示及将整数表示的小数转换为实际的小数对应的公式:

    ① 有符号小数负数部分转换为整数形式表示公式:

    16位有符号数定点小数值 = 对应的小数 * 32768

    ② 无符号小数转换为整数形式表示公式:

    16符号数定点小数值 = 对应的小数 * 65536

    ③ 有符号整数形式定点小数转换为实际小数表示公式:

    实际小数值 = 16位有符号数定点小数值 / 32768

    ④ 无符号整数形式定点小数转换为实际小数表示公式:

    实际小数值 = 16位有符号数定点小数值 / 65536

    好了,那么本次文章就给大家分享到这里了,如果大家后期想关注更多的电机驱动方面的知识,可以持续关注我们张飞实战电子,谢谢大家!


    收藏 1 回复 0 浏览 223
  • 直流电机驱动原理图设计二

    一、 项目名称:《直流电机驱动器设计》

    二、 原理图设计第二部分

    大家好,上次的电路设计中还有实现直流电机正反转的电路没有完成,今天我们一起来完善下这部分电路。

    首先,根据我们之前的项目需求分析,从电机的参数情况,我们选择了B772PNP型功率三极管)和D882NPN型功率三极管),基于这两种三极管型号,搭建H桥模块电路。

    H桥模块电路中,上桥使用B772,下桥采用D882,组成的H桥示意图如下图所示:

    1111.png 

    那么,这个H桥的工作原理是什么样呢?我们可以一起来分析一下。首先,我们假设图中的电机绕组中的电流由电机的1脚流向2脚,电流流向如下图所示:

    2222.png 

    那么电机绕组中流过的电流是从哪里来的呢?也就是我们要考虑此时的源是谁?源是不是图中的+5V电压源啊?源有了,需要确定回路,回路是不是要从源的正极出发,回到源的负极啊?然后图中示意的电流回路要形成,图中的Q1Q8两个三极管就需要导通了,这样才能形成完整的电流回路。

    为了更好的描述此时的电流回路,我们+5V源使用一个Vbus电容来表示,此时电流的回路我们可以表示如下:

    3333.png 

    好了,这个电流回路是没问题的,我们说我们的驱动板支持正反转控制,那么在切换方向前,需要将之前开通的三极管给关闭,状态如下图所示:

    4444.png 

    这个时候我们来看啊,上一个状态时对电机绕组进行充电了,如果我们把H桥中的四个管子都关闭,那么电机绕组中的没有地方流动了,也就是说此时能量没有泄放回路了,假设我们把电机绕组看成电感的话,那么此时也就是电感断路了,是不是会对开关三极管造成损伤啊?

    因此在我们的这个电路中就需要增加当所有管子都关闭时的绕组续流回路,增加续流回路的话,我们可以在功率三极管的CE之间并联二极管即可,如下图所示:

    5555.png 

    然后,此时我们再来分析续流回路,绕组续流时,所有管子都关闭了,但是绕组的电流方向不变,此时的源我们需要搞清楚,源应该变成了电机绕组,然后从电机的2脚出发,然后回到电机的1脚,此时的续流回路如下图所示:

    6666.png 

    这样电机绕组的续流回路就建立起来了,接下来就可以开通管子Q2Q7了来让电机往另一个方向进行转动了。那么关于另一个方向的分析,这里就不再赘述了,跟我们上面分析的方法一致,大家可以自行分析。

    上面是给大家讲解了下H桥控制的原理,对于H桥中的三极管要进行导通,我们就需要给四个管子分别设计相应的驱动电路了。

    因为我们是使用单片机控制,控制的方式为上桥电平控制,下桥PWM控制,而对于B772D882三极管,当它们的CE需要比较大的电流时,例如2A的电流,则相应的IB驱动电流也需要增大,具体是多大呢?我们可以查看下B772D882的数据手册:

    7777.png 

    大家可以看到,上图为VCEIC的关系,从图中,我们也可以看出当IB比较小时,IC的电流也相应的小,如果IC要能达到2A,那么则需要的IB驱动电流就需要10mA以上。

    而我们单片机的话,IO引脚的驱动能力是很小的,不能够直接使用单片机引脚来驱动功率三极管,因此我们需要单独的给B772D882设计相应的驱动电路。

    那么我们就想了,要想通过一个小电流得到比较大的电流,我们还是想到了三极管,如果三极管Ic电流小的话,相应的IB电流就可以小,通过上图分析,如果B772D882IC电流要达到2A的话,IB需要10mA。如果我们使用一个普通的三极管(如3904,我们只需要给3904IB1mA的驱动电流,则IC就可以有100mA的电流,因此,我们可以使用3904三极管来驱动B772D882,这样可以设计出如下电路:

    8888.png 

    然后我们来看,当LH为高时,此时Q4导通,那么三极管Q11脚就为低,此时从逻辑上,Q1导通是没问题的,但是,我们说电路设计需要考虑好源 回路 阻抗,那么源是+5V,回路是从+5V出发,回到+5V的地,但是缺少阻抗,这样的话Q1IB电流就会比较大,从而导致三极管Q1损坏了,因此我们可以增加一个电阻来限制IB电流,那么我们说,如果Q1的电流要能达到2A的话,IB电流需要10mA以上,这个时候,我们可以来计算一下,IB阻抗为多少?也就是下图中的R5应该如何取值?

    9999.png 

    从图中我们可以知道,Q4导通,我们按导通之后Q4CE压降为0.3V,则有Q4C极为0.3VQ1BE压降我们可以查看手册来进行选取:

    11111.png 

    大家看上图,当Ic2A的时候,此时VBE大概为1.4V,我们就按照1.4V来进行计算,则Q11脚为5V-1.4V = 3.6V。那么R5两端的压降为3.6V-0.3V = 3.3VR5的电流我们按照10mA,则可以计算R5的阻值为:R5 = 3.3V/0.01A = 330R,这样就可以把R5的阻值确定了。

    22222.png 

    当然,如果要是Q1IB电流再大一些的话,可以把R5阻值再取小些,比如可以取300R。好IB电流的问题解决了,那么我们再来看,如果Q4关闭的话,那么此时是不是要确保Q1能够关闭啊?Q1关闭是不是要确保Q11脚为高电平,也就是要确保Q1VEB<Q1的导通电压,但是我们上图中的电路是没法保证这点的,所以,我们可以在Q1BE之间并联一个上拉电阻,这样即可解决这个问题。

    33333.png 

    这个电阻的取值保证当Q4导通时Q1BE压降能让Q1导通即可,这里取为1K,可以满足要求。这样,Q1的驱动电路就设计完毕了。

    接下来我们来设计下管Q7的驱动电路:

    44444.png 

    下管驱动,我们可以采用一种称为达林顿结构的接法,还是采用另一个三极管来驱动,具体的接法如下图所示:

    55555.png 

    那么,当Q5导通,此时Q5IC电流作为Q7IB驱动电流, 从而确保Q7能够正常导通,当Q5关闭,确保Q7不能够导通,就满足了导通的逻辑关系,因此这个驱动电路是可以满足我们正常使用的。

    Q5Q7的下拉电阻是确保当B极出现不确定状态的时候,能够有确定的状态出现,这样不会导致三极管的误触发,发生灾难性后果。

    这样Q1Q7的驱动电路就设计完成了,相应的Q2Q8可以直接使用对应的驱动电路,最终H桥模块的电路就可以全部实现了,具体如下图所示:

    66666.png 

    那么到目前为止,直流有刷电机驱动项目的原理图设计部分就给大家分享到这里,下篇文章,我们来聊一聊关于该项目的PCB布局布线的相关问题,本次分享就到这里,谢谢大家,我们下次再见!


    收藏 0 回复 0 浏览 221
×
赵云