收藏 分销(赏)

Simulink查表和延时模块介绍PPT课件.ppt

上传人:胜**** 文档编号:766425 上传时间:2024-03-08 格式:PPT 页数:17 大小:644KB
下载 相关 举报
Simulink查表和延时模块介绍PPT课件.ppt_第1页
第1页 / 共17页
Simulink查表和延时模块介绍PPT课件.ppt_第2页
第2页 / 共17页
Simulink查表和延时模块介绍PPT课件.ppt_第3页
第3页 / 共17页
Simulink查表和延时模块介绍PPT课件.ppt_第4页
第4页 / 共17页
Simulink查表和延时模块介绍PPT课件.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、Simulink查表和延时模块介绍王文科2018/05/201.逼近一维函数(模块是 n-D Lookup Table 模块的一维版本)(常用)逼近二维函数(模块是 n-D Lookup Table 模块的二维版本)通过利用象限波对称性的查找表方法实现定点正弦或余弦波为 N 维表进行索引,以检索元素、列或二维矩阵使用预先计算的索引和小数值快速求 N 维函数近似值使用动态表逼近一维函数(常用)逼近N维函数计算 Interpolation Using Prelookup 模块的索引和小数通过利用象限波对称性的查找表方法实现定点正弦或余弦波Lookup Tables共包含9个查表模块,其中1-DLo

2、okupTable和LookupTableDynamic为常用模块一、查表模块2.Lookup Table DynamicLookup Table Dynamic:简介:模块使用 xdat 和 ydat 向量计算函数 y=f(x)的近似值。查找方法可以使用内插、外插或原始输入值;支持以下数据类型:双精度|单精度|布尔|基整数|定点;xdat 和 ydat 输入都必须提供 1n 的向量,其中xdat必须严格单调递增;xdat 和 x 输入、ydat 和 y 输出必须具有相同的符号、偏差和小数斜率。此外,x 的精度和范围必须大于或等于 xdat 的精度和范围。(偏差?小数斜率?ydat和y的关系?

3、)模块输出通常设置为“通过反向传播继承”。ydat和y可以符号不同,查表结果可能溢出ydat和y可以类型范围不同,查表结果可能溢出输出类型选择“自动”时,会与ydat相同一、查表模块3.查表方法:动态表逼近模块的查表方法通常选用默认值“Interpolation-Use End Values”;查表配合“舍入方式”和“溢出方式”获得预期结果。Lookup MethodLookup Method模块操作“Interpolation-Extrapolation”对输入执行线性内插和外插。如果输入与断点匹配,则输出表数据中的对应元素。如果输入与断点不匹配,模块将通过在表的两个元素之间执行线性内插来确

4、定输出。如果输入不在断点值的范围内,模块将使用前两个或最后两个点进行外插。注意SimulinkCoder软件无法为此模块生成代码。“Interpolation-UseEndValues”(默认值)执行线性内插,但不会在断点数据的端点外进行外插,而是会转而使用端点值。“UseInputNearest”查找xdat中最接近当前输入的元素,输出ydat中的对应元素。如果与左右两个xdat距离相同,使用较大一个。“UseInputBelow”查找xdat中最接近并且低于当前输入的元素。输出ydat中的对应元素。如果xdat中没有任何元素低于当前输入,模块将查找最接近的元素。“UseInputAbove

5、”查找xdat中最接近并且高于当前输入的元素。输出ydat中的对应元素。如果xdat中没有任何元素高于当前输入,模块将查找最接近的元素。一、查表模块Lookup Table DynamicLookup Table Dynamic:4.模块设置:查表方法通常不需要设置;舍入方式根据需要从列表中选择,默认为“Floor”;溢出方式通常保持默认状态。查表方法选择,通常使用默认设置(Interpolation-UseEndValues)勾选后,溢出结果变为该类型的最大值或最小值整数舍入模式说明Ceiling在正无穷的方向上舍入到最接近的可表示数字Convergent四舍五入,向偶数方向舍入,向负无穷方

6、向舍入Floor在负无穷的方向上舍入到最接近的可表示数字Nearest四舍五入,向正无穷方向舍入(常用)Round向最接近的绝对值最大的可表示数舍入Simplest在Floor和Zero之间自动选择以生成尽可能高效的代码Zero向0方向进行舍入一、查表模块Lookup Table DynamicLookup Table Dynamic:5.n-D Lookup Tablen-D Lookup Table:一、查表模块6.查表算法设置:插值方法和外插方法主要设置项插值方法说明Flat(平面)禁用插值,并使用名为“UseInputBelow”的舍入操作(参见LookupTableDynamic的查

7、表方法)Nearest禁用内插,并返回与最接近输入的断点对应的表值。如果输入与两个相邻断点之间的距离相等,则选择索引值较大的断点Linear在相邻断点之间拟合一条线,并返回该线条上与输入对应的点Cubicspline(立方样条)在相邻断点之间拟合一条三次样条曲线,并返回该样条曲线上与输入对应的点外插方法说明Clip禁用外插,并返回与断点数据集范围的端点对应的表数据Linear如果插值方法为“Linear”,将在第一对断点间或最后一对断点间拟合一条线。如果插值方法为“Cubicspline”,将使用插值函数在第一个或最后一个断点处的斜率来拟合一个线性曲面。将返回生成的线性曲面上与输入对应的点。C

8、ubicspline对第一对或最后一对断点拟合一条三次样条曲线,返回生成的线性曲面上与输入对应的点(插值方法必须也为Cubicspline)一、查表模块n-D Lookup Tablen-D Lookup Table:7.查表算法设置:插值方法为“Linear”外插方法为“Clip”时出现“Use last table value for inputs at or above last breakpoint”选项,当输入大于断点数据最后一个元素,选中该选项会使用断点数据的最后一个元素,不选择该选项会使用断点数据的倒数第二个元素并使间距为1。根据生成代码区别分析,两者结果相同。一、查表模块n-D

9、 Lookup Tablen-D Lookup Table:8.查表算法设置:索引搜索方式设置用来根据断点集选择不同的搜索方式,以获得最佳查表速度或性能。包含Evenly spaced points、Linear search 和 Binary search三种方式。一、查表模块n-D Lookup Tablen-D Lookup Table:搜索方式说明Evenlyspacedpoints(均匀间隔点)对于平均分布的断点集,此方法可以获得最佳速度。此算法仅使用断点集的前两个断点来确定其余点的偏移量和间距。Linearsearch(线性搜索)对于非均匀分布的断点集,如果输入信号在时间步之间的变

10、化不大,选择Linearsearch与Beginindexsearchusingpreviousindexresult可以获得最佳性能。Binarysearch(二进制搜索)如果输入信号在每个时间步中跳过的表间隔超过一个或两个,选择Binarysearch可以获得最佳性能。超出范围检测说明Simulink对输入超范围的诊断警报包括:None/Warning/Error三种生成代码移除范围检测(类型范围?断点集范围?)勾选可以提高查表效率;不勾选可以提高安全性勾选后仅有一个输入端口,需要宽度为N个元素的信号,对多维查表有效果,可以使模型线条减少更有条理。勾选后生成代码允许调整表大小而无需重新生成

11、代码,参数个数需要使用单独参数定义。9.Discrete共包含22个查表模块,本次介绍其中的Delay、Unit Delay、Enabled Delay、Difference四个模块二、离散时间函数模块固定或可变采样周期延迟输入信号计算一个时间步内的信号变化计算离散时间导数构建无限冲激响应(IIR)滤波器模型构建FIR滤波器模型对连续或离散时间PID控制器进行仿真对连续或离散时间二自由度PID控制器进行仿真实现离散状态空间系统执行信号的离散时间积分或累积实现离散传递函数模型系统由离散传递函数的零点和极点定义带有外部使能的可变周期延迟实现一阶采样保持器输出上一个时间步的输入按可变采样周期延迟输入

12、信号并用外部信号复位将标量信号延迟多个采样期间并输出所有延迟版本实现离散时间一阶传递函数实现离散时间前导或滞后补偿器实现具有实零和无极点的离散时间传递函数将信号延迟一个采样期间可变采样周期延迟输入信号实现一个采样期间的零阶保持10.DelayDelay、Unit DelayUnit Delay、Enabled DelayEnabled Delay功能对比:简介:Unit Delay将输入延迟一个运行周期后输出;Delay模块可以设置延时的周期数及延时期间的输出值;Enabled Delay在Delay的功能基础上增加使能信号,在非使能时间内保持状态;二、离散时间函数模块11.Delay Del

13、ay:主要设置选项:包括数据设置、算法设置、控制使能设置、采样时间间隔设置;通常使用固定延迟长度和基于样本的输入处理;在延迟长度较大时可以选择环形缓冲区来存储状态。二、离散时间函数模块说明延时时间设置。直接在对话框中输入延迟长度(固定延迟),还是从输入端口继承(可变延迟),可变延迟时可设置最大限值。初始模块输出,支持定值和从端口输入。指定模块是执行基于样本还是基于帧的处理选择在仿真和代码生成时使用环形缓冲区来存储状态。在其他情况下,则使用数组缓冲区来存储状态。当延迟长度值很大时,使用环形缓冲区可以提高执行速度。延迟长度下限设置。如果选中此复选框,对于基于样本的信号,下限为1;对于基于帧的信号,

14、下限为帧的长度。如果清除此复选框,则下限为零。选择此选项可删除用来检查超出范围的延迟长度的代码,牺牲一定的安全性提高代码效率。指定当输入d小于下限或大于Delaylength:Upperlimit时是否生成警告或错误。选择此选项以显示此模块的使能端口。此端口可以控制模块的执行。当此端口的输入非零时,模块被视为启用;当输入为0时,模块被视为禁用。输入的值在执行模块的同一时间步进行检查。指定用于将状态重置为初始条件的触发事件。12.Delay Delay:环形缓冲区:数组缓冲每次挪动数组中所有数据,保证数组索引的第一个值为延迟后的数据;环形缓冲实用独立索引来标记数据头的位置,该位置即是延迟后的数据

15、。二、离散时间函数模块环形缓冲区数据缓冲操作数组缓冲区数据缓冲操作取延迟后数据操作13.Delay Delay:状态属性设置:设置状态名并将其关联到信号后,生成代码中的延迟缓冲数据名称使用设定名称;设置状态名但不将其关联到信号,状态名成为缓冲数据结构体的一个成员。二、离散时间函数模块14.Difference Difference:简介:Difference 模块输出当前输入值减去上一输入值的差值;从代码生成情况看,Difference实际在使用的是Unit Delay模块;二、离散时间函数模块15.Difference Difference:主要设置:“Initial condition f

16、or previous input”为上一个输入设置初始条件;“Input processing”指定模块是执行基于样本还是基于帧的处理:二、离散时间函数模块处理方式说明Elementsaschannels(samplebased)将输入信号的每个元素视为一个单独的通道(基于样本的处理)Columnsaschannels(framebased)将输入信号的每一列视为一个单独的通道(基于帧的处理)Inherited继承输入信号的处理模式并相应地延迟输入。可以通过观察信号线来确定输入信号是基于样本还是基于帧。Simulink用单线条表示基于样本的信号,用双线条表示基于帧的信号初始值为0和3的效果对比16.Difference Difference:二、离散时间函数模块信号属性设置:设置输出类型;定点运算相关设置;溢出处理设置。说明指定模块应输出的最大最小值。用于仿真范围检查、定点数据类型的自动定标、从模型生成的代码的优化。此优化可删除算法代码,并影响某些仿真模式(如SIL或External模式)的结果。选中此选项将锁定此模块的输出数据类型设置,从而防止通过Fixed-PointTool和Fixed-PointAdvisor进行更改指定定点运算的舍入模式。选择此选项,使溢出饱和为数据类型可以表示的最大值或最小值。否则,溢出将绕回。17.

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服