ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

L293D电机驱动芯片引脚与参数详解:从H桥原理到工程实践

L293D电机驱动芯片引脚与参数详解:从H桥原理到工程实践 1. 从一块“老古董”芯片聊起为什么L293D依然值得深究最近在整理工作室的元件盒翻出了一把L293D就是那种经典的16脚DIP封装黄褐色的塑料外壳上面印着ST的Logo。说实话现在市面上有太多性能更强、集成度更高的电机驱动方案比如DRV8833、TB6612甚至是各种集成MOSFET的智能驱动模块。那为什么还要花时间来讲这块“老古董”芯片的引脚和参数呢原因很简单它是一块绝佳的“教学标本”。对于刚接触电机驱动、嵌入式硬件甚至是数字电路的朋友来说L293D的结构清晰、原理直观能帮你把“电机是怎么转起来的”这件事从黑盒操作变成透明理解。很多更先进的芯片其底层逻辑如H桥、使能控制、逻辑电平转换都能在L293D上找到最原始的映射。搞懂了它你再去看那些新芯片的数据手册会发现很多概念都是一脉相承的。而且别看它老在不少对成本敏感、对驱动电流要求不高比如驱动两个5V小直流电机或一个步进电机的DIY项目、学生实验甚至是一些老设备的维护中L293D依然有它的用武之地。它的引脚配置直接决定了电机是正转、反转还是刹车而参数则划定了它的工作边界用对了是神器用错了就是“芯片烧烤大师”。今天我就结合自己早年踩过的坑和后来积累的经验把L293D的引脚功能和关键参数掰开揉碎了讲清楚让你不仅能照着连线更能明白每一根线背后的设计意图。2. 引脚配置详解十六根针脚如何指挥电机“舞蹈”L293D是一个16引脚的双H桥电机驱动芯片。所谓“双H桥”意味着它内部集成了两个完整的H桥电路可以独立控制两个直流电机或者组合起来驱动一个两相四线制的步进电机。它的引脚排列是对称的理解了一半另一半也就通了。我们按功能分组来解读这比单纯罗列1到16脚更有意义。2.1 电源与接地分清“大脑”和“肌肉”的粮草这是最容易出错也最致命的部分。L293D有三组电源/地引脚它们各司其职绝对不能混淆。VCC1 (引脚16)逻辑电源电压。这是给芯片内部逻辑控制电路预驱动器、逻辑门等供电的。它决定了芯片能识别什么样的控制信号。典型值是5V。也就是说你的单片机无论是Arduino、STM32还是51单片机如果输出5V电平信号就正好可以直接连接到L293D的控制引脚上。如果你用的是3.3V的单片机虽然很多时候也能勉强工作因为3.3V可能仍高于其高电平输入阈值VIH但为了可靠性最好还是通过电平转换电路或者选择支持3.3V逻辑的型号如L293DD。VCC2 (引脚8)电机驱动电源电压。这是电机的“力量之源”。它直接连接到你的电机电源比如电池组。这个电压决定了电机能跑多快转速与电压成正比其范围很宽可以从4.5V一直到36V。这意味着你可以用一块7.4V的锂电池组来驱动电机同时用5V给单片机和控制逻辑供电实现了电源分离。一个关键经验务必在VCC2引脚附近紧贴着芯片放置一个容量可观如100uF的电解电容再并联一个0.1uF的陶瓷电容。电机启动和换向时会产生巨大的瞬时电流和电压尖峰这个电容组就是吸收这些冲击、保护芯片的“水库”能极大提高系统稳定性避免芯片莫名重启或损坏。GND (引脚4, 5, 12, 13)散热与信号地。L293D有四个接地引脚它们都在芯片内部连接在一起。引脚4和5是第一个H桥的接地引脚12和13是第二个H桥的接地。设计这么多接地引脚主要有两个目的一是提供低阻抗的电流回流路径二是辅助散热。芯片工作时驱动管上的压降会产生热量功耗≈电机电流 * 驱动管压降。这些GND引脚连接到PCB的大面积接地铜箔上可以充当散热片帮助热量导出。在布线时一定要把这些GND引脚都良好地连接到你的电源地切勿只接其中一两个。2.2 控制信号引脚给电机下达精确指令控制引脚是芯片的“大脑接口”接收来自微控制器的命令。使能引脚 (EN1: 引脚1, EN2: 引脚9)这是每个H桥的总开关。当EN引脚为高电平时对应的H桥才被激活可以工作当它为低电平时该H桥的所有输出都被禁用处于高阻态相当于断开。这个功能非常有用节能与安全在不需驱动电机时拉低EN芯片功耗大幅降低。实现刹车快速将EN拉低电机两端断开由于惯性继续旋转的电机相当于一个发电机其反电动势会通过内部续流二极管快速消耗掉动能实现“软刹车”或“滑行刹车”。注意这不是最快速的刹车最快刹车需要用到“短路刹车”模式后面会讲。PWM调速将PWM信号连接到EN引脚通过快速开关H桥来改变电机两端的平均电压从而实现调速。这是L293D最常用的调速方式。输入引脚 (IN1, IN2, IN3, IN4)这是指挥电机转向的“方向盘”。每个H桥对应两个输入引脚H桥1IN1-引脚2 IN2-引脚7 H桥2IN3-引脚10 IN4-引脚15。它们和EN引脚配合决定输出状态EN (使能)IN1 (输入1)IN2 (输入2)输出1 (引脚3)输出2 (引脚6)电机状态 (H桥1)H (高)HLHL正转 (电流从Out1流向Out2)H (高)LHLH反转 (电流从Out2流向Out1)H (高)LLLL短路刹车(电机两端短接到地快速停止)H (高)HHHH短路刹车(电机两端短接到VCC2快速停止)L (低)X (任意)X (任意)Z (高阻态)Z (高阻态)停止/滑行 (电机惯性转动)重要提示上表中的“短路刹车”是让电机快速停止的有效方法。当IN1和IN2同时为低时两个输出都接地电机线圈被短路产生制动力同时为高时两个输出都接VCC2效果类似。这比单纯禁用EN滑行刹车的停止速度要快得多。但要注意短路刹车时电流很大不宜长时间维持。2.3 输出引脚连接电机的“手臂”输出引脚 (OUT1: 引脚3, OUT2: 引脚6, OUT3: 引脚11, OUT4: 引脚14)这四个引脚直接连接到你的电机。H桥1驱动电机A接OUT1和OUT2H桥2驱动电机B接OUT3和OUT4。接线很简单但要注意电机是感性负载关断时会产生反向电动势。L293D内部在每个输出和电源VCC2及地之间都集成了续流二极管Flyback Diode。这个设计非常贴心省去了外接四个二极管的麻烦确保了在开关瞬间电机线圈产生的反向电流有安全的泄放路径保护了芯片内部的功率三极管。这也是L293D作为经典驱动芯片的一个标志性优点。3. 核心参数深潜读懂数据手册中的安全边界光知道怎么接还不行必须明白它的能力边界在哪里。L293D的数据手册里有几个参数至关重要它们共同定义了一块芯片的“工作护照”。3.1 电流与电压参数力量的极限与电源的约束输出电流 (Output Current)这是大家最关心的参数它能驱动多大的电机数据手册通常会给出几个值峰值输出电流 (Peak Output Current)1.2A这是短时间内比如几毫秒可以承受的绝对最大电流。适用于电机启动、堵转等瞬间冲击。绝不能以此作为持续工作电流来设计。持续输出电流 (Continuous Output Current)600mA这是每个通道每个H桥的一条臂可以持续安全工作的电流值。注意是每个通道。如果你用一个H桥驱动一个电机在电机正转时电流流经一个上管和一个下管那么整个H桥的持续驱动能力可以认为是600mA。但芯片内部有公共的功耗和散热限制所以整个芯片的总持续输出电流通常建议不超过1.2A即两个电机各600mA。我的踩坑经验早年驱动一个标称“空载电流200mA”的减速电机以为绰绰有余。但一加上负载特别是启动和堵转时电流轻松飙到800mA以上芯片几分钟就烫得无法触摸随后失灵。教训是必须为电机可能出现的最大负载特别是启动和堵转留足至少50%的余量。对于标称工作电流300mA的电机使用L293D是合适的如果超过500mA就应该考虑更强大的驱动方案或者为L293D安装一个足够大的散热片。电源电压VCC2 (电机电源)4.5V 至 36V。这个范围很宽但要注意电压越高芯片内部的功耗发热也越大因为驱动管的压降饱和压降会随着电流增大而增大。VCC1 (逻辑电源)4.5V 至 7V。典型应用是5V。确保你的单片机IO口电平在这个逻辑电平的识别范围内。3.2 逻辑电平与开关特性确保指令被正确聆听输入高电平电压 (VIH)最小 2.3V VCC15V这意味着当你的逻辑电源是5V时只要控制引脚EN, IN上的电压高于2.3V芯片就会将其识别为高电平“1”。这也是为什么3.3V的STM32常常能直接驱动5V供电的L293D的原因3.3V 2.3V。但为了抗干扰能力最好提供接近VCC1的电压。输入低电平电压 (VIL)最大 0.9V VCC15V电压低于0.9V才会被可靠地识别为低电平“0”。务必注意微控制器的IO口在复位或初始化时可能是高阻态其电平不确定这可能导致L293D输入引脚悬空处于不确定状态可能引起电机误动作。最佳实践是在单片机程序初始化时先将控制L293D的IO口设置为明确的低电平输出然后再进行其他设置。或者在硬件上为这些输入引脚增加一个下拉电阻如10kΩ到地确保默认状态为低。开关时间 (Turn-On/Off Time)典型值 几微秒这个参数决定了芯片对PWM信号的响应速度。对于通常几百Hz到几十KHz的电机PWM调速来说L293D的速度完全足够。但如果你要做非常精密的控制这个延迟需要考虑。3.3 热参数与功耗计算防止“芯”火过旺L293D的封装DIP16或SO16散热能力有限。其结到环境的热阻RθJA通常很高DIP约80°C/W。这意味着芯片内部每消耗1瓦的功率结温就会比环境温度高出约80度。如何估算功耗芯片的主要功耗来自输出驱动管的饱和压降。对于每个导通的双极型晶体管其饱和压降VCE(sat)大约在1.2V到1.8V之间具体看数据手册图表它与电流有关。 简化估算当一个H桥驱动一个电机时电流路径上会同时导通一个上管和一个下管。总功耗 P_loss ≈ 电机电流 I_motor * (VCE(sat)_top VCE(sat)_bottom)。假设电机电流为0.5A每个管压降1.5V则单通道功耗约为 0.5A * (1.5V1.5V) 1.5W。 如果两个电机都在全速运行总功耗可能达到3W。那么温升 ΔT ≈ 3W * 80°C/W 240°C这远远超过了芯片的最大结温通常150°C。这就是为什么L293D在驱动稍大电流时必须加装散热片的原因。散热实战建议必加散热片即使电流不大也建议贴一个小型散热片。可以使用带粘性导热垫的邮票散热片。利用PCB散热将芯片的四个GND引脚连接到PCB内部的大面积接地铜层铺铜这能有效帮助散热。监测温度如果可能用手触摸测试小心烫伤。长时间工作后芯片温热是正常的但如果烫到无法触碰说明已经超负荷必须减少负载电流或改善散热。4. 典型应用电路与高级技巧从“能动”到“好用”理解了引脚和参数我们来看如何把它用起来并解决一些实际问题。4.1 驱动直流电机的基础电路这是最经典的应用。以驱动一个电机为例将单片机的一个PWM引脚连接到EN1引脚1用于调速。将单片机的两个GPIO引脚连接到IN1引脚2和IN2引脚7用于控制方向。电机接在OUT1引脚3和OUT2引脚6之间。VCC1接单片机相同的5V。VCC2接电机电源如9V电池。切记在VCC2和GND之间靠近芯片引脚处并联一个100uF的电解电容和一个0.1uF的陶瓷电容。所有GND引脚4,5,12,13牢固连接到电源地。代码逻辑就对应之前的真值表。例如让电机以50%速度正转IN1HIGH, IN2LOW, EN1输出50%占空比的PWM。4.2 驱动四线双极性步进电机这是L293D的另一个主要用途。它需要用到两个H桥。将步进电机的A和A-分别接到OUT1和OUT2。将B和B-分别接到OUT3和OUT4。IN1, IN2, IN3, IN4 接单片机GPIO。EN1和EN2可以接PWM用于调速如果不需要调速直接接高电平VCC1即可。控制序列需要按照双极性步进电机的驱动时序如1相励磁、2相励磁、1-2相励磁来依次改变IN1~IN4的状态。L293D可以很好地胜任这项任务但同样要注意电流和发热。4.3 应对干扰与提高可靠性那些数据手册没明说的细节在实际项目中尤其是电机与单片机共用一块电路板时干扰是个大问题。电机启停和PWM开关会产生强烈的电磁噪声和电源纹波。问题现象单片机无故复位、程序跑飞、传感器读数异常。解决方案电源隔离与滤波这是最重要的。电机电源VCC2和逻辑电源VCC1最好由不同的稳压模块或独立的绕组提供。如果必须共用要在电机电源入口处使用大电感功率电感和电容组成π型滤波器。前面提到的VCC2引脚处的大电容是必须的不是可选。信号隔离如果干扰特别严重可以考虑在单片机的PWM/GPIO信号线和L293D的输入引脚之间加入光耦隔离器如PC817。这能彻底切断电气连接上的噪声传导路径。地线布局采用“星型接地”或“单点接地”。让电机的大电流回流路径和单片机等敏感电路的信号地回流路径在一点通常是电源输入的地端汇合避免大电流在信号地线上产生压降干扰。续流路径检查虽然L293D内置了续流二极管但在驱动感性负载特别大或电压特别高的场合有些工程师仍会建议在外围再并联一组快速恢复二极管如1N4148作为额外保护确保续流万无一失。不过对于L293D的常规电压电流范围内置二极管通常足够。4.4 与热词关联的思考推挽输出与开漏输出在搜索热词中看到了“HDT11信号引脚配置成推挽输出还是开漏输出”的讨论。这其实和L293D的输入特性有关。L293D的输入引脚内部有上拉电阻吗数据手册显示其输入结构类似于一个高阻抗的CMOS或TTL输入没有很强的内部上拉。如果你的单片机IO配置为推挽输出那么它可以直接驱动L293D的输入提供明确的低电平强下拉到0V或高电平强上拉到3.3V/5V抗干扰能力强是最推荐的方式。如果你的单片机IO配置为开漏输出则只能主动拉低电平高电平需要靠外部上拉电阻提供。这时你必须确保在L293D的每个输入引脚IN1~IN4, EN1, EN2上都连接一个上拉电阻如4.7kΩ~10kΩ到VCC15V否则当单片机输出高阻态时L293D的输入会悬空导致行为不可预测。所以对于驱动L293D将单片机引脚设置为推挽输出模式是最简单可靠的选择。这避免了额外添加上拉电阻也提供了更稳定的驱动能力。这个选择背后的逻辑正是基于对负载L293D输入特性的理解。
返回列表