【嵌入式硬件】直流电机驱动相关
项目场景:
驱动履带车(双直流电机)前进、后退、转弯
问题描述
电机驱动MOS管烧毁
电机驱动采用IR2104S+TRH1R403NL的H桥方案(这是修改之后的图)

原因分析:
1.主要原因是4路PWM没有限幅,修改后限制在了最大96%
2.修改了部分硬件使其更合理
/************************************************左杆油门控制前进后退*******************************************************/if(CH[2]>1200) // 思翼遥控器通道3 992 272 1712 {PWM1=(int)(4*(CH[2]-992)+err_pwmval2);if(PWM1>3456) PWM1=3456;__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_2,PWM1 ); //修改比较值,修改占空比__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_1, 100); //修改比较值,修改占空比PWM2= (int)(4*(CH[2]-992)+err_pwmval1);if(PWM2>3456) PWM2=3456;__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_4,PWM2); //修改比较值,修改占空比__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_3, 100); //修改比较值,修改占空比 }else if(CH[2]<800){ __HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_2, 100); //修改比较值,修改占空比PWM3=(int)(4*(992-CH[2])+err_pwmval2);if(PWM3>3456) PWM3=3456;__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_1, PWM3); //修改比较值,修改占空比__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_4, 100); //修改比较值,修改占空比PWM4=(int)(4*(992-CH[2])+err_pwmval1);if(PWM4>3456) PWM4=3456;__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_3, PWM4); //修改比较值,修改占空比}else {__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_1, 1440+err_pwmval1); //修改比较值,修改占空比__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_2, 1440); //修改比较值,修改占空比__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_3, 1440+err_pwmval2); //修改比较值,修改占空比__HAL_TIM_SetCompare(&htim3, TIM_CHANNEL_4, 1440); //修改比较值,修改占空比}/************************************************右杆副翼控制旋转*******************************************************/ if(CH[0]>1200) //思翼遥控器通道1{err_pwmval1=(int)(2*(CH[0]-992)); //1440err_pwmval2=-(int)(2*(CH[0]-992));}else if(CH[0]<800){err_pwmval1=-(int)(2*(992-CH[0]));err_pwmval2=(int)(2*(992-CH[0]));}else {err_pwmval1=0;err_pwmval2=0;}
解决方案:
1.修改限幅到96%,之前可以超出PWM满占空比。
2.栅极电阻从30R改为20R,SS14改为SS34,自举电容从10uF/25V改为4.7uF/25V
测试:
操作履带车持续运行半小时没有超过50度以上的发热源
大家有什么感兴趣的地方可以留言!我后期补充!
相关文章:
【嵌入式硬件】直流电机驱动相关
项目场景: 驱动履带车(双直流电机)前进、后退、转弯 问题描述 电机驱动MOS管烧毁 电机驱动采用IR2104STRH1R403NL的H桥方案(这是修改之后的图) 原因分析: 1.主要原因是4路PWM没有限幅,修改…...
CSP初赛知识学习计划(第一天)
计算机知识全解析 一、计算机的发展历程 计算机的发展堪称一部波澜壮阔的科技史诗,其源头可追溯至古老的计算工具。早期,为了满足人类在天文、历法计算以及商业贸易中对数据处理的需求,算盘、算筹等手动计算器械应运而生,它们依…...
【嵌入式硬件】嵌入式显示屏接口
数字显示串行接口(Digital Display Serial Interface) SPI 不过多赘述。 I2C-bus interface 不过多赘述 MIPI DSI MIPI (Mobile Industry Processor Interface) Alliance, DSI (Display Serial Interface) 一般用于移动设备,下面是接口…...
07-ArcGIS For JavaScript--隐藏参数qualitySettings(memory和lod控制)
目录 1、综述2、sceneview.qualitySettings2.1、sceneview.qualitySettings.memoryLimit2.2、lodFactor2.3 additionalCacheMemory 3、结论 1、综述 先上重点,SceneView.qualitySettings为隐藏对象参数,该对象的memoryLimit和lodFactor等值,…...
QML自定义数值编辑框SpinBox样式
代码展示 import QtQuick 2.9 import QtQuick.Window 2.2 import QtQuick.Controls 2.1Window {visible: truewidth: 640height: 480title: qsTr("Hello World")SpinBox {id: controlvalue: 50editable: truecontentItem: TextInput {z: 2text: control.textFromVal…...
【数据可视化-10】国防科技大学录取分数线可视化分析
🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…...
深入探索:将 Elasticsearch 与 Ruby 工具结合使用
深入探索:将 Elasticsearch 与 Ruby 工具结合使用 一、背景介绍 1. Elasticsearch 与 Ruby 的结合背景 在现代软件开发中,Elasticsearch 作为一个基于 Lucene 的搜索引擎,以其分布式、可扩展、实时搜索等特点而广受欢迎。Ruby,…...
Istio 补充 Kubernetes 的不足
1 Istio 补充 Kubernetes 的不足 Kubernetes 强大但无法解决复杂分布式系统中的非功能性需求,如流量路由、协议转换、请求重试和负载均衡。Istio作为Service Mesh,通过独立的代理进程处理这些需求,避免直接修改业务代码。 2. 独立的代理进程…...
远程主机执行脚本1、无脚本内容外协。
使用 ssh rootyour_host bash -c "source <(cat)" < your_scripts.sh 或类似的命令来远程执行脚本,而不让脚本内容外泄或不让其他人看到脚本信息的原因通常是为了安全性和隐私保护。以下是几种考虑: 安全性:通过直接将脚本内…...
Jmeter进阶篇(32)Jmeter 在 MySQL 数据库压测中的应用
一、引言 在当今数字化时代,数据库性能的优化对于企业的发展至关重要。随着业务量的不断增长,数据库需要承受越来越大的压力。MySQL作为一种广泛使用的开源数据库,其性能和稳定性备受关注。为了确保数据库在高负载情况下能够正常运行,进行压测是必不可少的环节。Jmeter作为…...
Python脚本实现通过Vector VN1630A CAN盒子与ECU通信
1 安装 python-can 包 安装命令如下: pip install python-can安装完成后可用下面命令查看是否安装成功及版本。 pip show python-canName: python-can Version: 4.4.2 Summary: Controller Area Network interface module for Python Home-page: https://github.…...
Spring实现Logback日志模板设置动态参数
版权说明: 本文由博主keep丶原创,转载请保留此块内容在文首。 原文地址: https://blog.csdn.net/qq_38688267/article/details/144842327 文章目录 背景设计日志格式实现配置动态取值logback-spring.xml 相关博客 背景 多个单体服务间存在少量…...
内部类 --- (寄生的哲学)
内部类总共有 4 种(静态内部类、非静态内部类、局部内部类、匿名内部类) 作用: 一:内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类。 二:内部类可以…...
Python深度学习GRU、LSTM 、BiLSTM-CNN神经网络空气质量指数AQI时间序列预测及机器学习分析|数据分享...
全文链接:https://tecdat.cn/?p38742 分析师:Zhixiong Weng 人们每时每刻都离不开氧,并通过吸入空气而获得氧。一个成年人每天需要吸入空气达6500升以获得足够的氧气,因此,被污染了的空气对人体健康有直接的影响&…...
JSP基础
一、Tomcat 1.Tomcat简介: Tomcat是一个免费的开源JSP容器,是Apache的Jakarta项目中的一个核心项目因免费、稳定而成为目前比较流行的Web应用服务器网址:https://tomcat.apache.org/ 2.Tomcat的配置——环境变量 (1)…...
基于Springboot +Vue 在线考试管理系统
基于Springboot Vue 在线考试管理系统 前言 随着信息技术的飞速发展,教育领域正经历着深刻的变革。传统的考试模式因其诸多限制和不便,已难以满足现代教育的需求。基于SpringBoot和Vue框架开发的在线考试系统应运而生,它充分利用了现代互联…...
Node.js 函数
Node.js 函数 1. 概述 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,它允许开发者使用 JavaScript 编写服务器端和网络应用程序。在 Node.js 中,函数是一等公民,意味着它们可以作为变量传递,可以作为参数传递给其他函数,也可以从其他函数返回。本文将详细…...
JVM学习指南(9)-JVM运行时数据区
JVM学习指南(9)-JVM运行时数据区 引言 Java虚拟机(JVM)是Java程序运行的核心,它为Java程序提供了一个与平台无关的执行环境。JVM的重要性不仅在于它实现了Java的跨平台特性,还在于它对程序执行过程中内存的管理。JVM运行时数据区是程序执行过程中存储数据的关键区域,理解…...
2025/1/4期末复习 密码学 按老师指点大纲复习
我们都要坚信,道路越是曲折,前途越是光明。 --------------------------------------------------------------------------------------------------------------------------------- 现代密码学 第五版 杨波 第一章 引言 1.1三大主动攻击 1.中断…...
关于嵌入式系统的知识课堂(二)
成长路上不孤单😊😊😊😊😊😊 【14后😊///计算机爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于嵌入式系统的知识课堂(…...
书匠策AI:期刊论文的“智慧工匠”,开启学术写作新纪元
在学术的殿堂里,每一篇期刊论文都是研究者智慧与汗水的结晶,它们不仅承载着知识的传承,更是推动学科进步的重要力量。然而,撰写一篇高质量的期刊论文并非易事,从选题到成稿,每一步都充满了挑战。幸运的是&a…...
如何用Go语言构建跨平台漫画下载工具:comics-downloader核心技术解析
如何用Go语言构建跨平台漫画下载工具:comics-downloader核心技术解析 【免费下载链接】comics-downloader tool to download comics and manga in pdf/epub/cbr/cbz from a website 项目地址: https://gitcode.com/gh_mirrors/co/comics-downloader 在数字漫…...
Vivado TCL脚本进阶:把JTAG to AXI Master IP变成你的自动化调试神器
Vivado TCL脚本进阶:把JTAG to AXI Master IP变成你的自动化调试神器 在FPGA开发的世界里,调试效率往往决定着项目成败。当传统手动操作遇到复杂状态机验证或批量寄存器测试时,工程师们常常陷入重复劳动的泥潭。而Xilinx Vivado中那颗被低估的…...
手机号码定位终极指南:3分钟学会快速免费查询地理位置
手机号码定位终极指南:3分钟学会快速免费查询地理位置 【免费下载链接】location-to-phone-number This a project to search a location of a specified phone number, and locate the map to the phone number location. 项目地址: https://gitcode.com/gh_mirr…...
Java 线程同步:锁机制、CountDownLatch、CyclicBarrier
在现代软件开发中,多线程编程已经成为一项基础技能。无论是为了提升系统吞吐量,还是充分利用多核处理器的计算能力,我们几乎无法回避并发编程。然而,多线程环境带来的不仅仅是性能提升,更是一系列棘手的挑战——当多个…...
别再写跨线程异常了!WPF中Application.Current.Dispatcher的3种实战用法(附CheckAccess避坑)
WPF多线程UI更新实战:Dispatcher的深度应用与避坑指南 在WPF开发中,跨线程操作UI元素是个永恒的话题。每当看到"调用线程无法访问此对象"的异常提示,开发者们都会会心一笑——这几乎是每个WPF程序员成长路上的必经之痛。本文将带你…...
如何快速开发Vibe转录后处理工具:从零开始的插件开发指南
如何快速开发Vibe转录后处理工具:从零开始的插件开发指南 【免费下载链接】vibe Transcribe on your own! 项目地址: https://gitcode.com/GitHub_Trending/vib/vibe Vibe是一款功能强大的本地音频转录应用,支持多种格式转换和实时预览功能。本文…...
DeerFlow效果实测:输入一个问题,收获一份完整的研究报告
DeerFlow效果实测:输入一个问题,收获一份完整的研究报告 你有没有过这样的经历?面对一个复杂问题,需要花几个小时甚至几天时间,在搜索引擎、学术网站、数据分析工具之间来回切换,最后整理出来的报告还是零…...
4艘无人艇分布式编队控制、集中式控制+集中式距离跟踪程序
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
关于FLOPs与MACs的说明
关于FLOPs与MACs的说明: 尽管通常被称为"FLOPs",但fvcore的FlopCountAnalysis返回的值实际上代表的是MACs(乘加运算次数)。 正如FlopCountAnalysis的文档字符串(第53行)所述:“我们将…...
