一种步进驱动器系统及其控制PWM时序和死区的方法与流程

文档序号:13738910阅读:824来源:国知局
一种步进驱动器系统及其控制PWM时序和死区的方法与流程

技术领域:

本发明涉及步进驱动器产品技术领域,特指一种步进驱动器系统及其控制pwm时序和死区的方法。



背景技术:

随着应用的不断推广,越来越多的步进驱动器采用全桥驱动电路,实现可以工作在四象限,并采取pwm(脉冲宽度调制技术)调制,而全桥驱动电路的上下功率管要防止同时导通,这需要控制上下桥的pwm信号(通常记为pwmh和pwml)在切换时需要一定的时间(称为死区时间)都处于无效状态。

目前全桥驱动器的死区产生大都通过微处理器编程产生或者通过集成的功率驱动芯片,比如型号为:ir2103、ir21404、ir2109以及fan73832等芯片集成的死区时间来控制。由于用微处理器产生死区出来的两路pwm互补信号遇到关机时序无法编程,这种集成死区的功率驱动芯片电源受干扰时死区容易失效。所以,用微处理器软件编程产生死区可靠性好,但是无法进行关机时序控制;已有的功率驱动芯片ir2104、ir2109等内置0.5us左右的死区,无法根据需要编程所需要的死区时间,并且当驱动器的温度升高或电路信号发生干扰时,死区容易受到干扰而失效,降低步进驱动器的可靠性。

本发明人经过不断的研究,并且随着fpga(field-programmablegatearray,即现场可编程门阵列)技术的发展,本发明人提出以下解决方案。fpga是在pal、gal、cpld等可编程器件的基础上进一步发展的产物。它是作为专用集成电路领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。



技术实现要素:

本发明所要解决的第一个技术问题就在于克服现有技术的不足,提供一种可靠性高、保护响应速度快的步进驱动器系统。

本发明所要解决的第二个技术问题在于提供一种步进驱动器系统控制pwm时序和死区的方法。

为解决上述第一个技术问题,本发明采用了如下技术方案:该步进驱动器提桶包括:微处理器、与微处理器连接的fpga模块、与fpga模块连接的功率驱动芯片、以及通过功率驱动芯片驱动的功率管;所述的fpga模块外接有基准时钟信号clk和外部复位信号rst;所述的功率管采用全桥驱动电路;当微处理器接收到外部指令后发出的pwm控制信号,pwm控制信号先通过fpga模块,fpga模块产生两路上下互补带死区的pwm信号,然后通过功率驱动芯片驱动功率管,完成pwm调制。

为了解决第二个技术问题,本发明采用了如下技术方案:该步进驱动器包括:微处理器、与微处理器连接的fpga模块、与fpga模块连接的功率驱动芯片、以及通过功率驱动芯片驱动的功率管;所述的fpga模块外接有基准时钟信号clk;首先,微处理器接收到外部指令后发出pwm控制信号,pwm控制信号先通过fpga模块,fpga模块产生两路上下互补带死区的pwm信号,然后通过功率驱动芯片驱动功率管,完成pwm调制;fpga模块产生两路上下互补带死区的pwm信号,即pwmh和pwml信号,用于驱动功率管的上桥功率管和下桥功率管;所述的fpga模块实现对pwm死区控制,死区时间td根据驱动器功率的大小设置在0.5us到1us之间,并且根据处理器发出的使能信号en和过流信号iin,控制pwm的关机时序。

进一步而言,上述技术方案中,当微处理器给fpga模块发出使能信号en,fpga模块收到微处理器的使能信号en为有效状态后,fpga模块所控制的pwm输出才处于有效状态;当fpga模块收到使能信号en为无效信号后,如果en信号在死区控制期间发出无效指令,先等待死区时间控制完成再进行如下的控制过程:关闭上桥功率管并导通下桥功率管一定时间th,最后才全部关闭所有的功率管。

进一步而言,上述技术方案中,当fpga模块收到使能信号en为无效信号后,fpga模块输出的上桥信号ah1立即变为无效状态,下桥信号需要先导通时间一定时间th再关闭;当使能信号en变为无效的时刻发生在死区产生区间时,先等死区完成后继续关闭上桥ah1并导通下桥al1,经过th时间后再关闭ah1;在下桥al1为有效状态而上桥ah1为无效状态期间使能信号en变为无效状态时,保持ah1为无效状态延长th时间后关闭al1;在下桥al1为无效状态而上桥ah1为有效状态期间使能信号en变为无效状态时,要先同时关闭ah1和al1,经过死区时间td后,ah1继续保持为无效状态,置al1为有效状态,再经过时间th后再把al1置为无效状态,由此完成pww的关闭功能。

进一步而言,上述技术方案中,fpga模块还连接外部复位信号rst,当步进驱动器刚通电时,rst信号处于无效状态,此时fpga模块的内部寄存器清零,关闭pwm输出,经过设定时间后再变为有效状态,fpga模块开始进入工作状态。

进一步而言,上述技术方案中,所述的步进驱动器功率管向微处理反馈过压、过流信号;当微处理器检测到过压、或温度过高后把en信号置低,即向fpga模块发出关闭pwm信号,此时处于正常关闭pwm状态,此时先导通下桥功率管一定时间后再关闭pwm。

进一步而言,上述技术方案中,所述的步进驱动器功率管向fpga模块反馈过流信号;当fpga模块检测到过流信号后直接关闭pwm,并向微处理器发送报警信号。

进一步而言,上述技术方案中,fpga模块检测到过流信号后,自动进行逐波限流,并给微处理器发出过流的报警信号,微处理器根据过流情况向fpga模块发出关闭pwm信号。

进一步而言,上述技术方案中,所述的逐波限流为,当fpga模块检测到过流信号后,关闭输出的两路互补pwmh和pwml信号,待下一个输入的pwm上升沿到来时,如果过流信号已经消失,则恢复pwm导通;在pwm上升沿还没到来时,即使过流信号已经无效也不能恢复输出两路互补pwmh和pwml。

进一步而言,上述技术方案中,所述的步进驱动器包含两相驱动器和三相驱动器。

本发明采用的方法可靠性高、保护响应速度快。本方法中,fpga模块连接微处理器的pwm和功率管驱动芯片,根据微处理器的pwm自动输出互补两路带死区的pwmh和pwml,用于控制上下桥功率管;fpga模块收到微处理器关机信号后自动按照时序分别关闭各个功率管,避免功率管因直接关闭产生冲击而损坏。因此本发明主要通过fpga模块进行编程后控制步进驱动器功率管的死区,根据步进驱动器的功率大小选用合适的死区时间,给出死区编程方法;并且增加关闭功率管pwm的控制时序,有效保护功率管。

附图说明:

图1是本发明原理框图;

图2是本发明控制pwm时序和使能信号en的时序控制图;

图3是本发明在关机时上下桥功率管的电流续流状态图;

图4是本发明fpga模块进行逐波限流的时序控制图;

图5是本发明fpga模块死区进程控制算法流程图;

图6是本发明fpga模块死区状态控制流程图;

图7是本发明关机状态控制流程图;

图8是本发明中处理过流信号的d触发器的电路原理图。

具体实施方式:

下面结合具体实施例和附图对本发明进一步说明。

见图1所示,本发明为一种步进驱动器系统,该步进驱动器提桶包括:微处理器、与微处理器连接的fpga模块、与fpga模块连接的功率驱动芯片、以及通过功率驱动芯片驱动的功率管;所述的fpga模块外接有基准时钟信号clk和外部复位信号rst;所述的功率管采用全桥驱动电路。

结合图1-5所示,本发明的系统主要包括pwm死区控制的时序、fpga软件编程方法、以及过流关闭pwm的逐波限流功能。其中所述fpga模块连接微处理器的pwm和功率管驱动芯片,根据微处理器的pwm自动输出互补两路带死区的pwmh和pwml,用于控制上下桥功率管;fpga模块收到微处理器关机信号后自动按照时序分别关闭各个功率管,避免功率管因直接关闭产生冲击而损坏。现有技术中,采用用微处理器软件编程产生死区可靠性好,但是无法进行关机时序控制;已有的功率驱动芯片ir2104、ir2109等内置0.5us左右的死区,无法根据需要编程所需要的死区时间,温度升高或电路信号发生干扰时,死区容易受到干扰而失效,降低步进驱动器的可靠性。因此本发明主要通过fpga编程步进驱动器功率管的死区,根据步进驱动器的功率大小选用合适的死区时间,给出死区编程方法;并且增加关闭功率管pwm的控制时序,有效保护功率管。

见图1所示,所述的微处理器发出的pwm控制信号,先通过fpga模块,产生两路上下互补带死区的pwm信号,然后通过功率驱动芯片驱动功率管,完成pwm调制。

具体工作时,首先,微处理器接收到外部指令后发出pwm控制信号,pwm控制信号先通过fpga模块,fpga模块产生两路上下互补带死区的pwm信号,然后通过功率驱动芯片驱动功率管,完成pwm调制;fpga模块产生两路上下互补带死区的pwm信号,即pwmh和pwml信号,用于驱动功率管的上桥功率管和下桥功率管;

所述的fpga模块实现对pwm死区控制,死区时间td根据驱动器功率的大小设置在0.5us到1us之间,并且根据处理器发出的使能信号en和过流信号iin,控制pwm的关机时序。

微处理器给fpga模块发使能信号en,fpga模块收到微处理器的en信号为有效状态后所控制的pwm输出才处于有效状态。

本发明的系统在fpga模块连接外部复位信号rst。其作用是,当刚上电时,由于电源还不稳定,rst信号处于‘0’无效状态,此时fpga的内部寄存器清零,关闭pwm输出,经过几十ms以后再变为‘1’有效状态,fpga模块开始进入工作状态。刚上电时,微处理器处于初始化状态,en输出引脚通过外部电阻下拉到0状态,初始化完成后处理器才开始向fpga发出en使能有效信号。这样可以使得处理器和fpga模块同步,避免刚上电时由于电压不稳定而造成的pwm信号混乱。

本发明中的fpga编程主要完成pwm死区控制,死区时间根据驱动器功率的大小设置在0.5us到1us之间;并且根据微处理器发出的使能信号en和过流信号iin,控制pwm的关机时序。

微处理器检测到驱动器过压、或温度过高后把en信号置低,即向fpga模块发出关闭pwm信号,这是正常关闭pwm,不是直接把所有的pwm置为无效的状态而是先导通下管1us左右再关闭pwm,避免突然关闭pwm造成电压冲击而损坏功率管;同时fpga检测到过流信号后应直接关闭pwm,并向微处理器发送报警信号。

正常关闭pwm时需要先同时导通下桥功率管的原因是pwm调制时,如果直接关闭pwm,如下图3所示,电流的续流状态从a状态直接跳转到c状态,这时电机开始变为发电状态,会往母线充电。电机两端的受压会突然反相,也就是从正母线电压直接跳变到负母线电压。先同时导通下管可以使得电机的能量先自行损耗2us左右后再往母线充电,减少母线的负担,如图3中状态b所示,本发明就是在状态a至状态c之间增加一个状态b,即状态b就是本发明增加的一个中间缓冲状态。见图2所示,这是本发明pwm时序控制的示意图。

在本发明中,微处理器自动根据给定参考量和反馈量作pid运算,并结合伏秒法计算出用于驱动功率管的pwm。

本发明中上下桥的pwm死区时间需要由fpga软件编程,例如verilog和vhdl语言,fpga芯片需要外接基准时钟信号clk,每一路pwm输入到产生两路互补的pwmh和pwml信号,构成一个编程模块。

见图2所示,fpga模块收到en无效信号后,如果en信号在死区控制期间发出无效指令,必须先等待死区时间控制完成再进行如下的控制过程:关闭上桥功率管并导通下桥功率管(th=2us)左右最后才全部关闭所有的功率管。

本发明所述的驱动器包含两相驱动器和三相驱动器,其中两相驱动器,a相主要由pwma1和pwma2控制,b相主要由pwmb1和pwmb2控制;对于三相驱动器,微处理器产生pwma,pwmb,pwmc控制信号,同样也可以经过fpga产生上下两路互补的信号。图2所示的是其中pwma1通过fpga产生两路互补的ah1和al1,死区时间是td(大约为1us),分别驱动上下桥功率管。

见图2所示,当使能信号变为无效状态时,上桥信号ah1立即变为无效状态,下桥信号需要先导通时间th再关闭。需要说明的是当使能信号en变为无效的时刻发生在死区产生区间时,先等死区完成后继续关闭上桥ah1并导通下桥al1,经过th时间后再关闭ah1;在下桥al1为有效状态而上桥ah1为无效状态期间en变为无效状态时,保持ah1为无效状态延长th时间后关闭al1;在下桥al1为无效状态而上桥ah1为有效状态期间en变为无效状态时,要先同时关闭ah1和al1,经过时间td后,ah1继续保持为无效状态,置al1为有效状态,再经过时间th后再把al1置为无效状态。由此完成pww的关闭功能。

见图1所示,本发明中,设置有过流保护电路,当fpga模块检测到功率管过流后,自动进行逐波限流,并给微处理器发出过流信号,处理器根据过流情况向fpga发出关闭pwm信号。所述的逐波限流的工作方式为:当检测到过流信号后,关闭输出的两路互补pwmh和pwml,待下一个输入的pwm上升沿到来时,如果过流信号已经消失恢复pwm导通,在pwm上升沿还没到来时即使过流信号已经无效也不能恢复输出两路互补pwmh和pwml。见图4所示。fpga模块编程算法采用状态机描述pwm变化过程。每一个状态机对应pwm的一个输出状态。fpga模块编程算法的框图图5所示。每个状态机根据输入信号的变化自动相互跳转。

本发明中为了实现的逐波限流功能,见图8所示,过流信号iin需要通过d触发器再输入到限流控制模块,过流信号发生后d触发器马上输出过流有效信号iover,此后即使输入的过流信号消失先前输出的信号iover不会跟着马上消失,需要在pwm输入信号有效上升沿到来时才消失。为方便算法描述,对应于pwma1,pwma2,pwmb1和pwmb2的输入,一律都记为pwm_in。其时序关系如图4所示。所用的数字d触发器用verilog语言描述,如下:

本发明中pwm模块的时序控制,采用verilog或vhdl语言编写。描述整个控制进程,见图5所示,其为处理的进程的程序控制流程图。图6是本发明fpga模块死区状态控制流程图;图7是本发明关机状态控制流程图;通过该流程图,在fpga模块编写对应的控制程序即可。

本发明采用的方法可靠性高、保护响应速度快。本方法中,fpga模块连接微处理器的pwm和功率管驱动芯片,根据微处理器的pwm自动输出互补两路带死区的pwmh和pwml,用于控制上下桥功率管;fpga模块收到微处理器关机信号后自动按照时序分别关闭各个功率管,避免功率管因直接关闭产生冲击而损坏。

因此本发明主要通过fpga模块进行编程后控制步进驱动器功率管的死区,根据步进驱动器的功率大小选用合适的死区时间,给出死区编程方法;并且增加关闭功率管pwm的控制时序,有效保护功率管。

当然,以上所述仅为本发明的具体实施例而已,并非来限制本发明实施范围,凡依本发明申请专利范围所述构造、特征及原理所做的等效变化或修饰,均应包括于本发明申请专利范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1