开发板连接电机,烧坏芯片的原因、解决

2024-05-15 21:28

本文主要是介绍开发板连接电机,烧坏芯片的原因、解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当使用开发板、核心板,连接电机驱动板,控制电机的转动,会很容易烧芯片。

极少数是通电就烧坏,有些是调试了一段时间才烧,也有些是稳定运行好些日子突然烧了......

百度搜索:“STM32 电机 烧坏”,可以看到一堆堆带眼泪的文章。

导致的原因很多:过流、过压、电磁干扰、不当的PWM调速、电源不稳定、保护电路缺失等;

从多年的咨询中收集了大量反馈,最基本的原因:

电机驱动板,与开发板之间,没有做电源隔离、信号隔离。

一、电机的反电动势

这个词,咱长话短说,具体的自行百度。

电机在运行过程中,会产生反电动势,如快速停止或反转等。

即使是小电机,这个反电动势,也可以瞬间窜至几十V。

驱动电路上,如果没有做好续流、过流、过压和隔离等保护,反电动势就很容易损坏设备。

二、开发板,没有针对电机驱动进行预先设计保护措施

目前市面上绝大部分的开发板,芯片的引脚,都是直接连接到排针。

根本没有针对电机的使用作设计保护、隔离。

这并非开发板的设计有啥问题,也并非板商们刻意节约成本。

因为这是“开发板”呢:每一个引脚,都可能被用于实现各种功能。

如引脚-PA10,能作电平输出、能作电平输入,还可以作为USART1_RX、TIM1_CH3......。

每个用户,对每个引脚的使用需求,也不尽相同。

设计时,无法预料每一个引脚将被用于什么功能,就无法预先针对性地设计需要的隔离和保护。

芯片引脚直接“赤裸裸”地引出至排针:

  • 好处:引脚的功能可以灵活地使用。
  • 坏处:很容易因各种原因导致芯片被烧坏,如电机驱动时缺失保护。

因此,用开发板玩电机控制,没有做好外部保护措施,烧芯片就是大概率的事了。

特别是使用一些低端低价的电机驱动板,如L298N等,5元包邮,反烧芯片是很普遍的。

三、如何有效地防止烧芯片

如果使用开发板控制电机,下面三个“必须”,请务必注意:

1、电机驱动器,如L298N等,必须使用独立电源,不能与开发板使用同一个电源供电。

2、如果电机驱动器、开发板,不得不使用同一个电源时,开发板必须使用电源隔离模块。

(如,很多人使用的L298N,开发板直接从L298N上面的5V取电,不能这样操作!别作死!)

3、信号线,即PWM线、方向线,必须经光耦隔离模块!

如果是自己画的电机驱动电路,在参考上述外,增加以下考虑:

1、电机驱动电路,必须配置续流装置,如高速二极管。 

2、Vin端,配置大电容,且按照设计要求配置。

3、控制芯片,单独占用一个隔离电源!

4、控制地和驱动地连接要符合单点连接的原则,杜绝多点接地 。

四、电源隔离模块,参考:

(不上链接了,怕被误判为广告,自行淘宝)

     

五、光耦隔离模块,参考:

(不上链接了,怕被误判为广告,自行淘宝)

这篇关于开发板连接电机,烧坏芯片的原因、解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/992960

相关文章

Nginx 配置跨域的实现及常见问题解决

《Nginx配置跨域的实现及常见问题解决》本文主要介绍了Nginx配置跨域的实现及常见问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来... 目录1. 跨域1.1 同源策略1.2 跨域资源共享(CORS)2. Nginx 配置跨域的场景2.1

javax.net.ssl.SSLHandshakeException:异常原因及解决方案

《javax.net.ssl.SSLHandshakeException:异常原因及解决方案》javax.net.ssl.SSLHandshakeException是一个SSL握手异常,通常在建立SS... 目录报错原因在程序中绕过服务器的安全验证注意点最后多说一句报错原因一般出现这种问题是因为目标服务器

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

解决JSONField、JsonProperty不生效的问题

《解决JSONField、JsonProperty不生效的问题》:本文主要介绍解决JSONField、JsonProperty不生效的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录jsONField、JsonProperty不生效javascript问题排查总结JSONField

github打不开的问题分析及解决

《github打不开的问题分析及解决》:本文主要介绍github打不开的问题分析及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、找到github.com域名解析的ip地址二、找到github.global.ssl.fastly.net网址解析的ip地址三