电机控制——底软需求

news2025/2/24 0:16:21

PWM

电机控制输出六路PWM,可分为ABC三相,每相包含上桥和下桥两路,上下桥不可同时打开。
配置的时候,六路PWM要设置为居中对齐模式,正好可以实现PMSM七段式控制法。
配置一路PWM作为基准,六路PWM都引用该基准:
在这里插入图片描述
同一相的两路PWM极性相异:
在这里插入图片描述
在这里插入图片描述
使用GTM中的TOM通道触发PWM,GTM模块的主时钟为100M,PWM所引用的TOM通道时钟分频系数为1,即该通道的时钟也为100M。
在这里插入图片描述
*GTM时钟选择:
在这里插入图片描述
上面五个选项分别对应下面五个分频系数:
在这里插入图片描述
基准PWM通道的周期设置为5000,单位是多少个Tick,因为时钟频率是100M,所以PWM的频率是100M/5000 = 20K。
在这里插入图片描述

ADC

电流、角度放在同一组内同时进行采样。使用同步采样,ADC0作为Master,ADC1作为Slave,一组包含4路AD。
在这里插入图片描述
在这里插入图片描述
ADC0中的每个通道都要启用同步采样:
在这里插入图片描述
ADC0组的触发方式采用硬件触发,使用上面配置的PWM参考通道所引用的TOM通道触发,即每个PWM周期中间位置会触发一次ADC采样。采样完成后会触发ADC中断,中断中会同步更新ADC0的buffer数据和ADC1的buffer数据。中断中调用Callback,在Callback中调用FOC算法。ADC中断设置为最高优先级。

TC234实测:
开始采样到ADC中断触发:1.8us
中断触发到Callback被触发约:6us

TC2XX系列单片机ADC软硬件触发方式同时使用时,软件触发会无效,问题解决方法如下:

  1. MCAL中AdcPriorityImplementation选择ADC_PRIORITY_HW
    在这里插入图片描述
    这样修改后软件触发可以正常触发,但会打断硬件触发,调试代码发现,软件触发和硬件触发使用的是同一个触发源RS0,配置如下图。程序运行时触发源会被装入G0QINR0寄存器,在只存在硬件触发方式的时候,G0QINR0会自动Refill,但如果插入了一个软件触发,Refill会被打断,从而中断硬件触发。有两种解决方法,一是在软件触发采样完成后重新开始硬件触发,但这样可能会导致某次硬件触发被漏掉。二是软硬件触发使用不同的触发源。
    在这里插入图片描述
    这里采用第二种方法,将软件触发的ADC组的触发源都改成RS3:
    在这里插入图片描述
    要注意的是使用RS3的话下面这个地方要改一下:
    在这里插入图片描述
    然后配置RS3的中断,RS3的中断与CG0SR1共用一个中断处理函数,配置方法如下:

在这里插入图片描述

DMA

ADC中断处理方式配置为DMA,中断优先级就是DMA的通道,电流采样配置为最大DMA通道。
DMA最大通道最先被触发,然后以菊花链方式依次触发接下来的几个配置为菊花链的通道,直到某个通道没有被配置为菊花链,则会触发一个中断。该DMA中断配置为最高优先级。

预驱

预驱的主要功能:
死区控制、电流采样、故障检测

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

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

相关文章

YOLOv5 目标计数 | 图片上绘制计数结果

修改方法: 只需要改 detect.py for path, im, im0s, vid_cap, s in dataset: 下新增一行 class_counts = {} class_counts[int(c)] = class_counts.get(int(c

makefile教程(1)

makefile教程 makefile是什么: makefile是用户自行完成的IDE(integrated development environment集成开发环境)程序,与传统的操作系统下的编译不同,makefile可以通过用户自行安排,决定文件的编译顺序&am…

【Java动态代理如何实现】

✅Java动态代理如何实现 ✅JDK动态代理和Cglib动态代理的区别 ✅拓展知识仓✅静态代理和动态代理的区别✅动态代理的用途✅Spring AOP的实现方式📑JDK 动态代理的代码段📑Cglib动态代理的代码块 ✅注意事项: 在Java中,实现动态代理…

泛微OA xmlrpcServlet接口任意文件读取漏洞(CNVD-2022-43245)

CNVD-2022-43245 泛微e-cology XmlRpcServlet接口处存在任意文件读取漏洞&#xff0c;攻击者可利用漏洞获取敏感信息。 1.漏洞级别 中危 2.影响范围 e-office < 9.5 202201133.漏洞搜索 fofa 搜索 app"泛微-OA&#xff08;e-cology&#xff09;"4.漏洞复现 …

大模型做实体识别任务的原理

1、背景 命名实体识别&#xff08;named entity recognition&#xff0c;NER&#xff09;&#xff1a;通常是一个序列标注的任务&#xff0c;常见的模型框架有&#xff1a;LSTM-CRF、BERTBILSTMCRF等&#xff0c;该种任务通常被成为flat NER即&#xff1a;每一个token只分配一…

视频号小店需要多少资金?

我是电商珠珠 视频号团队自22年发展视频号小店以来&#xff0c;为人所知。和抖音电商一样&#xff0c;都是在发展的第二年掀起了浪花。 也就是今年&#xff0c;很多想要入驻的新手&#xff0c;对于视频号小店不太了解&#xff0c;不清楚到底需要多少资金。 今天&#xff0c;…

Unity协程的定义、使用及原理,与线程的区别、缺点全方面解析

目录 协程的定义及简介 协程的用途 定时器 将复杂程序分帧执行 等待某些条件完成后执行后续 异步加载资源 协程的原理 MonoBehaviour中每一帧的游戏循环 迭代器 IEnumerator 接口 具体执行过程 协程和线程的区别 协程的缺点 无法返回值 依赖于MonoBehaviour 维护…

一文让你搞明白文本或代码中 \n 和 \r 的区别

我们使用printf打印时基本都会用到 \n 和 \r 之类控制字符&#xff0c;比如&#xff1a; printf("hello world!\r\n"); 那么&#xff0c;你知道 \n 和 \r 的区别吗&#xff1f; 一、关于 \n 和 \r 在ASCII码中&#xff0c;我们会看到有一类不可显示的字符&#x…

jenkins Job华为云EIP变更带宽

引言: 在数字化时代&#xff0c;云服务资源的弹性管理是企业降低运营成本、提高效率的关键手段。通过弹性公网IP&#xff08;EIP&#xff09;服务&#xff0c;企业可以实现按需计费&#xff0c;优化网络支出。然而&#xff0c;根据业务流量的不同阶段调整计费模式&#xff0c;…

【数据结构】什么是二叉树?

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 目录 &#x1f4cc;二叉树的定义 &#x1f4cc;二叉树的特点 &#x1f4cc;特殊二叉树 &#x1f4cc;二叉树的性质 &#x1f4cc;二叉树的存储结构 &#x1f4cc;二叉树…

路径规划最全综述+代码+可视化绘图(Dijkstra算法+A*算法+RRT算法等)

路径规划综述 1. 背景介绍 路径规划是指在给定的环境中找到从起点到终点的最佳路径的过程。它在现实生活中有着广泛的应用&#xff0c;包括无人驾驶、物流配送、机器人导航等领域。随着人工智能和计算机技术的发展&#xff0c;路径规划技术也在不断地得到改进和应用。 路径规划…

宠物智能喂养系统App重新定义养宠体验

​ 在科技蓬勃发展的当今世界&#xff0c;宠物照顾和护理的更多可能性也随之扩大。宠物智能喂养系统App正改变着我们对宠物看护的传统理解。 一、对宠物用品店的影响 作为一款集成了先进的摄像头、传感器和自动投喂功能的设备&#xff0c;智能喂养系统App使得宠物用品店可以…

龙迅LT8713SX适用于一路Type-C/DP1.4转三路Type-C/DP1.4/HDMI2.0应用方案,分辨率高达4K60HZ,支持SST/MST模式!

1. 概述 LT8713SX是一款高性能Type-C/DP1.4转Type-C/DP1.4/HDMI2.0转换器&#xff0c;具有三个可配置的DP1.4/HDMI2.0/DP输出接口和音频输出接口。LT8713SX支持 DisplayPort™ 单流传输 &#xff08;SST&#xff09; 模式和多流传输 &#xff08;MST&#xff09; 模式。当接收…

【SpringBoot】之Security进阶使用(登陆授权)

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是君易--鑨&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的博客专栏《SpringBoot开发之Security系列》。&#x1f3af…

C# Onnx yolov8 pokemon detection

目录 效果 模型信息 项目 代码 下载 C# Onnx yolov8 pokemon detectio 效果 模型信息 Model Properties ------------------------- date&#xff1a;2023-12-25T17:55:44.583431 author&#xff1a;Ultralytics task&#xff1a;detect license&#xff1a;AGPL-3.0 h…

4.9【共享源】流的多生产者和消费者

当一个系统中存在多个生产者和消费者时&#xff0c;情况可能会变得复杂。 了解生产者和消费者流之间支持的基数非常重要。 本质上&#xff0c;一个生产者流可以与多个消费者流连接&#xff0c;但一个消费者流只能连接到一个生产者流。请注意&#xff0c;基数关系仅限于单个流&…

竞赛保研 基于RSSI的室内wifi定位系统

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; wifi室内定位系统 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;…

asp.net mvc 重定向问题的解决方式

前端ajax发起请求&#xff0c;在后端接口中重定向&#xff0c;结果报错&#xff0c;无法跳转 Ajax实际上是通过XMLHttpRequest来向服务器发送异步请求的&#xff0c;从服务器获取数据&#xff0c;然后使用JS来更新页面&#xff0c;这也就是常说的局部刷新实现方式&#xff0c;所…

Linux部署MeterSphere结合内网穿透实现远程访问服务管理界面

文章目录 前言1. 安装MeterSphere2. 本地访问MeterSphere3. 安装 cpolar内网穿透软件4. 配置MeterSphere公网访问地址5. 公网远程访问MeterSphere6. 固定MeterSphere公网地址 前言 MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能&am…

华为数通方向HCIP-DataCom H12-831题库(多选题:241-249)

第241题 (NEW) 以下哪些操作可能会影响客户网络的正常运行? A、从设备上下载日志 B、软件升级 C、路由协议配置变更 D、debug核心交换机上转发的所有IP报文 答案:ABCD 解析: 第242题 对于防火墙的默认安全区 Trust 和 Untrust 的说法,正确的有 A、从 Trust 区域访问 Untr…