《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 業(yè)界動態(tài) > 三軸慣性陀螺測試轉(zhuǎn)臺控制系統(tǒng)的研制

三軸慣性陀螺測試轉(zhuǎn)臺控制系統(tǒng)的研制

2008-08-19
作者:郎興華 張 偉 林 亨

  摘? 要: 介紹了三軸慣性陀螺測試轉(zhuǎn)臺的工作方式" title="工作方式">工作方式及其控制系統(tǒng)" title="控制系統(tǒng)">控制系統(tǒng)的功能,研究了以8051單片機(jī)為系統(tǒng)控制核心的轉(zhuǎn)臺控制器的硬件及軟件設(shè)計(jì)問題,提出了采用8051單片機(jī)及Intel 8254定時(shí)/計(jì)數(shù)器對步進(jìn)電機(jī)" title="步進(jìn)電機(jī)">步進(jìn)電機(jī)進(jìn)行開環(huán)位置及速度控制的解決方案。

  關(guān)鍵詞: 陀螺測試轉(zhuǎn)臺? 單片機(jī)? 步進(jìn)電機(jī)? 運(yùn)動控制

?

  導(dǎo)航系統(tǒng)是飛行器的重要組成部分。慣性陀螺儀表普遍應(yīng)用于各種類型的飛行器的導(dǎo)航系統(tǒng)中,它反映了飛行器的飛行姿態(tài)以及其它重要導(dǎo)航信息,保證了人為或自動駕駛儀對飛行器進(jìn)行控制的安全性與準(zhǔn)確性。為了確保慣性陀螺儀表工作的可靠性,需要對儀表進(jìn)行定期的校驗(yàn),用測試轉(zhuǎn)臺測試陀螺儀表是比較常用的方法。某機(jī)場所使用的測試轉(zhuǎn)臺大部分存在老化嚴(yán)重以及功能單一的問題,尤其是部分轉(zhuǎn)臺還是老式的手動轉(zhuǎn)臺,很難保證校準(zhǔn)精度,所以需要研制新型數(shù)字化的低成本的高精度陀螺測試轉(zhuǎn)臺及其控制系統(tǒng)。

1 陀螺測試轉(zhuǎn)臺及其控制系統(tǒng)介紹

  陀螺測試轉(zhuǎn)臺主要由高精度轉(zhuǎn)臺及其控制系統(tǒng)組成。三軸轉(zhuǎn)臺由ψ軸轉(zhuǎn)臺、θ軸轉(zhuǎn)臺、φ軸轉(zhuǎn)臺三個(gè)子系統(tǒng)組成,分別實(shí)現(xiàn)三個(gè)軸的轉(zhuǎn)動。各子系統(tǒng)由臺體、驅(qū)動系統(tǒng)、轉(zhuǎn)動系統(tǒng)以及執(zhí)行機(jī)構(gòu)組成。選用步進(jìn)電機(jī)作為各子系統(tǒng)驅(qū)動裝置,經(jīng)蝸輪蝸桿及齒輪減速后輸出旋轉(zhuǎn)運(yùn)動。轉(zhuǎn)臺的三個(gè)子系統(tǒng)中,θ軸轉(zhuǎn)臺固定在ψ軸轉(zhuǎn)臺的轉(zhuǎn)盤上,φ軸轉(zhuǎn)臺固定在θ軸轉(zhuǎn)臺的轉(zhuǎn)盤上。將被測試陀螺儀表固定于φ軸轉(zhuǎn)臺的轉(zhuǎn)盤上,按測試要求控制轉(zhuǎn)臺各軸進(jìn)行旋轉(zhuǎn),模擬飛機(jī)飛行中的各種姿態(tài),陀螺儀表則輸出相應(yīng)的姿態(tài)信息,比較轉(zhuǎn)臺的姿態(tài)與儀表的輸出即可校對儀表偏差。

  各子系統(tǒng)的運(yùn)轉(zhuǎn)由其控制器控制??刂破鞯闹饕δ苁墙邮詹僮魅藛T的控制指令,對控制面板輸入的控制參數(shù)進(jìn)行計(jì)算或轉(zhuǎn)換,變?yōu)椴竭M(jìn)電機(jī)的運(yùn)轉(zhuǎn)控制信號,輸出到測試轉(zhuǎn)臺;轉(zhuǎn)臺在控制器的控制下可工作在速度、轉(zhuǎn)角、自動等模式;轉(zhuǎn)臺控制器能夠與上位計(jì)算機(jī)進(jìn)行串行通訊,并執(zhí)行上位計(jì)算機(jī)的控制指令。轉(zhuǎn)臺與控制器之間通過航空插頭連接起來,其傳輸?shù)男盘柊ú竭M(jìn)電機(jī)的驅(qū)動信號和慣性陀螺儀的反饋信號。

2 轉(zhuǎn)臺控制系統(tǒng)的硬件設(shè)計(jì)

  轉(zhuǎn)臺控制系統(tǒng)主要由面板控制模塊、控制面板及液晶顯示屏、各子系統(tǒng)軸控模塊、步進(jìn)電機(jī)驅(qū)動器和機(jī)箱、電源等組成,圖1為系統(tǒng)硬件組成示意圖。面板控制模塊和各子系統(tǒng)軸控模塊均采用Atmel AT89C52單片機(jī)作為控制核心。液晶屏采用SEIKO EPSON公司生產(chǎn)的SED1335液晶顯示屏及其控制電路,其顯示RAM具有字符和圖形顯示特區(qū),通過字符發(fā)生器不僅可以調(diào)用固化的160種點(diǎn)陣字符,還可以擴(kuò)展其它需要的字符。步進(jìn)電機(jī)驅(qū)動器采用RORZE公司的RD-023MS兩相步進(jìn)電機(jī)驅(qū)動器。

?

2.1 控制面板的管理

  面板控制模塊選用四片8255通用擴(kuò)展并口作為單片機(jī)與各子系統(tǒng)軸模塊和面板按鍵、指示燈之間的接口。單片機(jī)的P0口作為數(shù)據(jù)傳輸端口,P2口作為各8255的片選及端口選擇地址。與各子系統(tǒng)軸模塊通訊的三片8255的A口和B口分別作為數(shù)據(jù)的發(fā)送口和接收口,C口提供握手信號。AT89C52單片機(jī)的串口" title="串口">串口通過1488-1489 RS232電平轉(zhuǎn)換電路與上位計(jì)算機(jī)的串口連接。

2.2 面板模塊與軸控模塊的通信

  面板模塊與軸控模塊之間通過兩片8255完成運(yùn)轉(zhuǎn)參數(shù)和狀態(tài)信息的傳遞。圖2所示為軸控模塊8255與面板模塊8255的接口電路示意圖。電路中使用了RS觸發(fā)器74LS74,通過發(fā)送、查詢、接收、置位等方式,控制數(shù)據(jù)在兩片8255之間傳輸。觸發(fā)器1的輸出信號Q1作為面板模塊8255向軸控模塊8255傳送數(shù)據(jù)的狀態(tài)標(biāo)志位,當(dāng)Q1為“1”時(shí)表示面板模塊所要傳送的數(shù)據(jù)已經(jīng)準(zhǔn)備好,為“0”時(shí)表示數(shù)據(jù)已被軸控模塊接收或數(shù)據(jù)未到達(dá)狀態(tài)。觸發(fā)器1由面板模塊8255的C0和軸控模塊8255的C4共同控制,由面板8255的C4和軸控模塊8255的C0查詢Q1的狀態(tài)。同理,觸發(fā)器2控制由軸控模塊8255發(fā)送到面板模塊8255的數(shù)據(jù),Q2的輸出值表示數(shù)據(jù)傳送的狀態(tài)。

?

2.3 步進(jìn)電機(jī)脈沖產(chǎn)生及控制電路

  系統(tǒng)采用8254定時(shí)/計(jì)數(shù)器產(chǎn)生控制步進(jìn)電機(jī)運(yùn)轉(zhuǎn)的方波脈沖,并對輸出脈沖進(jìn)行計(jì)數(shù)。將8254的計(jì)數(shù)器0設(shè)定在方波發(fā)生器工作方式,計(jì)數(shù)器2設(shè)定在計(jì)數(shù)器方式。圖3為用8254分頻" title="分頻">分頻產(chǎn)生控制脈沖的原理圖。由AT89C52內(nèi)部定時(shí)/計(jì)數(shù)器2產(chǎn)生的方波脈沖送入8254計(jì)數(shù)器0進(jìn)行分頻并輸出控制脈沖。計(jì)數(shù)器2對輸出的脈沖進(jìn)行計(jì)數(shù)。當(dāng)脈沖數(shù)與計(jì)數(shù)器2的計(jì)數(shù)值相等時(shí), 計(jì)數(shù)器2的輸出端產(chǎn)生電平變化,并被AT89C52的P1.1口監(jiān)測查詢。當(dāng)AT89C52的晶體振蕩頻率為24MHz時(shí),通過調(diào)節(jié)其RCAP2H和RCAP2L的值可使其定時(shí)/計(jì)數(shù)器2產(chǎn)生92Hz~6MHz的方波脈沖。通過對8254計(jì)數(shù)器0的數(shù)據(jù)寄存器寫入分頻值N,使其輸出相應(yīng)頻率的方波脈沖, 來控制步進(jìn)電機(jī)的轉(zhuǎn)速,計(jì)數(shù)器2通過記錄計(jì)數(shù)器1輸出的脈沖數(shù)量來控制電機(jī)的轉(zhuǎn)角。步進(jìn)電機(jī)的輸出轉(zhuǎn)速由下式?jīng)Q定:

?

  

?

  式中,步進(jìn)電機(jī)旋轉(zhuǎn)一周的步數(shù)為200;

?????i為轉(zhuǎn)臺傳動機(jī)構(gòu)減速比;

?????m為步進(jìn)電機(jī)驅(qū)動器細(xì)分?jǐn)?shù);

?????f0為輸入8254的脈沖源頻率;

?????N為分頻數(shù),即寫入8254計(jì)數(shù)器0的值。

  各子系統(tǒng)寫入8254計(jì)數(shù)器0的分頻值如表1所示。由于對8254計(jì)數(shù)器寫入的分頻值只能為正整數(shù),而通過計(jì)算得出的分頻值N不一定為正整數(shù),因此要對輸入8254計(jì)數(shù)器0的分頻值進(jìn)行四舍五入。產(chǎn)生的驅(qū)動脈沖頻率大小具有舍入誤差,其大小不超過:

?

?

  

  三軸的最小分頻值N=90(θ軸),轉(zhuǎn)速最大誤差為0.56%。

3 轉(zhuǎn)臺控制系統(tǒng)的軟件設(shè)計(jì)

3.1面板模塊軟件的設(shè)計(jì)

  面板模塊程序流程圖如圖4所示。上電開始后,軟件首先對AT89C52的內(nèi)部寄存器、液晶顯示屏以及8255并口進(jìn)行初始化。程序用一個(gè)字節(jié)作為系統(tǒng)工作狀態(tài)寄存器,寄存器中各標(biāo)志位分別記錄串口以及面板的鎖定及解鎖情況以及各運(yùn)轉(zhuǎn)軸的當(dāng)前運(yùn)轉(zhuǎn)方向和高低速狀態(tài)。液晶顯示初始化設(shè)定LCD的顯示邊界及范圍,以及清空液晶顯示模塊顯存。串行通訊的波特率定為9600bit/s。

?

  面板初始化完成后,軟件將同時(shí)檢測面板各按鍵信號并等待串口的中斷信號,當(dāng)檢測到一種信號后,將另一種信號屏蔽。在“ψ軸(或θ軸、φ軸)”鍵按下后,系統(tǒng)鎖定在面板工作方式,并關(guān)閉串口中斷。進(jìn)入面板工作方式后,軟件按流程執(zhí)行轉(zhuǎn)軸選擇、模式設(shè)定、參數(shù)設(shè)定、運(yùn)轉(zhuǎn)執(zhí)行等功能??刂泼姘灏存I包括ψ、θ、φ軸選擇鍵,運(yùn)轉(zhuǎn)模式選擇鍵,數(shù)字鍵,確定、停止鍵以及手動控制鍵。讀取控制面板按鍵信號后,將選取的運(yùn)轉(zhuǎn)軸、運(yùn)轉(zhuǎn)模式以及設(shè)定的速度角度等參數(shù)記錄于指定的寄存器中。待軟件檢測到“運(yùn)行”鍵按下后,將數(shù)據(jù)送入與相應(yīng)軸通訊的8255寄存器中,并將該8255的C0位置高,通知軸控模塊讀取。

  面板控制模塊與上位計(jì)算機(jī)之間制定了串行通訊協(xié)議。串行通訊指令采用ASCII碼的形式,上位計(jì)算機(jī)指令和控制器返回信息都以“$”字符開頭。面板模塊檢測到串口接收到字符“$”時(shí),則認(rèn)為上位計(jì)算機(jī)開始發(fā)送信息,信息以回車符結(jié)束?!啊纭焙竺媸寝D(zhuǎn)軸標(biāo)識符,用“X”或“Y”或“Z”表示,分別對應(yīng)ψ、θ、φ三個(gè)轉(zhuǎn)軸。轉(zhuǎn)軸標(biāo)識符后依次為速度、轉(zhuǎn)角、時(shí)間的ASCII碼表示值。程序?qū)⒔邮盏降纳衔豢刂浦噶钪械腁SCII碼參數(shù)值轉(zhuǎn)換為軸控模塊可識別的十六進(jìn)制參數(shù)值,并發(fā)送到相應(yīng)的軸控模塊。

3.2 軸控模塊軟件的設(shè)計(jì)

  子系統(tǒng)軸控模塊程序流程圖如圖5所示。程序開始后先初始化8255各I/O口和8254各計(jì)數(shù)器的工作方式。軟件通過查詢8255的C0口,檢測是否得到了由面板模塊發(fā)送來的數(shù)據(jù)。軸控模塊接收到面板模塊發(fā)來的指令后,將速度、角度數(shù)據(jù)經(jīng)計(jì)算轉(zhuǎn)換成為8254計(jì)數(shù)器0的分頻值N和計(jì)數(shù)器2所需要記錄的脈沖數(shù)。參數(shù)轉(zhuǎn)換完成后,程序根據(jù)設(shè)定指令進(jìn)入相應(yīng)運(yùn)轉(zhuǎn)模式。

當(dāng)各轉(zhuǎn)軸轉(zhuǎn)速達(dá)到或超過1°/s時(shí),為了使步進(jìn)電機(jī)在有外加負(fù)載及高速運(yùn)轉(zhuǎn)下不丟步,確保在高速啟動或停止時(shí)保持穩(wěn)定,程序?qū)Σ竭M(jìn)電機(jī)的高速啟動和停止進(jìn)行了加減速控制。程序采用勻加減速方法。由式(1)可知,分頻值N是角速度ω的反比例函數(shù),設(shè)定ω1=1°/s為加速過程的初始速度和減速過程的最終速度,并設(shè)定加減速過程中每隔10ms速度差值△ω=1°/s,所以有:

  

  即每經(jīng)過10ms延時(shí)循環(huán)送給8254定時(shí)器0的分頻值Ni就是將ω=1°/s對應(yīng)的分頻值N1除以當(dāng)前的循環(huán)次數(shù)得到的。程序?qū)⒚恳徊郊訙p速送入8254的Ni值保存到起始地址為2000H的內(nèi)存單元中,制成分頻值Ni的數(shù)表。在加速過程中,依次將分頻值Ni送入8254計(jì)數(shù)器0中,一直到從數(shù)表中讀入的分頻數(shù)不大于設(shè)定速度對應(yīng)的分頻值Nmax,并將Nmax作為最終分頻值為止。減速過程則與加速過程相反。

4 性能指標(biāo)及結(jié)論

  表2列出了控制器控制轉(zhuǎn)臺運(yùn)轉(zhuǎn)的模式及技術(shù)指標(biāo)。經(jīng)過調(diào)試運(yùn)行,測試轉(zhuǎn)臺能夠在規(guī)定模式下按要求運(yùn)轉(zhuǎn)。轉(zhuǎn)臺控制器交互性良好,每次輸入指令前液晶屏上都有信息提示相應(yīng)操作。各軸子系統(tǒng)在高速下經(jīng)加減速后均運(yùn)轉(zhuǎn)平穩(wěn),無丟步現(xiàn)象。同時(shí),能夠利用上位計(jì)算機(jī)的圖形界面設(shè)定運(yùn)轉(zhuǎn)指令參數(shù),并通過串口發(fā)送指令給轉(zhuǎn)臺控制器,控制轉(zhuǎn)臺運(yùn)轉(zhuǎn)。以51單片機(jī)為控制核心的三軸慣性陀螺測試轉(zhuǎn)臺及其控制系統(tǒng)的研制,不僅使測試設(shè)備成本降低,而且在測試功能、測試指標(biāo)及測試精度上均滿足了儀表校驗(yàn)的要求。

?

?

參考文獻(xiàn)

1 周海濤.三位陀螺測試轉(zhuǎn)臺控制器研制[學(xué)士學(xué)位論文]. 北京:清華大學(xué),2002

2 何立民.MCS-51系列單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì).北京:北京航空航天大學(xué)出版社,1990

3 余永權(quán).ATMEL89系列單片機(jī)應(yīng)用技術(shù).北京:北京航空航天大學(xué)出版社,2002

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。