电机驱动专题-理论学习-计算整数化

计算定点化

  • 标幺化
    • 标幺化简介
    • 标幺化的优点
    • 原理讲解
  • Q格式化

电机驱动在讲究成本的情况下,有很多在M3、M0、甚至STM8芯片上开发正弦波驱动的需求,而这些芯片没有一个支持DSP运算、定点、浮点运算(M4内核的开始支持DSP运算,浮点运算或者定点浮点运算)。那么我们需要将计算转化成整数运算,效率更高。
实现这一目标的主要实现方法:

  1. 标幺化,并将范围归一。
  2. Q格式化(Q15)

标幺化

标幺化简介

标幺值是一种相对单位,以某个标准值为基准,将实际的物理量值除以该标准值,得到一个无量纲的数值。在电机控制中,通常以电机的额定值为标准值,将实际的电流、电压、转速等物理量值都除以这个标准值,得到对应的标幺值。

标幺化的优点

  1. 方便比较和计算。
  2. 实现控制系统通用化(适配物理模型相同的不同系统)。
  3. 防止控制系统数据溢出。
  4. 和 Q格式 相配合,实现将浮点数转化为整数运算。

原理讲解

以下援引至知乎网文-旋转的世界

在电机控制中,不管是使用什么样估算转子角度的算法,如滑膜观测器、龙格伯观测器、磁链观测器等,在具体的代码实现上,都绕不开一个问题:“怎么把代码中的电机数学模型和真实物理世界中的电机模型参数联系起来?”

Q格式化

DSP上浮点数据定点化处理 Q格式

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

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

相关文章

熟练使用Nacos、GateWay、OpenFeign、Sentinel常用组件

Nacos 面试题: 请简述Nacos是什么,它主要解决了什么问题?Nacos提供了哪些核心功能?Nacos是如何支持服务发现的?如何使用Nacos作为配置中心?Nacos的集群部署是如何实现的? 答案: …

libVLC 视频窗口上叠加透明窗口

很多时候,我们需要在界面上画一些三角形、文字等之类的东西,我们之需要重写paintEvent方法,比如像这样 void Widget::paintEvent(QPaintEvent *event) 以下就是重写的代码。 void Widget::paintEvent(QPaintEvent *event) {//创建QPainte…

振动信号频域图绘制函数(python版)

在实际应用中,不免会看时域图和频域图,封装了绘制时域图和频域图程序,方便调用 ## 导入包 from matplotlib import pyplot as plt from matplotlib import rcParams import numpy as np import pandas as pdconfig {"font.family"…

创新指南|战略衡量的增长组织:用人工智能增强关键绩效指标(KPI)

传统的关键绩效指标 (KPI)越来越无法提供领导者取得成功所需的信息和见解。他们在跟踪进展、协调人员和流程、确定资源优先级以及推进问责制方面存在不足。本文是 2024 年第一份麻省理工学院 SMR - BCG 人工智能和商业战略全球高管学习和研究项目的调查结果——人工智能和业务战…

最新PDD商家端Anti-Content参数逆向分析与纯算法还原

文章目录 1. 写在前面2. 接口分析3. 断点分析4. 扣JS代码 【🏠作者主页】:吴秋霖 【💼作者介绍】:擅长爬虫与JS加密逆向分析!Python领域优质创作者、CSDN博客专家、阿里云博客专家、华为云享专家。一路走来长期坚守并致…

Terraform 通过 Provisioner 配置服务器

Provisioner 介绍 当虚拟服务器创建完成后,通常需要执行一些初始化的操作。例如:安装软件,配置系统,服务等。 在前面的案例中使用云商的 user_data 用户数据来执行 shell 脚本来安装 nginx 服务器。 Terraform 也提供了 Provis…

第十五篇:Mybatis

文章目录 一、什么是MyBatis二、Mybatis入门案例三、配置SQL提示四、数据库连接池四、lombok五、mybatis基础操作5.1 根据id删除5.2 预编译SQL5.3 新增员工5.4 更新员工5.5 查询员工(用于页面回显)5.6 条件查询 七、XML映射文件八、动态SQL8.1 if语句8.2…

(学习日记)2024.04.12:UCOSIII第四十节:软件定时器函数接口讲解

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…

JavaScript_语法--变量

1.4 变量 变量:一小块存储数据的内存空间 Java语言是强类型语言,而JavaScript是弱类型的语言 强类型: 在开辟变量存储空间时,定义了空间将来存储的数据的数据类型。只能存储固定类型的数据 弱类型: 在开辟变量存储空间…

VS中使用QT的UI提升类时,找不到头文件的情况

1、情况简述 在使用VS时,会发现与QCreator存在一些差异。最主要的就是要设置很多东西,如果不配置的话,就会遇到一些问题。下面我分享下我调试过程中遇到的一个问题。使用Qdesigner的UI提升类时,找不到头文件的情况: …

Kivy 学习2

from kivy.app import App from kivy.uix.button import Button from kivy.uix.floatlayout import FloatLayout from kivy.graphics import Rectangle, Colorclass FloatLayoutApp(App):def build(self):def update_rect(layout, *args):设置背景尺寸,可忽略layout…

Spring Cloud学习笔记:Eureka简介,Eureka简单样例

这是本人学习的总结,主要学习资料如下 - 马士兵教育 [TOC](目录)1、Eureka 1.1、架构 Eureka是SpringCloud Nexflix的核心子模块,其中包含Server和Client。 Server提供服务注册,存储所有可用服务节点。 Client用于简化和Server的通讯复杂…

【学习心得】Python中的queue模块使用

一、Queue模块的知识点思维导图 二、Queue模块常用函数介绍 queue模块是内置的,不需要安装直接导入就可以了。 (1)创建一个Queue对象 import queue# 创建一个队列实例 q queue.Queue(maxsize20) # 可选参数,默认为无限大&am…

物理随机接入信道PRACH数据生成

NR随机接入前导码(Preamble)采用Zadoff Chu序列,长度分别为839和139。 物理随机接入信道(PRACH)前导码格式的定义包括PRACH OFDM符号个数、循环前缀(CP)长度和保护时间(GT&#xff…

软件库V1.2版本开源-首页UI优化

iAppV3源码,首页的分类更换成了标签布局,各位可以参考学习,界面名称已经中文标注! 老版本和现在的版本还是有较大的区别的,建议更新一下! 新版本改动界面如下: 1、首页.iyu:分类按…

Windows:Redis数据库图形化中文工具软件——RESP(3)

这个是用于连接redis数据库的软件工具,安装在windows上的图形化界面,并且支持中文,是在github上的一个项目 1.获取安装包 发布 lework/RedisDesktopManager-Windows (github.com)https://github.com/lework/RedisDesktopManager-Windows/rel…

halcon学习记录之亚像素轮廓

亚像素轮廓获取的两种方式 1.通过插值法获取亚像素轮廓 亚像素是在数字成像领域,由于物理上已经无法在相邻像素之间增加更多实际的感光单元,通过插值算法引入虚拟像素以在图像中提高测量的精度。 插值是一种通过已知数据点来估算未知位置的方法。在图…

【Vue】动态Icon组件(变量值作为组件名)

在Vue项目中&#xff0c;我们经常会使用到图标。Element Plus&#xff0c;作为Vue的组件库&#xff0c;提供了ElIcon组件来方便我们使用图标。同时&#xff0c;Vue的<component>元素允许我们使用动态组件&#xff0c;这使得我们可以在不同的条件下渲染不同的组件。 ElIc…

Java复习第十八天学习笔记(MVC,三层架构,分页),附有道云笔记链接

【有道云笔记】十八 4.4 MVC模式、三层架构、分页 https://note.youdao.com/s/PRQ62OUV 一、MVC MVC全名是Model View Controller&#xff0c;是模型(model)&#xff0d;视图(view)&#xff0d;控制器(controller)的缩写&#xff0c;一种软件设计典范&#xff0c; 用一种业务…

C++ 为什么不能在构造函数中调用虚函数

最近在Clion编辑器中看到构造函数中调用虚函数提示&#xff1a; Do not invoke virtual member functions from constructor 这里记录一下为什么不能在构造函数中调用虚函数。 #include <iostream> #include <string>using namespace std;class BaseClass {publi…