
MATLAB
文章平均质量分 65
AutoMarie
专注于车辆系统控制、嵌入式操作系统开发、系统建模与控制、人工智能、电机控制、桌面应用软件开发等
展开
-
自动化测试报告表格html的生成(基于MATLAB)
文章目录前言自动化生成报告总体步骤报告模板前言在自动化测试时,经常会统计一些测试得到的统计结果或者仿真结果等。若每次仿真完成后手动将每个结果值依次添加到excel或者报表中,这些机械重复的工作最好交给程序完成。为此,本篇文章在MATLAB环境下就自动化生成html结果报表进行介绍。自动化生成报告总体步骤1、将需要生成报告的数据利用程序汇总到一个专门统计所有报告输出的变量中。这个汇总变量中记录了关于报告中的每个数据的描述,变量值,变量名称等信息。如果汇总的报告不是变量,也可进行不同的标记容纳到该汇总变原创 2021-08-07 15:01:31 · 1760 阅读 · 0 评论 -
Simulink通过 mex level 2 S函数传递可变尺寸的数据
目录前言将子模块自动转换S函数修改已有源码达到可变输入数据的效果改动位置总结总结附件前言上接 Simulink利用共享内存读取向外发送仿真信号与运行控制这篇文章,由于利用Simulink传递数据用到了C函数操作共享内存,这样导致在每次进行Simulink仿真前,需要在Simulink的Simulink target配置上所需要的头文件和C源文件,而且每个运行前需要重复对这些C文件编译,另外如果没有安装MATLAB编译器(mex -setup 没找到编译器)时,导致不能编译这些c文件从而导致无法运行。因此原创 2021-08-05 15:04:57 · 1629 阅读 · 0 评论 -
MATLAB数据文件处理(txt,mat,excel等)
简介在做一些关于数据采集的实验时,例如利用dSpace做硬件在环、CAN分析仪、示波器等硬件采集的车辆测试数据时,需要在MATLAB软件中对这些采集的数据进一步分析或者处理时,通过这些采集得到的数据得到的一般为 txt,excel,mat等文件,这些文件一般具有固定的记录样式,但是经常缺乏一种处理方法能够快速的导入到MATLAB工作空间中,作为进一步的分析。对这些具有固定格式的数据文件处理时,经常采用正则表达式进行快速检索和定位,达到提取数据信息的目的。由于不同的数据记录文件具有不同的数据结构,因此需要原创 2021-05-13 17:02:30 · 5879 阅读 · 0 评论 -
MATLAB 查找文件夹(包括子文件夹)下特定类型的文件
简介在对文件查找,遍历等操作时,经常遇到对文件夹下所有的特地类型文件汇总或者遍历等批量操作,首先就需要对文件夹下或者文件夹下包含的子文件夹下的文件全部收集,采用下面提供的函数即可:函数函数输入为:需要搜索的路径,需要搜索的文件扩展名(可同时对多种扩展名搜索)例如:ListPath = folder_search( pwd, {‘m’,‘p’})即对当前文件夹下的m类型和p类型的文件搜索,并将搜索到的文件完整路径都放置在ListPath 这个cell数组变量中。也可以对单个文件类型搜索,例如:原创 2021-05-13 11:20:57 · 7086 阅读 · 0 评论 -
多开MATLAB并行计算
简介有时遇到MATLAB计算量较大且耗时的重复性劳动计算时,可以利用MATLAB的并行工具箱,也可采用多开MATLAB的方式,并行计算。方法MATLAB可以调用dos,然后让dos多开MATLAB,进而实现MALTAB自动化控制多个子MATLAB运行,而且还可以利用MATLAB与MATLAB之间的消息传递方法,例如读写文本的形式传递消息,参见利用读写文本实现MATLAB应用之间的消息传递,实现多个MATLAB并行计算并相互沟通协调运算的情况。实现该函数可以同时开启多个MATLAB,并控制每个MAT原创 2021-04-08 10:35:59 · 7261 阅读 · 0 评论 -
利用读写文本实现MATLAB应用之间的消息传递
简介MATLAB传递数据给其他第三方软件或传递给另一个MATLAB的方式有很多种,最简单的方式即利用读写文本实现。本文介绍一种基于读写文本文件的MATLAB与其他应用程序之间消息传递方法。利用该方法,可以为MATLAB的运算信息传递给其他本地的第三方应用程序,也可利用在同一计算机上同时多开MATLAB,实现MATLAB与MATLAB之间传递消息,进而实现并行计算(消息传递MPI)。传递消息框架首先需要提供一种基于读写文本方式传递消息的框架,读写文本最基础的方式即利用 fwrite ,fread 这些最原创 2021-04-08 10:13:39 · 785 阅读 · 0 评论 -
MATLAB函数之间传递参数的消息机制
前言本文介绍了一种函数与函数之间相互传递参数的方法,可以方便的实现函数与函数之间传递参数,并且不会产生混乱,更不会导致全局变量的滥用。本文所编写的程序使用MATLAB语言,对其他编程语言也可以借鉴其思想。背景一般的函数与函数传递参数使用形参输入,但是这种方法导致形参固定(或者可变),需要程序对输入变量进行解析,而且必须相互调用才能传递参数,这样传递参数的效率很低,而且很不方便。最常见的方法为定义全局变量,然后在每个函数中声明全局变量,但是这种方法常常导致全局变量的滥用,容易导致变量的重名和混淆,不利于原创 2021-04-08 08:51:24 · 932 阅读 · 0 评论 -
MATLAB TCP 持续通信收发信息解决方案
前言windows的进程间通信可能有很多途径,例如管道、tcp、udp、共享内存等方式,这些不同的方式各有优缺点,本文主要介绍TCP通信的使用方法,并且MATLAB作为 client 的方式向host持续通信收发信息,收发不同含义信息的解决方案。背景常见的博文中介绍了TCP通信的基本使用方法,这些都可以通过MATLAB帮助文档得到细致的描述,本文主要在基本使用方法的基础上,对MATLAB 使用 TCP做一些实际的使用方法,以及使用过程中遇到问题的解决方法和心得。使用案例和方法本文从使用tcp通信使原创 2021-04-01 17:05:11 · 3525 阅读 · 0 评论 -
MATLAB交并集运算
intersect:取交集unique:取各自独立的部分union:取并集setxor:取独立部分,去除重复部分Matlab中集合的交运算函数intersectintersectSet intersection of two vectorsSyntaxc = intersect(A,B)c = intersect(A,B,‘rows’)[c,ia,ib] = intersect(…)Descriptionc = intersect(A,B)returns the values co原创 2021-02-26 15:16:39 · 2065 阅读 · 0 评论 -
MATLAB De_Pcode Mex 求助
由于项目的需求,需要知道MATLAB p文件的调用顺序和具体调用的函数名称,据说网上有些人已经找到了还原的方法,其实可行性是有的,毕竟MATLAB是运行p文件单步调试的,不像二进制dll文件。这样导致p文件还原的难度大大降低。同时还原出来的质量也很高。在网上苦苦寻找后,终于在一个博客上找到了网上类似的工具。但是由于这个网站被mathworks官方通知,原作者将该网站下架后,再加上版权受到越来越多的人重视,现在已经很难找到,在网上搜索关键词已经很难看到了,下图为在博客上看到别人写的一个html不过现在那原创 2021-01-21 17:56:04 · 2311 阅读 · 16 评论 -
MATLAB正则表达使用技巧
前言MATLAB正则表达用于快速搜索匹配字符串,但是正则表达的语法使用起来较为复杂且使用场景不太熟悉,正则表达没有发挥出应有的功能。以下介绍几种典型的使用场景,提高程序的简洁,而且更加方便。#快速查找头部的字符串例如字符串 “ess.init.plant” ,获取 “ess” 字符串;可以将字符串加上一个特殊字符,将特殊字符作为一个标记位,另外将 “.” 作为另一个标记位,构造正则表达式,匹配头部字符串。最后将添加的标记位清除。longName = 'ess.init.plant';name= r原创 2021-01-06 16:52:11 · 769 阅读 · 0 评论 -
MATLAB批量处理结构体数组方法
前言当遇到结构体数组,而且需要对该结构体下相同字段的做一些批量操作时,一般的方法是进行for循环,但是这样看起来不太优雅。批量操作结构体数组中特定的字段下面介绍一种快捷实用的方法:例如,现在有结构体 studentstudent(1).name = 'xiaomin';student(1).age = 1;student(2).name = 'xiaozhang';student(2).age = 3;现在需要将结构体中每个元素的age字段加1,一般的做法是for循环每一个元素,然后对结构体原创 2021-01-05 18:59:07 · 5666 阅读 · 0 评论