当前位置: 首页 > news >正文

Matlab模块From Workspace使用数据类型说明

Matlab原文连接:Load Data Using the From Workspace Block

模型:

从信号来源的数据:

timeseries 数据:

sampleTime = 0.01;
numSteps = 1001;time = sampleTime*[0:(numSteps-1)];
time = time';data = sin(2*pi/3*time);simin = timeseries(data,time);

 timetable 数据:

sampleTime = 0.01;
numSteps = 1001;time = sampleTime*[0:(numSteps-1)];
time = time';data = sin(2*pi/3*time);secs = seconds(time);
simin = timetable(secs,data);

struct 数据:

Struct的必须得有一个time域和Signals.values域,否则不认出来。

clear simin;sampleTime = 0.01;
numSteps = 1001;time = sampleTime*[0:(numSteps-1)];
time = time';data = sin(2*pi/3*time);simin.time = time;
simin.signals.values = data;

array 数据:

第一列必须是时间,第二列是数据。

sampleTime = 0.01;
numSteps = 1001;time = sampleTime*[0:(numSteps-1)];
time = time';data = sin(2*pi/3*time);simin = [time,data];

加载Bus数据:

Bus 数据:下面是Bus元素定义和Bus(SinBus与SinsoldBus类型)里面包含关系

elems(1) = Simulink.BusElement; %必须有一个Simulink.Bus元素
elems(1).Name = 'Sine';% 必须得有元素名称
elems(2) = Simulink.BusElement;
elems(2).Name = 'BigSine';
SineBus = Simulink.Bus;%创建Bus,并将元素幅值给Bus元素。
SineBus.Elements = elems;clear elems;
elems(1) = Simulink.BusElement; % 创建Bus数据类型
elems(1).Name = 'SineBus';
elems(1).DataType = 'Bus: SineBus';
elems(2) = Simulink.BusElement;
elems(2).Name = 'Cosine';
SinusoidBus = Simulink.Bus;
SinusoidBus.Elements = elems;

Bus里面的元素都是时间序列

% Create workspace data for bus
clear busin
sampleTime = 0.01;
numSteps = 1001;time = sampleTime*[0:(numSteps-1)];
time = time';data = sin(2*pi/3*time);
cosdata = cos(2*pi/3*time);
ampdata = 2*data;busin.Cosine = timeseries(cosdata,time);
busin.SineBus.Sine = timeseries(data,time);
busin.SineBus.BigSine = timeseries(ampdata,time);% Create Simulink.Bus object to define bus hierarchy
elems(1) = Simulink.BusElement;
elems(1).Name = 'Sine';
elems(2) = Simulink.BusElement;
elems(2).Name = 'BigSine';
SineBus = Simulink.Bus;
SineBus.Elements = elems;clear elems;
elems(1) = Simulink.BusElement;
elems(1).Name = 'SineBus';
elems(1).DataType = 'Bus: SineBus';
elems(2) = Simulink.BusElement;
elems(2).Name = 'Cosine';
SinusoidBus = Simulink.Bus;
SinusoidBus.Elements = elems;

Partially specified 数据 : 和上面对比只是cosine没有数据而已。

% Create workspace data for bus
clear busin
sampleTime = 0.01;
numSteps = 1001;time = sampleTime*[0:(numSteps-1)];
time = time';data = sin(2*pi/3*time);
ampdata = 2*data;clear busin
busin.Cosine = [];
busin.SineBus.Sine = timeseries(data,time);
busin.SineBus.BigSine = timeseries(ampdata,time);% Create Simulink.Bus object to define bus hierarchy
elems(1) = Simulink.BusElement;
elems(1).Name = 'Sine';
elems(2) = Simulink.BusElement;
elems(2).Name = 'BigSine';
SineBus = Simulink.Bus;
SineBus.Elements = elems;clear elems;
elems(1) = Simulink.BusElement;
elems(1).Name = 'SineBus';
elems(1).DataType = 'Bus: SineBus';
elems(2) = Simulink.BusElement;
elems(2).Name = 'Cosine';
SinusoidBus = Simulink.Bus;
SinusoidBus.Elements = elems;

array Buses 数据:

直接是一个Bus数组。

% Create workspace data for bus
sampleTime = 0.01;
numSteps = 1001;time = sampleTime*[0:(numSteps-1)];
time = time';data = sin(2*pi/3*time);
cosdata = cos(2*pi/3*time);
ampdata = 2*data;bus1.Cosine = timeseries(cosdata,time);
bus1.SineBus.Sine = timeseries(data,time);
bus1.SineBus.BigSine = timeseries(ampdata,time);bus2.Cosine = timeseries((cosdata-1),time);
bus2.SineBus.Sine = timeseries((data-1),time);
bus2.SineBus.BigSine = timeseries((ampdata-1),time);busin = [bus1,bus2];% Create Simulink.Bus object to define bus hierarchy
elems(1) = Simulink.BusElement;
elems(1).Name = 'Sine';
elems(2) = Simulink.BusElement;
elems(2).Name = 'BigSine';
SineBus = Simulink.Bus;
SineBus.Elements = elems;clear elems;
elems(1) = Simulink.BusElement;
elems(1).Name = 'SineBus';
elems(1).DataType = 'Bus: SineBus';
elems(2) = Simulink.BusElement;
elems(2).Name = 'Cosine';
SinusoidBus = Simulink.Bus;
SinusoidBus.Elements = elems;

struct 和 Bus 区别和相同点:

数据类型类型fiel有要求timeseries可以多个
Struct不需要定义类型fiel必须是time与signals.values
Bus需要定义Bus类型无要求

注释:加载数组数据:

% Define simin variable for Signal From Workspace block
sampleTime = 0.01;
numSteps = 1001;time = sampleTime*[0:(numSteps-1)];
time = time';data = sin(2*pi/3*time);simin = timeseries(data,time);% Define bus object for Bus From Workspace block output data type
elems(1) = Simulink.BusElement;
elems(1).Name = 'Sine';
elems(2) = Simulink.BusElement;
elems(2).Name = 'BigSine';
SineBus = Simulink.Bus;
SineBus.Elements = elems;clear elems;
elems(1) = Simulink.BusElement;
elems(1).Name = 'SineBus';
elems(1).DataType = 'Bus: SineBus';
elems(2) = Simulink.BusElement;
elems(2).Name = 'Cosine';
SinusoidBus = Simulink.Bus;
SinusoidBus.Elements = elems;% Define bus data for busin variable
cosdata = cos(2*pi/3*time);
ampdata = 2*data;clear busin;
busin.Cosine = timeseries(cosdata,time);
busin.SineBus.Sine = timeseries(data,time);
busin.SineBus.BigSine = timeseries(ampdata,time);

http://www.lryc.cn/news/497055.html

相关文章:

  • LangChain学习笔记(一)-LangChain简介
  • k8s,声明式API对象理解
  • KubeBlocks v0.9.2发布啦!支持容器镜像滚动更新、MySQL支持Jemalloc...快来升级体验更多新功能!
  • Linux-虚拟环境
  • window系统下的git怎么在黑窗口配置代理
  • 网络和通信详解
  • 网络安全框架及模型-PPDR模型
  • WPF+LibVLC开发播放器-LibVLC播放控制
  • 子模块、Fork、NPM 包与脚手架概述
  • 基于Java Springboot蛋糕订购小程序
  • 【el-table】表格后端排序
  • APP聊天项目介绍
  • android user版本默认usb模式为充电模式
  • 常见问题QA的前端代码
  • float globalMapVIsualizationLeafSize; 的中文意思是什么
  • 基于Java Springboot诗词学习APP且微信小程序
  • CSS学习记录02
  • 6.1 innoDb逻辑存储结构和架构-简介
  • C++看懂并使用-----回调函数
  • 构建短视频矩阵生态体系开发分享
  • qt QGraphicsScale详解
  • CAD 文件 批量转为PDF或批量打印
  • Java基础面试题16:简述Servlet的体系结构
  • Web开发基础学习——理解React组件中的根节点
  • 【人工智能】探索自然语言生成(NLG):用GPT生成文本
  • 挑战用React封装100个组件【004】
  • vue elementui layout布局组件实现规则的弹性布局
  • SpringBoot Web 开发请求参数
  • python7学习笔记-循环、迭代、pass
  • LeetCode78:子集