基于單片機(jī)實(shí)現(xiàn)攝像機(jī)運(yùn)動控制系統(tǒng)的設(shè)計(jì)
3.2 鍵盤程序的設(shè)計(jì)
鍵盤鍵按下后產(chǎn)生中斷申請,單片機(jī)響應(yīng)中斷后,開始執(zhí)行中斷程序。從8279 內(nèi)部將產(chǎn)生的鍵值讀出,并根據(jù)鍵值來執(zhí)行相應(yīng)的程序。CPU 接收到該信息后,并不立即動作。為保證步進(jìn)電機(jī)速度控制的穩(wěn)定性,先保存該鍵值所對應(yīng)的命令,在T0/T1 到達(dá)所設(shè)定的計(jì)數(shù)值之后,按一定的速度需要輸出脈沖時(shí),再將該信息送至步進(jìn)電機(jī)。
3.3 步進(jìn)電機(jī)的速度控制軟件設(shè)計(jì)
改變驅(qū)動模塊CP 信號的頻率來改變步進(jìn)電機(jī)的轉(zhuǎn)速,改變CP 信號的頻率可以通過定時(shí)/ 計(jì)數(shù)器來實(shí)現(xiàn)。先給定時(shí)/ 計(jì)數(shù)器裝載初置,后使其開始運(yùn)行,到達(dá)規(guī)定的時(shí)間后執(zhí)行中斷程序,此時(shí)可將產(chǎn)生CP 信號的程序放在此中斷程序中,就達(dá)到了改變步進(jìn)電機(jī)轉(zhuǎn)速的目的。S52 內(nèi)部的T0 和T1 分別對應(yīng)了兩個(gè)步進(jìn)電機(jī)的速度控制,其工作過程如圖二所示。
3.4 轉(zhuǎn)速檢測及顯示軟件設(shè)計(jì)
采用定時(shí)計(jì)數(shù)法,在一定的時(shí)間內(nèi)對單片機(jī)發(fā)送給步進(jìn)電機(jī)的步進(jìn)脈沖進(jìn)行計(jì)數(shù)。設(shè)單片機(jī)每50ms 檢測一次向步進(jìn)電機(jī)所發(fā)出脈沖的個(gè)數(shù)N,N 與轉(zhuǎn)速之間有如下關(guān)系:
只要將檢測到的脈沖數(shù)N 乘以3,就可以得到每分鐘的轉(zhuǎn)速。50ms 的定時(shí)由S52 內(nèi)部的第三個(gè)定時(shí)/ 計(jì)數(shù)器T2 來實(shí)現(xiàn)。
4 結(jié)束語
單片機(jī)構(gòu)成的云臺控制器不僅具有控制精度高、控制方式靈活、程序編制簡單、功耗低、可靠性高等特點(diǎn),且某些新型單片機(jī)更具有在線編程功能,不需把單片機(jī)從工作環(huán)境中剝離出來即可進(jìn)行程序更新,方便了軟件的維護(hù),并可根據(jù)需要,由預(yù)先編制的程序自動對兩方向上的驅(qū)動電機(jī)進(jìn)行協(xié)同控制。
評論