MBD_入门篇_02_MBD相关工具箱介绍

MATLAB/Simulink MBD的自动化编程----开局 本篇幅只针对模型自动化处理的基本命令进行介绍,相应Simulink API的复杂使用方法,可以根据实际使用过程中的具体需求来选择合适的接口与接口参数来完成模型自动化处理。打开模型、保存模型、关闭模型是通过脚本实现模型自动化处理过程中的必要操作。后续将会贴近一些模型开发过程中会涉及到的一些模型自动化处理功能进行讲解。 阅读详情
AI摘要

本文介绍了基于Matlab/Simulink的MBD开发中常用的核心工具箱,涵盖Simulink建模、Embedded Coder代码生成、AUTOSAR组件开发、Stateflow状态机设计及Simulink Test测试等功能,重点讲解各工具在汽车控制器开发中的应用,提升开发效率与代码质量。

前言

作者介绍

阿隆,深耕汽车控制器应用层开发多年,经历多家企业项目(包含多家中外头部企业),拥有多款控制器量产经验。主要技能包括应用层模型开发和c/c++代码编写,mil/sil测试,工具链开发,静态检查,BSW配置和手写,上位机开发等。

加V联系我:ALongAutom

使用介绍

MBD课程是阿隆从业多年后,在2022年的时候从0开始一点点录制的视频,一点点码字码出来的课程,现在分享给大家用来学习,如果对正在观看的你有帮助,可以帮忙推荐给身边的朋友,一起学习,也可以免费加入阿隆的技术交流群进行交流学习。

课程使用平台Matlab 2021b,建议初学者尽量使用同版本,避免出现版本差异带来的问题。等熟练掌握课程以后,再升级平台,出现版本差异的问题也知道该如何解决。

全网同名阿隆汽车,可以在其他平台搜索阿隆汽车找到阿隆,感谢观看。

入门篇视频观看链接如下:

阿隆MBD入门篇_合集_01_哔哩哔哩_bilibili

阿隆MBD入门篇_合集_02_哔哩哔哩_bilibili

实战篇01视频观看链接如下:

阿隆MBD实战篇_01_VCU扭矩查表模块与CANoe联合仿真_哔哩哔哩_bilibili

提高篇视频观看链接

along-auto.com

2.MBD相关工具箱介绍

2.1 Matlab

MBD最核心的部分就是安装Matlab,不同公司购买的Matlab包含不同的工具箱,费用也会不同,有些是网络License,有些是单机的License。

这里是列出了最核心的几个工具,大家安装完Matlab勾选相应的工具就行。怎么安装的我就不讲了,大家可以自行百度解决,有大量的操作说明,只要按照步骤一步步操作就可以,比较简单。这节内容主要是介绍,还没有到详细的操作步骤,大家只需要了解下工具就行,具体的操作步骤到后面再详细介绍。

下面的界面就是Matlab2021b。

2.2 Simulink

2.2.1 Simulink简介

Simulink就是建模的工具,可以建立各种各样的模型,进行仿真。当然建模生成代码跟其他物理建模比起来会有一些注意事项。

新建Simulink模型,可以选择空白模型或者是一些提供的模板类型的模型。

Simulink的库浏览器。

创建简单模型进行仿真。

对仿真的结果使用模块进行查看。

2.2.2 DataInspector简介

使用Data Inspector工具查看数据波形。

2.2.3 EmbeddedCoder简介

Matlab模型生成代码工具箱(Simulink Coder)是MathWorks公司开发的可用于生成嵌入式系统,自动代码生成的工具箱。该工具箱可将Matlab和Simulink模型转换为C或C++语言代码,使其能够在各种嵌入式平台上运行。该工具箱的主要特征包括:

  • 自动代码生成:通过输入Matlab和Simulink模型,该工具箱能够自动生成C或C++代码,从而提高开发效率和减少错误。
  • 代码可移植性:生成的代码可移植到多种嵌入式平台,包括ARM和DSP等。
  • 高效:生成的代码经过优化,能够达到高效的执行速度,并且占用的资源较少。
  • 集成性:该工具箱可以与其他工具箱集成,在Matlab和Simulink中进行代码自动化测试、性能评估等操作。
  • 可靠性:生成的代码经过严格的测试和验证,确保其可靠性,从而减少系统故障的风险。

使用Embedded Coder工具来生成嵌入式代码。

2.2.4 AUTOSARComponents简介

使用AUTOSAR Components工具来做AUTOSAR应用层开发。

AUTOSAR Components配置Quick Start。

2.2.5 SimulinkTest简介

2.2.6 Stateflow简介

Stateflow可以用来做状态机和流程图以及真值表。

总之,Matlab模型生成代码工具箱是Matlab和Simulink用户必备的工具,能够大大简化嵌入式系统的开发和测试流程,提高开发效率和代码质量。

利用Embedded Coder工具箱生成c代码 利用Embedded Coder工具箱生成c代码 文章目录利用Embedded Coder工具箱生成c代码关于Embedded Coder工具箱主要特性生成目标PID控制器的特点使用步骤对生成的代码分析 关于Embedded Coder工具箱 ​ Embedded Coder 工具箱可以生成可读、紧凑且快速的 C 和 C++ 代码,以便用于嵌入式处理器。另外, Embedded Coder 提供了... 阅读详情

相关推荐

基于NXP S32K1系列MCU的MBD开发环境搭建——从账号注册到工具箱激活全流程解析

本文详细解析了基于NXP S32K1系列MCU的MBD开发环境搭建全流程,从账号注册到工具箱激活。内容涵盖MATLAB环境配置、MBD工具箱下载与安装、许可证激活等关键步骤,帮助开发者快速掌握模型开发技术,提升汽车电子开发效率。

weixin_33709364的博客 501

Matlab编程技巧:MBD中常用的Matlab函数

在MBD(基于模型开发)中,需要掌握一些常用的函数。这些函数经常用于搭建集成环境、生成手写代码等。恰当地使用函数编写Matlab脚本可以提高MBD工作的自动化程度,提高工作效率。 本文会分类列举笔者工作中常用的函数,并简要说明其应用场景以及一些使用心得。同时也欢迎有其他项目经验的朋友在博客下留言补充。

u013288925的博客 8466

告别纯代码:用Matlab MBD工具箱+S32K快速玩转电机控制原型开发

本文详细介绍了如何利用Matlab MBD工具箱和S32K微控制器快速实现电机控制原型开发。通过Automotive Math和Motor Control库,在Simulink环境中完成从算法设计到硬件验证的全流程闭环,大幅提升开发效率。重点讲解了开发环境搭建、PMSM磁场定向控制建模及FreeMaster调试工具的应用。

weixin_30684743的博客 522

MBD_入门篇_16_Simulink离散模块

Reset在delay作为某个函数运行的时候,新来的信号处理的时候,如果不进行Reset,那将会用上一个信号的最后一个值作为初始值,在这种情况下会多一个无效值,使我们运算有可能会出错。主要讲一下与延时模块相关的,其他的一些也是比较高阶的数学模块,我们在后期如果有机会讲到高级算法的时候再来看,入门篇就暂时不讲那么高阶的东西了。打开使能设置,Enable的时候正常的进行延时,Disable的时候,保持延时的最后一个有效值。可复位的延时模块,在基础的延时模块上勾选外部输入默认值以及外部复位的设置。

ALongAuto的博客 3810

零基础速成simulink代码生成——matlab基础介绍1

MBD(Model-Based Design)是一种在工程领域中广泛应用的方法,通过使用数学模型来设计和开发系统。MBD方法可以提高开发效率、降低成本,并确保系统的可靠性和稳定性。MBD方法的核心是使用模型来描述系统的行为,并在模型上进行仿真和验证。

不断debug,优化中…… 1652

基于模型生成代码(MBD)

是一个高性能的数值计算和可视化软件包。它提供了一个集成的开发环境(IDE),专为工程师和科学家设计。核心功能:在矩阵计算、算法实现、数据分析和可视化方面表现出色。多学科应用:广泛应用于各种工程和科学领域,包括信号处理、通信系统、控制系统设计、图像处理、计算金融学和计算生物学等。Simulink是MATLAB的一个附加产品,专门用于基于图形的模拟和模型驱动设计。应用领域:广泛用于自动控制、数字信号处理、电气系统和机械系统的设计和仿真。

不断debug,优化中…… 5799

关于MBD开发简介

MBD全称是Model Based Design(基于模型设计),是一种以可视化模型开发为主的开发方式,区别于传统的以文本为媒介的代码开发。工程师的关注点由具体的代码层面转移到系统层面。MBD在汽车行业的软件开发中应用广泛,能在项目各个阶段提供显著优势:项目前期可以快速验证,中期确保软件质量,后期便于维护。这种方法不仅提升了工程师的开发效率,还加快了项目的开发进度。MBD开发方法不仅在汽车领域显示出强大的优势和广泛的应用前景,还在其他领域具有重要的应用潜力。

MLM888的博客 7896

基于模型的设计(MBD)及其在工程领域中的应用

模型驱动设计(Model-Based Design,MBD)是一种使用模型来表示系统的设计方法,它将设计工作的重心从传统的编程转移到建模上。在MBD中,系统的行为、结构和需求可以通过精确的数学模型来描述,从而支持更早的设计错误检查、更灵活的设计修改,以及更自动化的代码生成。MBD模型的建立是整个设计过程的基础,它需要对系统有深入的理解和准确的描述。建模工具的选择对于模型的构建和后续的仿真分析有着重要的影响。在众多可用的建模工具中,MATLAB/Simulink因其强大的功能和广泛的行业应用脱颖而出。

weixin_35750483的博客 1797

MBD讲解与实践 1.1 AutoSAR、ASPICE与MBD

AUTOSAR(AUTomotive Open System ARchitecture,汽车开放系统架构) 是行业领先的汽车制造商和供应商于2003年秋季提出的标准化倡议。--摘自Vector官网ASW(应用层)RTE(运行时环境)服务层抽象层(ECU抽象、微控制器抽象)、复杂驱动,其中除了ASW和RTE,统称BSW(基础软件)。AUTOSAR的大部分功能都在BSW,我们MBD开发只需关注ASW和RTE相关的知识即可,对其他部分感兴趣的朋友可以去查阅一下详细介绍AUTOSAR的相关文章。Aspi。

候鸟的BOBO 3287

【学习笔记】人群归因分数 PAF 以及combined PAF

人群归因风险比例(Population Attributable Fraction,PAF)是一个流行病学指标,它估计了在总体中,如果能消除一个特定的危险因素,能预防多少百分比的疾病或健康结果。简单来说,PAF回答的是:“如果没有这个风险因素,总体中会有多少病例是可以避免的?

weixin_53499537的博客 4897

UG/NX二次开发实例流程样例(nx1980+vs2019)

以上就是基本操作了,下面进入界面开发流程,nx1980的界面开发操作,也需要在块UI界面编辑器中操作,很多教程都没有讲解这一点,尤其是如何进入块UI界面编辑器,那么我在这里详细说明一下步骤。》,这一篇文章我们将详细讲述,如何开发一个具体的功能——根据用户输入的数据,在特定的点上创建一个指定大小的立方体。可以将文件保存当桌面,笔者保存在桌面的create_block目录中了,如下图所示,可以发现生成了三个文件。4.在新建模型完成后,我们准备创建交互UI,按照下图所示的顺序,找到块UI界面编辑器,。

秋月的私语 1万+

我的MBD学习之路

MBD即为Model Based Design 基于模型的设计。       国内的汽车行业使用Matlab\Simulink早已经不是什么新鲜事儿了,我还在读研的时候大家已经普遍的开始使用Matlab\Simulink来做数学模型开发、数据处理分析以及算法理论仿真。       在学校做项目的时候,那时候是用TI的DSP 2407,当时的Matlab是2007版,当时知道Simulink的库里有

基于模型的嵌入式开发学习笔记 2万+

道闸不自动落杆故障排查:从传感器原理到控制器调试全解析

在工业自动化和物联网系统中,传感器与控制器构成的闭环控制是保障设备可靠运行的核心。其基本原理是通过传感器采集环境状态,控制器依据预设逻辑做出决策并驱动执行器动作。这一技术价值在于实现了无人值守下的安全、高效自动化,广泛应用于智能交通、安防和智能楼宇等领域。以停车场道闸系统为例,其自动落杆功能高度依赖地感线圈与防砸雷达的协同。地感线圈作为触发单元,负责感知车辆接近;而防砸雷达则作为持续监测的安全单元,通过微波探测防砸区域内是否有障碍物,其信号是控制器执行落杆决策的关键依据。当系统出现车辆通过后闸杆不落的典型故

weixin_29190651的博客 307

MBD基于模型的设计入门介绍

MBD基于模型的设计入门介绍 【下载地址】MBD基于模型的设计入门介绍 探索基于模型的设计(MBD)的奥秘,从MATLAB/Simulink的模型搭建到自动生成代码,本资源为您提供一站式入门指南。通过详细的文字说明和操作步骤,您将轻松掌握MBD的核心概念与优势,学会在MATLAB环境中高效构建模型,并深入了解模型验证、测...

gitblog_06743的博客 453

SAP BTP开发入门:从PaaS到CAP/UI5的30天学习路线

在云计算与数字化转型的大背景下,企业系统集成与云端扩展需求激增,传统的单点开发模式正面临深刻变革。PaaS(平台即服务)作为云原生的核心概念,将基础设施、开发环境与应用服务统一封装,为企业提供了灵活的扩展能力。SAP BTP正是SAP生态中的PaaS平台,它承载着系统集成、低代码开发、AI服务与数据管理,成为连接S/4HANA等核心业务系统与创新应用的桥梁。对于ABAP开发者而言,掌握BTP不仅是技能升级,更是应对从传统部署向云端订阅模式转型的必由之路。本文从平台基础出发,梳理BTP的核心服务与开发模型(如

weixin_31766003的博客 282

leetcode134 加油站

题目如下 在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。 如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。 说明: 如果题目有解,该答案即为唯一答案。 输入数组均为非空数组,且长度相同。 输...

ayang818 's blog 233

MBD_入门篇_05_Simulink简介

Simulink是一个模块图环境,用于多域仿真以及基于模型的设计。Simulink与MATLAB相集成,能够在Simulink 中将MATLAB算法融入模型,还能将仿真结果导出至 MATLAB 做进一步分析。库浏览器中包含了常用模块,连续系统模块,离散系统模块,数学运算模块,逻辑模块,查表模块等等。mdl是以前的版本用的格式,现在的版本几乎都用的是slx格式。这几种方式不同版本之间的界面也有会有所区别,明白是创建的逻辑即可,选择自己习惯用的即可。库浏览器,包含了Simulink的模块。选择一种之前的版本。

ALongAuto的博客 3316

DDR5 JEDEC标准简析:一次读懂DDR5的核心规范!

JEDEC,全称是,中文名称是「电子元件工程联合委员会」,它是全球权威的存储接口标准制定机构。我们常见的 DDR2、DDR3、DDR4、DDR5 都是它搞出来的。📌 JEDEC 就像存储接口界的“裁判+编剧”——规定谁该怎么跑,怎么演,怎么配合。

weixin_43199439的博客 2567

MBD开发

最大的作用还是梳理项目的开发框架,是系统层面上的设计工作,还可以对不熟悉的领域或者相关知识进行学习。用于验证完整的控制器系统,控制器系统包括了硬件、底层软件和应用层软件。、系统工程师:快速验证算法原型的功能需求。、软件工程师:模型级的集成测试。、获得算法在实际处理器上的。测试的时候也需要引入硬件。用于验证软件和模型是否一致。、验证模型与模型所生成的。验证模型与模型所生成的。

nature_07的博客 1192

RK3588 部署 YOLO26 目标检测:从训练到 NPU 推理

如果做垂直场景(工业缺陷、农作物、特定零件),需要自己标数据。采集图像(500+ 张,覆盖不同光照/角度)→ 筛选(删除模糊/无目标)→ LabelImg 标注(选择 YOLO 格式)→ 划分(train:val:test = 7:2:1)labelImg├── train/├── val/├── test/YOLO26 在 RK3588 上的全流程是 PC 端训练 + ONNX 导出 → RKNN 转换(INT8 量化)→ 板端推理。

m0_71589036的博客 107

【Prometheus】prometheus结合cAdvisor监控docker容器运行状态,并且实现实时告警通知

Docker的监控,可以使用Docker自带的stats命令来获取当前主机上运行中的容器的资源使用情况。 例如:容器的CPU使用率、内存占用、网络IO以及磁盘IO等指标。

景天科技苑 6万+

MBD_入门篇_18_Simulink查表模块

分数就是我们要查的值的横坐标的值减去前面一个点的横坐标,占相邻两个点横坐标差的比。比如我们知道x1,x2,x3对应的y1,y2,y3值,通过这三组数据,可以线性地插值出其范围的其他数据。注意两个值一定是一一对应的关系,有多少个Table值,就要有多少个Breakpoint的值。比较常用的模块,参数较多,会复杂一点,比较重要的模块,一定掌握。线性插值,右边范围外的按照最后两个值的斜率来计算,左边范围外的按照前两个值的斜率来计算。数据一定是递增或者递减的,建议使用递增的。最接近的值,取更接近的横轴的数据。

ALongAuto的博客 5505

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

MBD_入门篇_13_Simulink模块基本介绍

数据的维度设置,-1表示继承,用的地方比较多。比如[1 3],或者[3, 1], 或者直接写3。或者[3 3]定义矩阵。定位到库浏览器里,找到需要添加的模块。使用鼠标拖拽到模型里进行添加,或者使用鼠标右键点击快捷菜单进行添加。,在弹出的搜索框里输入模块的名字,Simulink会弹出相关的模块,我们选择要添加的模块进行添加。双击模块,在弹出的Parameter里设置相关的属性。设置序号,在子系统里会以序号的顺序去显示输入和输出。13.1.1 使用库添加模块。数据类型设置,实数和复数。数据类型设置,比较重要。

ALongAuto的博客 1736

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

mbd是啥matlab,MBD文件扩展名 - 什么是.mbd以及如何打开? - ReviverSoft

你在这里因为你有,有一个文件扩展名结尾的​​文件.mbd.文件与文件扩展名.mbd只能通过特定的应用程序推出。这有可能是.mbd文件是数据文件,而不是文件或媒体,这意味着他们并不是在所有观看。什么是一&nbsp.mbd&nbsp文件?因为他们被用作由Mediachance开发多媒体Builder项目文件按多媒体Builder创建的文件称为MBD文件。这些文件属于数据文件...

weixin_32818577的博客 3928

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

基于MBD 的软件品质保证技术

这是验证开发的模型和生成的代码之间的对应关系的测试,它是使用相同的输入数据对正在开发的模型和自动生成的代码检查输出值是否一致的测试。在代码的情况下,复杂性是通过计算生成代码中的二进制节点数加 1 来衡量的。表 1 的第 1a 项共有 12 个部分,规定了通过模型度量检查进行质量保证的需要,表 12 的第 1e 项和 1f 项分别规定了模型动态验证和模型静态验证的需要。在C1中,通过模型和代码之间的背靠背测试进行验证,在C2中,当需要的功能从模型转换为代码时,测试该功能在该功能中是否正常执行.可以保证质量。

Suresoft China的博客 2114

开发合格的汽车电子产品-Autosar+MBD+功能安全

1. 前言 近几年,随着汽车行业的快速发展,尤其是国内一波补贴过后,多多少少留下一些扎扎实实造车的企业,他们将一些国外先进的技术带入到汽车产品开发中,这些技术慢慢在汽车行业(包括乘用车和商用车)得到普及,本文主要从三个技术角度(即Autosar、MBD、功能安全)来聊聊成为标配的汽车电子技术。 针对每项技术,主要分两步来阐述: 第一步说明这个技术的作用; 第二步说明这个技术如何用到产品上。2...

AgingMoon的博客 9077
上一篇: MBD_入门篇_01_MBD与传统编码的区别
下一篇: MBD_入门篇_03_环境搭建
阿隆汽车
博客等级 码龄3年 3129粉丝 33原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值