【嵌入式硬件】直流电机驱动相关

项目场景:

驱动履带车(双直流电机)前进、后退、转弯

问题描述

电机驱动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度以上的发热源

大家有什么感兴趣的地方可以留言!我后期补充!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/66296.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python编程实例-特征向量与特征值编程实现

特征向量与特征值编程实现 文章目录 特征向量与特征值编程实现1、什么是特征向量2、特征向量背后的直觉3、为什么特征向量很重要?4、如何计算特征向量?4、特征向量Python实现5、可视化特征向量6、总结线性代数是许多高级数学概念的基石,广泛应用于数据科学、机器学习、计算机…

OpenCV在现代社会中的应用

OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一个开源计算机视觉库&#xff0c;广泛应用于图像处理、计算机视觉以及机器学习领域。随着科技的发展&#xff0c;OpenCV在现代社会中扮演着越来越重要的角色&#xff0c;尤其在以下五个方向中取得了显著的…

开源模型应用落地-qwen2-7b-instruct-LoRA微调合并-ms-swift-单机单卡-V100(十三)

一、前言 本篇文章将使用ms-swift去合并微调后的模型权重,通过阅读本文,您将能够更好地掌握这些关键技术,理解其中的关键技术要点,并应用于自己的项目中。 二、术语介绍 2.1. LoRA微调 LoRA (Low-Rank Adaptation) 用于微调大型语言模型 (LLM)。 是一种有效的自适应策略,…

云架构:考量与框架

云架构&#xff1a;考量与框架 引言 在当今的数字化环境中&#xff0c;云计算已成为现代商业运营的基石。一个设计良好的云架构框架为可扩展、安全和弹性的系统奠定了基础。本文将深入探讨云架构的核心要素&#xff0c;讨论重要的考量因素、设计指南&#xff0c;以及最佳实践…

MyBatis 配置文件全解析

一、MyBatis 配置文件为何至关重要&#xff1f; 在 Java 后端开发领域&#xff0c;MyBatis 作为一款广受欢迎的持久层框架&#xff0c;极大地简化了数据库操作。而 MyBatis 配置文件&#xff0c;恰似整个框架的 “神经中枢”&#xff0c;掌控着其运行的方方面面&#xff0c;对…

基于Java的免税商品优选购物商城设计与实现源码(springboot+mybatis+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于Java的免税商品优选购物商城设计与实现。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 基于Java的免税…

Go语言的 的同步与异步编程(Synchronization Asynchronous Programming)基础知识

Go语言的同步与异步编程&#xff08;Synchronization & Asynchronous Programming&#xff09;基础知识 在现代软件开发中&#xff0c;处理并发操作是相当重要的。Go语言&#xff0c;以其简洁的语法和强大的并发性&#xff0c;使得编写高效的并行程序变得更加简单。本文将…

Docker安装(Docker Engine安装)

一、Docker Engine和Desktop区别 Docker Engine 核心组件&#xff1a;Docker Engine是Docker的核心运行时引擎&#xff0c;负责构建、运行和管理容器。它包括守护进程&#xff08;dockerd&#xff09;、API和命令行工具客户端&#xff08;docker&#xff09;。适用环境&#…

图片验证码

1.图片验证码意义 验证码可以防止恶意破解密码、刷票、论坛灌水&#xff0c;有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试。由于验证码技术具有随机性随机性较强、简单的特点&#xff0c;能够在一定程度上阻碍网络上恶意行为的访问&#xf…

网络编程基础:连接Java的秘密网络

1 网络编程的重要性 网络编程允许Java应用程序与其他计算机或设备进行通信。这包括从简单的数据传输到复杂的分布式系统和Web服务。 2 Java网络编程的核心类 Java提供了多个类来支持网络编程&#xff1a; InetAddress&#xff1a;表示网络上的IP地址。 URL&#xff1a;表示统…

SQLite 实际案例研究与创新应用

SQLite 作为一种强大而简单的数据库实现&#xff0c;应用于各类场景&#xff0c;从移动应用到物联网设备&#xff0c;再到边缘计算。在本章中&#xff0c;我们将通过几个典型案例&#xff0c;探讨 SQLite 如何在实际中解决复杂问题&#xff0c;并研究其创新应用的可能性。 案例…

解析 SQL 中的 NULL 与比较操作:NULL 值与任何值的比较会返回 UNKNOWN

在 SQL 查询中&#xff0c;我们经常会遇到 NULL 值。NULL 值的行为与其他数据类型的值是不同的&#xff0c;尤其是在进行条件比较时。NULL 与其他值的比较结果是什么&#xff1f; 1. NULL 的特殊性&#xff1a;三值逻辑 首先&#xff0c;我们需要理解 SQL 中的三值逻辑&#…

20241231 机器学习ML -(2)KNN(scikitlearn)

1. build DKTree 递推创建Tree&#xff1b;当前维度找中位数分割 数据集 left set&#xff0c;Node(mid), right set. * 循环维度&#xff08;当log(Nsample)>featureSize) 2. DKTree KNN search * 理论部分向量几何有介绍。 每个维度列中&#xff0c;中位数对应的数据点…

CSS 学习之正确看待 CSS 世界里的 margin 合并

一、什么是 margin 合并 块级元素的上外边距(margin-top)与下外边距(margin-bottom)有时会合并为单个外边距&#xff0c;这样的现象称为“margin 合并”。从此定义上&#xff0c;我们可以捕获两点重要的信息。 块级元素&#xff0c;但不包括浮动和绝对定位元素&#xff0c;尽…

渗透测试--Web基础漏洞利用技巧

渗透测试--Web基础漏洞利用技巧 本文章写了Web基础漏洞中一些不那么常见的利用技巧&#xff0c;而不谈及漏洞的原理以及常见用法。 SQL 俺是SQLmap党&#xff0c;哈哈&#xff0c;所以这块就不多讲了。详情可见文章《渗透测试--SQLmap_渗透测试sqlmap-CSDN博客》 XXE XXE组成…

Jmeter进阶篇(32)Jmeter 在 MySQL 数据库压测中的应用

一、引言 在当今数字化时代,数据库性能的优化对于企业的发展至关重要。随着业务量的不断增长,数据库需要承受越来越大的压力。MySQL作为一种广泛使用的开源数据库,其性能和稳定性备受关注。为了确保数据库在高负载情况下能够正常运行,进行压测是必不可少的环节。Jmeter作为…

【git】git stash相关指令

目录 git stashgit stash save “”git stash list&#xff1a; 获取stash列表git stash pop&#xff1a;恢复最近一次stash缓存git stash apply stash{index}: 恢复指定缓存在这里插入图片描述git stash drop stash{1}&#xff1a;删除指定缓存 git stash clear :删除stash gi…

Linux 基础 6.进程

文章目录 6.1 进程和程序1. **程序 (Program)**2. **进程 (Process)**3. **程序与进程的区别**4. **进程的创建与执行**5. **总结** 6.2 进程号和父进程号1. **进程号 (PID)**2. **进程号的分配**3. **父进程号 (PPID)**4. **进程树结构**5. **进程号的限制与调整**6. **总结**…

Go语言的 的泛型(Generics)核心知识

Go语言的泛型&#xff08;Generics&#xff09;核心知识 引言 在编程语言的发展历程中&#xff0c;泛型是一项重要的特性。它使得程序员能够编写更加灵活和可重用的代码&#xff0c;减少了代码重复&#xff0c;提高了类型安全性和性能。从最初的C和Java&#xff0c;到现代的R…

用公网服务代理到本地电脑笔记

参考&#xff1a; 利用frp 穿透到内网的http/https网站&#xff0c;实现对外开放&#xff08;这篇博客有点老&#xff0c;需要改动&#xff0c;不能照抄&#xff09;&#xff1a;https://www.cnblogs.com/hahaha111122222/p/8509150.html frp内网穿透(windows和服务器)&#xf…