- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 Simulink自动代码生成:Code Generation配置(二)
本节我们来学习Code Generation相关的内容,可以说Code Generation配置是自动代码生成最重要的配置,虽然很多情况下很多配置不需要改动,但是明白它是如何影响代码生成的对我们来讲还是相当必要的。目录一. 首先打开Code Generation二. 对Code Generation进行配置一. Optimization二. Report三. Comments一. 首先打开Code Generation 建立如图所示的仿真模型,该模型是之前文章中所建立的,不知道它是什么意思的去查
2021-07-22 18:50:49
4702
4
原创 Simulink自动代码生成:Code Generation配置(一)
本节我们来学习Code Generation相关内容,可以说Code Generation配置是自动代码生成最重要的配置,虽然很多情况下很多配置不需要改动,但是明白它们是如何影响代码生成的对我们项目开发还是相当必要的,以便我们在需要更改代码配置的时候清除改哪里。接下来我将分几节对该部分内容进行讲解,主要是写一篇长文章需要耗费的时间太长了,博主还要上班实在没时间一次写那么多。目录一. 打开Code Generation二. 对Code Generation进行配置三. 总结一. 打开Code Gene
2021-07-06 14:19:03
19279
14
原创 Simulink自动代码生成:数据类型别名自定义
在手写代码时,我们经常能看到自定义数据类型别名,例如有些代码中将计算机默认的数据类型改为我们自己习惯的名称,如图所示。目录一. 系统默认生成的别名二. 建立Simulink AliasType三. 修改Data Type Replacement四. 数据类型别名修改后的代码五. 总结一. 系统默认生成的别名 首先我们来回顾一下上一节生成的代码,打开 Calculation.h ,可以看到系统默认的数据类型别名如下,这并不是我们所熟悉的,看起来十分别扭。不知道代码如何来的可以去翻看我上一节文章。
2021-06-24 16:15:14
3775
2
原创 Simulink自动代码生成:原子子系统(Atomic Subsystem)
在前两节的基础上我们继续来学习代码的优化,没看过我前两篇文章的可以先去看一下,否则可能觉得模型出现的很突兀。这一节我们来学习原子子系统,废话不多说,我们直接来进行学习,看完了也就明白了什么是原子子系统以及原子子系统到底有什么用。目录一. 重复的功能模块二. 建立原子子系统三. 原子子系统单独生成头文件和源文件四. 数据类型不同的原子子系统二级目录三级目录一. 重复的功能模块在编写代码的时候我们经常能遇到功能相同的代码,现在假设有三个模块,其功能一模一样。实现的都是:Y1=(X1+X2)∗X3Y
2021-06-24 13:47:03
7608
原创 Simulink自动代码生成:数据字典的建立及代码优化
在上一节《Simulink自动代码生成:生成代码的基本设置》的基础上,我们来对模型进行优化,使得生成的代码更能满足实际的需求,没看过我上一篇文章的可以点开如下链接:Simulink自动代码生成:生成代码的基本设置 本节我们我们首先来学习如何建立数据字典,然后通过所建立的数据字典对模型进行优化。目录一. 未经优化的代码二. 数据字典的建立三. 数据字典与模型进行关联一. 未经优化的代码 在上一节生成的代码中,打开Calculation.c和Calculation.h文件可以发现在不经过处理的
2021-06-22 18:38:06
5597
3
原创 Simulink自动代码生成:生成代码的基本设置
Simulink自动代码生成也被称作基于模型开发(BMD),相比于传统的手写代码方式能够尽量减少人为错误。模型本身可以用于仿真,单元测试等,更便于提前发现逻辑错误。同时只要约定好模型接口,就可以多人协作,每个人单独开发一个功能模块缩短了开发周期,最终将每个人生成的代码集成到一起就可以构成一个完整的工程。因此,基于模型开发的方式受到很多大公司的欢迎,尤其是车企更是将其作为首要的开发方式。目录一. 新建一个简单的模型二. 更改模型配置参数三. 自动生成代码三. 总结一. 新建一个简单的模型 笔者使用
2021-06-22 11:14:50
17221
13
原创 动力电池包技术要求
目录一. 相关术语二. 执行标准三. 技术要求一. 相关术语1.电芯(Cell):指单个含有正、负极的电化学电池的最小功能单元,一般不直接使用(区别于电池含有保护电路和外壳,可以直接使用),其必须要有较高的能量密度,以尽可能多的存储电能,使电动汽车拥有更远的续航里程。除此之外,电芯的寿命也是最为关键的因素,任何一颗电芯的损坏,都会导致整个电池包的损坏。2.电池模组(Module):当多个电芯被同一个外壳框架封装在一起,通过统一的边界与外部进行联系时,这就组成了一个模组。3.电池包(Pack):当数个
2021-06-09 10:32:36
4482
1
原创 学习笔记2 光伏MPPT算法
目录前言1.光伏电池模型及光伏特性曲线1.1 光伏电池模型1.2光伏特性曲线2. 光伏MPPT算法2.1 扰动观察法(控电压)2.2 电导增量法(控电压)2.2 电导增量法(控电压)前言最近一段时间一直在做光伏MPPT算法,但由于项目保密原因,不能将过多内容展示给大家,只能做简要的介绍,具体调试过程比较复杂,以后从事相关工作的工程师自己慢慢体会。1.光伏电池模型及光伏特性曲线1.1 光伏电池模型基本的光伏电池模型如图所示:由模型可以得到以下关系式:1.2光伏特性曲线由以上关系式可以得到光
2021-06-04 10:31:44
15236
2
原创 学习笔记1 直流微电网概述
目录前言1. 直流微电网简介1.1 微电网概念及分类1.2 直流微电网的优点2.常见的直流微电网拓扑结构2.1 单母线直流微电网2.2 多母线直流微电网2.3 环形直流微电网2.4 直流微电网群3. 直流微电网关键技术4. 直流微电网设备级控制和系统级控制4.1 直流微电网设备级控制4.2 直流微电网系统级控制5. 直流微电网协调控制策略5.1 集中控制策略5.2 数据中心(data center)控制策略5.3 多代理控制策略5.4 分级控制策略5.5 无互联通信直流母线电压控制策略参考文献前言本部分
2021-05-24 08:55:17
11755
3
原创 学习笔记3 串行通讯详解(SCI、SPI、I2C)
目录前言1. 常见的几种串行通讯及区别什么是UART?什么是RS232/RS485?前言在调试通信的这段时间里,自己接触到了很多有关通信的专有名词,SCI,SPI,I2C,UART,CAN,RS232,RS485等等。自己在项目中使用TMS320F280049对SCI,I2C,CAN进行了通讯调试,包括底层配置,应用函数编写及通讯测试,最后都成功的实现了通讯。但是回过头来却对一些概念理解的不够透彻。因此又查了很多资料来理解他们的概念和其中的区别,这节我们只来理解串行通讯,并行通讯还没有研究。1. 常见
2021-05-20 11:18:51
19648
原创 学习笔记2 RS232、RS485和RS422通讯
目录前言1. 串行通讯的基本概念2. RS232通讯3. RS422通讯4. RS485通讯前言经常听说RS232、RS422和RS485,尤其是232和485,或许我们都用过,但是从来没有系统的整理他们之间的区别,网上相关的介绍已经有很多,也比较齐全,笔者在此将它们的特性重新整理了一下,为了加深印象。如有错误望各位指正,也是一种宝贵的学习机会。1. 串行通讯的基本概念(1)串行通讯传输数据时是一位一位的进行传输,传输的每一位代表1或0,传输速率较低,串行通讯示意图如图所示。(2)提到串行通讯就
2021-05-14 17:26:35
5302
原创 学习笔记1 差分信号与单端信号
目录前言1. 差分信号与单端信号的含义1.1 差分信号(差模信号)1.2 单端信号2. 差分信号与单端信号的优缺点2.1 差分信号优缺点2.1.1 差分信号优点2.1.1 差分信号缺点2.2 单端信号优缺点2.2.1 单端信号优点2.2.2 单端信缺点3. 应用举例前言在学习RS232、RS422和RS485通信的时候多次谈到差分传输和单端传输,虽然自己在以前也学习过相关内容,但那已经是几年前的事情,现在基本是忘的干干净净,趁着最近项目需要,对相关内容重新学习一下,本文仅作为个人学习资料,不作其他用途,
2021-05-14 14:09:06
1281
原创 第一篇 新建DSP工程-基于TMS320F280049
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例
2021-04-17 16:21:19
7651
6
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人