Matlab【可视化作图】绘制线电压相电压辅助线

目录

  • 引言
  • 绘图原理
    • 采点
    • 绘图
    • 设置坐标轴标尺

引言

学习电力电子的同学可能在私下里练习的时候非常需要三相线电压和相电压的辅助线。最近我随便找了一本书把Matlab可视化编程恶补了一下,给大家介绍一下这个波形辅助线是怎么做的。
三相线电压辅助线就是一组相位相差60°的正弦曲线,三相相电压辅助线就是一组相位相差120°的正弦曲线。为了让曲线具有普遍性,我选的x坐标轴的间距都是π6\frac{\pi}{6}6π,y轴截取到最大值和最小值。

  1. 当使用三相半波整流时,绘制输出电压平均值的波形时,需要的是三相相电压辅助线(图1)
  2. 当使用三相全控桥整流时,绘制输出电压平均值的波形时,需要的是三相线电压辅助线(图2)
  3. 当使用三相全控桥整流时,绘制晶闸管的端电压波形时,电路工作在电流断续模式时,需要的是三相相电压和线电压的结合辅助线(图3)。(电流断续时晶闸管承受相电压,电流连续时晶闸管承受线电压)
  4. 当使用三相全控桥整流,且遇到三相电源单相缺失或接地时,绘制输出电压udu_dud或者晶闸管端电压uVTu_{VT}uVT时,需要用到线相电压结合的辅助线(图3)。

绘图原理

Matlab绘图指定精度绘图(这一点和几何画板不太一样),因此需要制定一个采样间隔,我们制定的是0.01,对于普通作图已经足够了。选取作图的周期(我们选取的是8个1/4周期,对于线电压和相电压足够——即4π4\pi4π),在这里我们略去不太重要的指定颜色过程(plot函数当同时作很多图时自动分配不同颜色),给大家叙述最重要步骤——采点和坐标分配。

采点

x=0:0.01:8*pi/2;%绘图坐标

0是起始点,0.01是采样间隔,8*pi/2是终止点(Matlab中的pi就是π\piπ的符号常量)
接着计算线电压相电压。如果查看Matlab帮助就会发现,plot(x,y),当x=vector(向量),y=matrix(矩阵)时,优先对应y的列和x,若y的列数等于x向量的维数,画图时,每一组数据绘图时对应x的全体值和y的每一行的所有值。若y的列数不等于x的维数,且y的行数等于x向量的维数,每一组数据绘图时对应x的全体值和y的每一列的所有值。
因此,我们只需要定义一个6行的线电压矩阵和一个3行的相电压矩阵,每一个矩阵x对应的线电压/相电压即可:

lvotage=zeros(6,size(x,2));%线电压数值矩阵
pvoltage=zeros(3,size(x,2));%相电压数值矩阵
for i=1:6lvotage(i,:)=sin(x+(i-1)*pi/3);
end
for i=1:3pvoltage(i,:)=sin(x+(i-1)*2*pi/3);
end

绘图

上面已经接受过,x为向量,y为数值矩阵时(现在y的列数等于x的向量),plot(x,y)会绘制多张图,图的数目等于y的行数。因此下面的绘图指令就变得特别简单:

plot(x,lvotage);xlim([pi,4*pi]);title('线电压波形图');
plot(x,pvoltage);xlim([0,4*pi]);title('相电压波形图');

title指令用来设置标题,如果不需要,也可以删去。

设置坐标轴标尺

我们需要每π6\frac{\pi}{6}6π设置一个坐标尺,方便我们对应原来的图。使用xtick()指令即可,注意此指令中一定是数值向量形式或者等差数列表示法。另外,我们如果不需要坐标轴的标签,可以去掉,以免多个小数位对我们的视野造成干扰。

x=0:0.01:8*pi/2;%绘图坐标
lvoltage=zeros(6,size(x,2));%线电压数值矩阵
pvoltage=zeros(3,size(x,2));%相电压数值矩阵
for i=1:6lvoltage(i,:)=sin(x+(i-1)*pi/3);
end
for i=1:3pvoltage(i,:)=sin(x+(i-1)*2*pi/3);
end
plot(x,lvoltage);xlim([0,4*pi]);title('线电压波形图');
xticks(0:pi/6:4*pi);
xticklabels({});%去掉x轴标签
yticklabels({});%去掉y轴标签
figure;%另起一张图
plot(x,pvoltage);xlim([0,4*pi]);title('相电压波形图');
xticks(0:pi/6:4*pi);
xticklabels({});
yticklabels({});
for i=1:6lvoltage(i,:)=sqrt(3)*sin(x+(i-1)*pi/3+pi/6);
end
figure;%另起一张图
plot(x,pvoltage,'-.');xlim([0,3*pi]);
xticks(0:pi/6:3*pi);
yticks([-sqrt(3),-1,0,1,sqrt(3)]);%标记线相电压的峰值
hold on;
plot(x,lvoltage,'-');xlim([0,3*pi]);
xticklabels({});
yticklabels({});
title('线相电压结合波形图');

执行效果如下图:
线电压波形图
图1图11
相电压波形图
图2图22
线相电压结合图
图3图33
希望本文对您有帮助,谢谢阅读。

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

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

相关文章

SpringBoot实现Excel导入导出,好用到爆,POI可以扔掉了!

在我们平时工作中经常会遇到要操作Excel的功能,比如导出个用户信息或者订单信息的Excel报表。你肯定听说过POI这个东西,可以实现。但是POI实现的API确实很麻烦,它需要写那种逐行解析的代码(类似Xml解析)。今天给大家推…

Facebook升级到MySQL 8.0付出的代价

近日,Facebook 官博公布了他们的数据库版本从 MySQL 5.6 升级到了 MySQL 8.0,并且在官博记录了复盘详细的升级过程。Facebook 称,他们最近的一次大版本升级到 MySQL 5.6 花了一年多时间才完成,还在 5.6 版上开发 LSM 树存储引擎&a…

Matlab制作朱利表

朱利判据 其中 {bn−kan−k−ana0∗akcn−kbn−k−bnb0∗bk...qn−kpn−k−pnp0∗pk\begin{cases} b_{n-k}a_{n-k}-\frac{a_n}{a_0}*a_k\\ c_{n-k}b_{n-k}-\frac{b_n}{b_0}*b_k\\ ...\\ q_{n-k}p_{n-k}-\frac{p_n}{p_0}*p_k \end{cases}⎩⎪⎪⎪⎨⎪⎪⎪⎧​bn−k​an−k​−a0…

高并发下秒杀商品,必须知道的9个细节

高并发下如何设计秒杀系统?这是一个高频面试题。这个问题看似简单,但是里面的水很深,它考查的是高并发场景下,从前端到后端多方面的知识。秒杀一般出现在商城的促销活动中,指定了一定数量(比如:…

最小拍控制系统详细解读(阶跃输入+速度输入2个案例)【Simulink仿真】

目录索引1.符号说明与结构框图2.最小拍控制系统构造原则2.1数字控制器D(z)的构造3.简单控制对象的最小拍控制器设计3.1阶跃输入3.2速度输入1.符号说明与结构框图 y(k)——系统响应输出的离散值u(k)——数字PID控制输出的离散值r(k)——期望输出的离散值(事先已知&a…

SpringBoot官方热部署和远程调试神器,真带劲!

平时使用SpringBoot开发应用时,修改代码后需要重新启动才能生效。如果你的应用足够大的话,启动可能需要好几分钟。有没有什么办法可以加速启动过程,让我们开发应用代码更高效呢?今天给大家推荐一款SpringBoot官方的热部署工具spri…

【Python】输入任意个数元素并保存至列表

目录1.导入任意个数元素到列表1.1.编程思路1.2.代码片2.查找一个重复元素在列表中的所有位置2.1.编程思路2.2代码片1.导入任意个数元素到列表 1.1.编程思路 输入未知个数的元素需要用列表来存储,由于Python具有内存的动态分配能力,列表不需要手动动态分…

MySQL 性能优化的 9 种姿势,面试再也不怕了!

大家好,我是磊哥!今天给大家分享一些简单好用的数据库优化方式!1、选择最合适的字段属性Mysql是一种关系型数据库,可以很好地支持大数据量的存储,但是一般来说,数据库中的表越小,在它上面执行的…

Excel的规划求解【详细步骤】

本文目录1.说明2.准备加载项步骤1步骤2步骤33.线性规划问题步骤4步骤5步骤61.说明 使用Lingo程序也可以实现线性规划、非线性规划以及0-1规划,但是在缺少Lingo程序的情况下,我们使用Excel照样可以很容易地完成。在这里我给大家提供了解决此类问题的详细…

4 种方法!检查字符串是否为合法的日期格式

哈喽大家好,今天咱们来讲一下,Java 中如何检查一个字符串是否是合法的日期格式?为什么要检查时间格式?后端接口在接收数据的时候,都需要进行检查。检查全部通过后,才能够执行业务逻辑。对于时间格式&#x…

【Matlab】根据图生成带权邻接矩阵,并求出最短路径

目录图的简介无向图(Graph)生成带权邻接矩阵求两点最短路径有向图(Digraph)生成带权邻接矩阵求最短路径图的简介 图是拓扑学中的一个重要概念,分为无向图和有向图两种。图有两个重要属性,即点(…

阿里二面:为什么要分库分表?

在高并发系统当中,分库分表是必不可少的技术手段之一,同时也是BAT等大厂面试时,经常考的热门考题。你知道我们为什么要做分库分表吗?这个问题要从两条线说起:垂直方向 和 水平方向。1 垂直方向垂直方向主要针对的是业务…

Java 中 List 分片的 5 种方法!

作者 | 王磊来源 | Java中文社群(ID:javacn666)转载请联系授权(微信ID:GG_Stone)前些天在实现 MyBatis 批量插入时遇到了一个问题,当批量插入的数据量比较大时,会导致程序执行报错&a…

Matlab仿真炮弹飞行轨迹——探究射弹参数对飞行轨迹的影响

目录1.分析炮弹受力2.设定参数并仿真3.通过仿真寻找最佳射弹速度3.1.射弹角度的影响3.2.射弹速率的影响3.3.炮弹属性和空气的影响3.3.1.空气阻力系数的影响3.3.2.炮弹质量的影响1.分析炮弹受力 假设炮弹在飞行过程中可以看成质点,运动时仅考虑初始速度、重力加速度…

50行代码,搞定敏感数据读写!

每天早上七点三十,准时推送干货一、介绍在实际的软件系统开发过程中,由于业务的需求,在代码层面实现数据的脱敏还是远远不够的,往往还需要在数据库层面针对某些关键性的敏感信息,例如:身份证号、银行卡号、…

【Python】导入资源管理器的文件列表(计算文件和文件夹大小)

文章目录1.按照扩展名进行分类2.导出文件的大小3.计算文件夹大小4.分类到字典5.完整代码及效果1.按照扩展名进行分类 使用Python查询一个路径下的所有文件可以借助glob模块以及os模块。 在导入文件列表之前,我们需要指定我们的操作目录,操作目录一经指定…

HashMap 中的一个“坑”!

作者 | 王磊来源 | Java中文社群(ID:javacn666)转载请联系授权(微信ID:GG_Stone)最近公司新来了一个小伙伴,问了磊哥一个比较“奇怪”的问题,这个问题本身的难度并不大,但…

【Python】交互式界面创建函数

文章目录简介规则思路示例代码与运行效果简介 运行Python时,在程序运行过程中手动输入一个函数表达式,并将其作为一个函数进行后续的调用工作,类似于Matlab里面的匿名函数。这个功能使用传统语言会相当麻烦,当然,我也…

原生 js前端路由系统实现3之代码 构建工具 和 querystring功能

为什么80%的码农都做不了架构师?>>> 构建 目前前端构建工具流行的是 grunk.js 功能是大而全,但往往大而全的东西为了多样性 需要做额外的配置 我还是想要有一个专门为自己特性项目而生构建工具 我不想加载第三方的node模块,也不…

单例模式,真不简单

前言单例模式无论在我们面试,还是日常工作中,都会面对的问题。但很多单例模式的细节,值得我们深入探索一下。这篇文章透过单例模式,串联了多方面基础知识,非常值得一读。1 什么是单例模式?单例模式是一种非…