电子罗盘系统的制作方法

文档序号:6016233阅读:3087来源:国知局
专利名称:电子罗盘系统的制作方法
技术领域
本发明一般涉及车辆电子罗盘,具体涉及有改进数据滤波和/或航向确定的电子罗盘。
背景技术
电子罗盘作为汽车的附件已变得越来越普遍。图1表示典型电子罗盘电路10的总体结构。具体地说,典型电子罗盘电路包括磁传感器电路12,它包含Y轴传感器13和X轴传感器14。磁传感器电路12耦合到处理电路15,处理电路15的工作是在软件代码的控制下处理传感器电路12提供的数据,基于这种处理校准罗盘电路,和基于感器电路12提供的数据确定车辆航向。处理电路15耦合到存储校准数据的非易失性存储器16,因此,在每次点火循环时不需要再校准罗盘。从处理电路15发送的计算车辆航向到航向显示器18,为的是给车辆占用人显示航向。航向显示器通常合并在顶部仪表板或后视镜组件中。还可以配置用户输入开关20,能使用户与处理电路15交互作用,为了使处理电路15改变显示器18上显示的信息,手动方式重新校准,和/或输入车辆当前正在行进的地理区域。此外,提供功率源电路22,可以从车辆电池或点火中接收12伏电源,和把功率转换成罗盘电路10中各个元件所用的功率电平。
在这种现有技术的系统中,Y轴传感器13用于检测与车辆行进方向垂直的磁场,而X轴传感器14用于检测与车辆行进方向一致的磁场。两个传感器13和14通常安装成与地球表面平行。利用这种安装方式,若Y轴传感器13没有检测到磁场分量和X轴传感器14检测到正的磁场分量,则处理电路15确定该车辆航向是朝北。类似地,若Y轴传感器没有检测到磁场分量和X轴传感器检测到负的磁场分量,则处理电路15确定该车辆航向是朝南。同样地,若X轴传感器没有检测到磁场分量和Y轴传感器检测到正的磁场分量,则处理电路15确定该车辆航向是朝东。若X轴传感器没有检测到磁场分量和Y轴传感器检测到负的磁场分量,则处理电路15确定该车辆航向是朝西。若X轴传感器和Y轴传感器检测到相等的正磁场分量,则处理电路确定该车辆航向是东北。若X轴传感器和Y轴传感器检测到相等的负磁场分量,则处理电路确定该车辆航向是西南。若X轴传感器检测到的正磁场分量等于Y轴传感器检测到负磁场分量的绝对值,则处理电路确定该车辆航向是西北。若X轴传感器检测到的负磁场分量绝对值等于Y轴传感器检测到的正磁场分量,则处理电路确定该车辆航向是东南。在理想的情况下,在车辆转过360度的环路之后,若把磁传感器检测的输出电平相对于X轴和Y轴画出,则如图2中所示的圆A。
因为这种电子罗盘通常仅显示8个不同的航向(N,NE,E,SE,S,SW,W,和NW),又因为X轴传感器和Y轴传感器检测到的磁场分量不总是为零和不总是相等,罗盘处理电路通常计算相对于X轴和Y轴的航向角φ,并把这个航向角与角度阈值进行比较,该阈值确定8个不同航向显示中每个方向之间的边界。因此,把图2所示的圆形曲线A有效地分割成对应于8个不同显示航向的8个角度区。所以,罗盘处理电路仅仅确定航向角φ是在哪个角度区以确定显示8个航向中的哪个航向。
如上所述,理想的情况是Y轴传感器13和X轴传感器14的输出电平形成相对于Y轴传感器和X轴传感器的圆形曲线A,其理想圆的中心是在坐标系统的原点。然而,实际上,X和Y坐标平面上X和Y传感器输出的曲线图往往不能形成理想的圆,而且这个圆的中心也不与坐标平面原点一致。具体地说,该曲线图可能像个椭圆,且在X方向和Y方向上与原点之间有偏离,如图2中曲线B所示。若实际的曲线不是理想的圆且其中心点偏离原点,则处理电路不能利用简单的航向角计算以确定正确的航向。这种圆形曲线的位移和畸边通常是由车辆中铁磁材料的效应造成的,它可以改变X轴传感器和Y轴传感器检测的磁场。为了使航向计算变得容易,对罗盘电路进行校准以考虑车辆对检测磁场的影响。
不但必须对罗盘电路作最初的矫正,而且必须连续地再校准,这是由于车辆中铁磁材料对磁场造成的影响是随时间变化的,还由于对磁场的外部影响可能仅是暂时的。例如,车顶上安装的天线在通过具有大量铁磁材料的物体时可以引起磁场读数的起伏,例如,铁路轨道,桥梁,和大的建筑物,或当车辆运动通过洗车站时。所以,电子罗盘电路的校准和再校准有引起人们很大的注意。
在给Van Lente等人的美国专利No.4,953,305中,描述一种有自动连续校准的电子罗盘系统。这个专利公开一种校准技术,其中当车辆行进通过多个360°环路时,把传感器的数据进行累积,并把这些数据转换成X-Y坐标平面上的数据点。处理电路确定沿Y轴的累积数据最大值(Ymax),沿Y轴的最小值(Ymin),沿X轴的最大值(Xmax),和沿X轴的最小值(Xmin)。根据沿X轴的最大值和最小值,可以计算Xmin与Xmax之间沿X轴的变化范围。类似地,根据沿Y轴的最大值和最小值,可以计算Ymin与Ymax之间沿Y轴的变化范围。若这些变化范围不相等,则在这两个变化范围相等之前,处理电路可以调整X轴传感器和Y轴传感器中一个或两个传感器的增益。实施这个过程的目的是为了在下一步处理之前把数据的椭圆形曲线转变成数据的圆形曲线。随后,利用来自X传感器和Y传感器的最大值和最小值计算曲线B(见图2)的中心点(XE,YE)。然后,计算和随后利用X和Y的误差值(XE和YE),在从X传感器和Y传感器接收到时,分别用于偏置每个数据点。一旦罗盘完成了最初校准,基于沿X轴和Y轴随后累积的最大值和最小值,它连续地自动再校准。
与上述′305专利中公开的自动校准程序有关的一个问题是,它通常要求车辆行进多个360°环路以获得足够的数据,使系统确信该校准是准确的。这给车辆制造商提出一个问题,在把车辆装入到车辆运载装置以交付给车辆销售商之前,他必须驾驶每个车辆通过多个环路。遗憾的是,在装配车间往往没有足够的空间允许在这些环路上驾驶每个车辆,即使有这样的空间,该过程需要耗费宝贵的时间。若交付给销售商的车辆没有行驶通过足够数目的环路,则客户可能购买或试车未校准罗盘的车辆。在这种情况下,可能错误地使客户相信罗盘的工作不正常,因此,对罗盘提出不必要的担保要求。
几个专利公开了解决上述问题的各种方法。在给Geschke等人的美国专利No.6,192,315中公开一种校准程序,其中基于正安装罗盘的特定模型的预期车辆磁性,在安装到车辆中之前最初校准罗盘。在车辆行进通过多个360°环路以获得足够的数据之前,利用这个最初的校准。一旦获得足够的数据,罗盘切换到最新获得的校准数据,然后,利用上述′305专利中的技术,对罗盘连续地再校准。
给Olson等人的美国专利No.5,737,226公开一种校准技术,其中处理电路确定从传感器得到的原始数据是否建议不再需要精确地校准罗盘。在这种情况下,处理电路利用假设的半径得到间隔大于预定角度的两个端点。利用这假设的半径,给出圆的两个可能中心点。′226专利公开得到这两个端点之间的中间数据点,利用它识别两个中心点中哪个中心点可用于校准和随后在确定车辆航向时使用。
给Parks等人的美国专利No.6,301,794公开一种校准程序,其中在每次得到满足特定准则的三个数据点时对罗盘重新校准。一旦得到满足特定准则的三个数据点,它包括求平均和间隔准则,利用圆的公式计算圆中心,因此该圆必然包含这三个数据点。
给Al-Attar的美国专利No.4,807,462公开一种罗盘校准程序,它是基于采集三个数据点对罗盘进行校准。通过确定垂直二等分两条直线的相交点,这两条直线连接三个数据点中相邻的点,可以确定用于校准的圆中心。
虽然上述专利中的每个专利公开一种快速校准罗盘的校准程序,公开的一些技术或是过于敏感,需要频繁地再校准,因此,暂时的磁场扰动容易产生校准误差,或它们对磁场变化的响应不够快速地变化,实际上是永久性的。此外,每个上述校准程序对圆中心的计算是假设3个至4个点准确地分布在圆周上。如以下更详细地解释的,这些点中的任何一点可能偏离圆的周边,而该圆实际上较好地拟合得到的点。此外,上述专利公开的校准技术都没有考虑车辆的俯仰或地球磁场矢量的竖直分量强度。因此,若任何上述的罗盘是这样安装的,它的传感器是在相对于车辆可移动的结构上,例如,后视镜组件的外壳,则这些系统不能对外壳的运动提供快速和准确的响应。
给Bugno等人的共同转让美国专利No.6,023,229和6,140,933公开了安装罗盘传感器到后视镜外壳中的各种技术,它可以安装成与车辆成水平和垂直的枢轴连接。具体地说,公开各种检测后视镜外壳和传感器倾斜的机构。在检测到后视镜外壳倾斜时,发送信号到罗盘处理电路,指出已发生倾斜,从而使处理电路不采用发生任何剧烈变化的磁场矢量。然后,处理电路确定倾斜信号之前得到的数据点与倾斜信号之后得到的数据点之间矢量差作为误差补偿信号。在′229专利中,公开一种沿Z轴对准的第三个磁传感器的机构。一旦首先在X传感器和Y传感器输出中检测到剧烈的变化,则利用Z轴传感器确定是否发生倾斜。处理电路响应于X传感器和Y传感器中的这种剧烈变化,或通过识别误差矢量或通过重新启动校准,它取决于Z轴传感器是否检测到剧烈的变化。然而,这种罗盘系统没有利用Z轴传感器确定航向或识别校准时使用的圆中心。

发明内容
按照本发明第一个实施例,一种车辆电子罗盘包括磁传感器电路,用于检测地球磁场矢量的三个垂直分量,和产生代表该三个测定分量的输出信号;和耦合到磁传感器电路的处理电路,用于接收输出信号,模拟从三个测定分量导出的三维几何图形,在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到磁传感器电路的处理电路,用于接收输出信号,选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量,在参照选取的模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于检测地球磁场矢量的三个垂直分量,和产生代表该三个测定分量的输出信号;和耦合到磁传感器电路的处理电路,用于接收输出信号,确定几何图形,在参照几何图形的同时,计算车辆航向作为该至少两个测定分量的函数,确定误差矢量幅度,该矢量是从几何图形的周边延伸到三个测定垂直分量中最新的测定分量,以及若误差矢量幅度不大于预定的阈值,则产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到磁传感器电路的处理电路,用于接收输出信号,基于随时间的测定分量通过重复地比较和改变几何图形,迭代地选取模拟几何图形,在参照几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到磁传感器电路的处理电路,用于接收输出信号,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。处理电路配置成(a)建立多个角存储桶,每个角存储桶对应于模拟几何图形中互不相交的角度范围;(b)累积包含多个数据点的点组,每个数据点对应于其他数据点以外在不同车辆航向读出的测定分量;(c)计算该点组中数据点的航向角;(d)选取数据点的航向角是在某个角度范围内的角存储桶;(e)分配数据点到步骤(d)中选取的角存储桶;(f)重复步骤(c)至(e),直至所有的数据点已分配到角存储桶;和(g)基于该点组中的数据点,调整模拟几何图形。
按照本发明另一个实施例,一种车辆电子罗盘包括至少包含两个检测元件的磁传感器电路,每个检测元件检测地球磁场矢量的一个分量,该分量垂直于其他传感器的测定分量,和产生代表该测定分量的输出数据信号;和耦合到所述磁传感器电路的处理电路,用于接收输出数据信号,关联来自每个所述检测元件的输出数据信号以建立数据点,利用给最新数据点比以前数据点较大权重的加权平均,应用平滑滤波器以平滑该数据点,计算车辆航向作为最新数据点的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括至少包含两个检测元件的磁传感器电路,每个检测元件检测地球磁场矢量的分量,该分量垂直于其他传感器器的测定分量,和用于产生代表测定分量的输出数据信号;和耦合到所述磁传感器电路的处理电路,用于接收输出数据信号,关联每个所述检测元件的输出数据信号以建立数据点,确定数据点位置相对于至少一个以前数据点的二阶导数,比较二阶导数的幅度与第一阈值以确定检测元件的输出数据信号是否有噪声,计算车辆航向作为最新数据点的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括至少包含两个检测元件的磁传感器电路,每个检测元件检测地球磁场矢量的一个分量,该分量垂直于其他传感器测定的分量,和产生代表测定分量的输出数据信号;和耦合到所述磁传感器电路的处理电路,用于接收输出数据信号,关联每个所述检测元件的输出数据信号以建立数据点,通过监测检测电平的变化,确定检测元件输出数据信号的噪声电平,设置延迟计数器作为噪声电平的函数,在延迟计数器终止之前避免利用几何模拟的输出数据信号,计算车辆航向作为最新数据点的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,选取椭圆模拟几何图形,在参照椭圆模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的若干个参考数据点确定校准点,确定噪声阈值随作为若干个参考点的函数计算当前校准点,确定测定分量是否大于噪声阈值,若测定分量不大于噪声阈值,则在参照校准点的同时,计算车辆航向作为该至少两个测定分量的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的多个参考数据点,确定模拟几何图形,确定噪声阈值作为模拟几何图形与参考数据点拟合程度的函数,该参考数据点用于确定模拟几何图形,若测定分量不大于噪声阈值,则在参照模拟几何图形的同时,计算车辆航向作为该至少两个测定分量的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,至少包含第一检测元件和第二检测元件,每个检测元件用于检测地球磁场矢量基本横向的垂直分量,和第三检测元件,用于检测地球磁场矢量的基本纵向分量,所述检测元件安装在反射镜外壳中,和产生代表该三个测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,通过监测车辆行进通过预定车辆航向范围期间的所述第三检测元件,确定反射镜外壳的倾斜角,补偿第一检测元件和第二检测元件测定分量的反射镜外壳倾斜角,计算车辆航向作为第一检测元件和第二检测元件测定分量的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于至少检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的第一组参考数据点,选取第一模拟几何图形,在参照第一模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,产生代表计算航向的航向信号,基于在选取第一模拟几何图形之后接收的参考数据点,选取第二模拟几何图形,若第二模拟几何图形与第一模拟几何图形有很大的不同,则利用第二模拟几何图形,以及若随后得到的参考数据点更好地拟合第一模拟几何图形,则重新选取第一模拟几何图形。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于至少检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的至少5个参考数据点,确定模拟几何图形,在参照模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
按照本发明另一个实施例,一种车辆电子罗盘包括磁传感器电路,用于检测地球磁场矢量的三个垂直分量,和产生代表该三个测定分量的输出信号;俯仰滚转检测电路,用于测量磁传感器电路的俯仰和滚转;和耦合到磁传感器电路和俯仰滚转检测电路的处理电路,用于接收输出信号,补偿测量俯仰和滚转的测定分量,计算车辆航向作为至少两个补偿测定分量的函数,和产生代表计算航向的航向信号。
在参照以下的技术说明,权利要求书和附图之后,本发明的这些和其他的特征,优点和目的对于专业人员是显而易见的。


在这些附图中图1是现有技术电子罗盘电路的电子电路方框图;图2是现有技术电子罗盘系统利用的校准技术曲线图;图3是按照本发明构造的电子罗盘电路的电子电路方框图;图4是至少包含本发明部分电子罗盘电路的后视镜组件的前正视图;图5是反射镜外壳内安装磁检测元件的后视镜组件中切去部分侧面的正视图;图6是后视镜组件的安装结构底部安装磁检测元件的后视镜组件中切去部分侧面的正视图;图7是反射镜外壳内安装磁检测元件的后视镜组件顶部的平面图;图8是罗盘检测的本地球面相对于世界球面的曲线图;图9是罗盘检测的本地球面相对于各个坐标轴的曲线图;图10是罗盘检测的样本数据组相对于本地球面的曲线图;图11是按照第一个实施例罗盘处理电路的各个运行状态的状态图及它们之间的关系;图12A-12D是本发明第一个实施例电子罗盘处理电路执行的罗盘流程控制程序的流程图汇集;图13是图12A-12D中罗盘流程控制程序期间调用的噪声分析子程序的流程图;图14是图12A-12D中罗盘流程控制程序期间调用的第一点组构造子程序的流程图;图15是图12A-12D中罗盘流程控制程序期间调用的最佳拟合中心点调整子程序的流程图;图16是图12A-12D中罗盘流程控制程序期间调用的最佳拟合半径调整子程序的流程图;图17是图12A-12D中罗盘流程控制程序期间调用的航向计算子程序的流程图;图18是图12A-12D中罗盘流程控制程序期间调用的角存储桶更新子程序的流程图;图19是图12A-12D中罗盘流程控制程序期间调用的第二点组构造子程序的流程图;图20是图12A-12D中罗盘流程控制程序期间调用的本地球面拟合计算子程序的流程图;图21是图12A-12D中罗盘流程控制程序期间调用的点组重新设置子程序的流程图;图22A-22G是本发明第二个实施例电子罗盘处理电路执行的罗盘流程程序的流程图汇集;图23是罗盘传感器数据和相关模拟几何图形的曲线图;图24是按照本发明噪声分析功能的方框图;图25是图24所示噪声分析功能的更详细方框图;图26是延迟信号与定义为DX22+DY22+DZ22平方根的噪声信号之间关系的曲线图,其中noiseFactor=10,delayIntercept=-3,和maxDelay=32;图27是延迟信号与定义为DX22+DY22+DZ22平方根的噪声信号之间关系的曲线图,其中noiseFactor=10,delayIntercept=-4,和maxDelay=32;图28是分成12个相同大小的角存储桶的圆形曲线图;图29是位于Zeeland,Michigan,USA的车辆反射镜外壳位移导致的罗盘读数典型图形;图30是位于Taipei,Taiwan的车辆反射镜外壳位移导致的罗盘读数典型图形;图31表示在反射镜外壳发生位移之前和之后罗盘处理电路获得的信息曲线图;图32是按照本发明另一个实施例罗盘系统的示意图形式电路图;图33A是按照本发明构造的后视镜组件侧面的正视图;图33B是按照本发明构造的后视镜组件后部的正视图;图33C是按照本发明构造的后视镜组件顶部的平面图;图34A是按照本发明构造的后视镜组件前部的正视图;图34B是按照本发明构造的后视镜组件顶部的平面图。
具体实施例方式
图3表示按照本发明构造的电子罗盘电路100。罗盘电路100包括至少有两个检测元件104和106的磁传感器(即,地磁仪)电路102,用于检测地球磁场矢量的垂直分量,和产生代表该测定分量的输出信号。在本发明的一些实施例中,最好提供第三个传感器108,用于检测地球磁场矢量的第三个垂直分量。电子罗盘电路100还包括耦合到磁传感器电路102的处理电路110,用于接收来自传感器电路102的输出信号。
处理电路110计算车辆航向作为地球磁场矢量中测定分量的函数。处理电路110还产生代表计算航向的航向信号。这个航向信号可以提供给车辆中的任何其他电子元件,且最好提供给航向指示器装置114,航向指示器装置114提供车辆航向指示给车辆占用人。航向指示器可以配置成提供车辆航向的视觉或听觉指示。最好是,航向指示器114是显示装置,用于直观显示车辆航向。然而,应当理解,处理电路110产生的航向信号可以经离散布线或经耦合到车辆总线的车辆总线接口120提供给车辆内的任何其他电子元件,例如,导航系统等。例如,这种导航系统能够直接显示航向或按照车辆的当前航向改变显示地图的方向。经专用线路或车辆或局域总线,例如,LIN或CAN总线,可以发送航向信号到导航系统,航向指示器(即,显示器),或其他的车辆附件或元件。为了与专用线路的连接,可以利用诸如RS485接口的接口。
如上所述,航向信号最好提供给显示装置形式的航向指示器114。显示装置可以显示字母数字格式的航向(即,N,NE,E,SE,S,SW,W,和NW)。在共同转让的美国专利No.6,346,689中公开一个合适显示器的例子。这个专利中公开的显示器不仅显示航向信息,还同时显示从外部温度传感器122提供的当前外界温度。或者,若要在同一个显示器上显示温度或其他信息,但不是同时显示,可以提供合适和常规的用户输入开关116,允许用户卷屏,切换,或有选择地激活或去激活罗盘,温度,和/或其他的显示信息。
在共同转让的美国专利No.6,356,376中公开另一种形式的显示器。具体地说,公开一种图形罗盘显示器,用于提供图形格式的航向指示。还可以利用这个专利中公开的其他形式显示器,包括真空荧光显示器,LED显示器,有机LED显示器,液晶显示器,发光聚合物显示器,等等。
磁传感器电路102可以是任何常规的结构,它改变成提供另一个传感器108的输出。磁传感器电路可以利用磁通门传感器,磁感应传感器,磁阻抗传感器,或磁电阻传感器。美国专利No.5,632,092中公开磁电阻传感器的例子。最好是,磁传感器电路102的结构是按照Timothy R.Friend等人于2001年11月20日申请的共同转让美国专利No.09/989,559中公开的任何实施例,其标题为“MAGNETOMETER HAVING A DYNAMICALLY ADJUSTABLEBIAS SETTING AND ELECTRONIC VEHICLE COMPASSINCORPORATING THE SAME”。应当注意,磁传感器电路中利用的任何微处理电路可以与处理电路110中的任何这种电路集成,然后进行合适地编程以完成这两个电路所有必需的功能。或者,可以分开地保持微处理电路。
电子罗盘电路110还可以包含非易失性存储器112,它可以是在处理电路110的外部,或可以内部合并到它的一个元件中。处理电路110利用非易失性存储器112存储最佳拟合的模拟数据,以及系统是由车辆点火供电的情况下在点火循环之间需要存留的任何其他信息。
电子罗盘电路100还可以耦合到全球定位系统(GPS)接收器118。来自GSP 118的信息可以直接发送到处理电路110或间接地通过车辆总线和总线接口120或通过局域总线。处理电路110可以利用来自GSP 118或诸如GLONASS或LORAN的任何其他定位系统的信息以实现各种目的。具体地说,可以利用该信息识别车辆当前行进在哪个地理区域,因此,处理电路110可以利用正确的磁场偏移,它相当于该特定地理区域中检测到磁北极与实际北极的偏移。此外,可以利用GSP 118的信息导出车辆的速度,行进的距离,或者是车辆是否在运动的信息。还可以利用GSP 118的信息计算车辆航向以及把这个车辆航向与利用磁传感器电路102计算的航向进行比较,为的是确定是否需要再模拟或再校准。在Robert R.Turnbull等人于2000年6月28日申请的共同转让美国专利No.6,407,712中,其标题为“REARVIEW MIRROR WITH INTEGRATED MICROWAVERECEIVER”,以及在Robert R.Turnbull等人于2001年4月5日申请的美国专利申请出版物No.2002/0032510 A1中,其标题为“VEHICLE REARVIEW MIRROR ASSEMBLY INCORPORATINGCOMMUNICATION SYSTEM”,详细地公开罗盘电路利用的这种GSP信息。在Robert R.Turnbull等人于2001年6月15日申请的共同转让美国专利申请出版物No.2002/0193946 A1中公开这样一种系统,其标题为“AUTOMOTIVE MIRROR WITH INTEGRATEDLORAN COMPONENTS”,在该系统中LORAN接收器和/或天线合并到后视镜组件。
如上所述,处理电路110可以经车辆总线接口120耦合到车辆总线。车辆总线上提供的信息对于处理电路110是有用的,该信息包括车辆速度,行进距离,车辆是静止或运动的,和车辆的转向盘是否正在转动。车辆上的倾角仪或其他形式滚转传感器可以提供有用的其他信息。
如图3所示,罗盘电路110还可以包括功率源电路124,它从车辆电池或点火系统耦合到电源线。功率源124把从车辆提供的功率转换成罗盘电路中各种电子元件可利用的电压。在车辆电池或点火系统中电压大于12伏的情况下,可以利用诸如共同转让美国专利申请No.6,262,831中公开的功率源电路。
如以下所描述的,全部或部分的电子罗盘电路100安装在车辆的后视镜组件上或组件内。然而,可以理解,全部或部分的罗盘电路100可以安装在车辆内的任何地方,例如,顶部仪表板,安装在前挡风玻璃的仪表板,车辆A柱子上的仪表板,车辆的仪表盘,或任何其他的位置。例如,传感器104,106和任选的传感器108可以安装在后视镜组件上或组件内,而罗盘系统的其余部分可以处在车辆的任何位置,例如,顶部仪表板或仪表盘。传感器的输出可用于其他的车辆系统,例如,导航系统,前灯控制系统,和/或远程信息处理系统。
图4是至少包含字母数字显示形式航向指示器114的后视镜组件140正视图。图5表示这种后视镜组件的侧视图,其切开部分用于展示安装到组件140的反射镜外壳144内电路板150的传感器104,106和任选传感器108。图6表示后视镜组件140的侧视图,但电路板150上安装的传感器104,106和108设置在后视镜组件140中安装结构145的安装底部146。图7表示图4和5所示后视镜组件140的顶视图。如图4至图7中的每个附图所示,后视镜组件140包含枢轴耦合到安装结构145的反射镜外壳144,安装结构145又可以安装到车辆挡风玻璃的内侧,或可以安装到顶部结构或沿车辆挡风玻璃顶部延伸的headliner。外壳144包含仪表框142,仪表框142放置在外壳144正面的周边以使反射镜单元128定位。
反射镜单元128最好是电致变色镜单元,它改变反射率以响应所加的电压信号。如图3所示,罗盘电路100的处理电路110可以耦合到电致变色(EC)驱动电路126,驱动电路126又提供驱动电压给电致变色镜单元128以及电致变色镜单元以外的任何单元。可以对处理电路110编程以响应环境/眩光传感器130的输出信号。具体地说,眩光传感器是这样设置的,它可以检测来自车辆后部的光,而环境光传感器通常设置在反射镜外壳144的相反侧,可以检测车辆前方的环境光强度。响应于传感器130检测的光强,处理电路110可以控制EC驱动电路126,从而控制电致变色镜单元128以及电致变色镜单元以外任何单元的反射率。合适的EC驱动电路是众所周知的,在共同转让的美国专利No.6,247,819中公开一个EC驱动电路的例子。后视镜组件140可以包含合适的用户输入开关116,允许用户激活或去激活电致变色镜反射率的自动控制。可以提供指示器LED 132等单元以指出电致变色镜是否处在自动状态。
用户输入开关116可以有后视镜组件上或车辆内任何附件上通常利用的任何形式。在共同转让的美国专利No.6,407,468和6,420,800中公开用户输入开关的合适结构,其标题为“REARVIEW MIRRORWITH BUTTONS INCORPORATING DISPLAY”。另一种合适的结构是在共同转让的美国专利No.6,471,362中公开,其标题为“MIRROR WITH IMPROVED BUTTON CONSTRUCTION”。
如图4所示,航向指示显示器114可以安装在后视镜单元128之后,其透明窗口制成在后视镜128的反射面上,允许通过后视镜观看航向。然而,后视镜128还可以有这样的结构,它包含上述共同转让的美国专利No.6,356,376中公开的特征。这个专利公开各种反射镜结构,允许观看放置在后视镜之后的显示器,但没有完全消除显示器前面的反射性。还应当理解,合适的显示器114或其他的航向指示器可以放置在仪表框142上或其附近,或在安装结构145上或其附近,或在后视镜组件140附近或远离该附件。附加的信息显示器可以合并在反射镜组件中,例如,美国专利No.6,170,956中所公开的乘客侧面充气抑制指示显示器。
如图5所示,磁传感器单元104,106,和108可以安装到反射镜外壳144中的电路板150上。电路板150可以是竖直的,水平的,或任何其他的取向,只要传感器大致是这样的取向,X轴传感器104的轴大致与车辆的纵轴(即,行进方向)平行,而Y轴传感器106的轴相对于车辆大致是水平和横向的并与X轴传感器104垂直。因此,X轴传感器104和Y轴传感器106可以是这样安排的,它们的轴都是在水平面上。如果有Z轴传感器108,则它可以安排成其轴是大致竖直的。Z轴传感器108的轴最好垂直于传感器104和传感器106的轴。
若传感器安装到反射镜外壳144上,则最好是在反射镜外壳144内安装倾斜传感器(未画出),用于检测反射镜外壳和传感器单元用人工方式发生的倾斜,特别是在不利用Z轴传感器108的情况下。在共同转让的美国专利No.6,023,229和6,140,933中公开合适倾斜传感器的例子。然而,如以下所描述的,若配置Z轴传感器108,则倾斜传感器不是必需的。
图6表示传感器104,106,和108安装到安装结构145安装底部146内的另一种结构。在安装底部146内安装传感器104,106,和108的优点是,它们与车辆之间可以保持固定的关系。
在共同转让的美国专利申请No.09/800,460中公开另一种磁传感器的合适安装方案,其标题为“SYSTEM FOR CONTROLLINGEXTERIOR VEHICLE LIGHTS”。在这个专利申请中,罗盘传感器安装到支承结构上,在与反射镜安装底部连接的外壳内可以调整该结构的位置。还利用这个申请中公开的支承结构以支承前灯控制系统和/或雨水检测系统中的摄像机系统。外壳内的支承件可以调整位置以保证安装的摄像机相对于车辆大致成水平方向。因为不同车辆上挡风玻璃的角度差别很大,在固定的外壳内调整摄像机和罗盘传感器的能力可以使它适用于各种车辆模型平台的结构,而不必重新设计每种不同车辆的每个反射镜安装结构。按照这种方式安装罗盘传感器的优点是,不但保证X和Y传感器相对于车辆是水平安装的,而且可以利用从摄像机得到的图像,例如,当车辆放置在目标的前方时,可以保证罗盘传感器粘贴到车辆挡风玻璃之后有正确的取向。
可以利用的一种形式传感器包装是Aichi Steel和Aichi-MI开发的磁阻抗传感器包装。这种包装包含两个磁阻抗(MI)传感器,它们按照互相垂直的取向制成在集成电路上。另一种Aichi-MI传感器集成电路包含三个MI传感器。相同的传感器包装技术可用于集成传感器与罗盘传感器电路的其他元件,它包含处理电路110的微处理器。这种MI技术不同于磁感应技术,MI传感器与检测电感器上的磁心形成电路连接。此外,与现有的传感器比较,这种传感器的尺寸可以做得极小,因此,它可以与所需的信号处理集成电路一起埋入到小型SMT包装中。由于它们具有很小的尺寸,MI传感器不但可以放置在反射镜外壳中,而且可以放置在安装臂/管中,或连接到管道座上。MI传感器还可以合并到多传感器组件中,它包含诸如光电传感器的传感器。MI传感器的磁心材料可以是钴或铁基的非晶体或纳晶。可以利用的各种磁心几何形状是条状,带状,或线状。线状磁心往往比条状或带状有较高的有效磁导率,从而有较高的灵敏度。
在需要安装GPS天线到后视镜组件140的情况下,天线的安装可以按照共同转让的美国专利No.6,396,446中描述的技术,其标题为“MICROWAVE ANTENNA FOR USE IN A VEHICLE”。在共同转让的美国专利申请出版物No.2002/0032510 A1中公开另一种合适的天线,其标题为“VEHICLE REARVIEW MIRROR ASSEMBLYINCORPORATING COMMUNICATION SYSTEM”。
我们已描述了电子罗盘系统的硬件,以下给出处理电路110执行本发明过程的综述。在综述之后,参照图11-21详细描述说明本发明概念的第一个实施例。
如上所述,在这个优选实施例中,磁传感器电路102包含大致竖直安排的Z轴检测元件108,用于检测与X轴传感器104和Y轴传感器106检测分量垂直的磁场分量。因此,本发明的过程最好是在三维坐标系统中变换数据。理想的是,变换的数据对应于一个球面,而不是单个固定平面上的圆。
为了更好地说明本发明的原理,现在参照表示罗盘的磁传感器坐标系统的图8,它改变成说明真正北极与磁北极的偏移和传感器取向相对于车辆的位移。更具体地说,我们画出部分的“世界球面”以及标记为Xw,Yw,Zw的坐标平面,其中Xw坐标轴与车辆的行进方向对准且大致是水平的(即,与地球表面相切),Zw坐标轴是竖直的(即,指向地球的中心),而Yw坐标轴是水平的,且横向设置成与车辆的行进方向垂直。
真正北极(即,地球转轴的北极)实际上与磁北极不一致,所以,磁针罗盘必须考虑到磁倾角D,它相当于磁北极与放置罗盘的地球表面上特定位置的实际北极之间角偏移。磁倾角D相对于地球表面上各个地理区域的变换是已知和容易得到的。为了说明磁倾角,用虚线和标记Xv,Yv,Zv表示第二坐标平面,其中Xv轴和Yv轴只是从Xw轴和Yw轴绕Zw,Zv轴相等地转动了角度D。
假设理想的条件,罗盘传感器是永久性固定地安装到车辆上,其中X轴传感器与车辆的行进方向对准,Z轴传感器完全沿竖直的方向对准,而Y轴传感器与X轴传感器和Z轴传感器垂直对准,我们似乎只需要从检测的地球磁场矢量相对于X轴传感器和Y轴传感器形成的角度φ减去磁倾角D以导出车辆的真正航向。然而,当传感器安装到相对于车辆可以运动的外壳上时,例如,后视镜外壳144(见图5和7),传感器坐标系统的Xm和Ym坐标轴相对于Xv和Yv坐标轴转动相同的角度φm,而Zm轴保持与Zw轴一致。只要假设或可以识别反射镜转动角φm,则它可以从航向角以及磁倾角D中减去以给出正确的航向。
若反射镜外壳144相对于它的水平横轴(即,它的Ym轴)是倾斜的以适应不同高度的驾驶员(见图5),则计算就变得非常复杂。这种相对于Ym轴的倾斜可以保持得到的Yr轴与Ym轴一致,但从Xm和Zm轴转动Xr和Zr轴一个角度θm。
如上所述,车辆的磁性以及地球磁场以外的外磁场都影响传感器检测的磁场。若没有这些影响以及传感器相对于水平方向不倾斜(即,θm=0°),则从传感器得到的数据曲线是横切球面上的圆,该球面与圆有相同的半径和中心点,而中心点对应于坐标平面的原点,半径对应于地球磁场矢量的幅度,该圆是在平行于传感器的水平X-Y坐标平面的平面上(即,z分量值至少局部保持恒定)。然而,倾斜反射镜使保持水平的圆相对于X-Y平面形成倾斜角θm,因此,z分量值作为车辆方向的函数而变化。若仅仅考虑和画出X和Y传感器的输出,则X-Y平面上的数据呈现椭圆形。基于一般人的平均倾斜角,可以把假设的反射镜倾斜角θm作为因子考虑反射镜的倾斜,或者,当车辆行驶通过360°的转角时,通过监测从Z轴传感器得到的数据变化测量反射镜的倾斜。
车辆磁性和外磁场的影响通常使本地球面的中心(scxs,scys,sczs)与传感器坐标系统的原点(x0,y0,z0)发生很大的位移。因为原点的x,y,和z值为0,补偿这个位移可以从每个矢量RDG中减去矢量SC得到,矢量SC是从原点延伸到世界球面的中心,而矢量RDG是从原点延伸到磁传感器数据的对应点(rdgxs,rdgys,rdgzs)(见图9和10)。这个补偿是通过从传感器得到的每个数据点(rdgxs,rdgys,rdgzs)减去本地球面中心点的x,y,和z值(scxs,scys,sczs)完成的。合成矢量V是从本地球面的中心延伸到该数据点。如图8和9所示,本地球面的半径矢量为RS(其幅度为rsxsr)和中心点为(scxs,scys,sczs),最初它是假设的,然后通过以下描述的模拟序列进行重新计算。为了有助于模拟过程,从矢量V中减去当前的半径RS,可以确定该点(rdgxs,rdgys,rdgzs)的误差矢量VE。可以计算从传感器得到每个数据点的误差矢量VE,然后取平均或利用它确定模拟数据(即,中心点(scxs,scys,sczs)和半径rsxsr)的质量。如以下所描述的,随后可以改变中心点和半径以得到与从传感器得到数据有“最佳拟合”解,该解有最小的平均误差。然后,可以存储提供最佳拟合的中心点和半径,随后可根据最新的传感器读数确定航向角φs,从而可以显示车辆航向。
共同转让的美国专利No.6,023,229和6,140,933描述利用球定位(或倾斜和/转动)传感器校正航向角和确定反射镜外壳144已运动,从而触发再模拟或再校准。
在许多车辆中,驾驶员位置对于不同的驾驶员是足够一致的,反射镜围绕竖直轴的角度调整φm的变化通常是相对地小,因此,校正这种变化与补偿车辆中扰动磁场效应的变化比较是不重要的,当反射镜的位置和/或角度取向相对于这个扰动磁场发生变化时。对于两个球面反射镜装置,这个问题是最显著的,除了角度取向变化以外还有大的位置调整。在两个球面反射镜装置中,反射镜位置传感器也是很复杂的。此外,许多反射镜用于地球磁场的竖直分量远远大于水平分量的部分世界中,因此,在某些情况下,反射镜外壳绕水平轴Ym的倾斜角θm增量对于罗盘读数的影响几倍于绕竖直轴Zm转动相同幅度φm角所产生的影响。
对于利用反射镜外壳安装罗盘的驾驶员,合理的方案是,调整反射镜到很大不同位置的两个或多个驾驶员一起旅行和分担驾驶。在这种情况下,车辆可能在较长的时间内大致沿一个方向行进,因此,需要有这样的反射镜,它连续或准连续地评价和更新模拟并基于行进方向的范围作出有效的模拟调整,行进方向的范围远远小于360°,和甚至远远小于180°或90°。需要利用这样的准则,它确定用于显示航向信息的最佳拟合的模拟数据在何时是令人满意的。还需要基于与拟合样本数据的模拟几何质量十分有关的这个确定,它相对于累积转数跨越角度的最小阈值。例如,可以利用与最小二乘方有关的准则测量拟合质量。然后,在拟合模拟几何中每个样本数据点的误差平方平均值一般较低并在可接受的范围内时,最好是,在它还收敛到主要的最小值时,可以利用模拟几何作为计算和显示航向信息的基础。即使样本点跨越方向的总变化是小的,或许远远小于90°,这可以是正确的,误差平方平均值的可接受准则可以是设置的阈值或与其他因素有关的变量。这是一个例子,可以利用许多其他拟合质量的测量方法,且可接受准则可用于其他或附加的罗盘数据。
在以上的方案中,一些最大变化的方向可以发生在驾驶员从高速公路退出再进入高速公路时驾驶员的变化。需要一种快速和可靠地获取和筛选读数的系统,利用快速和往往相对大的行进方向变化,它通常发生在驾驶员开始的一段旅程。根据以下的描述可以明白,本发明的罗盘系统展示这些所需的特征。
传感器读出的原始数据点可以被滤波和/或利用多个读数取平均。可以包括诸如分布和标准偏差的其他数据作为稳定性指示器的读数。可以应用任选的数据转换,它可以包括以下讨论的一种或多种转换。可以确定和存储比例因子作为部分的工厂校准,它可用于模拟,校准,或均衡地磁仪读数中两个或多个方向分量的增益。在与该读数汇编的统计数据基础上,在数据点拟合当前模拟几何的基础上,以及在该读数的竖直Z轴分量与当前样本点的读数如何一致和附加准则的基础上,可以任选地评价数据点。若在这些评价下的数据点是合格的,以及若模拟几何作为处理磁场数据读数的基础是合格的,则产生和任选地显示基于获取数据点的航向指示。处理的地磁仪数据还可用于其他的目的。
评价数据点是用于登录或立刻包含在激活的样本组,而当前存储的激活和非激活数据点评价是用于状态的变化或样本组中的删除或替换。然后汇编和保持样本组。良好样本组的发展通常改进罗盘读数的准确性并作为相对快速响应于模拟要求中位移的基础,位移是由于反射镜的调整,而磁传感器包含在可移动的反射镜外壳中。
其次,完成样本点的分析以提供从地磁仪读数获取航向信息所需的数据。一种优选的方法是选取和精炼图形,该图形是地磁仪读数响应于地球磁场的图形指纹特征,这是由于改变的车辆方向和统计拟合这个图形到变化取向的车辆中记录的一组地磁仪读数。然后,来自这个图形拟合过程的数据用于提取随后读数的分量,它主要是由于来自其他磁扰动源的扰动效应的地球磁场,特别是在车辆内的磁扰动源。提取的读数和/或提取过程中得到的数据用于计算航向。虽然在每个实施例中不是必需的,拟合算法可以产生指出拟合质量的数字,这个数字最好用于迭代序列中以找到给出近似最佳拟合图形的改动和/或取向。最好还利用上述数字所示的拟合质量作为其他判定基础的一个变量。例如,拟合质量可用作确定拟合是满意的部分基础,它可用作处理和输出航向指示的基础。若图形的不同开始条件导致收敛于拟合过程中不同的本地最小值,则拟合质量可用于部分确定选取哪个作为最佳拟合。在这种情况下,若一个本地最小值不是明确的最佳拟合,则可以禁止使用该拟合作为计算航向信息的基础并精炼该样本组以解决不确定性。最好是,用于拟合算法的计算过程的成分可以有其他的用途。
作为例子,在一个优选实施例中,以矢量形式计算读数与模拟图形的距离作为每个读数的上述误差矢量VE。距离的平方,即,误差矢量幅度的平方,用在拟合计算中,而误差矢量的分量用在算法中,可以有效地预测迭代过程中图形的位置或变化以确定近似的最佳拟合。此外,用于确定误差矢量的计算直接用于转换误差矢量到所需的基础坐标系统。此外,在根据图形确定该点距离中计算的角度直接用于确定给定读数的航向角,或许还可以确定哪些读数互相接近和近似地测定它们的间隔。该点与近似的最佳拟合图形的距离可以用作增加或拒绝样本组中点的部分基础,它可用于确定最佳拟合图形,或接收或拒绝用于确定当前航向的点。在这个优选配置中,大部分的相同计算用于分析样本组中的每点,它又作为部分的计算以评价拟合质量,确定迭代序列中下一个拟合近似,和应用当前的最佳拟合图形以处理各个读数,从而部分地评价它们的质量和确定相关的航向。
如上所述,可以连续或周期性地调整模拟几何图形以便更好地拟合样本点。例如,若模拟图形或几何形状是球面,则可以调整球面的半径。球面的半径通常与地球磁场强度或其水平分量有关,它取决于所使用的模拟类型。在任何情况下,这个参数对于给定的位置应当是稳定的,即使发生诸如车辆磁化图形的变化或对安装传感器的反射镜进行调整。具体地说,当传感器安装在反射镜上时,理想的情况是,在反射镜位置变化之后,以最小的数据量快速地调整模拟图形。对于这种变化,最佳拟合半径不可能改变很大,即使有也很小,此外,正确确定半径通常需要在模拟图形上有均匀分布的样本点。优先保留模拟图形中以前的最佳拟合半径是明智的,直至样本点的分布和质量适合于给出正确调整这个数值的数据。利用以前确定的半径,可以有效利用较局限的样本组以便快速和合适地响应于罗盘模拟中所需的变化。最好是,也把这个方法扩展到其他的参数,即,建立可以调整参数的一般层次以得到近似的最佳拟合,它是根据在模拟变化时或在预期车辆环境的相对短期变化时参数有相对稳定性。最好保留在这些变化中参数有最稳定的数值,直至得到可能导致改进设置的数据。
在一些实施例中,可能有这样一些情况,需要变换到不同的模拟参照图形,而不仅仅是调整现有的图形,例如,在圆形与椭圆形参照图形之间的变换,或许是在二维图形与三维图形之间的变换。
然后,把模拟图形与激活样本点进行比较,并给出拟合质量的指示。拟合质量的数字表示和诸如最小二乘方拟合的分析是理想的。随后,可以预测模拟图形的形状和/或位置的变化以获得更好饿拟合。这些模拟的范围可以从阶跃通过可能选择的阵列到计算绝对或增量改动以确定用于下一个最佳拟合的模拟图形。此外,为了限制程序大小和计算时间,最好是利用预测过程,它与其他的必需计算分享中间数字结果,例如,用于测量拟合质量的计算。可以迭代地应用预测到以达到近似的最佳拟合。
在模拟的最初开始或主要位移之后,样本组可以局限于非常小部分的模拟几何。在这种情况下,有利的是增加其他的约束,为的是利用有限的样本组获得合理的准确模拟。例如,在利用其半径大致相当于地球磁场水平分量的模拟球面时,当车辆转动通过完整的圆时,球面中心通常应当大致落在磁场矢量所经历的圆中心。在这种情况下,模拟球面的中心大致落在样本点圆的水平面上。这大致也是样本点重心的竖直分量确定的水平面。因此,当样本点的分布不是足够均匀地以确定这个平面时,有利的是约束模拟球面的中心到包含样本点重心的水平面(可以给每点分配相等或不相等的权重)。
另一个可能发生的问题是,样本组中的样本点分布在整个范围的有限部分,且样本组没有至少包含互相足够分开的三个点。在这些情况下,很难区分球面的正确中心与样本组中相对于各点的第一点镜像的中心点。另一个给出收敛到正确中心点问题的开始中心位置是在大致连接所描述的两个中心点直线的垂直平分线上。在这种情况下,例如,利用以上描述的预测器,收敛是这样的,它首先放置数据点的重心接近于模拟球面,然后,慢慢地收敛到正确的中心或不正确的镜像中心。处理该问题的优选方法是例行地或在出现收敛质量问题的情况下,尝试几个开始中心点,这些点可能大致落在围绕样本点重心的圆上。对于每个开始点,应当进行迭代操作以获得给定开始点近似的最佳拟合。然后,对于每个开始位置,应当比较对应于近似最佳拟合的中心,若它们大致不是相同的点,则应当比较每点的拟合质量。若一个点的拟合质量远远优于其他点的拟合质量,则与它对应的点应当是我们所选取的点。否则,应当精炼样本组,直至得到关于单个近似最佳拟合中心点最高质量的最佳拟合。
最好是,对于它的每个检测方向,测量磁传感器的相对增益作为部分的生产校准。而且,最好是存储校准常数和应用这些常数到每个读数,地磁仪随后采用该读数以校准或至少均衡地磁仪每个检测轴的相对增益。若存在给出固有椭圆响应图形的条件,则最好预先定标数据,然后,可以利用圆或球面拟合过程。具体地说,若传感器安装到反射镜上,则通常方便的是使标称竖直轴平行于电路板的近似竖直面。然而,在车辆中,反射镜上的电路板对于一般驾驶员通常不是在竖直位置。假设Y轴传感器也平行于电路板且在水平面上,最好是围绕这个轴作坐标转动以建立X和Y轴大致落在一般驾驶员的水平面的坐标系统,而转变的Z轴对于一般驾驶员是标称竖直的。
对于第一个优选实施例,选取球面作为模拟图形。在一个优选实施例中,模拟半径最好设置成这样的数值,当车辆在圆中转弯时,磁传感器读数记录的圆在它的最佳拟合位置上近似地形成这个球面的赤道。最好是,仅当有这样一组样本点时调整这个半径,该组样本点有相对高的质量和有相对好的分布。最好是,例如,迭代通过一组试验半径以找到一个良好拟合和多个样本点落在模拟球面赤道附近的半径。一旦建立合理的中心点,除了以下描述的情况以外,最好利用以前建立的中心点作为新迭代的起始点。最好是,利用每个样本点误差矢量之和的平均值作为矢量增加到以前的中心点以建立迭代过程中相继步骤的新中心点。迭代序列最好是继续进行,直至几个相继迭代的中心变化是在阈值以下。
当拟合质量是可疑时,如相对高的模拟误差指示所指出的,此处还应当应用类似于或大致相当于以下描述的附加迭代。
在一些实施例中,最好是,不但计算而且还给相同点组中的每与点存储一个指示,关于该点拟合模拟几何数据图形的程度。这可以是质量指示或误差指示,例如,与模拟图形之间距离的平方。最好是,存储时间的指示或至少是采集样本点的相对顺序以及样本点组。例如,这可以是顺序编号,时间和日期,或行驶里数。通过按照先进先出(FIFO)的基础存储样本点到存储器中,可以保持样本点的采集顺序。
对于给定的样本点组,可以存储样本点组中每点的质量/误差指示和伴随的描述。然后,可以根据计算每点的φ角排列各点的顺序。有序列表中相邻的各个点对,包括第一个和排列最后一个构成的点对,可以认为它们是相邻的两个点。可以利用与每个点对相关角度的角度φ模360°差的幅度作为各个相邻点对中两个元素之间的间隔指示。
类似于找到重心的任选计算对于确定样本点的分布中心是有用的。例如,可以给每个样本点分配一个假设的质量,于是,质量中心的x分量等于该组中各点x分量的平均值。类似地,y分量和z分量分别等于各点的y分量和z分量的平均值。
有各种应用选择准则的可能方法。一般地说,给出一个新点,它是替换一个现有激活样本点的候选点,首先应当作出是否替换的决定,其次,如果需要替换,则需要替换现有激活样本点组中哪个点。一种应用选择定则的方法是,例如,暂时地,相继地,和利用候选点一次替换一个现有激活样本组中的每点。在每次利用候选点暂时替换单个样本点时,根据需要进行计算,并记录应用替换准则比较结果所需的信息。然后,把记录的结果互相比较,并与现有样本组中类似的数据进行比较,以便知道该替换是否满足组合的准则,如果满足,则选取哪个候选点进行替换可以实现最佳满足该准则。然后,如果没有满意的替换,则不改变样本组,以及候选点不用作样本组的激活点。否则,保留产生最优结果的替换,以及丢弃被替换的点,或把它分配到非激活组。
其次,在每次替换时,记录最大间隔和次最大间隔的角度,并把每次替换的这些结果互相比较,再与原始样本组中最大间隔和次最大间隔的结果进行比较,以便确定任何可能替换的合适性以及在这个准则下合适性的选择进行分类。
把原始样本组的重心和每个替换样本组的重心进行比较,并按照类似于上述评价间隔的方式进行分类。
最好是,在检测到图形变化时,最终清除较旧的点和至少知道相对的采集时间。当拟合新图形的数据需要与不拟合的数据分开时,这个信息是有用的。此处,点组的分开或划分可以部分地基于获取这些数据的顺序。最好是,优先保留拟合图形很好的数据以及具有稳定读数所采集的统计数据,优先拒绝拟合不好的数据或在噪声条件下获取的数据。
地球磁场的竖直分量和对测量竖直磁场分量的附加效应应当相对地稳定,即使在水平面上作了多次转动,附加效应是由于车辆内竖直磁场分量造成的。竖直分量读数的重大变化很可能是由瞬态条件或导致更永久的模拟位移的变化造成的。若该变化是瞬态的,则测量点可能不是用作样本点或航向计算的良好点。若位移是长的或半永久性的,则可能需要对正确再模拟罗盘有较快的响应。在任何的情况下,特定点的磁场强度竖直分量与占优势的竖直分量平均值或与特定点组的竖直分量平均值进行比较,对于确定具体读数不可能拟合当前图形的情况是有用的。确定这种变化是暂时或相对永久的最好是部分地由读数累积史作出。若读数的竖直分量中有相对稳定的位移,则可能有模拟的位移。此处,有利的是在首先检测到位移之后存储代表性度数,因此,可以评价该读数,使它包含在新模拟样本组中,有利的是清除或在模拟位移非激活之前获取的数据。若读数的竖直分量在短的距离或驾驶周期之后通常还原到以前或占优势数值,则可以假设该变化是瞬态的,最好从样本组中清除有位移的数值。
若传感器安装到可移动的反射镜组件,则可以改变模拟的反射镜调整往往是在驾驶员开始新的旅程之前或刚开始时进行,在退出公路和转入街道时,在退出停车场和转入街道时,或在围绕四叶式立体交叉行进到高速公路时,很可能有多次转动。这些情况往往提供快速收集变化取向数据点的最佳机会。这种数据对于快速校正罗盘模拟是非常有用的。然而,在得到更多点以确认模拟已确实改变之前,快速地清除全部现有点是冒险的。在获取和暂时存储这些点之后证实这些点是有效样本点具有这样的优点,它可以对得到的数据进行慎重考虑,为的是避免清除良好的数据点以及在合理确认之前可能证明是有问题的数据,这些数据是稳定的,且不是经过的瞬态。
除了上述的内容以外,罗盘系统接收车辆是否运动的指示是有益的。例如,若车辆不在运动,则罗盘系统可以配置成不更新显示的航向或改变存储的模拟几何图形(或相关的点组)。按照这种方式,若传感器安装到反射镜外壳中和驾驶员在车辆稳定时调整反射镜,则显示的航向不发生变化。这是有利的,因为驾驶员不可能相信罗盘是正常地工作,如果航向在车辆不运动时发生变化。车辆是否在运动的指示可以是从车辆中另一个元件(例如,GPS)发射信号的形式,该元件指出车辆究竟是稳定或运动的。该信号不必指出车辆行进的速度,而仅仅说明车辆是否在运动。按照本发明的一些实施例,代表车辆速度的信号仍然可用于确定车辆是否为稳定的。此外,可以对罗盘进行编程,若从传感器读出的数据在超过一段预定的时间周期内有最小的噪声电平(例如,大于2mG),则假设车辆是运动的。或者,微音器或振动传感器可用于确定车辆是否在运动。
我们已经描述了本发明模拟过程的一般概念,以下描述体现某些上述概念的第一个实施例中更具体的例子。然而,本发明不局限于这个例子中的具体细节。
最好是,对处理电路110进行编程作为状态机运行。图11表示各种运行状态和用于改变状态的准则。参照从图12A开始的流程图,进一步描述关于进入或退出任何状态的更详细信息。关于图11所示的状态图,在启动车辆点火时,处理电路首先工作在POWER_ON状态150。若以前从未计算过罗盘的模拟几何,则在非易失性存储器(NVM)112中没有存储的模拟数据,从而使处理电路110进入APPROXIMATE状态152。在得到满足某个准则的规定数目数据点之前,处理电路保持在APPROXIMATE状态152。根据这些数据点,得到模拟的最佳拟合数据并存储到NVM 112,随后用于计算和显示车辆航向。然后,处理电路110进入LEARN状态156。若车辆随后息火并再次点火,则处理电路110进入状态图中POWER_ON状态150。然而,此时的有效模拟数据已存储到NVM 112,因此,处理电路110进入INITIALIZE状态154。在INITIALIZE状态期间,处理电路110处理来自传感器的数据,直至得到满足某个准则的最小数目数据点,与此同时,利用NVM 112中存储的模拟数据,计算和显示车辆航向。此时,处理电路110进入LEARN状态156。在LEARN状态期间,处理电路110继续累积满足某个准则的附加数据点,用于更新以前在APPROXIMATE或INITIALIZE状态中得到的模拟数据。如以下更详细讨论的,若这些数据点中的任何数据点与模拟地理图形的外表面(即,本地球面)之间有一段距离,使误差矢量VE的幅度大于预定的阈值,则处理电路110设置refitFlag为TRUE,清除所有以前得到的数据点,和重新进入INITIALIZE状态154,在再次得到满足规定准则的最小数目数据点之前,处理电路保留在该状态。
当处理电路110是在LEARN状态156并得到规定数目的数据点时,该数目超过进入LEARN状态所要求的最小数据点,处理电路110就进入LOCK状态158,直至误确认差矢量VE的幅度超过规定的最大值。此时,处理电路回到INITIALIZE状态154,并设置refitFlag为TRUE,和清除所有以前得到的数据点。否则,处理电路110保留在LOCK状态158。每当最新产生的模拟数据与NVM 112中存储的模拟数据之差值大于某个极限时,NVM中旧的模拟数据被新的模拟数据改写。
图12A说明处理电路110在执行罗盘流程控制算法200时完成的步骤。处理电路110在这个程序中完成的第一步是从磁传感器电路102接收数据,它代表从磁传感器电路102得到的最新原始地磁仪数据点的X,Y和Z坐标。然后,处理电路110执行步骤202,该步骤调用图13所示的NoiseAnalysis子程序204。
NoiseAnalysis子程序204用于滤波和平滑从传感器电路102接收到的原始地磁仪数据点(rawMagPoint)。在步骤206,利用基于以下公式的指数平滑操作,处理电路110首先滤波原始地磁仪数据点EX1n=αx1×X1n+(1-αx1)EX1n-1EY1n=αy1×Y1n+(1-αy1)EY1n-1EZ1n=αz1×Z1n+(1-αz1)EZ1n-1其中αx1=αy1=αz1=0.5,和X1n,Y1n,Z1n分别等于rawMagPoint的X,Y,或Z分量值。在这个公式中,EX1n-1,EY1n-1,EZ1n-1分别代表以前滤波原始数据点的对应X,Y,或Z分量值。然而,当罗盘系统得到第一数据点时,EX1n-1,EY1n-1,和EZ1n-1分别设置成等于EX1n,EY1n和EZ1n,因为没有可以平滑第一个rawMagPoint的数据。然后,滤波的rawMagPoint(EX1n,EY1n,EZ1n)传输到步骤208,按照以下的公式利用第二个指数平滑滤波器,其中αx2=αy2=αz2=0.25EX2n=αx2×EX1n+(1-αx2)EX2n-1EY2n=αy2×EY1n+(1-αy2)EYn-1EZ2n=αz2×EZ1n+(1-αz2)EZ2n-1如上所述,在一个优选实施例中,αx1=αy1=αz1=0.5,和αx2=αy2=αz2=0.25。然而,这些值是基于噪声电平和所要求的性能而变化的。例如,设置αz1=0.125和αz2=0.0625导致更深度平滑的Z数据,因此对数据组中的噪声条件响应较小。在这些公式中,(EX2n-1,EY2n-1,EZ2n-1)代表以前滤波newMagPoint的对应X,Y,或Z分量值。利用第二个滤波步骤,因为两个滤波器之间固有的相位延迟使增益增加,且它随频率而增大。然而,应当理解,这第二个滤波步骤是任选的。然后在步骤210,处理电路110在变量newMagPoint中存储(EX2n,EY2n,EZ2n)的值(newMagPoint=(EX2n,EY2n,EZ2n))。
然后,在方框206中分析第一个指数平滑滤波器输出的变化,把它与步骤208中第二个指数平滑滤波器输出的变化进行比较。基于测得的变化量和发生显著变化量之后过去的时间量,在步骤212中完成的这个分析分配质量指数。因此,这个步骤实际上是计算二次滤波数据点位置的一阶导数,它代表滤波数据点位置的变化率(即,类似于速度)。这可以写成以下的公式DX1n=EX1n-EX2n-1DY1n=EY1n-EY2n-1DZ1n=EZ1n-EZ2n-1在步骤214,处理电路110计算二次滤波数据点位置的二阶导数,它代表滤波数据点位置变化率的变化率(即,类似于加速度),其中利用以下的公式DX2n=DX1n-DX1n-1
DY2n=DY1n-DY1n-1DZ2n=DZ1n-DZ1n-1其中DX2n-1,DY2n-1,DZ2n-1是以前rawMagPoint得到DX2n,DY2,DZ2的以前值。步骤206-214是对rawMagPoint中每个X,Y和Z值进行的,然后在步骤216,首先把合成矢量D2n的幅度(D2n=SQRT(DX2n2+DY2n2+DZ2n2))与HIGH_LEVEL的预定值进行比较。若D2n的幅度(Magnitude D2n)大于HIGH_LEVEL,则处理电路110执行步骤218,其中在过程流程返回到CompassFlowControl程序200中的步骤240(图12A)之前,设置变量delayCounter等于常数LONG_DELAY,和设置变量noiseLevel等于常数NOISY。
在步骤216中,若处理电路110确定Magnitude D2n不大于HIGHLEVEL,则它进行到步骤220,把Magnitude D2n与常数MED_LEVEL进行比较。若Magnitude D2n大于MED_LEVEL,则处理电路110进行到步骤222,其中它设置变量delayCounter等于delayCounter的以前值或常数MED_DELAY中较大的一个。在返回到CompassFlowControl程序200中的步骤240之前,处理电路110还在步骤222设置noiseLevel等于NOISY。
若Magnitude D2n不大于HIGH_LEVEL或MED_LEVEL,则处理电路110进行到步骤224,其中它确定Magnitude D2n是否大于常数LOW_LEVEL。若在步骤224大于常数LOW_LEVEL,则处理电路110设置变量delayCounter等于delayCounter的以前值或常数SHORT_DELAY中较大的一个,而在返回到程序200中的步骤240之前,设置变量noiseLevel等于NOISY(步骤226)。
若Magnitude D2n不大于LOW_LEVEL,则在进行到步骤230之前,处理电路110在步骤228使delayCounter减1,在步骤230确定delayCounter是否大于0。若delayCounter大于0,则在返回到程序200中的步骤240之前,处理电路110在步骤232设置noiseLevel等于QUIET。在步骤230,若处理电路1101确定delayCounter不大于0,则在程序200的步骤240之前,它进行到步骤234,其中设置noiseLevel等于SILENT。步骤216-226中使用不同的值可以是,例如,HIGH_LEVEL=25,MED_LEVEL=15,LOW_LEVEL=5,LONGDELAY=8,MED_DELAY=4,和SHORT_DELAY=2。
在图24-27中,描述噪声分析程序的另一个实施方案。图24表示噪声分析功能的高级方框图,它接收X,Y,和Z传感器的原始传感器数据,并提供滤波的X,Y,和Z传感器数据和noiseLevel指示。当noiseLevel是“SILENT”时,完成所有的罗盘操作。当noiseLevel是“QUIET”时,禁止对PointSet中的数据点作改动。当noiseLevel是“NOISY”时,禁止对PointSet中的数据点作改动以及禁止对CompassState的医疗。显示的航向是CompassState的元素,因此,当存在“NOISY”条件时,不对它进行改动。当它们各自的值大于0时,对输出NOISY,QUIET,和SILENT的评价是TRUE。图25表示详细的方框图。
如图25所示,来自地磁仪102的原始数据X提供给第一个指数滤波器820,滤波器820类似于图13所示功能块206的滤波功能,其中α=0.5。第一个滤波器820的输出EX1提供给第二个指数滤波器822和以下描述的功能块824。第二个滤波器822类似于图13所示功能块208的滤波功能,其中α=0.25。第二个滤波器822的输出EX2提供给功能块824。功能块824完成类似于图13所示功能块212的功能,并提供DX1到功能块826。功能块826完成类似于图13所示功能块214的功能并提供输出DX2。对地磁仪102的Y和Z原始数据完成类似的滤波和处理操作,以及DX2,DY2,和DZ2的数值提供给功能块828。
功能块828对DX2,DY2,和DZ2的每个数值取平方和把这些平方值相加。标记为“noise”的功能块828的输出提供给功能块830,功能块830把功能块828的输出“noise”除以预定的数值“noiseFactor”并取该值的平方根,再把它相加到预定的数值“delayIntercept”以产生输出“delay”。输出“delay”提供给功能块832并代表NOISY的条件。换句话说,若“delay”的数值大于0,则NOISY是TRUE,因此找到存在NOISY的条件。
功能块832利用数值“delay”和预定数值“maxDelay”计算函数MIN的数值,以及利用数值“delay”和0计算函数MAX的数值。MAX和MIN的数值提供给功能块834和838。再次利用数值“delay”但用数值“peak”替换0,功能块834重新计算函数MAX的数值。从功能块836的输出导出“peak”的数值,功能块836从功能块834的输出中减去数值“1”。功能块834的输出代表QUIET的条件。换句话说,若功能块834的输出大于0,则QUIET是TRUE,因此找到存在QUIET的条件。
功能块834的输出还提供给功能块838,功能块838把功能块834的输出值与功能块832的输出值相加。功能块838的输出被反相器840求逆,反相器840的输出代表SILENT的条件。换句话说,若功能块840的输出大于0,则SILENT是TRUE,因此找到存在SILENT的条件。
图26表示延迟信号与DX22+DY22+DZ22的平方根定义的噪声信号之间关系,其中noiseFactor=10,delayIntercept=-3,和maxDelay=32。
当模拟球面的半径增大时,磁噪声变得不重要。例如,在USA的Michigan,Zeeland,球面半径约为180mG。若我们希望忽略大于信号10%时的任何噪声,则我们关心的噪声电平是在18-20mG的范围内。在Singapore,球面半径约为400mG。在这种情况下,我们关心的噪声电平大于它的2倍。所以,基于地球磁场的水平强度(用模拟球面的半径表示),适应于系统响应是有利的。这可以通过调整“delayIntercept”的数值来完成。例如,半径delayIntercept≤128mG-2≤256mG-3≤512mG-4图27表示延迟信号与DX22+DY22+DZ22的平方根定义的噪声信号之间关系,其中noiseFactor=10,delayIntercept=-4,和maxDelay=32。
再参照图12A,在步骤240,处理电路110确定当前是否在POWER_ON状态。如果是,则处理电路110进行到执行步骤242,在步骤242确定有效的模拟半径rsxsr是否存储在NVM 112。最初,非易失性存储器中没有存储这种半径,除非在罗盘中以前存储了预模拟数据。只要在NVM 112中没有存储有效半径,处理电路110进行到步骤244,其中设置它的状态到APPROXIMATE。然后,该过程通过连接器“1”进入到图12B所示的步骤246。
在步骤246,处理电路110确定noiseLevel是否为SILENT。如果不是,则处理电路110返回到CompassFlowControl程序200,其中在再次执行上述的NoiseAnalysis子程序204之前,得到新的rawMagPoint。然后,在步骤318,处理电路110确定它是在APPROXIMATE状态并返回到步骤246,以及继续循环通过步骤200至246(和步骤318),直至noiseLevel是SILENT。获得这个结果所需的时间长度取决于接收数据的一致性和它最初变化的程度,这是由于设置delayCounter的长度。一旦noiseLevel是SILENT,则处理电路110执行步骤248,它调用图14所示的BuildPointSetDistance子程序250。
在一个优选实施例中,例如,在接通电源之后增加10秒的延迟,在此期间收集地磁仪数据并使它通过噪声滤波器。然而,在10秒延迟到期之前,不调用BuildPointSetDistance子程序250。这可以避免各种磁场瞬态造成学习不正确的数据点。这些瞬态可以由电池充电,开门,反射镜位置调整等内部原因造成。这些瞬态也可以有外部原因造成,例如,存在气泵,金属车库门,停车场斜坡的金属杆,等等。在延迟到期之后,在每次有新的地磁仪数据时,调用BuildPointSetDistance子程序250,直至找到两个数据点。这指出磁场正在发生变化,最可能的原因是车辆的运动。然后,设置VehicleUnderway标志以跟踪这个事件。当这个事件发生时,丢弃这两个学习数据点,并调用BuildPointSetDistance子程序250以开始利用Point[1]更新PointSet的构造。或者,可以利用车辆运动的标志。
在BuildPointSetDistance子程序250中,在步骤252,处理电路110首先确定变量numPoints是否大于0。最初,这个变量设置为“0”,所以,在第一次通过这个子程序时,处理电路前进到步骤254,在以下称之为“PointSet”的阵列中增加newMagPoint的最新值到Point[1]。PointSet存储多个地磁仪数据点,一直到常数TOTAL_POINTS规定的限制,例如,它可以是12个数据点,全部12个数据点存储到PointSet,其中numPoints是相继地从“1”增大到TOTAL_POINTS。随后利用PointSet中存储的这些数据点,用于模拟本地球面的中心点和确定该球面的半径,它们一起构成模拟数据以提供确定车辆航向的相对基础。
除了在步骤254中增加newMagPoint到PointSet中以外,处理电路给变量numPoints增1并在步骤280(图12B)返回控制到CompassFlowControl程序200。在步骤280,处理电路确定变量numPoints是否大于或等于常数MINFIT_POINTS。如果不是,则处理电路返回到步骤200,其中得到新的rawMagPoint并服从于NoiseAnalysis子程序204。然后,处理电路110利用从子程序204得到的newMagPoint,再次进入BuildPointSetDistance子程序250,只要noiseLevel是SILENT。否则,处理电路110继续得到新的rawMagPoint,直至noiseLevel再次是SILENT。
在第二次进 BuildPointSetDistance子程序250之后,numPoints的数值不再等于0,因此处理电路110执行步骤256,它确定numPoints的数值是否大于1。因为numPoints的数值在第二次通过这个子程序之后不大于1,然后,处理电路110进行到步骤258,它确定newMagPoint与PointSet中Point[1]之间的距离。然后,在步骤260,处理电路确定这个距离是否大于变量minDist,它的定义是以下所示minDist=2×defRadius×sin(MIN_ANGLE/2)其中MIN_ANGLE=2×/(3×TOTAL_POINTS)
defRadius的数值或是预置的常数,例如,150,或最好是NVM 112中存储的模拟半径数值。因此,最小距离(minDist)是得到和用于模拟的TOTAL_POINTS数目的函数。若得到的两个数据点之间距离不大于minDist,则子程序返回到步骤200以获得新的数据点,并继续进行到获得第二个newMagPoint,直至它与第一个获得的数据点之间距离大于minDist,在此情况下,处理电路110执行步骤262,它增加newMagPoint到Point[2]位置中的PointSet,与此同时,还使numPoints的数值增1。然后,处理电路返回到步骤200以获取和滤波新的rawMagPoint。
在PointSet中获得前两个数据点之后,处理电路就经过上述的步骤,并重新进入BuildPointSetDistance子程序250,只要noiseLevel仍保持SILENT。在进入BuildPointSetDistance子程序250之后,处理电路进行到步骤264,因为numPoints的数值大于1。
在步骤264,处理电路在PointSet中找到与最新得到的newMagPoint最接近的两个存储数据点。第一次通过流程图中这个路径,这两个数据点对应于两个以前得到的点,即,Point[1]和Point[2]。然后,在步骤266,处理电路确定PointSet中最接近点与newMagPoint之间的距离是否大于变量newPointDist的数值,它的定义如以下所示newPointDist=2×defRadius×sin(NEW_POINTANGLE/2)其中NEW_POINT_ANGLE=2×/TOTAL_POINTS若这个距离大于newPointDist的数值,则处理电路给numPoints的数值增1,然后把newMagPoint增加到位置Point[numPoints]中的PointSet(步骤268)。然后,处理电路返回到步骤200,它得到新的rawMagPoint并进行处理。同样,假设noiseLevel仍保持SILENT,再执行BuildPointSetDistance子程序250。在步骤248继续调用这个子程序,直至numPoints的数值等于或大于常数MINFIT_POINTS,例如,该常数可以设置成等于4。
假设再次进入子程序250,而在步骤266,处理电路确定最接近的距离不大于数值newPointDist,处理电路在步骤270沿newMagPoint的方向调整最接近点的位置。例如,若newMagPoint的X,Y,和Z值中任何一个数值大于最接近数据点的X,Y,和Z值,则最接近数据点的X,Y,和Z值可以各自增加数值“1”。类似地,若newMagPoint的X,Y,或Z值中任何一个数值小于最接近点的数值,则最接近数据点的对应X,Y,和Z值可以减小数值“1”。随后,在步骤272,处理电路找到PointSet中刚才调整的数据点与该点最接近点之间的距离。然后,在步骤274,若处理电路确定这个距离小于数值minDist,则它进行到步骤276,其中复位调整数据点位置到它的原始位置。否则,处理电路没有首先执行步骤276就返回到步骤200。完成这后两个步骤是保证PointSet中的数据点没有调整后的位置,使它与PointSet中的另一点变得不太接近。这确保这些数据点在本地球面周边上有合适的间隔关系。
一旦numPoints的数值大于或等于MINFIT_POINTS,则过程进行到步骤282(图12B),其中它设置模拟的最佳拟合中心点(scxs,scys,sczs)等于PointSet中所有数据点的平均值和设置最佳拟合半径rsxsr等于常数MIN_RADIUS。这个步骤是在进入通过迭代子程序AdiustBestFitPoint和AdiustBestFitRadius之前使用的最初步骤,在以下描述的随后步骤283中调用这两个迭代子程序,可以基于误差度量进一步调整这个模拟数据,以提供最佳拟合的模拟本地球面。如图15所示,AdjustBestFitPoint子程序284首先确定PointSet中当前存储每点的数值(vexs,veys,vezs)(步骤286)。给定点的vexs数值是矢量VE的X分量。如以上图8至10所示,矢量VE是误差矢量,它是矢量V与计算的模拟半径矢量RS(幅度为rsxsr)之差,其中矢量V是从模拟本地球面的中心延伸到PointSet中的特定数据点。veys和vezs的数值分别对应于矢量VE的Y分量值和Z分量值。
在步骤286之后,处理电路执行步骤288,其中它增加PointSet中所有数据点的平均值(vexs,veys,vezs)到当前的模拟中心点(scxs,scys,sczs)。然后,在执行AdjustBestFitRadius子程序290时,处理电路确定PointSet中每个数据点的数值vxsr(步骤292)。数值vxsr对应于以上参照图8至10所描述的矢量V幅度。然后,处理电路设置模拟半径rsxsr等于PointSet中所有数据点的vxsr平均值(步骤294)。然后,在步骤296,设置变量vErrLimit等于rsxsr/2和变量centerShiftLimit等于rsxsr/4。以下进一步讨论这些变量的意义。
为了计算newMagPoint的误差矢量,我们采用图9所示磁场强度RDG的地磁仪读数(或流程图中的newMagPoint),RDG=(rdgxs,rdgys,rdgzs)=newMagPoint和模拟球面中心的磁场强度SC=(scxs,scys,sczs)可以找到矢量V。
V=RDG-SC=(vxs,vys,vzs)然后,使矢量V围绕Zs转动,它给出新的坐标空间Xi,Yi,Ziφs=arctan(vys/vxs)vxi=vxs×cos(φs)+vys×sin(φs)然后,围绕Zi转动,它给出新的坐标空间Xsr,Ysr,Zsrθs=arctan(vzs/vxi)vxsr=vxi×cos(es)+vz×sin(θs),vysr=0,vzsr=0。
得到的项vxsr是矢量V的幅度。矢量VE的定义为VE=V-RS为了确定误差矢量VE的幅度,我们从矢量V的幅度中减去模拟球面的幅度。
vexsr=vxsr-rsxsr最后,通过转动返回到坐标空间Xs,Ys,Zs,确定误差矢量的各个分量vexs=vexsr×cos(θs)×cos(φs)veys=vexsr×cos(θs)×sin(φs)vezs=vexsr×sin(θs)专业人员显然知道,AdjustBestFitPoint子程序284和AdjustBestFitRadius子程序290基于误差度量调整模拟中心点数据,用于迭代地确定模拟几何图形(在这个情况下是球面)相对于得到数据点的最佳拟合。然后,在执行这两个子程序之后返回到图12B中的步骤300,在步骤300,当前计算的模拟中心点和半径存储到NVM 112,为了改写以前存储的模拟数据,然后,该过程进行到步骤302,处理电路进入到LEARN状态。
在步骤302之后,处理电路执行步骤304以调用图17所示的Heading子程序306。Heading子程序306的输入是当前存储在newMagPoint中的数值,它是由NoiseAnalysis子程序204产生的。然后,在步骤308,处理电路确定数值noiseLevel是否设置成等于NOISY。如果是,则处理电路退出Heading子程序并返回到CompassFlowControl程序的步骤200,其中得到新的rawMagPoint。
若处理电路在步骤308确定noiseLevel不设置为NOISY(即,它是QUIET或SILENT),则处理电路执行步骤310,其中NVM 112中存储的模拟中心点(scxs,scys,sczs)和半径rsxsr用于计算航向角φs,vexsr和newMagPoint的误差矢量(vexs,veys,vezs)。用于确定这些值的方法是以前描述的方法,不同的是,利用NVM 112中存储的模拟中心点替换当前的模拟中心点。
然后,在步骤312,处理电路确定计算newMagPoint的数值vexsr是否大于变量vErrXrLimit,变量vErrXrLimit是以前在AdjustBestFitRadius子程序290的步骤290(图16)中设置的。若vexsr的数值大于这个限制,则过程返回到图12A中的步骤200而不显示航向。否则,若这个误差矢量是足够地小,则处理电路在步骤314计算True Heading。True Heading等于φs-φm-D(若磁传感器安装到反射镜外壳144),其中φm是反射镜转动角(图7),而D是以上参照图8至10讨论的磁偏角。
在执行步骤304中调用的Heading子程序306之后,过程返回到步骤200,现在处理电路电路是步骤302中设置的LEARN状态。在步骤200,该程序再次得到新的rawMagPoint并执行NoiseAnalysis子程序204,如同以前对每个新的rawMagPoint一样执行。然后,处理电路在步骤240确定,它不再是在POWER_ON状态,而且还在步骤318确定,它不是在APPROXIMATE状态。然后,在步骤320确定,它不是在INITALIZE状态,在此情况下,在步骤322确定它是否在LEARN状态。若处理电路是在LEARN状态,则它进行到步骤350(图12C),否则,它是在LOCK状态,在此情况下,它进行到图12D中的步骤470。
在车辆点火被熄灭而车辆是在LEARN状态或任何其他状态的情况下,当电源是通过接通车辆点火恢复时,处理电路最初进入到POWER_ON状态。处理电路就从步骤200开始,并进行到步骤240,在此情况下,它确定确实是在POWER_ON状态,并进行到步骤242。现在,假设有效半径rsxsr存储在NVM 112,处理电路进行到步骤324,在进行到步骤326之前它设置状态到INITALIZE状态。在步骤326,从NVM 112中检索模拟中心点(scxs,scys,sczs)和半径rsxsr,把它们用作当前的模拟中心点和半径。然后,过程进行到图12B所示的步骤328。
在步骤328,处理电路确定变量noiseLevel是否为SILENT。如果不是,则处理电路在步骤330调用Heading子程序306,回到步骤200以处理新的rawMagPoint,以及然后进行到步骤240,其中确定它不再是在POWER_ON状态,在这个情况下,它进行到步骤318,若确定它不是在APPROXIMATE状态,则进行到步骤320,步骤320确定它是在INITIALIZE状态。然后,过程返回到步骤328。这个循环继续进行,直至noiseLevel是SILENT。若noiseLevel是SILENT,则执行步骤332,其中调用BuildPointSetDistance子程序250。然后,只要noiseLevel是SILENT,则连续执行BuildPointSetDistance子程序250和调用Heading子程序(步骤330),直至numPoints大于或等于常数MINFIT_POINTS(步骤334)。执行BuildPointSetDistance是必需的,因为当车辆点火熄灭时,PointSet中的所有数值被清零。每次在车辆熄灭时清零PointSet中的数值可以使罗盘系统这样的事件中快速地重新模拟,其中新的驾驶员随后进入车辆并移动可能安装磁传感器的反射镜外壳144位置。
一旦在PointSet中得到足够数量的数据点,则处理电路进行到步骤336,其中调用AdjustBestFitPoint子程序和AdjustBestFitRadius子程序。然后,在步骤338,处理电路计算当前的模拟中心点(scxs,scys,sczs)与NVM 112中存储的数据点之间差值。若这些数据点之间的差值大于步骤296中设置的变量centerShiftLimit(步骤340),则在进行到执行步骤300之前,处理电路在步骤342中设置refitFlag为TRUE,而在步骤300,当前计算的模拟中心点和半径存储在NVM 112以改写以前存储的模拟数据。然后,过程进行到步骤302,处理电路进入到LEARN状态。在步骤340,若处理电路确定当前计算的模拟中心点与NVM 112中以前存储的中心点之间差值不大于变量centerShiftLimit,则处理电路前进到步骤302而跳过步骤342和300。在步骤302,该状态设置为LEARN和在步骤304调用Heading子程序。在Heading子程序之后,过程返回到CompassFlowControl程序中的步骤200或得到新的rawMagPoint并进行处理。然后,控制流程通过步骤322,其中确定处理电路是在LEARN状态。然后,处理电路进行到步骤350(图12C),其中确定数值noiseLevel是否为SILENT。如果不是,则在步骤352调用Heading子程序,若noiseLevel是QUIET,则更新车辆航向,否则不更新车辆航向,和程序返回到步骤200以处理新的rawMagPoint和随后的rawMagPoint,直至noiseLevel是SILENT。一旦noiseLevel是SILENT,则处理电路执行步骤354,它调用图18所示的UpdateAngleBucket子程序356。
UpdateAngleBucket子程序356的目的是建立对应于PointSet中总点数的若干个angleBuckets,该数目存储在常数TOTAL_POINTS中。例如,若点的总数是12,则有12个angleBuckets,每个angleBucket对应于360°圆中互不相交的30°分段。把angleBuckets标志为angleBucket[1]至angleBucket[TOTAL_POINTS]的线性阵列。例如,angleBucket[1]对应于0°至29°,angleBucket[2]对应于30°至59°,等等。angleBuckets的数目越多,则angleBuckets对应的角度范围就越小。相反,angleBuckets的数目越少,与每个angleBuckets相关的角度范围就越大。angleBucket阵列中存储的数值对应于PointSet中存储的相关Point[index]的指数。若“0”存储在angleBucket,则表示在这个特定angleBucket中存储的PointSet中没有相关的点。如以下进一步描述的,若angleBucket中存储负的数值,则意味着PointSet中的Point[index]有与不同angleBucket相关的角度,Point[index]的指数对应于angleBucket中存储的负数绝对值,但那个不同的angleBucket已满。请注意,仅有一个数据点可以与任何一个angleBucket相关。这是保证这些点是合适地分布在模拟圆面的周边上。它的目的是在每个angleBucket中填充PointSet中不同的单个点,其中每个angleBucket有正的数值。
与当前样本PointSet中每个传感器数据点相关的航向角φs最好是按照这些点的顺序排列,从有最小相关航向角的点开始到有最大相关航向角的点结束。航向角应当配置成角度增量的模360°,它包含罗盘读数中的0°角度增量。可以利用诸如弧度或习惯单位的其他单位表示角度测量结果。
UpdateAngleBucket子程序356中的第一步对于所有的angleBuckets是0(步骤358)。这可以使ngleBuckets是PointSet中最近重赋值的点。然后,在步骤360,计算PointSet中第一点(即,Point[1])的角度φs,φs的值用于识别这个点对应于哪个angleBucket。然后,在步骤362,处理电路确定选取的angleBucket数值是否为“0”。如果是,则PointSet中该点的指数存储到这个angleBucket(步骤364)。例如,若第一点是Point[1],则指数值“1”存储到选取的angleBucket。然后,在步骤366,它确定PointSet中是否有任何更多的点分配到angleBucket。如果是,则处理电路110计算PointSet中下一个点的φs,并利用这个角度选取对应的angleBucket(步骤360)。若选取的angleBucket有存储的值“0”,则该过程再进行到步骤364,其中PointSet中点的指数存储到选取的angleBucket。这个过程继续进行,直至处理电路在步骤366中确定PointSet中没有更多的点需要指定。在这种情况下,处理电路执行步骤368以确定是否有步骤370中存储的任何指数。如果没有,则完成UpdateAngleBucket子程序356,和过程回到步骤376(图12C)。
在UpdateAngleBucket子程序356,若步骤360选取PointSet中一个点的角度为φs,而该选取的angleBucket是以前给另一个点选取的,则angleBucket中的值不再为“0”,而这是在步骤362中确定的,于是,处理电路前进到步骤370,其中它存储PointSet中最新选取点的指数供以后在步骤368和374中使用。该程序继续在步骤372寻找更多的点,同时累积对应于已分配angleBucket中任何点的附加指数。然后,一旦已分配所有的点,则该过程进行到步骤368,它确定是否有步骤370中存储的任何指数。如果是,则处理电路在有0值的angleBucket中放置存储指数的负值。因此,例如,若Point[2]已分配到angleBucket[5],则angleBucket[5]有存储的值[2]。然后,若Point[7]有对应于angleBucket[5]角度范围的角度φs,angleBucket[5]已存储了值[2],则该过程在步骤370存储指数“7”,它是在步骤368中被识别的。然后,该过程把“-7”值放置在一个其值为“0”的未使用angleBuckets中。请注意,总是有一个其值为“0”的angleBucket,因为angleBuckets的数目对应于PointSet中点的最大的数目。以下进一步讨论非对应angleBucket中负指数的意义。一旦PointSet中所有的点按照某种方式已分配到angleBucket,则该过程回到图12C中的步骤376。
在步骤376,它确定numPoints的当前值是否小于TOTALPOINT。若numPoints等于TOTAL_POINT,则该过程进行到步骤378,其中作出是否有小于0的angleBucket项(即,任何负的项)的决定。如果没有,则该过程进行到步骤380,其中不设置处理电路到LOCK状态。然后,模拟中心点和半径存储在NVM 112(步骤382)以及在步骤384调用Heading子程序。然后,该过程回到步骤200(图12A)。
若在步骤376确定numPoints小于TOTAL_POINT,或在步骤378确定angleBuckets中有存储的任何负值,则处理电路进行到步骤386,其中它调用图19所示BuildPointSetAngle子程序388。
在执行了UpdateAngleBucket子程序356之后调用BuildPointSetAngle子程序388。然而,BuildPointSetAngle子程序388利用最新得到的newMagPoint作为输入,而UpdateAngleBucket子程序仅仅利用PointSet中存储的那些点。BuildPointSetAngle子程序的目的是分配newMagPoint到PointSet中的点,和分配新的点到angleBucket。这个过程是从步骤390开始,其中计算newMagPoint的角度φs并利用它选取角度φs所在范围内的angleBucket。在步骤392,它确定选取的angleBucket是否有其中存储的负值。如果有,则处理电路识别PointSet中哪个点是与该angleBucket有关,它是通过查看该angleBucket中存储值的绝对值,以及利用newMagPoint的X,Y,和Z值替换PointSet中存储点的X,Y,和Z值(步骤394)。处理电路还存储选取angleBucket中替换点的正指数值,因此,newMagPoint现在是与那个特定的angleBucket相关。然后,该过程返回到图12C中的步骤408。若在步骤392确定选取的angleBucket没有负值,则在步骤396确定选取的angleBucket是否等于0。如果不等于0,这意味着另一个点已分配到该angleBucket,则在newMagPoint的方向按照上述关于BuildPointSetDistance子程序250(图14)的方式调整angleBucket中规定的PointSet中点的位置。否则,如果选取的angleBucket等于0,则处理电路在步骤400确定angleBucket是否有负值。如果没有,则给numPoints的值增1,把newMagPoint添加到指数numPoints的PointSet中,而选取的angleBucket设置成numPoints的值,因此,newMagPoint现在是与选取的angleBucket相关(步骤402)。
在步骤400,若处理电路确定其中有存储负指数的一些angleBuckets,则它执行步骤404,其中负指数绝对值识别PointSet中的点存储到angleBucket,和利用newMagPoint数据改写PointSet中所识别点中以前存储的任何数据,然后,改写点的指数存储到以前有“0”值的选取angleBucket中。给过去有负指数的angleBucket分配“0”值。该过程返回到图12C中所示流程的步骤408,它调用图20所示的CalcFittingSphere子程序410。
这个子程序中的第一步是确定PointSet中所有点的平均θs(步骤412)。通过计算PointSet中每个点的θs=arctan(vzs/vxi),找到PointSet中每个点的θs。应当记住,θs角代表与传感器坐标上X,Y平面的偏差。当X,Y平面与地球表面平行时,θs角的变化为0。X,Y平面的任何倾斜就导致θs角的变化。理想的是,PointSet中各点形成的圆应当落在与X,Y平面尽可能接近的平面内。然而,在实际上,每个点可以有Z检测元件108检测的不同Z分量,因此给出不同的θs角。
在步骤412计算PointSet中所有点的平均θs之后,在步骤414,处理电路确定numPoints是否等于TOTAL_POINTS。如果是,则在步骤416把平均θs值与LOW_LIMIT值进行比较。若平均θs不大于LOW_LIMIT,则过程进行到步骤420,其中在返回到步骤430(图12C)之前,调用AdjustBestFitPoint和AdjustBestFitRadius子程序。否则,该过程进行到步骤418,其中设置模拟半径rssr为常数MIN_RADIUS。随后,在步骤420调用AdjustBestFitPoint和过程返回到图12C中的步骤430。
若在步骤414中numPoints的值不等于TOTAL_POINTS,则处理电路在步骤422确定numPoints的值是否大于或等于FIT_POINT,例如,当TOTAL_POINTS为12时,FIT_POINT的值为8。若numPoints的值大于或等于TOTAL_POINTS,则处理电路在步骤424确定θs的平均值是否大于MED_LIMIT。如果不是,则过程返回到图12C中的步骤430,否则,处理电路进行到步骤418,其中它设置模拟半径rsxsr为MIN_RADIUS,并在返回到步骤430之前调用AdjustBestFitPoint和AdiustBestFitRadius子程序。若numPoints的值不等于TOTALPOINTS,且不大于FIT_POINT,则处理电路在步骤426确定θs的平均值是否大于HIGH_LIMIT值。若θs的平均值不大于HIGH_LIMIT,则过程进行到图12C中的步骤430,否则在返回之前它首先执行步骤418和420。专业人员知道,对平均θs应用不同的极限,它取决于PointSet中的点数。点数越多,则允许的极限就越小。在这种情况下,球面的半径太大,因为PointSet中各点形成的环与球赤道相隔太远(即,该球面的半径大于PointSet中各点圆的半径)。通过减小球面的半径到MIN_RADIUS,各点圆的圆半径就适合于在球面上各点的圆内和减小球面的尺寸。球面越小,则PointSet中的各点越可能在球赤道附近,这是我们所需要的。随后,AdjustBestFitPoint和AdjustBestFitRadius子程序移动该半径和中心回到各点的圆外,如果它不是已在那里。例如,步骤416,624,和426中使用的不同极限可以是LOW_LIMIT=5°,MED_LIMIT=10°,和HIGH_LIMIT=20°。
回到图12C,在步骤430,处理电路找到PointSet中vexsr的最大值。若最大值vexsr大于vErrXrLimit(步骤432),则处理电路在步骤434调用ResetPointSet子程序436。图21表示ResetPointSet子程序436并从步骤438开始,它设置refitFlag等于TRUE。然后,在步骤440,PointSet中的每点复位到0。该过程返回到图12C中的步骤442,其中处理电路的状态设置为INITIALIZE,而过程返回到步骤200以开始重新累积PointSet中的点。
若在步骤432中vexsr最大值不大于极限,则处理电路在步骤444确定numPoints的值是否小于FIT_POINTS。若numPoints的值小于FIT_POINTS,则在返回到图12A中的步骤200之前调用Heading子程序。然而,若numPoints等于或大于FIT_POINTS,则处理电路在步骤448计算当前的模拟中心点(scxs,scys,sczs)与NVM 112中目前存储的模拟中心点之差值。若差值大于centerShiftLimit(步骤450),则处理电路进行到步骤452,它在NVM 112中存储最新的模拟中心点和半径,在执行步骤446中的Heading子程序之前,改写以前的模拟数据,然后返回到步骤200。
若模拟中心点之间差值不大于centerShiftLimit,则处理电路在步骤454检查refitFlag是否设置为TRUE。如果不是,则该过程进行到步骤446,在返回到步骤200之前调用Heading子程序。否则,若refitFlag是TRUE,则在步骤456设置refitFlag为FALSE,和在步骤452,最新得到的模拟中心点和半径改写NVM 112中的模拟数据。同样,在步骤454之后,在返回到步骤200之前调用Heading子程446。
若处理电路设置而LOCK状态,这是在流程通过图12A所示的CompassFlowControl子程序中确定的,若它不是明确地响应于它是否在任何其他状态的确定。因此,该过程进行到图12D中的步骤470,它确定noiseLevel是否为SILENT。如果不是,则在返回到图12A中步骤200之前,该过程在步骤472调用Heading子程序。这个过程一直继续到noiseLevel是SILENT,在此情况下,执行调用UpdateAngleBucket子程序356的步骤474。随后,在步骤476调用BuildPointSetAngle子程序388,以及在步骤478调用CalcFittingSphere子程序410。再一次,在步骤480确定PointSet中各点vexsr的最大值,和在步骤482把vexsr的最大值与vErrXrLimit进行比较。若vexsr的最大值大于这个极限,则处理电路进行到步骤486,它调用ResetPointSet子程序436,并在返回到图12A中的步骤200之前进入到INITIALIZE状态。
若在步骤482vexsr的最大值不大于这个极限,则处理电路执行步骤490,它计算当前的模拟中心点与NVM 112中目前存储的模拟中心点之间差值。若在步骤492中这些点之间差值大于centerShiftLimit,则在执行步骤494中的Heading子程序之前,最新的模拟中心点和半径存储到NVM 112中以替换以前的模拟数据(步骤496),并随后返回到步骤200。若模拟中心点之间差值不大于centerShiftLimit,则旁路步骤496,并在返回到步骤200之前,在步骤494调用Heading子程序。
以下描述与上述方法的微小变化。图28表示有12个角存储桶的圆,每个存储桶是由唯一的30°弧度确定。按照以下的方式把点添加到角存储桶中1.若目标角存储桶已包含一个点,则通过沿新点的方向移动它而改变现有的点。
2.若角存储桶是空的,则测试相邻的角存储桶。若任一个相邻存储桶包含一个外来点(定义为属于另一个角存储桶的点),则从相邻角存储桶去除外来点,并把新的点放置在目标角存储桶。
3.若相邻的角存储桶是合适充满的,则测试所有的角存储桶以检查角存储桶中是否包含外来点。若找到外来点,则去除该外来点,并把新点放置在目标角存储桶。
4.若没有找到外来点,则新点添加到PointSet和目标角存储桶。
每当改变PointSet时,计算新的模拟球面。若点的数目小于12个,和满角存储桶的数目是8个或更多,则计算新的模拟球面与NVM中存储的模拟球面之差值。若差值大于存储球面半径的1/4,则按照以下方式存储新的模拟球面1.把新的模拟球面半径与以前8个半径取平均以确定在NVM中存储的模拟球面半径。
2.若满角存储桶的数目是8个或小于8个,则计算存储到NVM中的模拟球面中心点,其中取出新的模拟球面与NVM中存储球面之差,把它除以8,然后把这个数添加到NVM存储的球面上。这具有移动旧的NVM中心点到新的模拟中心点的效应,移动的距离是两个中心点之间距离的1/8。
3.若满角存储桶的数目是9个,则移动的距离是差值的1/4。
4.若满角存储桶的数目是10个,则移动的距离是差值的1/2。
5.若满角存储桶的数目是10或11个,则利用工作新的模拟球面中心点替换NVM中存储的旧中心点。
只要PointSet中点的数目小于12,只有在新点添加到PointSet之后,可以改变NVM中存储的模拟球面。一旦NVM中的模拟球面被更新,则在再次改变NVM之前必须添加新点。换句话说,若PointSet中有8个点,和新的模拟球面与存储的模拟球面之间的间隔大于半径的1/4,则按照上述的方式更新存储的球面。在PointSet中点的数目变成9个或更多之前,NVM不发生附加的更新,即使两个球面之间的间隔大于半径的1/4。一旦在PointSet中分配所有12个点,这个限制不再成立。如以上所描述的,首先发生的12个满角存储桶自动地触发副本到NVM中,但只有当二者之间的间隔大于半径的1/4时。
虽然本发明第一个实施例的电子罗盘描述成有三个检测元件,但是以上讨论的各种特征以及特征的组合是对仅有两个检测元件的罗盘电路的改进。所以,本发明不局限于有三个检测元件的系统。
二维或三维中的罗盘补偿技术设计成校正由于硬磁场或软磁场效应造成的罗盘误差。虽然这些误差往往较大,但通常变化很慢,因此,可以利用各种自适应算法进行恰当的校正。车辆磁场变化可以由外部因素造成,例如,铁路线,电源线,洗车站,屋顶天线,等等。
在自适应速度与校准点的稳定性之间往往有折衷方案,校准点定义为已正确地补偿罗盘的点。以上讨论的方法在稳定性损失最小的情况下提供非常快速的补偿。
任何非固定的罗盘传感器,例如,放置在运动车辆中的传感器,可以经历俯仰和滚转的动态效应。与静态的硬磁场和软磁场效应比较,俯仰和滚转导致连续的误差,由于成本和信号处理的约束,这些误差对于陆地车辆通常是不能校正的。在要求较精确的航向信息领域,通常利用俯仰和滚转传感器。具体地说,在航空和航海电子罗盘设计中通常是提供电子常平环,其中利用两个附加的传感器,一个传感器测量罗盘的俯仰,而另一个传感器测量罗盘的滚转。电子常平环实时地校正因传感器俯仰和滚转造成的罗盘航向误差。共同转让的美国专利No.6,140,933公开了在汽车罗盘中利用倾角计以校正安装了传感器的反射镜外壳倾斜。
最后,在反射镜外壳中放置磁场传感器的情况下,可以出现俯仰和滚转的静态效应,其中外壳倾斜的变化是静态的俯仰和/或滚转变化。给出合适的时间,最适应的罗盘补偿技术提供与这种静态俯仰/滚转变化相关误差的校正水平。此处的情况特别适合于三轴罗盘,因为传感器偏离水平方向的倾斜导致水平和竖直方向上检测磁场的很大偏移。若可以检测到这种事件,如上所述,可以很快地进行校正。
若静态变化发生在二轴罗盘的俯仰和/或滚转,则通过改变罗盘补偿静态变化发生之前与静态变化发生之后的差值,往往称之为它的校准值,可以获得合理的校正,如在美国专利No.6,023,299,6,140,933,和6,418,376中所公开的。然而,对于三轴罗盘,在某些情况下,利用测量的变化量更新校准值可以使航向误差增大而不是减小误差。若我们有位置传感器,一旦检测到传感器位置的变化,则必须找到更新罗盘校准的另一种技术。
现有技术告诉我们利用位置传感器以确定传感器俯仰/滚转中发生的静态变化。类似地,电子常平操作是用于校正传感器俯仰/滚转中动态变化的熟知技术。利用Analog Devices ±2g Dual-AxisAccelerometer,ADXL202E,可以制成可行的俯仰/滚转传感器。通过合适的滤波操作以得到动态和静态俯仰/滚转变化,可以获得附加的优点,它允许校正因俯仰/滚转动态变化造成的航向误差,并补偿因俯仰/滚转静态变化造成的变化。
图29和30表示传感器在两个不同地理位置上相对于y轴倾斜10°的效应。
以下的表包括以上两个位置并说明其他的三个位置。


其目的是,给出现有的校准点C0,以及两个点P0和P1,确定新的校准点C1,其中P0是在位移之前找到的点,而P1是在位移之后找到的点。若主磁场和倾角是已知的,则计算C1的实际值是很简单的。然而,我们仅知道水平磁场R。我们不知道罗盘饿地理位置,因此就不知道主磁场和倾角。图31展示我们所知道的。利用C0,P0和P1,可以定义以下的矢量。
A=(P1x-C0x,P1y-C0y,P1z-C0z)和B=(P1x-P0x,P1y-P0y,P1z-P0z)其中C0=(C0x,C0y,C0z),P0=(P0x,P0y,P0z),P1=(P1x,P1y,P1z)沿矢量A的方向定义单位矢量N=A/|A|,而B沿A方向的投影是p=(A·B)/|A|。于是,点C1′=C0+p*N。进行替换给出解C1′=C0+(A·B)/|A||A|。
或者,若半径R也是已知的,则单位矢量可以定义为沿-A的方向,U=-A/|A|,我们得到C1′=P1-R*U,或C1′=P1-R*A/|A|。
总之,我们有三种方法方法1,位移法C1的确定是根据P1和P2定义的矢量,从C0给出C″。
方法2,投影法C1′=C0+(A·B)/|A||A|。
方法3,半径法C1′=P1-R*|A||A|。
在以上的内容中仅描述方法1。方法3是最准确的,但是它要求知道R,或通过找到P0和C0定义矢量的幅度,或利用以上所示和美国专利申请No.10/210,910中描述的一些其他手段。此外,方法3要求平方根以确定|A|,而计算|A||A|不需要知道平方根。
在这个例子中,转动是绕y轴,所以,y的值是不变的。因此,点的坐标表示为Point=(x,z),P1是转动10°得到的。

表中展示根据每种方法新计算的校准点C1′以及预期顶C1与计算点C1′之间矢量的幅度。把这个误差幅度与点C0和C1定义的预期矢量幅度进行比较以得到百分比误差。

显而易见,方法2和方法3大大优于方法1。
若我们有俯仰和滚转传感器,则这些传感器的输出可用于校正罗盘传感器的动态和静态倾斜。图32是这种电路的方框图,该电路可以耦合到罗盘处理电路110的微处理器。
此外,模拟装置ADXL202E是一种可行的双轴倾斜传感器900,它可以把加速度转换成倾斜角。合理的数值是R1=125k,R2和R3=425k,C1和C2=0.47μF,C3和C4=4.7μF。选取这些数值以获得稳定的运行,和匹配可应用于地磁仪数据的滤波特性。所以,任何测量的俯仰或滚转误差可以及时地与对应的测量磁场匹配。
当加速度计的检测轴垂直于重力时(与地球表面平行),加速度计对于倾斜是最灵敏的。一旦把加速度计的输出信号转换成在-1g与+1g之间变化的加速度,则可以计算以度数表示的输出值pitch=asin(Ax/1g)roll=asin(Ay/1g)测量的俯仰和滚转可以包含在以上描述的方法中。在计算平均磁场之后(在噪声滤波器之后),以及在更新PointSet中数据点或确定当前航向之前,利用测量的俯仰角和滚转角,从完成坐标转动回到地球平面。
利用右手坐标系统,和规定顺时针转动为正的角度转动,则利用以下的公式完成坐标变换,其中滤波的地磁仪点是(Hx,Hy,Hz),则转动回到地球平面的点是Hex=Hx*cos(pitch)-Hy*sin(roll)sin(pitch)-Hz*cos(roll)sin(pitch)Hey=Hy*cos(roll)-Hz*sin(roll)Hez=Hx*sin(pitch)+Hy*sin(roll)cos(pitch)-Hz*cos(roll)sin(pitch)本发明的第二个实施例与第一个实施例有许多类似之处。例如,可以利用相同的硬件实现这两个实施例。然而,以下描述的第二个实施例具体例子的区别是,它仅利用X轴和Y轴传感器,以及它画出二维模拟几何图形。然而,可以改变以下描述的第二个实施例,使它包含第三个传感器和/或在三维空间中运算传感器数据。
与第一个实施例类似,第二个实施例利用模拟几何图形推导出车辆航向,该图形是通过几次迭代确定的最佳拟合图形。当从磁传感器得到数据时,首先处理该数据以确定数据点是否稳定。然后,处理稳定的数据点以建立参考数据点的列表,参考列表中保持这些数据点,其中最新参考数据点是在顶部。在重新访问较旧的参考点时,它们被移动到列表的顶部。因此,如以下所解释的,从堆栈的底部淘汰废弃的参考点。利用参考点确定最佳拟合的几何模拟图形和用于确定车辆航向的校准点。基于参考点的X和Y值,假设的半径R,和椭圆常数K,K用于模拟几何图形是圆或椭圆,通过几次迭代计算模拟几何图形。一旦确定最佳拟合的模拟图形(即,给出最小误差度量值的图形),则利用误差度量确定置信级。基于列表中参考点的数目,和车辆行进的距离和/或时间,可以附加地确定置信级。如以下进一步所解释的,利用置信级设置阈值以确定刚才读出的磁数据点是否足够稳定,它可用作随后校准罗盘系统的参考点。置信级还可用于确定稳定的磁数据点是否可以添加到参考列表中或与列表中现有的点取平均。以下参照其余的附图,进一步描述这个过程的细节。
图22A表示第二个实施例中具体例子的主过程流程图。主过程500是从步骤502开始,其中硬件被初始化。这包括I/O,存储器,地磁仪和显示器的初始化。然后,在步骤504,罗盘电路100(图3)的处理电路110确定非易失性存储器(NVM)112中存储的数据是否有效。如果不是(如在新车辆最初起动之后的情况),则过程进行到以下参照图22B描述的去校准子程序506。否则,若在NVM 112中存在有效数据,则处理电路110确定是否累积和存储足够多的参考点以获得良好的校准(例如,4个或更多的参考点)。如果没有,则执行去校准子程序506。否则,过程进行到步骤510,其中开始事件驱动和背景任务,当过程从校准子程序506返回时,该过程还进行到步骤510。在步骤510期间完成的事件和背景任务包括磁场处理任务(图22C),稳定点处理(图22D),和显示更新任务(图22E)。以下进一步描述这些任务。
在执行事件驱动和背景任务之后,处理电路110进行到步骤512,其中它完成任何的空闲任务或程序。以下参照图22F和22G描述这种空闲任务或程序,它包括识别最佳拟合的几何模拟图形过程。
只要车辆点火仍然接通,则步骤510和512是连续进行的。一旦车辆点火熄灭,则过程就从步骤502开始。因此,去校准子程序506仅仅是在车辆点火激励之后进行的。
如图22B所示,去校准子程序506是从步骤520开始,其中设置学习参考点的数目为0。这可以使最新校准的解是基于最新的参考点。若磁传感器安装到反射镜外壳中,这可能是重要的,因为新驾驶员可能已进入点火循环与倾斜或转动反射镜外壳之间的车辆。另一个优点是放弃瞬态数据,这些数据可能是在车辆制造期间从装配线下来得到的数据。
其次,在步骤522,处理电路110设置误差度量为高值。这样做是保证置信级是在低水平,从而降低磁数据点作为合格参考点的阈值要求,它又可以更快速地增加参考点的列表,它们用于校准罗盘系统。
在步骤524,处理电路110设置变量为缺省值,例如,设置假设的半径R和椭圆常数K为缺省值。在这个优选实施方案中,半径设置为200mG,而椭圆常数设置为K=128。以下进一步描述利用这些变量的方法。
然后,在步骤526,把信息写入到NVM 112。这种信息可以包括半径和椭圆常数的当前值,而且还可以包括数据点数目和误差度量值。随后,完成去校准子程序506,和该过程返回到图22A所示主过程500中的步骤510。
如上所述,在主过程500中步骤510执行的一个事件驱动和背景任务包括图22C所示的磁场处理任务530。例如,在4Hz与20Hz之间的周期性抽样速率下执行磁场处理任务530。如图所示,这个处理中的第一步是读出地磁仪传感器532的数据。然后,在步骤534,对这个原始数据进行滤波和计算x和y值的平均值和二阶导数。具体地说,在这个过程中,按照以下公式计算原始数据x和y的滤波值(xf和yf)xf=(x+xavg)/2yf=(y+yavg)/2其中上述两个公式中的xavg和yavg是以前计算的运行加权平均值,它是按照以下的公式进行计算
xavg=(xf+xavg*6)/7yavg=(yf+yavg*6)/7然后,计算新的一阶导数dxnew和dynewdxnew=xf-xavgdynew=yf-yavg因此,按照如下计算二阶导数d2x和d2yd2x=dxnew-dxprevd2y=dynew-dyprev其中dxprev和dxprev是以前计算的一阶导数。一旦完成上述的计算,则在dxprev和dyprev中分别存储dxnew和dynew的值,以及利用以上的公式更新xavg和yavg的平均值以包含新的滤波数据点。
然后,在步骤536,处理电路110评价现有参考数据点组的置信级。如上所述,确定置信级作为误差度量,参考数据点组中数据点数目的函数,而且还可以是车辆行进距离和/或时间的函数。更具体地说,若参考列表中的参考点数目小于或等于规定的数目(例如,4个点)或平均误差大于第一阈值(例如,8000),则处理电路110设置置信级为LOW。平均误差是模拟几何图形拟合当前数据组优劣程度的量度,并在以下结合图22G给予更详细的描述。若分配LOW置信级的两个条件中的任何一个条件都不满足,则处理电路110确定参考列表中参考数据点的数目是否在预定的范围内(例如,5至6个点)或平均误差是否大于第二阈值(例如,4000)但小于第一阈值。若任何一个条件是真的,则处理电路设置置信级为MEDIUM。若分配LOW或MEDIUM置信级的任何一个条件都不是真的,则处理电路设置置信级为HIGH。
基于置信级,设置时间延迟,点间隔的阈值,在步骤538,确定原始数据是否有噪声,运动,和航向稳定性。例如,若置信级是LOW,则噪声阈值设置为25mG,和时间延迟设置为2秒;若置信级是MEDIUM,则噪声阈值设置为15mG,和时间延迟设置为6秒;和若置信级是HIGH,则噪声阈值设置为5mG,和时间延迟设置为8秒。时间延迟用于保证作为参考点的数据是足够稳定,因此,现有参考点和解的置信级越高,则替换现有参考点就变得越困难。此外,置信级越低,则系统获取和接受新的参考点以计算具有较高置信级的解就越快。确定车辆是否运动的阈值可以是固定值,例如,2mG,或可以是作为置信级函数的变量。若确定在足够长的时间周期内低于噪声阈值的数据是否可以为稳定,则可以按照类似于参照图13的以上实施例中的使用方式利用时间延迟。基于置信级确定点间隔的阈值是以下结合图22D中步骤522所详细描述的。
在步骤540,处理电路110计算噪声电平。按照以下公式计算噪声电平噪声电平=SQUAREROOT[(d2x)2+(d2y)2]因为平方根函数的计算对于低成本处理器是耗费时间的过程,但通过估算噪声电平的平方,我们可以获得类似但较省时间的结果。或者,利用均方根或均方误差,可以计算噪声电平。例如,噪声电平可以设置成等于1/2log[(d2x)2+(d2y)2]在步骤542,基于计算的噪声电平和以上步骤538确定的阈值,处理电路110确定车辆是否在运动。因此,若噪声电平大于阈值(例如,2mG),则认为车辆是在运动。噪声签名可以随每个车辆模型而变化,若车辆模型是事先知道的,则与安装罗盘的车辆结合使用的噪声阈值可以在安装之后或安装之前是由工厂预装入的。处理电路110可以执行已知的数字信号处理技术,用于描述归因于车辆运动的噪声。此外,处理电路可以要求噪声电平是在预定时间下大于阈值,例如,2秒。然后,在步骤544,处理电路110可以基于设置的噪声标志确定车辆是否为稳定的。若计算的噪声电平大于建立的噪声阈值,则首先设置噪声标志,并在噪声电平是在噪声阈值以下并在建立的时间延迟下保持在阈值以下之前保持该设置。
在步骤546,处理电路确定车辆是否在运动,数据是否稳定,和数据是否没有噪声。若这些条件中每个条件都是真的,则处理电路110执行稳定点处理子程序548。否则,磁场处理子程序430被终止,和控制器返回到主过程500。把噪声电平和平均值与阈值进行比较以确定数据是否有噪声。若检测到噪声或运动,则初始化递减计数定时器。任何的噪声或稳定性损失就参照以上图13所描述的类似方式复位计数器。
图22D大致表示稳定点处理子程序548。如图22D所示,该子程序中的第一步(步骤550)是找到与磁场处理子程序530中得到的稳定数据点最接近和次接近的点,这些点包含在参考点的列表中。然后,在步骤552,基于置信级,当前半径,和参考点列表中包含的点数,处理电路建立新数据点的最小间隔。对较大的最小间隔有贡献的条件包括高置信级,大的半径,和列表中大的参考点数。作为一个例子,对于LOW置信级,最小间隔可以设置为当前半径/3(通常约为67mG);对于MEDIUM置信级,最小间隔可以设置为当前半径/2(通常约为100mG);对于HIGH置信级,最小间隔可以设置为当前半径×3/4(通常约为150mG)。然后,在步骤554,处理电路确定参考列表中最接近点与新稳定数据点之间的间隔距离是否大于步骤552中建立的最小间隔。若该距离大于最小间隔,则过程进行到步骤556,其中新的稳定数据点添加到参考列表中作为新的参考点。因为最好存储最新的参考点到列表的顶部,每个参考点在存储器堆栈中向下位移一个位置,而当存储器堆栈溢出时,就删除最后的参考点。否则,保持每个以前的参考数据点。然后,在步骤558,新的数据点添加到堆栈的顶部,和在返回到磁场处理子程序530之前,在步骤560存储参考点列表到NVM,子程序530再返回到主过程500。
在步骤554,若处理电路确定最接近点与新数据点之间的距离不大于最小间隔要求,则在步骤562,处理电路确定最接近的数据点是否已在参考点列表的顶部。如果是,则过程进行到步骤568。否则,首先执行步骤564和566。在步骤564,处理电路重新安排堆栈,把最接近参考点移动到堆栈的顶部。在步骤566,设置NVM标志以指出以后需要NVM写入。
在步骤568,处理电路确定次接近点是否与新的数据点太接近。若次接近点是在离新数据点的固定距离(例如,75mG)内或在作为最小间隔(例如,当前间隔的最小值)和/或半径的函数所规定的距离内,则可以发生这种情况。不对这些点取平均的一个理由是,S曲线可以使这两个点拉在一起,从而失去分辨率。因此,若次接近点是太接近,则过程进行到步骤572。否则,若次接近点不是太接近,则在进行到步骤572之前,处理电路首先执行步骤570。在步骤570,对当前数据点与现在处在堆栈顶部的最接近数据点取平均,并把平均值放回到堆栈中的第一个位置。
在步骤572,处理电路确定是否已设置NVM标志,或堆栈顶部的点是否已移动最小毫高斯数。NVM标志用于使写入到NVM的次数最小以延长NVM的寿命。若这些条件中的任何一个条件都是真的,则在返回之前处理电路在步骤560写入到NVM,否则,它只是返回到主过程程序500而不写入到NVM。例如,数据点移动的最小毫高斯数可以是30毫高斯。
在每次执行图24D中公开的过程时,得到一个稳定的数据点,从而利用最新数据连续地更新参考点的列表。这可以保证利用最新的稳定参考点连续地更新罗盘的校准。
主过程程序500的步骤510中完成的附加事件驱动和背景任务是图22E所示的更新显示子程序580。最好是在周期性基础上利用数据的短时期平均值完成这个子程序,例如,每2秒完成一次。可以利用长时期平均值以提供更多的滤波。
更新显示子程序580是从步骤582开始,它确定否有足够的参考点于得到良好的解。例如,若没有得到保证准确校准的足够参考点,则不更新显示航向。一旦得到足够的参考点,则过程进行到步骤584,其中处理电路确定是否已设置噪声标志。若已设置噪声标志,则系统不利用有噪声数据更新航向显示。因此,在步骤584作出接收数据不再是有噪声的确定之前,不更新显示。其次,在步骤586,作出关于平均值是否与模拟几何图形太远离的确定。若平均值与模拟几何图形太远离,则不更新显示航向。另一方面,若平均值足够接近于模拟几何图形,则过程进行到步骤588。与模拟几何图形周边之间典型的可接受距离限制是0.5R和1.5R。或者,Find Best-Fit Ellipse子程序604中的误差公式仅可用于这个点以及与预定阈值可比较的数值。
在步骤588,根据最新数据平均值的校准点,计算车辆航向。专业人员通常知道,这是把平均数据点的Y值(yavg-ycal)乘或除以数值K/128和然后计算反正切完成的。在步骤590,显示新计算的航向,然后,过程返回到主过程程序500。
以下参照图22F和22G描述主过程程序500的步骤512中所完成的空闲任务。具体地说,如图22F所示,第一步600是确定参考列表中是否存储足够参考点以获得良好解。同样地,在该优选实施例中,通常有4个数据点足以获得良好解。若没有足够的参考点,则该过程返回到主过程程序500,且这个过程继续进行直到有足够参考点以获得良好解。当获得足够参考点时,就执行重要变量复制到暂时工作副本的步骤602。例如,这可以包括参考点列表的工作副本,最佳拟合几何图形的半径,图形的椭圆常数K,和图形的中心校准点。然后,执行找到最佳拟合椭圆子程序604。以下参照图22G描述最佳拟合椭圆子程序604。
这个最佳拟合过程604是从设置最佳误差度量值为高值开始,例如,10,000(步骤606)。然后,作出关于模拟圆校准中心点的最初估算,它是通过计算参考列表中存储的参考点X和Y平均值(步骤608)。最初,利用R=200mG的缺省半径值(步骤610)和利用K=128的缺省椭圆常数(步骤612)。第二个实施例的优选实施方案利用以下的公式确定模拟几何图形(xavg-xcal)2+(K/128(yavg-ycal)2)=R2专业人员显然知道,以上的公式是圆的公式,不同的是引入椭圆常数到公式中的数值K/128。通过最初设置K=128,最初猜想的模拟几何图形是半径为200mG的圆和中心点对应于参考列表中参考点的X和Y平均值。如步骤614所指出的,对中心点(xcal,ycal),半径R,和椭圆常数K作穷举式迭代搜索,它得到最低的误差度量,从而提供与参考列表中所含参考点有最佳的拟合。如步骤616所说明的,确定每个参考点的误差值并求和以确定误差度量。更具体地说,利用以下的公式计算特定参考点相对于模拟几何图形的误差误差=ABS[(x-xcal)2+(K/128(y-ycal))2-R2]在步骤618,处理电路标志哪个参考点有最高误差并存储这个误差量。然后,在步骤620,通过对所有参考点的误差求和计算误差度量。然后,在步骤622,从误差和中减去它的误差,从而去除最坏数据点的效应。然后,在步骤624,处理电路确定如此计算的误差之和是否小于目前得到的最佳误差和。若该误差小于以前的最佳拟合,则在进行到步骤628之前存储xcal,ycal,R,和K的值(步骤626),步骤628确定是否已测试所有的xcal,ycal,R,和K值。如果没有,则该过程进行到步骤630,其中回环通过步骤616-628,检验下一组的xcal,ycal,R,和K值。这个环路继续进行直至在步骤628已测试所有的值,在此情况下完成环路(步骤632)和基于最佳拟合算法计算平均误差,这是把每个参考点的误差之和除以参考列表中的参考点数目。这个值用于确定以上描述的置信级。然后,该过程返回到空闲程序512中的步骤634。
在步骤630中确定下次检验哪些值时,优选的实施方案首先给xcal值增大10mG增量直至大于参考数据点x部分平均值的400mG,然后,连续地使xcal值减小10mG增量直至它到达数值-400mG。然后,利用得到最佳拟合的xcal值(即,最小误差度量),按照类似的方式增大和减小ycal的值。一旦完成这些步骤,则在至今找到的最佳拟合参考点附近,使xcal值以1mG的步长增大10mG,和以1mG的步长减小10mG。然后,在类似地以1mG的步长增大和减小ycal的同时,存储和利用有最小误差度量的xcal值。一旦按照这种方式确定xcal和ycal的最佳值,则按照类似的方式增大和减小半径R的值以得到最佳半径拟合。同样地,增大和减小K值以调整模拟图形的椭圆率以得到最佳拟合。
在这个优选实施方案中,参考列表是限于8个参考点。然而,应当理解,列表中包含的参考点数目可以变化,它取决于所要求的分辨率以及处理电路的处理速度。一般地说,参考列表中包含的参考点越多,则识别最佳拟合的模拟图形需要更多的处理时间。此外,虽然以上描述了当前优选的最佳拟合算法,但可以利用具有更快模拟和/或更健壮模拟的其他最佳拟合算法。
在完成寻找最佳拟合椭圆子程序604之后,处理电路返回到空闲子程序512中的步骤634(图22F)。在步骤634,把最佳拟合的校准点,半径,椭圆常数,和误差度量复制到主处理程序利用的存储器位置,因此,在计算和显示车辆航向时可以利用新的解决方案。在步骤636,它确定校准点是否已位移足够量以证实写入新的信息到非易失性存储器。如果是,则在回到主处理程序之前,在步骤638写入信息到NVM。完成步骤636是为了限制写入到NVM中的数目,从而延长NVM的寿命。
图23说明通过本发明的实践可以实现的具体优点。如图23所示,数据点A-H代表顺序得到的参考数据点,其中数据点A是第一个得到的参考数据点。如上所述,这些参考点存储到高达8个或更多参考点的列表中。也是以上所讨论的,根据少至4个参考数据点,可以确定最佳拟合的模拟几何图形。此处,在图23所示的例子中,前4个参考数据点A-D得到最佳拟合的模拟图形M,它的中心校准点是(xcal,ycal)。
在得到参考数据点E时,这个参考数据点E添加到参考列表的顶部。然而,因为参考点E与模拟几何图形M的距离非常大,可能有这样的情况,参考数据点E可以排除在用于迭代地选取或重新选取模拟图形M的那些参考数据点以外。基于误差度量的增加超过预定的阈值,或模拟图形M中校准中心点移动的距离超过预定的距离,可以作出是否排除参考数据点的决定。
随后,当参考数据点F添加到参考列表中时,基于利用参考数据点E和F导致误差度量的增加,也可以排除参考数据点F。类似的结果可应用于得到参考数据点G。然而,在得到参考数据点H时,参考数据点E-H就构成足够的点数以确保它们有最佳拟合模拟图形的解决方案。因此,在此时,可以从解决方案中排除参考数据点A-D,或者,每组参考点A-D和E-H分别有两个良好的模拟图形,则可以存储和随后利用两个解决方案以确定车辆航向。可以利用最佳拟合参考点E-H的最佳拟合几何图形N,因为参考点E-H是8个参考点中最新得到的参考点。若发生以上讨论的情况,则可以存储和分别更新两个单独组的参考列表。因此,若随后得到与参考数据点E-H最佳拟合的其他参考数据点,则这个新的参考数据点就替换两个列表中一个列表的参考数据点A,但不必在另一个列表中。这可以同时存储两个单独的解决方案,选取的两个解决方案中最佳拟合最新参考数据点的一个方案。这种情况是可能的,若磁传感器安装到后视镜外壳中,且两个不同的驾驶员使用车辆和调整反射镜位置到两个不同的位置。还可以发生这样的情况,若存在暂时的磁车辆扰动,从而使得到数据点的定位产生暂时的位移。因此,若得到的参考数据点最拟合两个模拟图形中的第一个图形(例如,图形M),则系统可以重新返回到第一个模拟图形,为的是更快地适应于反射镜外壳位置的变化或车辆磁性的变化。
如上所述,当模拟解决方案中的置信级增大时,新参考点的滤波阈值也相应地增大。因此,它可能需要更长的时间学习参考列表中的最新几个参考点,或替换或改变参考列表中的参考点。因此,系统对检测车辆磁性突然变化的响应可能没有我们所需要的那样快,如以上参照图23所描述的情况。利用两个单独的参考列表,其中一个列表比另一个列表有较低的滤波阈值,系统可以更快地学习新的参考点并调整到检测车辆磁性的这种突然变化。
本发明所描述的是在后视镜组件的反射镜外壳内包含电子罗盘系统。专业人员可以理解,在后视镜组件中可以包含各种其他的车辆附件和元件,或全部,或部分以及各种组合。这些车辆附件和元件可以安装到反射镜外壳,反射镜支架,与反射镜支架或外壳的连接件,或仪表板或与后视镜组件相关的其他外壳。此外,任何这些车辆附件可以互相分享元件,例如,处理器,传感器,功率源,线束,和插头,显示器,开关,天线,等等。以下进一步描述其他的车辆附件,元件或特征的例子。
图33A-33C表示另一个实施例的后视镜组件900a,其中包含上述的电子罗盘系统。如图33A-33C所示,后视镜组件900a包括仪表玻璃框902和外壳904。玻璃框与机壳的组合以限定反射镜外壳,它包含反射元件901和信息显示器905a和905b等的特征。共同转让的美国专利No.6,102,546,D410,607,6,407,468,6,420,800和6,471,362描述可用于本发明的各种仪表玻璃框,机壳和相关按钮结构的例子。
如图33A-33C所示,反射镜组件可以包括第一微音器910a和第一微音器910b。用于本发明的微音器例子是在共同转让的美国专利申请No.09/444,176和09/724,119,美国专利申请出版物No.US2002/0110256 A1和PCT申请No.PCT/US02/32386中描述。虽然这两个微音器安装在反射镜机壳904的背面,一个或多个这种微音器可以安装到反射镜组件的顶部(如图34A和34B所示),反射镜组件的底部,或反射镜机壳或仪表玻璃框内的任何地方。最好是,两个微音器910a和910b包含在凹槽部分912a和912b内的反射镜机壳背面上的反射镜组件中,每个端部附近有一个微音器。如图33A所示,微音器的结构是在微音器外壳918内有围绕换能器916延伸的声阻尼914。这个优选结构的其他细节是在共同转让的PCT申请No.PCT/US02/32386中描述。包含微音器的音频系统可以在共同的控制下至少部分地可以与信息显示器集成和/或可以与信息显示器分享元件。此外,这些系统的状态和/或其控制装置的状态可以显示在相关的信息显示器上。
如图34A和34B所示,在反射镜组件900b的顶部配置单个微音器910。在这种结构中,最好是在微音器外壳918内包含两个换能器,其方式类似于上述国际PCT申请No.PCT/US02/32386和美国专利申请出版物No.US 2002/0110256 A1中所公开的。
反射镜组件900可以包括第一照明装置920a和第二照明装置920b。用于本发明的各种照明装置和照明器是在共同转让的美国专利No.5,803,579,6,335,548,6,441,943,6,521,916,和6,523,976以及共同转让的美国专利申请No.09/723,675,10/078,906,和10/230,804中描述的。每个照明装置最好包括反射器,透镜和照明器(未画出)。通常可以有两个照明装置以照明前乘客座位区和照明驾驶员座位区。或者,仅仅有照明这两个座位区的一个照明装置和/或可以有附加的照明装置,例如,用于照明中心控制面板区,顶部控制面板区或前座位区之间区域的照明装置。
反射镜组件900还可以包括第一开关922a和第二开关922b。用于本发明的合适开关是在共同转让的美国专利No.6,407,468,6,420,800,6,426,568,和6,471,362以及共同转让的美国专利申请出版物No.US 2002/0024713 A1中详细描述。可以合并这些开关以控制照明装置,显示器,反射镜反射率,话控系统,罗盘系统,电话系统,高速公路收费所接口,遥信系统,前灯控制器,雨水传感器,轮胎压力监测系统,导航系统,离巷警告系统,自适应车速控制系统,等等。此处描述的或在上述参考文件内的任何其他显示器或系统可以合并到相关车辆内的任何位置并可以利用开关进行控制。
反射镜组件900还可以包括第一指示器924a和第二指示器924b。用于本发明的各种指示器是在共同转让的美国专利No.5,803,579,6,335,548,6,441,943,6,521,916和6,523,976以及共同转让的美国专利申请No.09/723,675,10/078,906,和10/230,804中描述的。这些指示器可以指出显示器的状态,反射镜反射率,话控系统,罗盘系统,电话系统,高速公路收费所接口,遥信系统,前灯控制器,雨水传感器,安全系统,等等。此处描述的或在上述参考文件内的任何其他显示器或系统可以合并到相关车辆内的任何位置并可以有指示器描述的状态。
反射镜组件900还可以包括作为眩光传感器的第一光传感器926和作为环境传感器的第二光传感器928。用于本发明的优选光传感器是在共同转让的美国专利No.5,923,027,6,313,457,6,359,274,6,379,013,和6,402,328,美国专利申请出版物No.US2002/0056806 A1和美国专利申请No.10/068,540中详细描述。眩光传感器926和/或环境传感器928自动控制自变光反射元件的反射率以及信息显示和/或背面光照的强度。眩光传感器926还可用于检测拖车的前灯,而环境传感器928用于检测系统正在运行的环境光照明条件。在另一个实施例中,可以包含天空传感器930并用于检测相关车辆之上或前面的光强。天空传感器930可用于自动控制自变光元件的反射率,受控车辆的外部灯光和/或信息显示的强度。反射镜组件还可以包括太阳负载传感器,用于检测射向车辆驾驶员侧和乘客侧的光强,为的是控制车辆的气候控制系统。
此外,反射镜组件可以包括位于反射镜玻璃框上的第一,第二,第三,第四,和第五操作员接口932a-932e。图示的每个操作员接口包含背面光照的信息显示“A”,“AB”,“A1”,“C”,和“12”。应当明白,这些操作员接口可以包含在相关车辆的任何地方,例如,在反射镜机壳,附件模块,仪器面板,顶部控制板,仪表盘,座位,中心控制板,等等。合适的开关结构在共同转让的美国专利No.6,407,468,6,420,800,6,426,568,和6,471,362,以及共同转让的美国专利申请出版物No.US2002/0024713 A1中详细描述。这些操作员接口可以控制照明装置,显示器,反射镜反射率,话控系统,罗盘系统,电话系统,高速公路收费所接口,遥信系统,前灯控制器,雨水传感器,轮胎压力监测系统,导航系统,离巷警告系统,自适应车速控制系统,等等。此处描述的或在上述参考文件内的任何其他显示器或系统可以合并到相关车辆内的任何位置并可以利用操作员接口进行控制。例如,用户可以给显示器编程以描述预定的信息,或可以给显示器编程以滚动通过一系列信息,或可以输入与某个工作设备相关的设置点,以及在给定事件发生之后,显示与传感器输入相关的某个信息。在一个实施例中,例如,在发动机温度超过阈值之前,给定的显示可以是在非照明状态,然后,显示器自动地设置成显示发动机温度。另一个例子是,位于车辆后部的接近传感器可以连接到控制器并与后视镜中的显示器组合,可以给驾驶员指出与某个物体的距离;该显示可以配置成条状,其长度正比于给定的距离。
虽然图33A-33C和34A-34B描述这些附加特征的具体位置和数目,但是应当明白,或多或少的各个装置可以合并到相关的车辆内,如在上述参考文件中所描述的。
反射镜支架903是用于安装车辆内的反射镜装置到挡风玻璃898或车顶结构。应当明白,附件的主机可以包含在支架903或外壳952中,粘贴到支架903,例如,雨水传感器,摄像机,前灯控制器,附加的微处理器,附加的信息显示器,罗盘传感器,等等。这些系统可以在共同的控制下至少部分地可以与信息显示器集成和/或可以与信息显示器分享元件。此外,这些系统的状态和/或其控制装置的状态可以显示在相关的信息显示器上。
图33A所示的反射镜组件900还包括可以在其上面安装罗盘传感器模块(未画出)的电路板960,和具有输入/输出总线接口(未画出)的子电路板962。
一个或两个传感器926和928的电输出信号可用作控制器(未画出)的输入,用于控制反射元件901的反射率,或显示器905a和905b中任何一个或两个的强度。此处使用的各种控制电路的细节是在共同转让的美国专利No.5,883,605,5,956,012,6,084,700,6,222,177,6,224,716,6,247,819,6,249,369,6,392,783,和6,402,328中描述。这些系统可以在共同的控制下至少部分地可以与信息显示器集成和/或可以与信息显示器分享元件。此外,这些系统的状态和/或其控制装置的状态可以显示在相关的信息显示器上。
虽然描述的罗盘传感器模块安装在电路板960上,但是应当明白,传感器模块可以放置在支架903内,与接近反射镜组件900上的附件模块952上,或相关车辆内的任何位置,例如,在仪表盘以下,顶部控制板,中心控制板,总导管,发动机舱,等等。上述的罗盘系统可以在共同的控制下至少部分地可以与信息显示器集成和/或可以与信息显示器分享元件。此外,这些系统的状态和/或其控制装置的状态可以显示在相关的信息显示器上。
电路板960可以包括控制器(未画出),例如,微处理器,而子电路板962可以包括信息显示器905a。微处理器可以从罗盘传感器模块接收信号,以及处理信号和发射信号到子电路板以控制显示器905a,用于指出对应的车辆航向。如此处描述和在上述参考文件内,控制器可以从光传感器,雨水传感器(未画出),自动车辆外部灯光控制器(未画出),微音器,全球定位系统(未画出),电信系统(未画出),操作员接口,和其他装置的主机接收信号,并控制信息显示器以提供合适的视觉指示。
用于控制罗盘系统的控制器至少可以部分地控制反射镜反射率,外部灯光,雨水传感器,罗盘,信息显示器,雨刷,加热器,去霜器,去雾器,空调,电话系统,导航系统,安全系统,轮胎压力监测系统,车库门开启发射器,远程无钥匙入口,遥测系统,话音识别系统,例如,数字信号处理器基话控系统,和车速。控制器796(未画出)可以接收来自开关和/或与此处描述和参考文件中描述装置的信号,用于自动操作此处描述和参考文件中描述的任何其他装置。控制器至少可以部分地放置在反射镜组件之外,或可以包括车辆中任何位置的第二个控制器,或车辆内的附加控制器。各个处理器可以配置成串行,并行地通过车辆总线,CAN总线,或任何其他合适的通信装置借助于BLUETOOTHTM协议,无线通信进行通信。这些外部连接器可以有多插针连接器的接口964。
按照本发明可以包含外部光控系统,如在共同转让的美国专利No.5,990,469,6,008,486,6,130,421,6,130,448,6,255,639,6,049,171,5,837,994,6,403,942,6,281,632,6,291,812,6,469,739,6,465,963,6,429,594,和6,379,013,美国专利申请出版物No.US 2002/0005472 A1和美国专利申请No.09/528,389,09/678,586,09/800,460,60/404,879,60/394,583,10/235,476,和10/208,142中所描述的。这些系统在共同的控制下至少部分地可以与信息显示器集成和/或可以与信息显示器分享元件。此外,这些系统的状态和/或其控制装置的状态可以显示在相关的信息显示器上。如在美国专利申请No.09/800,460中所公开的,罗盘传感器和成像传感器阵列950可以放置在连接到支架903的附件外壳952中。
在共同转让的美国专利No.5,923,027和6,313,457以及美国专利申请No.09/970,728和09/970,962中描述湿度传感器和挡风玻璃雾气检测器系统。这些系统在共同的控制下至少部分地可以与信息显示器集成和/或可以与信息显示器分享元件。此外,这些系统的状态和/或其控制装置的状态可以显示在相关的信息显示器上。
共同转让的美国专利No.6,262,831描述用于本发明的功率源。这些系统在共同的控制下至少部分地可以与信息显示器集成和/或可以与信息显示器分享元件。此外,这些系统的状态和/或其控制装置的状态可以显示在相关的信息显示器上。
反射镜组件还可以包括一个或多个天线940,用于接收和/或发射RF信号。合适的接收,发射,和/或处理电路还可以包含在或连接到反射镜组件。这种天线可用于蜂窝式电话系统,BLUETOOTHTM发射/接收系统,远程无钥匙入口(RKE)系统,可训练车库门开启系统,轮胎压力监测系统,全球定位卫星系统,LORAN系统,等等。这些系统中的一些系统可以分享共同天线和接收,发射,处理,和显示电路。在共同转让的美国专利No.6,215,389和6,431,712以及美国专利申请No.09/359,144和09/949,955中公开后视镜组件中包含轮胎压力监测系统的例子。在共同转让的美国专利No.6,166,698,6,297,781,6,396,446,以及在美国专利申请出版物No.US2002/0032510 A1中公开后视镜组件中包含GPS系统的例子。在共同转让的美国专利申请出版物No.US2002/0193946 A1中公开后视镜组件中包含LORAN系统的例子。在美国专利申请No.US2002/0032510 A1中公开后视镜组件中包含电话/远程信息处理系统和BLUETOOTHTM系统的例子。在美国专利No.6,091,343中公开后视镜组件中包含可训练车库门开启系统和RKE系统。
反射镜还可以包括红外(IR)发射器/接收器,用于发射信息到反射镜组件和从反射镜组件接收信息以及发射信息到车辆和从车辆接收信息。在共同转让的美国专利申请No.6,407,712中公开这种后视镜组件的例子。
反射镜组件还可以包括一个或多个相同或不同类型的显示器。不同类型的显示器例子包括真空荧光,LCD,反向LCD,LED,有机LED,点矩阵,背光标记,等等。对于同时显示大量信息的显示器,可以利用在共同转让的美国专利No.6,346,698中公开的显示器。在共同转让的美国专利No.6,170,956和6,356,376,以及美国专利申请No.09/586,813和09/664,151中公开背光标记面板显示器的例子。在共同转让的美国专利No.6,356,376和在美国专利申请出版物No.US2002/0154379 A1中公开用于后视镜的各种显示器。
后视镜组件外壳中车辆附件的布线可以在管道下穿过装配架并沿挡风玻璃(若安装支架没有延伸到headliner)。在共同转让的美国专利No.6,467,919中公开后视镜组件的例子,其中反射镜组件外壳中的附件布线穿过装配架。
虽然本发明描述成是在后视镜组件外壳内放置传感器实现的,但是传感器可以安装到装配底座或在后视镜组件的任何其他位置。此外,本发明电子罗盘的任何或所有各种元件可以安装在车辆中的任何位置。还可以理解,本发明的某些实施例是新颖的并可用于各种车辆,例如,陆地车辆(即,汽车,卡车,体育运动车辆(SUV),火车,摩托车,自行车,机动和脚踏两用车,滑行车,雪地汽车,全地形越野车(ATV),军用车辆)以及其他的运载工具,例如,飞机,海上船只,和水陆两用车。
虽然本发明描述成利用这样一个过程,从磁传感器电路输出的信号表示在二维或三维坐标系统中,但类似的方法可用于单独地处理和分析信号,然后,比较单独分析的结果以得到类似的结果。
以上的描述仅仅参照一些优选的实施例。专业人员和实现或利用本发明的人员可以对本发明进行改动。所以,应当明白,附图中画出和描述的实施例仅仅用于说明的目的,而不是对本发明范围的限制,按照专利法原理解释的本发明范围是受以下权利要求书的限制。
权利要求
1.一种车辆电子罗盘,包括磁传感器电路,用于检测地球磁场矢量的三个垂直分量,和产生代表该三个测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,模拟从三个测定分量导出的三维几何图形,在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
2.按照权利要求1的电子罗盘,还包括耦合到所述处理电路的航向指示器,用于接收航向信号和提供车辆航向指示给车辆占用人。
3.按照权利要求2的电子罗盘,其中所述航向指示器是显示器。
4.按照权利要求1的电子罗盘,其中三维几何图形是代表与测定分量中导出的数据点最佳拟合的模拟图形。
5.按照权利要求1的电子罗盘,其中基于从测定分量导出的至少5个参考数据点,所述处理电路模拟三维几何图形。
6.一种车辆电子罗盘,包括磁传感器电路,用于检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量,在参照选取的模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
7.按照权利要求6的电子罗盘,还包括耦合到所述处理电路的航向指示器,用于接收航向信号和提供车辆航向指示给车辆占用人。
8.按照权利要求6的电子罗盘,其中模拟几何图形是圆。
9.按照权利要求6的电子罗盘,其中模拟几何图形是椭圆。
10.按照权利要求6的电子罗盘,其中模拟几何图形是三维几何图形。
11.按照权利要求6的电子罗盘,其中模拟几何图形是球面。
12.按照权利要求6的电子罗盘,其中模拟几何图形是椭球面。
13.按照权利要求6的电子罗盘,其中最初假设模拟几何图形和基于最初假设计算误差度量,在误差度量最小化之前,改变假设的模拟几何图形,然后利用具有最小误差度量的改变模拟几何图形以确定车辆航向,从而确定最佳拟合的模拟几何图形。
14.按照权利要求6的电子罗盘,其中基于测定分量通过重复地比较和改变模拟几何图形的迭代处理,确定最佳拟合的模拟几何图形。
15.按照权利要求6的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
16.按照权利要求6的电子罗盘,其中基于从测定分量导出的至少5个参考数据点,所述处理电路选取模拟几何图形。
17.一种车辆电子罗盘,包括磁传感器电路,用于检测地球磁场矢量的三个垂直分量,和产生代表该三个测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,确定几何图形,在参照几何图形的同时,计算车辆航向作为该至少两个测定分量的函数,确定误差矢量的幅度,该矢量是从几何图形的周边延伸到三个测定垂直分量中最新的测定分量,以及若误差矢量的幅度不大于预定的阈值,则产生代表计算航向的航向信号。
18.按照权利要求17的电子罗盘,还包括耦合到所述处理电路的航向指示器,用于接收航向信号和提供车辆航向指示给车辆占用人。
19.按照权利要求18的电子罗盘,其中所述航向指示器是显示器。
20.按照权利要求17的电子罗盘,其中基于从测定分量导出的至少5个参考数据点,所述处理电路确定几何图形。
21.按照权利要求17的电子罗盘,其中所述处理电路确定从三个测定分量导出的三维几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
22.按照权利要求17的电子罗盘,其中所述处理电路选择与选取数据点构成最佳拟合的几何图形,该数据点对应于随时间的测定分量。
23.一种车辆电子罗盘,包括磁传感器电路,用于检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于随时间的测定分量通过重复地比较和改变几何图形,迭代地选取模拟几何图形,在参照几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
24.按照权利要求23的电子罗盘,其中模拟几何图形是圆。
25.按照权利要求23的电子罗盘,其中模拟几何图形是椭圆。
26.按照权利要求23的电子罗盘,其中模拟几何图形是三维几何图形。
27.按照权利要求26的电子罗盘,其中模拟几何图形是球面。
28.按照权利要求26的电子罗盘,其中模拟几何图形是椭球面。
29.按照权利要求23的电子罗盘,其中基于从测定分量导出的至少5个参考数据点,所述处理电路选取模拟几何图形。
30.按照权利要求23的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路迭代地选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
31.按照权利要求23的电子罗盘,其中所述处理电路迭代地选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量。
32.按照权利要求23的电子罗盘,其中所述处理电路确定误差矢量的幅度,该矢量是从选取的模拟几何图形周边延伸到最新的测定分量,以及若误差矢量的幅度不大于预定的阈值,则产生代表计算航向的航向信号。
33.一种车辆电子罗盘,包括磁传感器电路,用于检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号,所述处理电路还配置成(a)建立多个角存储桶,每个角存储桶对应于模拟几何图形中互不相交的角度范围,(b)累积包含多个数据点的点组,每个数据点对应于其他数据点以外在不同车辆航向读出的测定分量,(c)计算该点组中数据点的航向角,(d)选取数据点的航向角是在某个角度范围内的角存储桶,(e)分配数据点到步骤(d)中选取的角存储桶,(f)重复步骤(c)至(e),直至所有的数据点已分配到角存储桶,和(g)基于该点组中的数据点,调整模拟几何图形。
34.按照权利要求33的电子罗盘,其中所述处理电路还配置成(h)若需要替换的点对应于给不同数据点分配的角存储桶,则利用新的数据点替换该点组中的数据点。
35.按照权利要求33的电子罗盘,其中基于至少5个数据点,每个数据点存储在分开的角存储桶,所述处理电路选取模拟几何图形。
36.按照权利要求33的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
37.按照权利要求33的电子罗盘,其中所述处理电路选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量。
38.按照权利要求33的电子罗盘,其中所述处理电路确定误差矢量的幅度,该矢量是从模拟几何图形的周边延伸到最新的测定分量,以及若误差矢量的幅度不大于预定的阈值,则产生代表计算航向的航向信号。
39.按照权利要求33的电子罗盘,其中基于随时间的测定分量通过重复地比较和改变几何图形,所述处理电路迭代地选取模拟几何图形。
40.一种车辆电子罗盘,包括至少包含两个检测元件的磁传感器电路,每个检测元件检测地球磁场矢量的一个分量,该分量垂直于其他传感器的测定分量,和产生代表该测定分量的输出数据信号;和耦合到所述磁传感器电路的处理电路,用于接收输出数据信号,关联来自每个所述检测元件的输出数据信号以建立数据点,利用给最新数据点比以前数据点较大权重的加权平均,应用平滑滤波器以平滑该数据点,计算车辆航向作为最新数据点的函数,和产生代表计算航向的航向信号。
41.按照权利要求40的电子罗盘,其中所述处理电路应用的平滑滤波器是指数平滑滤波器。
42.按照权利要求40的电子罗盘,其中所述处理电路选取模拟几何图形,和在参照模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
43.按照权利要求42的电子罗盘,其中模拟几何图形的选取是基于从测定分量导出的至少5个参考数据点。
44.按照权利要求42的电子罗盘,其中所述处理电路选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量。
45.按照权利要求42的电子罗盘,其中所述处理电路确定误差矢量的幅度,该矢量是从模拟几何图形的周边延伸到最新的测定分量,以及若误差矢量的幅度不大于预定的阈值,则产生代表计算航向的航向信号。
46.按照权利要求42的电子罗盘,其中基于随时间的测定分量通过重复地比较和改变几何图形,所述处理电路迭代地选取模拟几何图形。
47.按照权利要求40的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
48.一种车辆电子罗盘,包括至少包含两个检测元件的磁传感器电路,每个检测元件检测地球磁场矢量的一个分量,该分量垂直于其他传感器器的测定分量,和产生代表测定分量的输出数据信号;和耦合到所述磁传感器电路的处理电路,用于接收输出数据信号,关联每个所述检测元件的输出数据信号以建立数据点,确定数据点位置相对于至少一个以前数据点的二阶导数,比较二阶导数的幅度与第一阈值以确定检测元件的输出数据信号是否有噪声,计算车辆航向作为最新数据点的函数,和产生代表计算航向的航向信号。
49.按照权利要求48的电子罗盘,其中若二阶导数的幅度大于第一阈值,则所述处理电路设置延迟计数器作为二阶导数大于第一阈值范围的函数,和在延迟计数器终止之前避免利用模拟的输出数据信号。
50.按照权利要求48的电子罗盘,其中利用给接收的数据点比以前数据点较大权重的加权平均,所述处理电路应用平滑滤波器以平滑接收的数据点。
51.按照权利要求48的电子罗盘,其中所述处理电路选取模拟几何图形,和在参照模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
52.按照权利要求51的电子罗盘,其中模拟几何图形的选取是基于从测定分量导出的至少5个参考数据点。
53.按照权利要求51的电子罗盘,其中所述处理电路选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量。
54.按照权利要求51的电子罗盘,其中所述处理电路确定误差矢量的幅度,该矢量是从模拟几何图形的周边延伸到最新的测定分量,和若误差矢量的幅度不大于预定的阈值,则产生代表计算航向的航向信号。
55.按照权利要求51的电子罗盘,其中基于随时间的测定分量通过重复地比较和改变几何图形,所述处理电路迭代地选取模拟几何图形。
56.按照权利要求48的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
57.一种车辆电子罗盘,包括至少包含两个检测元件的磁传感器电路,每个检测元件检测地球磁场矢量的一个分量,该分量垂直于其他传感器测定的分量,和产生代表测定分量的输出数据信号;和耦合到所述磁传感器电路的处理电路,用于接收输出数据信号,关联每个所述检测元件的输出数据信号以建立数据点,通过监测检测电平的变化,确定检测元件输出数据信号的噪声电平,设置延迟计数器作为噪声电平的函数,在延迟计数器终止之前避免利用几何模拟的输出数据信号,计算车辆航向作为最新数据点的函数,和产生代表计算航向的航向信号。
58.按照权利要求57的电子罗盘,其中若噪声电平大于噪声阈值,则所述处理电路不利用最新数据点更新航向。
59.按照权利要求57的电子罗盘,其中所述处理电路在每次接收到数据点时给延迟计数器增1,它导致噪声电平大于阈值电平的确定。
60.按照权利要求57的电子罗盘,其中所述处理电路在每次接收到数据点时给延迟计数器减1,它导致噪声电平不大于阈值电平的确定。
61.按照权利要求57的电子罗盘,其中所述处理电路选取模拟几何图形,和在参照模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
62.按照权利要求61的电子罗盘,其中模拟几何图形的选取是基于从测定分量导出的至少5个参考数据点。
63.按照权利要求61的电子罗盘,其中所述处理电路选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量。
64.按照权利要求61的电子罗盘,其中所述处理电路确定误差矢量的幅度,该矢量是从模拟几何图形的周边延伸到最新的测定分量,和若误差矢量的幅度不大于预定的阈值,则产生代表计算航向的航向信号。
65.按照权利要求61的电子罗盘,其中基于随时间的测定分量通过重复地比较和改变几何图形,所述处理电路迭代地选取模拟几何图形。
66.按照权利要求57的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
67.一种车辆电子罗盘,包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,选取椭圆模拟几何图形,在参照椭圆模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
68.按照权利要求67的电子罗盘,其中基于从测定分量导出的至少5个参考数据点,所述处理电路选取椭圆模拟几何图形。
69.按照权利要求67的电子罗盘,其中所述处理电路选择与选取数据点构成最佳拟合的模拟椭圆几何图形,该数据点选取对应于随时间的测定分量。
70.按照权利要求67的电子罗盘,其中所述处理电路确定误差矢量的幅度,该矢量是从椭圆模拟几何图形的周边延伸到最新的测定分量,和若误差矢量的幅度不大于预定的阈值,则产生代表计算航向的航向信号。
71.按照权利要求67的电子罗盘,其中基于随时间的测定分量通过重复地比较和改变模拟几何图形,所述处理电路迭代地选取椭圆模拟几何图形。
72.一种车辆电子罗盘,包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的若干个参考数据点确定校准点,确定噪声阈值随作为若干个参考点的函数计算当前校准点,确定测定分量是否大于噪声阈值,若测定分量不大于噪声阈值,则在参照校准点的同时,计算车辆航向作为该至少两个测定分量的函数,和产生代表计算航向的航向信号。
73.按照权利要求72的电子罗盘,其中通过选取确定校准点相对位置的模拟几何图形,所述处理电路确定校准点。
74.按照权利要求73的电子罗盘,其中基于5个参考数据点,所述处理电路选取模拟几何图形。
75.按照权利要求73的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
76.按照权利要求73的电子罗盘,其中所述处理电路选择与参考数据点构成最佳拟合的模拟几何图形。
77.按照权利要求73的电子罗盘,其中所述处理电路确定误差矢量的幅度,该矢量是从模拟几何图形的周边延伸到最新的测定分量,和若误差矢量的幅度不大于预定的阈值,则产生代表计算航向的航向信号。
78.按照权利要求73的电子罗盘,其中基于随时间的测定分量通过重复地比较和改变几何图形,所述处理电路迭代地选取模拟几何图形。
79.一种车辆电子罗盘,包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的多个参考数据点,确定模拟几何图形,确定噪声阈值作为模拟几何图形与参考数据点拟合程度的函数,该参考数据点用于确定模拟几何图形,若测定分量不大于噪声阈值,则在参照模拟几何图形的同时,计算车辆航向作为该至少两个测定分量的函数,和产生代表计算航向的航向信号。
80.按照权利要求79的电子罗盘,其中基于至少5个参考数据点,所述处理电路选取模拟几何图形。
81.按照权利要求79的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
82.按照权利要求79的电子罗盘,其中所述处理电路选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量。
83.按照权利要求79的电子罗盘,其中所述处理电路确定误差矢量幅度,该矢量是从模拟几何图形的周边延伸到最新的测定分量,和若误差矢量幅度不大于预定的阈值,则产生代表计算航向的航向信号。
84.按照权利要求79的电子罗盘,其中基于随时间的测定分量通过重复地比较和改变几何图形,所述处理电路迭代地选取模拟几何图形。
85.一种安装在车辆后视镜外壳中的电子罗盘,包括磁传感器电路,至少包含第一检测元件和第二检测元件,每个检测元件用于检测地球磁场矢量基本横向的垂直分量,和第三检测元件,用于检测地球磁场矢量的基本纵向分量,所述检测元件安装在反射镜外壳中,和产生代表该三个测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,通过监测车辆行进通过预定车辆航向范围期间的所述第三检测元件,确定反射镜外壳的倾斜角,补偿第一检测元件和第二检测元件测定分量的反射镜外壳倾斜角,计算车辆航向作为第一检测元件和第二检测元件测定分量的函数,和产生代表计算航向的航向信号。
86.按照权利要求85的电子罗盘,其中车辆航向的预定范围包括在车辆行进通过约360度期间所计算的航向。
87.按照权利要求85的电子罗盘,其中所述处理电路选取模拟几何图形,和在参照模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
88.按照权利要求87的电子罗盘,其中基于从测定分量导出的至少5个参考数据点,所述处理电路选取模拟几何图形。
89.按照权利要求87的电子罗盘,其中所述处理电路选择与选取数据点构成最佳拟合的模拟几何图形,该数据点对应于随时间的测定分量。
90.按照权利要求87的电子罗盘,其中所述处理电路确定误差矢量的幅度,该矢量是从模拟几何图形的周边延伸到最新的测定分量,和若误差矢的量幅度不大于预定的阈值,则产生代表计算航向的航向信号。
91.按照权利要求87的电子罗盘,其中基于随时间的测定分量通过重复地比较和改变几何图形,所述处理电路迭代地选取模拟几何图形。
92.按照权利要求85的电子罗盘,其中所述磁传感器电路检测地球磁场矢量的三个垂直分量,且其中所述处理电路选取从三个测定分量导出的三维模拟几何图形,和在参照三维几何图形的同时,计算车辆航向作为至少两个测定分量的函数。
93.一种车辆电子罗盘,包括磁传感器电路,用于至少检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的第一组参考数据点,选取第一模拟几何图形,在参照第一模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,产生代表计算航向的航向信号,基于在选取第一模拟几何图形之后接收的参考数据点,选取第二模拟几何图形,若第二模拟几何图形与第一模拟几何图形有很大的不同,则利用第二模拟几何图形,以及若随后得到的参考数据点更好地拟合第一模拟几何图形,则重新选取第一模拟几何图形。
94.按照权利要求93的电子罗盘,其中基于从测定分量导出的至少5个参考数据点,所述处理电路第一模拟几何图形和第二模拟几何图形中的一个图形。
95.一种车辆电子罗盘,包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,利用至少一个第一阈值,从测定分量导出第一组参考数据点,基于第一组参考数据点,选取第一模拟几何图形,在参照第一模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,产生代表计算航向的航向信号,利用比第一阈值更严格的至少一个第二阈值,从测定分量导出第二组参考数据点,基于第二组参考数据点,选取第二模拟几何图形,若第二模拟几何图形与第一模拟几何图形有很大的不同,则利用第二模拟几何图形,以及若随后得到的参考数据点更好地拟合第一模拟几何图形,则重新选取第一模拟几何图形。
96.一种车辆电子罗盘,包括磁传感器电路,用于至少检测地球磁场矢量的至少两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的至少5个参考数据点,确定模拟几何图形,在参照模拟几何图形的同时,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号。
97.一种车辆电子罗盘,包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,若测定分量展示大于最小噪声阈值的噪声电平,则确定车辆正在运动,计算车辆航向作为至少两个测定分量的函数,和产生代表计算航向的航向信号,其中在车辆不运动时,所述处理电路不改变显示的航向。
98.按照权利要求97的电子罗盘,其中若噪声电平在预定时间大于最小噪声阈值,则所述处理电路确定改车辆正在运动。
99.一种车辆电子罗盘,包括磁传感器电路,用于至少检测地球磁场矢量的两个垂直分量,和产生代表该测定分量的输出信号;和耦合到所述磁传感器电路的处理电路,用于接收输出信号,基于从测定分量导出的参考数据点,确定模拟几何图形,计算代表模拟几何图形拟合参考数据点程度的误差度量,在参照模拟几何图形的同时,计算车辆航向作为该至少两个测定分量的函数,和产生代表计算航向的航向信号。
100.按照权利要求99的电子罗盘,其中最初假设模拟几何图形和基于最初假设计算误差度量,在误差度量最小化之前,改变假设的模拟几何图形,然后利用具有最小误差度量的改变模拟几何图形以确定车辆航向,从而确定模拟几何图形。
101.按照权利要求99的电子罗盘,其中计算的误差度量用于建立置信级,置信级用于建立与原始数据点比较的阈值,从而确定原始数据点是否可以考虑为参考数据点。
102.一种车辆电子罗盘,包括磁传感器电路,用于检测地球磁场矢量的三个垂直分量,和产生代表该三个测定分量的输出信号;俯仰滚转检测电路,用于测量磁传感器电路的俯仰和滚转;和耦合到所述磁传感器电路和所述俯仰滚转检测电路的处理电路,用于接收输出信号,补偿测得俯仰和滚转的测定分量,计算车辆航向作为至少两个补偿测定分量的函数,和产生代表计算航向的航向信号。
103.按照权利要求102的电子罗盘,其中通过完成坐标变换,以下的公式用于补偿测得俯仰(pitch)和滚转(roll)的测定分量(Hx,Hy,Hz),补偿的测定分量(Hex,Hey,Hez)是Hex=Hx*cos(pitch)-Hy*sin(roll)sin(pitch)-Hz*cos(roll)sin(pitch)Hey=Hy*cos(roll)-Hz*sin(roll)Hez=Hx*sin(pitch)+Hy*sin(roll)cos(pitch)-Hz*cos(roll)sin(pitch)。
104.按照权利要求102的电子罗盘,其中所述俯仰滚转检测电路是加速度计,它有转变成在-g与+g之间变化的加速度输出信号,其中输出信号转变成以度数表示的测量俯仰和滚转pitch=asin(Ax/1g)roll=asin(Ay/1g)。
105.按照权利要求1,6,17,23,或102的电子罗盘,其中所述磁传感器电路包括设置在后视镜组件中的磁阻抗传感器。
全文摘要
一种电子罗盘系统(100)包括至少有两个检测元件(104,106,108)的磁传感器电路(102),用于检测地球磁场矢量的垂直分量。处理电路(110)耦合到传感器电路,用于滤波,处理,和计算航向。处理电路还选取模拟几何图形,例如,球面,椭球面,椭圆或圆,确定数据点相对于模拟图形的误差度量,调整模拟图形以减小误差,从而得到最佳拟合图形。若噪声电平没有噪声且在识别新的最佳拟合图形之前,则最佳拟合图形用于计算每个相继传感器读数的航向。电子罗盘系统特别适合于安装在车辆后视镜组件(140)中。
文档编号G01C17/38GK1639542SQ03805031
公开日2005年7月13日 申请日期2003年2月28日 优先权日2002年3月1日
发明者哈罗德·C·奥克斯, 乔恩·H·贝克特尔, 马克·D·伯格诺 申请人:金泰克斯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1