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

项目场景:

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

问题描述

电机驱动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));   //1440
				err_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度以上的发热源

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据库知识汇总1

一. 数据库系统概述 信息需要媒体&#xff08;文本、图像视频等&#xff09;表现出来才能被人类所获取&#xff0c;媒体可以转换成比特或者符号&#xff0c;这些称为数据&#xff1b; 数据/信息的特点&#xff1a;爆炸式增长、无限复制、派生&#xff1b; 数据库是指长期长期…

Dubbo扩展点加载机制

加载机制中已经存在的一些关键注解&#xff0c;如SPI、©Adaptive> ©Activateo然后介绍整个加载机制中最核心的ExtensionLoader的工作流程及实现原理。最后介绍扩展中使用的类动态编译的实 现原理。 Java SPI Java 5 中的服务提供商https://docs.oracle.com/jav…

Elasticsearch向量检索需要的数据集以及768维向量生成

Elasticsearch8.17.0在mac上的安装 Kibana8.17.0在mac上的安装 Elasticsearch检索方案之一&#xff1a;使用fromsize实现分页 快速掌握Elasticsearch检索之二&#xff1a;滚动查询(scrool)获取全量数据(golang) Elasticsearch检索之三&#xff1a;官方推荐方案search_after…

网关的主要作用

在网络安全领域&#xff0c;网关扮演着举足轻重的角色&#xff0c;它不仅是网络间的桥梁&#xff0c;更是安全防线的守护者。以下是网关在网络安全中的几个关键作用&#xff1a; 1. 防火墙功能&#xff1a;网关常常集成了防火墙技术&#xff0c;能够对进出网络的数据包进行严格…

【Cocos TypeScript 零基础 4.1】

目录 背景滚动 背景滚动 创建一个 空节点 背景丟进去 ( 复制一个,再丢一次都行) 新建TS脚本 并绑定到 空节点 上 再对TS脚本进行编辑 export class TS2bg extends Component {property (Node) // 通过属性面板去赋值bg1:Node nullproperty (Node) bg2:Node nullprope…

如何利用群晖NAS实现远程访问你的网页版Linux虚拟桌面环境

文章目录 前言1. 下载Docker-Webtop镜像2. 运行Docker-Webtop镜像3. 本地访问网页版Linux系统4. 群晖NAS安装Cpolar工具5. 配置异地访问Linux系统6. 异地远程访问Linux系统7. 固定异地访问的公网地址 前言 今天我要给大家介绍一下如何在群晖NAS设备上部署Docker-Webtop&#x…

MySQL 04 章——运算符

一、算数运算符 算数运算符主要用于数学运算&#xff0c;其可以连接运算符前后的两个数值或表达式 运算符名称作用示例加法运算符计算两个值或表达式的和SELECT AB-减法运算符计算两个值或表达式的差SELECT A-B*乘法运算符计算两个值或表达式的乘积SELECT A*B/或DIV除法运算符…

ES IK分词器插件

前言 ES中默认了许多分词器&#xff0c;但是对中文的支持并不友好,IK分词器是一个专门为中文文本设计的分词工具&#xff0c;它不是ES的内置组件&#xff0c;而是一个需要单独安装和配置的插件。 Ik分词器的下载安装&#xff08;Winows 版本&#xff09; 下载地址&#xff1a;…

Oracle DG备库数据文件损坏修复方法(ORA-01578/ORA-01110)

今天负责报表的同事反馈在DG库查询时出现如下报错 ORA-01578:ORACLE数据块损坏(文件号6,块号 2494856)ORA-01110:数据文件6: /oradata/PMSDG/o1 mf users_molczgmn_.dbfORA-26040:数据块是使用 NOLOGGING 选项加载的 可以看到报错是数据文件损坏&#xff0c;提示了file id和b…

idea无法安装插件

目录 修改工具配置 本地安装 无法下载很多时候就是延迟太高导致的&#xff0c;我们先打开插件官网看一下 Python - IntelliJ IDEs Plugin | Marketplace 修改工具配置 1、配置代理&#xff08;点击 setting-点击 plugins-在点击 http proxy Settings&#xff09; 输入&…

Linux部署web项目【保姆级别详解,Ubuntu,mysql8.0,tomcat9,jdk8 附有图文】

文章目录 部署项目一.安装jdk1.1 官网下载jdk81.2 上传到Linux1.3 解压1.4 配置环境变量1.5 查看是jdk是否安装成功 二.安装TomCat2.1 官网下载2.2 上传到Linux2.3 解压2.4配置2.5 启动Tomcat2.6 验证是否成功 三.安装mysql四.部署javaweb项目4.1 打包4.2 启动tomcat 部署项目 …

服务器等保测评日志策略配置

操作系统日志 /var/log/message 系统启动后的信息和错误日志&#xff0c;是Red Hat Linux中最常用的日志之一 /var/log/secure 与安全相关的日志信息 /var/log/maillog 与邮件相关的日志信息 /var/log/cron 与定时任务相关的日志信息 /var/log/spooler 与UUCP和news设备相关的…

初学stm32 --- FSMC驱动LCD屏

目录 FSMC简介 FSMC框图介绍 FSMC通信引脚介绍 FSMC_NWE 的作用 FSMC_NWE 的时序关系 FSMC_NOE 的含义 FSMC_NOE 的典型用途 FSMC_NOE 的时序关系 使用FSMC驱动LCD FSMC时序介绍 时序特性中的 OE ILI9341重点时序&#xff1a; FSMC地址映射 HADDR与FSMC_A关系 LCD的…

业务模型与UI设计

业务数据模型的设计、UI设计这应该是程序设计中不可缺少的部分。做程序设计的前提应该先把这两块设计好&#xff0c;那么&#xff0c;来一个实际案例&#xff0c;看看这2块的内容。 汽车保养记录业务模型与UI设计&#xff1a; 一、【车辆清单】 记录车辆相关的数据&#xff0…

【JavaScript】变量-常量-数据类型-类型转换

目录 一、JavaScript 介绍 1. JavaScript &#xff08;是什么&#xff1f;&#xff09; 2. 作用&#xff08;做什么&#xff1f;&#xff09; 3. JavaScript的组成&#xff08;有什么&#xff1f;&#xff09; 3.1 ECMAScript: 3.2 Web APIs : 总结&#xff1a; 4. Jav…

day30-awk精讲

awk其实不仅仅是工具软件&#xff0c;还是一种编程语言。 不过&#xff0c;本文只介绍它的命令行用法&#xff0c;对于大多数场合&#xff0c;应该足够用了。 awk是什么 awk是一个强大的linux命令&#xff0c;有强大的文本格式化的能力&#xff0c;好比将一些文本数据格式化…

实战设计模式之建造者模式

概述 在实际项目中&#xff0c;我们有时会遇到需要创建复杂对象的情况。这些对象可能包含多个组件或属性&#xff0c;而且每个组件都有自己的配置选项。如果直接使用构造函数或前面介绍的工厂方法来创建这样的对象&#xff0c;可能会导致以下两个严重问题。 1、参数过多。当一个…

滤波器的主要参数

为什么选择高阶&#xff1a; 滤波器的主要参数通常包括以下几个方面&#xff1a; 截止频率 (Cutoff Frequency)&#xff1a; 这是滤波器能够有效通过或抑制信号的频率点。对于低通滤波器&#xff0c;信号低于截止频率的部分会被通过&#xff0c;高于截止频率的部分会被衰减。高…

HNSW概述

1. \textbf{1. } 1. 一些导论 1.1. \textbf{1.1. } 1.1. 朴素基于图的 ANN \textbf{ANN} ANN 1️⃣建图&#xff1a;对数据库中所有的点&#xff0c;构建 k -NN k\text{-NN} k-NN图(下图以 3 -NN 3\text{-NN} 3-NN为例) 2️⃣检索&#xff1a; GreedySearch \text{GreedySearch…

小程序学习07—— uniapp组件通信props和$emit和插槽语法

目录 一 父组件向子组件传递消息 1.1 props &#xff08;a&#xff09;传递静态或动态的 Prop &#xff08;b&#xff09;单向数据流 二 子组件通知父组件 2.1 $emit &#xff08;a&#xff09;定义自定义事件 &#xff08;b&#xff09;绑定自定义事件 三 插槽语法…