速度检测装置的利记博彩app

文档序号:6002893阅读:119来源:国知局
专利名称:速度检测装置的利记博彩app
技术领域
本发明涉及检测具有和运动物体的速度、旋转速度、或者旋转数等成比例的频率的交流信号的速度检测装置。
背景技术
一直以来,从脉冲信号检测运动物体(电动车辆等)的速度,用于各种控制(例如,防止空转、打滑)等的装置被众所周知。例如,列举下列专利文献广2展示的速度检测装置。专利文献
专利文献I :日本特开平8 - 233842号公报;
专利文献2 :日本特开平8 - 136563号公报。

发明内容
然而,上述专利文献I展示的速度检测装置因为能够脉冲计数寄存器(register)和脉冲计时寄存器得到置位(set)的周期即俘获(capture)周期不固定,所以存在难以在后级加入数字滤波器(digital filter)处理的问题。因此将数字滤波器处理加入后级时,在每个微处理器端的运算周期,利用当时取得的最新的脉冲计数寄存器和脉冲计时寄存器的置位求频率,并缓冲下去。因此,存在有时也有一部分数据不被使用而丢弃的情况,成为频率的精度恶化的要因的问题。此外,上述专利文献2展示的速度检测装置中,存在为锁存(latch)用于测量脉冲的时间的计数器的值,根据脉冲边缘(pulse edge)进行锁存,进而根据俘获时钟进一步锁存,因而额外需要硬件资源的问题。此外,上述专利文献2展示的速度检测装置中,存在没有明示在既定的周期内一个脉冲边缘也没有被输入时和溢出(overflow)发生时的处置内容的问题。本发明鉴于上述内容而完成,目的在于得到不会发生频率的精度恶化、始终进行数据更新、电路规模也比较小、也能够减少对软件的额外开销(overhead)的速度检测装置。为解决上述问题,达成目的,本发明的特征在于具备脉冲计数部,对来自外部的输入信号的脉冲数进行计数;脉冲计时部,通过根据计时时钟而计时、根据脉冲而清除,对从最后的脉冲起的时间进行计时;溢出检测部,检测所述脉冲计时部的溢出,并保持于溢出寄存器;俘获部,在每个固定周期取得测量结果的俘获时钟的定时,将来自所述脉冲计数部的输出保持于脉冲计数寄存器,并且将来自所述脉冲计时部的输出保持于脉冲计时寄存器;以及频率计算部,读取所述脉冲计数寄存器的值、所述脉冲计时寄存器的值、所述溢出寄存器的值,根据既定的运算计算出频率运算值,所述频率计算部在所述脉冲计时部溢出时,通过在上次中断时的脉冲计时数据上相加由所述俘获时钟的周期/所述计时时钟的周期得到的既定的常数,而求从最后的脉冲起的时间/所述计时时钟即脉冲计时数据,从而计算出所述频率运算值。根据本发明,因为使俘获周期固定,所以具有不会发生频率的精度恶化、始终进行数据更新、电路规模也比较小、能够减少对软件的额外开销的效果。


图I是示出本发明的实施方式I涉及的速度检测装置的结构例的 图2是示出图I的溢出检测部和运算部的结构例的 图3是示出本发明的实施方式2涉及的速度检测装置的溢出检测部和运算部的结构例的 图4是示出本发明的实施方式3涉及的速度检测装置的溢出检测部和运算部的结构例的图;
图5是示出图I的速度检测装置的设计步骤的一例的 图6是示出图I的运算部的处理步骤的一例的 图7是图I的运算部的处理内容的说明 图8是用于说明图I的速度检测装置的硬件部分的一个动作的 图9是用于说明图I的速度检测装置的硬件部分的其他的动作的 图10是示出本发明的实施方式4涉及的运算部的结构例的 图11是示出本发明的实施方式4涉及的速度检测装置的设计步骤的一例的 图12是示出图10的缓冲器(buffer)处理部的处理步骤的一例的 图13是示出图10的运算部处理的处理步骤的一例的 图14是图10的运算部的处理内容的说明 图15是图10的运算部的其他的处理内容的说明 图16是示出本发明的实施方式5涉及的速度检测装置的结构例的 图17是示出本发明的实施方式6涉及的速度检测装置的结构例的 图18是示出专利文献I展示的速度检测装置的精度恶化的一例的 图19是示出专利文献I展示的速度检测装置的模拟结果的一例的 图20是示出本发明的实施方式4涉及的速度检测装置的模拟结果的一例的图。
具体实施例方式以下,基于附图详细说明本发明涉及的速度检测装置的实施方式。此外,本发明并不局限于该实施方式。实施方式I
图I是示出本发明的实施方式I涉及的速度检测装置的结构例的图。速度检测装置I的作用是检测输入信号IN的频率。图广图9为相关图。实施方式I的速度检测装置1,作为主要的结构,具有波形整形部101、边缘检测部106、脉冲计数部107、计时时钟发生部103、脉冲计时部109、俘获时钟发生部104、溢出检测部108、俘获部110、中断请求部111以及运算部(频率计算部)113而构成。速度检测装置I在图I中被记载为单体的装置,但也可以是某装置的一部分的功能。名字不是速度检测装置也可以,有时也被称为“**控制装置”、“**控制系统”。在本说明书中,在数学式中右边和左边有时会出现相同变量名,此种情况意味着右边的变量使用上次值。
波形整形部101对输入信号IN进行波形整形而转换为方波(脉冲信号P),同时使用光稱合器(photocoupler)等进行输入信号IN和装置内部的信号的绝缘。边缘检测部106只检测出脉冲信号P的上升或下降的任意一方的边缘,作为脉冲边缘(脉冲)PE输出。该脉冲边缘PE只在边缘被检测出的瞬间变为既定脉宽的H,除此以外变为L。计时时钟发生部103发生用于脉冲计时部1 09计量时间的计时时钟CK_HM。俘获时钟发生部104发生用于每个固定周期取得测量结果的定时即俘获时钟CK_CAP。脉冲计数部107的输出值的初始状态为0,以根据来自边缘检测部106的脉冲边缘PE而对输出值进行计时的方式构成。就是说,该计数器没有复位条件,自主地动作。脉冲计时部109通过根据来自计时时钟发生部103的计时时钟CKJlM而计时,根据来自边缘检测部106的脉冲边缘PE而被清除,测量从最后的脉冲边缘PE起的时间。俘获部110根据来自俘获时钟发生部104的俘获时钟CK_CAP的定时,将来自脉冲计数部107的工作(live)脉冲计数值LN保持于脉冲计数寄存器CN。此外,俘获部110根据来自俘获时钟发生部104的俘获时钟CK_CAP的定时,将来自脉冲计时部109的工作脉冲计时值LT保持于脉冲计时寄存器CT。在此,说明脉冲计时部109和俘获部110以及溢出检测部108的关系。脉冲计时部109计量从最后输入的脉冲边缘PE起的时间,当发生俘获时,通过俘获部110,俘获该瞬间的值。俘获部110保持从最后输入的脉冲边缘PE到俘获发生为止的时间。此外,该定时器(timer)(脉冲计时部109)只需准备能够足够测量俘获周期Tcap期间的位宽即可,比它更长的时间内未输入脉冲边缘PE时溢出,使用溢出检测部108检测溢出。中断请求部111根据来自俘获时钟发生部104的俘获时钟CK_CAP的定时,输出中断请求IRQ。此外,中断请求部111根据来自运算部113的中断请求清除请求ICRQ (未图示)而中止中断请求IRQ。此外,关于中断请求清除请求ICRQ,之后讲述。图2是示出图I的溢出检测部和运算部的结构例的图。溢出检测部108检测出来自脉冲计时部109的工作脉冲计时值LT超过既定的最大值而将溢出寄存器OVF置位(0VF=1),保持溢出寄存器OVF直到运算部113复位。运算部113即使在溢出寄存器OVF被置位的情况下,当上次中断时的脉冲计数寄存器的值和本次中断时的脉冲寄存器的值不同时,也判断为未发生溢出,并且溢出寄存器OVF复位。此外,运算部113在上次中断时的脉冲计数寄存器的值和本次中断时的脉冲计数寄存器的值相同时,根据溢出寄存器OVF的值,判断溢出是否发生。将溢出是否发生设定于溢出标记OVFF。图8及图9示出实施方式I涉及的速度检测装置I的动作的一例。图8是用于说明图I的速度检测装置的硬件部分的一个动作的图。图8示出未发生溢出时的各信号的时序图。工作脉冲计数值LN和脉冲边缘PE对应而计时,根据俘获时钟CK_CAP的定时而保持于脉冲计数寄存器CN。工作脉冲计时值LT从输入最后的脉冲边缘PE开始,增加到根据下一个脉冲边缘PE而被清除为止,在俘获时钟CK_CAP的定时保持于脉冲计时寄存器CT。图9是用于说明图I的速度检测装置的硬件部分的其他动作的图。图9中,示出溢出发生时的各信号的时序图,工作脉冲计数值LN保持于脉冲计数寄存器CN,工作脉冲计时值LT保持于脉冲计时寄存器CT。例如,图9中,运算部113在第二个俘获时钟CK_CAP之后,由于上次中断时的脉冲计数寄存器的值和本次中断时的脉冲计数寄存器的值不同,所以判断为未发生溢出,清除溢出寄存器OVF的值。在此,在图9的第二个俘获时钟CK_CAP到第三个俘获时钟CK_CAP为止的期间,因为工作脉冲计时值LT超过了既定的最大值,所以溢出检测部108将溢出寄存器OVF置位(0VF = I)。运算部113由于上次中断时的脉冲计数寄存器的值和本次中断时的脉冲计数寄存器的值相同,且OVF的值为1,判断为发生溢出。图5是示出图I的速度检测装置的设计步骤的一例的图。以下,说明速度检测装置I的设计步骤例。·规格(spec)设定步骤301
设定俘获周期Tcap、最大输入频率Fmax、最小输入频率Fmin、目标精度ACCt。例如,

俘获周期Tcap = 2. 5ms
最大输入频率 Fmax = 8000Hz
最小输入频率Fmin = IHz
目标精度 A(Xt = 200ppm*2. 5ms = O. 5ppm · S。·计时时钟频率设定步骤302
计时时钟频率 Ftim彡I/ACCt — Ι/Tcap (例如彡I. 9996MHz,在此设定为2. 5MHz。)
硬件设定步骤303
脉冲计数必要位数 Nwidth = Roundup (log (Fmax*Tcap) /log (2),0)
脉冲计时必要位数 Twidth = Roundup (log (Ftim*Tcap) /log (2),0)
例如,因为两者分别成为5、13,所以设定脉冲计数部107的位数为5,设定脉冲计时部109的位数为13。·各种运算常数计算步骤304 求各种常数。该值用于后述的运算部113。脉冲计数屏蔽值O NMASKO = 2'Nwidth — I 脉冲计数最大值NMAX = Fmax*Tcap
脉冲计时屏蔽值O TMASKO = 2'Twidth - I 俘获周期指数TCAP = Tcap^Ftim 脉冲计时最大值TMAX = Ftim/Fmin 例如,上述分别成为 0xlf、160、0xlfff、6250、2500000。图6是示出图I的运算部的处理步骤的一例的图。运算部113根据中断请求IRQ而起动,作为主要的结构,具有数据读入步骤201、溢出处理步骤202、中断请求清除步骤203、分子运算步骤204、分母运算步骤205、频率运算步骤206以及上次值设定步骤207而构成。此外,计时时钟周期为I/计时时钟频率Ftim。·读入步骤201
运算部113从俘获部110读取CN、CT并复制于局部变量XN、XT。·溢出处理步骤202运算部113实施图2、图3、图4的任意一个而取得溢出标记OVFF。 中断请求清除步骤203
运算部113输出中断请求清除请求ICRQ。·分子运算步骤204
运算部113使用下列公式求局部变量NUM
NUM = MIN ((XN - YN) & NMASKO, NMAX)。S卩,基于从本次中断时的脉冲计数寄存器的值(XN)减去上次中断时的脉冲计数寄存器的值(YN)之后的值,求从上次中断时到本次中断时之间(正前方的俘获周期Tcap期间)输入的脉冲边缘的数量NUM。
·
·分母运算步骤205 运算部113使用下列公式求XT。OVFF = O即无溢出时,
XT = XT & TMASKOoS卩,运算部113在脉冲计时部109未发生溢出时,根据脉冲计时寄存器CT的值求脉冲计时数据XT。除此之外,即有溢出时,
XT = MIN (YT + TCAP, TMAX)。关于该有溢出时的设定,由于脉冲计时寄存器CT因溢出而无效,所以从上次值YT进行计算。但是,设置有上限TMAX。此外,因为使用软件将值相加,所以如果要问是否发生频率的精度恶化,答案是否定的。若假设脉冲计时部109的位宽足够,则在俘获周期Tcap的时间上增加俘获周期指数TCAP。从而,不会发生因此导致的频率的精度恶化。硬件(脉冲计时部109)对于短的时间进行分担,软件对于长的时间进行分担。即,运算部113在脉冲计时部109溢出时,在上次的脉冲计时数据(YT)上相加由俘获时钟周期/计时时钟周期得到的既定的常数值(TCAP),求从最后的脉冲边缘PE起的时间/计时时钟周期即脉冲计时数据(XT)。·频率运算步骤206
运算部113使用在步骤205得到的脉冲计时数据(XT),使用下列运算式计算出频率运
算值F。NUM 为 O 时,
F = MIN (Ftim/XT, F)。S卩,运算部113在既定的周期内输入的脉冲边缘PE为O个时,通过选择假定随后输入脉冲边缘PE时的频率运算值(Ftim/XT)和上次的频率运算值F中低一方的值,推断频率运算值F。除此之外时,
F = NUM*Ftim/ (TCAP 十 YT — XT)。·上次值设定步骤207
运算部113将XT和XN保存于上次值YT和YN,用于下次的运算。这里有一个需要注意的点。※上次值YT必须使用脉冲计数最大值TMAX进行初始化。在此,使用图7解说运算部113的处理。图7是图I的运算部的处理内容的说明图。事件I是从图7的第一个俘获时钟CK_CAP被输入开始到第二个俘获时钟CK_CAP被输入为止之间,进入一个以上脉冲边缘PE的例子。图中,脉冲边缘PE的数量NUM为12个,此夕卜,记载为(TCAP + YT- XTVFtim的区间,有12个周期的脉冲周期。因而可以知道,作为求频率运算值F的公式的分子,使用NUM的值没有问题。此外,关于求频率运算值F的公式的分母即12个周期的时间,如果观察图示为(TCAP + YT- XTVFtim的区域,从和图示为TCAP/Ftim的时间相比,左侧长了 YT/Ftim,右侧短了 XT/Ftim,可以明确知道使用(TCAP + YT- XT) /Ftim是正确的。因此,可以知道作为求频率运算值F的公式,“F = NUM^Ftim/ (TCAP + YT — XT)”是正确的。接下来,事件2是从图7的第一个俘获时钟CK_CAP被输入开始到第二个俘获时钟CK_CAP被输入为止之间(既定的周期内),一个脉冲边缘PE也没有进入的状态。这时,作为
信息,虽说脉冲边缘PE未进入,但并非什么都没有,在当前时间点,从最后的脉冲边缘PE起经过了 XT/Ftim,所以至少可以明确知道频率比Ftim/XT小。从而,运算部113将上次的频率运算值F和Ftim/XT中较小的一方作为新的频率运算值F输出。即使用公式“F = MIN(Ftim/XT, F)”。如此,运算部113即使在在既定的周期内输入的脉冲边缘的数量为O个的情况下,通过选择假定为随后假设输入脉冲边缘PE时的频率运算值(即,使用计时时钟频率/脉冲计时数据得到的值)和上次的频率运算值(F)的较低一方的值,推断频率运算值F。图18是示出专利文献I展示的速度检测装置的精度恶化的一例的图。图18中示出脉冲计数寄存器和脉冲计时寄存器得到置位的周期即俘获周期Tcap(俘获定时(capturetiming))和微处理器端的运算周期Teal。如图18所示,专利文献I展示的速度检测装置中,因为俘获周期Tcap不固定,所以将数字滤波器处理加入后级时,利用在微处理器端的每个运算周期得到的最新脉冲计数寄存器和脉冲计时寄存器的置位求频率,并缓冲下去。从而,如图18所示,存在一部分的数据未被使用而被丢弃的情况,成为频率的精度恶化的要因。另一方面,在实施方式I涉及的速度检测装置I中不会发生这样的问题。如以上说明,实施方式I涉及的速度检测装置I具有脉冲计数部107、脉冲计时部109、计时时钟发生部103、俘获时钟发生部104、溢出检测部108、俘获部110和运算部113,因为使俘获周期Tcap成为固定,所以不会如专利文献I展示的速度检测装置那样,存在一部分的数据未被使用而被丢弃的情况,不会产生频率的精度恶化。此外,实施方式I涉及的速度检测装置I不管脉冲边缘PE是否进入,定期地根据俘获时钟CK_CAP进行数据(频率运算值F)的取得,而更新数据,因而不会发生如下列专利文献I展示的速度检测装置那样的没有脉冲边缘PE时不更新数据的问题。即,专利文献I展示的速度检测装置,存在在未输入脉冲边缘PE时,脉冲计数寄存器和脉冲计时寄存器不能取得置位(俘获周期Tcap),所以不能求最新的频率运算值F的问题。进而,作为其处理方法,设置检测信号长期未输入的脉冲缺失检测单元,脉冲缺失时必须进行将频率运算值识别为O的处理,但是本发明的实施方式I涉及的速度检测装置I不需要此种脉冲缺失检测
>j-U ρ α装直。此外,实施方式I涉及的速度检测装置1,根据俘获时钟CK_CAP定期地进行数据取得,所以不需要在硬件的定时器存放大的值,能够以极小的资源对应低频率。即,专利文献I展示的速度检测装置为能够识别至低频率,必须设置具有能够对和该频率相当的周期的时间进行测量的容量的时间计量电路。例如,使用计时用时钟=1ΜΗζ、16位宽的脉冲计时部计时时,ΙΜΗζ/65536 = 15. 3Hz成为能够测量的下限频率。如此,专利文献I展示的速度检测装置存在为对应低频率而需要大的硬件资源的问题,与此相比,本发明的实施方式I涉及的速度检测装置I不需要如此大的硬件资源。此外,根据实施方式I涉及的速度检测装置1,仅使用一个锁存器(latch)构成脉冲的时间测量用计数器即可(本实施方式中为俘获部110的脉冲计时寄存器CT)。S卩,专利文献2展示的速度检测装置为锁存用于测量脉冲的时间的计数器的值而在脉冲边缘进行锁存,进而根据俘获时钟进一步锁存,所以需要双重的锁存,但是本发明的实施方式I涉及的速度检测装置I不需要额外的硬件资源。此外,实施方式I涉及的速度检测装置I以在脉冲计时部109溢出时,通过在上次中断时的脉冲计时数据(YT)上相加由俘获时钟周期/计时时钟周期得到的既定的常数值(TCAP),求从最后的脉冲边缘PE起的时间/计时时钟周期即脉冲计时数据(XT)的方式构 成。专利文献2展示的速度检测装置未明示溢出发生时的处置内容,但本发明的实施方式I涉及的速度检测装置I明确示出了这些处置内容。此外,根据实施方式I涉及的速度检测装置1,在既定的周期内输入的脉冲边缘的数量为O个时,因为选择假定随后假设输入脉冲边缘PE时的频率运算值和上次的频率运算值中较低一方的值,所以不管脉冲边缘PE是否进入,都能够根据计时时钟CK_TIM定期地得到频率运算值F。专利文献2展示的速度检测装置未明示在既定的周期内一个脉冲边缘也没有被输入时的处置内容,但是本发明的实施方式I涉及的速度检测装置I明确示出了这些处置内容。实施方式2
接下来,进一步介绍溢出的检测方法少许不同的实施方式。在实施方式I中,是否溢出由溢出检测部108的溢出寄存器OVF进行管理。在实施方式2中,是否溢出由存储器进行管理。除此之外完全相同,所以只进行存在更改的部分的说明。图3是示出本发明的实施方式2涉及的速度检测装置的溢出检测部和运算部的结构例的图。溢出检测部108和实施方式I相同。运算部113以判断是否溢出,将溢出标记OVFF保持于存储器的方式构成,溢出寄存器OVF被置位时,判断为发生溢出并将溢出标记OVFF置位,并且清除溢出检测部108的溢出寄存器0VF。此外,当上次中断时的脉冲计数寄存器的值和本次中断时的脉冲计数寄存器的值不同时,运算部113判断为溢出未发生而清除溢出标记0VFF。说明图3的溢出检测部108及运算部113的动作。图3的溢出检测部108在工作脉冲计时值LT超过最大值时,将溢出寄存器OVF置位。运算部113通过中断处理,将溢出标记OVFF置位,保持溢出标记0VFF,并且清除溢出检测部108的溢出寄存器0VF。即,溢出寄存器OVF从O变化至I时,保持溢出标记0VFF,并且清除溢出寄存器0VF。如以上说明,实施方式2涉及的速度检测装置I以判断是否溢出,将溢出标记OVFF保持于存储器的方式构成,所以和实施方式I具有同样的效果,并且能够简化运算部113的结构。实施方式3接下来,进一步介绍溢出的检测方法少许不同的实施方式。在实施方式1、2中,由溢出检测部108和运算部113协调而进行是否溢出的判定,但是在实施方式3中,由溢出检测部108自动地判定是否溢出,由运算部113读入该溢出寄存器OVF并设定于溢出标记0VFF。图4是示出本发明的实施方式3涉及的速度检测装置的溢出检测部和运算部的结构例的图。溢出检测部108在工作脉冲计时值LT超过最大值时将溢出寄存器OVF置位,并且根据脉冲边缘PE清除溢出寄存器0VF。即,实施方式I以及2是通过运算部113的中断处理清除溢出寄存器OVF的方式,但是实施方式3是以根据脉冲边缘PE清除溢出寄存器OVF的方式构成。进而,溢出检测部108以根据俘获时钟CK_CAP的定时保持溢出寄存器OVF的值(I或者O)的方式构成。运算部113读入在溢出检测部108保持的溢出寄存器OVF并设定于溢出标记OVFF。如以上说明,实施方式3涉及的速度检测装置I使用溢出检测部108判定是否溢出,所以具有和实施方式I同样的效果,并且能够进一步地简化运算部113的结构。 实施方式4
接下来,说明受到硬件的制约等,不能使脉冲计数部107的位数、脉冲计时部109的位数太大,但是因为出于提高精度的目的,想要增大和求频率的分母相当的基本时间(=运算周期)的情况,因此和实施方式3相比,更改了运算部113的结构的实施方式4。图10是示出本发明的实施方式4涉及的运算部的结构例的图。图10 图14为相关图。实施方式4涉及的速度检测装置I以通过对软件施加少许负担,从而将硬件的规模(脉冲计数部107的位数、脉冲计时部109)保持在小的水平的方式设计。图10示出的运算部113具有缓冲器处理部901、运算处理部902而构成。缓冲器处理部901不进行频率的求解,而是根据中断请求IRQ进行对环形缓冲器(ring buffer)的写入处理。将对频率进行运算的部分移至每个运算周期Tcal的运算处理部902。更具体而言,缓冲器处理部901具有时间序列地对脉冲计数寄存器CN的值进行存储的脉冲计数环形缓冲器N□、时间序列地对脉冲计时寄存器CT的值进行存储的脉冲计时环形缓冲器T[]、以及对环形缓冲器的当前位置进行保持的环形缓冲器指针ΡΝΤ。运算处理部902在每个俘获时钟的周期的整数倍的运算周期Tcal (既定的运算周期)起动,基于使用缓冲器处理部901缓冲的数据,计算出频率运算值F。图11是示出本发明的实施方式4涉及的速度检测装置的设计步骤的一例的图。 规格设定步骤601
设定运算周期Teal、最大输入频率Fmax、最小输入频率Fmin、目标精度ACCt。例如,

运算周期Tcal = 20ms
最大输入频率 Fmax = 8000Hz
最小输入频率Fmin = IHz
目标精度 ACCt = 25ppm*20ms = O. 5ppm · S。·计时时钟频率设定步骤602
Ftim 彡 I/ACCt — Ι/Teal 例如,彡 I. 99995MHz,在此设定为 2. 5MHz。·俘获周期设定步骤603
考虑硬件制约、软件制约,以满足下列条件的方式设定俘获周期Tcap 脉冲计数必要位数 Nwidth = Roundup (log (Fmax*Tcap) /log (2),0)
脉冲计时必要位数 Twidth = Roundup (log (Ftim*Tcap) /log (2),O)。当上述必要位数变大时,成为硬件制约,当Tcap变小时,中断频度增加,成为软件制约。考虑平衡而决定。例如,设定为Tcap = 2. 5ms、Nwidth = 5、Twidth = 13。·各种运算常数计算步骤604 求各种常数。该值用于后述的运算部113。脉冲计数屏蔽值O (第一屏蔽值)NMASKO = 2~Nwidth — I 脉冲计数最大值NMAX = Fmax*Tcal
脉冲计数屏蔽值 I (第二屏蔽值)NMASKl = 2~ (Roundup (log (NMAX)/log (2),O)) - I
脉冲计时屏蔽值O TMASKO = 2'Twidth - I 俘获周期指数TCAP = Tcap^Ftim 脉冲计时最大值TMAX = Ftim/Fmin 运算周期指数TCAL = Tcal^Ftim0例如,上述分别成为0xlf、160、0xff、0xlfff、6250、2500000、50000。图12是示出图10的缓冲器处理部的处理步骤的一例的图。缓冲器处理部901根据中断请求IRQ而起动,作为主要的结构,具有数据读入步骤401、溢出处理步骤402、中断请求清除步骤403、计数值编辑步骤404、计时值编辑步骤405、缓冲器更新步骤406、指针更新步骤407以及上次值设定步骤408而构成。·数据读入步骤401
缓冲器处理部901从俘获部110读取CN、CT,复制于局部变量XN、XT。·溢出处理步骤402
缓冲器处理部901实施图2、图3、图4的任意一个而得到溢出标记0VFF。 中断请求清除步骤403
缓冲器处理部901输出中断请求清除请求ICRQ。·计数值编辑步骤404
缓冲器处理部901使用下列公式,求从用于俘获周期Tcap位扩展至用于运算周期Tcal的值XN。XN = (YN + (XN — YN) & NMASKO)& NMASKl
即,缓冲器处理部901由从本次中断时的脉冲计数寄存器XN的值减去上次中断时的脉冲计数寄存器YN的值之后的值和NMASKO的逻辑积,求从上次中断时到本次中断时之间输入的脉冲边缘的数量。进而,缓冲器处理部901由在上次的脉冲计数数据(YN)上相加从上次中断时到本次中断时之间输入的脉冲边缘的数量之后的值和NMASKl的逻辑积求本次的脉冲计数数据(XN)。·计时值编辑步骤405
缓冲器处理部901使用下列的公式,求从最后输入脉冲边缘PE到俘获时钟CK_CAP为止的时间XT。OVFF = O即无溢出时,
XT = XT & TMASKOo
S卩,缓冲器处理部901在脉冲计时部109未发生溢出时,根据脉冲计时寄存器CT的值求脉冲计时数据χτ。除此以外时,
XT = MIN (YT + TCAP, TMAX)。即,缓冲器处理部901在脉冲计时部109发生溢出时,通过在上次的脉冲计时数据(YT)上相加由俘获时钟周期/计时时钟周期得到既定的常数值(TCAP),从而求从最后的脉冲边缘PE起的时间/计时时钟周期即脉冲计时数据(XT)。·缓冲器更新步骤406
缓冲器处理部901求下一个环形缓冲器指针的位置PNT2。通过下列公式,更新环形缓冲器
N[PNT2] = XN
T[PNT2] = XT0·指针更新步骤407
缓冲器处理部901更新环形缓冲器指针PNT。·上次值设定步骤408
缓冲器处理部901使用下列公式设定上次值
YN = XNYT = XT。在此有一个需要注意的点。脉冲计时环形缓冲器τ[]必须使用脉冲计数最大值TMAX初始化。图13是示出图10的运算处理部的处理步骤的一例的图。运算处理部902在每个运算周期Tcal起动,作为主要的构成,具有指针读入步骤501、分子运算步骤502以及求频率运算值F的频率运算步骤503而构成。 指针读入步骤501
运算处理部902只参照环形缓冲器指针PNT —次,在局部变量CO设定本次的指针位置,在局部变量Cl设定从CO追溯TCAL/TCAP个后的指针位置。 分子运算步骤502
运算处理部902使用下列公式求NUM
NUM = MIN ((N[C0] — N[C1] ) & MASKl, NMAX)。S卩,运算处理部902参照环形缓冲器,由从本次的脉冲计数数据(N[C0])减去追溯既定的运算周期(TCAL/TCAP)后的位置的脉冲计数数据(N[C1])之后的值和MASKl的逻辑积,求既定的运算周期期间输入的脉冲边缘的数量NUM。 频率运算步骤503
运算处理部902使用下列公式求F。NUM 为 O 时,
F = MIN (Ftim/T[C0], F)
除此以外时,
F = NUM*Ftim/ (TCAL + T[Cl] — T[CO])。在此,使用图14及图15解说运算部113的处理。图14是图10的运算部的处理内容的说明图,图15是图10的运算部的其他处理内容的说明图。在图14中,事件I是脉冲边缘PE进入一个以上的例子。图中,NUM为12个,此外在记载为(TCAL + T[Cl] — T[C0] )/Ftim的区间脉冲周期为12个周期。因此可以知道,作为求频率的公式的分子,使用NUM的值没有问题。此外,关于求频率运算值F的公式的分母即12个周期的时间,如果看图示为(TCAL + T [Cl] — T [CO] ) /Ftim的区域,从和图示为TCAL/Ftim的时间相比,左侧长了T[Cl]/Ftim,右侧短了 T[C0]/Ftim,可以明确知道使用(TCAL + T[C1] — T[C0])/Ftim 是正确的。因此,作为求频率运算值F的公式,可以知道“F = NUM^Ftim/ (TCAL + T[Cl]—T [CO])”是正确的。接下来,事件2是一个脉冲边缘PE也没有进入的状态。这时,作为信息,虽说脉冲 边缘PE未进入,但并非什么都没有,在当前时间点,从最后的脉冲边缘PE起经过了 T[C0]/Ftim,所以至少可以明确知道频率比Ftim/T[C0]小。从而,运算部113将上次的频率运算值F和Ftim/T[C0]的较小的一方作为新的频率运算值F输出。即使用公式“F = MIN (Ftim/T[C0],F)”。此外,图15的CAL示出本运算部113动作的部分,但是它因为软件的负载波动的关系,每次都会稍微变动,而不刚好是运算周期Teal。但是,它完全不影响运算。这是因为通过在指针读入步骤501只参照一次环形缓冲器指针PNT,而记住正前方的俘获数据的位置,然后通过对指针进行既定数量的追溯,能够恰好参照运算周期Tcal期间的数据。因此,虽然非常罕见,本运算部113根据如图15所示的定时而动作时,在事件I中,不使用图中示为G (间隙(gap))的区间的数据,在事件2中,图中示为W (覆盖(wrap))的区间的数据被使用2次。在此,使用图19以及图20,进行模拟结果的说明。图19是示出专利文献I展示的速度检测装置的模拟结果的一例的图,图20是本发明的实施方式4涉及的速度检测装置的模拟结果的一例的图。在图19中,之所以现有的速度检测装置由于701的动作而频率运算值F在15. 3Hz饱和,是因为是未输入脉冲信号P的期间。此外,现有的速度检测装置,如702的动作所示,从输入频率O的状态只输入I个脉冲的输入信号IN时,识别最低识别频率。在图20中,实施方式4涉及的速度检测装置I中,不管脉冲边缘PE是否进入,由计时时钟CKJlM定期地进行数据取得。将图20的801的动作和图19的701的动作相比,图20的801的动作中看不到如图19的701中出现的饱和。进而,也看不到如在图19的702的动作中出现的识别最低频率的现象。如上述说明,根据实施方式4涉及的速度检测装置1,通过只对软件施加少许负担,从而能够将硬件的规模(脉冲计数部107的位数、脉冲计时部109)保持在进一步小的水平。虽然罕有如专利文献I展示的速度检测装置那样数据未被使用而被丢弃的情况,但称不上频率的精度恶化。实施方式5
接下来,说明为去除噪声的影响,追加了滤波器部105的实施方式5。图16是示出本发明的实施方式5涉及的速度检测装置的结构例的图。以下,对和实施方式I相同的部分附以相同符号并省略其说明,在此只对不同的部分进行叙述。图16的速度检测装置1,作为主要的结构,具有波形整形部101、滤波器时钟发生部102、滤波器部105、边缘检测部106、脉冲计数部107、计时时钟发生部103、脉冲计时部109、俘获时钟发生部104、溢出检测部108、俘获部110、中断请求部111以及运算部113而构成。实施方式5中,作为和实施方式I不同的要素,具有在波形整形部101的后级设置的噪声去除用的滤波器部105和向滤波器部105供给所需的时钟的滤波器时钟发生部102。滤波器部105以根据滤波器时钟CK_FIL对脉冲信号P进行采样,以既定次数的连续一致为条件而使输出变化的方式构成。噪声的频率一般而言高,混入电路时脉冲信 号P高速地变化。因此如果恰当地设定和滤波器时钟CK_FIL连续一致的次数,就能够完全地消除噪声分量。此外,即使不是和输入信号IN重叠的噪声,当波形整形部101的输出波形变得具有振动性时,和噪声同样地含有高频分量,这时也同样地,能够使用本滤波器电路去除。进而,滤波器部105是滤波器,所以虽然会发生少许的响应延迟,但是和俘获周期Tcap相比足够短,完全不会对未图示的后级的系统造成影响。在此,有在设定滤波器时需要注意的点。有时在波形整形部101使用光耦合器进行绝缘。此时,由于光耦合器的导通(ON)时间和截止(OFF)时间的不同,将高频率输入至输入信号IN时,即使输入信号IN的占空比(duty ratio)为50 :50,脉冲信号P的占空比有时也会大幅偏移。考虑该占空比的偏移,由和滤波器时钟CK_FIL连续一致的次数而得到的频段必须设定为比实际使用的频段充分高的频段。例如,设定为在规格上的最大输入频率,脉冲信号P的占空比变为I :99时也能识别的频段也可以。如以上说明,实施方式5涉及的速度检测装置I具备设置于波形整形部101的后级、根据滤波器时钟CK_FIL对脉冲信号P进行采样、以数次的连续一致为条件而使输出变化的滤波器部105,所以在具有实施方式广4的效果之外,即使在波形整形部101的输出波形变得具有振动性的情况下也能够得到高的噪声过滤效果。实施方式6
接下来,说明多通道化的实施方式6。图17是示出本发明的实施方式6涉及的速度检测装置的结构例的图。以下,对和实施方式5相同的部分附以相同符号并省略其说明,在此只对不同的部分进行叙述。图17的速度检测装置1,作为主要的结构,具有波形整形部101、滤波器时钟发生部102、滤波器部105、边缘检测部106、脉冲计数部107、计时时钟发生部103、脉冲计时部109、俘获时钟发生部104、溢出检测部108、俘获部110、中断请求部111以及运算部113而构成。作为和实施方式I不同的要素,实施方式5具有在波形整形部101的后级设置的用于去除噪声的滤波器部105和向滤波器部105供给所需的时钟的滤波器时钟发生部102。图17的速度检测装置I具有多个波形整形部101、滤波器部105、边缘检测部106、脉冲计数部107、脉冲计时部109、溢出检测部108以及俘获部110,进而,具有滤波器时钟发生部102、计时时钟发生部103、俘获时钟发生部104以及中断请求部111而构成。即,图17的速度检测装置I是对多个通道共用滤波器时钟发生部102、计时时钟发生部103、俘获时钟发生部104以及中断请求部111的结构。如上述说明,实施方式6涉及的速度检测装置I因为共用计时时钟发生部103、俘获时钟发生部104、滤波器时钟发生部102和中断请求部111,由于多通道化之后中断请求IRQ发生频度也不会变化,所以能够抑制对软件的额外开销。专利文献I展示的速度检测装置在多通道化时,在每个通道零散地发生中断请求IRQ,所以存在该中断请求IRQ提高中断频度,有时会发生对软件的额外开销的问题,但是实施方式6的速度检测装置I即使在多通道化的情况下中断请求IRQ发生频度也不会变化,能够抑制对软件的额外开销。此外,本发明的实施方式1飞涉及的速度检测装置具有波形整形部101、边缘检测部106、计时时钟发生部103、俘获时钟发生部104而构成,但并不局限于此,在速度检测装置的外部设置波形整形部101、边缘检测部106、计时时钟发生部103、俘获时钟发生部104,使用从它们得到的脉冲边缘PE、俘获时钟CK_CAP、计时时钟CK_TIM亦可。此外,本发明的实施方式1飞涉及的速度检测装置以面向铁路车辆的速度检测装置作为例子进行了说明,但是此外也能够适用于测量频率信号的所有设备。此外,本发明在不脱离其主旨的范围内可以进行各种变形而实施。
产业上的利用可能性
如上所述,本发明涉及的速度检测装置以面向铁路车辆的速度检测装置为首,此外也能够适用于测量频率信号的所有设备,特别地,作为不会发生频率的精度恶化、始终进行数据更新、电路规模较小、而且对软件的额外开销少的发明是有用的。符号说明
I速度检测装置;101波形整形部;102滤波器时钟发生部;103计时时钟发生部;104俘获时钟发生部;105滤波器部;106边缘检测部;107脉冲计数部;108溢出检测部;109脉冲计时部;110俘获部;111中断请求部;113运算部(频率计算部);701,702,801频率运算值的波形;901缓冲器处理部;902运算处理部;ACCt目标精度;CK_CAP俘获时钟;CK_FIL滤波器时钟;CK_HM计时时钟;CN脉冲计数寄存器;CT脉冲计时寄存器;F频率运算值;Fmax最大输入频率;Fmin最小输入频率;Ftim计时时钟频率;ICRQ中断请求清除请求;IN输入信号;IRQ中断请求;LN工作脉冲计数值;LT工作脉冲计时值;N[]脉冲计数环形缓冲器;NMASKO脉冲计数屏蔽值O (第一屏蔽值);NMASK1脉冲计数屏蔽值I (第二屏蔽值);NMAX脉冲计数最大值;NUM脉冲边缘的数量;Nwidth脉冲计数必要位数;OVF溢出寄存器;OVFF溢出标记;P脉冲信号;PE脉冲边缘(脉冲);PNT环形缓冲器指针;T[]脉冲计时环形缓冲器;TCAL运算周期指数;TCAP俘获周期指数(既定的常数);Tcap俘获周期;Tcal运算周期;TMASKO脉冲计时屏蔽值O ;TMAX脉冲计时最大值;Twidth脉冲计时必要位数。
权利要求
1.一种速度检测装置,其特征在于具备 脉冲计数部,对来自外部的输入信号的脉冲数进行计数; 脉冲计时部,通过根据计时时钟而计时、根据脉冲而清除,对从最后的脉冲起的时间进行计时; 溢出检测部,检测所述脉冲计时部的溢出,并保持于溢出寄存器; 俘获部,在每个固定周期取得测量结果的俘获时钟的定时,将来自所述脉冲计数部的输出保持于脉冲计数寄存器,并且将来自所述脉冲计时部的输出保持于脉冲计时寄存器;以及 频率计算部,读取所述脉冲计数寄存器的值、所述脉冲计时寄存器的值、所述溢出寄存器的值,根据既定的运算计算出频率运算值, 所述频率计算部在所述脉冲计时部溢出时,通过在上次中断时的脉冲计时数据上相加由所述俘获时钟的周期/所述计时时钟的周期得到的既定的常数,而求从最后的脉冲起的时间/所述计时时钟即脉冲计时数据,从而计算出所述频率运算值。
2.一种速度检测装置,其特征在于具备 脉冲计数部,对来自外部的输入信号的脉冲数进行计数; 脉冲计时部,通过根据计时时钟而计时、根据脉冲而清除,对从最后的脉冲起的时间进行计时; 溢出检测部,检测所述脉冲计时部的溢出,并保持于溢出寄存器; 俘获部,在每个固定周期取得测量结果的俘获时钟的定时,将来自所述脉冲计数部的输出保持于脉冲计数寄存器,并且将来自所述脉冲计时部的输出保持于脉冲计时寄存器;以及 频率计算部,读取所述脉冲计数寄存器的值、所述脉冲计时寄存器的值、所述溢出寄存器的值,根据既定的运算计算出频率运算值, 所述频率计算部在既定的周期内输入的脉冲为O个时,通过选择假定随后输入脉冲时的频率运算值和上次的频率运算值中低一方的值,推断频率运算值。
3.一种速度检测装置,其特征在于具备 脉冲计数部,对来自外部的输入信号的脉冲数进行计数; 脉冲计时部,通过根据计时时钟而计时、根据脉冲而清除,对从最后的脉冲起的时间进行计时; 溢出检测部,检测所述脉冲计时部的溢出,并保持于溢出寄存器; 俘获部,在每个固定周期取得测量结果的俘获时钟的定时,将来自所述脉冲计数部的输出保持于脉冲计数寄存器,并且将来自所述脉冲计时部的输出保持于脉冲计时寄存器;以及 频率计算部,读取所述脉冲计数寄存器的值、所述脉冲计时寄存器的值、所述溢出寄存器的值,根据既定的运算计算出频率运算值, 所述频率计算部在所述脉冲计时部溢出时,通过在上次中断时的脉冲计时数据上相加由所述俘获时钟的周期/所述计时时钟的周期得到的既定的常数,而求从最后的脉冲起的时间/所述计时时钟即脉冲计时数据,从而计算出所述频率运算值, 在既定的周期内输入的脉冲为O个时,通过选择假定随后输入脉冲时的频率运算值和上次的频率运算值中低一方的值,推断频率运算值。
4.如权利要求广3的任意一项所述的速度检测装置,其特征在于 所述溢出检测部, 以检测出所述脉冲计时部超过既定的最大值而将所述溢出寄存器置位,并保持到由所述频率计算部清除为止的方式构成, 所述频率计算部, 在上次中断时的脉冲计数寄存器的值和本次中断时的脉冲计数寄存器的值相同时,判断为未发生溢出,并且清除所述溢出寄存器, 在上次中断时的脉冲计数寄存器的值和本次中断时的脉冲计数寄存器的值不同时,通过所述溢出寄存器的值判断是否发生溢出。
5.如权利要求广3的任意一项所述的速度检测装置,其特征在于 所述溢出检测部, 以检测出脉冲计时部超过既定的最大值而将所述溢出寄存器置位,并保持到由所述频率计算部清除为止的方式构成, 所述频率计算部, 在所述溢出寄存器被置位时,在既定的存储器中设置示出溢出的发生的溢出标记,并且清除所述溢出寄存器, 在上次中断时的脉冲计数寄存器的值和本次中断时的脉冲计数寄存器的值不同时,判断为未发生溢出,清除所述溢出标记。
6.如权利要求广3的任意一项所述的速度检测装置,其特征在于 所述溢出检测部, 检测出脉冲计时部超过既定的最大值而将溢出位置位,通过脉冲清除, 配合所述俘获时钟,将所述溢出位保持于所述溢出寄存器。
7.如权利要求广3的任意一项所述的速度检测装置,其特征在于 所述频率计算部, 具备作为扩展脉冲计时寄存器的位数并保持的变量的脉冲计时数据, 基于从本次中断时的脉冲计数寄存器的值减去上次中断时的脉冲计数寄存器的值之后的值,求从上次中断时到本次中断时之间输入的脉冲的数量, 在所述脉冲计时部中未发生溢出时,从所述脉冲计时寄存器的值,求脉冲计时数据,在所述脉冲计时部中发生溢出时,通过在上次的脉冲计时数据上相加由所述俘获时钟的周期/所述计时时钟的周期得到的既定的常数,从而求得从最后的脉冲起的时间/所述计时时钟即脉冲计时数据, 通过下列运算式求频率运算值 NUM为O以外时,F = NUM*Ftim+ (TCAP + YT — XT) NUM为O时,F=MIN (Ftim+XT, F) 在此, 右边出现的F是上次的频率运算值,左边出现的F是本次的频率运算值, NUM是从上次中断时到本次中断时之间输入的脉冲的数量, Ftim是计时时钟频率, TCAP是所述俘获时钟的周期除以计时时钟的周期后的既定的常数, XT是本次中断时的从最后的脉冲起的时间/计时时钟的周期即脉冲计时数据, YT是上次中断时的从最后的脉冲起的时间/计时时钟的周期即上次的脉冲计时数据。
8.如权利要求广3的任意一项所述的速度检测装置,其特征在于, 所述频率计算部,具有 缓冲器处理部,对所述脉冲计数寄存器的值、所述脉冲计时寄存器的值、所述溢出寄存器的值进行读取并缓冲;和 运算处理部,在每个为所述俘获时钟的周期的整数倍的运算周期起动,基于在所述缓冲器处理部缓冲的数据,计算出运算频率, 所述缓冲器处理部,具备 环形缓冲器,时间序列地存储所述脉冲计数寄存器的值和所述脉冲计时寄存器的值; 环形缓冲器指针,保持所述环形缓冲器的当前的位置, 包含 由从本次中断时的脉冲计数寄存器的值减去上次中断时的脉冲计数寄存器的值之后的值和第一屏蔽值的逻辑积,求从上次中断时到本次中断时之间输入的脉冲的数量, 通过在上次的脉冲计数数据上相加从上次中断时到本次中断时之间输入的脉冲的数量之后的值和第二屏蔽值的逻辑积,求本次的脉冲计数数据, 在此,屏蔽值以2的乘方一 I的形式表示,第二屏蔽值是比第一屏蔽值大的值, 在所述脉冲计时部未发生溢出时,通过所述脉冲计时寄存器的值求脉冲计时数据, 在所述脉冲计时部发生溢出时,通过在上次的脉冲计时数据上相加由所述俘获时钟的周期/所述计时时钟的周期得到的既定的常数,求从最后的脉冲起的时间/所述计时时钟即脉冲计时数据, 在环形缓冲器的当前位置的下一个位置保存脉冲计数数据及脉冲计时数据之后更新指针的处理, 所述运算处理部, 参照指针的值,求本次的指针位置、和从本次的指针位置向过去追溯既定的运算周期之后的指针位置, 参照环形缓冲器,由从本次的脉冲计数数据减去既定的运算周期的过去的脉冲计数数据之后的值和第二屏蔽值的逻辑积,求既定的运算周期期间输入的脉冲的数量, 通过下列运算式求频率运算值 NUM为O以外时,F = NUM*Ftim+ (TCAL + T [Cl] — T [CO]) NUM为O时,F = MIN (Ftim^-T[CO], F) 在此, 右边出现的F是上次的频率运算值,左边出现的F是本次的频率运算值, NUM是在既定的运算周期期间输入的脉冲的数量, Ftim是计时时钟频率, TCAL是既定的运算周期除以计时时钟周期后的既定的常数, T[CO]是本次的脉冲计时数据, T[C1]是既定的运算周期的过去的脉冲计时数据。
9.如权利要求广3的任意一项所述的速度检测装置,其特征在于,具备 滤波器部,设置于所述波形整形部的后级;和 滤波器时钟发生部,向所述滤波器部供给所需的时钟, 所述滤波器部,根据滤波器时钟对脉冲信号进行采样,以既定次数的连续一致为条件,使输出变化。
10.如权利要求9所述的速度检测装置,其特征在于 具备多个所述边缘检测部、所述脉冲计数部、所述溢出检测部、所述脉冲计时部、所述俘获部、以及所述滤波器部, 共用所述滤波器时钟发生部。
全文摘要
具备脉冲计数部(107);脉冲计时部(109);保持于溢出寄存器(OVF)的溢出检测部(108);将脉冲计数部(107)的输出保持于脉冲计数寄存器(CN),将脉冲计时部(109)的输出保持于脉冲计时寄存器(CT)的俘获部(110);读取脉冲计数寄存器(CN)和脉冲计时寄存器(CT)以及溢出寄存器(OVF)、计算出频率运算值(F)的运算部(113)(频率计算部),运算部(113)在脉冲计时部(109)溢出时,在上次中断时的脉冲计时数据(YT)上相加由俘获时钟(CK_CAP)的周期/计时时钟(CK_TIM)的周期得到的既定的常数(TCAP),以求由从最后的脉冲(PE)起的时间/计时时钟(CK_TIM)的周期得到的脉冲计时数据(XT)。
文档编号G01P3/489GK102792167SQ20108006545
公开日2012年11月21日 申请日期2010年3月16日 优先权日2010年3月16日
发明者吉川广 申请人:三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1