一种基于fpga的可控硅触发脉冲的控制方法_2

文档序号:9765623阅读:来源:国知局
信号和偶数组信号的一个周期分别进行计时,当计时结果满足预定条件时,输出可控硅触发信号。因此实现了可控硅触发信号的输出位置是不断随着同步信号周期变化而改变的。由于同步信号的周期与市电交流信号的周期相同,即市电交流信号周期变化时,输出的可控硅触发信号的位置也会随之相应变化。
【附图说明】
[0047]图1为本发明实施例提供的基于FPGA的可控硅触发脉冲的控制方法流程图;
[0048]图2为本发明实施例提供的基于FPGA的可控硅触发脉冲的控制系统示意图;
[0049]图3为本发明实施例提供的市电交流信号、同步信号、可控硅触发信号的时序图;
[0050]图4为本发明实施例提供的带毛刺的同步信号的示意图。
【具体实施方式】
[0051]下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
[0052]图1为本发明实施例1中的基于FPGA的可控硅触发脉冲的控制方法流程图,如图1所示,本发明实施例具体包括以下步骤:
[0053]步骤101,将接收到的市电交流信号整流,输出同步信号;
[0054]具体的,市电交流信号为频率为50Hz左右的交流信号,经过整流后,在正半波对应的范围内产生同步信号,在本例中,同步信号为方波信号。同步信号与市电交流信号的周期相同。
[0055]步骤102,对同步信号采样,得到同步信号的上升沿信号和下降沿信号;
[0056]具体的,对同步信号采样是利用基准时钟信号对同步信号进行采样,通过采样得到同步信号的上升沿信号和下降沿信号。
[0057]所述基准时钟信号为:基准时钟信号生成模块产生的时钟信号。
[0058]步骤103,对上升沿信号进行检测,得到有效上升沿信号,并且,对下降沿信号进行检测,得到有效下降沿信号;
[0059]具体的,当相邻的两个上升沿信号中的在后的第二上升沿信号与在先的第一上升沿信号之间的时间间隔大于第一阈值时,确定第二上升沿信号为有效上升沿信号;
[0060]确定第二上升沿为有效上升沿信号后,当其后面的第一下降沿信号与有效上升沿信号之间的时间间隔大于第二阈值时,确定第一下降沿信号为有效下降沿信号。
[0061]在一个具体的例子中,如图4所示,市电交流信号频率为50Hz,也可能在一定范围内变化,所以周期为20ms左右。因此,同步信号的两个有效上升沿信号之间的距离为20ms左右。同步信号有效高电平为0.5ms?9.5ms,假定需要滤除的边沿毛刺为在边沿信号附近1us范围的信号波动,所以,图4中,当检测到相邻上升沿信号I和上升沿信号4中,上升沿信号4与上升沿信号I之间的时间间隔大于第一阈值9.51ms(即有效高电平最大值9.5ms+滤除范围1us的时间间隔)时,可以确定上升沿信号4为有效上升沿信号;上升沿信号2和上升沿信号3则为波动信号,进而滤除上升沿信号2和上升沿信号3。当检测到上升沿信号4为有效上升沿信号后,与有效上升沿信号4之间的时间间隔大于第二阈值0.1ms (滤除范围1us的时间间隔)的第一个下降沿信号4就可以确定为有效下降沿信号,而图4中的下降沿信号1、下降沿信号2和下降沿信号3是否是有效下降沿信号则需要根据上升沿信号I是否为有效上升沿信号而确定,若上升沿信号I为有效上升沿信号,根据上述方法,则可以确定下降沿信号2为有效下降沿信号,从而滤除下降沿信号I和下降沿信号3。
[0062]步骤104,根据有效上升沿信号将同步信号分为第一奇数组信号和第一偶数组信号;根据有效下降沿信号将同步信号分为第二奇数组信号和第二偶数组信号;
[0063]具体的,根据有效上升沿信号将同步信号进行划分,将相邻上升沿的两个同步信号分别划分为第一奇数组信号和第一偶数组信号;根据有效下降沿信号将同步信号进行划分,将相邻下降沿的两个同步信号分别划分为第二奇数组信号和第二偶数组信号。
[0064]步骤105,利用基准时钟信号对第一奇数组信号的一个周期进行计时,得到第一周期信号cnt_cyclel ;利用基准时钟信号对第一偶数组信号的一个周期进行计时,得到第二周期信号cnt_cycle2 ;
[0065]具体的,根据基准时钟信号输出的脉冲个数以及基准时钟信号的周期对第一奇数组信号的一个周期进行计时,得到第一周期信号cnt_CyClel。
[0066]根据基准时钟信号输出的脉冲个数以及基准时钟信号的周期对第一偶数组信号的一个周期进行计时,得到第二周期信号cnt_CyCle2。
[0067]步骤106,利用基准时钟信号对第二奇数组信号的一个周期进行计时,得到第一脉冲信号cnt_pulSel ;利用基准时钟信号对第二偶数组信号的一个周期进行计时,得到第二脉冲信号cnt_pulse2 ;
[0068]具体的,根据基准时钟信号输出的脉冲个数以及基准时钟信号的周期对第二奇数组信号的一个周期进行计时,得到第一脉冲信号cnt_pulSel。
[0069]根据基准时钟信号输出的脉冲个数以及基准时钟信号的周期对第二偶数组信号的一个周期进行计时,得到第二脉冲信号cnt_pulSe2。
[0070]步骤107,当第二奇数组信号计数结果等于第一偶数组信号计数结果的四分之一或者四分之三,或者当第二偶数组信号计数结果等于第一奇数组信号计数结果的四分之一或者四分之三时,生成触发脉冲使能信号;
[0071]具体的,上述关系可以用公式表示为:
[0072]cnt_pulsel = cnt_cycle2* (2n_l)/4 其中,n为 I 或 2;(式 I)
[0073]或者
[0074]cnt_pulse2 = cnt_cyclel*(2n_l)/4 其中,n 为 I 或 2;(式 2)
[0075]可选的,若外部预先设有延时值时,通过获取缓存的延时值,基于上述公式I和公式2,在考虑外部设置延时的情况下,则关系式可以用公式表示为:
[0076]cnt_pulsel = cnt_cycle2*(2η_1)/4+延时值其中,η 为 I 或 2;(式 3)或者,
[0077]cnt_pulse2 = cnt_cyclel* (2η_1)/4+延时值其中,η 为 I 或2;(式 4)
[0078]生成触发脉冲使能信号。
[0079]步骤108,根据触发脉冲使能信号输出可控硅触发信号。
[0080]具体的,生成的触发脉冲使能信号作为一个激励信号,根据激励信号输出可控硅触发信号。
[0081]本实施例提供的基于FPGA的可控硅触发脉冲的控制方法,首先对市电交流信号进行整流输出同步信号,同步信号周期与市电交流信号周期相同。利用基准时钟信号,根据同步信号的有效上升沿信号和有效下降沿信号,对同步信号中的奇数组信号和偶数组信号的一个周期分别进行计时,当计时结果满足预定条件时,输出可控硅触发信号。因此实现了可控硅触发信号的输出位置是不断随着同步信号周期变化而改变的。由于同步信号的周期与市电交流信号的周期相同,即当市电交流信号周期变化时,输出的可控硅触发信号的位置也会随之相应变化。因此,当市电交流信号不稳定时,也同样可以保证输出的可控硅触发脉冲的位置精准。并且,通过FPGA实现可控硅触发脉冲的输出,不占用系统的资源,使得系统中的CPU可以高效率的处理其他工作。
[0082]图2为本发明实施例2中的基于FPGA的可控硅触发脉冲的控制系统的示意图。
[0083]该系统包括:同步信号产生电路201,用于将接收到的220V交流信号整流,输出同步信号。基准时钟信号生成模块204,是外部时钟通
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1