本发明属于对磁场信号或光学信号进行检测处理的,更具体地说,是涉及一种基于贝塞尔曲线插值算法非线性修正的信号拟合方法、磁性编码器、光学编码器及控制系统。
背景技术:
1、插值算法是一种数值分析方法,用于在有限数量的数据点之间插值或外推函数的值。下面是差值算法的一般要求:
2、数据点的间距相等,插值算法通常要求在相邻的数据点之间间距相等。这样可以简化计算,并且结果更加准确。
3、要求数据点数量足够:为了得到准确的插值结果,必须保证有足够的数据点。数据点的数量应该足够多,以确保插值函数与原函数之间的误差最小。
4、要求数据点满足一定的分布规律:如果数据点是随机分布的,那么使用差值算法可能会得到较差的结果。因此,数据点的分布应该满足一定的规律,例如等间距分布。
5、要求插值函数具有足够的连续性光滑性:插值函数具有足够的光滑性通常指的是插值函数在数据点之间具有一定的导数连续性和平滑性,即插值函数的一阶导数和二阶导数存在且连续。
6、如果插值函数不光滑,则可能导致插值结果的精度不够高,例如可能出现插值函数在数据点之间出现跳跃或震荡等现象,这些现象通常是不符合实际情况的。为了确保插值函数具有足够的光滑性,可以使用一些具有光滑性质的插值方法,例如样条插值方法。此外,对于非光滑的数据,也可以使用局部加权回归等方法来进行插值处理。在数学上,插值函数的光滑性可以用函数的导数的连续性和平滑性来描述,这通常可以通过求解插值函数的高阶导数来实现。
7、因此,亟需一种基于贝塞尔曲线插值算法的非线性修正的信号拟合方法、磁性编码器、光学编码器及控制系统。
技术实现思路
1、本发明的目的是提供一种基于贝塞尔曲线插值算法的非线性修正的信号拟合方法、磁性编码器、光学编码器及控制系统。
2、为了实现上述目的,本发明提供的技术方案为:
3、第一方面,提供一种信号拟合方法,对传感器来的输入信号基于贝塞尔曲线插值算法而进行拟合,得到拟合后的输出值,其特征在于,包括如下步骤:
4、建立用于表征输入信号与输出信号的坐标曲线图,其中,横坐标用于表征所述输入信号的输入值,纵坐标用于表征所述输出信号的输出值;
5、针对所述坐标曲线图建立输入值等距的至少四个参考点:n1、n0、p0、p1,该四个参考点分别对应的输入值为:xr(n-1)、xr(n)、xr(n+1)、xr(n+2),该四个参考点分别对应的输出值为:yr(n-1)、yr(n)、yr(n+1)、yr(n+2),且相邻两个参考点的输入差值为:t=xr(n+1)- xr(n);
6、对n0至p0之间的坐标曲线进行拟合:
7、在参考点n0和p0之间找到两个锚点b点和c点,其中n0标记为a,p0标记为d;
8、令a点的输入值为xa,锚点b的输入值为xb,锚点c的输入值为xc,d点的输入值为xd,a点的输出值为ya,锚点b的输出值为yb,锚点c的输出值为yc,d点的输出值为yd,其中:
9、yb=ya+ (1);
10、yc=yd- (2);
11、其中,n的取值为通过赋值得到;
12、获取传感器来的信号的输入值xin,且当xr(n)≤xin<xr(n+1)时进行拟合,并输出rout,令:
13、 (3);
14、令:
15、rout=rn+t(rp - rn) (4);
16、第一次复用式子(4):
17、输入rn =ya,rp =yb,输出rout1 =yab;和/或,
18、第二次复用上述式子(4):
19、输入rn = yb,rp =yc,输出rout2 =ybc;和/或,
20、第三次复用上述式子(4):
21、输入rn =yc,rp =yd,输出rout3 =ycd;和/或,
22、第四次复用上述式子(4):
23、输入rn =yab,rp =ybc,输出rout4 =yabc;和/或,
24、第五次复用上述式子(4):
25、输入rn =ybc,rp =ycd,输出rout5 =ybcd;和/或,
26、第六次复用上述式子(4):
27、输入rn =yabc,rp =ybcd,输出rout6 =yout;
28、如此得到输入值为xr(n)、xr(n+1)之间的拟合后的输出值。
29、所述第一次复用上述式子(4):具体是在线段ab上复用上述式子(4),找到e点,输出yab=ye;
30、所述第二次复用上述式子(4):具体是在线段bc上复用上述式子(4),找到f点,输出ybc=yf;
31、所述第三次复用上述式子(4):具体是在线段cd上复用上述式子(4),找到g点,输出ycd=yg;
32、所述第四次复用上述式子(4):具体是在线段ef上复用上述式子(4),找到h点,输出yabc =yef=yh;
33、所述第五次复用上述式子(4):具体是在线段fg上复用上述式子(4),找到i点,输出ybcd =yfg=yi;
34、所述第六次复用上述式子(4):具体是在线段hi上复用上述式子(4),找到j点,输出yout =yhi=yj;
35、还包括输出拟合后的信号曲线的方法,即依次连接点aehjigd得到输入值为xr(n)、xr(n+1)之间的拟合后的信号曲线。
36、 n的取值为大于2的自然数。
37、还包括获取b点输入值xb的步骤:
38、过n0点,做直线n1p0的平行线,并在平行线上取b点,且b点的输入值xb:
39、(xb- xr(n)):(xr(n+1)- xb)=1:m (5);
40、还包括获取c点输入值xc的步骤:
41、过p0点,做直线n0p1的平行线,并在平行线上取c点,且c点的输入值xc:
42、(xc- xr(n)):(xr(n+1)- xc)=m:1 (6);
43、以上通过上述式子(3)和(4)可得出xb和xc的输入值;
44、其中,m为反应系数。
45、 m的取值为2m-1, m为自然数。
46、所述第一次复用上述式子(4),具体是在所述第一滤波器上实现的;
47、所述第二次复用上述式子(4),具体是在所述第二滤波器上实现的;
48、所述第三次复用上述式子(4),具体是在所述第三滤波器上实现的;
49、所述第四次复用上述式子(4),具体是在所述第四滤波器上实现的;
50、所述第五次复用上述式子(4),具体是在所述第五滤波器上实现的;
51、所述第六次复用上述式子(4),具体是在所述第六滤波器上实现的。
52、还包括四点计算器,通过所述四点计算器计算第一控制点ya、第二控制点yd、第一锚点yb及第二锚点yc的值,其中,将参考点n0和p0,分别定义为第一控制点ya及第二控制点yd,并通过所述第一控制点ya、第二控制点yd的值及式子(1)和(2)分别计算所述第一锚点yb及第二锚点yc的值。
53、所述四点计算器获取传感器来的信号xin,并判断xr(n)≤xin<xr(n+1)是否成立,如成立,则进行拟合。
54、 所述第一滤波器的算法为:rout1=ya+t(yb- ya)= yab;
55、所述第二滤波器的算法为:rout2=yb+t(yc- yb) = ybc;
56、所述第三滤波器的算法为:rout3=yc+t(yd- yc) = ycd;
57、所述第四滤波器的算法为:rout4=yab+t(ybc- yab) = yabc;
58、所述第五滤波器的算法为:rout5=ybc+t(ycd- ybc) = ybcd;
59、所述第六滤波器的算法为:rout6=yabc+t(ybcd- yabc) = yout。
60、第二方面,本发明提供的技术方案为,提供一种磁性编码器,包括:
61、所述磁性编码器包括磁性传感器和信号处理电路,信号处理电路根据所述的信号拟合方法对磁性传感器来的输入信号基于贝塞尔曲线插值算法而进行拟合,得到拟合后的输出信号,且所述输出信号用于计算可产生磁场的转动件相对于磁性传感器转动的角度。
62、第三方面,本发明提供的技术方案为,提供一种光学编码器,包括:
63、所述光学编码器包括光学传感器和信号处理电路,信号处理电路根据所述的信号拟合方法,并用于对传感器来的输入信号基于贝塞尔曲线插值算法而进行拟合,得到拟合后的输出信号,且所述输出信号用于计算转动件相对于光学传感器转动的角度。
64、第四方面,本发明提供的技术方案为,提供一种控制系统,包括:
65、所述控制系统包括磁性编码器及控制器,所述磁性编码器包括磁性传感器和信号处理电路,信号处理电路根据所述的信号拟合方法对磁性传感器来的输入信号基于贝塞尔曲线插值算法而进行拟合,得到拟合后的输出信号,并输出给所述控制器,所述控制器根据所述输出信号执行相关动作。
66、与现有技术相比,本发明信号拟合方法、磁性编码器、光学编码器及控制系统的有益效果,能够通过贝塞尔曲线插值算法提高插值精度,降低计算量,采用高效的数值计算方法,实现了在多点数据插值拟合方面的应用。本发明可广泛应用于各种芯片实现的领域。
67、通过以下的描述并结合附图,本发明将变得更加清晰,这些附图用于解释本发明的实施例。