《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于DSP和FPGA的經緯儀控制系統(tǒng)設計
基于DSP和FPGA的經緯儀控制系統(tǒng)設計
來源:電子技術應用2010年第7期
李金洪1,2,楊小軍1
1.中國科學院西安光學精密機械研究所,陜西 西安710119;2.中國科學院研究生院,北京100039
摘要: DSP和FPGA組成的伺服控制系統(tǒng)能夠滿足復雜的控制算法要求。通過對TI公司的DSP控制芯片TMS320F2812和ALTERA公司的FPGA芯片EP1C3T144的功能和特點分析,給出了一種基于DSP和FPGA的光電經緯儀伺服控制電路的設計方案。增加了可靠性和精度。
中圖分類號: TP879
文獻標識碼: A
文章編號: 0258-7998(2010)07-0048-04
The electro-optical theodolite control system design based on DSP and FPGA
LI Jin Hong1,2,YANG Xiao Jun1
1.Xi′an Institute of Optics and Precision Mechanics of CAS , Xi′an 710119,China;2.Graduate School of the Chinese Academy of Sciences,Beijing 100039,China
Abstract: The servo control system based on DSP and FPGA can complete complex controlling arithmetic in short time. By analyzing the functions and traits of DSP chip TMS320F2812 and FPGA chip EP1C3T144, an electro-optical theodolite servo control system based on DSP and FPGA was designed, which increased reliability and precision.
Key words : electro-optical theodolite;servo tracking system;DSP;FPGA

    光電經緯儀作為一種高精度的空間位置測量設備,被廣泛應用于海、陸、空武器測試靶場及天文觀測和武器引導控制系統(tǒng)。它利用激光、紅外、電視、雷達等探測器獲得運動目標在其視場內與視場中心的偏差,再將它傳輸給伺服跟蹤系統(tǒng)進行校正跟蹤,使經緯儀瞄準該目標并引導其他跟蹤設備,或者根據激光測距和經緯儀本身的位置數據計算出運動目標的精確軌跡[1-2]。目前,隨著飛機、武器系統(tǒng)及測量系統(tǒng)的發(fā)展,安裝可靠、靈活、輕型的光電跟蹤設備已非常必要。采用嵌入式系統(tǒng),尤其是基于DSPFPGA的嵌入式模塊,可以充分利用其自身優(yōu)點進行小型化、低功耗和高可靠性的系統(tǒng)設計。本文通過對光電經緯儀的伺服跟蹤系統(tǒng)研究,設計了一種基于DSP和FPGA的光電經緯儀伺服跟蹤系統(tǒng)。
1 硬件平臺構造
    目前經緯儀伺服跟蹤系統(tǒng)主要基于PC/104結構,具體結構如圖1所示。它是通過引導主控計算機對運動目標完成捕獲跟蹤功能。在實際的伺服系統(tǒng)應用中,要在PC104上疊加多塊控制電路板才能較好地運行。這樣就會增加體積并降低系統(tǒng)的可靠性,且提高精度也很困難。

    圖1所示的PC104伺服系統(tǒng)由多個功能模塊構成,主要包括主機模塊、顯示控制模塊、數據采集和控制模塊。選用不同種類和數量的功能模塊通過堆疊式的PC104總線構成小型化的嵌入式系統(tǒng),其可靠性隨著功能模塊的增多而降低,而且成本較高。
    針對PC104光電經緯儀控制系統(tǒng)的不足,設計了一種以TI公司的TMS320F2812和ALTERA公司的FPGA芯片EP1C3T144作為主控制器的伺服系統(tǒng)。TMS320-
F2812屬于32 bit的定點DSP,其作為主要的電機控制芯片有豐富的外設及快速的運算能力,與用于控制方面的其他單片機或DSP相比,擁有明顯的優(yōu)勢。能夠滿足高速跟蹤控制系統(tǒng)的要求,并能運行較復雜的控制算法,取得較好的控制效果。
    為了充分發(fā)揮TMS320F2812強大的控制功能,增加了FPGA芯片來協調DSP處理數據信號,使得多軸電機的控制及多接口實時通信變得很方便。ALTERA公司的EP1C3T144芯片應用廣泛,可靠性較高,與TMS320F2812芯片相協調,能夠獲得較高的性價比。
    基于DSP和FPGA的伺服控制系統(tǒng)主要由電源電路、DSP、FPGA核心處理器、串行通信接口、A/D轉換電路、功率轉換電路及一些輔助電路組成。電路結構如圖2所示。

1.1 通信接口
    DSP作為主控制芯片,通過各種通信接口與外設或FPGA聯系。DSP外部數據通過數據總線可以進入DSP內進行處理,也可以先送到FPGA內部進行預處理,處理完后通過總線傳給其他控制系統(tǒng)或DSP主控芯片進行后續(xù)處理。在系統(tǒng)的FPGA與DSP的數據交換主要采用DSP和FPGA之間的專用通信接口來處理。兩者間通信可采用標準串行通信接口SPI。SPI接口是一種真正意義上的同步串行通信接口,它在2個傳輸單元之間進行數據傳輸時采用的是同一個時鐘,可以達到很高的數據傳輸速率。
    數據總線采用16 bit的寬度,DSP和FPGA都能利用該總線與外部設備或是上位機進行大量的數據交換。TMS320F2812有2路SCI接口,可以傳輸各種控制指令和控制狀態(tài)信息??梢岳肧CI接口采用RS422差分信號進行控制指令的接收及控制狀態(tài)信息的反饋。
1.2 力矩電機控制電路
    力矩電機作為主要的控制對象在該系統(tǒng)中直接采用TMS320F2812的PWM接口進行控制。TMS320F2812共有16路PWM輸出接口供電機使用,通過控制PWM波的占空比來改變加在電機兩端的電壓,從而改變電機的轉速。DSP發(fā)出的PWM波不能直接驅動電機運行,須經過IGBT進行功率轉換。該系統(tǒng)采用了IR公司的IR2210作為功率芯片。它把驅動芯片和IGBT集成在一起,只要輸入TTL信號就可以實現功率驅動,而且具有完整的隔離及過流過壓保護功能。
1.3 信息顯示電路
    信息顯示模塊主要完成外來信號狀態(tài)顯示,如電機轉速、角度等信息以及控制系統(tǒng)的故障信息顯示。這對于系統(tǒng)的調試及自檢都比較方便。采用OLED(有機發(fā)光二極管顯示器)顯示信息。顯示模塊VGS12864E由行驅動器、列驅動器和OLED顯示屏組成。其主要控制電路通過FPGA的強大的邏輯控制功能實現,數據由DSP主控芯片或其他外設通信接口傳送給FPGA后,再由FPGA根據要求送到OLED中顯示。
1.4 功能擴展模塊
    由于FPGA擁有較多的I/O資源,因此便于擴展功能。如圖2所示,FPGA可以協助DSP完成數據采集功能。這樣由DSP和FPGA組成的系統(tǒng)可以同時采集多路信號,其中DSP芯片集成的12 bit A/D轉換電路主要采集精度不太高的信號,采樣后直接送入DSP內部進行處理。對于高精度的信號采樣則通過FPGA外擴采樣電路完成,并在FPGA內部進行信號的前期處理,處理后的信號可以通過與DSP的通信接口傳送給DSP使用,也可以直接送到信息顯示模塊上顯示,以方便調試。FPGA增加了故障提示電路,能把系統(tǒng)內發(fā)生的故障轉換成相關量送給外部設備判斷處理。同時FPGA增加了外部中斷接口,可以讓多個外設信號接入FPGA,然后才分時送給DSP進行處理,這樣能充分利用系統(tǒng)資源,實現多路信號實時處理。
2 軟件結構設計
2.1 FPGA的硬件編程設計

    FPGA作為一種硬件可編程芯片,主要采用原理圖加硬件編程語言Verilog或是VHDL來完成。最頂層采用原理圖連接方式將底層功能模塊連接起來,底層采用硬件編程語言構建功能模塊電路。由于VHDL相對于Verilog編程語言更嚴密,格式更規(guī)范,所以在本文設計的系統(tǒng)中,采用VHDL進行FPGA的編程。底層模塊按功能主要分為以下幾個模塊:地址譯碼模塊、中斷管理模塊、I/O管理模塊、信息顯示模塊、A/D采樣模塊、通信模塊。FPGA內部組成如圖3所示。

    地址譯碼的主要功能是將DSP輸入的外部地址信號進行譯碼后送給FPGA的I/O管理模塊,管理FPGA的編碼器信號接收和A/D信號采集。在該系統(tǒng)中把DSP的XINFF Zone 0區(qū)分配給FPGA使用。DSP分配給FPGA的地址空間,通過譯碼電路處理模塊進行再分配和再擴充后分配給FPGA的其他外設使用。這樣DSP可以間接控制FPGA的信息顯示模塊、外部中斷等資源。
    I/O管理模塊主要負責各種數字量輸入輸出以及特定信號的狀態(tài)設置。I/O模塊連接FPGA的主要外設,以接收外設的信息并給外設輸出一定的控制命令。中斷管理模塊功能是擴展DSP的外設中斷源,接收各種外設中斷并進行中斷排序,對多個中斷輸入進行優(yōu)先級控制和編碼。這樣可以使系統(tǒng)擁有多路信號的實時信號處理能力,并分擔DSP的調度管理任務,使DSP能利用更多的資源去進行復雜的位置、插值、數據濾波等算法處理。
2.2 DSP伺服控制算法實現
    為了提高控制系統(tǒng)的跟蹤精度,在硬件平臺基礎上構建了雙閉環(huán)反饋回路[3]。雙閉環(huán)反饋回路主要包括速度反饋和位置反饋回路。位置反饋信息主要通過光電編碼器完成。光電編碼器獲取位置后通過RS422接口直接送給FPGA進行預處理,然后再通過與DSP通信通道送入DSP內部運算。速度信息由采樣電路進行離散化后送入DSP內部運算??刂葡到y(tǒng)原理如圖4所示。

    伺服控制原理是把脫靶量或數引位置與系統(tǒng)的實際位置進行相減得到誤差量,把誤差量送給位置校正環(huán)節(jié)進行放大,然后把位置信號輸出與經過調節(jié)器后的速度前饋補信號相加作為速度校正環(huán)節(jié)的輸入信號,再通過速度校正環(huán)節(jié)處理。系統(tǒng)根據速度回路的輸出信號對PWM進行脈寬調制。最后把DSP輸出的PWM送入功率轉換電路進行處理后送入電機執(zhí)行。這樣電機向誤差量變小的方向運動,直至達到控制精度為止。
    TMS320F2812屬于定點運算芯片,在編程進行伺服控制時需要浮點運算的算法,此時,要進行一定的處理[4-5]。TI公司提供了用于定點DSP仿真實現浮點運算的算法庫文件IQmath.h[6],調用該文件可以很好地將伺服運算程序移到F2812中運行,并保證了一定的精度。對多個電機的控制盡量采用中斷方式工作,以降低DSP的開銷,提高實時性。算法中的常用中間變量盡量分配到0等待的SRAM存儲空間上運行,這樣可以提高程序讀寫數據的速度,提高算法的運行效率。程序流程圖如圖5所示。

    伺服控制算法通過速度反饋和位置反饋來實現,速度反饋算法和位置反饋算法通過中斷方式完成[7]。這樣可以提高DSP實時處理能力。
2.3 仿真實驗結果與分析
    基于DSP和FPGA的伺服跟蹤控制的正弦仿真結果如圖6所示。

    從圖6可以看出,控制系統(tǒng)的控制性能較好,其穩(wěn)態(tài)誤差較小。仿真結果表明,基于DSP和FPGA的跟蹤控制系統(tǒng)有效、可行。
    光電經緯儀為了提高跟蹤精度,對伺服控制系統(tǒng)有較高要求,并采用復雜的控制算法來實現精度要求,基于DSP和FPGA組成的伺服控制系統(tǒng)是一個效率很高的系統(tǒng),有較大的發(fā)展?jié)摿?。隨著光電經緯儀的發(fā)展,傳統(tǒng)的基于PC104的控制系統(tǒng)已很難滿足要求,升級成本也很高,DSP和FPGA構成的控制系統(tǒng)可以替代PC104系統(tǒng)。本文設計的經緯儀跟蹤系統(tǒng)通過實驗測試表明具有較好的效果,但對DSP和FPGA的協調處理還有些不足,系統(tǒng)的升級優(yōu)化還有較大的空間。
參考文獻
[1] 何照才.光電測量[M].北京:國防工業(yè)出版社,2002.
[2] 王建立.光電經緯儀電視跟蹤、捕獲快速運動目標技術的研究[D].中科院長春光學精密機械與物理研究
所,2002.
[3] 盧京潮.自動控制原理[M].西安:西北工業(yè)大學出版社,2004.
[4] 孫麗明.TMS320F2812原理及其C語言程序開發(fā)[M]. 北京:清華大學出版社,2008.
[5] 李佳武,張景森.定點DSP芯片TMS320F2812實現快速算法應用[J].國外電子元器件,2005(3):27-30.
[6] IQmath Library Module  user′s Guide C28x Foundation Software(Rev.D).Texas Instruments,2001.
[7] 李興紅,張淑梅,續(xù)志軍,等.基于TMS320F2812的跟蹤伺服系統(tǒng)[J].微計算機信息,2007(23):147-149.

此內容為AET網站原創(chuàng),未經授權禁止轉載。