n_DLookupTable_第1页
n_DLookupTable_第2页
n_DLookupTable_第3页
n_DLookupTable_第4页
n_DLookupTable_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、该块支任何维度表从1到30。n-D Look up Tablehtt p:/ I Ia au3支持的块操作n-D Lookup Table块计算一个采样表示在N个变量的函数函数F可以是经验。该块映射输入到输出值,通过查找或内插表定义块参数的值。持平(常量),线性,三次样条插值方法。您可以应用这些方法使F面的块中,第一输入标识的第一维 (列)断点,第二个输入标识的第二维 (列)断点,等。见 How to Rotate a Block断点和数据表规范F面的块参数定义断点和表的数据。丟D D T(u)T(u)I IIJIJ3 3三n-Dn-D LcHsfcupLcHsfcup TableTableF

2、卞 rowrow-tablewtablew色 IIIIII 也OirtlOirtl块参数目的Number of table dime nsions指定您的查找表的 维度。Break points指定一个断点矢量,对应于每个维度的查找表。Table data定义输出值的组相关联的。提示:均匀分布的断点,可以使生成的代码划分。见fixpt_evenspace_cleanup禾n Identify questionable fixed-pointop erati ons该块是如何产生的输岀n-D Lookup Table 块生成输出通过查找或估算的输入值在基础的表上的值:当块输入.n-D Look

3、up Table块.断点数据集的值相匹配的索引输出表中的值的行列的交点处,和更咼的维度断点不匹配的的断点数据集的索引值,但在范围之内插入相应的表值,使用你选择的Interpolationmethod不匹配的的断点数据集的索引值,和超出范围的推断的输出值,使用你选择的Extrap olationmethod其它块来执行类似的操作您可以使用 InterpolationUsing P relook up 块与 P relooku p 块执行相同的 n-D Lookup Table 块操作。块这样的组合提供了更大的灵活性,可以导致更有效的模拟性能的线性插值。当查找操作是一个数组访问,不需要插值,使用D

4、irect Look up Table (n-D)块.例如,如果您窗格出现如下对话框:latiiHdTQilatiiHdTQi有一个整数k值和你想表的第k个元素,y = table(k),插值是不必要的。数据类型支持n-D Lookup Table 模块支持所有Simulink的支持的数字,包括定点数据类型的数据类型。Data Types Supp orted by Simulink.三次样条插值和 线性外插 模式,下面的参数必须使用相同的浮点类型:?表数据?断点?分数?中间结果?输出输入索引必须 是实数,但表中的数据可以是 复数。参数和对话框Number of table dimension

5、s输入查找表的数目 的维度,通过指定一个从1到30的整数。这个参数决定:为表的独立变量的数目和块输入的数目 为指定设置断点的数目Table data键入表的输出值。在模拟过程中,矩阵的大小必须与所定义的维度table dimensions 参数相匹配 然而,在框图编辑,你可以输入一个空矩阵(指定为)或未定义的工作空间变量。这种技术可以让你推迟指定正确的尺寸矩及阵表中的数据,并继续编辑框图。见Multidimensional Arrays.Break po ints在每个Break points行中,输入设置的断点,对应于每个维度表中的数据。对于每 个维度,指定为1-n或n-1向量,其值是严格单

6、调递增的断点。Edit table and break po ints单击此按钮可打开“查找表编辑器”。见Edit Existing LookupTablesSample time (-1 for inherited)指定样本之间的时间间隔。要继承采样时间,此参数设置为-1。见Sp ecify Sam pie Timen-D Lookup Table 块的Algorithm窗格出现如下对话框:Inter po lation method是 Lin ear .Extra po lation method是 Clip .指定当输入超出范围,是否将产生一个警告或错误。选项包括:Inter po la

7、tion method选择 Flat , Lin ear ,或 Cubic spline.见 Interpolation Methods如果您选择Cubic spline ,块只支持标量信号。其他插值方法支持非标量信号。Extra po lation method选择 Cli P , , Lin ear ,或 Cubic sp li ne .见 Extra polation Methods要选择 Cubic spline 为 Extrapolation method,你还必须选择 Cubic spline 为Inter po lation methodUse last table value

8、for inputs at or above last break point指定的块使用 来解决设置了断点和其对应的表中的值的最后一个元素的索引惯例。检查框块使用索引间隔分数选择最后一个元素设置了断点0清除下一个到最后一个元素设置断点1此参数是可见仅当:Diagnostic for out-of-range inputNone没有警告或错误Warning 在MATLAB命令窗口中显示一个警告,并继续模拟Error 停止模拟,并在模拟诊断浏览器中显示一个错误Remove p rotection against out-of-range input in generated code指定是否包括

9、代码检查范围的断点输入值检查框会导致当使用选择生成的代码不包括条件语句来检查断点范围的输入。代码的效率清除生成的代码包括条件语句来检查范围的断点输入。对于安全关键型应用程序。根据您的应用程序,你可以运行下面的模型指导检查,以确保使用此复选框:* By P roduct Embedded Coder Identify look up table blocks that generate exp ensiveout-of-range checking code* By P roduct Simulink Verification and Validation ModelingStandards D

10、O-178C/DO-331 Checks Check usage of lookup table blocks见 Consult the Model AdvisorIndex search method选择 Eve niy sp aced p oi nts, Lin ear search ,或 Bi nary search .每个搜索方法具有速度快的优点,在不同的情况下:对于均匀间隔的断点集(例如,10, 20,30,等等),则实现最佳的速度,通过选择 Evenly spaced points计算表索弓丨。该算法只使用第一个 的两个断点 的一组,以确定的偏移量和剩余的点间距对于不均匀间隔断点集

11、,遵循以下原则:如果输入信号变化不大之间的时间的步骤,选择Lin ear search 为 Begin indexsearch using p revious index result产生最佳的性能。如果输入信号每个时间步,跳一个或两个以上的表的时间间隔,选择Bi nary search产生最佳的性能。Remove p rotection against out-of-range input in generated code选中此复选框只使用一个输入端口的信号,宽为n个元素的一个 N维表。有许多的查找表的框图,此选项可用于消除线路上的混乱注:当您选择此复选框后,块会出现一个输入端口具有标签u

12、。Support tunable table size in code generation选择此复选框来启用大小可调的表,在生成代码。此选项使您可以改变大小和值的查找表和断点数据没有再生或重新编译代码。如果你设置 Inter po lation method为Cubic spline ,此复选框不可用。一种次优选择索引搜索的方法可以导致降低性能很大程度上依赖于查找表的模型。注:生成的代码将第一个断点,间距,和断点时: 断点的数据是不可调的。*索弓I搜索的方法是 Evenly spaced pointsBegin index search using p revious index resul

13、t选中此复选框,当你想使用索引在以前的时间步长的块开始搜索。对于输入信号变化缓慢的时间间隔大小,使此选项可以提高性能。否则,线性搜索和二进制搜索方法需要较长的时间,特别是对于较大的断点集。Use one input port for all i nput dataMaximum indices for each dimension使用从零开始的索引,指定每个工作台尺寸最大的索引值。您可以指定一个标量或矢量的正整数,使用下面的数据类型: 内置的浮点类型:double和single 内置整数类型:int8 , int16 , int32 , uint8 , uint16 ,和 uint32F面是一

14、些有效规范例子:为3-6-10表参数显示.Table and BreakpointsAlgorithmDataData TypesTypesTable data:Break points 1;Ereakpoirts 3LBreakpoints 3:DataData TypeTypeMaximumMaximumInherit: Same as output iTiiherit: Same as conrespond ing in put Inherit: Same as corresponding Input - -_7 7Fraction:MermediateMermediate result

15、s:results:Inherit: Same as oirtputOutput:Inherit: Same as first inputJOKCancelHielip4 6为 5-7 表.in t8(2) in t16(5) in t32(9)当您选择此 Support tunable table size in code generationn-D Lookup Table 块的Data Types窗格出现如下对话框:壁 FunctionFunction BlockBlock Psrameters;Psrameters; n-Dn-D LookupLookup TableTableLook

16、up-ableLookup-able n-Dn-DPerform ndimensknal interpolated tble lookup including index marches.marches. The tabk is samsampie彳 representation Q Function in N veariables. Breakpoint sets relate the in put values to p o 引 lions in the table. The first dimension corresp the top (or left) input port.Inhe

17、rit: Irheht via internal rule空 RequireRequire allall i inputsnputs toto havehave thethe samesame datadata typetypeI Lock data type settings against changes by the fixed-point toolsInteger rounding mode: Sinriplest Saturate on integer overflow注:该对话框可以展开,以显示额外的数据类型选项。up至30的断点数据类型,规格的出现。Table data Data

18、 Type指定表中的数据类型。您可以将其设置为:Assistant MininmimInherit: Sarne as corresponding input * 指定表中的数据的最大值。默认值是(未指定)。点击 Show data type assistant按钮显示Data Type Assistant ,它可以帮助你继承的规则,数据类型,例如,In herit: Same as out put一个内置的数据类型的名称,例如,si ngle数据类型对象的名称,例如,Simuli nk.NumericTy pe 对象一个表达式,其值的数据类型,例如, fixdt(1,16,0)设置表中的数据

19、类型。提示:指定表中的数据类型的不同,在这些情况下的输出数据类型:*表,用于存储数据的位存储器要求比的输出信号低,使用一个较小的类型*预分频表中的数据共享在二个n-D Lookup Table块之间的不同输出数据类型 * 在生成的代码块不同的输出数据类型的自定义存储表数据共享Table data Minimum(未指定)。Table data MaximumBreak po ints Data Type为一组的断点数据指定的数据类型。您可以将其设置为:继承的规则,数据类型,例如,In herit: Same as corres ponding input一个内置的数据类型的名称,例如,si n

20、gle数据类型对象的名称,例如,Simuli nk.NumericTy pe 对象一个表达式,其值的数据类型,例如, fixdt(1,16,0)设置的断点数据类型。点击 Show data type assistant按钮显示Data Type Assistant ,它可以帮助您指定表中的数据的最小值。默认值是见 Specify Data Types Using Data Type Assistant 一个内置的数据类型的名称,例如,si ngle指定断点数据的一组可以具有的最小值。默认值是(未指定)。指定断点数据的一组可以具有的最大值。默认值是(未指定)。提示:指定一个断点数据类型不同的这些

21、情况下,从对应的输入的数据类型:*较低内存要求比的输入信号,用于存储断点的数据使用一个较小的类型*预分频表中的数据共享在二个n-D Lookup Table块之间的不同输出数据类型 * 在生成的代码块不同的输出数据类型的自定义存储表数据共享Break po ints MinimumBreak po ints MaximumFractionData Type指定的部分数据类型。您可以将其设置为:继承的规则,数据类型,例如,In herit: I nherit via internal rule一个内置的数据类型的名称,例如,si ngle数据类型对象的名称,例如,Simuli nk.Numeri

22、cTy pe 对象一个表达式,其值的数据类型,例如, fixdt(1,16,0)设置的分数数据类型。见 Specify Data Types Using Data Type AssistantIntermediate results Data Type点击 Show data type assistant按钮显示Data Type Assistant ,它可以帮助你见 Specify Data Types Using Data Type Assistant 一个内置的数据类型的名称,例如,si ngle指定中间结果的数据类型。您可以将其设置为: 继承的规则,数据类型,例如,In herit:

23、Same as out put点击 Show data type assistant按钮显示 Data Type Assistant,它可以帮助你对象点击 Show data type assistant按钮显示Data Type Assistant,它可以帮助你* 数据类型对象的名称,例如,Simuli nk.NumericT ype 对象 一个表达式,其值的数据类型,例如, fixdt(1,16,0)设置中间结果的数据类型。提示:使用此参数指定内部计算的精度比表中的数据或输出数据更高(或更低)。Outp ut Data Type指定输出的数据类型。 您可以将其设置为:继承的规则,数据类型,

24、例如, In herit: I nherit via back prop agati on一个内置的数据类型的名称,例如,si ngle数据类型对象的名称,例如,Simuli nk.NumericT ype一个表达式,其值的数据类型,例如, fixdt(1,16,0)设置的输出数据类型。见 Specify Block Output Data TypesOut put Minimum参数范围检查(见 Check P arameter Values )模拟范围检查(见 Signal Ranges )自动缩放的定点数据类型Out put Maximum指定该块的值的输出最小的值。默认值是(未指定)。

25、Simulink软件使用这个值来执行:*参数范围检查(见 Check P arameter Values )Overview of the指定的块的输出的最大值。默认值是(未指定)。Simulink软件使用这个值来执行: 模拟范围检查(见 Signal Ranges )自动缩放的定点数据类型Require all i nputs to have the same data type选择要求所有输入信号具有相同的数据类型。Lock data type settings against changes by the fixed-po int tools选择锁定所有对这个块的数据类型设置的定点工具和

26、定点顾问。见Fixed-Point Tool和 Preparation for Fixed-Point Conversion.Integer rounding mode指定的舍入模式为固定点的查找表计算模拟或从模型生成的代码的执行过程中发生 的。见 Rounding此选项不影响四舍五入块参数的值。Simulink的舍入值最接近的可表示的整数值。要控制舍入的块参数,使用MATLAB舍入到编辑字段的函数块对话框中输入一个表达式。Saturate on integer overflow作用采取这一行动的原因溢出会发生什么事的实例选中此复选你的模型有可能溢出,并在生成的代码,你要明溢出饱和到任何的数据

27、类型可有符号的8位整数溢出饱和框。确的饱和保护。以表示的最小或最大值。到-128 或 127。请不要选择此你想生成的代码,以优化效率。溢出换到数据类型表示适当的数130不适合在有符号的8复选框。你要避免过度指定块如何处理范围的信号。见值。位整数,换到-126。Check ing for Signal Range Errors.提示:如果你保存你的模型版本 R2009a或更早的版本,此复选框,设置没有效果,没有出现饱和代码。这种行为举一个例子,说明这个块的线性插值和外推法,请参阅Create a Logarithm Look up Table保持向后兼容性当您选择此复选框,饱和度适用于每一个块的

28、内部运作,而不仅仅是输出或结果。在一般情况下,代码生成的过程可以检测溢出时是不可能的。在这种情况下,代码生成器不产生饱和的代码。实例插值和外推法特性有关进入的断点和表数据的一个例子,看Entering Data in a Block Parameter Dialog Box在生成的代码大小可调表假设你有一个查找表,并希望在生成的代码的大小可调。假设: 您可以定义一个 Simulink.Parameter 你的模型结构在预置函数:P = Simuli nk.Parameter;p .Value.MaxIdx = 2 2;p.Value.BP1 = 1 2 3;p.Value.BP2 = 1 4

29、16;p.Value.Table = 4 5 6; 16 19 20; 10 18 23;p .DataT ype = Bus: slLook up Table;p. Coder In fo.StorageClass = Ex portedGlobal;% Create bus object sIBusI from MATLAB structureSimuli nk.Bus.createObject (p .Value);slLook up Table = slBus1;slLook up Table.Eleme nts(1).DataTy pe = ui nt32: 下面的块参数适用于n-D

30、 Lookup Table块对话框中的:参数值Number of table dime nsions2Table datap .TableBreak points 1P.BP1Break points 2P.BP2Support tun able table size in code gen eratio nonMaximum in dices for each dime nsionp.MaxIdx生成的modemodeLtypes.h头文件包含一个类型定义,看起来像这样:typ edefstruct uin t32LTMaxldx2;realTBPIQ;reaLTBPZQ;real_T Ta

31、ble9; sILook up Table;生成的modemodeLc文件中包含的代码看起来像这样:/* Exp orted block p arameters */sILook up Table p = 2U, 2U , 1.0, 2.0, 3.0 , 1.0, 4.0, 16.0 , 4.0, 16.0, 10.0, 5.0, 19.0, 18.0, 6.0, 20.0, 23.0 /* More code */* Model out put fun ctio n */突出显示的代码行指定的可调谐表的查找表的大小。您可以更改查找表的大小和值以及断点static void ex_l ut_nd_tun able_table_out pu t(i nt_Ttid)/* Look up_n-D: vRoot/n-D Look up Table incorp orates:* Inp ort:vRoot/l n1Tnp ort: vRoot/In2*/Y = look2_bi nl cp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论