下图所示是一张二维表,内容是可调阻尼减振器的速度--电流--阻尼力曲线,当已知减振器当前的拉压速度(mm/s)和减振器电磁阀当前的电流值,便可以查表得出减振器当前时刻能提供的阻尼力值。
在simulink中搭建一个二维查表模型,如下图所示,输入速度和电流, 就可以查出对应的力。
现在,如果反过来,已知了速度和力,如果想要确定电流是多少,该怎么做?
1、先根据输入的速度,查出0,0.2,0.4....1.6每个电流下对应的力值;
比如,此刻输入的速度是分别是-20和正20,我们得到的力的数据分别是以下两行;
这时候,假设速度是20,再输入力值136.8,那电流该是多少?很明显,电流是0.4A;如果力值是130呢,直觉上电流应该是在0.2到0.4之间,更偏向0.4,要确定这个偏向的多少,可以利用pre look预查表这个模块。
预查表模块有要求输入的断点必须是从小到大排列。由于我们的数据有正有负,速度为正则数据都为正,速度为负则数据都为负,且数据的绝对值都符合电流越大,绝对值越大的规律,我们可以按照上图模型所示处理办法,确保输出的数据都是从小到大排列。
2、经过第一步以后,知道了该速度下,每个电流下的力值,接着我们要确定,实际的力值这一系列力中所处的位置。
如图所示,我们输入速度-20,力-60,运行显示-60在下图这串数字从下到大排列第7个数以后,且再第7个数以后还超过了68.4%,更靠近-45.6。也即图中k和f的含义。
3、有了k和f以后,相当于我们知道了实际电流在0,0.2,0.4,0.6....这一串电流里的坐标,用个一维查表就很容易可以查出电流是多少。同样,这里也要注意下电流的顺序和逆序。
4、验证,将逆向查出来的电流输入正向表,再正向查一下输出的力与输入的力是否一致。