发明内容
一种自校正延迟电路、微处理芯片和电机控制系统,能够简化电路结构。
第一方面,提供一种自校正延迟电路,包括:延迟链路,延迟链路包括依次级联的多个延迟单元,每个延迟单元用于使前一级的延迟单元输出的信号延迟后在当前级的延迟单元输出;第一多路选通电路和反馈单元,第一多路选通电路用于根据反馈单元输出的反馈信号选择多个延迟单元中的一者的输出作为输出;校准模块,用于将第一多路选通电路输出的信号中的第一预设边沿与预设时钟信号中的第二预设边沿进行比较,输出比较结果信号;反馈单元用于根据比较结果信号对上一次的反馈信号进行调整,并输出调整后的反馈信号;延迟选择模块,用于根据反馈单元输出的反馈信号使待处理的脉冲宽度调制信号经过多个延迟单元中的至少部分后得到延迟后的脉冲宽度调制信号。通过延迟后的PWM信号与系统时钟进行比较,并形成负反馈环路,让系统自动收敛;逻辑简单,无需复杂的额外器件配合,功耗低。
在一种可能的实施方式中,校准模块包括比较单元和极化单元;比较单元用于将第一多路选通电路的输出信号和预设时钟信号比较,得到相应的比较结果并输出至极化单元;极化单元用于对相应的比较结果进行极化处理,生成极化值并输出至反馈单元;反馈单元用于将极化值和上一次的反馈信号进行累加,输出累加后的反馈信号。
在一种可能的实施方式中,比较单元的第一输入端电连接于预设时钟信号端,比较单元的第二输入端电连接于第一多路选通电路的输出端,比较单元用于当确定第一多路选通电路输出的信号中的第一预设边沿早于预设时钟信号端输出的预设时钟信号中的第二预设边沿时,输出第一比较结果,第一比较结果为0。
在一种可能的实施方式中,比较单元还用于,当确定第一多路选通电路输出的信号中的第一预设边沿晚于预设时钟信号端输出的预设时钟信号中的第二预设边沿时,输出第二比较结果,第二比较结果为1。
在一种可能的实施方式中,极化单元用于根据比较单元的输出端的第一比较结果生成并输出极化值1,根据比较单元的输出端的第二比较结果生成并输出极化值-1。
在一种可能的实施方式中,第一预设边沿为上升沿,第二预设边沿为与第一预设边沿相邻的上升沿。
在一种可能的实施方式中,反馈单元还用于,将极化值和预设反馈信号进行累加,输出初始反馈信号;延迟选择模块还用于,根据反馈单元输出的初始反馈信号使待处理的脉冲宽度调制信号经过延迟单元后得到延迟后的初始脉冲宽度调制信号,初始脉冲宽度调制信号的第一预设边沿位于收敛区间,大大降低脉冲宽度调制信号的延迟修正的时间。
在一种可能的实施方式中,第一比较结果为0,第二比较结果为1。
在一种可能的实施方式中,第一预设边沿为上升沿,第二预设边沿为与第一预设边沿相邻的上升沿。
在一种可能的实施方式中,延迟链路中第一级的延迟单元的输入端电连接于脉冲宽度调制信号输入端,脉冲宽度调制信号输入端用于提供待处理的脉冲宽度调制信号;延迟选择模块包括:延迟信号生成单元,电连接于反馈单元的输出端和基础信号端,延迟信号生成单元用于根据反馈单元输出的反馈信号和基础信号端提供的基础信号生成并输出延迟选择信号;第二多路选通电路,第二多路选通电路包括多个选通输入端和一个选通输出端,多个选通输入端与多个延迟单元的输出端一一对应电连接,第二多路选通电路用于根据延迟信号生成单元输出的延迟选择信号选择多个选通输入端中的一者与选通输出端之间导通。
在一种可能的实施方式中,每一级的延迟单元包括第一输入端、第二输入端和输出端,每一级的延迟单元的第一输入端电连接于上一级的延迟单元的输出端,第一级的延迟单元的第一输入端电连接于最后一级的延迟单元的输出端,每一级的延迟单元的第二输入端电连接于脉冲宽度调制信号输入端,脉冲宽度调制信号输入端用于提供待处理的脉冲宽度调制信号;延迟选择模块电连接于每个延迟单元,延迟选择模块用于根据反馈单元输出的反馈信号选择多个延迟单元中的一者将第二输入端的信号延迟后输出。
第二方面,提供一种微处理芯片,包括:处理器;存储器,电连接于处理器;至少一个上述的自校正延迟电路,自校正延迟电路电连接于处理器。
第三方面,提供一种电机控制系统,包括:上述的微处理器芯片;电机驱动器,电连接于微处理器芯片;电机,电连接于电机驱动器;编码器,电连接于电机;伺服与速度控制器,电连接于编码器和微处理器芯片。微处理器芯片中的自校正延迟电路在一条链上完成延迟和校正功能,不存在分立电路之间的误差,提高电机运行的稳定性。
在一种可能的实施方式中,电机驱动器包括升压功率转换电路,升压功率转换电路电连接于所述微处理器芯片中所述自校正延迟电路的输出端。
在一种可能的实施方式中,电机控制系统还包括:时钟源,电连接于所述微处理器芯片,所述时钟源为所述微处理芯片内的晶体振荡器时钟源,或者为所述微处理芯片外的晶体振荡器时钟源,或者为所述为微处理器芯片外的电压控制的振荡器。在一种可能的实施方式中,编码器为霍尔效应传感器。
本申请实施例中的自校正延迟电路、微处理芯片和电机控制系统,使同一条链路同时实现延迟功能和校正功能,简化了电路结构;且减少了分立电路之间的误差;通过延迟后的PWM信号与系统时钟进行比较,并形成负反馈环路,让系统自动收敛;逻辑简单,无需复杂的额外器件配合,功耗低;由于不需要外部触发,因此不存在跟踪精度和功耗的问题,跟踪更加及时。
具体实施方式
本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
如图2和图3所示,本申请实施例提供一种自校正延迟电路,包括:延迟链路1,延迟链路1包括依次级联的多个延迟单元D0~Dn,每个延迟单元用于使前一级的延迟单元输出的信号延迟后在当前级的延迟单元输出,例如,多个延迟单元D0~Dn依次级联,第一级的延迟单元D0的输入端用于输入待延迟的脉冲宽度调制信号PWM_IN,第一级的延迟单元D0用于对待延迟的脉冲宽度调制信号PWM_IN进行延迟后输出,第二级的延迟单元D1用于对第一级的延迟单元D0输出的信号进行延迟后输出,依次类推,最后一级的延迟单元Dn用于对倒数第二级的延迟单元Dn-1输出的信号进行延迟后输出,每一级的延迟单元的输出端是延迟链路1的一个抽头,也就是说,延迟链路1中各抽头输出的是具有不同延迟的脉冲宽度调制信号;第一多路选通电路21和反馈单元3,第一多路选通电路21用于根据反馈单元3输出的反馈信号CAL_SEL选择多个延迟单元中的一者的输出作为输出,第一多路选通电路21的输出信号为CAL_OUT,即第一多路选通电路21在不同延时的多个脉冲宽度调制信号中选择一个作为输出为CAL_OUT;校准模块4,用于将第一多路选通电路21输出的信号CAL_OUT中的第一预设边沿(例如上升沿)与预设时钟信号SYS_CLK中的第二预设边沿(例如上升沿)进行比较,输出比较结果信号;反馈单元3用于根据比较结果信号对上一次的反馈信号进行调整,并输出调整后的反馈信号CAL_SEL;延迟选择模块5,用于根据反馈单元3输出的反馈信号CAL_SEL使待处理的脉冲宽度调制信号PWM_IN经过多个延迟单元中的至少部分后得到延迟后的脉冲宽度调制信号PWM_OUT。可见,反馈信号CAL_SEL有两个作用,一个作用是反馈调整第一多路选通电路21选择哪个抽头所对应的脉冲宽度调制信号进行输出,另一个作用是反馈调整待处理的脉冲宽度调制信号PWM_IN经过多少个延迟单元后生成延迟后的脉冲宽度调制信号PWM_OUT。
具体地,预设时钟信号SYS_CLK是预设的,其周期是已知的。延迟单元的延迟时间是有粗略值,可以预先给反馈单元提供一个初始的反馈信号CAL_SEL,以使第一多路选通电路21的输出信号CAL_OUT处于收敛区间。例如,假设第一多路选通电路21的输出信号CAL_OUT1的上升沿早于预设时钟信号SYS_CLK的上升沿,则对反馈信号CAL_SEL进行调整,调整后的反馈信号CAL_SEL用于控制使第一多路选通电路21选择上升沿更靠后的脉冲宽度调制信号作为CAL_OUT输出,以及用于控制使延迟选择模块4选择生成上升沿更靠后的PWM_OUT,可以理解,PWM_IN经过的延迟单元数量与PWM_OUT的上升沿位置正相关,PWM_IN经过的延迟单元数量越少,则生成的PWM_OUT的上升沿位置越靠前,PWM_IN经过的延迟单元数量越多,则生成的PWM_OUT的上升沿位置越靠后。假设第一多路选通电路21的输出信号CAL_OUT2的上升沿晚于预设时钟信号SYS_CLK的上升沿,则对反馈信号CAL_SEL进行调整,调整后的反馈信号CAL_SEL用于控制使第一多路选通电路21选择上升沿更靠前的脉冲宽度调制信号作为CAL_OUT输出,以及用于控制使延迟选择模块5选择生成上升沿更靠前的PWM_OUT。也就是说,通过将第一多路选通电路21的输出信号CAL_OUT中的第一预设边沿与预设时钟信号SYS_CLK中的第二预设边沿进行比较,并对反馈信号CAL_SEL进行调整,以使第一预设边沿趋近于对齐第二预设边沿,例如调整为图3中CAL_OUT2与SYS_CLK之间的关系。
本申请实施例中的自校正延迟电路,使同一条链路同时实现延迟功能和校正功能,简化了电路结构;且减少了分立电路之间的误差;通过延迟后的PWM信号与系统时钟进行比较,并形成负反馈环路,让系统自动收敛;逻辑简单,无需复杂的额外器件配合,功耗低;由于不需要外部触发,因此不存在跟踪精度和功耗的问题,跟踪更加及时。
在一种可能的实施方式中,校准模块4包括:比较单元41和极化单元42,比较单元41的第一输入端电连接于预设时钟信号端,预设时钟信号端用于提供预设时钟信号SYS_CLK,比较单元41的第二输入端电连接于第一多路选通电路21的输出端,比较单元41用于将第一多路选通电路的输出信号和预设时钟信号比较,得到相应的比较结果并输出至极化单元42,例如比较单元41用于当确定第一多路选通电21路输出的信号CAL_OUT中的第一预设边沿早于预设时钟信号端输出的预设时钟信号SYS_CLK中的第二预设边沿时,输出第一比较结果,第一比较结果例如为0,当确定第一多路选通电路21输出的信号CAL_OUT中的第一预设边沿晚于预设时钟信号端输出的预设时钟信号SYS_CLK中的第二预设边沿时,输出第二比较结果,第二比较结果例如为1;极化单元电42连接于比较单元41的输出端,极化单元42用于对相应的比较结果进行极化处理,生成极化值并输出至反馈单元3,例如极化单元42用于根据比较单元41的输出端的第一比较结果生成并输出极化值1,根据比较单元41的输出端的第二比较结果生成并输出极化值-1,也就是说,如果第一多路选通电21路输出的信号CAL_OUT中的第一预设边沿早于预设时钟信号端输出的预设时钟信号SYS_CLK中的第二预设边沿,则极化单元42输出1,如果第一多路选通电21路输出的信号CAL_OUT中的第一预设边沿晚于预设时钟信号端输出的预设时钟信号SYS_CLK中的第二预设边沿,则极化单元42输出-1;反馈单元3具体用于根据极化单元42输出的极化值与上一次的反馈信号进行累加,得到并输出累加后的反馈信号CAL_SEL,反馈信号CAL_SEL的大小与CAL_OUT的第一预设边沿的位置以及PWM_OUT的延迟位置正相关,即反馈信号CAL_SEL的数值越大,则CAL_OUT的第一预设边沿的位置以及PWM_OUT的延迟位置越靠后,相反的,反馈信号CAL_SEL的数值越小,则CAL_OUT的第一预设边沿的位置以及PWM_OUT的延迟位置越靠前。因此,极化单元42和比较单元41的配合可以使CAL_OUT的第一预设边沿趋近于与预设时钟信号SYS_CLK的第二预设边沿对齐。
在一种可能的实施方式中,反馈单元3还用于,将极化值和预设反馈信号进行累加,输出初始反馈信号;延迟选择模块5还用于,根据反馈单元3输出的初始反馈信号使待处理的脉冲宽度调制信号经过延迟单元后得到延迟后的初始脉冲宽度调制信号,初始脉冲宽度调制信号的第一预设边沿位于收敛区间,收敛区间为预设时钟信号中的第二预设边沿所属的一个时钟周期。也就是说,在没有上一次反馈信号之前,反馈单元3用于根据设的反馈信号和极化值进行累加,例如,该预设反馈信号用于使得到的延迟后的初始脉冲宽度调制信号的上升边沿位于预设时钟信号中对应的上升沿边沿所属的一个时钟周期。
在一种可能的实施方式中,第一比较结果为0,第二比较结果为1,需要说明的是,这两种比较结果仅为举例,在其他可能的实施方式中,也可以将比较结果设置为其他的数值或信号,只要能够区分不同的结果,以判断CAL_OUT的第一预设边沿是早于还是晚于SYS_CLK中的第二预设边沿即可。
在一种可能的实施方式中,第一预设边沿为上升沿,第二预设边沿为与第一预设边沿相邻的上升沿,需要说明的是,这两种预设边沿的形式仅为举例,在其他可能的实施方式中,也可以将两种预设边沿设置为其他形式,只要能够根据两种预设边沿的关系判断CAL_OUT的延时是早于理想信号还是晚于理想信号,以便于后续调整即可。
在一种可能的实施方式中,延迟链路1中第一级的延迟单元D0的输入端电连接于脉冲宽度调制信号输入端,脉冲宽度调制信号输入端用于提供待处理的脉冲宽度调制信号PWM_IN;延迟选择模块5包括:延迟信号生成单元51,电连接于反馈单元3的输出端和基础信号端,延迟信号生成单元51用于根据反馈单元3输出的反馈信号CAL_SEL和基础信号端提供的基础信号DUTY生成并输出延迟选择信号DELAY_SEL用于计算产生HRPWM所需的分母;第二多路选通电路52,第二多路选通电路52包括多个选通输入端和一个选通输出端,多个选通输入端与多个延迟单元的输出端一一对应电连接,第二多路选通电路52用于根据延迟信号生成单元51输出的延迟选择信号DELAY_SEL选择多个选通输入端中的一者与选通输出端之间导通,选通输出端用于输出延迟后的脉冲宽度调制信号PWM_OUT。
在一种可能的实施方式中,如图4所示,每一级的延迟单元包括第一输入端、第二输入端和输出端,每一级的延迟单元的第一输入端电连接于上一级的延迟单元的输出端,第一级的延迟单元D0的第一输入端电连接于最后一级的延迟单元Dn的输出端,每一级的延迟单元的第二输入端电连接于脉冲宽度调制信号输入端,脉冲宽度调制信号输入端用于提供待处理的脉冲宽度调制信号PWM_IN;延迟选择模块5电连接于每个延迟单元,延迟选择模块5用于根据反馈单元3输出的反馈信号CAL_SEL选择多个延迟单元中的一者将第二输入端的信号延迟后输出。
具体地,图4中每一级的延迟单元具体可以为双路选通电路,即延迟单元在第一输入端和第二输入端中选择一者与输出端之间导通。反馈单元3可以为溢出折返设计,即不带防溢出逻辑。在图4所示的实施方式中,延迟选择模块5包括分别电连接于每一级延迟单元的输出端,延迟选择模块5用于分别输出信号S0、S1、S2、…、Sn至多个延迟单元D0、D1、D2、…、Dn,通过S0~Sn对每一级的延迟单元进行控制,以控制多个延迟单元中的一者将第二输入端的信号延迟后输出,也就是说,控制多个延迟单元中的一者接收待处理的脉冲宽度调制信号PWM_IN,此时,该延迟单元会将PWM_IN进行延迟后输出至下一级的延迟单元,下一级的延迟单元进一步将该信号进行延迟后向下一级输出,依次类推。可以设置多个延迟单元中的一者输出的信号作为延迟后的脉冲宽度调制信号PWM_OUT,以输出至其他电路中应用,例如将最后一级的延迟单元Dn输出的信号作为延迟后的脉冲宽度调制信号PWM_OUT。由于输出PWM_OUT的抽头位置固定,因此,选择不同的延迟单元接收PWM_IN,也就决定了PWM_OUT的延迟不同,所以说,通过图4的电路结构,也可以实现对PWM_IN经过多少个延迟单元后生成PWM_OUT进行控制。
如图5所示,本申请实施例还提供一种微处理芯片,包括:处理器20;存储器30,电连接于处理器20;至少一个的自校正延迟电路40,自校正延迟电路40电连接于处理器20。
微处理芯片可以包括时钟源10,也可以不包括时钟源10,时钟源10可以为时钟振荡器,例如晶体时钟振荡器,微处理芯片中的时钟源10可以用于为处理器20以及自校正延迟电路40提供所需要的预设时钟信号。处理器20可以包括一个或多个处理单元。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。存储器30可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。存储器可以包括存储程序区和存储数据区。此外,存储器30可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器20通过运行存储在存储器30的指令,执行微处理芯片的各种功能应用以及数据处理,包括对自校正延迟电路40的控制。每个自校正延迟电路40用于获取待处理的脉冲宽度调制信号PWM_IN,并对该信号PWM_IN进行相应的延迟处理后输出对应的延迟后的脉冲宽度调制信号PWM_OUT,具体过程和原理与上述实施例相同,在此不再赘述。本申请实施例对于微处理芯片中自校正延迟电路40的数量不做限定,图5中以微处理芯片中包括4个自校正延迟电路40为例进行示意。
微处理芯片例如可以是微控制单元(Microcontroller Unit,MCU)、数字信号处理器(Digital Signal Processing,DSP)、内存保护单元(Memory Protection Unit,MPU)、微型CPU等能够处理数字信号、模拟信号,或者起到信号控制功能、指令处理和运算等功能的微型中央控制芯片、片上系统芯片。
如图6所示,本申请实施例还提供一种电机控制系统,包括:上述实施例中的微处理器芯片100;电机驱动器200,电连接于微处理器芯片100;电机300,电连接于电机驱动器200;编码器I/F 400,电连接于电机300;伺服与速度控制器500,电连接于编码器400和微处理器芯片100。
具体地,自校正延迟电路40具体可以为用于提供的微边缘定位MEP的高分辨率脉冲宽度调制模块HRPWM。电机驱动器200包含用于提供用于驱动电机300的相控输出的多个功率驱动器,功率驱动器包含耦合到多个自校正延迟电路40的输出的多个输入。例如电机驱动器200包括两个推挽式功率驱动器。微处理芯片还包含用于将从伺服与速度控制器500中的控制器接收的数字信号(其表示频率)传送到4个自校正延迟电路40的数字总线。编码器I/F 400为用于实施伺服控制的光学编码器。上述数字信号提供来自编码器I/F400在电动机操作期间的操作性能信息。或者,针对速度控制而非伺服控制,可使用霍尔(Hall)效应传感器。
本申请实施例中的电机控制系统,在一条链上完成延迟和校正功能,降低了由于分立电路而导致的误差,提高电机运行的稳定性,失配误差小;实现简单,不存在需要SFO程序持续触发的问题,简化应用;由于校正没使用额外复杂方式提供的时钟,而是频率更低的PWM信号,功耗较低;PVT跟踪更及时,因为不需要外部触发,不存在跟踪精度和功耗,CPU和总线占用之间的平衡,每一个PWM边沿都会更新一次结果。
在一种可能的实施方式中,电机驱动器200包括升压功率转换电路,升压功率转换电路电连接于微处理器芯片100中自校正延迟电路40的输出端。
在一种可能的实施方式中,电机控制系统还包括:时钟源10,电连接于处理器20,时钟源10为微处理芯片100内的晶体振荡器时钟源,或者为微处理芯片100外的晶体振荡器时钟源,或者为微处理芯片100外的电压控制的振荡器(VCO)。
在一种可能的实施方式中,在控制速度的应用场景中,编码器I/F 400为霍尔效应传感器。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
以上仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。