設計基于高速單片機C8051F120和CPLD的高精度大型望遠鏡的伺服控制器,由單片機實現閉環控制算法、上位機通信和LCD顯示控制,CPLD實現增量式編碼器計數、電機驅動波形發生以及I/O接口。該控制器可獨立進行電機控制,也可配合上位機進行控制,具有實時性和抗干擾能力強、成本低、調試方便等特點。
引言
微電子技術和計算機的發展推動著伺服控制技術的進步,控制系統的硬件系統越來越高速化、小型化、模塊化,功能也日趨強大完善;而且,伺服控制技術是朝著更開放、更加模塊化的控制結構的方向發展的,要求控制器算法實現簡單、控制接口靈活,針對不同的伺服控制對象時硬件系統不變,軟件系統也可以完成參數的自動調整。
在高精度大型望遠鏡伺服控制應用場所,采用高精度光電編碼器作為主要反饋手段,主要有絕對式和增量式編碼器。驅動電機的信號有模擬電壓輸出或PWM脈沖輸出,通過調整電壓的大小或PWM的占空比來調整電機的速度。系統具有和上位機的通信接口以及一些邏輯輸入/輸出接口等。大型望遠鏡是用于跟蹤測量空中飛行目標或觀測天體目標的精密光學設備。伺服系統是望遠鏡的重要組成部分,它對于跟蹤目標、精確測量目標的位置以及其他參數都起著重要作用。伺服系統的性能會直接影響望遠鏡的觀測能力,對望遠鏡的高精度伺服控制需要高精度的位置反饋裝置,以及高分辨率的PWM驅動脈沖。
本文采用高速單片機C8051F120作為主控制器,與光電編碼器接口多為AB正交碼和零位信號輸入;驅動電機多采用帶死區PWM信號驅動有刷直流電機;采用CPLD實現高速光電編碼器的AB碼計數、計數位數的設定以及32位的可逆計數,同時可以輸出高分辨率的帶死區的PWM電機驅動信號。本文結合高速單片機和CPLD的優點進行望遠鏡伺服系統的控制器設計。
1 系統硬件設計
設計采用高速單片機作為主控制器來構成低成本的伺服控制方案。CPLD具有編程靈活、集成度高、開發周期短、成本低的特點,可實現較大規模的數字電路設計。因此,選擇一款合適的CPLD可滿足伺服控制系統的AB正交碼計數和PWM波形產生等電路接口要求,同時大大減小PCB面積,增強可靠性。整個控制器系統原理框圖如圖1所示。
作為主控制器的高速單片機選擇C8051F120。它是完全集成的混合信號片上系統型芯片,主要實現數學運算、控制算法和A/D采集等功能。
C8051F120具有如下特性:
◆高速、流水線結構的8051兼容的CIP-51內核(100 MIPS或50MIPS);
◆真正12位、100 ksps的ADC,帶PGA和8通道模擬多路開關;
◆兩個12位DAC,具有可編程數據更新方式;
◆2周期的16×16乘法和累加引擎;
◆128 KB可在系統編程的Flash存儲器;
◆8448(8 K+256)字節的片內RAM;
◆可尋址64 KB地址空間的外部數據存儲器接口;
◆硬件實現的SPI、SMBus/I2C和2個UART串行接口;
◆5個通用的16位定時器;
◆具有6個捕捉/比較模塊的可編程計數器/定時器陣列;
CPLD選用A1tera公司的低功耗MAXII系列的EPM570T100。它含有570個邏輯單元(LE),等效于440個宏單元;8192位的用戶Flash存儲器,可滿足用戶小容量信息存儲要求;最大用戶I/0數為76,最短訪問時間為4.5ns,內部最大時鐘頻率為304 MHz,完全滿足系統設計要求。EPM570T100主要和C8051F120的P1、P5、P6、P7接口,以及和編碼器的ABZ碼、8路輸出和8路輸入接口電路相接,實現和C8051F120的數據總線和地址總線接口電路、外部定時中斷電路、譯碼電路、PWM脈沖發生電路、倍頻鑒向電路、計數電路、故障保護電路等功能。
LCD顯示模塊主要顯示系統的狀態變量值,如位置、速度、編碼器值等信息。采用串口電平轉換收發器SP3223實現與上位機的兩路RS232通信,可完成工作模式(如定點、等速模式),以及數值大小的設定;同時,單片機可實時地將工作狀態變量送至上位機,利于數據記錄和分析。控制器參數(如比例系數KP和積分系數KI等)也可由上位機進行設置,對于開放式運動控制模塊,這是必需的。
另外,設計了8路按鍵,用于功能參數設置等。如圖2所示。光電增量式編碼器的接口一般為RS422差分對輸入接口。
如圖3所示,光電增量式編碼器接口電路具有終端匹配電阻和濾波網絡電路,可增強抗干擾能力。其中,接口芯片SP489將RS422信號轉換為TTL電平。
2 CPLD片上各模塊實現
2.1 倍頻鑒向和計數電路
經過圖3所示的編碼器接口電路處理后,輸出TTL電平的A1、B1、Z1信號到CPLD。首先,對波形進行整形、數字濾波處理;經過4細分后,進入辨向電路;然后由可逆計數電路完成對脈沖的計數,輸出32位的二進制碼值;單片機在每個采樣周期中讀取計數值來獲得位置值,通過微分即可得到速度值。望遠鏡的位置反饋圓光柵輸出的AB碼頻率可達10MHz,高頻CPLDEPM570T100完全可以勝任。在CPLD輸入端口進行施密特觸發和濾波處理,以避免尖峰毛刺干擾,進一步增強系統魯棒性。
2.2 時鐘電路
CPLD的全局時鐘為100MHz,對其進行分頻提供給內部各個模塊,如計數模塊電路、PWM處理電路和單片機的中斷信號。100MHz可分頻成1kHz、500 Hz、50Hz。本設計中,采樣周期為1ms,即1kHz采樣頻率,用于單片機的外部中斷信號。在采樣周期內,單片機完成對圓光柵計數采樣、速度計算、算法實現、PWM控制變量產生,以及過程狀態變量賦值等工作。實際測得完成單個電機控制所需的時間為120μs左右,剩余時間可用于實現LCD顯示控制和通信功能。可見,利用該單片機可以勝任望遠鏡伺服閉環工作。
2.3 PWM脈沖電路
功率級采用H橋電路,需要4路帶死區的PWM信號,避免直通。如圖4所示,首先由100 MHz產生12.5kHz的三角波信號,與單片機輸出的數據(0~8000)進行比較,得到1路PWM信號(數據的大小決定占空比的值,O對應O%,8000對應100%),再由該PWM信號產生與之反向的信號。同時,經死區電路得到2路死區時間至少為5μs的PWM信號,以及經電機工作模式控制電路處理得到的4路驅動功率級PWM信號,可控制電機工作在單極性或雙極性方式。當需要控制多個電機時,采用上述方法同樣處理就行,這就是CPLD靈活性的具體體現。
2.4 其他電路
轉臺上的限位信號、功率級的故障信號、外部邏輯數字信號等輸入到CPLD,進行相應的邏輯處理(如輸出使能和停止),從而達到對電機的有效控制和保護。
3 控制算法實現
在控制算法的實現上采用內模控制。其設計思路是將對象模型與實際對象相并聯,控制器逼近模型的動態逆。對單變量系統而言,內模控制器取為模型最小相位部分的逆,并通過附加低通濾波器增強系統的魯棒性。模型和被控對象模型精確匹配時,控制系統的輸入等于輸出。內模控制能夠清楚地表明調節參數和閉環響應及魯棒性的關系,內模控制器的動態特性取決于內部模型與被控對象的匹配情況。
內模控制原理框圖如圖5所示。其中,GP(s)為控制對象*****為內部模型,GIMC(s)為內模控制器,Gd(s)為外界干擾模型;x、u、y分別為給定輸入、控制量、對象輸出,d為外界干擾。在工業過程中,與經典PID控制相比,內模控制僅有一個整定參數,參數調整與系統動態品質和魯棒性的關系比較明確,故采用內模控制原理可以提高PID控制器的設計水平。由于參數調節簡單,此算法利于單片機程序實現。
大型光電望遠鏡屬于大慣量系統,機械時間常數遠大于電氣時間常數,故可忽略電氣時間常數的影響。對象的速度傳遞函數可簡化為:
式中,Tm是機械時間常數,K是增益。因此可以選擇內模控制器為:
式中,λ是濾波器參數。如圖5所示,點畫線內的部分可等效為反饋控制器:
當模型匹配時,存在內模控制系統閉環為一慣性環節。它的時間可以依據需要進行調節,λ值小有利于動態性能,λ值大則有利于增強魯棒性。對于內模控制器輸出不飽和而言,其等效于反饋控制器PI,因而,系統對階躍輸入和階躍擾動的穩態誤差為零,其抗干擾能力與常規PI完全一致。采用增量式PID控制算法,控制變量為:
式中,ek為第k步時刻速度誤差,Ts為采樣周期,μ(k)為當前控制量輸出。
4 實驗結果
采用基于高速單片機C8051F120和CPLDEPM570T100設計的伺服控制器硬件平臺,實現大型望遠鏡轉臺的速度控制,驅動功率級采用H橋雙極性功率放大器,反饋采用直徑為413 mm的圓光柵,柵道64800,細分1000,分辨率為0.02"/s,采樣周期1 ms,控制回路計算時間測得為120μs,包含圓光柵數據讀取時間。望遠鏡的一轉臺的速度傳遞函數為:
利用板上的通信口發送實際的速度值(波特率115200bps,1ms發送1次),由上位計算機記錄數據,測得的速度響應曲線如圖6所示。起始階段電機以20"/s的低速度運行,中間升至1800"/s,最后達到3600"/s,可見每個階段的速度都非常平穩。在實際數據處理時,需要對零位信號時刻的圓光柵數據進行處理,因該光柵有零位信號輸出,計算速度時要進行合理的辨別方向和大小分析處理。
結語
本文采用高速單片機和CPLD組成望遠鏡伺服控制器,實現了圓光柵四倍頻細分電路、計數模塊以及電機PWM驅動控制信號產生,并用單片機實現了內模控制算法、LCD顯示和數據通信等功能。最終通過實驗驗證了該系統的可行性。
-
單片機
+關注
關注
6043文章
44621瀏覽量
638579 -
cpld
+關注
關注
32文章
1257瀏覽量
169636 -
C8051F120
+關注
關注
0文章
8瀏覽量
11971 -
伺服控制
+關注
關注
5文章
149瀏覽量
20626
發布評論請先 登錄
相關推薦
評論