CN110690879B - 基于可编程器件的参数可调pwm控制器及pwm脉冲生成方法 - Google Patents
基于可编程器件的参数可调pwm控制器及pwm脉冲生成方法 Download PDFInfo
- Publication number
- CN110690879B CN110690879B CN201910995379.7A CN201910995379A CN110690879B CN 110690879 B CN110690879 B CN 110690879B CN 201910995379 A CN201910995379 A CN 201910995379A CN 110690879 B CN110690879 B CN 110690879B
- Authority
- CN
- China
- Prior art keywords
- pwm pulse
- phase shift
- dynamic
- output
- module
- 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
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000010363 phase shift Effects 0.000 claims description 194
- 230000003068 static effect Effects 0.000 claims description 60
- 238000004891 communication Methods 0.000 claims description 24
- 230000001360 synchronised effect Effects 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 13
- 230000003139 buffering effect Effects 0.000 claims description 9
- 238000009825 accumulation Methods 0.000 claims description 6
- 238000003909 pattern recognition Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 8
- 230000006870 function Effects 0.000 abstract description 3
- 238000011161 development Methods 0.000 description 5
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 235000010650 Hyssopus officinalis Nutrition 0.000 description 1
- 240000001812 Hyssopus officinalis Species 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 229920000729 poly(L-lysine) polymer Polymers 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K7/00—Modulating pulses with a continuously-variable modulating signal
- H03K7/08—Duration or width modulation ; Duty cycle modulation
Landscapes
- Dc-Dc Converters (AREA)
Abstract
本发明属于电力电子领域,公开了一种基于可编程器件的参数可调PWM控制器及PWM脉冲生成方法,包括人机界面、DSP以及可编程器件,人机界面用于输入PWM脉冲预设参数;DSP用于接收人机界面输入的PWM脉冲预设参数,并输出PWM脉冲参数;可编程器件用于接收DSP输出的PWM脉冲参数,并根据PWM脉冲参数生成PWM脉冲。通过人机界面进行多种参数输入调节,灵活性强,且参数变化时平滑切换,没有窄脉冲出现,保证了设备的安全平稳运行;填补了DSP芯片的局限性,可编程器件具有现场可编程的特点,可以通过硬件描述语言实现各种功能,同时可编程器件可同时并行处理多个任务,提高了控制系统的实时性和并行性。
Description
技术领域
本发明属于电力电子领域,涉及一种基于可编程器件的参数可调PWM控制器及PWM脉冲生成方法。
背景技术
电力电子产品中,提高开关频率有利于实现电力电子产品的小型化和高功率密度,多电平电路的应用有利于解决功率开关耐压不足和高压大功率之间的矛盾,降低谐波含量,减小开关损耗,提高系统效率。驱动脉冲是直接作用在电力电子器件上的信号,对于多电平高频电力电子电路相应的就需要提高驱动脉冲的频率和增加驱动信号的路数,常用的以DSP作为控制芯片的做法遇到了一些困难,如DSP的专用PWM口数量有限,受中断周期的限制对于高频模拟信号的采样有困难,多模块系统中模块间PWM的同步性差,开关频率提高后中断周期时间不够用等等。
为了解决这些问题,目前可以通过借助可编程控制器件FPGA与DSP配合的控制方案解决问题,FPGA具有并行执行、灵活性强、硬件可编程、擅长时序控制的特点,在多个电力电子产品中都有应用。但在多个项目中每个项目的脉冲生成需求都不尽相同,目前每一个项目都需要开发一套适应于该项目的代码,EDA开发工作调试环节耗时长、难度大,且很多问题需要在项目长期运行中发现,导致开发效率低。
发明内容
本发明的目的在于克服上述现有技术中单独采用DSP芯片的缺点以及每个项目都需要针对开发适应于该项目的FPGA代码,灵活性差,进而导致了项目开发效率低的缺点,提供一种基于可编程器件的参数可调PWM控制器及PWM脉冲生成方法。
为达到上述目的,本发明采用以下技术方案予以实现:
一种基于可编程器件的参数可调PWM控制器,包括:
人机界面,用于输入PWM脉冲预设参数;
DSP,用于接收人机界面输入的PWM脉冲预设参数,并将PWM脉冲预设参数作为PWM脉冲参数并输出,或通过PWM脉冲预设参数和由闭环系统输入的反馈输入量得到PWM脉冲参数并输出;
以及可编程器件,用于接收DSP输出的PWM脉冲参数,并根据PWM脉冲参数生成PWM脉冲。
本发明基于可编程器件的参数可调PWM控制器进一步的改进在于:
所述可编程器件内部设置:
通讯接收模块,用于接收DSP输出的PWM脉冲参数并输出;
数据缓冲模块,用于接收通讯接收模块输出的PWM脉冲参数并缓存,接收静态移相控制模块输出的PWM脉冲,并在PWM脉冲的下降沿时刻输出PWM脉冲参数;
以及静态移相控制模块,用于接收数据缓冲模块输出的PWM脉冲参数,根据PWM脉冲参数生成PWM脉冲并输出。
所述PWM脉冲参数包括PWM脉冲频率、PWM脉冲相位和PWM脉冲占空比,所述静态移相控制模块包括:
周期计算模块,用于接收数据缓冲模块输出的PWM脉冲频率,根据PWM脉冲频率和基准时钟生成周期计数值并输出;
同步信号生成模块,用于接收数据缓冲模块输出的PWM脉冲相位,生成和PWM脉冲同相位的同步信号并输出;
载波生成模块,用于接收周期计算模块输出的周期计数值和同步信号生成模块输出的同步信号,生成和PWM脉冲同频率同相位的载波信号并输出;
以及PWM脉冲生成模块,用于接收并根据载波生成模块输出的载波信号和数据缓冲模块输出的PWM脉冲占空比生成PWM脉冲。
所述PWM脉冲参数还包括动态移相模式信号或静态移相模式信号、动态移相时间和动态移相步长,所述可编程器件内部还设置:
动态移相控制模块,用于接收通讯接收模块输出的动态移相模式信号或静态移相模式信号,接收数据缓冲模块输出的动态移相模式信号或静态移相模式信号PWM脉冲相位、动态移相时间和动态移相步长,根据PWM脉冲相位、动态移相时间和动态移相步长得到动态PWM脉冲相位,当接收动态移相模式信号输出动态PWM脉冲相位,当接收静态移相模式信号输出PWM脉冲相位;
所述同步信号生成模块,用于接收动态移相控制模块输出的动态PWM脉冲相位或PWM脉冲相位,生成和动态PWM脉冲相位或PWM脉冲相位同相位的同步信号并输出。
所述动态移相控制模块包括:
时钟分频模块,用于接收并根据数据缓冲模块输出的动态移相步长、动态移相时间和PWM脉冲相位,生成动态移相时钟并输出;
运算比较模块,用于接收时钟分频模块输出的动态移相时钟以及数据缓冲模块输出的动态移相步长和PWM脉冲相位,以动态移相步长为被加数,按照动态移相时钟进行累加,生成动态PWM脉冲相位,动态PWM脉冲相位作为加数反馈循环累加,并作为动态移相模块的输出;当动态PWM脉冲相位与PWM脉冲相位相同时,停止反馈循环累加;
模式识别模块,用于接收通讯接收模块输出的模式选择信号,根据模式选择信号生成动态使能信号或静态使能信号并输出;
以及多路选择器,用于接收据缓冲模块输出的PWM脉冲相位、运算比较模块输出的动态PWM脉冲相位以及模式识别模块输出的动态使能信号或静态使能信号,当接收动态使能信号时输出动态PWM脉冲相位,当接收静态使能信号时输出PWM脉冲相位。
所述可编程器件为FPGA芯片。
本发明另一方面,一种基于可编程器件的参数可调PWM脉冲生成方法,包括以下步骤:
S1:通过人机界面输入PWM脉冲预设参数;
S2:通过DSP接收人机界面输入的PWM脉冲预设参数,并将PWM脉冲预设参数作为PWM脉冲参数并输出,或通过PWM脉冲预设参数结合闭环系统的反馈输入量计算出PWM脉冲参数并输出;
S3:通过可编程器件接收DSP输出的PWM脉冲参数,并根据PWM脉冲参数生成PWM脉冲。
本发明基于可编程器件的参数可调PWM脉冲生成方法进一步的改进在于:
所述S3的具体方法为:
S3-1:通过可编程器件内部的通讯接收模块接收DSP输出的PWM脉冲参数并输出;
S3-2:通过可编程器件内部的数据缓冲模块接收通讯接收模块输出的PWM脉冲参数并缓存,接收可编程器件输出的PWM脉冲,并在PWM脉冲的下降沿时刻输出PWM脉冲参数,PWM脉冲参数包括PWM脉冲频率、PWM脉冲相位和PWM脉冲占空比;
S3-3:通过可编程器件内部的静态移相控制模块接收并根据数据缓冲模块输出的PWM脉冲频率、PWM脉冲相位和PWM脉冲占空比,生成PWM脉冲并输出。
所述S3的具体方法为:
S3-1:通过可编程器件内部的通讯接收模块接收DSP输出的PWM脉冲参数并输出;
S3-2:通过可编程器件内部的数据缓冲模块接收通讯接收模块输出的PWM脉冲参数并缓存,接收可编程器件输出的PWM脉冲,并在PWM脉冲的下降沿时刻输出PWM脉冲参数,PWM脉冲参数包括PWM脉冲频率、PWM脉冲相位、PWM脉冲占空比、动态移相模式信号或静态移相模式信号、动态移相时间和动态移相步长;
S3-3:通过动态移相控制模块接收通讯接收模块输出的动态移相模式信号或静态移相模式信号,当接收动态移相模式信号时,通过动态移相控制模块接收数据缓冲模块输出的PWM脉冲相位、动态移相时间和动态移相步长并生成动态PWM脉冲相位并输出,当接收静态移相模式信号时,通过动态移相控制模块接收数据缓冲模块输出的PWM脉冲相位并输出;
S3-4:通过可编程器件内部的静态移相控制模块接收并根据数据缓冲模块输出的PWM脉冲占空比和PWM脉冲频率以及动态移相控制模块输出的动态PWM脉冲相位或PWM脉冲相位,生成PWM脉冲并输出。
与现有技术相比,本发明具有以下有益效果:
本发明基于可编程器件的参数可调PWM控制器,通过调节PWM脉冲预设参数中的各种参数,通过DSP芯片进行通讯和控制算法处理后将频率、占空比/调制波、相位、动态移相控制(可变移相时间、移相步长),输出给可编程器件部分,由可编程器件实现PWM脉冲的生成,得到灵活变化的PWM脉冲,可应用于多个对PWM控制的要求不同的电力电子产品,可以加快工程开发的效率和可靠性,同时也适合做为各种测试平台中的任意PWM脉冲生成器使用。采用人机界面进行输入频率、占空比、移相角度、移相时间、移相步长等多种参数,灵活性强,且参数变化时平滑切换,没有窄脉冲出现,保证了设备的安全平稳运行;解决了DSP芯片的局限性,可编程器件具有现场可编程的特点,可以通过硬件描述语言实现各种功能,同时可编程器件可同时并行处理多个任务,大大提高了控制系统的实时性和并行性。综上所述,本发明基于可编程器件的参数可调PWM控制器,设计合理、成熟稳定、可移植性强且精度高。
进一步的,设置数据缓冲模块,可编程器件通过数据总线接收DSP发来的各种参数之后先做暂存处理,等待合适的时刻才能更新参数,这是由于当人机界面修改了参数后,可编程器件收到新参数变化的时间是随机的,随机更新PWM脉冲的频率或者占空比可能会导致PWM脉冲出现窄脉冲或者错误的占空比,这会对硬件电路产生不利的影响,所以正确的时序应该是一个完整的PWM脉冲输出完毕后在下一个周期开始时更新参数,通过数据缓冲模块控制更新的时刻,实现PWM脉冲的稳定更新。
进一步的,设置静态移相控制模块,静态移相控制模块包括周期计算模块、同步信号生成模块、载波生成模块和PWM脉冲生成模块,同步信号的相位和最终PWM相位一致,采用这种方式可以实现0-360度的任意角度移相,并且当有多路脉冲信号时,能够保证多路脉冲的同步性,载波和调制波比较生成PWM的方式可以生成0-1任意占空比的PWM波,这些都是灵活生成PWM的基础。
进一步的,设置动态移相控制模块,动态移相控制模块包括模式识别模块、时钟分频模块、运算比较模块等几个部分,用于接收PWM脉冲指令动态移相时间和动态移相步长,计算出移相角度递增的时间间隔,按照步长递增移相角度,直到移相角度等于目的移相角时动态移相结束,同时输出动态PWM脉冲相位给静态移相控制模块。比如在电力电子变压器的ISOP拓扑结构中,为了降低启动电流冲击,需要PWM移相角度随时间缓慢递增,就采用的是动态移相控制。
本发明基于可编程器件的参数可调PWM脉冲生成方法,通过人机界面输入PWM脉冲预设参数,通过DSP接收人机界面输入的PWM脉冲预设参数输出给FPGA,FPGA接收DSP输出的PWM脉冲参数,并根据PWM脉冲参数生成PWM脉冲,即可实现PWM脉冲的生成,人机界面输入的PWM脉冲预设参数可根据实际需要进行输入,实现多种参数要求的PWM脉冲的输出,适用于多种电力电子产品,可以加快工程开发的效率和可靠性,同时也适合进行各种测试平台中的任意PWM脉冲生成。
附图说明
图1为本发明的PWM控制器结构示意图;
图2为本发明的载波生成流程图;
图3为本发明的静态移相生成PWM波形图;
图4为本发明的静态移相模块原理框图;
图5为本发明的载波同步信号生成流程图;
图6为本发明的动态移相模块原理框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面结合附图对本发明做进一步详细描述:
参见图1,本发明基于可编程器件的参数可调PWM控制器,包括人机界面、DSP和可编程器件,可编程器件选用ALTERA公司的FPGA芯片EP4CE40F23I7,该芯片具有逻辑单元(LE)39600个,用户IO口329个,PLL数量4个,充分满足设计需求。
人机界面,用于输入PWM脉冲预设参数完成接收指令。
DSP,如果设备是开环控制系统,占空比和频率固定,则DSP通过通讯接收模块接收PWM脉冲预设参数然后输出给可编程器件,如果设备需要闭环控制系统,占空比和频率是通过DSP用采样值经过PI等控制算法计算出变化的占空比和频率输出给可编程器件。
可编程器件,用于接收DSP输出的PWM脉冲参数,进行逻辑处理,并根据PWM脉冲参数生成PWM脉冲。可编程器件内部设置通讯接收模块、数据缓冲模块、动态移相控制模块以及静态移相控制模块。
通讯接收模块,用于接收DSP输出的PWM脉冲参数并输出。
数据缓冲模块,FPGA芯片通过数据总线接收DSP发来的各种参数之后先做暂存处理,等待合适的时刻才能更新参数,这是由于当人机界面修改了参数后,FPGA芯片收到新参数变化的时间是随机的,随机更新PWM脉冲的频率或者占空比可能会导致PWM脉冲出现窄脉冲或者错误的占空比,这会对硬件电路产生不利的影响,所以正确的时序应该是一个完整的PWM脉冲输出完毕后在下一个周期开始时更新参数,所以在生成目标PWM脉冲的下降沿缓冲模块更新输出脉冲参数的时刻。
另外可以根据电力电子设备不同选择静态移相模式和动态移相模式。如果选择静态移相,移相角度直接由DSP提供,移相一次结束;如果选择动态移相,则移相角度由动态移相模块通过计算后得出,每一个移相时钟周期相角度变化一次。如不进行移相,可以选择静态移相模式,移相角为0。
静态移相控制模块,用于接收数据缓冲模块输出的PWM脉冲参数,根据PWM脉冲参数生成PWM脉冲并输出。静态移相指的是PWM脉冲之间有固定的相位关系,按照输入的移相角改变PWM脉冲的相位,静态移相的原理是按照移相角改变载波相位的起始点,移相过程只发生一次。PWM脉冲相位的调整的机制是,调整PWM脉冲的相位等同于调整载波的相位,而载波的相位等同于同步信号的相位,可以通过一个同步信号的上升沿来确定载波周期的起始点。静态移相控制模块包括周期计算模块、同步信号生成模块、载波生成模块以及PWM脉冲生成模块。
周期计算模块,用于接收数据缓冲模块输出的PWM脉冲频率,根据PWM脉冲频率生成周期计数器值并输出;同步信号生成模块,用于生成同步信号,接收数据缓冲模块输出的PWM脉冲相位,将同步信号的相位调整至与PWM脉冲相位一致后输出;载波生成模块,用于接收周期计算模块输出的周期计数器值和同步信号生成模块输出的同步信号,根据周期计数器值和同步信号生成频率为PWM脉冲频率的载波信号并输出;PWM脉冲生成模块,用于接收载波生成模块输出的载波信号和数据缓冲模块输出的PWM脉冲占空比,用占空比计算出调制波,把载波和调制波做比较。
其中,载波生成模块的作用是,由于PWM脉冲生成的原理是载波和调制波作比较,所以首先需要生成和PWM脉冲波同频率的载波。参见图2,载波为周期对称的三角波,FPGA中采用计数方向交替变化的可逆计数器CNT_ZB来模拟三角波,计数器最小计数值为0,最大计数值为周期计数值PWM_Period,计数值以100M的时钟,以0为起点开始计数递增到PWM_Period,再递减为0。采用有限状态机法控制载波生成模块。即上述三角波递增时状态机SIN_STATE为0,递减为1,一增一减即是一个完整的载波周期。载波频率和PWM频率相等,载波最大计数值的计算公式为:载波最大计数值PWM_Period=时钟频率100M/(2*PWM频率),PWM频率由DSP给定,可以取0-1000000的整数值。
参见图3,PWM脉冲生成模块使用载波生成模块的输出以及占空比(调制波)作为输入信号,生成PWM脉冲波,原理是当调制波大于载波的时候,PWM脉冲输出高电平,反之输出低电平,就可以得到给定频率和占空比的PWM脉冲波。调制波的值=周期计数器的值*占空比,占空比和频率的来源分两种情况,第一种情况是开环控制系统中固定占空比的PWM脉冲方案,可以通过人机界面设置占空比和频率。第二种情况是闭环控制系统中,占空比和频率通常由DSP经过PI控制后得到变化值。
静态移相改变PWM脉冲相位的机制是,调整PWM脉冲的相位等同于调整载波的相位,而载波的相位等同于同步信号的相位,和如图3的时序图所示同步信号1决定了载波1的相位,同步信号2决定了载波2的相位,同步信号的相位差=载波相位差=PWM波相位差,可以通过同步信号的上升沿来确定载波的计数器起始0点。参见图4,静态移相模块的实现框架,静态移相控制模块以PWM脉冲频率和给定移相角度为输入信号,首先计算出生成同步信号需要的周期计数值TB_Period和初始值YX_INIT,利用同步信号决定载波的相位,再调用载波生成模块和PWM生成模块,最终生成移相后的PWM波。周期计数值TB_Period是用基准时钟将频率值转换为可以计数的周期计数器的值,计算公式为TB_Period=基准时钟频率值100M/PWM频率;计算初始值YX_INIT的值是用来确定同步信号的相位的,原理是用周期计数器的值TB_Period和移相角度作为已知量最终转换为初始值,计数器计数的起始计数值YX_INIT的计算公式为YX_INIT=移相计数初值=周期计数值TB_Period*移相角度YX_RAD/360。已知同步信号的周期计数值TB_Period和初始计数值YX_INIT,参见图5,静态移相控制模块中的同步信号生成的流程,FPGA中采用一个递增计数器TB_CNT来生成同步信号,计数器计数的最大值为同步信号周期值TB_Period。当计数器TB_CNT的值小于周期值TB_Period时,就以100M的时钟频率继续加1,计数到等于TB_Period时将计数器清零,同时判断当TB_CNT大于移相计数初值YX_INIT且小于YX_INIT+100时同步信号输出高电平(高电平时长1us),其他时刻为低电平。这样就生成了符合给定频率相位的同步信号。载波生成模块,接收周期计算模块输出的周期计数器的值和同步信号生成模块输出的同步信号,采用同步信号的上升沿确定载波计数器的清零时刻,采用周期计数器的值除以2作为载波计数器的最大值,从0递增到最大值再递减到0,生成频率为PWM脉冲频率的三角载波信号送给PWM脉冲生成模块;PWM脉冲生成模块,用于接收载波生成模块输出的载波信号和数据缓冲模块输出的PWM脉冲占空比,当载波信号大于PWM脉冲占空比输出低电平,当载波信号小于PWM脉冲占空比输出高电平,低电平和高电平组合形成PWM脉冲。
动态移相用于移相角根据时间变化的情况,接收通讯模块输出的动态移相模式信号或静态移相模式信号、PWM脉冲相位、动态移相时间和动态移相步长,最终输出信号是静态移相模块需要的当次移相相位。过程是:计算出每一次移相的时间间隔,同时计算出每一次移相最新移相角度,以移相时间间隔为周期,每一个周期进行一次移相,进行多次移相,移相相位角从0开始每移相一次按给定移相步长递增一次,移相角缓慢增加后达到目的移相角,移相结束,同时输出动态PWM脉冲相位给静态移相控制模块。动态移相控制模块包括时钟分频模块、运算比较模块、模式识别模块以及多路选择器。
时钟分频模块,通过接收数据缓冲模块输出的动态移相步长、动态移相时间、目的移相角度经过逻辑处理生成动态移相时钟;运算比较部分,用于接收时钟分频模块输出的动态移相时钟以及数据缓冲模块输出的PWM脉冲相位生成静态移相模块需要的当次移相相位;模式识别模块,用于接收数据缓冲模块输出的动态移相模式信号或静态移相模式信号,根据动态移相模式信号或静态移相模式信号生成动态使能信号或静态使能信号并输出;多路选择器,通过多路选择器来决定静态移相模块的相位输入。
所以要实现动态移相首先需要计算得到动态移相时钟CLK_YX即移相时间间隔以及动态PWM脉冲相位YX_RAD_NOW(单位为rad)。动态PWM脉冲相位的计算公式为:动态PWM脉冲相位YX_RAD_NOW=上一次移相角度+移相角度步长,参见图6,由加法器AFTLT_ADD完成移相角度的累加,加法器的输出又反馈到加法器的输入,循环累加。同时加法器的输出和目的移相角度去比较,动态PWM脉冲相位YX_RAD_NOW小于目的移相角度YX_RAD时,加法器的使能信号置1,如果大于等于移相角度时,加法器的使能信号置0,即累加停止。复位信号在上电复位以及系统复位信号来临时,对加法器进行复位操作。动态移相时钟周期CLK_YX的计算公式为:移相一次的周期YX_CLK_T=多长时间移一次=移相步长*多长时间移完/共移多少相位角度。实际移相一次的频率YX_CLK_FRE_S=7/移相一次的周期YX_CLK_FR,乘以7是由于,所述累加器调用了ALTERA的浮点数加法IP核,可以实现小数的计算,但是该模块的时钟潜伏期为7个CLK,即需要7个时钟周期才能完成一次累加,所以实际的移相频率YX_CLK_FR_S应该是计算所得的移相频率YX_CLK_FR的7倍,才能满足移相时间的要求。浮点加法模块和比较器模块都调用了ALTERA内部的IP核,浮点数运算模块,该模块可以处理小数运算,但需要将整数类型的数转换为IEEE754格式进行运算,最终再将IEEE754格式类型反变换为整数型。计算出实际移相时钟频率后,需要通过分频模块产生该频率的时钟,分频模块以100M时钟为基准分频,分频倍数=100000000/实际移相一次的频率,然后用这个分频倍数作为分频模块的输入,进行分频,最终产生动态移相控制模块的时钟。
本发明还公开了一种基于可编程器件的参数可调PWM脉冲生成方法,包括以下步骤:
通过人机界面输入PWM脉冲预设参数;通过DSP接收人机界面输入的PWM脉冲预设参数,对PWM脉冲预设参数进行控制算法处理并输出给可编程器件;通过可编程器件接收DSP输出的PWM脉冲参数,并根据PWM脉冲参数生成PWM脉冲。
其中,根据PWM脉冲参数生成PWM脉冲的具体方法为:通过通讯接收模块接收DSP输出的PWM脉冲参数;通过数据缓冲模块接收通讯接收模块输出的PWM脉冲参数并缓存,等待在目的PWM下降沿时更新PWM脉冲参数;通过动态移相控制模块接收动态移相指令计算动态PWM脉冲相位,如果选择动态移相则通过静态移相控制模块接收动态移相模块输出的动态PWM脉冲相位,如果选择静态移相,则静态移相控制模块接收DSP输出的目的移相角度以及接受数据缓冲模块输出的频率和调制波,根据这些PWM脉冲参数生成PWM脉冲并输出。
与目前的每个项目开发一套FPGA程序或单独的DSP控制相比,本发明基于可编程器件的参数可调PWM控制器及PWM脉冲生成方法具有以下优点:1、通过调节各种参数,可灵活应用于各种对控制要求不同的电力电子产品,加快工程开发的效率和可靠性,同时也适合做为厂内测试平台中的的任意PWM生成器使用;2、可以在人机界面调节频率、占空比、移相角度、移相时间、移相步长等多种参数,灵活性强,且参数变化时平滑切换,没有窄脉冲出现,保证了设备的安全平稳运行;3、解决了DSP芯片的局限性,FPGA具有现场可编程的特点,可以通过硬件描述语言实现各种功能,同时FPGA可同时并行处理多个任务,大大提高了控制系统的实时性和并行性;综上所述,本发明设计合理、控制精度高、成熟稳定、可移植性强。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
Claims (6)
1.一种基于可编程器件的参数可调PWM控制器,其特征在于,包括:
人机界面,用于输入PWM脉冲预设参数;
DSP,用于接收人机界面输入的PWM脉冲预设参数,并将PWM脉冲预设参数作为PWM脉冲参数并输出,或通过PWM脉冲预设参数和由闭环系统输入的反馈输入量得到PWM脉冲参数并输出;
以及可编程器件,用于接收DSP输出的PWM脉冲参数,并根据PWM脉冲参数生成PWM脉冲;
所述可编程器件内部设置:
通讯接收模块,用于接收DSP输出的PWM脉冲参数并输出;
数据缓冲模块,用于接收通讯接收模块输出的PWM脉冲参数并缓存,接收静态移相控制模块输出的PWM脉冲,并在PWM脉冲的下降沿时刻输出PWM脉冲参数;
以及静态移相控制模块,用于接收数据缓冲模块输出的PWM脉冲参数,根据PWM脉冲参数生成PWM脉冲并输出;
所述PWM脉冲参数包括PWM脉冲频率、PWM脉冲相位和PWM脉冲占空比,所述静态移相控制模块包括:
周期计算模块,用于接收数据缓冲模块输出的PWM脉冲频率,根据PWM脉冲频率和基准时钟生成周期计数值并输出;
同步信号生成模块,用于接收数据缓冲模块输出的PWM脉冲相位,生成和PWM脉冲同相位的同步信号并输出;
载波生成模块,用于接收周期计算模块输出的周期计数值和同步信号生成模块输出的同步信号,生成和PWM脉冲同频率同相位的载波信号并输出;
以及PWM脉冲生成模块,用于接收并根据载波生成模块输出的载波信号和数据缓冲模块输出的PWM脉冲占空比生成PWM脉冲;
所述PWM脉冲参数还包括动态移相模式信号或静态移相模式信号、动态移相时间和动态移相步长,所述可编程器件内部还设置:
动态移相控制模块,用于接收通讯接收模块输出的动态移相模式信号或静态移相模式信号,接收数据缓冲模块输出的动态移相模式信号或静态移相模式信号PWM脉冲相位、动态移相时间和动态移相步长,根据PWM脉冲相位、动态移相时间和动态移相步长得到动态PWM脉冲相位,当接收动态移相模式信号输出动态PWM脉冲相位,当接收静态移相模式信号输出PWM脉冲相位;
所述同步信号生成模块,用于接收动态移相控制模块输出的动态PWM脉冲相位或PWM脉冲相位,生成和动态PWM脉冲相位或PWM脉冲相位同相位的同步信号并输出。
2.根据权利要求1所述的基于可编程器件的参数可调PWM控制器,其特征在于,所述动态移相控制模块包括:
时钟分频模块,用于接收并根据数据缓冲模块输出的动态移相步长、动态移相时间和PWM脉冲相位,生成动态移相时钟并输出;
运算比较模块,用于接收时钟分频模块输出的动态移相时钟以及数据缓冲模块输出的动态移相步长和PWM脉冲相位,以动态移相步长为被加数,按照动态移相时钟进行累加,生成动态PWM脉冲相位,动态PWM脉冲相位作为加数反馈循环累加,并作为动态移相模块的输出;当动态PWM脉冲相位与PWM脉冲相位相同时,停止反馈循环累加;
模式识别模块,用于接收通讯接收模块输出的模式选择信号,根据模式选择信号生成动态使能信号或静态使能信号并输出;
以及多路选择器,用于接收据缓冲模块输出的PWM脉冲相位、运算比较模块输出的动态PWM脉冲相位以及模式识别模块输出的动态使能信号或静态使能信号,当接收动态使能信号时输出动态PWM脉冲相位,当接收静态使能信号时输出PWM脉冲相位。
3.根据权利要求1所述的基于可编程器件的参数可调PWM控制器,其特征在于,所述可编程器件为FPGA芯片。
4.一种基于权利要求1至3任一项所述控制器的基于可编程器件的参数可调PWM脉冲生成方法,其特征在于,包括以下步骤:
S1:通过人机界面输入PWM脉冲预设参数;
S2:通过DSP接收人机界面输入的PWM脉冲预设参数,并将PWM脉冲预设参数作为PWM脉冲参数并输出,或通过PWM脉冲预设参数结合闭环系统的反馈输入量计算出PWM脉冲参数并输出;
S3:通过可编程器件接收DSP输出的PWM脉冲参数,并根据PWM脉冲参数生成PWM脉冲。
5.根据权利要求4所述的基于可编程器件的参数可调PWM脉冲生成方法,其特征在于,所述S3的具体方法为:
S3-1:通过可编程器件内部的通讯接收模块接收DSP输出的PWM脉冲参数并输出;
S3-2:通过可编程器件内部的数据缓冲模块接收通讯接收模块输出的PWM脉冲参数并缓存,接收可编程器件输出的PWM脉冲,并在PWM脉冲的下降沿时刻输出PWM脉冲参数,PWM脉冲参数包括PWM脉冲频率、PWM脉冲相位和PWM脉冲占空比;
S3-3:通过可编程器件内部的静态移相控制模块接收并根据数据缓冲模块输出的PWM脉冲频率、PWM脉冲相位和PWM脉冲占空比,生成PWM脉冲并输出。
6.根据权利要求4所述的基于可编程器件的参数可调PWM脉冲生成方法,其特征在于,所述S3的具体方法为:
S3-1:通过可编程器件内部的通讯接收模块接收DSP输出的PWM脉冲参数并输出;
S3-2:通过可编程器件内部的数据缓冲模块接收通讯接收模块输出的PWM脉冲参数并缓存,接收可编程器件输出的PWM脉冲,并在PWM脉冲的下降沿时刻输出PWM脉冲参数,PWM脉冲参数包括PWM脉冲频率、PWM脉冲相位、PWM脉冲占空比、动态移相模式信号或静态移相模式信号、动态移相时间和动态移相步长;
S3-3:通过动态移相控制模块接收通讯接收模块输出的动态移相模式信号或静态移相模式信号,当接收动态移相模式信号时,通过动态移相控制模块接收数据缓冲模块输出的PWM脉冲相位、动态移相时间和动态移相步长并生成动态PWM脉冲相位并输出,当接收静态移相模式信号时,通过动态移相控制模块接收数据缓冲模块输出的PWM脉冲相位并输出;
S3-4:通过可编程器件内部的静态移相控制模块接收并根据数据缓冲模块输出的PWM脉冲占空比和PWM脉冲频率以及动态移相控制模块输出的动态PWM脉冲相位或PWM脉冲相位,生成PWM脉冲并输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910995379.7A CN110690879B (zh) | 2019-10-18 | 2019-10-18 | 基于可编程器件的参数可调pwm控制器及pwm脉冲生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910995379.7A CN110690879B (zh) | 2019-10-18 | 2019-10-18 | 基于可编程器件的参数可调pwm控制器及pwm脉冲生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110690879A CN110690879A (zh) | 2020-01-14 |
CN110690879B true CN110690879B (zh) | 2023-09-01 |
Family
ID=69113285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910995379.7A Active CN110690879B (zh) | 2019-10-18 | 2019-10-18 | 基于可编程器件的参数可调pwm控制器及pwm脉冲生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110690879B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112510975B (zh) * | 2020-11-25 | 2021-10-15 | 中国科学院近代物理研究所 | 一种用于提高加速器电源pwm精度的方法及系统 |
CN112713883A (zh) * | 2020-12-29 | 2021-04-27 | 深圳市泰力格打印技术有限公司 | 基于电路控制的执行机构运动速度信息采集方法及系统 |
CN112994507B (zh) * | 2021-02-02 | 2021-12-10 | 南京君海数能科技有限公司 | Pwm脉冲产生方法及pwm脉冲产生装置 |
CN113676164A (zh) * | 2021-07-15 | 2021-11-19 | 深圳供电局有限公司 | 脉冲调制控制系统、装置及方法 |
CN113568339B (zh) * | 2021-07-15 | 2023-03-21 | 许继电气股份有限公司 | 一种变流器固定延时控制方法及装置 |
CN115328268B (zh) * | 2022-10-17 | 2023-01-17 | 湖南大学 | 一种基于fpga的高分辨率数字pwm信号调制方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1725621A (zh) * | 2005-07-22 | 2006-01-25 | 清华大学 | 用于电力电子变流器的通用脉冲宽度调制集成电路 |
CN103580523A (zh) * | 2013-11-19 | 2014-02-12 | 苏州爱科博瑞电源技术有限责任公司 | 基于fpga的多路移相pwm波生成电路 |
CN106357253A (zh) * | 2016-09-07 | 2017-01-25 | 中车大连电力牵引研发中心有限公司 | Pwm脉冲信号发生电路 |
CN207200605U (zh) * | 2018-01-29 | 2018-04-06 | 太仓永瑞检测装备科技有限公司 | 基于dsp与fpga的模块化多电机实时控制平台 |
CN109857014A (zh) * | 2019-01-24 | 2019-06-07 | 武汉精能电子技术有限公司 | 一种基于fpga的pwm信号生成方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1504530A4 (en) * | 2002-04-10 | 2008-11-05 | Systel Dev And Ind Ltd | SYSTEM ON A CHIP FOR THE DIGITAL CONTROL OF ELECTRONIC POWER EQUIPMENT |
CN106787875B (zh) * | 2015-11-20 | 2019-12-17 | 台达电子企业管理(上海)有限公司 | 脉冲驱动系统及脉冲驱动方法 |
-
2019
- 2019-10-18 CN CN201910995379.7A patent/CN110690879B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1725621A (zh) * | 2005-07-22 | 2006-01-25 | 清华大学 | 用于电力电子变流器的通用脉冲宽度调制集成电路 |
CN103580523A (zh) * | 2013-11-19 | 2014-02-12 | 苏州爱科博瑞电源技术有限责任公司 | 基于fpga的多路移相pwm波生成电路 |
CN106357253A (zh) * | 2016-09-07 | 2017-01-25 | 中车大连电力牵引研发中心有限公司 | Pwm脉冲信号发生电路 |
CN207200605U (zh) * | 2018-01-29 | 2018-04-06 | 太仓永瑞检测装备科技有限公司 | 基于dsp与fpga的模块化多电机实时控制平台 |
CN109857014A (zh) * | 2019-01-24 | 2019-06-07 | 武汉精能电子技术有限公司 | 一种基于fpga的pwm信号生成方法 |
Non-Patent Citations (1)
Title |
---|
基于PFGA的步进电机PWM发生器设计;姜圣广等;《电气传动》;20140219(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110690879A (zh) | 2020-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110690879B (zh) | 基于可编程器件的参数可调pwm控制器及pwm脉冲生成方法 | |
CN103580523B (zh) | 基于fpga的多路移相pwm波生成电路 | |
US8279917B2 (en) | Pulse width modulation controller and pulse waveform control method | |
US8878581B2 (en) | Variable frequency ratiometric multiphase pulse width modulation generation | |
CN103957005A (zh) | 时间数字转换器、全数字锁相环电路及方法 | |
US20150357822A1 (en) | Inverter electric generator system and inverter electric generator thereof | |
CN102025276A (zh) | 一种数字控制开关电源跨时钟域控制器及其控制方法 | |
CN103178815A (zh) | 一种基于fpga的pwm发生器 | |
CN101944870A (zh) | 伺服电机的控制方法与电路 | |
CN114978128B (zh) | 脉冲宽度调制波形的控制方法和装置 | |
CN103828237A (zh) | 维持脉冲宽度调制数据集相干性 | |
US8909973B2 (en) | Timer unit circuit having plurality of selectors and counter circuits that start counting in response to output of selectors | |
CN116455368A (zh) | 一种pwm信号生成电路及输出控制方法 | |
JP3039781B1 (ja) | タイマ回路 | |
CN109787593B (zh) | 数字脉宽调制电路 | |
CN107800429B (zh) | 一种具有外触发同步功能的信号发生器及信号产生方法 | |
JPH0622556A (ja) | Pwmパターン発生回路 | |
JP2000092851A (ja) | Pwm方式回転機制御装置 | |
JPWO2007105487A1 (ja) | パルス幅制御信号発生回路、電力変換制御回路および電力変換制御用lsi | |
JP2013215029A (ja) | 制御装置および電力変換回路の制御装置 | |
TW201306486A (zh) | 脈波寬度調變訊號產生方法與裝置 | |
CN100381968C (zh) | 系统时钟脉冲切换装置以及切换其频率的方法 | |
CN201332394Y (zh) | 多模分频装置 | |
KR100557607B1 (ko) | 클럭 발생 장치 | |
Barnes et al. | Finite state machine brings high frequency, adaptive control to power electronics applications |
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 |