【matlab专题】脚本(3)DBC--EXCEL--模型:通过表格数据生成指定的模型(二)
前言
这个是通过表格数据生成模型接口的函数,缩减了在平常建模时繁琐的复制,可以参考使用,
首先:
在第一章提到的DBC–EXCEL中生成的最后作品“
接下来的函数就是通过上图信息将其生成模型
下面看下最终结果
其中包括输入输出的类型。中间模块的参数(系数,偏移量)都已经写入相对应的模块中
函数
说下具体所用到的函数:
uigetfile函数:
函数 | uigetfile(filter,title) |
---|---|
参数 | 文件筐,选择文件 |
示例 | [filetxt,pathtxt] = uigetfile(‘.’,‘Please select an image’); |
xlsread函数
函数 | xlsread() |
---|---|
参数 | xlsread(filename) 读取名为 filename 的电子表格, |
参数 | xlsread(filename,sheet) 读取指定的工作表。 |
参数 | xlsread(filename,xlRange) 从工作簿的第一个工作表的指定范围内读取数据。使用 Excel 范围语法,例如 ‘A1:C3’。 |
参数 | xlsread(filename,sheet,xlRange) 读取指定的工作表和范围。 |
参数 | xlsread(filename,sheet,xlRange,‘basic’) 在 basic 导入模式下读取电子表格中的数据。 |
示例 | [data,txt]=xlsread(filetxt)调取文件filetxt下边的data和txt类型数据 |
cellfun函数
函数 | cellfun(func,C) |
---|---|
参数 | 判断数列A是否为空,返回值 |
示例 | cellfun(@isempty,txt |
strcmp函数
函数 | strcmp(A,B) |
---|---|
参数 | A和B两个文本数值 |
示例 | string(A(i,2));判断两个是是否相等 |
append函数
函数 | str = append(str1,…,strN) |
---|---|
参数 | 文本 |
示例 | append(‘hld’,‘‘,txt{i,15},’’,txt{i,10})合并文本 |
set_param函数
函数 | set_param(Object,ParameterName,Value) |
---|---|
参数 | (模块地址,参数,数值) |
示例 | set_param(zzz,‘factor’,ll)% |
add_line函数
函数 | add_line(sys,out,in) |
---|---|
参数 | (模型名称,信号输出模块,信号接入模块) |
示例 | add_line(‘connect_model’,‘Constant/1’,‘Gain/1’);1代表接口名称 |
strcat函数
函数 | strcat(pathtxt,filetxt); |
---|---|
参数 | (文本,文本) |
注释 | 将文本进行合并 |
示例 | strcat(pathtxt,filetxt); |
代码展示
clear all; close all; clc[filetxt,pathtxt] = uigetfile('*.*','Please select an image');%文件筐,选择文件
if(filetxt)filetxt = strcat(pathtxt,filetxt);filetxt = lower(filetxt);%一致的小写字母形式
else msgbox('Please select an image');return; %退出程序
endnew_system('Can_Input') % 创建模型
open_system('Can_Input') % 打开模型[data,txt]=xlsread(filetxt);%读取文件数据函数
C = readmatrix(filetxt);%读取文件数据函数A=~cellfun(@isempty,txt);%定位有效数据
inportLength=sum(A(:,10));%共计for i=2:inportLength %循环语句str = string(A(i,2)); %查询(i,2)位置数据是不是有效数据if (strcmp(str,'false')) % 如果无效则执行以下语句strd = append('hld','_',txt{i,15},'_',txt{i,10});%信号名称,个人要求add_block('simulink/Commonly Used Blocks/In1',strcat('Can_Input/',strd),'Position',[30 100+i*50 60 115+i*50]);添加到模型位置 add_block(模块,模块命名,创建位置)ddd=strcat('Can_Input','/',strd);%模块地址set_param(ddd,'OutDataTypeStr',txt{i,15})%修改模块属性add_block('platform_lib/communicate_model',strcat('Can_Input/',txt{i,10}),'Position',[150 100+i*50 210 115+i*50])%这个库的路径是作者的,使用人看情况需求而定ll = string(C(i-1,14));%转文本hh = string(C(i-1,16));%转文本zzz=strcat('Can_Input','/',txt{i,10});%模块地址set_param(zzz,'factor',ll)%修改模块属性set_param(zzz,'offset',hh)%修改模块属性strde = append(txt{i,15},'_',txt{i,10});%信号名称,个人要求add_block('simulink/Commonly Used Blocks/Out1',strcat('Can_Input/',strde),'Position',[290 100+i*50 320 115+i*50]);添加到模型位置 add_block(模块,模块命名,创建位置)fff=strcat('Can_Input','/',strde);set_param(fff,'OutDataTypeStr',txt{i,15})aaa=strcat(append('hld','_',txt{i,15},'_',txt{i,10}),'/','1');%名称合并(1代表信号接口)bbb=strcat(txt{i,10},'/','1');ccc=strcat(append(txt{i,15},'_',txt{i,10}),'/','1');add_line('Can_Input', aaa, bbb)%连线add_line('Can_Input', bbb, ccc) elseend
end
【matlab专题】脚本(3)DBC--EXCEL--模型:通过表格数据生成指定的模型(二)相关推荐
- 【Matlab】多元线性回归(Excel可直接替换数据)
[Matlab]多元线性回归(Excel可直接替换数据) 1.模型原理 2.模型说明 3.数据说明 4.代码绘图 5.输出回归模型 6.代码及注释 1.模型原理 多元线性回归原理概述如下: 多元线性回 ...
- 如何使用matlab读取excel中的表格数据
如何使用matlab读取excel中的表格数据? 设备系统:win10. 操作软件:matlab2020b. 1.首先打开matlab软件,点击[新建]-[脚本]. 2.在脚本中输入代码 A=xlsr ...
- 【Matlab】Logistic回归(Excel可直接替换数据)
[Matlab]Logistic回归(Excel可直接替换数据) 1.模型原理 2.模型说明 3.数据说明 4.拟合曲线 5.输出回归模型 6.代码及注释 1.模型原理 Lasso回归原理概述如下: ...
- Excel自动转曲线图的时PHP,excel表格数据转为曲线-如何将EXCEL表中的数据生成曲线...
excel数据表转化为曲线图 可以选择数据后击插入--图表--散点图--带平滑线点图 工具 Office 2007 方法: 1.打开EXCEL表格,选择数据,并点击"插入"--图表 ...
- 读取excel中的表格数据到字典dict中--python
读取excel中的表格数据到字典dict中--python: 工作中需要把excel表格中的数据读取出来放到字典中,便于检索和数据处理 主要有两种常用方式: 1.表头在第一行,其他行都是数据 2.表头 ...
- linux qt写入excel文件内容,Qt 读取Excel表格数据 生成Excel表格并写入数据
Qt 读取Excel表格数据 生成Excel表格并写入数据 Qt 读取Excel表格数据 生成Excel表格并写入数据 修改.pro文件,增加 axcontainer QT += axcontaine ...
- 高中计算机教案excel,高中信息技术表格数据的处理教案
以下是出国留学网小编整理的高中信息技术<表格数据的处理>教案,供大家浏览参考.更多相关内容请关注出国留学网教案栏目. 高中信息技术<表格数据的处理>教案一: 一.教学目标: 知 ...
- excel两张表格数据整合
今天跟大家分享一下excel两张表格数据整合 1.首先我们打开excel文件,然后点击如下图选项 2.点击[汇总拆分]选择[合并多表] 3.将[表头行数]设置为2 4.勾选[合并后,标注源工作表],并 ...
- 做面板数据分位数回归模型_面板数据门限回归模型
来源 | 数量经济学综合整理 转载请联系 进行回归分析,一般需要研究系数的估计值是否稳定.很多经济变量都存在结构突变问题,使用普通回归的做法就是确定结构突变点,进行分段回归.这就像我们高中学习的分段函 ...
最新文章
- Python3编写网络爬虫04-爬取猫眼电影排行实例
- S5PV210开发 -- 启动流程
- 十三、前端基本功:DOM练习
- Lua源码分析 - 基础篇 - Lua源码的结构和架构图(01)
- 运维笔记 - Nginx
- linux操作系统的体系结构
- linux tail 查找字符串,linux 查找包含字符串的文件
- java导入excel数据到mysql_java的poi技术读取Excel数据到MySQL
- (转)UIButton用法详解一
- revit2016注册表删除_Revit怎么卸载,如何把revit彻底卸载删除干净重新安装的方法?【转载】...
- Android 开源项目和文章集合(更新:2022.03.21)
- java 港澳台手机号码正则表达式
- 记录springboot 启动时报错:no profiles are currently active
- Index.ANALYZED in lucene4 is deprecated
- 变量消元(Varible Elimination)和概率边缘化(Marginalization)的关系
- 第6周作业1-闰年之循环判断(网络131黄宇倩)
- 关于8杯酒只有一杯酒有毒,每个人是否中毒只能化验一次,至少需要几个人辨识。...
- mysql 3306_允许远程链接mysql,开放3306端口
- Java并发编程实战(学习笔记十 第十一章 性能与可伸缩性)
- 解决“此图片来自微信公众平台 未经允许不可引用”的方法
热门文章
- oracle 财报2017q2,唯品会发布2017Q2财报:净营收突破175亿
- 【 unity3d 】天空盒的创建和使用
- 七种MYSQL插入数据后返回自增主键ID的方法
- 机器视觉光源学习总结——低角度环形光源
- Ubuntu18 没有/etc/rc.local文件 SSH自启动设置 WSL中和单独ubuntu系统中
- 《跑跑大作战II》Flash 游戏完工
- 阴阳师网易区最新服务器,阴阳师开服时间表_阴阳师新区开放时间表_阴阳师手游开服时间信息_玩游戏网...
- DOSBOX中的简单的masm 、link操作以及多个文件的连接输出hello word!
- python动图存储为视频_matplotlib动态图和视频保存
- 用计算机说早上好,早上好说说句子清爽干净 每日一句早安心语励志