2022年dSPACE建模规范 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年dSPACE建模规范 .pdf》由会员分享,可在线阅读,更多相关《2022年dSPACE建模规范 .pdf(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、3. 模型参数本章针对模型参数的处理提出了一些建议。这尤其适用于哪些需要校准的应用参数。3.1 参数初始化所有要求进行模型初始化的应用参数和其它参数都应该正确地定义,例如通过 MATLAB M文件或 dSPACE数据词典。目的正确的模型初始化。备注必须对 Simulink 模块中的参数进行正确的初始化。通过M 文件处理这些参数是实现参数正确初始化的一种普通的方法。作为另外一种实现途径的dSPACE 数据词典,不仅可以用来指定参数值,而且可以用作代码生成设置。实例图 79 中所示为在一个 M 文件中对模型参数进行初始化。图 79 使用 M 文件对 Simulink 模型中的模块参数进行初始化3.
2、2 模块参数的定义 /显示在 Simulink 模型中进行模块参数设置时应该不包含任何代数表达式并且最好不包含数据类型转换。除此之外,在模块中建议使用一种特殊的颜色来指定名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 30 页 - - - - - - - - - 应用参数的外观,例如使用橙色背景。目的模块参数的初始化,正确的框图显示。备注简化了模型评论,应用参数的外形更加明晰。在应用参数中避免使用复杂表达式确保了后面校准过程的准确性。实例图 80 所示为一个校准参数的正确
3、设置。图 80 应该指定单个模块中应用参数的外观,例如使用一种特殊颜色。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 30 页 - - - - - - - - - 4. 名字空间为了支持 MATLAB/Simulink/Stateflow指定的名字空间,对所有标示符使用命名规范是很有帮助的。本章针对这些命名规范提出了一些建议。4.1 常规命名规则一个模型内部的标示符(尤其是参数,子系统名字和端口名字)应该是有效的 ANSI C 标识符,例如,他们应该包含字母a-z,A-
4、Z,数字 0-9 和下划线。首字符必须是一个字母。名字在前31 个字符中应该是唯一的并且应不同于下列关键字:auto,break,case,catch,char,const,continue,default,do,double,else,elseif,end,enum,extern,float,for,function,global,goto,if,int,long,otherwise,persistent,register,return,short,signed,sizeof,static,struct,switch,try,typedef,union,unsigned,void,volat
5、ile,while.目的命名规则,避免命名冲突。备注该规则可实现无缝转换以及利用TargetLink 将 Simulink 模型进行代码生成。生成的代码仅包含了避免了名字冲突的有效C 标识符。参考文献TargetLink Production Code Generation Guide1,TargetLink Limitations,General Limitations,Reserved identifiers4.2 保留的系统头文件名字子系统名字应该区别于TargetLink 系统头文件名如 tl_types, tl_target_types ,tllimits,dsfxp_a,dsfxp
6、_c或者任何其它编译器或标准库。目的命名规则,避免命名冲突,遵循MISRA 规则 115:“标准库函数名字不能被重用。 ”备注本规则用以确保生成代码的正确性。参考文献TargetLink Production Code Generation Guide1,TargetLink Limitations,General Limitations,Reserved Identifiers名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 30 页 - - - - - - - - -
7、5. 注释和单位本章中所涉及到的规范应该被视作如何对模型中的一部分进行恰当注释的范例。这确保了模型文件的正确性,并简化了评论和维护。5.1 顶层的注释应该在顶层对每一个Simulink 模型和 Simulink 库添加注释,用以描述其功能。如果附加的注释可以使模型更易理解,可以将其置于模型内部的适当位置。目的正确的文档。备注注释的目的是简化评论和维护,并且提高模型的易理解性。实例图 81 所示为正确的模型注释。图 81 正确的模型注释5.2 模块特性中的注释所提供的所有注释都应该是有效的ANSI C 注释且不包括/*和*/符号。特别值得注意的是,本规则中排除了使用/*和*/,以及 umlaut
8、 和特殊字符。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 30 页 - - - - - - - - - 目的利用 TargetLink 的子序列代码生成。备注该规则确保位于模块层的注释可以转换成有效的C 注释。5.3 接口注释为了更易理解,可以在输入端口和输出端口的Block Propperties 中的Description 处对各个模块的接口信息进行描述。目的正确的接口和数据文档。备注Description 处的内容有助于简化评论和维护。实例图 82 所示为一个正
9、确的接口描述实例。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 30 页 - - - - - - - - - 图 82 输出端口模块的正确接口注释5.4 单个模块和信号的注释为了更易理解,关于模块和信号的附加注释可以添加在模块特性的Dscription 处,或者如果使用了TargetLink 模块,也可以添加到TargetLink 模块的 Code comment 和 Block comment 处。目的正确的文档。备注Dscription 处的内容有助于简化评论和维护
10、。实例图 83 所示为一个正确的信号描述实例。图 83 正确的模块注释,例如,对一个Gain 模块名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 30 页 - - - - - - - - - 5.5 模块参数和信号的单位模块参数和信号的单位应该在模块特性的Description 处予以指定。目的正确的文档。备注单位的说明有助于分析模型的功能。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
11、- - - - - - 第 7 页,共 30 页 - - - - - - - - - 6版面设计问题本章中所包含的规范应被视为对于版面设计问题的建议。针对基本版面设计问题的规则帮助建立了一种通用的标准,该标准保证了简单的模型评论和透明的模型。6.1 信号流输入端口应该置于左侧,输出端口应该置于右侧。信号流的方向通常是从左向右,反馈环除外。循环中的信号流应该沿顺时针方向。目的建议一个透明、标准化的版面设计规则。备注该规范有助于简化评论和维护。6.2 信号线信号线应该尽可能呈直角形状且不应穿越模块或者子系统。交叉节点的个数应该尽可能保持在较低的水平。目的建立一个透明、标准化的版面设计规则。备注该规
12、范帮助简化了评论和维护。参考文献Controller Style Guidelines for Production Intent Using MATLAB, Simulink and Stateflow V1.008,4.3.1.36.3 信号和总线的显示应该在信号和总线的始端或其它合适的位置标注上名字用以显示名字和相关的信号。目的建立一个透明、标准化的版面设计规则。备注该规范帮助简化了评论和维护以及更进一步的处理。参考文献名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共
13、 30 页 - - - - - - - - - Controller Style Guidelines for Production Intent Using MATLAB, Simulink和 Stateflow V1.0.08,4.6.1.1Controller Style Guidelines for Production Intent Using MATLAB, Simulink和 Stateflow V1.0.08,4.6.1.2Controller Style Guidelines for Production Intent Using MATLAB, Simulink和 Stat
14、eflow V1.0.08,4.6.1.36.4 非标量信号应该在 Format 目录下的 Wide nonscalar lines选项中指定信号的维数。目的建立一个透明、标准化的版面设计规则。备注该规范帮助简化了评论和维护。参考文献Controller Style Guidelines for Production Intent Using MATLAB, Simulink和 Stateflow V1.0.08,4.6.1.36.5 模块的显示模块符号应该足够大以保证所有的图标和标签都是清晰可见的。重要的模块参数应该通过 Attribute Format String 或 Block Ann
15、otation 予以显示。模块名字应该置于模块的正下方。目的建立一个透明、标准化的版面设计规则。备注该规范帮助简化了评论和维护。参考文献Controller Style Guidelines for Production Intent Using MATLAB, Simulink和 Stateflow V1.0.08,4.5.1.3Controller Style Guidelines for Production Intent Using MATLAB, Simulink和 Stateflow V1.0.08,4.5.1.1Controller Style Guidelines for Pr
16、oduction Intent Using MATLAB, Simulink和 Stateflow V1.0.08,4.3.1.7实例图 84 所示为值得显示的一些重要模块参数。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 30 页 - - - - - - - - - 图 84 正确的模块注释6.6 字体和字体大小除了文本注释外模型中的所有元素都应该以相同的字体和大小进行显示。应该使用常用的字体如Arial。目的建立一个透明、标准化的版面设计规则。备注该规范帮助简化了评
17、论和维护。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 30 页 - - - - - - - - - 参考文献Controller Style Guidelines for Production Intent Using MATLAB, Simulink和 Stateflow V1.0.08,4.3.1.1名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11
18、 页,共 30 页 - - - - - - - - - 7仿真参数Simulink 中的一个正确的仿真要求对每一个独立模型具有合适的仿真参数设置( Configuration Parameters在 Simulation 目录下) 。尽管有些情况下默认设置已经足够,仍然需要调整模型细节以产生充分的仿真结果。本章中所提到的仿真参数设置应该仅作参考,在特定模型中违背该规则也是允许的。7.1 Solver 设置Solver选项应该设置为: Type: Fixed-step以及Mode: Single Tasking。积分算法 ode1(Euler),ode2(Heun),ode3(Bogacki-S
19、hampine) ,ode4(Runge-Kutta) ,ode5 (Dormand-Prince) 和 the Fixed step size应该根据要求的精度进行设置。目的正确的模型仿真。备注Type: Fixed-step选项使得仿真以基本定步长大小运行。Mode:Single Tasking选项确保多分枝模型在没有引入速度传输模块情况下的正确仿真。如果plant 模型要求仿真具有自适应步长大小,必须选择solver选项中 Type:Variable-step。实例图 85 所示为仿真参数 /Solver 的正确设置。图 85Solver 设置名师资料总结 - - -精品资料欢迎下载 -
20、 - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 30 页 - - - - - - - - - 7.2 诊断设置用做 Consistency checking和 Bounds checking的仿真选项应该设置为none。另外,应该选择下面的设置作为Configuration 选项:Algebraic loop:ErrorBlock priority violation:ErrorSingle Task rate transition:WarningCheck for singular matrix:Warning
21、Underspecified data types:WarningUnneeded type conversion:NoneVector/Matrix conversions:WarningSignal label mismatch:WarningUnconnected block input:ErrorUnconnected block output:ErrorUnconnected line:Error目的正确的诊断功能。备注Consistency checking和 Bounds checking选项用来验证用户编写的S函数并且可能显著增加仿真时间。为了避免函数建模错误选择Configu
22、ration 选项可以对信号进行警告和报错。实例图 86 所示为 Simulation Parameters/Diagnostics的设置。违背 Simulink 默认设置出已被圈出。7.3 高级设置对模型的 parameter configuration,Inline parameters选项应该不予选择。本着最优化的原则,下面的设置应该予以选择:Block reduction:OffBoolean logic signals:OnConditional input branch:OnParameter pooling:OnSignal storage reuse:OffZero-cross
23、ing detection:On目的名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 30 页 - - - - - - - - - 正确的模型仿真。备注不激活 Inline parameters 选项使得在快速原型阶段可以修正运行时间参数。激活 Conditional input branch:On 减少了仿真时间,这是因为对于Switch 和Multiport Switch 模块而言,没有被激活的路径将不执行运算。请注意在那些条件执行支路中将Conditional in
24、put branch 选项设置为 On 将会对取对数后的信号产生影响,因为模块并不能在每一个时间步长上都被执行。实例图 86 和图 87 所示为 Simulation Parameters/Advanced的正确设置。Simulink 默认设置中相背离的部分已经被圈出。图 86 正确的诊断设置名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 30 页 - - - - - - - - - 图 87 正确的高级设置7.4 Full-Featured 模式下的 TargetLi
25、nk 模型不支持 Simulink 加速模式当前, full-featured 模式下的 TargetLink 模型不能在加速 /快加速模式下进行仿真已达到通过代码生成来推进仿真进程的目的。目的正确的模型仿真。备注自 MATLAB R2007b 发布以来,曾属于Simulink 执行工具箱一部分的加速器(Accelerator)变成了 Simulink 的常规部分。支持TargetLink 中信号取对数和画图的 TargetLink full-featured 模式不能用于同那些特征相连接。实例图 88 所示为取代了 Accelerator 或 Rapid Accelerator 的 Norm
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年dSPACE建模规范 2022 dSPACE 建模 规范
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内