引言
采用單片機為核心設計的云臺控制器在監(jiān)控場合能實現(xiàn)控制攝像機進行大范圍、寬角度的移動,以使攝像機能夠達到接近360°全景式攝像,且其在經(jīng)濟性、靈活性、擴展性和可維護性等方面都具有*的優(yōu)勢。
1、系統(tǒng)總體結(jié)構(gòu)
系統(tǒng)由以下幾部分構(gòu)成:①單片機:設計的核心,在軟件的配合下實現(xiàn)對鍵盤所輸入信息的識別,根據(jù)輸入信息向云臺中的步進電機發(fā)出指令,使其實現(xiàn)正/反轉(zhuǎn)、速度控制、程序控制等功能,并將步進電機的轉(zhuǎn)速通過數(shù)碼管顯示出來;②步進電機及驅(qū)動:負責云臺系統(tǒng)在豎直和水平兩個方向上的轉(zhuǎn)動,是系統(tǒng)的執(zhí)行部件;③鍵盤:外部信息的輸入器件,是控制人員指揮云臺系統(tǒng)工作的重要組成部分;④顯示器件:將步進電機的實時轉(zhuǎn)速顯示出來,以便控制人員根據(jù)轉(zhuǎn)速來確定對云臺的控制策略。
2、系統(tǒng)硬件設計
硬件電路按系統(tǒng)功能劃分為步進電機及其驅(qū)動模塊、單片機及其外圍電路、鍵盤及顯示電路共三部分,系統(tǒng)硬件功能框圖如圖一所示。
2.1步進電機控制及驅(qū)動模塊的選擇
驅(qū)動器接收到脈沖信號之后,驅(qū)動步進電機按設定的方向轉(zhuǎn)動一個固定的角度,它的旋轉(zhuǎn)是以固定的角度一步步運行的??赏ㄟ^控制脈沖個數(shù)來控制角位移量,達到準確定位的目的;同時可通過控制脈沖頻率來控制電機轉(zhuǎn)動的速度和加速度,達到調(diào)速的目的。所選步進電機為兩臺混合式步進電機57BYG250C,具有兩相/四相運行能力,四拍工作時步距角為1.8°,八拍為0.9°。步進電機驅(qū)動模塊型號為HB202A,具備4/8拍轉(zhuǎn)換控制信號、脫機(FREE)控制信號、輸入信號光電隔離等功能。設計中增加了一個脫機控制鍵,在出現(xiàn)故障或調(diào)試時將兩臺電機置于脫機狀態(tài),可手工調(diào)節(jié)步進電機。脫機控制鍵直接與單片機INT0相接,設INT0為zui高優(yōu)先級,以便在故障時能迅速實現(xiàn)脫機控制。由于不經(jīng)過8279而直接接在單片機上,則必須設置鍵盤去抖動電路,以免使單片機產(chǎn)生誤操作。
2.2鍵盤及顯示電路設計
鍵盤及顯示電路采用IN8279來實現(xiàn)。鍵盤采用N鍵循回方式,顯示為8位左端送入。8279外接2*8鍵盤和八位顯示器,采用編碼掃描方式。8279的IRQ和單片機的INT1相接,只要有鍵按下,就會申請中斷。當單片機外接12M晶振時,ALE為2M,而其與CLK相連,所以其分頻命令字為34H。通過8279所擴展的按鍵共16個,8個負責兩個方向上的步進電機的正反轉(zhuǎn),8個是功能鍵,分別負責步進電機的加減速、程序控制、步進電機的限位開關。
3、系統(tǒng)軟件設計
系統(tǒng)的軟件主要由初始化程序、鍵盤程序、速度控制程序、轉(zhuǎn)速檢測及顯示程序組成。除初始化程序外,其余程序均采用中斷工作方式,提高了CPU的利用率。
3.1系統(tǒng)初始化程序設計
先對單片機各中斷源進行初始化,使用五個中斷源:INT0、INT1、T0、T1、T2,INT0、T0、T1為高優(yōu)先級,INT1、T2為低優(yōu)先級。INT0申請中斷,則程序立即使步進電機進入脫機控制程序,步進電機不再受單片機的控制,且是電平觸發(fā),單片機始終執(zhí)行脫機程序,直至外部觸發(fā)信號由操作人員手工撤銷,系統(tǒng)才恢復正常工作。后設置T0、T1、T2的工作方式,并寫入計數(shù)處置,開啟這幾個中斷源的允許位,打開CPU中斷。
3.2鍵盤程序的設計
鍵盤鍵按下后產(chǎn)生中斷申請,單片機響應中斷后,開始執(zhí)行中斷程序。從8279內(nèi)部將產(chǎn)生的鍵值讀出,并根據(jù)鍵值來執(zhí)行相應的程序。CPU接收到該信息后,并不立即動作。為保證步進電機速度控制的穩(wěn)定性,先保存該鍵值所對應的命令,在T0/T1到達所設定的計數(shù)值之后,按一定的速度需要輸出脈沖時,再將該信息送至步進電機。
3.3步進電機的速度控制軟件設計
改變驅(qū)動模塊CP信號的頻率來改變步進電機的轉(zhuǎn)速,改變CP信號的頻率可以通過定時/計數(shù)器來實現(xiàn)。先給定時/計數(shù)器裝載初置,后使其開始運行,到達規(guī)定的時間后執(zhí)行中斷程序,此時可將產(chǎn)生CP信號的程序放在此中斷程序中,就達到了改變步進電機轉(zhuǎn)速的目的。S52內(nèi)部的T0和T1分別對應了兩個步進電機的速度控制,其工作過程如圖二所示。
3.4轉(zhuǎn)速檢測及顯示軟件設計
采用定時計數(shù)法,在一定的時間內(nèi)對單片機發(fā)送給步進電機的步進脈沖進行計數(shù)。設單片機每50ms檢測一次向步進電機所發(fā)出脈沖的個數(shù)N,N與轉(zhuǎn)速之間有如下關系:
只要將檢測到的脈沖數(shù)N乘以3,就可以得到每分鐘的轉(zhuǎn)速。50ms的定時由S52內(nèi)部的第三個定時/計數(shù)器T2來實現(xiàn)。
4、結(jié)束語
單片機構(gòu)成的云臺控制器不僅具有控制精度高、控制方式靈活、程序編制簡單、功耗低、可靠性高等特點,且某些新型單片機更具有在線編程功能,不需把單片機從工作環(huán)境中剝離出來即可進行程序更新,方便了軟件的維護,并可根據(jù)需要,由預先編制的程序自動對兩方向上的驅(qū)動電機進行協(xié)同控制。