编码器技术领域
本发明涉及一种基于与旋转体的旋转连动地变化的传感器的输出信号检测旋转体的角度位置的编码器。
背景技术
在检测旋转体相对于固定体的旋转的旋转编码器中,例如设置有一种在旋转体侧设置磁铁,在固定体侧具有磁电阻元件或者霍尔元件的磁传感器。
在这种磁传感器装置中的例如具有磁电阻元件(MR元件)的磁传感器装置中,在基板的一面形成有由磁电阻膜构成的磁感膜,基于从由磁感膜构成的两相(A相和B相)的桥接电路输出的输出信号检测旋转体的角度速度或者角度位置等。(例如,参照专利文献1)。
在具有这种磁电阻元件(MR元件)的磁传感器装置中,由磁薄膜构成的桥接电路在内部构成。在该结构中,伴随磁铁的旋转,桥接电路的电阻值平衡发生变化,从磁电阻元件(MR元件)输出正弦波信号sin、cos。
在旋转编码器中,这些正弦波信号sin、cos由作为控制部的微型计算机(微机)获取,计算图16所示那样的以正弦波信号cos作为横轴,以正弦波信号sin作为纵轴的利萨如图形,并进行角度计算。
另外,在图16中,虚线表示发生正弦波信号sin、cos的中点电位偏离前的理想的状态,实线表示发生了正弦波信号sin、cos的中点电位偏离后的状态。
现有技术文献
专利文献
[专利文献1]日本特开2012-168016号公报
发明内容
发明所要解决的技术问题
然而,在具有上述磁传感器装置的旋转编码器中,桥接电路的电阻值平衡决定正弦波信号sin、cos的中点电位,但是该平衡不仅因磁发生变化也因应力发生变化。
在制造阶段中,在回流焊时或者基板自身螺纹固定时等在磁电阻元件(MR元件)产生残留应力,但是该应力随着时间而逐渐消失。因此,其结果是中点电位随着时间的变化而变化。
若发生正弦波信号sin、cos的中点电位变化,则如图16所示,由于利萨如图形的中心移动,因此角度计算产生误差。
在编码器内部,进行依次计算最新的正弦波信sin、cos的中点电位并使用补偿值修正中点的误差的误差修正处理。
图17(a)以及图17(b)是用于说明中点电位误差修正(补偿修正)的图。
图17(a)表示与从磁电阻元件(MR元件)输出的正弦波信号sin、cos的波形以及正弦波信号对应的马达轴角度。在图17(a)中,实线所示的波形表示正弦波信号sin,虚线所示的波形表示余弦波信号cos。
图17(b)表示中点修正所需的马达旋转角度。
如图17(a)所示,旋转体即马达旋转一周(马达旋转360度)输出两个周期的正弦波信号sin、cos。
为了计算正弦波信号sin、cos的中点电位,如图17(b)所示,需要利萨如图形的x=0,y=0的位置的一共四点P1至P4的值。
为了获取该四点P1至P4,利萨如图形需要至少旋转270度。
如上所述,由于马达旋转一周相当于利萨如图形旋转两周,因此中点修正所需的马达旋转角度为135度(=270度/2),如图17(b)所示,若不使马达的轴至少旋转135度,则不能进行计算。
因此,在中点电位发生变动的情况下,从接入电源至旋转135度的期间为精度变差的状态。
本发明的目的是提供一种能够从接近传感器的输出信号的实际的中点的值开始动作,且能够防止在接入电源等启动时每次误差都变大的编码器。
解决技术问题所采用的技术手段
本发明的第一方面为基于与旋转体的旋转连动地变化的传感器的输出信号检测所述旋转体的角度位置的编码器,包括:补偿获取部,所述补偿获取部获取所述传感器的输出信号的中点值的补偿值;存储部,所述存储部用于存储补偿值;写入条件判断部,所述写入条件判断部将在从启动时经过了指定时间后的指定时刻获取的所述补偿值依次写入所述存储部;以及角度位置检测部,所述角度位置检测部使用在所述补偿获取部获取的补偿值或者写入并存储于所述存储部的补偿值来检测角度位置,所述角度位置检测部使用下一次启动时写入所述存储部的补偿值,优选使用例如最新的补偿值检测角度位置。
以往,由于以在每次切断电源时传感器的输出信号的中点值(中点电位值)的程序上的补偿值返回到工场出货初始值为前提构成,因此若补偿随着时间的变化而变化(由于电路板的应力开放等,磁电阻元件(MR元件)的灵敏度发生变化),则在每次接入电源时补偿误差变大,不能计算出准确的角度位置。
与此相对,根据本发明,通过在从接入电源(启动时)经过指定时间后依次记录传感器的输出信号的中点值(中点电位值)的补偿值,并在下一次启动时使用该补偿值,由于与实际随时间变化而变化的补偿值接近,因此能够缩小补偿误差。
并且,由于若补偿误差大,则不能计算出准确的角度,因此存在发生转矩指令值偏差的担忧,但是由于能在启动时就缩小补偿值的误差,因此能够实现稳定的旋转和位置控制。
优选所述传感器包括:基板;感磁区域,所述感磁区域形成于所述基板且具有形成桥接电路的感磁膜;温度监视用电阻膜,所述温度监视用电阻膜形成于所述基板;以及加热用电阻膜,所述加热用电阻膜形成于所述基板,所述传感器具有温度控制部,所述温度控制部基于所述温度监视用电阻膜的电阻值变化控制向所述加热用电阻膜的供电。
通过该温度控制,能够不受环境温度的影响,将磁电阻元件(MR元件)的芯片温度控制在恒定值,因此能够减小温度对补偿的影响。
因此,能够将产生转矩指令值偏差的可能性控制在最小限度,能够实现更加稳定的旋转和位置控制。
优选所述写入条件判断部将在从启动经过了短时间的驱动后获取的补偿值写入所述存储部。
在这种情况下,例如由于掌握驱动初始的电平,因此能够例如在等待一分钟后,将旋转体即马达旋转半周获取的数据平均化。
由此,为了磁电阻元件(MR元件)的热稳定,需要经过一定程度的较长的时间,但是由于不必经过那么长时间,在短时间内就能够掌握启动初始电平的补偿值,因此即使在指定时间内(短时间内)反复接入电源,也能够确保补偿值的准确性。
优选所述写入条件判断部在经过为了通过加热而使补偿值稳定的指定时间后,多次反复进行补偿值获取处理,将多个补偿值平均化,将平均化了的补偿值写入所述存储部。
在这种情况下,能够例如在等待三分钟后,将旋转体即马达旋转二十周获取的数据平均化。
由此,通过经过指定时间,能够通过加热控制使电路稳定化,且能够将补偿值平均化从而计算出准确的补偿值。
优选所述写入条件判断部在将平均化后的补偿值写入所述存储部后,持续进行补偿值的监视,每隔一定间隔获取补偿值,写入所述存储部。
该一定间隔可以设定为例如十分钟或者比十分钟长的时间。
因此,通过持续监视补偿值,对于监视周期时间内的未预期的变动也能够处理,能够缩小下一次启动时的补偿误差。
并且,即使在将EEPROM等具有改写次数限制的非易失性存储器用于存储部的情况下,也不必更换存储部,能够在旋转体即马达等的产品的保证寿命内持续监视。
优选所述一定间隔设定为满足下列式子的值。
(M次/h)*24(小时)*365(日)*N(年)<P
在此,M表示单位时间存储补偿值的次数,N表示马达的产品保证寿命年,P表示存储部的写入保证次数。
由此,即使在将EEPROM等改写次数有限制的非易失性存储器适用于存储部的情况下,也不必更换存储部,能在旋转体即马达等产品的保证寿命内持续监视。
优选所述传感器输出与旋转体的位移对应且从第一相传感器输出的正弦波状的第一相信号和与旋转体的位移对应、从第二相传感器输出且与正弦波状的所述第一相信号之间的相位差为π/2的第二相信号,所述补偿获取部获取所述第一相信号和所述第二相信号的补偿值。
在这种情况下,传感器例如通过磁性薄膜在内部构成桥接电路,在该结构中,伴随磁铁的旋转,桥接电路的电阻值平衡发生变化,从磁电阻元件输出正弦波信号即第一相信号和第二相信号。并且,通过获取该第一相信号和第二相信号的补偿值,并进行中点值修正,能够实现稳定的旋转和位置控制。
优选所述存储部包括:第一写入区域以及第二写入区域,所述第一写入区域以及第二写入区域交替写入所述补偿值的数据;以及数据保证用标记区域,所述数据保证用标记区域设定有表示是否对所述第一写入区域以及所述第二写入区域中的任意一个的数据进行保证的数据保证用标记,数据保证用标记在向所述第一写入区域或者所述第二区域的写入处理后设定。
由此,能够表示标记所示的区域的数据为最新且能够得到保证的数据。例如,若标记为“1”,且在第一写入区域写入中点值的补偿值数据或者错误检测符号(CRC)的过程中拔下电源,则在下一次接入电源时,标记依然为“1”,因此数据能够放弃不完整的第一写入区域的数据,采用第二写入区域的数据。
优选具有读取条件判断部,所述读取条件判断部根据所述存储部的数据保证用标记的设定数据判断存储于所述第一写入区域的数据或者存储于所述第二写入区域的数据中的任意一个区域的数据是否得到保证,在得到保证的第一写入区域或者第二写入区域的数据没有异常的情况下,读取得到保证的区域的补偿值数据并提供给所述角度位置检测部。
由此,能够不采用数据写入失败等明显异常的中点值补偿值数据。
优选向所述存储部的第一写入区域以及第二写入区域写入的数据包括错误检测符号,所述读取条件判断部在计算判断出已得到保证的第一写入区域或者第二写入区域的写入数据的错误检测符号,且该计算出的错误检测符号与写入的错误检测符号一致的情况下,读取得到保证的区域的补偿值数据并提供给所述角度位置检测部。
由此,能够不采用错误检测符号(CRC)异常等异常的中点值的补偿值数据。
优选以写入所述存储部的第一写入区域以及第二写入区域的数据的特定区域写入有特定数据为前提,所述读取条件判断部在判断出计算出的错误检测符号与写入的错误检测符号一致,且在所述特定区域写入有特定数据的情况下,读取得到保证的区域的补偿值数据并提供给所述角度位置检测部。
由此,能够不采用错误检测符号(CRC)异常或者数据写入失败等明显异常的中点值补偿数据。
优选包括第二存储部,所述第二存储部存储所述补偿值的初始值即预先设定的初始补偿值,所述读取条件判断部在计算出的错误检测符号与写入的错误检测符号不一致的情况,或者在所述特定区域没有写入特定数据的情况下,取代得到保证的区域的补偿值数据,将存储于所述第二存储部的初始补偿值提供给所述角度位置检测部。
由此,能够不采用错误检测符号(CRC)异常或者数据写入失败等明显异常的中点值补偿数据。
发明效果
根据本发明,能够从接近传感器的输出信号的实际中点的值开始动作,并能够防止在接入电源时等启动时每回误差都变大的问题。
附图说明
图1(a)、图1(b)、图1(c)是用于说明本发明的实施方式所涉及的磁传感器以及旋转编码器的原理的图。
图2(a)、图2(b)是用于说明用于本发明的实施方式所涉及的磁传感器装置的感磁元件的感磁膜(磁电阻膜)的电连接结构的图。
图3是用于将依次记录正弦波信号的中点值(中点电位值)的补偿值,并在下一次启动时使用该补偿值的情况的效果与比较例对比说明的图。
图4是用于说明用于本发明的实施方式所涉及的磁传感器装置的感磁元件的图。
图5是将本实施方式所涉及的温度监视用电阻膜的检测模块放大表示的图。
图6是用于说明构成于本发明的实施方式所涉及的磁传感器装置的控制部的温度控制部的概略结构的图。
图7是表示本实施方式所涉及的控制部的角度位置检测系统的具体构成例的模块图。
图8是表示实施方式所涉及的存储部的写入区域的构成例的图。
图9是表示本实施方式所涉及的写入条件判断部的补偿值写入(保存)的时刻决定处理的流程图。
图10是本实施方式所涉及的写入条件判断部的补偿值写入(保存)在实行时的排他处理的状态变化图。
图11是表示本实施方式所涉及的写入条件判断部的补偿值写入(保存)在实行时的处理的流程图。
图12是表示本实施方式所涉及的写入条件判断部的补偿值读取实行时的处理的流程图。
图13是用于说明本实施方式的角度位置检测系统从工场出货后初次接入电源时的整体动作的概要的流程图。
图14是用于说明本实施方式的角度位置检测系统第二次以后接入电源时的整体动作的概要的流程图。
图15是用于将依次记录本实施方式所涉及的正弦波信号的中点值(中点电位值)的补偿值,并在下一次启动时(接入电源后不久)使用该补偿值的情况的效果使用模拟波形与比较例对比说明的图。
图16是表示利萨如图形的图,且为表示在正弦波信号的中点产生偏离前以及在正弦波信号的中点产生偏离后的状态的图。
图17是用于说明中点电位的误差修正(补偿修正)的图。
具体实施方式
以下参照附图说明适用本发明的磁传感器装置以及旋转编码器的实施方式。
另外,在旋转编码器中,为了检测旋转体相对于固定体的旋转,可以采用在固定体设置磁铁,在旋转体设置感磁元件的结构或者在固定体设置感磁元件,在旋转体设置磁铁的结构中的任意一种结构。
在以下的说明中,以在固定体设置磁传感器装置,在旋转体设置磁铁的结构为中心进行说明。
[磁传感器装置以及旋转编码器的构成例]
图1(a)、图1(b)、图1(c)是用于说明本发明的实施方式所涉及的磁传感器装置10以及旋转编码器1的原理的图。
图1(a)是相对于感磁元件4等的信号处理系统的说明图,图1(b)是从感磁元件4输出的信号的说明图,图1(c)是表示从感磁元件4输出的信号与旋转体2的角度位置(电角)之间的关系的说明图。
图2(a)、图2(b)是用于说明用于本发明的实施方式所涉及的磁传感器装置10的感磁元件4的感磁膜(磁电阻膜)41至44的电连接结构的图。
图2(a)是表示作为第一相的+A相以及-A相的感磁膜所形成的桥接电路的图,图2(B)是表示作为第二相的+B相以及-B相的感磁膜所形成的桥接电路的图。
图1所示的旋转编码器1为通过磁传感器装置10磁检测旋转体2相对于固定体(未图示)绕轴线(绕旋转轴线)的旋转的装置。在旋转编码器1中,固定体固定于马达装置的框架等,旋转体2在与马达装置的旋转输出轴等连接的状态下使用。
在旋转体2侧保持有磁铁20,所述磁铁20的N极和S极沿周向分别磁化有一极的磁化面21朝向旋转轴线方向L的一侧,磁铁20与旋转体2一体绕旋转轴线旋转。
在固定体侧设置有磁传感器装置10,所述磁传感器10具有感磁元件4和控制部90等,所述感磁元件4在旋转轴线方向L的一侧与磁铁20的磁化面21对置,所述控制部90进行后述角度位置检测处理和温度控制处理等。
磁传感器装置10在与磁铁20对置的位置具有第一霍尔元件61和第二霍尔元件62,所述第二霍尔元件62位于与第一霍尔元件61在周向上偏离90度机械角的位置。
感磁元件4为具有基板40和相对于磁铁20的相位彼此具有90度的相位差的两相的感磁膜(作为第一相的A相(SIN)的感磁膜以及作为第二相的B相(COS)的感磁膜)。
在该感磁元件4中,A相的感磁膜包括具有180度的相位差并进行旋转体2的移动检测的+A相(SIN+)的感磁膜43以及-A相(SIN-)的感磁膜41。B相的感磁膜包括具有180度的相位差并进行旋转体2的移动检测的+B相(COS+)的感磁膜44以及-B相(COS-)的感磁膜42。
+A相的磁感膜43以及-A相的感磁膜41形成图2(a)所示的桥接电路,一端与A相用的电源端子VccA连接,另一端与A相用的接地端子GNDA连接。
在+A相的感磁膜43的中点位置设置有输出+A相的输出端子+AT,在-A相的感磁膜41的中点位置设置有输出-A相的输出端子-AT。
并且,+B相的感磁膜44以及-B相的感磁膜42也与+A相的感磁膜43以及-A相的感磁膜41相同,形成图2(b)所示的桥接电路,一端与B相用的电源端子VccB连接,另一端与B相用的接地端子GNDB连接。
在+B相的感磁膜44的中点位置设置有输出+B相的输出端子+BT,在-B相的感磁膜42的中点位置设置有输出-B相的输出端子-BT。
另外,在图2中,为了方便,分别记载了A相用的电源端子VccA以及B相用的电源端子VccB,但是A相用的电源端子VccA和B相用的电源端子VccB也可通用。
并且,在图2中,为了方便,分别记载了A相用的接地端子GNDA以及B相用的接地端子GNDB,但是A相用的接地端子GNDA和B相用的接地端子GNDB也可通用。
如图1(a)所示,具有这样的结构的感磁元件4配置于在旋转轴线方向L上与磁铁20的磁化边界部分重叠的位置。
因此,感磁元件4的感磁膜41至44能够检测各感磁膜41至44的电阻值的饱和灵敏度区域以上的磁场强度,且朝向在磁化面21的面内方向上变化的旋转磁场。
即,在磁化边界线部分,产生各感磁膜41至44的电阻值的饱和灵敏度区域以上的磁场强度且朝向在面内方向上变化的旋转磁场。
在此,饱和灵敏度区域一般指的是电阻值变化量k能够用与磁场强度H近似的“k∝H2”的式子表示的区域以外的区域。
并且,检测饱和灵敏度区域以上的磁场强度下的旋转磁场(磁矢量的旋转)的方向时的原理为利用在向感磁膜41至44通电的状态下,施加电阻值饱和的磁场强度时,在磁场与电流方向所成的角度θ和感磁膜41至44的电阻值R之间存在以下式子表示的关系。
R=R0-k*sin2θ
RO:无磁场中的电阻值
k:电阻值变化量(饱和灵敏度区域以上时为定数)
基于这样的原理检测旋转磁场,若角度θ变化,则电阻值R沿着正弦波变化,因此能够获得波形品质较高的A相输出以及B相输出。
在本实施方式的磁传感器装置10以及旋转编码器1中,在感磁元件4、第一霍尔元件61以及第二霍尔元件62通过增幅电路91、92、95、96连接有控制部90。
控制部90具有在从这些增幅电路91、92、95、96输出的正弦波信号sin、cos进行插补处理和各种演算处理的CPU(演算电路)等,基于来自感磁元件4、第一霍尔元件61以及第二霍尔元件62的输出,求得旋转体2相对于固定体的旋转角度位置。
更加具体地说,在旋转编码器1中,若旋转体2旋转一周,则从感磁元件4(磁电阻元件)输出两个周期的图1(b)所示的正弦波信号sin、cos。
因此,在通过增幅电路91、92将正弦波信号sin、cos增幅后,在控制部90中,求得图1(c)所示的利萨如图,若通过正弦波信号sin、cos求得θ=tan-1(sin/cos),则可知旋转输出轴的角度位置θ。
并且,在本实施方式中,在从磁铁20的中心观察偏离90度的位置配置有第一霍尔元件61以及第二霍尔元件62。因此,通过第一霍尔元件61以及第二霍尔元件62的输出的组合,可知当前位置位于正弦波信号sin、cos的哪一个区间。
因此,旋转编码器1能够基于感磁元件4的检测结果、第一霍尔元件61的检测结果以及第二霍尔元件62的检测结果生成旋转体2的绝对角度位置信息,并能够进行绝对动作。
然而,如上所述,具有磁电阻元件(MR元件)的磁传感器装置10在内部通过磁薄膜即感磁膜41、43以及42、44构成桥接电路。在该结构中,伴随磁铁20的旋转,桥接电路的电阻值平衡发生变化,从磁电阻元件(MR元件)输出正弦波信号sin、cos。
在旋转编码器1中,由包括微型计算机等的控制部获取正弦波信号sin、cos,计算出以正弦波信号cos作为横轴,以正弦波信号sin作为纵轴的利萨如图形,并进行角度计算。
然而,在具有磁传感器装置的旋转编码器1中,虽然桥接电路的电阻值平衡决定正弦波信号sin、cos的中点电位,但是该平衡不仅因磁变化也因应力而变化。
在制造阶段中,在回流焊时或者基板自身螺纹固定时等在磁电阻元件(MR元件)产生残留应力,但是该应力随着时间而逐渐消失。因此,其结果是中点电位随着时间的变化而变化。
若发生正弦波信号sin、cos的中点电位变化,则利萨如图形的中心移动,因此角度计算产生误差。
但是,为了计算正弦波信号sin、cos的中点电位,如图17(b)所示,需要利萨如图形的x=0,y=0的位置的一共四点P1至P4的值。
为了获取该四点P1至P4,利萨如图形至少需要旋转270度。
如上所述,由于马达旋转一周相当于利萨如图形旋转两周,因此中点修正所需的马达旋转角度为135度(=270度/2),如图17(b)所示,若不使马达的轴至少旋转135度,则不能进行计算。
因此,在中点电位发生变动的情况下,从接入电源至旋转135度期间为精度变差的状态。
因此,在本实施方式中,角度位置检测系统在从接入电源(启动时)经过指定时间后依次记录正弦波信号sin、cos的中点值(中点电位值)的补偿值,并在下一次启动时使用该补偿值。
由此,本实施方式的角度位置检测系统与实际随着时间变化而变化的补偿值接近,因此能够缩小补偿误差。换言之,该角度位置检测系统能够从与磁传感器装置的输出信号即正弦波信号sin、cos的实际的中点接近的值开始动作,能够防止在每次接入电源时误差都变大。
图3(a)、图3(b)是用于与将依次记录正弦波信号sin、cos的中点值(中点电位值)的补偿值,并在下一次启动时使用该补偿值的情况的效果与比较例对比说明的图。图3(a)是用于说明比较例的图,图3(b)是用于说明本实施方式所涉及的效果的图。
在图3(a)、图3(b)中,PWOF表示电源开/关,VPMP表示程序上的中点值,VAMP表示实际的中点值,VNMP表示最新的中点值。
在已有的旋转编码器中,如图3(a)所示,以切断电源时正弦波信号sin、cos的中点值(中点电位值)的程序上的补偿值返回到工场出货初始值为前提的方式构成。因此,若因补偿随时间变化而变化(因电路板的应力开放等,磁电阻元件(MR元件)的灵敏度发生变化),则在接入电源时补偿值误差变大不能计算出准确的角度位置。
对此,在本实施方式中,如图3(b)所示,通过在从接入电源(启动时)经过指定时间后依次记录正弦波信号sin、cos的中点值(中点电位值)的补偿值,并在下一次启动时使用该补偿值,由于与实际随时间变化而变化的补偿值接近,因此能够缩小补偿值误差。
并且,由于若补偿误差大,则不能计算出准确的角度,因此存在发生转矩指令值偏差的担忧,但是由于在启动时就缩小补偿值的误差,因此能够实现稳定的旋转和位置控制。
对于具有这样的本实施方式的特征的结构的角度位置检测系统的结构、功能将在后文叙述。
[感磁元件4的平面结构]
图4是用于说明用于本发明的实施方式所涉及的磁传感器装置10以及旋转编码器1的感磁元件4的图。
如图4所示,在本实施方式的磁传感器装置10中,感磁元件4具有基板40和形成于基板40的一面40a的感磁膜41至44。感磁膜41至44通过相互折叠延伸的部分在基板40的中央构成圆形的感磁区域45。在本实施方式中,基板40为具有四边形的平面形状的硅(Si)基板。
从感磁膜41至44一体地延伸有配线部分,在配线部分的端部设置有A相用的电源端子VccA、A相用的接地端子GNDA、+A相输出用的输出端子+AT、-A相输出用的输出端子-AT、B相用的电源端子VccB、B相用的接地端子GNDB、+B相输出用的输出端子+BT以及-B相输出用的输出端子-BT。
并且,在本实施方式的感磁元件4中,在基板40的一面40a形成有温度监视用电阻膜47以及加热用电阻膜48。
在此,加热用电阻膜48在沿基板40的边呈四边框状延伸并构成封闭环的状态下,包围形成有感磁膜41至44的区域整体。
因此,加热用电阻膜48与感磁膜41至44形成于基板40的面内方向中的偏离的区域,在俯视时不重叠。并且,从加热用电阻膜48的相互对置的两条边部分的一条边延伸有配线部分481,在其端部形成有向加热用电阻膜48供电用的电源端子VccH。
在此,温度监视用电阻膜47形成于与感磁区域45在基板40的面内方向上偏离的区域,与感磁区域45不重叠。
在温度监视用电阻膜47的一个端部形成有温度监视用的电源端子VccS。
并且,温度监视用电阻膜47的另一个端部与A相用的接地端子GNDA以及B相用的接地端子GNDB连接。因此,A相用的接地端子GNDA以及B相用的接地端子GNDB也可用于相对于温度监视用电阻膜47的接地端子GNDS或者相对于加热用电阻膜48的接地端子GNDH。
温度监视用电阻膜47设置于加热用电阻膜48的内侧区域中的加热用电阻膜48的四个角中的一个角附近,位于感磁区域45和加热用电阻膜48之间的位置。
[温度监视用电阻膜47的结构]
温度监视用电阻膜47例如由电阻温度变化系数大的镍(Ni)膜形成,由于抑制了因磁场导致的电阻值变化,其形状形成为n边形(n为3以上的整数,n为无限大的圆形)的具有多个直线状或者曲线状的弧。
如此,在本实施方式中,温度监视用电阻膜47的形状虽然以具有多个n边形的弧的方式形成,但是各n边形的构成边即弧也可形成为直线或者曲线。
[温度监视用电阻膜47的形状]
图5是将本实施方式所涉及的温度监视用电阻膜的检测模块放大表示的图。
在本实施方式中,温度监视用电阻膜47形成为四重的圆形状的检测模块BLK1。
该圆形状的温度监视用电阻膜47具有曲线状的七个弧R11至R17,形成为几乎真圆形状。
这些弧R11至R17以相对于相同方向的磁通感应的电压的朝向相反的方式互相串联。
具体地说,弧R11的一端经由配线WR1与温度监视用的电源端子VccS连接,弧R11的另一端与弧R12的一端串联,弧R12的另一端与弧R13的一端串联。
弧R13的另一端与弧R14的一端串联,弧R14的另一端与弧R15的一端串联,弧R15的另一端与弧R16的一端串联,弧R16的另一端与弧R17的一端串联。
并且,弧R17的另一端经由配线WR2与相对于温度监视用电阻膜47的接地端子GNDS连接。
并且,本实施方式的温度监视用电阻膜47的检测模块BLK1具有弧折叠连接的折叠部FP1、FP2、FP3,折叠部FP1、FP2、FP3相对于串联的检测模块BLK1等配角度配置。
如此,多个圆形的检测模块BLK1的弧R11至R17以相对于相同方向的磁通感应的电压的方向相反的方式相互串联。
这些弧R11至R17能够根据感应的电压的朝向区分为第一组GRP11和第二组GRP12。
第一组GRP11包括弧R11、R13、R15以及R17,第二组GRP12包括弧R12、R14以及R16。
并且,第一组GRP11的弧R11的另一端侧形成3/4周,在折叠部FP1处,第二组GRP12的弧R12从第一组GRP11的弧R11的另一端折叠,并以沿着弧R11的方式与弧R11接近并对置而形成大致1/4周。
在折返部FP2处,第一组GRP11的弧R13从第二组GRP12的弧R12的另一端折叠,并以沿着弧R12的方式与弧R12接近并对置而形成大致3/4周。
在折叠部PF3处,第二组GRP12的弧R14从第一组GRP11的弧R13的另一端折叠,并以沿着弧R13的方式与弧R13接近并对置而形成大致1周。
在折叠部FP3处,第一组GRP11的弧R15从第二组GRP12的弧R14的另一端折叠,并以沿着弧R14的方式与弧R14接近并对置而形成大致1/4周。
在折叠部FP2中,第二组GRP32的弧R16从第一组GRP11的弧R15的另一端折叠,并以沿着弧R11、F15、R13的方式与弧R11、F15、R13接近并对置而形成大致3/4周。
在折叠部FP1中,第一组GRP11的弧R17从第二组GRP12的弧R16的另一端折叠,并以沿着弧R16的方式与弧R16接近并对置而形成大致1/4周。
在本实施方式中,通过将温度监视用电阻膜47的形状设置为圆形,能够抑制因磁场导致的电阻值变化,能够更加精确地进行温度检测。
由于以多个弧感应的电压的朝向相反的方式互相串联,因此能够抑制因磁通变化导致的感应电压误差,即使在旋转磁场中或者强弱磁场中也能够精确地进行温度检测。
并且,根据本实施方式中,由于通过折叠部将弧的切断部位等配角度地配置,因此与将弧的切断部位集中配置于一部分的部位的情况相比,即使旋转的磁场发生变化也存在容易相互抵消这样的优点。
并且,在本实施方式中,具有基于上述温度监视用电阻膜47的电阻值变化,控制向加热用电阻膜48的供电的温度控制部。
在本旋转编码器1中,通过该温度控制,能够不受环境温度的影响,将磁电阻元件(MR元件)即感磁元件4(感磁膜41至44)的芯片温度控制在恒定值,因此能够减小温度对补偿值的影响。
[感磁元件4的温度调节]
图6是用于说明构成于本发明的实施方式所涉及的磁传感器装置10的控制部90的温度控制部910的概略结构的图。
如图6所示,在本实施方式的磁传感器装置10的控制部90构成有基于温度监视用电阻膜47的电阻变化控制向加热用电阻膜48的供电的温度控制部910。
更加具体地说,电阻911与温度监视用电阻膜47串联,电阻911的与连接有温度监视用电阻膜47的一侧相反的一侧与温度监视用的电源端子连接,温度监视用电阻膜47的与连接有电阻911的一侧相反的一侧与温度监视用的接地端子GNDS连接。
由双极晶体管构成的开关元件913与加热用电阻膜48串联,开关元件913的与连接有加热用电阻膜48的发射体侧相反的集电极侧与加热用的电源端子连接,加热用电阻膜48的与连接有开关元件913的一侧相反的一侧与加热用的接地端子GNDH连接。
在此,温度监视用电阻膜47与电阻911的连接点输入放大器(演算增幅器)912的一方的反转输入端子(-),放大器912的另一方的非反转输入端子(+)输入有作为用于将开关元件913开闭的阈值的电压Vo。
在该状态下,若基板40的温度下降,则温度监视用电阻膜47的电阻值降低,与电阻911进行分压后的连接点的电压下降。此时若输入于放大器912的另一方的端子的阈值Vo变得更低,则放大器912输出变为高电平,将开关元件913打开,因此向加热用电阻膜48供电。
在该状态下,若基板40的温度上升,则温度监视用电阻膜47的电阻值上升,与电阻911的连接点的电压上升。此时,若输入于放大器912的另一方的端子的阈值Vo变得更高,则放大器912的输出变为低电平(断开状态),断开开关元件913,因此停止向加热用电阻膜48供电。
因此,感磁元件4(感磁膜41至44)的温度维持在由温度监视用电阻膜47以及电阻911的电阻值规定的指定温度。
[角度位置检测系统的具体结构以及功能]
接下来,对本实施方式所涉及的控制部90的角度位置检测系统920的具体结构和功能进行说明。
图7是表示本实施方式所涉及的控制部90的角度位置检测系统920的具体的构成例的模块图。
如图7所示,该角度位置检测系统920包括模拟数字变换器(ADC)921、角度位置检测部922、作为补偿获取部的补偿推定部923、存储部924、作为第二存储部的ROM925、写入条件判断部926、读取条件判断部927、第一开关928以及第二开关929。
ADC921将由作为磁传感器装置10的磁电阻元件的感磁元件4(感磁膜41至44)检测并输出的模拟的正弦波信号sin、cos变换为数字的正弦波信号Dsin、Dcos并输出至角度位置检测部922。
角度位置检测部922基于来自ADC921的数字正弦波信号Dsin、Dcos求得以cos为横轴(X轴)、以sin为纵轴(Y轴)的图1(c)所示的利萨如图,基于正弦波信号sin、cos通过电插值演算求得θ=tan-1(sin/cos),并检测旋转输出轴的角度位置θ。
在角度位置检测部922中,桥接电路的电阻值平衡决定正弦波信号Dsin、Dcos的中点电位,但是由于该电阻值平很因应力而变化,因此使用提供的补偿值进行中点修正。
角度位置检测部922在进行中点修正时,在指定的时刻接收在补偿推定部923获取的补偿值OFS1(a,b)、在上一次运转中写入存储部924的补偿值OFS2(a,b)或者事先设定于ROM925的工场出货时的初始补偿值OFS3(a,b)来进行中点的修正,并检测角度位置。
在本实施方式中,一般地,在工场出货后的初次启动时,角度位置检测部922接收事先设定于ROM925的工场出货时的初始补偿值OFS3(a,b)来进行中点修正,在下一次启动时,角度位置检测部922接收上一次运转中写入存储部924的最新的补偿值OFS2(a,b)来进行中点的修正。
角度位置检测部922在初次启动时以及下一次启动时,接收事先设定于ROM925的工场出货时的补偿值OFS3(a,b)或者写入存储部924的最新的补偿值OFS2(a,b),此后接收在补偿推定部923获取的补偿值OFS1(a,b)来进行中点的修正。
另外,角度位置检测部922在判断出在下一次的启动时刻中应接收的写入存储部924的最新的补偿值OFS2存在异常的情况下,取代补偿值OFS2,接收事先设定于ROM925的工场出货时的初始补偿值OFS3(a,b)。
角度位置检测部具有补偿值减法部9221以及角度计算部9222。
补偿值减法部9221从ADC921产生的数字正弦波信号Dcos、Dsin减去提供来的补偿值OFS1(a,b)、补偿值OFS2(a,b)或者补偿值OFS3(a,b)来进行中点修正,并将结果作为DSa(DScos),DSb(DSsin)输出给角度计算部9222以及补偿推定部923。
补偿减法部9221例如如下进行上述减法处理。
补偿减法部9221以利萨如波形为基础,确定在cos轴(X轴)与利萨如波形的圆周上相交的两个点的各自附近和在sin轴(Y轴)与利萨如波形的圆周上相交的两个点的各自附近这四点。
并且,补偿减法部9221以X轴附近的两点以及Y轴附近的两点从X轴与Y轴的交点的距离分别大致相等的方式对A相信号和B相信号的双方或者一方加减补偿值OFS,从而修正中点的误差。
角度计算部9222根据由补偿减法部9221得出的减法结果DSa,DSb通过电插值演算求得θ=tan-1(sin/cos)从而检测出旋转输出轴的角度位置θ。
作为补偿获取部的补偿推定部923根据在补偿减法部9221进行了减法处理的正弦波信号DSa(DScos),DSb(DSsin),推定(获取)用于中点修正的补偿值OFS1(a,b)。
另外,补偿值的推定能够采用例如与日本专利第3026949号公报记载的方法相同的方法。
补偿推定部923将获取的补偿值OFS1(a,b)提供给写入条件判断部926以及第一开关928的端子b。
[存储部924的结构]
存储部924由例如为非易失性存储器的EEPROM构成,在运转中在补偿推定部923获取的补偿值中的在写入条件判断部926中判断为应写入的值的补偿值由写入条件判断部926写入。
图8是表示本实施方式所涉及的存储部的写入区域的构成例的图。
图8是表示存储部924的标记区域、第一写入区域、第二写入区域的地址的一个例子以及补偿数据的构造例的图。
如图8所示,本实施方式的存储部924包括由写入条件判断部926交替写入补偿值OFS的数据的第一写入区域WARA0、第二写入区域WARA1以及设定有表示是否保证了第一写入区域WARA0以及第二写入区域WARA1中的任意一个的数据的数据保证用标记FLG的数据保证用区域IFLG。
数据保证用标记FLG(OFSWARTEFLG)在向第一写入区域WARAO或者第二写入区域WARA1的写入处理结束后设定。
存储部924向第一写入区域WARA0以及第二写入区域WARA1写入的数据中包括CRC(错误检测符号)。
写入第一写入区域WARAO或者第二写入区域WARA1的补偿值OFS的写入数据COS_OFS以及SIN_OFS由32位的四个字节构成,从下位位侧写入一个字节的数据区域LL,LH,HL,HH。
在图8的例子中,在第一写入区域WARA0写入有标记符号0的COS_OFS_0_LL、COS_OFS_O_LH、COS_OFS_O_HL、COS_OFS_O_HH以及SIN_OFS_0_LL、SIN_OFS_O_LH、SIN_OFS_O_HL、SIN_OFS_O_HH的补偿值数据,在这些补偿值数据后写入CRC数据OFS_CRC_0。
在第二写入区域WARA1写入标记符号1的COS_OFS_1_LL、COS_OFS_1_LH、COS_OFS_1_HL、COS_OFS_1_HH以及SIN_OFS_1_LL、SIN_OFS_1_LH、SIN_OFS_1_HL、SIN_OFS_1_HH的补偿值数据,在这些补偿值数据后写入CRC数据OFS_CRC_0。
一般地,在补偿值数据的特定区域HH,为了提高CRC区域的可靠性,在数据COS_OFS写入特定数据“0x50”,在数据SIN_0FS写入特定数据“0xOA”。
一般地,在补偿值数据的特定区域HL,为了提高信赖性,在数据COS_OFS以及数据SIN_OFS写入数据“0x00”或者“0xFF”。
在具有这样的结构的存储部924中,由于数据保证用标记FLG在向第一写入区域WARA0或者第二写入区域WARA1的写入处理后设定,因此表示标记所示的区域的数据能够表示为最新且能够得到保证的数据。
例如,若标记FLG为“1”,在将中点值的补偿值数据或者CRC(错误检测符号)写入第一写入区域WARA0的过程中拔下电源,由于在下一次接入电源时标记FLG依然为“1”,因此,数据能够舍弃不完整的第一写入区域WARA0的数据,而采用第二写入区域WARA1的数据。
另外,表示了存储部924例如由非易失性存储器即EEPROM构成的例子,但是存储部924也可由备用电源备用的易失性存储器构成。
作为第二存储部的ROM925事先设定有事先设定的工场出货时的初始补偿值OFS3(a,b)。
从ROM925读取的初始补偿值OFS3(a,b)提供给第二开关929的端子c。
另外,在CRC异常等在写入EEPROM即存储部924的数据存在异常的情况下,能够以采用写入ROM925的工场出货时的中点数据的方式构成。
作为检测数据异常的功能,还能够设定中点数据的值的范围。也能够不采用数据写入失败等明显异常的中点数据。
[写入条件判断部926的结构以及功能]
写入条件判断部926从启动时经过指定时间后,将在补偿推定部923的在指定时刻获取的补偿值OFS2(a,b)[COS_OFS,SIN_OFS]依次写入存储部924的第一写入区域WARA0或者第二写入区域WARA1。
为了接入电源或者开始系统复位等的驱动(运转)而进行启动之后掌握驱动初始的电平,写入条件判断部926将在非常短的时间的驱动后获取的补偿值OFS2(a,b)写入存储部924的第一写入区域WARA0或者第二写入区域WARA1。
在这种情况下,例如为了掌握驱动初始的电平,写入条件判断部926例如能够等待一分钟,将旋转体即马达旋转半周获取的数据平均化。
由此,为了借助加热用电阻膜48的加热获得磁电阻元件即感磁膜4的热稳定需要经过一定程度的较长的时间,但是由于不必经过那么长的时间就掌握启动初始电平的补偿值,因此,即使在指定时间内反复接入电源,也能够确保补偿值的准确性。
在经过了借助加热获得补偿值稳定的指定时间后,写入条件判断部926多次反复进行补偿值的获取处理,并将多个补偿值平均化,将平均化了的补偿值写入存储部924的第一写入区域WARA0或者第二写入区域WARA1。
在这种情况下,例如能够等待三分钟,将旋转体即马达旋转二十周获取的数据平均化。
由此,通过经过指定时间,能够借助加热控制使电路稳定化,从而能够将补偿值平均化从而算出准确的补偿值。
写入条件判断部926在将平均化了的补偿值写入存储部924之后,继续监视补偿值,以一定间隔获取补偿值,写入存储部924的第一写入区域WARA0或者第二写入区域WARA1。
该一定间隔可以设定为例如十分钟或者比十分钟长的时间。
由此,通过持续监视补偿值,对于在监视周期时间内的未预期的变动也能够处理,从而能够缩小下一次启动时的补偿误差。
并且,即使在将EEPROM等改写次数有限制的非易失性存储器适用于存储部924的情况下,不必更换存储部,也能够在旋转体即马达等的品质保证寿命内继续监视。
该一定间隔设定为满足以下式子的值
(M次/h)*24(小时)*365(日)*N(年)<P
在此,M表示每一定时间存储补偿值的次数,N表示马达的产品保证寿命年,P表示存储部的写入保证次数。
由此,即使在将EEPROM等改写次数有限制的非易失性存储器适用于存储部924的情况下,不必更换存储部924,也能够在旋转体即马达等产品的保证寿命内持续监视。
[补偿值写入(保存)的时刻决定处理]
图9是表示本实施方式所涉及的写入条件判断部926的补偿值写入(保存)的时刻决定处理的流程图。
另外,在以下所示的流程图中,将存储部924简化表示为eep。
写入条件判断部926的补偿值写入(保存)的时刻决定处理基本按照图9所示的流程,为了等待加热器即加热用电阻膜48的温度而等待一分钟,然后旋转半周实行第一次的保存。
第二次从第一次的保存等待三分钟,然后旋转二十周实行。
以后每隔十分钟进行。
图9具体表示步骤ST101至ST127中的该处理的流程。
在该处理中,以下定数由Mcro.h定义。
补偿写入计算初始值“OFS_WRITE_CNT_INIT”设定为9,初始值为“9”,处理在等待一分钟后进行。
补偿写入计算第二次“OFS_WRITE_CNT_INIT_SECOND”设定为“7”。第二次的值为“7”,处理在等待三分钟后进行。
通过像这样改变初始值变更设定时间。
补偿写入延长时间初始值“OFS_WRITE_EXT_TIME_INIT”设定为“2”,这相当于机械角半周旋转。
补偿写入延长时间第二次“OFS_WRITE_EXT_TIME_SECOND”设定为80,这相当于机械角旋转二十周。
通过像这样改变初始值来变更机械角旋转数。
补偿写入间隔“OFS_WRITE_INTERVAL”设定为“10”。
并且,在该处理中,使用存储部(EEP)写入条件变量“ofs_write_enbl”作为变量。该变量在处理步骤ST105、ST111、ST115、ST123以及ST124中使用。
当变量“ofs_write_enble”为“零”时表示“时间条件等待”。当变量“ofs_write_enble”为“1”时表示“存储部(EEP)可以写入”。当变量“ofs_write_enble”为“2”时表示“中点的补偿值的修正次数条件等待”。
作为条件的优选度,时间条件比修正次数优选。若变量“ofs_write_enble”满足时间条件,则为“2”,若在任务c中满足修正次数的条件,则为“1”,实际实行补偿值的写入。
图9的步骤ST103或者步骤ST109的补偿计算变量“ofs_cnt”表示修正次数,步骤ST112的变量“ofs_cnt--”表示将补偿计算值设为“-1”。
并且,步骤ST118或者ST121的补偿写入计算“ofs_write_cnt”表示能够写入处理为止的时间的计算值。
并且,在本实施方式中,将与角度计算无关的处理称作后处理,与角度计算有关的处理有时会以中断方式来处理,假定向存储部924(EEPROM)的写入在后处理和中断处理之间竞争。
因此,在本旋转编码器1中,在产生了中断处理时,以中断处理比后处理更优先地处理的方式构成。
这种情况的状态表记使用两个变量。
一个为中断处理侧的变量“eep_busy”,另一个为后处理侧的变量“epp_busy_pre”。
变量“eep_busy”为“0”时,表示“存储部(EEP)写入权利上浮”,变量“eep_busy”为“1”时,表示“已经获得了存储部(EEP)写入权利”。
变量“eep_busy_pre”为“0”时,表示“在后处理中存储部(EEP)写入许可没有下达”,变量“eep_busy_pre”为“1”时,表示“在后处理中存储部(EEP)写入许可等待”,变量“eep_busy_pre”为“2时”,表示“在后处理中存储部(EEP)写入许可下达”。
考虑以上的前提,返回到图9的处理,在步骤ST101中,进行变量的初始化。
变量“ofs_cnt”设定为补偿写入延长时间初始值“OFS_WRITE_EXT_TIME_INIT”的值。
变量“ofs_cossin”设定为“ox11”。这表示关于补偿值“ofs_cos”和“ofs_sin”的处理中的任意一个均不偏离地交替进行。
变量“ofs_write_enble”设定为“0”,关于后处理的变量“eep_busy_pre”设定为“0”。
并且,变量“ofs_write_cnt”设定为补偿写入计算初始值“OFS_WRITE_CNT_TIME_INIT”的值。
并且,变量“ofs_eep_write_first”设定为“0”。
为了等待加热器即加热用电阻膜48的温度,从启动开始时等待一分钟。因此,在启动后忽视步骤ST102至ST113,确认经过了一分钟后,旋转半周,实行将补偿值第一次保存于存储部924。
在这种情况下,写入条件判断部926例如能够为了掌握驱动初始的电平,例如等待一分钟,将旋转体即马达旋转半周获取的数据平均化。
由此,为了借助加热用电阻膜48的加热获得磁电阻元件即感磁膜4的热稳定需要经过一定程度的较长的时间,但是由于不必经过那么长的时间就掌握启动初始电平的补偿值,因此,即使在指定时间内反复接入电源,也能够确保补偿值的准确性。
第二次从第一次的保存等待三分钟后旋转二十周实行。
在这种情况下,例如等待三分钟,将旋转体即马达旋转二十周获取的数据平均化。
由此,通过经过指定时间,能够借助加热控制使电路稳定化,使补偿值平均化从而能够计算出准确的补偿值。
以后每隔十分钟实行。
由此,通过继续监视补偿值,对于监视周期时间内的未预期的变动也能够处理,能够缩小下一次启动时的补偿误差。
[补偿值写入(保存)实行时的处理]
图10是本实施方式所涉及的写入条件判断部926的补偿值写入(保持)实行时的排他处理的状态变化图。
图11是表示本实施方式所涉及的写入条件判断部926的补偿值写入(保存)实行时的处理的流程图。
接下来,对本实施方式所涉及的写入条件判断部926的补偿值写入(保存)实行时的处理进行说明。
首先,参照图10对补偿值写入(保存)实行时的排他处理进行说明。
例如在变量“eep_busy”和变量“eep_busy_pre”为{0,0}的状态STTO下,在进行后处理的存储部(EEP)写入要求和通过中断处理的存储部(EEP)写入要求的情况下,变化为变量{1,0}的状态STT1,通过中断进行的存储部(EEP)写入有优先进行。
在状态STT0中,若在后处理中下达存储部(EEP)写入许可要求,则变化为状态STT2,后处理成为中断等待的状态,若在中断中发行存储部(EEP)写入口令,则变化为状态STT1,通过中断进行的存储部(EEP)写入优先进行。
在状态STT2中,若接收到除了中断以外的其他口令,则变化为变量{1,2}的状态STT3,在后处理中进行存储部(EEP)写入。并且,若在中断中发行存储部(EEP)写入口令,则变化为状态STT1。
若在状态STT1中,后处理中存在存储部(EEP)写入要求,则变化为状态STT4,变为在后处理中的存储部(EEP)写入的许可等待,但是在这种情况下,通过中断,在后处理中的存储部(EEP)写入变为非许可,变化为状态STT1。
接下来,参照图11对写入条件判断部926的补偿值写入(保存)实行时的处理进行说明。
在图11中,步骤ST203至步骤ST209的处理为中断内处理。
首先,写入条件判断部926将变量“eep_busy_pre”设定为“1”,成为后处理中的存储部(EEP)924写入的许可等待状态(步骤ST201)。
接下来,判断是否进入了通信中断或者定时器中断(步骤ST202),在判断出进入了通信中断或者定时器中断的情况下,进入中断内处理。
在中断内处理中,首先,判断存储部(EEP)924的写入系统指令是否为通信中断(步骤ST203)。
在步骤ST203中,在判断出存储部(EEP924)的写入系统指定为通信中断的情况下,在进行了步骤ST204的处理后进入步骤ST205,在判断出存储部(EEP)924的写入系统指令的部位通信中断的情况下,不经过步骤ST204进入步骤ST205。
在步骤ST204中,将变量“eep_busy_pre”设定为“0”,成为不许可后处理中的存储部(EEP)924写入的状态。
在步骤ST205中,判断变量“eep_busy_pre”是否为1。
在步骤ST205中判断出变量“eep_busy_pre”为“1”的情况下,判断变量“eep_busy”是否为“1”(步骤ST206)。
在步骤ST206中判断出变量“eep_busy”为“1”的情况下,将变量“eep_busy_pre”设定为“0”,成为不许可后处理中的存储部(EEP)924写入的状态(步骤ST207),结束中断内处理进行步骤ST201的处理。
在步骤ST206中,在判断出变量“eep_busy”不为“1”的情况下,将变量“eep_busy_pre”设定为“2”,成为许可在后处理中的存储部(EEP)
924写入的状态(步骤ST208)。
接下来,将变量“eep_busy”设定为“1”,成为禁止中断中的存储部(EEP)924写入的状态,结束中断内处理进行步骤ST210的处理。
在步骤ST210中,判断变量“eep_busy_pre”是否为“2”。
在步骤ST210中判断出变量“eep_busy_pre”为“2”的情况下,进行步骤ST211的处理,在判断出变量“eep_busy_pre”不为“2”的情况下,以变量“eep_busy_pre”为“0”结束处理。
在步骤ST211中,将变量“eep_busy_pre”设定为“0”,成为不许可(清除许可)在后处理中的存储部(EEP)924写入的状态,进行下一个步骤ST212的处理。
在步骤ST212中进行数据保证用标记(补偿写入标记)“ofs_write_flg”是否为“0”的判断。
在步骤ST212中判断出数据保证用标记“ofs_write_flg”为“0”的情况下,判断存储部924的第二写入区域WARA1的数据为旧数据,将补偿值数据cos_ofs,sin_ofs写入并保存于第二写入区域WARA1(步ST213)。
在步骤ST212中判断出数据保证用标记“ofs_write_flg”不为“0”的情况下,判断存储部924的第一写入区域WARA0的数据为旧数据,将补偿值数据cos_ofs,sin_ofs写入并保存于第一写入区域WARA0(步骤ST214)。
写入处理例如像步骤ST215所示那样进行。
即,将写入第一写入区域WARA1或者第二写入区域WARA2的补偿值数据cos_ofs,sin_ofs切分为每个字节进行保存。
写入数据与写入区域按照后处理一个周期变更一次。由此,在后处理的一个周期写入一字节。
并且,将切分的数据的位的排他逻辑和(xor)计算为CRC,补偿值数据cos_ofs,sin_ofs的写入结束后,也写入CRC。具体地说,将补偿值数据cos_ofs,sin_ofs的各32位数据四等分而获得的八位数据的一共八个排他逻辑和(xor)计算为CRC。将补偿值数据cos_ofs四等分获得cosHH,cosHL,cosLH,以及cosLL,将补偿值数据sin_ofs四等分获得sinHH,sinHL,sinHL,sinLH以及sinLL,则CRC计算为下述所示。
CRC=(cos_HH)xor(cos_HL)xor(cos_LH)xor(cos_LL)xor(sin_HH)xor(sin_HL)xor(sin_LH)xor(sin_LL)
接下来,进行数据保证用标记“ofs_write_flg”是否为“0”的判断(步骤ST216)。
在步骤ST216中判断出数据保证用标记“ofs_write_flg”为“0”的情况下,由于将新的数据保存于存储部924的第二写入区域WARA1,因此以保证写入第二写入区域WARA1的补偿值数据cos_ofs,sin_ofs的方式将标记变更为“1”(步骤ST217)。
在步骤ST216中判断出数据保证用标记“ofs_write_flg”不为“0”的情况下,由于将新的数据保存于存储部924的第一写入区域WARA0,因此以保证写入第一写入区域WARAO的补偿值数据cos_ofs,sin_ofs的方式将标记变更为“0”(步骤ST218)。
[读取条件判断部927的结构以及功能]
读取条件判断部927根据存储部924的数据保证用标记FLG(ofs_write_flg)的设定数据判断存储于第一写入区域WARA0的数据或者存储于第二写入区域WARA1的数据中的任意一个区域的数据是否得到保证。
并且,读取条件判断部927在得到保证的第一写入区域WARA0或者第二写入区域WARA1的数据不存在异常的情况下读取得到保证的区域的补偿值数据,通过第二开关929、第一开关928提供给角度位置检测部922的补偿减法部9221。
由此,能够不采用数据写入失败等明显异常的中点值的补偿值数据。
读取条件判断部927在计算判断出得到保证的第一写入区域WARAO或者第二写入区域WARA1的写入数据的CRC(错误检测符号),并且计算的CRC与写入的CRC一致的情况下,读取得到保证的区域的补偿值数据,通过第二开关929、第一开关928提供给角度位置检测部922的补偿减法部9221。
由此,能够不采用CRC异常等异常的中点值的补偿值数据。
读取条件判断部927在计算的CRC与写入的CRC一致,且在特定区域HL或者HH写入有特定数据的情况下,读取得到保证的区域的补偿值数据,通过第二开关929、第一开关928提供给角度位置检测部922的补偿减法部9221。
由此,能够不采用CRC异常或者数据写入失败等明显异常的中点值的补偿值数据。
读取条件判断部927在计算的CRC与写入的CRC不一致的情况下或者在特定区域HL或者HH没有写入特定数据的情况下,代替得到保证的区域的补偿值数据,通过第二开关929、第一开关928将存储于第二存储部即ROM925的初始补偿值提供给角度位置检测部922的补偿值减法部9221。
即使在这种情况下,也能够不采用CRC异常或者数据写入失败等存在明显异常的中点值的补偿值数据。
[补偿值读取实行时的处理]
图12是表示本实施方式所涉及的读取条件判断部927的补偿值读取实行时的处理的流程图。
接下来,参照图12对补偿值读取实行时的处理进行说明。
首先,读取条件判断部927获取存储部924的数据保证用标记ofs_write_flg(步骤ST301)。
接下来,判断数据保证用标记“ofs_write_flg”是否为“0”(步骤ST302)。
在步骤ST302中判断出数据保证用标记“ofs_write_flg”为“0”的情况下,判断第一写入区域WARA0的数据得到保证(步骤ST303)。
在步骤ST302中判断出数据保证用标记“ofs_write_flg”不为“0”的情况下,判断第二写入区域WARA1的数据得到保证(步骤ST304)。
并且,计算在步骤ST303或者步骤ST304中判断的写入区域的补偿值数据cos_ofs、sin_ofs的CRC(步骤ST305)。
接下来,判断计算的CRC与写入的CRC是否一致(步骤ST305)。
在步骤ST306中判断出CRC一致的情况下,判断在补偿值数据cos_ofs、sin_ofs的特定区域HL是否写入了特定数据“0x00”或者“0xFF”(步骤ST307)。
在判断出在特定区域HL写入有特定数据“0x00”或者“0xFF”的情况下,判断在补偿值数据cos_ofs、sin_ofs的各自的特定区域HH是否写入了特定数据:在cos的情况下为特定数据“0x50”,在sin的情况下为“0x0A”(步骤ST308)。
判断出在特定区域HH写入了特定的数据:在cos的情况下为特定数据“0x50”,在sin的情况下为“0x0A”的情况下,读取在步骤ST303或者步骤ST304中判断的写入区域的补偿值数据,作为补偿值数据cos_ofs、sin_ofs通过第二开关929、第一开关928提供给角度位置检测部922的补偿减法部9221(步骤ST309)。
在步骤ST306、步骤ST307、步骤ST308中的至少任意一个的判断处理中,在进行了否定的判断的情况下,将保存于ROM925的工场出货时的原始初始值org_cos_ofs,org_sin_ofs作为补偿值数据cos_ofs,sin_ofs通过第二开关929、第一开关928提供给角度位置检测部922的补偿减法部9221(步骤ST310)。
第一开关928的端子a与补偿减法部9221的补偿值的输入部连接,端子b与补偿推定部923的输出部连接,端子c与第二开关929的端子a连接。
第一开关928在接入电源时等的启动时控制端子a与端子c的连接状态。在这种状态下,将通过第二开关929传送的存储于存储部924的最新的补偿值或者ROM925的初始补偿值输入于补偿减法部9221。
若从启动时经过指定时间,则第一开关928控制端子a与端子b的连接状态。在这种状态下,将通过补偿推定部923获取的驱动时的当前的补偿值输入于补偿减法部9221。
第二开关929的端子b与从读取条件判断部927的存储部924读取的补偿值的输出线连接,端子c与ROM925的输出部连接。
一般地,第二开关929的端子a与端子b连接,将在启动时写入存储部924的最新的补偿值通过第一开关928输入于补偿减法部9221。
第二开关929在读取条件判断部927中写入存储部924的补偿值数据存在CRC错误或者没有在特定区域写入特定数据的情况下,端子a与端子c连接,通过第一开关928将初始补偿值输入补偿减法部9221。
并且,第二开关929在工场出货后初次接入电源的情况下,端子a与端子c连接,通过第一开关928将初始补偿值输入补偿减法部9221。
以上对本实施方式所涉及的角度位置检测系统920的各部分的具体结构以及功能进行了说明。
接下来,参照图13以及图14对本实施方式的角度位置检测系统920的整体动作的概要进行说明。
图13是用于说明本实施方式的角度位置检测系统920从工场出货后初次接入电源时的整体动作的概要的流程图。
图14是用于说明本实施方式的角度位置检测系统920在第二次以后接入电源时的整体动作的概要的流程图。
[初次接入电源时的动作]
首先,参照图13说明初次接入电源时的动作。
在角度位置检测系统920中,在控制部90的控制下,若从工场出货后初次接入电源(步骤ST401),则通过第二开关929、第一开关928将初始补偿值0FS3(a,b)提供给补偿减法部9221(ST402)。
在补偿减法部9221中,从ADC921产生的数字正弦波信号Dcos、Dsin减去提供来的补偿值,在此为OFS3(a,b)来进行中点修正(步骤ST403),并将结果作为DSa(DScos),DSb(DSsin)输出给角度计算部9222以及补偿推定部923。
在角度计算部9222中,根据补偿减法部9221的减法结果DSa,Dsb通过电插值演算求得θ=tan-1(sin/cos),从而检测出旋转输出轴的角度位置θ。(步骤ST404)。
在补偿推定部923中,根据在补偿减法部9221进行减法处理的正弦波信号DSa(DScos),DSb(DSsin)推定(获取)用于中点修正的补偿值OFS1(a,b)(步骤ST405)。
在该补偿推定部923中获取的补偿值OFS1(a,b)通过第一开关923取代初始补偿值OFS(a,b)提供给补偿减法部9221(步骤ST406)。
以后,反复进行步骤ST403、步骤ST405以及步骤ST406的处理。
并且,在步骤ST405的补偿值OFS1(a,b)的获取处理之后,在写入条件判断部926中,监视时间、修正次数的条件(步骤ST407),并且以满足条件的形式包括CRC一同写入存储部924的第一写入区域WARA0或者第二写入区域WARA1,并设定数据保证用标记(步骤ST408)。
[第二次以后接入电源时的动作]
接下来,参照图14说明接入电源为第二次以后的情况的动作。
在角度位置检测系统920中,在控制部90的控制下,若进行第二次以后的电源接入(步骤ST411),则通过读取条件判断部927监视读取条件(步骤ST412)。
在步骤ST412中满足读取条件的情况下,写入存储部924的最新的补偿值OFS2(a,b)通过第二开关929、第一开关928提供给补偿减法部9221(ST413)。
在步骤ST412中不满足读取条件的情况下,通过第二开关929、第一开关928将初始补偿值OFS3(a,b)提供给补偿减法部9221(ST414)。
在补偿减法部9221中,从ADC921产生的数字正弦波信号Dcos、Dsin减去提供来的补偿值OFS2(a,b)或者补偿值OFS3(a,b)来进行中点修正,并将结果作为DSa(DScos),DSb(DSsin)输出给角度计算部9222以及补偿推定部923。
在角度计算部9222中,根据补偿减法部9221的减法结果DSa,DSb通过电插值计算求得θ=tan-1(sin/cos),检测出旋转输出轴的角度位置θ(步骤ST416)。
在补偿推定部923中,基于在补偿减法部9221中进行减法处理的正弦波信号DSa(DScos),DSb(DSsin)推定(获取)用于中点修正的补偿值的OFS1(a,b)(步骤ST417)。
在该补偿推定部923获取的补偿值OFS1(a,b)通过第一开关928取代补偿值OFS2(a,b)或者初始补偿值OFS3(a,b)提供给补偿减法部9221(ST418)。
以下,反复进行步骤ST415、ST416、ST417以及ST418的处理。
并且,在步骤ST417的补偿值的OFS(a,b)的获取处理后,在写入条件判断部926,监视时间、修正次数的条件(步骤ST419),并且以满足条件的形式包括CRC一同写入存储部924的第一写入区域WARA0或者第二写入区域WARA1,并设定数据保证用标记(步骤ST420)。
如以上说明,在具备具有上述特点的角度位置检测系统920的本实施方式的旋转编码器1中,通过从接入电源(启动时)经过指定时间后依次记录正弦波信号sin、cos的中点值(中点电位值)的补偿值,并在下一次启动时使用该补偿值,由于能够接近实际随时间变化的补偿值,因此能够缩小补偿值误差。
并且,由于若补偿误差大,则不能计算出准确的角度,因此存在发生转矩指令值偏差的担忧,但是由于在启动时就缩小补偿值的误差,因此能够实现稳定的旋转和位置控制。
与此相对,在已有的旋转编码器中,以每次切断电源时正弦波信号sin、cos的中点值(中点电位值)的程序上的补偿值返回到工场出货初始值为前提构成。因此,若补偿值随着时间的变化而变化(电路板的应力开放等导致磁电阻元件(MR元件)的灵敏度变化),则在每次接入电源时补偿误差变大从而不能计算出准确的角度位置。
图15(a)、图15(b)是使用模拟波形与比较例对比说明用于将依次记录本实施方式所涉及的正弦波信号的中点值(中点电位值)的补偿值,并在下一次启动时(接入电源时)使用该补偿值的情况的效果的图。
在图15(a)、图15(b)中,横轴表示时间,纵轴表示速度指令,VTR表示转矩指令值。
图15(a)为用于说明比较例的图,图15(b)为用于说明本实施方式所涉及的效果的图。
在作为比较例的已有的旋转编码器中,以每次切断电源时正弦波信号sin、cos的中点值(中点电位值)的程序上的补偿值返回到工场出货初始值为前提的方式构成。
因此,若补偿值随着时间的变化而变化(电路板的应力开放等导致磁电元件(MR元件)即感磁膜4的灵敏度变化),则在每次接入电源时补偿误差变大从而不能计算出准确的角度位置。
其结果是,在比较例中,如图15(a)所示,在接入电源后因编码器的精度变差而导致转矩指令值的偏差变得激烈,经过一段时间以后,偏差逐渐得到改善。
与此相对,在本实施方式中,通过在从接入电源(启动时)经过指定时间后依次记录正弦波信号sin、cos的中点值(中点电位值)的补偿值,并在下一次启动时使用该补偿值,由于能够接近实际随时间变化的补偿值,因此能够缩小补偿值误差。
其结果是,在本实施方式中,如图15(b)所示,在接入电源后因编码器精度变差导致转矩指令值的偏差得到大幅度改善,即使经过时间后也能够维持特定良好。
如此一来,根据本实施方式,由于在启动后马上就能够减少补偿值的误差,因此能够实现稳定的旋转和位置控制。
[本实施方式的主要效果]
如以上说明,在本实施方式的旋转编码器1中,通过在从接入电源(启动时)经过指定时间后依次记录正弦波信号sin、cos的中点值(中点电位值)的补偿值,并在下一次启动时使用该补偿值,因此由于接近实际随时间变化而变化的补偿值,因此能够缩小补偿误差。
并且,由于若补偿误差大则不能计算出准确的角度,因此虽然有可能产生转矩指令值的偏差,但是由于在启动时就缩小补偿值的误差,因此能够实现稳定的旋转和位置控制。
在本实施方式中,具有基于上述温度监视用电阻膜47的电阻值变化控制向加热用电阻膜48的供电的温度控制部910。
在本旋转编码器1中,通过该温度控制,不必受环境温度的影响,能够将磁电阻元件(MR元件)即感磁元件4(感磁膜41至44)的芯片温度控制在恒定值,因此能够缩小温度对补偿的影响。
因此,由于能够将产生转矩指令值的偏差的可能性控制在最小的限度,因此能够实现更加稳定的旋转和位置控制。
为了接入电源或者开始系统复位等的驱动(运转),写入条件判断部926将从启动后的短时间的驱动后获取的补偿值OFS2(a,b)写入存储部924的第一写入区域WARA0或者第二写入区域WARA1。
在这种情况下,写入条件判断部926例如为了掌握驱动初始的电平,例如等待一分钟,将旋转体即马达旋转半周获取的数据平均化。
由此,为了借助加热用电阻膜48的加热获得磁电阻元件即感磁膜4的热稳定需要经过一定程度的较长的时间,但是由于不必经过那么长的时间就掌握启动初始电平的补偿值,因此,即使在指定时间内(短时间内)反复接入电源,也能够确保补偿值的准确性。
写入条件判断部在经过为了通过加热而使补偿值稳定的指定时间后,多次反复进行补偿值获取处理,将多个补偿值平均化,将平均化了的补偿值写入所述存储部924的第一写入区域WARA0或者第二写入区域WARA1。
在这种情况下,能够例如在等待三分钟后,将旋转体即马达旋转二十周获取的数据平均化。
由此,通过经过指定时间,能够通过加热控制使电路稳定化,且能够将补偿值平均化从而计算出准确的补偿值。
写入条件判断部926在将平均化了的补偿值写入存储部924后,继续进行补偿值的监视,每隔一定间隔获取补偿值,写入存储部924。
该一定间隔可以设定为例如十分钟或者比十分钟长的时间。
因此,通过继续监视补偿值,对于监视周期时间内的未预期的变动也能够处理,能够缩小下一次启动时的补偿误差。
并且,即使在将EEPROM等具有改写次数限制的非易失性存储器用于存储部924的情况下,不必更换存储部,在旋转体即马达等的产品的保证寿命内也能够继续监视。
该一定间隔设定为满足考虑了马达的产品保证寿命年或者存储部的写入保证次数的指定式子的值。
由此,即使在将EEPROM等改写次数有限制的非易失性存储器适用于存储部924的情况下,不必更换存储部924,也能够在旋转体即马达的产品保证寿命内持续监视。
并且,在本实施方式的存储部924中,数据保证用标记FLG在向第一写入区域WARA0或者第二写入区域WARA1的写入处理结束后设定。由此,能够表示标记所示的区域的数据为最新且得到保证的数据。
例如,若标记FLG为“1”,在将中点值的补偿值数据或者CRC(错误检测符号)写入第一写入区域WARA0的过程中拔下电源,由于在下一次接入电源时标记FLG依然为“1”,因此,数据能够舍弃不完整的第一写入区域WARA0的数据,而采用第二写入区域WARA1的数据。
并且,本实施方式的读取条件判断部927根据存储部924的数据保证用标记FLG(ofs_write_flg)的设定数据判断存储于第一写入区域WARA0的数据或者存储于第二写入区域WARA1的数据中的任意一个区域的数据是否得到保证。
并且,读取条件判断部927在得到保证的第一写入区域WARA0或者第二写入区域WARA1的数据不存在异常的情况下读取得到保证的区域的补偿值数据。
由此,能够不采用数据写入失败等存在明显异常的中点值的补偿值数据。
读取条件判断部927计算判断出得到保证的第一写入区域WARA0或者第二写入区域WARA1的写入数据的CRC(错误检测符号),在计算的CRC与写入的CRC一致的情况下,读取得到保证的区域的补偿值数据。
由此,能够不采用CRC异常等异常的中点值的补偿值数据。
读取条件判断部927在计算的CRC与写入的CRC一致,且在特定区域HL或者HH写入特定数据的情况下,读取得到保证的区域的补偿值数据,并且通过第二开关929、第一开关928提供至角度位置检测部922的补偿减法部9221。
并且,读取条件判断部在计算的CRC与写入的CRC不一致的情况下或者在特定区域HL或者HH没有写入特定数据的情况下,代替得到保证的区域的补偿值数据,而将存储于第二存储部即ROM925的初始补偿值通过第二开关929、第一开关928提供给角度位置检测部922的补偿减法部9221。
由此,能够不采用CRC异常或者数据写入失败等明显异常的中点值的补偿值数据。
并且,在本实施方式的磁传感器装置10中,在形成有感磁膜41至44的基板40形成有温度监视用电阻膜47以及加热用电阻膜48。因此,通过温度监视用电阻膜47的电阻值监视与设定温度的温度差或者温度变化,并根据监视结果向加热用电阻膜48供电,能够将感磁膜41至44加热至设定温度。
因此,在各感磁膜41至44中,即使在温度发生变化时,因应力的影响导致电阻值变化或者因膜质的差引起的电阻变化不同的情况下,若以在设定温度下获得较高的精度的方式设定感磁膜41至44的电阻平衡,则即使发生环境温度的变化也能够获得稳定的检测精度。即,即使发生温度变化,由于图1(c)所示的利萨如图的原点位置不移动,因此能够精确地检测出旋转2的旋转角度位置。
并且,根据本实施方式,以温度监视用电阻膜(SENS)47的形状形成为n边形(n为3以上的整数、n无限大的圆形)的具有多个直线状或者曲线状的弧,多个弧(R1至R6)以相对于相同方向的磁通感应的电压的朝向相反的方式彼此串联。
如此,通过将温度监视用电阻膜47的形状设定为三角形以上的n边形,因此能够抑制因磁场导致电阻值变化,并且能够精确地进行温度检测。
由于多个弧以感应的电压的朝向相反的方式彼此串联,因此能够抑制因磁通变化引起感应电压的误差,即使在旋转磁场中或者强弱磁场中也能够精确地进行温度检测,进而能够精确地检测旋转体2的旋转角度位置。
并且,加热用电阻膜48形成为包围感磁区域45的闭环状。因此,能够适当地加热感磁区域45整体。
并且,在俯视时,温度监视用电阻膜47形成于加热用电阻膜48与感磁区域45之间。因此,能够通过温度监视用电阻膜47适当地监视感磁区域45的温度。
[其他实施方式]
也能够以设定中点的补偿值的范围的方式构成检测角度位置检测系统920的读取条件判断部927的数据异常的功能。能够不采用数据写入失败等明显异常的补偿值等的结构。
在本实施方式中,将两个电源端子VccA、VccB集中为一个,但是这些也可分开地形成。并且,在上述实施方式中,将两个接地端子GNDA、GNDB集中为一个,但是也可分开地形成。
在上述实施方式中,例示了磁电阻元件作为感磁元件4,但是本发明也适用于通过霍尔元件构成感磁元件4的情况。
在上述实施方式中,使用呈条状延伸的加热用电阻膜48,但是也可形成覆盖感磁区域45整体的面状的加热用电阻膜48。
并且,在上述实施方式中,感磁膜41至44、温度监视用电阻膜47以及加热用电阻膜48全部形成于基板40的一面40a,但是温度监视用电阻膜47以及加热用电阻膜48中的一个也可通过印刷等方法形成于基板40的另一面。
标号说明
1…旋转编码器、2…旋转体、4…感磁元件、10,10A至10F…磁传感器装置、40…基板、41至44…感磁膜、47,47B至47F…温度监视用电阻膜、48…加热用电阻膜、90…控制部、910…温度控制部、920…角度位置检测系统、921…ADC(模拟数字变换器)、922…角度位置检测部、9221…补偿减法部、9222…角度计算部、923…补偿推定部、924…存储部、925…ROM(第二存储部)、926…写入条件判断部、927…读取条件判断部、928…第一开关、929…第二开关。