前言

这个是通过表格数据生成模型接口的函数,缩减了在平常建模时繁琐的复制,可以参考使用,

首先:
在第一章提到的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--模型:通过表格数据生成指定的模型(二)相关推荐

  1. 【Matlab】多元线性回归(Excel可直接替换数据)

    [Matlab]多元线性回归(Excel可直接替换数据) 1.模型原理 2.模型说明 3.数据说明 4.代码绘图 5.输出回归模型 6.代码及注释 1.模型原理 多元线性回归原理概述如下: 多元线性回 ...

  2. 如何使用matlab读取excel中的表格数据

    如何使用matlab读取excel中的表格数据? 设备系统:win10. 操作软件:matlab2020b. 1.首先打开matlab软件,点击[新建]-[脚本]. 2.在脚本中输入代码 A=xlsr ...

  3. 【Matlab】Logistic回归(Excel可直接替换数据)

    [Matlab]Logistic回归(Excel可直接替换数据) 1.模型原理 2.模型说明 3.数据说明 4.拟合曲线 5.输出回归模型 6.代码及注释 1.模型原理 Lasso回归原理概述如下: ...

  4. Excel自动转曲线图的时PHP,excel表格数据转为曲线-如何将EXCEL表中的数据生成曲线...

    excel数据表转化为曲线图 可以选择数据后击插入--图表--散点图--带平滑线点图 工具 Office 2007 方法: 1.打开EXCEL表格,选择数据,并点击"插入"--图表 ...

  5. 读取excel中的表格数据到字典dict中--python

    读取excel中的表格数据到字典dict中--python: 工作中需要把excel表格中的数据读取出来放到字典中,便于检索和数据处理 主要有两种常用方式: 1.表头在第一行,其他行都是数据 2.表头 ...

  6. linux qt写入excel文件内容,Qt 读取Excel表格数据 生成Excel表格并写入数据

    Qt 读取Excel表格数据 生成Excel表格并写入数据 Qt 读取Excel表格数据 生成Excel表格并写入数据 修改.pro文件,增加 axcontainer QT += axcontaine ...

  7. 高中计算机教案excel,高中信息技术表格数据的处理教案

    以下是出国留学网小编整理的高中信息技术<表格数据的处理>教案,供大家浏览参考.更多相关内容请关注出国留学网教案栏目. 高中信息技术<表格数据的处理>教案一: 一.教学目标: 知 ...

  8. excel两张表格数据整合

    今天跟大家分享一下excel两张表格数据整合 1.首先我们打开excel文件,然后点击如下图选项 2.点击[汇总拆分]选择[合并多表] 3.将[表头行数]设置为2 4.勾选[合并后,标注源工作表],并 ...

  9. 做面板数据分位数回归模型_面板数据门限回归模型

    来源 | 数量经济学综合整理 转载请联系 进行回归分析,一般需要研究系数的估计值是否稳定.很多经济变量都存在结构突变问题,使用普通回归的做法就是确定结构突变点,进行分段回归.这就像我们高中学习的分段函 ...

最新文章

  1. Python3编写网络爬虫04-爬取猫眼电影排行实例
  2. S5PV210开发 -- 启动流程
  3. 十三、前端基本功:DOM练习
  4. Lua源码分析 - 基础篇 - Lua源码的结构和架构图(01)
  5. 运维笔记 - Nginx
  6. linux操作系统的体系结构
  7. linux tail 查找字符串,linux 查找包含字符串的文件
  8. java导入excel数据到mysql_java的poi技术读取Excel数据到MySQL
  9. (转)UIButton用法详解一
  10. revit2016注册表删除_Revit怎么卸载,如何把revit彻底卸载删除干净重新安装的方法?【转载】...
  11. Android 开源项目和文章集合(更新:2022.03.21)
  12. java 港澳台手机号码正则表达式
  13. 记录springboot 启动时报错:no profiles are currently active
  14. Index.ANALYZED in lucene4 is deprecated
  15. 变量消元(Varible Elimination)和概率边缘化(Marginalization)的关系
  16. 第6周作业1-闰年之循环判断(网络131黄宇倩)
  17. 关于8杯酒只有一杯酒有毒,每个人是否中毒只能化验一次,至少需要几个人辨识。...
  18. mysql 3306_允许远程链接mysql,开放3306端口
  19. Java并发编程实战(学习笔记十 第十一章 性能与可伸缩性)
  20. 解决“此图片来自微信公众平台 未经允许不可引用”的方法

热门文章

  1. oracle 财报2017q2,唯品会发布2017Q2财报:净营收突破175亿
  2. 【 unity3d 】天空盒的创建和使用
  3. 七种MYSQL插入数据后返回自增主键ID的方法
  4. 机器视觉光源学习总结——低角度环形光源
  5. Ubuntu18 没有/etc/rc.local文件 SSH自启动设置 WSL中和单独ubuntu系统中
  6. 《跑跑大作战II》Flash 游戏完工
  7. 阴阳师网易区最新服务器,阴阳师开服时间表_阴阳师新区开放时间表_阴阳师手游开服时间信息_玩游戏网...
  8. DOSBOX中的简单的masm 、link操作以及多个文件的连接输出hello word!
  9. python动图存储为视频_matplotlib动态图和视频保存
  10. 用计算机说早上好,早上好说说句子清爽干净 每日一句早安心语励志