simulink查表模块1-D Lookup Table

本文介绍了查表方法在家电和汽车电子领域嵌入式算法设计中的应用,特别是1-D和n-DLookupTable模块如何通过离散化数据和高效查表提高交流电机调速控制等应用的计算效率。详细解释了模块的工作原理、参数设置和插值算法的选择。
摘要由CSDN通过智能技术生成

查表模块

查表是指在已填满数据的表格、一维向量或多维矩阵中,根据对应维数的输入定位相应输出。在家电和汽车电子领域的嵌入式算法设计中,查表方法有助于提高应用层算法的计算效率。例如,在交流电机调速控制中需计算正弦余弦值,若在资源有限的嵌入式芯片中采用泰勒级数计算,效率显然较低。
然而,事先将正弦函数在一个周期内离散化,并将其对应的数值计算好,共同构建一维查找表存储于ROM中(生成代码时通常使用Simulink.Parameters对象定义查找表的Breakpoints和Table值)。每次嵌入式计算中需要调用正弦函数时,根据输入换算到一个周期内,再查表计算,效率得以显著提升。这一优势在Simulink仿真及针对嵌入式的代码生成中均得以体现。

1-D Lookup Table 模块

模块具备一个输入端口和一个输出端口,在仿真过程中,根据输入信号的取值进行查表操作,并将对应的表格值输出。该模块依据内部预设的查找表进行图像绘制,这在模块框图中得以体现。默认图标如图所示。
在这里插入图片描述
双击模块图标以打开参数设置对话框。该模块包含三个页面,分别为表和断点(Table and Breakpoints)、算法(Algorithm)和数据类型(Data Type)。
在这里插入图片描述
表和断点页用于设定查找表的维数、各个维数的输入以及查找表的定义。

表维数(Number of table dimensions):设置查找表维数,1-DLookup Tables默认是一维查找表,可以通过下拉框选择1~4的维数,或者直接在下拉框中输入1~30的维数。输入后自动生成与维数相同的Breakpoints编辑框。

数据设定:可选表和断点、查找表对象;选择表和断点参数将在模块中进行表数据和断点的设置,选择查找表对象则需要输入查找表 (Simulink.LookupTable) 对象的名称。如果 Simulink.LookupTable 对象不存在,点击 在这里插入图片描述操作按钮并选择 Create。新查找表对象的对应参数会自动用模块信息填充。

表数据:查找表的数值,根据各维度断点确认输入在哪个断点,输出对应的表数据。

断点 1:查找表第一维输入向量,必须按照从小到大严格单调递增,否则仿真时报错。这里设置了从0-100共101个断点。

编辑表和断点:按下此按钮可以将查找表输入及内容在弹出的表格里编辑。可对单元格内容进行选择性编辑,通过最下面的转置显示(Transpose display)可以选择向量的显示方式,如图所示。在这里插入图片描述
算法设置
查找表毕竟是由有限个离散点的值构成的,而输入可以是无穷无尽的,很多时候输入的值并非正好落在查找表中提供的点上,这时就需要用到插值算法:当输入没有落在查找表的断点上但在其范围内时使用内插算法;当输入在断点所表示的范围外时则使用外插算法。内插外插算法都可以在Algorithm页面的参数组里设定,如图所示。
在这里插入图片描述
模块支持均一(常量)、线性(线性点-斜率)、拉格朗日(线性拉格朗日)、最近、三次样条和 Akima 样条插值方法。
Algorithm其余参数及Data Type页面的参数使用频率较低,读者使用时参考Help文档。
这里举例创建了一个长度为101的查找表

linspace(0,100,101)
ceil(linspace(0,100,101)/10)

表数据为0-101内的自然数除以10并向上取整。即输入在0时输出0,1-10时输出1,11-20输出2,以此类推。
在这里插入图片描述

n-D Lookup Table模块

1-D Lookup Table模块的Number of Table Dimensions修改为2即可得到了2-D Look-up Table模块,修改为其他正整数n则可以变为n-D Lookup Table模块,使用方法相同,不再赘述。

  • 28
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Simulink 1-D查找表是一种在Simulink中使用的数据类型,它可以将输入值映射到输出值。它通常用于控制系统中的参数调整和校准。1-D查找表可以通过插值算法来计算输入值的输出值,这使得它在实时控制系统中非常有用。 ### 回答2: Simulink 的 1-D Lookup Table 模块是一种用于实现线性插值的函数近似工具。它可以将一个输入信号的值映射到一个输出信号的值。模块内可以定义一个或多个关键点,每个关键点都包含一个输入值和对应的输出值。当输入信号的值在两个关键点之间时,Lookup Table 将进行线性插值,输出信号值将是输入信号值对应于两个关键点之间线性插值的结果。 在实际应用中,1-D Lookup Table 主要用于控制系统中对于输入输出关系曲线的需求。例如,换挡控制系统中的转速与车速之间的映射关系就可以通过使用1-D Lookup Table 来完成。同时,也可以通过在 Lookup Table 内部的插值类型中选择不同的方法,如线性、Nearest、下限和上限插值等,来满足不同的需要。 需要注意的是,1-D Lookup Table 模块的使用需要给定一组输入输出的关键点,并且需要将这些关键点按照从小到大的顺序排列。关键点可以通过手动输入或者直接导入数据来实现。在实际应用中,为了实现更高的准确性和稳定性,通常会将 Lookup Table 和其他控制系统模块配合一起使用。 总之,通过 Simulink 的 1-D Lookup Table 模块,我们可以方便地实现对于输入输出关系的控制和近似,满足不同领域的需求。 ### 回答3: Simulink 1-D查找表是一种模型工具,用于在系统中建立与输入和输出之间相关的映射。它是用于建立比例关系的非线性映射工具,即将输入数据映射到输出数据,以便系统能以一种更加直观的方式处理它们。具体来说,1-D查找表用于与输入信号相关的非线性转换,以生成相应的输出信号。 1-D查找表基本上是一组输入和输出关系组成的表格,其中一列是输入数据,而另一列是相应的输出数据。当输入信号满足某个特定的条件时,查找表会自动查找表格中相应的输出数据,并将其作为该输入信号的输出。此外,1-D查找表还具有插值和外推功能,这意味着可以在输入数据值不完全匹配时,使用更复杂的算法计算相应的输出值,从而使系统能够更好地适应实际的输入数据。 基于1-D查找表,Simulink时序建模的优势在于它可以与各种不同的输入和输出信号类型一起工作。这让Simulink在车辆控制系统、机器人技术、自动化系统等领域广泛应用。更具体的应用包括控制系统中的油门控制、刹车控制和方向盘转向控制,以及模拟现实环境中的相似情况。 总之,Simulink中的1-D查找表是一种实用、高效且灵活的模型工具,可用于各种不同的应用场景。它的使用已被广泛证明是在控制和自动化系统中的一种有效方法,可以帮助开发人员更好地管理复杂的输入和输出数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

橘蓝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值