紀留利 中航工業飛機起落架有限責任公司 燎原分公司 陜西 漢中 723200
二維坐標儀控制器的設計
紀留利 中航工業飛機起落架有限責任公司 燎原分公司 陜西 漢中 723200
二維坐標儀控制器的硬件結構相對比較簡單,核心部分是軟件的實現。因此本文主要從軟件角度論述了二維坐標儀控制器具體實現方法。運用運動控制函數實現了單片機開發步進電機二維運動方法的具體控制;介紹了部分子程序的實現方法。該二維運動控制器的樣品已經研制出來,經過嚴格實際測試,達到了設計要求。
二維坐標儀控制器;運動控制器;單片機
two-dimensional coordinate instrument controller ; motion controller;single chip microcomputer
實現四位數碼顯示管按照要求顯示相應的坐標。4*4鍵盤能按照鍵盤功能表的設計單獨運行或同時運行控制兩個步進電機能實現單獨或同時運行。根據逐點比較法直線和圓弧補的基本原理設計相應的軟件。在此控制系統中,要用單片機及其他外圍電路控制步進機在平面坐標內的運動。例如圖1,畫一個圓,則可以用這個圓心為原點建立一個局部坐標系。剛開始工作時,使平臺從機器原點移動至工件原點,然后以OmA為半徑畫圓。圖4-1正常工作時,平臺移動都在工件坐標系內移動。一個完整的運動過程結束時,應使平臺移回機器原點,以便處理下一個工件。

圖1 運動系統二維坐標系
本系統軟件設計采用匯編語言。在設計系統的總流程中思路比較簡單,但在子程序設計中卻相當復雜。系統軟件主程序流程圖如圖2所示:程序開始后,首先要對電機驅動模塊等進行初始化,然后判斷設置鍵或方式鍵是否按下,以執行設置或幾種方式。

圖2系統軟件主程序流程
3.1 直線及圓弧的程序設計
畫直線與畫圓弧經常使用的是逐點比較法。逐點比較法是一種逐點計算、判別偏差并逼近理論軌跡的方法,逐點比較法要完成如下四個工作節拍:
1)偏差判別:判別當前位置相對于給定輪廓的偏離情況,以此決定進給方向。
2)進給控制:根據偏差判別結果,控制相對于工件輪廓進給一步,即向給定的輪廓靠攏,減小偏差。
3)新偏差計算:由于再進給后改變了位置,因此應計算出當前位置的新偏差,為下一次偏差判別做準備。
4)終點判別:判斷是否已到達被加工輪廓的終點,若已到達終點,則停止插補,若還未到達終點,在繼續插補。如此不斷循環進行這四個節拍就可以加工出所要求的輪廓。
3.2 鍵盤的程序設計
一個完善的鍵盤控制程序應具備以下功能:檢測有無按鍵按下,并采取硬件或軟件措施,消除鍵盤按鍵機械觸點抖動的影響。有可靠的邏輯處理方法。每次只處理一個按鍵,其間對任何按鍵的操作對系統不產生影響,且無論一次按鍵時間有多長,系統僅執行一次按鍵功能程序。準確輸出按鍵值(或鍵號),以滿足跳轉指令要求。
鍵盤掃描程序一般應包括以下內容:
判別有無按鍵按下。鍵盤掃描取得閉合鍵行、列值。判斷閉合鍵是否釋放,如沒釋放則繼續等待。將閉合鍵鍵號保存,一個完整的鍵盤程序設計流程圖如圖3所示。

圖3 鍵盤程序流程圖
3.3 顯示的程序設計
程序本身并無復雜之處,需要注意的是七段碼的取值,因為七段數碼管有共陽極及共陰極之分。共陰極是高電平時有效輸入(所以在C51單片機要使發光二極管點亮,數碼管是共陽性的就要讓I/O口的電位變為低電位,如果是共陰極的就是合I/O口的電位變為高電位),因有些不同的器件會有不同的數碼值。另外引腳信號與碼位的對應關系也會影響碼值,即引腳可以由高到低排列(7-1),也可以由低到高排列(1-7)。
3.4 步進電機的控制程序設計
在步進電機控制軟件中必須解決的一個重要問題,就是及時產生一個如圖4所示的周期性脈沖序列。從圖中可以看出,脈沖是用周期,脈沖高度,接通與斷開電源的時間表示。對于一個數字線來說,在常用的接口電路中,所用電平多為0~5V。接通與斷開時間可用延時的辦法控制。但由于步進電機的步進是需要一定時間的,所以在送一高脈沖后,需要延長一段時間,以使步進電機達到指定的位置。由此可見,在采用單片機的步進電機開環系統中,控制系統的CP脈沖的頻率或者換向周期實際上就是控制步進電機的運行速度。延時方法是在每次換向之后調用一個延時子程序,待延時結束后再次執行換向,這樣周而復始就可發出一定頻率的CP脈沖或換向周期。延時子程序的延時時間與換向程序所用的時間和,就是C P脈沖的周期。
根據所選定的步進電機及控制方式,寫出三相六拍控制方式的數學模型。

圖4 脈沖序列示意圖
以上為步進電機正轉時的控制順序及數學模型。如果按上述逆順序進行控制,則步進電機將反方向轉動。由此可見,所謂步進電機的方向控制,實際上就是按照某一控制方式所規定的順序發送脈沖序列,達到控制步進電機的目的。
步進電機程序設計的主要任務是:判斷旋轉方向;按順序傳送控制脈沖;判斷所要求的控制步數是否傳送完畢。三相六拍步進電機的控制程序如圖5。

圖5 驅動子程序流程圖
本系統主要以單片機(AT89C51)為主要控制、計算芯片。在設計過程中,力求硬件電路簡單,我們可以看到雖然算法和程序都非常復雜,但它省了很多的硬件電路。在調試過程中,很好的驗證了設計方案的可行性。
[1]劉守義.單片機應用技術[M].西安電子科技大學出版社.2 0 0 2
[2]孫育才.ATMEL新型AT8951系列單片機及其應用[M].清華大學出版社.2 0 0 5.0 1
[3]李秉操.單片機接口技術及其在單片機的應用[M].陜西電子編輯部.1 9 9 3
Two Dimensional Coordinate Controller Design
Ji Liu li
AVIC LANDING-GEAR LAMC Hanzhong, Shaanxi 723200
two-dimensional coordinate controller hardware structure is relatively simple, is the core part of the realization of the software. Therefore, this article mainly from the software was discussed. The two-dimensional coordinate instrument controller realization method. Application of motion control function of the realization of the development of SCM stepper motor motion method specific control. Introduces some subroutines realization method. The two-dimensional motion controller samples has been developed, to undergo a rigorous testing, has achieved the design requirements.
10.3969/j.issn.1001-8972.2011.16.079
作者簡歷
紀留利 1972年出生。籍貫:安徽蒙城。本科。
單位:陜西燎原機械有限公司。