CN106681190B - 一种滤波方法及装置 - Google Patents
一种滤波方法及装置 Download PDFInfo
- Publication number
- CN106681190B CN106681190B CN201611250155.6A CN201611250155A CN106681190B CN 106681190 B CN106681190 B CN 106681190B CN 201611250155 A CN201611250155 A CN 201611250155A CN 106681190 B CN106681190 B CN 106681190B
- Authority
- CN
- China
- Prior art keywords
- timing
- time
- square wave
- level value
- moment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001914 filtration Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000007704 transition Effects 0.000 claims description 43
- 230000009191 jumping Effects 0.000 claims description 11
- 238000005259 measurement Methods 0.000 claims description 6
- 230000000630 rising effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000009825 accumulation Methods 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
本发明公开了一种滤波方法及装置,应用于主控制器,所述方法包括:判断与所述主控制器并列运行的计时单元是否计时开始;若是,判断与所述主控制器并列运行的计时单元是否计时结束;若是,对方波信号进行滤波。本申请的方案,执行主程序的主控制器与实现计时的计时单元并列运行,即计时单元的计时过程并不占用主程序的执行时间,因此,采用本申请的方案解决了由于计时过程占用主程序的执行时间导致的不能对方波信号有效滤波的问题。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种滤波方法及装置。
背景技术
市面上绝大多数的乘用车为提高舒适性,广泛采用直流电机实现对汽车闭合部件的电动控制,如天窗、门窗等。为了实现直流电机的防夹功能,在汽车闭合部件的闭合过程中,需要获取汽车闭合部件的位置信息。所谓防夹功能指的是,在汽车闭合部件闭合的过程中,在规定范围内如果遇到物体或人的身体阻碍时,直流电机必须能够检测出该阻碍并反转运行。
目前,通过采集直流电机电源母线上的纹波电流,获得汽车闭合部件的位置信息。具体地,通过对纹波电流进行高通滤波、放大、再经过比较器得到方波信号,通过单片机的中断口对方波信号的下降沿进行计数,并根据计数值得到位置信息。然而,由于高通滤波只能过滤掉纹波电流中的低频直流分量,并不能过滤掉直流电机在启动、稳定运行、堵转及切停时产生的高频毛刺,所以得到的方波信号仍然会存在噪声,这将使得依据方波信号得到的下降沿的计数值存在误差,从而使根据计数值得到的位置信息也不准确。
针对上述问题,现有技术中提出了一种基于软件延时的滤波方案,其原理为,当检测到方波信号时,控制汽车闭合部件闭合的主程序接收中断指令,执行启动计数器进行累加计时的中断程序,然后通过判断计数器计时时间内是否接收到脉冲,若是,则将计时时间内的方波信号认为噪声信号,不被计数,以此过滤掉噪声。由上可见,现有技术的方案中,中断程序在执行时,主程序需要暂停,也就是说,中断程序的执行会占用主程序的执行时间。对于低成本的单片机系统,其运算速度有限,通常主程序执行时间在2ms以上,而方波信号及其噪声脉宽在500μs-10μs之间,因此,中断程序的计时过程会严重占用主程序时间,造成主程序执行缓慢,从而导致依靠主程序无法实现有效延时滤波。
发明内容
为解决上述技术问题,本发明实施例提供了一种滤波方法及装置,以解决由于累加计时的中断程序占用主程序的执行时间,导致的对方波信号延时过滤效率低的问题,技术方案如下:
一种滤波方法,应用于主控制器,包括:
判断与所述主控制器并列运行的计时单元是否计时开始;
若是,判断与所述主控制器并列运行的计时单元是否计时结束;
若是,对方波信号进行滤波。
优选地,
所述判断与所述主控制器并列运行的计时单元是否计时开始,包括:
判断是否检测到所述方波信号的第一跳变沿;
若是,执行第一中断服务函数,所述第一中断服务函数用于触发所述计时单元开始计时;
所述判断与所述主控制器并列运行的计时单元是否计时结束,包括:
判断是否检测到所述方波信号的第二跳变沿,所述第二跳变沿为在所述第一跳变沿之后发生的、与所述第一跳变沿最接近的跳变沿;
若是,执行第二中断服务函数,所述第二中断服务函数用于触发所述计时单元结束计时,并执行所述对方波信号进行滤波的步骤。
优选地,所述判断与所述主控制器并列运行的计时单元是否计时开始,包括:
判断所述计时单元是否接收到计时开始的指令;
若是,执行判断与所述主控制器并列运行的计时单元是否计时结束的步骤。
优选地,所述判断与所述主控制器并列运行的计时单元是否计时结束,包括:
判断是否接收到所述计时单元发送的触发指令,所述触发指令为所述计时单元测量预设时间后、所发送的用于触发所述主控制器执行第三中断服务函数的指令,所述第三中断服务函数用于对所述方波信号进行滤波,所述计时单元周期执行对所述预设时间的测量,所述预设时间至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间。
优选地,所述对方波信号进行滤波,包括:
获取所述计时单元的计时时间;
判断所述计时时间是否不小于预设滤波时间常数,所述预设滤波时间常数至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间;
若是,将所述方波信号在上一时刻的电平值作为滤波后的信号在当前时刻的电平值,所述上一时刻为所述第二跳变沿发生之前且所述第一跳变沿发生之后的任一时刻,所述当前时刻为所述第二跳变沿发生的时刻;
若否,则将所述滤波后的信号在所述第一跳变沿发生时刻的电平值作为所述滤波后的信号在所述当前时刻的电平值。
优选地,所述对方波信号进行滤波,包括:
将所述方波信号在当前时刻的电平值,设置为一次滤波信号在所述当前时刻的电平值,所述当前时刻为所述计时单元本次计时结束的时刻;
判断所述一次滤波信号在所述当前时刻的电平值与在上一时刻的电平值是否相等,所述上一时刻为本次计时结束之前、与本次计时结束最接近的计时结束时刻;
若是,则将所述一次滤波信号在所述当前时刻的电平值,作为滤波后的信号在所述当前时刻的电平值;
若否,则将所述滤波后的信号在所述上一时刻的电平值,作为所述滤波后的信号在所述当前时刻的电平值。
优选地,还包括:
判断是否检测到方波信号;
若否,执行第四中断服务函数,所述第四中断服务函数用于触发所述计时单元停止计时。
优选地,所述计时单元采用计数器累加计时或采用计时器实现。
一种滤波装置,应用于主控制器,包括:
第一判断单元,用于判断与所述主控制器并列运行的计时单元是否计时开始;
第二判断单元,用于当所述第一判断单元的判断结果为是时,判断与所述主控制器并列运行的计时单元是否计时结束;
第一执行单元,用于当所述第二判断单元确定与所述主控制器并列运行的计时单元计时结束时,对方波信号进行滤波。
优选地,所述第二判断单元,包括:
第二判断子单元,用于判断是否接收到所述计时单元发送的触发指令,所述触发指令为所述计时单元测量预设时间后、所发送的用于触发所述主控制器执行第三中断服务函数的指令,所述第三中断服务函数用于对所述方波信号进行滤波,所述计时单元周期执行对所述预设时间的测量,所述预设时间至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间。
本实施例所提供的技术方案,执行主程序的主控制器与实现计时的计时单元并列运行,即计时单元的计时过程并不占用主程序的执行时间,因此,采用本申请的方案解决了由于计时过程占用主程序的执行时间导致的不能对方波信号有效滤波的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种滤波方法的一种流程示意图;
图2为本发明实施例所提供的一种滤波方法的另一种流程示意图;
图3为本发明实施例所提供的一种滤波方法的一种原理图;
图4为本发明实施例所提供的一种滤波方法的另一种流程示意图;
图5为本发明实施例所提供的一种滤波方法的另一种原理图;
图6为本发明实施例所提供的一种滤波装置的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本申请实施例提供的滤波方法的一种实现流程图,该方法应用于主控制器,所述方法包括:
步骤S101、判断与所述主控制器并列运行的计时单元是否计时开始,若是,执行步骤S102;
本实施例中的计时单元,既可以通过计数器累加计时这一软件方式实现计时,也可以通过计时器这一硬件实现实时,当然,现有技术中任何其它的能够实现计时的方案也适用于本发明的方案。
本实施例中,主控制器用于实现控制汽车闭合部件闭合的主程序,而计时单元的计时过程与主程序并列执行。
本实施例中,计时单元计时开始,可以与主控制器有关,如通过主控制器向计时单元发送计时开始的指令实现,也可以与主控制器无关,如通过对主控制器和计时单元同时上电,实现主控制器与计时单元的并列运行。
步骤S102、判断与所述主控制器并列运行的计时单元是否计时结束,若是,执行步骤S103;
类似于计时单元计时开始的过程,计时单元计时结束,可以与主控制器有关,如通过主控制器执行中断函数的方式,触发计时单元计时结束,也可以与主控制器无关,如预先给计时单元设定计时时间,当计时单元测量该计时时间后,向主控制器发送触发指令,以通知主控制器计时单元计时结束。
步骤S103、对方波信号进行滤波。
本实施例所提供的技术方案,执行主程序的主控制器与实现计时的计时单元并列运行,即计时单元的计时过程并不占用主程序的执行时间,因此,采用本申请的方案解决了由于计时过程占用主程序的执行时间导致的不能对方波信号有效滤波的问题。
请参阅图2,图2为本申请实施例提供的滤波方法的另一种实现流程图,该方法应用于主控制器,所述方法包括:
步骤S201、判断是否检测到方波信号的第一跳变沿,若是,执行步骤S202;
步骤S202、执行第一中断服务函数;
所述第一中断服务函数用于触发与主控制器并列运行的计时单元开始计时。
本实施例中的计时单元,既可以通过计数器累加计时这一软件方式实现计时,也可以通过计时器这一硬件实现实时,当然,现有技术中任何其它的能够实现计时的方案也适用于本发明的方案。
步骤S203、判断是否检测到所述方波信号的第二跳变沿,若是,执行步骤S204;
所述第二跳变沿为在所述第一跳变沿之后发生的、与所述第一跳变沿最接近的跳变沿。
方波信号的跳变沿包括上升沿和下降沿,因此,第一跳变沿、第二跳变沿既可以是上升沿,也可以是下降沿,但,第一跳变沿、第二跳变沿不能同时为上升沿或下降沿,即当第一跳变沿为上升沿时,第二跳变沿为下降沿,当第一跳变沿为下降沿时,第二跳变沿为上升沿。
步骤S204、发送用于触发所述计时单元计时结束的指令;
步骤S205、获取所述计时单元的计时时间;
当确定计时单元计时结束后,获取计时单元的计时时间,并根据该计时时间对方波信号进行过滤。
步骤S206、判断所述计时时间是否不小于预设滤波时间常数,若是,执行步骤S207,否则,执行步骤S208;
所述预设滤波时间常数至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间,优选地,预设滤波时间常数取有效方波信号的半个周期。
当预设滤波时间常数取有效方波信号的周期的一半时,判断计时时间是否等于预设滤波时间常数;当预设滤波时间常数小于有效方波信号的周期的一半,且大于最长噪声时间时,判断计时时间是否大于预设滤波时间常数。
当计时时间满足预设滤波时间常数的判断规则时,说明计时时间内的方波信号为有效信号,否则,说明计时时间内的方波信号为噪声信号。
步骤S207、将所述方波信号在上一时刻的电平值作为滤波后的信号在当前时刻的电平值;
所述上一时刻为所述第二跳变沿发生之前且所述第一跳变沿发生之后的任一时刻,所述当前时刻为所述第二跳变沿发生的时刻。
当计时时间内的方波信号为有效信号时,将方波信号在第二跳变沿发生之前的电平值作为滤波后的信号在当前时刻的电平值,具体地,当第二跳变沿为从高电平跳变为低电平时,滤波后的信号在当前时刻的电平值为高电平,当第二跳变沿为从低电平跳变为高电平时,滤波后的信号在当前时刻的电平值为低电平。
步骤S208、将所述滤波后的信号在所述第一跳变沿发生时刻的电平值作为所述滤波后的信号在所述当前时刻的电平值。
当计时时间内的方波信号为噪声信号时,滤波后的信号在当前时刻的电平值保持在跳变沿发生时刻的电平值,以此将噪声信号滤除。
本实施例中,步骤S204-S208均属于对第二中断服务函数执行的过程。
需要说明的是,第二跳变沿用于触发对从第一跳变沿到该第二跳变沿之间方波信号的计时的结束,但同时,该第二跳变沿也作为触发该方波信号从第二跳变沿到沿时间轴上与该第二跳变沿最近的跳变沿之间的计时的开始。例如,第一跳变沿在t1时刻发生,第二跳变沿在t2时刻发生,沿时间轴与第二跳变沿最近的跳变沿在t3时刻发生,按照本实例的方案,对于t1时刻到t2时刻的方波信号,t1时刻计时开始,t2时刻计时结束,但同时,对于t2时刻到t3时刻的方波信号,t2时刻的第二跳变沿也用于触发计时开始。
以下以图3为例,说明本实施例中对计时时间内的方波信号进行滤波的过程:
图3中预设滤波时间常数为有效方波信号周期的一半。
t1时刻,检测到方波信号的上升沿,执行第一中断服务函数,第一中断服务函数用于触发计时单元开始计时,t2时刻,检测到方波信号的下降沿,执行第二中断服务函数,第二中断服务函数用于触发计时单元结束计时,之后,获取从t1到t2计时单元的计时时间,判断计时时间是否等于预设滤波时间常数,经图3可以看出,计时时间等于预设滤波时间常数,因此,将滤波后的信号在t2时刻的电平值取为高电平。
对于t4-t5之间的方波信号,可以发现,t4-t5的计时时间小于预设滤波时间常数,因此,将滤波后的信号在t5时刻的电平值维持在t4时刻的电平值,即仍取为高电平。
需要说明的是,滤波后的信号在两个跳变沿发生时刻之间的电平,均保持时间轴上较小的发生时刻时的电平。以t1-t2举例说明,t1时,滤波后的信号为低电平,所以t1-t2这个时间区间内,滤波后的信号保持低电平,直到t2时刻,才由低电平变为高电平。
本实施例所提供的技术方案,当检测到方波信号的第一跳变沿时,跳转执行第一中断服务函数,以触发计时开始,触发计时开始的动作结束后,跳转回主程序的执行,即,判断是否检测到方波信号的第二跳变沿,也就是说,第一中断服务函数仅用于对计时触发,触发结束后跳回主程序运行,从而使主程序与计时过程并列执行。由于计时过程在滤波中占用绝大部分时间,而滤波过程所占用时间几乎可以忽略不计,因此,本申请的方案在执行时不占用主程序时间,从而实现了对方波信号的有效滤波。
请参阅图4,图4为本申请实施例提供的滤波方法的另一种实现流程图,该方法应用于主控制器,所述方法包括:
步骤S401、判断与所述主控制器并列运行的计时单元是否计时开始,若是,执行步骤S402;
本实施例中,计时单元既可以通过计数器累加计时这一软件方式实现计时,也可以通过计时器这一硬件实现实时,当然,现有技术中任何其它的能够实现计时的方案也适用于本实施例的方案。
实际应用中,该步骤可以通过判断计时单元是否接收到计时开始的指令实现。
步骤S402、判断是否接收到所述计时单元发送的触发指令,若是,执行步骤S403;
所述触发指令为所述计时单元测量预设时间后、所发送的用于触发所述主控制器执行第三中断服务函数的指令,所述第三中断服务函数用于对所述方波信号进行滤波,所述计时单元周期执行对所述预设时间的测量,所述预设时间至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间。
本实施例中,预先设置计时单元的计时时间(即预设时间),当预设时间到后,计时单元向主控制器发送触发指令,即本实施例中,计时单元计时结束的时刻不受主程序控制,而是由计时单元自身根据预先设置的预设时间所确定。
为了实现对方波信号的滤波,计时单元所测量的预设时间至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间,优选地,预设时间可以取有效方波信号周期的一半。
步骤S403、将所述方波信号在当前时刻的电平值,设置为一次滤波信号在所述当前时刻的电平值,所述当前时刻为所述计时单元本次计时结束的时刻;
本实施例中,当接收到触发指令后,对方波信号进行了两次滤波,第一次滤波后的信号在当前时刻的电平值,为方波信号在当前时刻的电平值,其中,当前时刻为所述计时单元本次计时结束的时刻。
步骤S404、判断所述一次滤波信号在所述当前时刻的电平值与在上一时刻的电平值是否相等,若是,执行步骤S405,否则,执行步骤S406;
所述上一时刻为本次计时结束之前、与本次计时结束最接近的计时结束时刻。
步骤S405、将所述一次滤波信号在所述当前时刻的电平值,作为滤波后的信号在所述当前时刻的电平值;
步骤S406、将所述滤波后的信号在所述上一时刻的电平值,作为所述滤波后的信号在所述当前时刻的电平值。
优选地,本实施例在对方波信号过滤时,一直检测输入信号是否为方波信号,当检测不到方波信号时,执行第四中断服务函数,所述第四中断服务函数用于触发所述计时单元停止计时。
以下以图5为例,说明本实施例中对方波信号进行滤波的过程:
其中,图5中计时单元的时刻表示每次计时结束的时刻,且预设时间为有效方波信号周期的一半。
t2时刻,计时单元计时结束,向主程序发送触发指令,执行对方波信号的滤波,具体地,由于t2时刻时,方波信号为高电平,所以此时,一次滤波信号也为高电平,由于t1时刻一次滤波信号为低电平,即一次滤波信号在t1时刻与在t2时刻的电平不相等,所以,滤波后的信号在t2时刻的电平值保持其在t1时刻的电平值,即仍为低电平。
t3时刻,方波信号为高电平,所以,一次滤波后的信号也为高电平,由于t2时刻一次滤波信号为高电平,即一次滤波信号在t2时刻与在t3时刻的电平相等,所以,滤波后的信号在t3时刻的电平值与一次滤波信号在t3时刻的电平值相同,即为高电平。
需要说明的是,无论是一次滤波信号、记录一次滤波在上一时刻的信号,还是滤波后的信号,在两个计时结束时刻之间的电平,均保持时间轴上较小的结束时刻时的电平。以t2-t3举例说明,t2时,一次滤波信号为高电平,所以t2-t3这个时间区间内,一次滤波信号保持高电平,同理,t2时,滤波后的信号为低电平,所以,t2-t3这个时间区间内,滤波后的信号保持低电平。
本发明实施例所提供的技术方案,执行主程序的主控制器与实现计时的计时单元并列运行,即计时单元的计时过程并不占用主程序的执行时间,因此,采用本申请的方案解决了由于计时过程占用主程序的执行时间导致的不能对方波信号有效滤波的问题。
请参阅图6,图6为本申请实施例提供的滤波装置的一种结构示意图,该装置结构示意图中的各单元的工作过程参照图1对应的实施例中方法的执行过程,该装置应用于主控制器,该装置包括:
第一判断单元610,用于判断与所述主控制器并列运行的计时单元是否计时开始;
第二判断单元620,用于当所述第一判断单元610的判断结果为是时,判断与所述主控制器并列运行的计时单元是否计时结束;
第一执行单元630,用于当所述第二判断单元620确定与所述主控制器并列运行的计时单元计时结束时,对方波信号进行滤波。
优选地,所述第二判断单元,包括:
第二判断子单元,用于判断是否接收到所述计时单元发送的触发指令,所述触发指令为所述计时单元测量预设时间后、所发送的用于触发所述主控制器执行所述第三中断服务函数的指令,所述第三中断服务函数用于对所述方波信号进行滤波,所述计时单元周期执行对所述预设时间的测量,所述预设时间至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间。
本实施例所提供的技术方案,执行主程序的主控制器与实现计时的计时单元并列运行,即计时单元的计时过程并不占用主程序的执行时间,因此,采用本申请的方案解决了由于计时过程占用主程序的执行时间导致的不能对方波信号有效滤波的问题。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种滤波方法,其特征在于,应用于主控制器,包括:
判断与所述主控制器并列运行的计时单元是否计时开始;其中,所述主控制器为单片机;
若是,判断与所述主控制器并列运行的计时单元是否计时结束;
若是,对方波信号进行滤波;
所述判断与所述主控制器并列运行的计时单元是否计时结束,包括:
判断是否接收到所述计时单元发送的触发指令,所述触发指令为所述计时单元测量预设时间后、所发送的用于触发所述主控制器执行第三中断服务函数的指令,所述第三中断服务函数用于对所述方波信号进行滤波,所述计时单元周期执行对所述预设时间的测量,所述预设时间至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间;
其中,所述对方波信号进行滤波,包括:
将所述方波信号在当前时刻的电平值,设置为一次滤波信号在所述当前时刻的电平值,所述当前时刻为所述计时单元本次计时结束的时刻;
判断所述一次滤波信号在所述当前时刻的电平值与在上一时刻的电平值是否相等,所述上一时刻为本次计时结束之前、与本次计时结束最接近的计时结束时刻;
若是,则将所述一次滤波信号在所述当前时刻的电平值,作为滤波后的信号在所述当前时刻的电平值;
若否,则将所述滤波后的信号在所述上一时刻的电平值,作为所述滤波后的信号在所述当前时刻的电平值。
2.根据权利要求1所述的方法,其特征在于,
所述判断与所述主控制器并列运行的计时单元是否计时开始,包括:
判断是否检测到所述方波信号的第一跳变沿;
若是,执行第一中断服务函数,所述第一中断服务函数用于触发所述计时单元开始计时;
所述判断与所述主控制器并列运行的计时单元是否计时结束,包括:
判断是否检测到所述方波信号的第二跳变沿,所述第二跳变沿为在所述第一跳变沿之后发生的、与所述第一跳变沿最接近的跳变沿;
若是,执行第二中断服务函数,所述第二中断服务函数用于触发所述计时单元结束计时,并执行所述对方波信号进行滤波的步骤。
3.根据权利要求1所述的方法,其特征在于,所述判断与所述主控制器并列运行的计时单元是否计时开始,包括:
判断所述计时单元是否接收到计时开始的指令;
若是,执行判断与所述主控制器并列运行的计时单元是否计时结束的步骤。
4.根据权利要求2所述的方法,其特征在于,所述对方波信号进行滤波,包括:
获取所述计时单元的计时时间;
判断所述计时时间是否不小于预设滤波时间常数,所述预设滤波时间常数至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间;
若是,将所述方波信号在上一时刻的电平值作为滤波后的信号在当前时刻的电平值,所述上一时刻为所述第二跳变沿发生之前且所述第一跳变沿发生之后的任一时刻,所述当前时刻为所述第二跳变沿发生的时刻;
若否,则将所述滤波后的信号在所述第一跳变沿发生时刻的电平值作为所述滤波后的信号在所述当前时刻的电平值。
5.根据权利要求1所述的方法,其特征在于,还包括:
判断是否检测到方波信号;
若否,执行第四中断服务函数,所述第四中断服务函数用于触发所述计时单元停止计时。
6.根据权利要求1所述的方法,其特征在于,所述计时单元采用计数器累加计时或采用计时器实现。
7.一种滤波装置,其特征在于,应用于主控制器,包括:
第一判断单元,用于判断与所述主控制器并列运行的计时单元是否计时开始;其中,所述主控制器为单片机;
第二判断单元,用于当所述第一判断单元的判断结果为是时,判断与所述主控制器并列运行的计时单元是否计时结束;
第一执行单元,用于当所述第二判断单元确定与所述主控制器并列运行的计时单元计时结束时,对方波信号进行滤波;
所述第二判断单元,包括:
第二判断子单元,用于判断是否接收到所述计时单元发送的触发指令,所述触发指令为所述计时单元测量预设时间后、所发送的用于触发所述主控制器执行第三中断服务函数的指令,所述第三中断服务函数用于对所述方波信号进行滤波,所述计时单元周期执行对所述预设时间的测量,所述预设时间至少大于最长噪声时间,所述最长噪声时间为从所述方波信号中监测到的存在时间最长的噪声的时间;
其中,所述第一执行单元对方波信号进行滤波,包括:
将所述方波信号在当前时刻的电平值,设置为一次滤波信号在所述当前时刻的电平值,所述当前时刻为所述计时单元本次计时结束的时刻;
判断所述一次滤波信号在所述当前时刻的电平值与在上一时刻的电平值是否相等,所述上一时刻为本次计时结束之前、与本次计时结束最接近的计时结束时刻;
若是,则将所述一次滤波信号在所述当前时刻的电平值,作为滤波后的信号在所述当前时刻的电平值;
若否,则将所述滤波后的信号在所述上一时刻的电平值,作为所述滤波后的信号在所述当前时刻的电平值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611250155.6A CN106681190B (zh) | 2016-12-29 | 2016-12-29 | 一种滤波方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611250155.6A CN106681190B (zh) | 2016-12-29 | 2016-12-29 | 一种滤波方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106681190A CN106681190A (zh) | 2017-05-17 |
CN106681190B true CN106681190B (zh) | 2020-04-03 |
Family
ID=58873122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611250155.6A Active CN106681190B (zh) | 2016-12-29 | 2016-12-29 | 一种滤波方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106681190B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107946879B (zh) * | 2017-12-30 | 2019-08-09 | 深圳市创鑫激光股份有限公司 | 频率采集滤波方法、装置、存储介质以及激光器 |
CN110457005B (zh) * | 2019-08-16 | 2023-06-20 | 歌尔股份有限公司 | 一种设备信号过滤方法、装置、系统和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4843580A (en) * | 1987-06-24 | 1989-06-27 | Delco Electronics Corporation | Noise immune crankshaft pulse position developing apparatus |
US4962470A (en) * | 1988-08-01 | 1990-10-09 | Delco Electronics Corporation | Crankshaft pulse position developing apparatus having a synchronous digital filter |
US5812429A (en) * | 1994-06-23 | 1998-09-22 | Delco Electronics Corp. | Adaptive digital filter for automotive applications |
CN104408835A (zh) * | 2014-10-21 | 2015-03-11 | 深圳市易联技术有限公司 | 一种应用于pos终端有线音频通信中的抗干扰装置 |
CN104569476A (zh) * | 2013-10-22 | 2015-04-29 | 深圳市伊爱高新技术开发有限公司 | 一种非接触式发动机转速检测电路 |
CN105927090A (zh) * | 2016-06-30 | 2016-09-07 | 北京经纬恒润科技有限公司 | 门窗玻璃的位置检测方法、装置、门窗控制系统和汽车 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101782590B (zh) * | 2009-11-27 | 2013-06-05 | 艾默生网络能源有限公司 | 一种电力电子产品的风机故障检测方法及系统 |
CN205153820U (zh) * | 2015-09-14 | 2016-04-13 | 重庆海德世拉索系统(集团)有限公司 | 汽车车窗的防夹系统 |
-
2016
- 2016-12-29 CN CN201611250155.6A patent/CN106681190B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4843580A (en) * | 1987-06-24 | 1989-06-27 | Delco Electronics Corporation | Noise immune crankshaft pulse position developing apparatus |
US4962470A (en) * | 1988-08-01 | 1990-10-09 | Delco Electronics Corporation | Crankshaft pulse position developing apparatus having a synchronous digital filter |
US5812429A (en) * | 1994-06-23 | 1998-09-22 | Delco Electronics Corp. | Adaptive digital filter for automotive applications |
CN104569476A (zh) * | 2013-10-22 | 2015-04-29 | 深圳市伊爱高新技术开发有限公司 | 一种非接触式发动机转速检测电路 |
CN104408835A (zh) * | 2014-10-21 | 2015-03-11 | 深圳市易联技术有限公司 | 一种应用于pos终端有线音频通信中的抗干扰装置 |
CN105927090A (zh) * | 2016-06-30 | 2016-09-07 | 北京经纬恒润科技有限公司 | 门窗玻璃的位置检测方法、装置、门窗控制系统和汽车 |
Non-Patent Citations (2)
Title |
---|
基于CPLD的数字滤波抗干扰电路设计;余江等;《电子元器件应用》;20070331;45-48 * |
智能化高精度脉宽数字滤波电路的设计;张琼等;《自动化仪表》;20060630;53-54、58 * |
Also Published As
Publication number | Publication date |
---|---|
CN106681190A (zh) | 2017-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106681190B (zh) | 一种滤波方法及装置 | |
JP5283752B2 (ja) | モータ駆動装置 | |
CN108132396B (zh) | 一种运动位置的确定方法及装置 | |
US8169178B2 (en) | Detection of the angular position of the rotor of a brush motor without using sensors | |
EP2912773B1 (en) | Pulse frequency measurement device and method and control system | |
WO2011037175A1 (ja) | 電力供給制御装置 | |
WO2017219730A1 (zh) | 一种直流电流中电弧的检测电路及微处理器 | |
EP2955045B1 (en) | Automotive electrically-actuated device end-of-travel detection | |
CN104155502A (zh) | 一种电压波动检测方法及系统 | |
CN111742479A (zh) | 升压功率因数校正转换 | |
JP2018081034A5 (zh) | ||
CN113933601B (zh) | 脉宽调制信号采集方法、装置、计算机设备及存储介质 | |
WO2019062085A1 (zh) | 一种车载充电机检测cp信号的抗干扰处理方法 | |
US8943303B2 (en) | Monitoring circuit with a window watchdog | |
CN108549480B (zh) | 一种基于多通道数据的触发判断方法及装置 | |
CN108894640B (zh) | 位置检测抗干扰算法 | |
US11066029B2 (en) | Method for activating at least one secondary function of an occupant protection system of a vehicle | |
US20080282248A1 (en) | Electronic computing device capable of specifying execution time of task, and program therefor | |
CN112511063B (zh) | 一种车辆隔断系统的防夹自适应学习方法及装置 | |
WO2017022375A1 (ja) | 操作入力検知装置 | |
JPH0436634A (ja) | 切削機械の制御装置 | |
WO2014175914A1 (en) | Software debouncing and noise filtering modules for interrupts | |
JP5020265B2 (ja) | 乗員保護装置 | |
US10856814B2 (en) | Sudden-onset signal processing device for biological information, and sudden-onset signal processing method for biological information | |
JP2014234076A (ja) | 衝突検出装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 4 / F, building 1, No.14 Jiuxianqiao Road, Chaoyang District, Beijing 100020 Patentee after: Beijing Jingwei Hirain Technologies Co.,Inc. Address before: 8 / F, block B, No. 11, Anxiang Beili, Chaoyang District, Beijing 100101 Patentee before: Beijing Jingwei HiRain Technologies Co.,Ltd. |