同步调制和异步调制区别

article/2025/11/11 10:19:10

在PWM控制电路中,载波频率 fc 和调制信号频率 fr 之比成为载波比,根据载波信号和信号波信号是否同步分为同步调制和异步调制。

1 什么是异步调制?

载波信号和调制信号不保持同步的方式称为异步调制,如下图所示,异步调制的载波频率是不变的,但是调制波的频率是改变的。同时由载波比的定义可知,异步调制的载波比也是变化的;

异步调制还有一个重要的特点就是输出的脉冲波是不对成的,不仅1/4脉冲不对成,正负半周期的脉冲也不对称,这会导致电流输出的谐波较多。如下图所示:

2 什么是同步调制?

同步调制的载波比N等于常数,并在变频时使载波和调制波保持同步的方式称为同步调制。

其特点如下:

第一:载波比N为常数,每个周期内输出的脉冲数的固定。这是因为载波比固定,所以一个周期的调制波内的载波数目是一定的,从而一个周期内的脉冲个数也是固定的。

第二:脉冲相位固定。这是因为无论调制波的频率如何变化,载波个数不变。无论调制波的频率增大减小,反应到一个周期的过程中是没有变化的。

 

3 同步调制和异步调制区别总结

同步调制和异步调制在控制方式上其实是有很大区别的;

第一:实现方式不同

异步调制只需要给定定频率的载波,调制波的频率也不需要特定控制,而同步调制则需要复杂的算法使得载波和调制波同频同相;举个例子,在双闭环的矢量控制系统中其实是默认为异步调制的,因为我们所用的大部分SVPWM模块的思路都是先通过计算空间矢量法得到调制波,然后再与三角载波比较得到所需要的PWM脉冲。但是想要在双闭环实现同步调制,就必须使得载波和调制波同步,在电机的速度上升过程中,调制波的频率是时刻改变,这个时候要随时都能实现载波和调制波的同频同相就需要复杂的控制算法,实现起来相对困难。

第二:谐波含量不同

异步调制的谐波含量要远高于同步调制。但是由于我们默认认知的电机控制系统似乎很少涉及到谐波的处理,其实根本原因是这些不考虑谐波的电机系统都是基于很高载波比的情况。因为变频器输出的PWM波的谐波主要集中在开关频率整数倍附近。 也就是说,载波比越大,开关频率越高,谐波的频率越高。 而变频器的负载是电机,电机是感性负载,高频信号通过电感,电流谐波将被衰减,谐波频率越高,衰减幅度越大。正是由于高次谐波被电机的感性特性所抑制,所以这些谐波被近似忽略了。而同步调制,通过使得载波比为3的整数倍,消除了3及其3的倍数次的谐波;并且通过适合PWM波正负半周期对称(N载波比取奇数)消除偶次谐波,总体同步调制所含谐波只为6k±1次谐波(常见的5 7 11 13次谐波)等。

第三:应用场合的不同。

其实在小功率的电机控制系统中,所以就算使用的开关器件开关频率较高,开关损耗仍然较小,并不太需要取刻意的消除谐波。但是在大功率的场合,如果开关频率太高,就会导致开关损耗升高,使用异步调制的话会导致大量的高幅值的低次谐波,所以需要应用同步调制的策略来消除低频的谐波。


http://chatgpt.dhexx.cn/article/vEey9Sjw.shtml

相关文章

同步和异步,区别

同步: 同步的思想是:所有的操作都做完,才返回给用户。这样用户在线等待的时间太长,给用户一种卡死了的感觉(就是系统迁移中,点击了迁移,界面就不动了,但是程序还在执行,…

java同步和异步的区别_java中同步与异步区别是什么

一、同步与异步概念:(推荐:java视频教程) 1.同步:所有的操作都做完,才返回给用户。这样用户在线等待的时间太长,给用户一种卡死了的感觉(就是系统迁移中,点击了迁移,界面就不动了,但…

ajax什么是异步和同步,ajax异步和同步的区别

AJAX异步 打个比方吧,通常情况下,用户注册,那么用户首先得填写好表单,然后点提交,这样表单就会向服务发出一个请求,则服务器处理代码,如果用户存在,则返回一个信息。总之,就是所有的数据需要你点提交后,信息才会发送! 而AJAX就相当于是模拟了一个信息发送请求,你可…

java8拉姆达表达式对Object去重复

java8拉姆达表达式对Object去重复 public static <T> Predicate<T> distinctByKey(Function<? super T, Object> keyExtractor) {Map<Object, Boolean> seen new ConcurrentHashMap<>();return object -> seen.putIfAbsent(keyExtractor.a…

拉姆达表达式 filter与map的讲解

filter 根据条件过滤元素 map 获取(映射)每个元素,并对其进行操作 参考链接

sort()与拉姆达表达式

sort()与拉姆达表达式的结合 #include <iostream> #include <string> #include <vector> #include <ctime> #include <map> #include <utility> #include <algorithm>using std::cout; using std::endl; using std::string; using …

java 拉姆达表达式_一看就懂之java8新特性函数式编程:我是拉姆达表达式lambda...

我们都知道&#xff0c; java8之后增加了很多新特性&#xff0c;大大的简化了代码的编写、阅读的负担。 先发个牢骚&#xff1a; 今天up主根据自己的理解跟大家说说新特性之一的lambda express(拉姆达表达式)&#xff0c;每当看到新的语法改动&#xff0c;内心我都是拒绝的。因…

拉姆达表达式学习(1)

我曾经遇到一个项目,项目里面需要经常对一系列的同类型集合进行操作,如对集合进行增加元素,删除集合的指定索引的元素等等.    我们可以使用ArrayList来进行.如 1 ArrayList stringListnew ArrayList(); 2 stringList.Add("大家好"); 3 stringList.Add("你们好…

拉姆达表达式记录 + log日志+代码

目录 71. item.label $"{lstD[i].DeptName}({lstCamera.Count})";72. 定义entity时不写传统的{get&#xff1b;set&#xff1b;}73.74. EF多对多75. DateTime.Now.Subtract(x.GpsTime).TotalHours76. queryModel.LogDate.Value.Year77. .net导出Excel78. User.Ident…

List.sort()方法使用拉姆达表达式进行排序的一个例子

这是牛客网华为java题库的一道题&#xff1a;HJ26 字符串排序 题中要求&#xff0c;对字符串中的英文字母不分大小写按照字典顺序排序&#xff0c;遇到相同的字母&#xff0c;要求保持它们的相对顺序不变&#xff0c;非英文字母字符保持原位置不变。例如&#xff1a; 输入&…

拉姆达表达式

1、Queryable 用于拉姆达表达式操作 //---------Queryable<T>,扩展函数查询---------// //---------Queryable<T>,扩展函数查询---------////针对单表或者视图查询//查询所有 var student db.Queryable<Student>().ToList(); var studentDynamic db.Querya…

java 拉姆达表达式_Java8中foreach与拉姆达表达式的组合使用

1. forEach and Map 1.1 通常这样遍历一个Map Map items = new HashMap<>(); items.put("A", 10); items.put("B", 20); items.put("C", 30); items.put("D", 40); items.put("E", 50); items.put("F", 60)…

Matlab系列之数组(矩阵)的生成

从本篇开始&#xff0c;会有一段时间都将用于记录数组、矩阵的操作等等&#xff0c;如果以前没有接触过相关的&#xff0c;可能会觉得要展示的是很复杂的东西&#xff0c;但并不是&#xff0c;这是一个很简单的部分&#xff0c;但也是一个很重要的部分&#xff0c;至少现在的我…

MATLAB-数组的使用

数组的使用&#xff08;持续更新&#xff09; randperm--数组随机排列permute--置换数组维度cat--串联数组squeeze--删除数组中长度为1的维度reshape--重构数组repmat--重复数组副本数组中的&#xff1a;sort-数组的排序dig-创建对角矩阵eig--特征值和特征向量magic--幻方矩阵m…

matlab定义数组和相关函数

matlab作为一个大型的计算软件&#xff0c;里面有许多对数组的操作&#xff0c;所以数组的定义和数组的操作是一个必不可少的部分。 1 数组的定义 在matlab中对数组的定义较为灵活&#xff0c;因为特殊矩阵较多&#xff0c;所以有许多特定的定义方法。比较常见的有三种&#…

Matlab的数组索引

在 MATLAB中&#xff0c;根据元素在数组中的位置&#xff08;索引&#xff09;访问数组元素的方法主要有三种&#xff1a;按位置索引、线性索引和逻辑索引。 按元素位置进行索引 最常见的方法是显式指定元素的索引。例如&#xff0c;要访问矩阵中的某个元素&#xff0c;请依序…

Matlab笔记-数组

一、结构数组的基本使用 结构体的定义即为C语言中结构体的初始化&#xff0c;其引用成员&#xff08;在Matlab中为field,字段的意思&#xff09;和C语言相同。 1、直接赋值 >> student(1).nameSilen; student(1).id1234; student(1).grade[1 2 3;4 5 6;7 8 9]; stude…

matlab三维数组

三维数组的定义&#xff1a;在MATLAB中&#xff0c;习惯性的将二维数组的第一维称为“行”&#xff0c;第二维称为“列”&#xff0c;而于三维数组&#xff0c;其第三维习惯性地称为“页”。 定义一个三维数组&#xff1a; A&#xff08;2&#xff0c;2&#xff0c;2&#xf…

MATLAB基础——关于数组(一)

变量和数组 MATLAB程序的基本数据单元是数组&#xff0c;标量在MATLAB中也被当做数组来处理 数组可以定义为向量&#xff08;一般描述为一维数组&#xff09;或矩阵&#xff08;一般描述为二维或多维&#xff09; 访问数组中的元素&#xff1a;数组名&#xff08;&#xff09;…

Matlab 数组与矩阵

矩阵 1、v21:3:18 ;表示的是从1 开始 18 结束&#xff0c;间隔为3 的一个等差数列v2 1 4 7 10 13 162、linspace(1,10,9);,介于1-10 之间&#xff0c;取9个数&#xff0c;使得他们是一个等差数列 >> linspace(1,10,9)ans 1.0000 2.1250 3.250…