System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于改进CORDIC算法的三相SPWM正弦波产生方法及系统技术方案_技高网

基于改进CORDIC算法的三相SPWM正弦波产生方法及系统技术方案

技术编号:40084943 阅读:9 留言:0更新日期:2024-01-23 15:18
本发明专利技术为基于改进CORDIC算法的三相SPWM正弦波产生方法及系统,所述方法采用改进CORDIC算法,所述改进CORDIC算法利用合并迭代压缩迭代次数,通过将角度折叠到[0,π/8]和角度二极化重编码消除剩余旋转角度。改进CORDIC算法优化了查找表结构,不影响免迭代CORDIC算法的输出精度,通过进一步的角度区间折叠,使查找表容量并没有因为减少迭代而增加容量。通过综合运用角度二极化重编码、合并迭代结构,使免迭代CORDIC算法在硬件资源消耗和输出精度上也都有一定改善,更加适合高速、实时的现代信号处理应用。

【技术实现步骤摘要】

本专利技术涉及针对spwm系统,尤其是一种基于改进cordic算法的三相spwm正弦波产生方法及系统。


技术介绍

1、目前与spwm系统有关的国内专利技术专利主要集中在单相spwm系统,并且正弦信号的产生也是仅基于传统查找表法。

2、与cordic算法有关的国内专利技术专利主要集中在将角度范围扩大到[0,2π],但硬件资源占用较多、输出精度较低。传统cordic算法可以通过简单的移位和加减法操作实现复杂函数,实现数字正弦信号产生电路,但因该算法存在迭代次数过多、精度低、时序逻辑资源消耗大等缺陷,使得其在高速高精度等场景下的应用受到了一定的限制。

3、因此,本申请采用角度二极化重编码、合并迭代等改进cordic算法获得高效的数字正弦信号产生方式,实现三相spwm正弦波的产生,基于改进cordic算法产生spwm相比于传统查表法,减少了资源消耗并提高了输出精度。基于fpga并发执行的速度优势,使用verilog语言实现电路设计,使fpga在实现三相spwm控制系统中有很大优势。


技术实现思路

1、针对现有技术的不足,本专利技术拟解决的技术问题是:提供一种基于改进cordic算法的三相spwm系统,该系统精度高,时序逻辑资源消耗少,能够应用于高速高精度场景。

2、本专利技术解决所述技术问题采用的技术方案是:

3、第一方面,本专利技术提供一种基于改进cordic算法的三相spwm正弦波产生方法,所述方法采用改进cordic算法,所述改进cordic算法包括以下内容:

4、1)对输入角度值θ用n位二进制小数加上一个符号位bj表示,令rj+1=2bj-1对其进行角度二极化重编码;

5、所述角度二极化重编码使得原来的0、1的编码二极化为-1、1,用角度二极化重编码后的结果表示输入角度为式(1),

6、

7、其中,为常数,bj常数,取值为0或1,ri取-1或1;i=j+1;

8、在极坐标下从原点开始先旋转角度再根据ri的值确定旋转方向,并旋转2-i角度;

9、将[0,2π]范围的角度通过角度折叠都转换到[0,π/8]区间,建立[0,2π]与[0,π/8]之间角度的映射关系,用[0,π/8]区间的角度二极化重编码表示所有角度;

10、2)构建小容量rom查找表:对于n位二进制小数的系统,以i表示迭代次数,取值为3~n+1范围内的整数,计算值,确定小容量rom查找表中地址的位数,小容量rom查找表中地址的第一位为r3,选取相应位数的二进制编码作为地址列,判断i是否小于(n-1)/2,若i<(n-1)/2时,对角度二极化重编码结果进行角度以及前次旋转后的结果乘以k缩放得到的正弦值和余弦值存储在[0,π/8]rom查找表中,获得小容量rom查找表;

11、3)当i<(n-1)/2时,直接应用小容量rom查找表输出的正弦值和余弦值;若i≥(n-1)/2时,根据小容量rom查找表获得(n-1)/2时输入的正弦值和余弦值,应用移位—连加的合并迭代结构,获得不同迭代次数下输出的正弦值和余弦值;

12、4)重映射:根据步骤3)获得[0,π/8]内角度的正弦值和余弦值,再对其进行重映射缩放操作得到(π/8,π/4]内的正余弦,再根据[0,π/4]的正余弦值,将角度扩展到[0,2π]范围内,获得[0,2π]范围内的正余弦;

13、将改进cordic算法输出的[0,2π]范围内的正余弦应用于三相spwm系统中生成三相spwm正弦波。

14、所述移位—连加的合并迭代结构的具体过程是:

15、进行第i次迭代,有:

16、

17、其中,ri=±1,表示迭代方向,

18、进行两步迭代,有:

19、xi+2=xi+1-yi+1ri+12-i-1=(xi-yiri2-i)-(yi+xiri2-i)ri+12-i-1

20、=xi-yiri2-i-yiri+12-i-1-xiriri+12-2i-1

21、yi+2=yi+1+xi+1ri+12-i-1=(yi+xri2-i)+(xi+yiri2-i)ri+12-i-1

22、=yi+xiri2-i+xiri+12-i-1-yiriri+12-2i-1  (3)

23、输入角度的余弦值yi根据迭代次数进行移位相加运算,再与输入角度的正弦值xi直接在加法器中进行累加加法运算即可得到输出正弦值xn;同时输入角度的正弦值xi根据迭代次数进行移位相加运算,再与输入角度的余弦值yi直接在加法器中进行累加加法运算即可得到输出余弦值yn。

24、所述小容量rom查找表的建立过程是:

25、对于输出n位小数的系统,设定小容量rom查找表中的数据位宽比输出位宽多两位,输出位宽为n,数据位宽为n+2,计算的值,的值为小容量rom查找表中的地址位数,小容量rom查找表中地址的第一位为r3,

26、在进行实际小容量rom查找表建立时,依据角度二极化重编码后的结果,用式(4)、(5)、(6)所示方程进行计算,

27、

28、

29、式中,定义(x0,y0)=(k,0),将其带入式(5)计算第三次迭代的正弦值x3和余弦值y3;

30、式中,其中

31、

32、式(4)给出了缩放因子k的计算公式,式(5)进行初始φ0角度旋转,式(6)给出不同地址时的旋转计算式;

33、获得了地址位数对应的正余弦值,建立小容量rom查找表。

34、第二方面,本专利技术提供一种基于改进cordic算法的三相spwm系统,其特征在于,所述系统包括改进cordic算法的数字正弦波产生模块、数字三角波产生模块和带死区的比较模块;

35、所述改进cordic算法的数字正弦波产生模块在输出频率固定的模式下只需要输入驱动频率即可输出需要的数字正弦波;所述改进cordic算法的数字正弦波产生模块采用上述的三相spwm正弦波产生方法产生数字正弦波;

36、数字三角波产生模块用于产生数字三角波波形;

37、改进cordic算法的数字正弦波产生模块和数字三角波产生模块的输出经过带死区的比较模块直接进行比较得到想要的spwm波形。

38、所述改进cordic算法的数字正弦波产生模块包括依次连接的相位累加器模块、改进cordic算法、d/a转换模块和低通滤波器,采用改进cordic算法,将相位累加器模块的输出信号相位与改进cordic算法的输入角度信号相连接,通过改进cordic算法的计算直接得到相应相位的正余弦值;

39、当相位累加器模块的相位累加因子确定下来时整个改进cordic算法的数字正弦波产生模块只有驱动时钟一个输入端口,低通滤波器的输出为正弦一个端口。

40、所述数字三角波产生模块,包括相位累加模块、幅值加本文档来自技高网...

【技术保护点】

1.一种基于改进CORDIC算法的三相SPWM正弦波产生方法,其特征在于,所述方法采用改进CORDIC算法,所述改进CORDIC算法包括以下内容:

2.根据权利要求1所述的基于改进CORDIC算法的三相SPWM正弦波产生方法,其特征在于,所述移位—连加的合并迭代结构的具体过程是:

3.根据权利要求1所述的基于改进CORDIC算法的三相SPWM正弦波产生方法,其特征在于,所述小容量ROM查找表的建立过程是:

4.一种基于改进CORDIC算法的三相SPWM系统,其特征在于,所述系统包括改进CORDIC算法的数字正弦波产生模块、数字三角波产生模块和带死区的比较模块;

5.根据权利要求4所述的三相SPWM系统,其特征在于,所述改进CORDIC算法的数字正弦波产生模块包括依次连接的相位累加器模块、改进CORDIC算法、D/A转换模块和低通滤波器,采用改进CORDIC算法,将相位累加器模块的输出信号相位与改进CORDIC算法的输入角度信号相连接,通过改进CORDIC算法的计算直接得到相应相位的正余弦值;

6.根据权利要求4所述的三相SPWM系统,其特征在于,所述数字三角波产生模块,包括相位累加模块、幅值加减模块和幅值判断模块;数字三角波产生模块的输入仅有驱动频率一个端口,驱动频率经过相位累加模块后作为幅值加减模块的地址,幅值加减模块的输出是三角波形,其幅值具体是线性累加还是线性累减取决于幅值判断模块,当幅值达到设定三角波的最大值时,幅值判断模块将使得之后的三角波输出开始线性累减,相反则开始累加;依次往复便输出连续不断的三角波输出。

7.根据权利要求4所述的三相SPWM系统,其特征在于,所述带死区的比较模块将正弦波及三角波的幅值进行比较即可产生SPWM波,SPWM波对桥式逆变电路中的桥臂进行控制;使桥式逆变电路中同相上下桥臂驱动信号错开一个死区时间,防止桥臂上的两个MOS管同时导通而发生短路的情况;死区时间的大小由具体的功率器件决定。

8.根据权利要求7所述的三相SPWM系统,其特征在于,采用状态机将死区模块与比较模块综合在一起形成带死区的比较模块,当输出三角波的值大于正弦波的值时,DH和DL均输出低电平;当输出三角波的值大于正弦波加上死区的值时,DH输出低电平,DL输出高电平;当输出三角波的值小于正弦波的值时,DH和DL均输出高电平;当输出三角波的值小于正弦波与死区的差值时,DH输出高电平,DL输出低电平。

...

【技术特征摘要】

1.一种基于改进cordic算法的三相spwm正弦波产生方法,其特征在于,所述方法采用改进cordic算法,所述改进cordic算法包括以下内容:

2.根据权利要求1所述的基于改进cordic算法的三相spwm正弦波产生方法,其特征在于,所述移位—连加的合并迭代结构的具体过程是:

3.根据权利要求1所述的基于改进cordic算法的三相spwm正弦波产生方法,其特征在于,所述小容量rom查找表的建立过程是:

4.一种基于改进cordic算法的三相spwm系统,其特征在于,所述系统包括改进cordic算法的数字正弦波产生模块、数字三角波产生模块和带死区的比较模块;

5.根据权利要求4所述的三相spwm系统,其特征在于,所述改进cordic算法的数字正弦波产生模块包括依次连接的相位累加器模块、改进cordic算法、d/a转换模块和低通滤波器,采用改进cordic算法,将相位累加器模块的输出信号相位与改进cordic算法的输入角度信号相连接,通过改进cordic算法的计算直接得到相应相位的正余弦值;

6.根据权利要求4所述的三相spwm系统,其特征在于,所述数字三角波产生模块,包括相位累加模...

【专利技术属性】
技术研发人员:戈文祺张坤
申请(专利权)人:天津城建大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1