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

网站的规划 建设与分析论文大宗商品交易平台上市公司

网站的规划 建设与分析论文,大宗商品交易平台上市公司,注册网址,商务网站建设推荐目录 一、前言 二、Simulink 知多少 三、滤波算法 四、Model Verification 五、Model Coverage 六、Simulink测试实例 七、Simulink Test 八、Test Manager 九、Test Harness 十、 学习 一、前言 Simulink从2017b以后更加工程化和实用化#xff0c;基于MBD的功能日趋…目录 一、前言 二、Simulink 知多少 三、滤波算法 四、Model Verification 五、Model Coverage 六、Simulink测试实例 七、Simulink Test 八、Test Manager 九、Test Harness  十、 学习 一、前言 Simulink从2017b以后更加工程化和实用化基于MBD的功能日趋完善从需求定义、模型链接测试用例模型测试代码生成等等那对于初识它的朋友可能需要先了解一些前期知识然后在项目和工程中实战积攒经验变成一个老手。 二、Simulink 知多少 派生对象包括Simulink Signal Simulink Parameter, Simulink Bus, Simulink Alias, Simulink Variant, 创建方式包括在脚本以构造函数的方法创建在模型浏览器创建。 Simulink Parameter是Simulink 参数对象  在工程中常以配置参数的方式设置 Simulink Lookup Table是与lookup table模块相对应的数据类型插值点和插值点对应数据的集合。Breakpoint是插值点的集合。Simulink Signal是信号与信号线相关联。Numeric/Alias Type是其他数据类型的别名。Bus是总线类似于结构体。Simulink.Variant有两种状态满足条件激活未激活是0激活是1。 如何对Bus中的各元素进行初始化使用Bus Assignment 。 如何保存工作空间数据点击数据工作空间然后CtrlS即可。可以保存.mat或者m文件。 数据字典即数据源模型运行时不需要重新加载。使模型和数据字典关联模型运行时自动从数据字典里搜索数据。数据字典可回溯因为数据字典不仅记录数据还记录对数据的修改行为和版本。如何创建数据字典 手动创建数据字典 Simulink.data.dictionary.create(DataDictionary\dic2.sldd);objSimulink.data.dictionary.open(DataDictionary\dic2.sldd);importFromBaseWorkspace(obj,varList,{Sig,Var});listEntry(obj)saveChanges(obj)close(obj) Bus针对结构体Mux可以合成向量Mux要求多个元素具有相同的数据类型。 Selector是Signal Routine里面的模块主要用于提取向量或者元素。 Weighted Sample Time Math与采样时间相关的模块 Goto模块用于连接两个断开连线的端口Goto设置为Global表示全局可见其他子系统都可见设置为Scoped表示定义范围内可见此时要结合Goto Tag Visibility模块一起使用表示该层级及该层级以下的子系统均可以识别。 Multiport Switch 可以实现switch case功能。 Signal Specification 模块是虚拟模块允许您指定连接到其输入和输出端口上的信号的属性如果指定的属性与其端口上连接的模块所指定的属性冲突Simulink® 软件将在编译模型时显示错误消息在模型的仿真中不起任何作用。 零阶保持器ZOHZero-Order Hold是将输入信号每过一个采样时间更新一次并保持到下一次采样多用于将连续信号离散化。 Signal Builder可以生成各式各样的信号也可以从workspace和外部导入。 1.创建excel文件 2.导入到SB中打开设置选择File下Import from File 如何查看模型模块的执行顺序 如何设置多速率模型打开Block parameter参数设置为原子然后设置采样时间[0.2,0.1]表示偏置为0.1后开始速率为0.2。 三、滤波算法 3.1 均值滤波 均值滤波是典型的线性滤波算法是指用当前像素点周围nxn个像素值的均值来代替当前像素值。 当前是指设置一个缓冲区Buf存储上N个时刻的值然后取平均值作为当前值。 3.2 中值滤波 中值滤波法是一种非线性平滑技术它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。 中值滤波的方法是用某种结构的二维滑动模板将板内像素按照像素值的大小进行排序生成单调上升或下降的为二维数据序列选取中间的数值。 3.3 低通滤波 一阶低通滤波法采用本次采样值与上次滤波输出值进行加权得到有效滤波值使得输出对输入有反馈作用。滤波系数越小滤波结果越平稳灵敏度越低;滤波系数越大灵敏度越高滤波结果越不稳定。 四、Model Verification 模型检查模块主要分为基本用途防止报错底层实现结果观测梯度检测提示 Check Discrete Gradient 模块用于检查本时刻和上一时刻差值。 Assertion模块对是否为零进行验证为零报错。 Check  Static Range 检查输入信号的最大最小值超出范围报错。 五、Model Coverage 执行覆盖度Execution CoverageEC是最基本的覆盖形式。对于每个项目执行覆盖度确定项目是否在仿真期间执行 决策覆盖度Decision CoverageDC分析表示模型中决策点的元素例如 Switch 模块或 Stateflow 状态。对于每个项目决策覆盖度确定通过仿真所遍历的项目的仿真路径总数的百分比 条件覆盖度Condition CoverageCC分析输出其输入例如逻辑运算符模块和Stateflow转移的逻辑组合的模块。当测试用例导致模型中逻辑模块的每个实例的每个输入以及转移的每个条件在仿真期间至少为真一次在仿真期间至少为假一次时测试用例可实现完全覆盖。条件覆盖度分析报告测试用例是否完全覆盖了模型中每个模块。 收集模型的覆盖度时可能无法实现 100% 的条件覆盖度。例如如果指定短路逻辑模块通过在配置参数的覆盖度窗格中选择将 Simulink 逻辑模块视为短路您可能无法实现该模块的 100% 条件覆盖度。 修正条件决策覆盖度MCDCSimulink Coverage 软件修正的条件/决策覆盖度分析扩展了决策和条件覆盖度功能。它分析输出其输入和 Stateflow 转移的逻辑组合的模块以确定测试用例测试逻辑模块输入和转移条件的独立性的程度。 当一个输入的变化独立于任何其他输入导致模块输出发生变化时测试用例可实现模块的完全覆盖。当至少一次条件的更改触发每个条件的转移时测试用例可实现 Stateflow 转移的完全覆盖。 在模型配置中点击Coverage勾选Enable coverage analysis在Coverage metrics中选择具体的覆盖度类型运行模型后会自动弹出覆盖度窗口。 六、Simulink测试实例 具备成为VIP的条件123||41年龄满18岁2至少充过100元3游戏年龄至少1年4被举报次数少于3次 使用Signal Builder作为测试输入设置输入及输出VIP 简单的模型设置为: 子系统为 测试输出结果 打开Simulink Data Inspector 七、Simulink Test Test Sequence  Test Assessment 使用Test Sequence 模块可以指定测试步骤行为转移。当输入时间序列步骤时应当提供时间定义的测试向量。一个test sequence 可以包含测试步骤且测试步骤是富有层级的根据Tag进行跳转。编写示例 Test Assessment与Test Sequence非常类似但是作为评估仿真测试场景步骤来使用,关键词是Verify 示例1 模型如下 设置TestSequence 设置Test Assessment: 示例2 1.打开sltestTestSequenceExample 2.右击shift_controller建立Test HarnessSources  and Sink 选择Test Sequence 3.添加常量Limit设置为2并编写序列步骤 4.将仿真时间设置为15s,然后运行test harness Simulation Inspector 示例3 八、Test Manager TestManager的组件包含下面的关系Test File Test Suite Test Case Simulation Baseline Test File对应模型文件Test Suite 对应子系统Test Case 对应子功能。 simulation test 不依赖于其他的文件只要TestHarness可以执行通过那么simulation test也可以通过。Baseline test依赖外部文件比如期望输入和输出。 模型 simulation test 然后对每一个子系统建立一个test harness建立4个harness constant 作为输入。 九、Test Harness  Baseline test 测试模型如下 该子系统的功能是对值进行有效性验证 对该子系统创建Test Harness 创建Signal Builder信号Group1和Group2 Test File一个Test File对应一个模型文件 Test Suite每一个测试文件中都可以定义若干个Test Suite可以把同一类型或同一功能的测试用例放到一个Test Suite中 Test Case每一个Test Suite中可以定义若干个Test CaseTest Case中规定了测试详细的执行信息。实际测试执行的时候也针对每一个Test Case进行测试的 Create Test Case from External File测试用例的具体信息从excel模板中提取这篇文章重点介绍以这种形式来创建测试用例 在Harness中打开Test Manager 创建TestFile并对Test Suit和Test case命名在case中“System Under Test”选择模型及harness 文件名Baseline Criteria中加载期望输出如果不会可以点击Capture给你创建一个示例如果有多个输出要对列的名字加以命名。 在“Iterations”栏中点击“Auto Generate”并在右上角号栏选择Baseline选择相应的文件 点击运行即可生成测试结果也可以导出测试报告Report。 TestCase 设置项描述 TAGS可以给一个标签名比如按照功能测试类型等方便以后批量查找测试用例DESCRIPTION可以给描述测试用例的测试步骤方法等方便理解REQUIREMENTS可以和需求关联。Matlab现在有“Simulink Requirements”这个Toolbox可以在里面写需求文档将需求和模型以及对应的测试用例关联起来以满足A-ASPICE或者ISO26262所规定的软件开发流程中的可追溯性的要求。SYSTEM UNDER TEST里面设置了要被测试的模型或者针对模型中所创建的某一个Test Harness模型进行测试 PARAMETER OVERRIDES这里如果是根据excel模板生成的测试用例的话是锁定不能修改的里面列出了某个测试用例中需要改变的参数 CALLBACKS里面分为3个不同时刻的运行我们想要的脚本 INPUTS定义测试的输入信号这里如果是根据excel模板生成的测试用例的话是锁定不能修改的。另外这边有两个选项可以勾选如果勾选“Include input data in test result”的话在最后的结果中也会显示输入信号。如果勾选“Stop simulation at last time point”的话仿真测试到最后一个输入点的时候就会停止。 SIMULATION OUTPUTS可以在里面再选取模型中logged的信号作为观测量CONFIGURATION SETTINGS OVERRIDES可以在仿真测试的时候对原模型的设置进行覆盖BASELINE CRITERIA里面设置了期望值以及比较仿真测试结果和期望值的一些参数。这里如果是根据excel模板生成的测试用例的话是锁定不能修改的。但可以点击Edit在excel文件中修改。对比数据时可以设置绝对误差相对误差时序领先误差和时序滞后误差。 ITERATIONS迭代测试。这里如果是根据excel模板生成的测试用例的话是锁定不能修改的。会根据测试用例数自动生成表示这个测试会根据不同的配置重复进行 COVERAGE SETTINGS统计覆盖度的设置。如果需要统计模型的覆盖度的话就勾选“Record coverage for referenced models”和“Record coverage for system under test” test Sequence基本知识 ramp(et)根据测试步执行的时间返回值也就是测试步执行时间可以用这个函数来线性变化输出et表示的是当前测试步执行的时间 Heavisidex:创建一个阶跃信号x0时输出0x0时输出1 swatooth(x)创建一个锯齿波要指定测试步骤内的锯齿波周期数请将此运算符与经过时间et运算符一起使用;sawtooth(et/10) 10s一个周期的锯齿波 squarex创建周期为1且范围为-1到1的方波。在区间0x1中squarex返回1表示0x0.5返回-1表示0.5x1。square(et/10) 10s一个周期的方波 trianglex创建周期为1且范围为-1到1的三角形波。在区间0x0.5时三角形x增加。三角波和锯齿波的区别在于三角波的上升和下降时间相等;triangle(et/10)10s一个周期的三角波 verifyexpressionerrorMessage为失败的verify语句返回指定的错误消息。如果在Test manager中运行测试错误消息将显示在仿真日志中。如果在Test manager之外运行测试则诊断查看器中将显示该消息 在实时环境中验证语句失败不会产生警告。但是如果在Test manager中运行实时测试用例则失败将显示在测试用例结果的验证语句部分。还可以使用getVerifyRuns访问有关验证运行的信息 verify(expression,identifier,errorMessage) 比上面一个多了标识 verify(x y z 10,TestReq1:bothGreater,x, y, and z are %d,%d,%d,x,y,z)该验证语句的结果以标签TestReq1:bothCreate开头如果测试失败则以errorMessage开头。 assertexpression对逻辑表达式求值。如果assert语句的计算结果为false仿真将停止并返回错误。assertexpressionerrmsg为失败的assert语句返回指定的错误消息字符串errmsg test Harness总结 1.如果验证的模型比较简单直接上输入Signal Builder仿真输出 baseline excel 2.模型比较复杂也可以用上述方法Signal Builder使用外部excel作为输入建立多个group然后使用迭代的方法进行测试输出 baseline excel 3.建立testharness使用test sequence 作为输入拷贝之前建立的测试用例excel每一个case对应一个testHarness。 4.使用import和output这样的话建立testFile使用模板来建立比较快速 5.使用Constant 作为输入使用Model Verification来对比直接在Constant中建立测试用例即可每一个case对应一个testHarness 十、 学习 命令窗口demodochelp xx。 Video Portal Main Page - MATLAB Simulink (mathworks.cn) 首页 - MATLAB中文论坛 (ilovematlab.cn) 参考 MATLAB Simulink的各种模型覆盖度 - 知乎 (zhihu.com) 使用Simulink Test进行单元测试 - 知乎 (zhihu.com)Test Sequence与Test Manager联合测试Simulink模型_赞哥哥s的博客-CSDN博客
http://www.tj-hxxt.cn/news/133809.html

相关文章:

  • 铜川市住房和城乡建设局网站新乡最新消息
  • 做早餐烧菜有什么网站上海新闻最新消息
  • 高德地图怎么看邮编南昌网站seo厂家
  • 网站开发制作的流程网站建设制作设计seo优化南宁
  • 国外jquery网站宜家在线设计
  • 外贸型网站建设方法网站开发专业培训学校
  • 网站建设小结电子商务网站开发基本流程
  • 手机版网站 html5wordpress网站 华为
  • 黄页网站系统网络营销平台都有哪些
  • 海宁网站建设广告营销的经典案例
  • qq群推广用什么网站好音乐网站建设论文的目的和意义
  • 东营网站推广wordpress lens
  • 网站色彩搭配方案大侠wordpress
  • 网站建设 引导网站建设书籍资料
  • thinkphp做中英文网站网站建设 百度云盘
  • 沈阳网站建设方案托管单位网站设计制作
  • 做的网站百度搜索不出来的公司治理与企业文化建设
  • 网站设计团队发展wordpress的ico怎么更换
  • 海通建设集团有限公司网站免费设计模板网站
  • 工程建设期刊网站重庆工程信息网官网首页
  • 龙华品牌网站建设物业管理系统论文
  • 网站页面分析毕业设计做网站做不出
  • 家里面的服务器可以做网站吗自己做网络主播的网站
  • 青岛外贸网站建站网络科技公司骗术
  • 公司网站建设素材茶艺馆网站
  • 口碑好网站建设多少钱哪个网站建站好
  • 怎么在各个网站免费推广信息做外国网用哪些网站有哪些
  • 网站是做响应式还是自适应的好青岛城乡建筑设计院有限公司
  • 轮胎 东莞网站建设婚纱摄影网站图片
  • 建设银行网站支付流程亚马逊跨境电商app怎么下载