鎖相環(PLL)在振蕩器中的應用-準備篇

振蕩器是現實中常用的一種器件,通常被用來產生特定頻率的正弦波或者方波。在此類應用中,通常希望以較小的輸入信號來達到較大的輸出幅值。

以二階系統為例:

G(s)=frac{omega_n^2}{s^2+2zetaomega_ns+omega_n^2}

其諧振頻率為:

omega_d=sqrt{1-zeta^2}omega_n

當一個三角函數作為其輸入

u(t)=sin(omega t)

omega=omega_d的時候,系統處於諧振狀態,會最大程度的將輸入信號的幅值給放大,也是振蕩器所期望的工作狀態。

然而在現實中,振蕩器是有多種問題的,包括如何產生三角函數輸入,如何提高放大的倍數等等,是需要業界達人專門解決的。我想討論的一類問題,也是我最近遇到的:在振蕩器的諧振頻率會變的情況下,那我們如何使用鎖相環(Phase Lock Loop)才能保證激勵信號omega=omega_d。此類問題在電力電子或者通信行業裡面為常見問題,但是做控制的人對此不一定熟悉,我一開始的時候對很多概念和術語相當的困惑,最近整理了一下,希望對大家有幫助。AGC(Automatic Gain Control)這一類解決方案我才疏學淺,還沒有學習到。

諧振頻率隨著環境的變化而變化是非常常見的,但是使用鎖相環,我們不必要去做使用諸如最小二乘之類的在線系統辨識方法,因為在諧振頻率下,其對應的相位是一定的,如下圖所示,一個二階系統在諧振頻率下相位是-90度,不論諧振頻率如何變,此相位是不變的,我們可以利用此特性來達到讓振蕩器始終工作在諧振頻率下的目的。

當系統輸出的相位小於-90度的時候,就將輸入y(t)的頻率變大,大於-90度的時候,就將輸入y(t)的頻率變小。這是一個PID甚至PI或者I控制器就可做到的事情,最大的問題是,我們如何實時的得到相位?

這可以利用相干(In-phase, Quadrature)解調,也叫IQ解調來做。考慮下圖的結構

當輸入信號經過線性振蕩器之後,會產生Asin(omega t+phi),即產生了同頻率,但相位和幅值有了變化的信號。然後把此信號分別和sin(wt)、cos(wt)相乘,會發生:

begin{split}n&Asin(omega t+phi)sin(omega t)n&=(sin(omega t)cos(phi)+cos(omega t)sin(phi))Asin(omega t)n&=Asin^2(omega t)cos(phi)+Asin(omega t)cos(omega t)cos(phi)nend{split}n

進一步整理

begin{split}n&=0.5cos(phi)-0.5cos(phi)Acos(2omega t)+0.5cos(phi)Asin(2omega t)nend{split}n

另一路類似可得到:

begin{split}n&Asin(omega t+phi)sin(omega t)n&=0.5sin(phi)+0.5sin(phi)Acos(2omega t)+0.5sin(phi)Asin(2omega t)nend{split}n

兩路信號都經過低通濾波器:

那麼:

I=0.5Acos(phi)nQ=0.5Asin(phi)n

因為A是多少是不一定的,再讓兩者相除取反正切,

phi=atan(Q/I)

到此我們即可解調出來了相位的有關信息,再將此相位和我們預期的-90度的相位作比較,送給PID控制器就可完成閉環了。

到此處僅僅是所有環節都在理想的情況下,僅僅是模擬,都會帶來問題,因為低通濾波器會帶來額外的相位變化,諧振頻率對應的相位,並不是我們理論推導中的-90度!模擬篇稍後幾天會給大家更新,實戰篇因涉及實際項目,視情況而定,盡量帶給大家。


推薦閱讀:

前饋形式的震蕩控制器(上)
自動控制領域有哪些必讀的「聖經」(書籍或論文或其他讀物)?
無需軟體,免費自動轉寫英文電話會紀要
如何用實驗方法確定系統的頻域響應
PLC被列入《網路關鍵和網路安全專用產品目錄》,是否會成為國產PLC品牌攻城略地的發令槍呢?

TAG:自动化 | 控制理论 | 控制系统 |