新手数控工程师一枚,大概学习了一下锁相环,以下是我的简单总结。
锁相环工作原理
和电网相连接的一些设备,往往都需要对电网相角的精准估计才能实现更好的控制效果。比如双闭环的PFC,电压环能输出Iref,你还需要锁相环获得sin(θ)才能得到电流的参考值Iref·sin(θ)对吧!当然这只是我的一些简单理解,我也没有很了解PFC,锁相环的作用应该不止如此。
如果你问锁相环的输入输出是什么,可能你能得到的答案就是输入是电网电压,输出是相角。实则我的理解是,锁相环的输入量是电网电压的正弦值,输出量是电网电压的正弦值和余弦值,相角就寄托在正弦值中了!
锁相环的结构框图如下,它主要包含鉴相器(PD),低通滤波器(LF)和压控振荡器(VCO)三部分。(From TI文档:Software Phase Locked Loop Design Using C2000™ Microcontrollers for Single Phase Grid Connected Inverter)
由于低通滤波器一般就是PI的形式,它无法完全滤除鉴相器输出的两倍电网频率的成分,低通滤波器输出的高频成分将会影响最终PLL的性能。因此,经常会使用陷波器滤除鉴相器输出的电网两倍频成分。此时,LPF就可以看成一个单纯的PI控制器。鉴相器相当于一个模拟乘法器,它让电网电压与输出相角的cos值相乘,因此鉴相器的输出为(抱歉公式有水印,因为用的是截图不想再敲一一遍):
其中,θin和θout是时变的量,其变化率分别为ωin和ωout。使用积化和差公式可以得到:
因为VCO的给定ωo一般是工频,因此可以认为鉴相器的输出包含一个近似的直流分量和两倍工频分量。通过陷波器,可以滤除掉这个高频成分。并且,在稳定运行之后,输出相角和输入相角的差值不会很大,因此陷波器的输出可以近似为:
因此,根据相角大小的关系,可以分为以下两种情况:
若是电网相角小于PLL相角,则LPF的输入为负,因此LPF的输出会相应减小,使得ωout小于原来的ωout,让PLL的相角下降到接近电网相角;
若是电网相角大于PLL相角,则LPF的输入为正,因此LPF的输出会相应增大,使得ωout大于原来的ωout,,让PLL的相角追上电网相角。
总而言之,锁相环的作用就是让其输出相角在小于电网相角的时候通过增加VCO频率追上电网相角;在大于电网相角的时候减小VCO频率来下降到靠近电网相角。稳定运行的时候,锁相误差就会变为0。这就是PLL的工作原理。
PI控制器设计(基于相角扰动的小信号分析)
引入陷波器后,PI控制器的设计只与锁相环的动态和稳态性能相关,它的作用就是在稳态的时候把err降为0。要实现对PI控制器的设计,就必须对锁相环的闭环进行小信号分析(简便起见假设kd=2,VCO的ko=1,因为它们的值可以根据PI的值来调整,其实没有那么重要),推导闭环传递函数。在稳态的时候,稳态输入相角与输出相角是相等的,并且陷波器的输出为0。对输入相角引入一个偏差量,同时输出相角也会有一个相应的误差量:
鉴相器和陷波器可以看成一个线性的环节:
记这个误差量其通过PI后又经过一个积分环才会变成输出相角的小信号,也就是:
整理之后,可以得到小信号闭环传递函数为:
虽然它不是典型的二阶系统传递函数(多了一个零点),但是也实际上这个零点对暂态相应的影响不大,见简单典型二阶系统_非典型二阶系统的特性_weixin_39845825的博客-CSDN博客 ,可以使用典型二阶系统单位阶跃响应的阻尼系数以及调节时间来对锁相环的PI参数进行设计。系统的固有频率和阻尼系数为:
假设电网电压的峰值Vgrid为1V(对于数字PLL完全可以做到这样的处理,所以锁相环的输入也就是相角的正余弦值啊),设定调整时间为30ms(调整范围5%),阻尼系数为0.707:
从而可以得到固有频率ωn为157.78rad/s, 可以得到PI参数的大小为kp=223.09, ki=24893.17。对于数字控制系统,假设采样频率(同时也是控制频率)为50kHz,数字式的PI控制方法为:
其中,
自适应陷波器设计
陷波器存在的意义是滤除PD输出的近似两倍电网频率的成分,为了让滤除更加精确,要让陷波器的ωn的取值根据测量电网频率得到的值来整定。
使用零阶保持法对它进行离散化,可以得到:
正余弦发生器
对于sin和cos值的计算,可以使用离散的方法来生成(步长这里就是采样周期或者说控制周期):