大學(xué)畢業(yè)論文--基于單片機(jī)的室內(nèi)云臺(tái)運(yùn)動(dòng)控制電路_第1頁
大學(xué)畢業(yè)論文--基于單片機(jī)的室內(nèi)云臺(tái)運(yùn)動(dòng)控制電路_第2頁
大學(xué)畢業(yè)論文--基于單片機(jī)的室內(nèi)云臺(tái)運(yùn)動(dòng)控制電路_第3頁
大學(xué)畢業(yè)論文--基于單片機(jī)的室內(nèi)云臺(tái)運(yùn)動(dòng)控制電路_第4頁
大學(xué)畢業(yè)論文--基于單片機(jī)的室內(nèi)云臺(tái)運(yùn)動(dòng)控制電路_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

11成都工業(yè)學(xué)院畢業(yè)設(shè)計(jì)(論文)設(shè)計(jì)(論文)題目: 基于單片機(jī)的室內(nèi)云臺(tái)運(yùn)動(dòng)控制電路系咅B(yǎng)名稱: 機(jī)電工程系 專 業(yè): 數(shù)控技術(shù)專業(yè) 班 級(jí): 學(xué)生姓名: 學(xué) 號(hào): 指導(dǎo)教師: O一二年6月摘要論文在分析了云臺(tái)結(jié)構(gòu)和控制的而要求上,設(shè)計(jì)了以AT89C52單片機(jī)為控制器的云臺(tái)控制系統(tǒng),同時(shí)通過RS-232總線的串口通信實(shí)現(xiàn)與PC機(jī)之間的通信。改控制系統(tǒng)有單片機(jī)的控制模塊、鍵盤模塊、遠(yuǎn)程控制模塊組成,并進(jìn)行相應(yīng)的軟件設(shè)計(jì)、調(diào)試和仿真。關(guān)鍵字:AT89C52;云臺(tái)控制;步進(jìn)電機(jī);串口通信;仿真頁第1章引言1.1云臺(tái)安全監(jiān)控是隨著人們生活生產(chǎn)需求應(yīng)運(yùn)而生的一項(xiàng)安全技術(shù), 安防系統(tǒng)由前端、傳輸、信息處理/控制/顯示/通信三大單元組成。云臺(tái)系統(tǒng)作為前端轉(zhuǎn)動(dòng)控制部件,在整個(gè)系統(tǒng)中起到非常重要的作用。攝像機(jī)云臺(tái)是一種安裝在攝像機(jī)支撐物上的工作平臺(tái),用于攝像機(jī)與支撐物之間的連接,同時(shí)它具有水平和垂直運(yùn)動(dòng)的功能,在云臺(tái)水平、垂直運(yùn)動(dòng)的同時(shí),它也帶動(dòng)攝像機(jī)做相同的運(yùn)動(dòng),這樣就可以通過控制云臺(tái)的運(yùn)動(dòng)來控制攝像機(jī)的運(yùn)動(dòng),它與攝像機(jī)配套使用能達(dá)到擴(kuò)大監(jiān)視范圍的目的,提高了攝像機(jī)的使用價(jià)值。云臺(tái)分為固定云臺(tái)和電動(dòng)云臺(tái),固定云臺(tái)適用于監(jiān)視范圍不大的情況,在固定云臺(tái)上安裝好攝像機(jī)后可調(diào)整攝像機(jī)的水平和俯仰的角度, 達(dá)到最好的工作姿態(tài)后只要鎖定調(diào)整機(jī)構(gòu)就可以了。電動(dòng)云臺(tái)適用于對大范圍進(jìn)行掃描監(jiān)視,它可以擴(kuò)大攝像機(jī)的監(jiān)視范圍。目前這兩類云臺(tái)廣泛應(yīng)用于各種場所,固定云臺(tái)適用于小范圍的監(jiān)視;電動(dòng)云臺(tái)適用于對大范圍進(jìn)行掃描監(jiān)視,它可以擴(kuò)大攝像機(jī)的監(jiān)視范圍。電動(dòng)云臺(tái)是由兩臺(tái)執(zhí)行電動(dòng)機(jī)來實(shí)現(xiàn),電動(dòng)機(jī)接受來自控制器的信號(hào)精確地運(yùn)行定位。在控制信號(hào)的作用下,云臺(tái)上的攝像機(jī)既可自動(dòng)掃描監(jiān)視區(qū)域,也可在監(jiān)控中心值班人員的操縱下跟蹤監(jiān)視對象。步進(jìn)電機(jī)作為云臺(tái)的轉(zhuǎn)動(dòng)器件,它的工作可靠性直接影響了云臺(tái)的質(zhì)量。目前國內(nèi)外的云天控制技術(shù)系統(tǒng)已經(jīng)相當(dāng)?shù)某墒?,它給人們的生產(chǎn)生活帶來了極大的便利,為人們的生命財(cái)產(chǎn)安全提供了相當(dāng)大的保障。云臺(tái)系統(tǒng)已經(jīng)運(yùn)用到了生活的幾乎每一個(gè)場所,當(dāng)需要對某個(gè)地方進(jìn)行實(shí)時(shí)監(jiān)控時(shí),就可以很方便的運(yùn)用其代替人力,很大程度上降低了人力資源,并且還可以根據(jù)需要進(jìn)行遠(yuǎn)程監(jiān)控,這一點(diǎn)在生活中是及其有利的,它很大程度上節(jié)約了時(shí)間。目前市面上所生產(chǎn)的云臺(tái)控制器,大都采用一體化設(shè)計(jì),這種設(shè)計(jì)方法具有密封性能好、集成度高便于安裝等優(yōu)點(diǎn)。1.2單片機(jī)單片機(jī)是指一個(gè)集成在一塊芯片上的完整計(jì)算機(jī)系統(tǒng)。盡管它的大部分功能集成在一塊小芯片上,但是它具有一個(gè)完整計(jì)算機(jī)所需要的大部分部件: CPU內(nèi)部和外部總線系統(tǒng)。單片機(jī)是將中央處理器,隨機(jī)存儲(chǔ)器,只讀存儲(chǔ)器,定時(shí)器芯片和I/O接口電路集成于一個(gè)芯片上的微控制器。單片機(jī)以其價(jià)格低廉,功耗小,工作可靠,可編程等優(yōu)點(diǎn),得到應(yīng)用者的青睞。單片機(jī)是靠程序的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很多力氣才能做到的, 有些則是花大力氣也很難做到的。單片機(jī)通過編寫的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性。單片機(jī)所具有的特占:八、、?高集成度,體積小,高可靠性控制功能強(qiáng)低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品易于擴(kuò)展優(yōu)異的性價(jià)比目前單片機(jī)滲透到人們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能 IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。更不用說自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。1.3本設(shè)計(jì)完成的任務(wù)設(shè)計(jì)目的及原始數(shù)據(jù)像監(jiān)控系統(tǒng)目前已廣泛應(yīng)用于銀行、交通、學(xué)校、智能小區(qū)等場合,它進(jìn)一步提高了人們生產(chǎn)、生活的安全系數(shù)。在數(shù)字視頻監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)中,對云臺(tái)的方位控制是系統(tǒng)執(zhí)行的重要任務(wù)之一。云臺(tái)控制系統(tǒng)主要包括兩大功能:一是控制攝像機(jī)在上、下、左、右四個(gè)方向進(jìn)行運(yùn)動(dòng)以達(dá)到控制攝像方向的目的;二是控制攝像機(jī)進(jìn)行變焦、聚焦、光圈調(diào)整等動(dòng)作以保證圖像的清晰。基于上述兩大功能,結(jié)合應(yīng)用實(shí)際,利用單片機(jī)能夠?qū)崿F(xiàn)對云臺(tái)的準(zhǔn)確控制。通過綜合運(yùn)用所學(xué)知識(shí)以AT89C52為核心,設(shè)計(jì)一頂裝式云臺(tái)硬件控制電路,掌握單片機(jī)原理與接口技術(shù),培養(yǎng)學(xué)生對屬龍?jiān)O(shè)備控制系統(tǒng)的分析設(shè)計(jì)能力。設(shè)計(jì)指標(biāo)與動(dòng)能設(shè)計(jì)1、 云臺(tái)的載重:5kg?50kg2、云臺(tái)轉(zhuǎn)動(dòng)角度:可以實(shí)現(xiàn)水平轉(zhuǎn)動(dòng)角度 360°無限位連續(xù)旋轉(zhuǎn),垂直角度+30°?-90°云臺(tái)轉(zhuǎn)動(dòng)速度:10°/秒?150°秒3、 用戶能通過鍵盤設(shè)定云臺(tái)在任意兩點(diǎn)之間進(jìn)行低、中、高速水平和俯仰線掃描。4、 可米用主、從單片機(jī)控制方案5、 能由上位機(jī)通過RS232實(shí)現(xiàn)遠(yuǎn)程運(yùn)動(dòng)控制。6、 云臺(tái)運(yùn)動(dòng)有手動(dòng)工作方式和連續(xù)工作方式。手動(dòng)方式:利用按鈕對云臺(tái)的每一步運(yùn)動(dòng)進(jìn)行單獨(dú)控制。連續(xù)工作方式:云臺(tái)在原位時(shí),按下“自動(dòng)”按鈕,云臺(tái)自動(dòng)連續(xù)地執(zhí)行用戶設(shè)定的周期動(dòng)作進(jìn)行掃描;按下“停止”按鈕時(shí),云臺(tái)保持當(dāng)前狀態(tài),重新恢復(fù)后云臺(tái)按照停止前的運(yùn)動(dòng)繼續(xù)工作。第2章云臺(tái)2.1云臺(tái)概述攝像機(jī)云臺(tái)是一種安裝在攝像機(jī)支撐物上的工作平臺(tái),用于攝像機(jī)與支撐物之間的連接,同時(shí)它具有水平和垂直運(yùn)動(dòng)的功能,在云臺(tái)水平、垂直運(yùn)動(dòng)的同時(shí),它也帶動(dòng)攝像機(jī)做相同的運(yùn)動(dòng),這樣就能通過控制云臺(tái)的運(yùn)動(dòng)來控制攝像機(jī)的運(yùn)動(dòng),它與攝像機(jī)配套使用能達(dá)到擴(kuò)大監(jiān)視范圍的目的,提高了攝像機(jī)的使用價(jià)值。云臺(tái)的核心器件是步進(jìn)電機(jī),所以本設(shè)計(jì)的重點(diǎn)就是如何靈活的控制步進(jìn)電機(jī)的運(yùn)轉(zhuǎn),從而達(dá)到靈活的控制攝像機(jī)的目的。云臺(tái)可以按照運(yùn)動(dòng)功能、工作電壓、承載重量、安裝方式、使用環(huán)境等分類。2.1.1云臺(tái)內(nèi)部結(jié)構(gòu)全方位云臺(tái)內(nèi)部有兩個(gè)電機(jī),分別負(fù)責(zé)云臺(tái)的上下和左右各方向的轉(zhuǎn)動(dòng)。其工作電壓的不同業(yè)決定了該云臺(tái)的整體工作電壓,一般有交流 24V、交流220V、及直流24V。當(dāng)接到上下動(dòng)作電壓時(shí),垂直電機(jī)轉(zhuǎn)動(dòng),接到左右動(dòng)作電壓時(shí),水平電機(jī)轉(zhuǎn)動(dòng)。需要說明的是云臺(tái)都有水平、垂直的限位拴,云臺(tái)分別由兩個(gè)微動(dòng)開關(guān)實(shí)現(xiàn)限位功能。當(dāng)轉(zhuǎn)動(dòng)角度達(dá)到預(yù)先設(shè)定的限位時(shí),微動(dòng)開關(guān)動(dòng)作切斷電源,云臺(tái)停止轉(zhuǎn)動(dòng)。限位裝置可以位于云臺(tái)外部,調(diào)整過程簡單,也可以位于云臺(tái)內(nèi)部,通過外設(shè)的調(diào)整機(jī)構(gòu)進(jìn)行調(diào)整,調(diào)整過程相對復(fù)雜。但外置限位裝置的云臺(tái)密封性不如內(nèi)置限位裝置的云臺(tái)。室外云臺(tái)與室內(nèi)云臺(tái)大體一致,只是由于室外防護(hù)罩重量較大,使云臺(tái)的載重能力必須加大。同時(shí),室外環(huán)境的冷熱變化大,易遭到雨水或潮濕的侵蝕。因此室外云臺(tái)一般都沒有設(shè)計(jì)成密封防雨型。另外室外云臺(tái)還具有高轉(zhuǎn)矩和扼流保護(hù)電路以防止云臺(tái)凍結(jié)時(shí)強(qiáng)行啟動(dòng)而燒毀電機(jī)。在低溫的惡劣條件下還可以在云臺(tái)內(nèi)部加裝溫控型加熱器。2.1.2云臺(tái)的性能指標(biāo)(一) 云臺(tái)的轉(zhuǎn)動(dòng)速度云臺(tái)的轉(zhuǎn)動(dòng)速度衡量云臺(tái)檔次高低的重要指標(biāo)。 云臺(tái)水平和垂直方向是由兩個(gè)步進(jìn)電機(jī)驅(qū)動(dòng)的,因此云臺(tái)的轉(zhuǎn)動(dòng)速度也分為水平轉(zhuǎn)速和垂直轉(zhuǎn)速。由于載重的原因,垂直電機(jī)在啟動(dòng)和運(yùn)行保持時(shí)的扭矩大于水平方向的扭矩, 在加上實(shí)際監(jiān)控時(shí)對水平轉(zhuǎn)速的要求要高于垂直轉(zhuǎn)速, 因此一般來說云臺(tái)的垂直轉(zhuǎn)速要低于水平轉(zhuǎn)速。直流型云臺(tái)大都采用的是直流步進(jìn)電機(jī),具有轉(zhuǎn)速高、可變速的優(yōu)點(diǎn),十分適合需要快速捕捉目標(biāo)的場合。直流型云臺(tái)都具有變速功能,提供的電壓是直流0至36V之間的變化電壓。變速的效果由控制系統(tǒng)和解碼器的性能決定,以使云臺(tái)電機(jī)根據(jù)輸入的電壓大小做相應(yīng)速度的轉(zhuǎn)動(dòng)。(二) 云臺(tái)的轉(zhuǎn)動(dòng)角度云臺(tái)的轉(zhuǎn)動(dòng)角度尤其是垂直轉(zhuǎn)動(dòng)角度與負(fù)載(防護(hù)罩/攝像機(jī)/鏡頭總成)安裝方式有很大關(guān)系。云臺(tái)的水平轉(zhuǎn)動(dòng)角度一般都能達(dá)到 355°,因?yàn)橄尬凰?huì)占用一定的角度,但是出現(xiàn)少許的監(jiān)控死角。當(dāng)前的云臺(tái)都改進(jìn)了限位裝置使其可以達(dá)到360°甚至365°(有5°的覆蓋角度),以消除監(jiān)控死角。使用時(shí)可以根據(jù)現(xiàn)場的實(shí)際情況進(jìn)行限位設(shè)置。例如安裝在墻壁上的壁裝式,即使云臺(tái)具有365°的轉(zhuǎn)動(dòng)角度,實(shí)際上只需要監(jiān)視云臺(tái)正面的 180°角度,即使轉(zhuǎn)動(dòng)到后面的180°也只能看到墻壁,沒有實(shí)際監(jiān)控意義,因此壁裝式只需要監(jiān)視水平的180°的范圍即可,角裝式只需監(jiān)視270。即可。這樣避免云臺(tái)過多地轉(zhuǎn)動(dòng)到無需監(jiān)控的位置,也提供了云臺(tái)的使用效率。頂裝式云臺(tái)的垂直轉(zhuǎn)動(dòng)角度一般為+30°至-90。,側(cè)裝的垂直轉(zhuǎn)動(dòng)角度可以達(dá)到土180°,不過正常使用垂直轉(zhuǎn)動(dòng)角度再+20°至-90。即可。(三) 云臺(tái)的載重量云臺(tái)的最大負(fù)載是指垂直方向承受的最大負(fù)載能力。攝像機(jī)的重心(包括防護(hù)罩)到云臺(tái)工作面距離為50mm該重心必須通過云臺(tái)回轉(zhuǎn)中心,并且與云臺(tái)工作面垂直,這個(gè)中心即為云臺(tái)的最大負(fù)載點(diǎn),云臺(tái)的承載能力是以此點(diǎn)作為設(shè)計(jì)計(jì)算的基準(zhǔn)。如果負(fù)載位置安裝不當(dāng),重心偏離回轉(zhuǎn)中心,增大了負(fù)載力矩,實(shí)際的載重量將小于最大負(fù)載量的設(shè)計(jì)值。 因此云臺(tái)垂直轉(zhuǎn)動(dòng)角度越大,重心偏離也越大,相應(yīng)的承載重量就越小。云臺(tái)的載重量是選用云臺(tái)的關(guān)鍵,如果云臺(tái)載重量小于實(shí)際負(fù)載重量不僅會(huì)使操作功能下降,而且云臺(tái)電機(jī)、齒輪也會(huì)因?yàn)殚L時(shí)間超負(fù)荷而損壞。云臺(tái)的實(shí)際載重量可以從3Kg到50Kg不等,同一系列的云臺(tái)產(chǎn)品,側(cè)裝時(shí)的承載能力要大于頂撞,高速型的承載能力要小于普通型。(四)云臺(tái)使用環(huán)境指標(biāo)室內(nèi)使用的云臺(tái)的要求不高,云臺(tái)的使用環(huán)境的各項(xiàng)指標(biāo)主要針對室外使用的云臺(tái)。其中包括使用環(huán)境溫度限制、濕度限制、防塵防水的 IP防護(hù)等級(jí)。一般室外環(huán)境使用的云臺(tái)溫度范圍為-20C至+60C,如果使用在更低溫度環(huán)境下,可以在云臺(tái)內(nèi)部加裝溫控型加熱器。濕度指標(biāo)一般為95%f凝結(jié)。防塵防水的IP等級(jí)應(yīng)達(dá)到IP66以上。IP防護(hù)等級(jí)的高低反映了設(shè)備的密封程度,主要指防塵和液體的侵入。另外在實(shí)際使用中應(yīng)根據(jù)環(huán)境選擇使用相適合的材料和防護(hù)層,如鐵質(zhì)外殼不適合使用在潮濕和具有腐蝕性的環(huán)境中。2.1.3云臺(tái)電機(jī)電機(jī)是電動(dòng)云臺(tái)中非常重要的元器件之一,選用是否正確將直接影響電動(dòng)云臺(tái)的性能與價(jià)格。全方位電動(dòng)云臺(tái)需要兩個(gè)不同方位的旋轉(zhuǎn)自由度,所以都具有兩個(gè)相互獨(dú)立的傳動(dòng)機(jī)構(gòu)。電動(dòng)云臺(tái)的傳動(dòng)機(jī)構(gòu)主要是由蝸輪、蝸桿和齒輪組合而成,根據(jù)電機(jī)轉(zhuǎn)速,確定總傳動(dòng)比,然后依據(jù)傳動(dòng)裝置的總體布置,將傳動(dòng)比合理地分配到各級(jí)傳動(dòng)中去。合理分配傳動(dòng)比是設(shè)計(jì)傳動(dòng)機(jī)構(gòu)的一個(gè)重要環(huán)節(jié), 它將直接影響到傳動(dòng)裝置的外形尺寸、重量、潤滑條件和減速齒輪的中心距等。各級(jí)傳動(dòng)比分配的一般原則是:使各級(jí)傳動(dòng)的承載能力接近相等;使減速機(jī)構(gòu)能獲得最小的外形尺寸、重量;使傳動(dòng)零件的圓周速度降低。另外,選用微型變速箱的齒輪傳動(dòng),也可以減小體積、提高效率、減小噪聲。確定電動(dòng)云臺(tái)的最大負(fù)載,然后選用合適的電機(jī)。盡可能選用低壓電機(jī)。由于全方位電動(dòng)云臺(tái)是由垂直和水平兩部分獨(dú)立的傳動(dòng)機(jī)構(gòu)組的, 而垂直方向的傳動(dòng)機(jī)構(gòu)是主要承載機(jī)構(gòu),所以在設(shè)計(jì)時(shí)是以垂直方向的傳動(dòng)機(jī)構(gòu)作為主要承載機(jī)構(gòu)來設(shè)計(jì),而水平方向的傳動(dòng)機(jī)構(gòu)只受水平磨擦轉(zhuǎn)矩和電纜拖帶等所產(chǎn)生的轉(zhuǎn)矩影響。根據(jù)設(shè)計(jì)經(jīng)驗(yàn),水平方向所選用的電機(jī)功率一般為垂直方向的一半。2.2步進(jìn)電機(jī)在工業(yè)控制系統(tǒng)中,通常要控制機(jī)械部件的平移和轉(zhuǎn)動(dòng),這些機(jī)械部件的驅(qū)動(dòng)大多都采用交流電機(jī)、直流電機(jī)、和步進(jìn)電機(jī)。在中三種電機(jī)中,步進(jìn)電機(jī)最適合數(shù)字控制。本設(shè)計(jì)中單片機(jī)作為數(shù)字控制器件,因此在本系統(tǒng)中毫無疑問的選擇了步進(jìn)電機(jī)。如何運(yùn)用步進(jìn)電機(jī)無疑是單片機(jī)云臺(tái)控制系統(tǒng)中的重點(diǎn)。 因此需要詳細(xì)的了解步進(jìn)電機(jī)。

2.2.1步進(jìn)電機(jī)的工作原理步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將電脈沖信號(hào)轉(zhuǎn)變成角位移,實(shí)質(zhì)上是一種數(shù)字/角度轉(zhuǎn)換器。通俗一點(diǎn)講:當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度。它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^控制脈沖個(gè)數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的。步進(jìn)電機(jī)的轉(zhuǎn)子為多級(jí)分布,轉(zhuǎn)子上嵌有多相星型連接的控制繞組,由專門電源輸入脈沖信號(hào),輸出的角位移是斷續(xù)的,所以又稱為脈沖電動(dòng)機(jī)。步進(jìn)電機(jī)分三種:永磁式(PM,反應(yīng)式(VR和混合式(HB。永磁式步進(jìn)一般為兩相,轉(zhuǎn)矩和體積較小,步進(jìn)角一般為7.5度或15度;反應(yīng)式步進(jìn)一般為三相,可實(shí)現(xiàn)大轉(zhuǎn)矩輸出,步進(jìn)角一般為1.5度,但噪聲和振動(dòng)都很大;混合式步進(jìn)是混合了永磁式和反應(yīng)式的優(yōu)點(diǎn)。它又分為兩相和五相:兩相步進(jìn)角一般為1.8度而五相步進(jìn)角一般為0.72度。這種步進(jìn)電機(jī)的應(yīng)用最為廣泛。步進(jìn)電機(jī)區(qū)別于其他控制電機(jī)的最大特點(diǎn)是,它是通過輸入脈沖信號(hào)來進(jìn)行控制的,即電機(jī)的總轉(zhuǎn)動(dòng)角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由輸入脈沖的頻率決定。該步進(jìn)電機(jī)為一四相步進(jìn)電機(jī),采用單極性直流電源供電。只要對步進(jìn)電機(jī)的各相繞組按合適的時(shí)序通電,就能使步進(jìn)電機(jī)步進(jìn)轉(zhuǎn)動(dòng)。圖2-1是四個(gè)開關(guān)信號(hào)控制四相反應(yīng)式步進(jìn)電機(jī)工作原理示意圖。開始時(shí),開關(guān)SB接通電源,SASCSD斷開,B相磁極和轉(zhuǎn)子0、3號(hào)齒對齊,同時(shí),轉(zhuǎn)子的1、4號(hào)齒就和CD相繞組磁極產(chǎn)生錯(cuò)齒,2、5號(hào)齒就和DA相繞組磁極產(chǎn)生錯(cuò)齒。當(dāng)開關(guān)SC接通電源,SBSASD斷開時(shí),由于C相繞組的磁力線和1、4號(hào)齒之間磁力線的作用,使轉(zhuǎn)子轉(zhuǎn)動(dòng),1、4號(hào)齒和C相繞組的磁極對齊。而0、3號(hào)齒和A、B相繞組產(chǎn)生錯(cuò)齒,2、5號(hào)齒就和AD相繞組磁極產(chǎn)生錯(cuò)齒。依次類推,A、BCD四相繞組輪流供電,則轉(zhuǎn)子會(huì)沿著A、B、C、D方向轉(zhuǎn)動(dòng)。四相步進(jìn)電機(jī)按照通電順序的不同,可分為單四拍、雙四拍、八拍三種工作方式。單四拍與雙四拍的步距角相等,但單四拍的轉(zhuǎn)動(dòng)力矩小。八拍工作方式的步距角是單四拍與雙四拍的一半,因此,八拍工作方式既可以保持較高的轉(zhuǎn)動(dòng)力矩又可以提高控制精度。單四拍、雙四拍與八拍工作方式的電源通電時(shí)序與波形分別如圖 2-2a、b、TOC\o"1-5"\h\z缶百冃n―n―n— j—i 〔~~ic所示:nnn Li―l 1―l_c相_n_n_TL i―I i—ldib1nnnTjn_n_r~i i—i ra. 單四拍b.a. 單四拍b.雙四拍c八拍圖2-2步進(jìn)電機(jī)工作時(shí)序波形圖步進(jìn)電機(jī)的驅(qū)動(dòng)電路依據(jù)控制信號(hào)工作, 控制信號(hào)由單片機(jī)產(chǎn)生,完成以下三種功能:?控制換相順序通電換向這一過程稱為脈沖分配。對于四相步進(jìn)電機(jī)而言,其各相通電順序如圖2.4所示,通電控制脈沖必須嚴(yán)格按照這一順序分別控制 A、BC、DA、BC、D相的通斷。?控制步進(jìn)電機(jī)的轉(zhuǎn)向如果按給定方向的正序換相通電,步進(jìn)電機(jī)正轉(zhuǎn);如果按反序通電換相,步進(jìn)電機(jī)反轉(zhuǎn)。?控制步進(jìn)電機(jī)的速度如果給步進(jìn)電機(jī)發(fā)送一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)送一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步。兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)的越快。調(diào)整單片機(jī)發(fā)出的脈沖頻率,就可以對步進(jìn)電機(jī)進(jìn)行調(diào)速。2.2.2步進(jìn)電機(jī)主要技術(shù)指標(biāo)選擇步進(jìn)電機(jī)需要根據(jù)實(shí)際需要和技術(shù)指標(biāo)綜合考慮。 步進(jìn)電機(jī)只有在滿足額定的工作條件下,才可以正常工作。主要技術(shù)指標(biāo)有:工作電壓:即步進(jìn)電機(jī)工作所需要的工作電壓。繞組電流:只有繞組有電流時(shí),才能建立磁場,且不同相上電流的有無決定步進(jìn)電機(jī)的步進(jìn)。不同的步進(jìn)電機(jī),其額定繞組電流也不一樣。功率小的有幾百毫安,功率大的以安培計(jì)。步進(jìn)電機(jī)工作時(shí),應(yīng)使其工作在此電流下。轉(zhuǎn)動(dòng)力矩:轉(zhuǎn)動(dòng)力矩是指在額定條件下(電壓、電流),步進(jìn)電機(jī)的軸上所能產(chǎn)生的轉(zhuǎn)矩,單位通常為牛頓每厘米(N/cm)。轉(zhuǎn)動(dòng)力矩會(huì)隨轉(zhuǎn)動(dòng)的升高而下降,當(dāng)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)時(shí),電機(jī)各相繞組的電感將形成一個(gè)反向電動(dòng)勢,頻率越高反向電動(dòng)勢越大,在它的作用下,電機(jī)隨頻率或速度的增大而相電流減小,從而導(dǎo)致力矩下降。保持轉(zhuǎn)矩:保持轉(zhuǎn)矩是指步進(jìn)電機(jī)通電但是沒有轉(zhuǎn)動(dòng)時(shí),定子鎖住轉(zhuǎn)子的力矩。通常步進(jìn)電機(jī)在低速時(shí)的力矩接近保持轉(zhuǎn)矩。 由于步進(jìn)電機(jī)的輸出力矩歲轉(zhuǎn)速增大而不斷衰減,輸出功率也隨速度增大而變化,所以保持轉(zhuǎn)矩就成為了衡量步進(jìn)電機(jī)的重要參數(shù)。步進(jìn)角:步進(jìn)電機(jī)每走一步實(shí)際上就是轉(zhuǎn)子轉(zhuǎn)一個(gè)角度。不同的電機(jī),每步轉(zhuǎn)動(dòng)的角度不一樣。小的有0.5度每步、1.5度每步,大的到15度每步。在應(yīng)用中可根據(jù)用戶的需求選用。(5) 精度:一般步進(jìn)電機(jī)的進(jìn)度為步進(jìn)角的3?5%且不積累。米用細(xì)分技術(shù)可以提高電機(jī)的運(yùn)轉(zhuǎn)精度。細(xì)分技術(shù)實(shí)質(zhì)上是一種電子阻尼技術(shù),起主要目的是減弱或消除步進(jìn)電機(jī)的低頻振動(dòng),提高電機(jī)的運(yùn)轉(zhuǎn)精度只是細(xì)分技術(shù)的一個(gè)附帶功能。(6) 工作頻率:即步進(jìn)電機(jī)每秒鐘走的額定步數(shù)。由于步進(jìn)電機(jī)的走步實(shí)際上是轉(zhuǎn)子的機(jī)械運(yùn)動(dòng),不可能很快。例如,有的工作頻率為 500Hz就意味著每走一步需要2ms目前頻率高的可達(dá)10KHz但是總的來說步進(jìn)電機(jī)的速度是十分慢的。(7) 空載啟動(dòng)頻率:即步進(jìn)電機(jī)在空載情況下能夠正常啟動(dòng)的脈沖頻率,如果脈沖頻率高于該值,電機(jī)不能正常啟動(dòng),可能發(fā)生丟失或堵轉(zhuǎn)。在有負(fù)載的情況下,啟動(dòng)頻率應(yīng)更低。如果要是電機(jī)達(dá)到高速轉(zhuǎn)動(dòng),脈沖頻率應(yīng)該有加速過程,即啟動(dòng)頻率較低,然后按一定加速度升到所希望的高頻(電機(jī)轉(zhuǎn)速從低速到高速)。(8)激勵(lì)方式:以四相電機(jī)為例,驅(qū)動(dòng)它的激勵(lì)方式有 1相、2相、1-2相三種。1相激勵(lì)方式是指每一時(shí)刻4相中只有一相導(dǎo)通,步進(jìn)電機(jī)以此工作方式工作時(shí),溫升較高,電源功率功耗小,但是當(dāng)速度較高時(shí)容易產(chǎn)生失步; 2相激勵(lì)方式是指每一時(shí)刻4相中都有兩相導(dǎo)通,然后按4相的順序循環(huán);1-2相激勵(lì)方式是指驅(qū)動(dòng)時(shí)一相導(dǎo)通和兩相導(dǎo)通交替出現(xiàn)的。(9) 外表溫度:步進(jìn)電機(jī)溫度過高會(huì)使電機(jī)的磁性材料退磁,從而導(dǎo)致力矩下降乃至失步,因此電機(jī)外表允許的最高溫度應(yīng)取決于不同電機(jī)磁性材料的退磁點(diǎn)。第3章總體方案3.1云臺(tái)控制系統(tǒng)簡析云臺(tái)在任意位置,按下啟動(dòng)按鈕,云臺(tái)將依次完成向上一左行一向下一右行四個(gè)動(dòng)作,逆時(shí)針方向旋轉(zhuǎn)實(shí)現(xiàn)云臺(tái)一個(gè)周期的動(dòng)作。在轉(zhuǎn)動(dòng)的同時(shí)還可以手動(dòng)控制云臺(tái)。為了限制云臺(tái)轉(zhuǎn)動(dòng)的范圍,云臺(tái)的向上、左轉(zhuǎn)、向下和右轉(zhuǎn)動(dòng)作轉(zhuǎn)換靠限位開關(guān)來控制。本設(shè)計(jì)主要是設(shè)計(jì)云臺(tái)的轉(zhuǎn)動(dòng),并能按一定的要求動(dòng)作。起動(dòng)時(shí),云臺(tái)從原點(diǎn)開始按順序動(dòng)作,停止時(shí),云臺(tái)停在現(xiàn)行位置上,重新起動(dòng)時(shí),云臺(tái)按停止前的動(dòng)作繼續(xù)進(jìn)行。為滿足控制要求,云臺(tái)轉(zhuǎn)動(dòng)設(shè)置手動(dòng)方式和自動(dòng)工作方式兩種。(1) 手動(dòng)工作方式。利用按鈕對云臺(tái)的每一步進(jìn)行單獨(dú)控制,例如,按“向下”按鈕,云臺(tái)使攝像頭向下;按“向右”按鈕,云臺(tái)使攝像頭向右。(2) 連續(xù)工作方式。云臺(tái)在原位時(shí),按下“自動(dòng)”按鈕,云臺(tái)自動(dòng)連續(xù)的

執(zhí)行周期動(dòng)作。當(dāng)按下停止按鈕式,云臺(tái)保持當(dāng)前狀態(tài),重新恢復(fù)后云臺(tái)按停止前的動(dòng)作繼續(xù)進(jìn)行工作。3.2控制系統(tǒng)實(shí)現(xiàn)系統(tǒng)總體組成框圖如圖1所示,為保證控制的實(shí)時(shí)性及準(zhǔn)確性,采用了主、從單片機(jī)控制方案,其中主單片機(jī)主要負(fù)責(zé)實(shí)時(shí)接收來自于外部專用球形攝像機(jī)控制鍵盤發(fā)出的控制指令并進(jìn)行指令解釋,若是控制云臺(tái)運(yùn)動(dòng)的指令,則由主單片機(jī)將此指令轉(zhuǎn)發(fā)給從單片機(jī),由從單片機(jī)完成對云臺(tái)水平及俯仰兩軸的控制;若是控制攝像機(jī)的指令。從單片機(jī)功能相對簡單,主要完成對兩軸步進(jìn)電機(jī)速度及位置的控制并記錄當(dāng)前兩軸位置信息。存儲(chǔ)器顯示器水平電機(jī)水平光電開關(guān)—?Rs232存儲(chǔ)器顯示器水平電機(jī)水平光電開關(guān)—?Rs232Rs2-12主單片機(jī)<—?通信俯仰光電開關(guān)―?ii fRs232鍵盤 攝像機(jī)步進(jìn)電機(jī)驅(qū)動(dòng)器1從單片機(jī)? - 步進(jìn)電機(jī)驅(qū)動(dòng)器2俯仰電機(jī)圖1 系統(tǒng)組成框圖第4章系統(tǒng)硬件設(shè)計(jì)AT89C52單片機(jī)簡介單片機(jī)是將中央處理器,隨機(jī)存儲(chǔ)器,只讀存儲(chǔ)器,定時(shí)器芯片和I/O接口電路集成于一個(gè)芯片上的微控制器。ATME公司的89C52單片機(jī),是增強(qiáng)型RISC內(nèi)載Flash的單片機(jī),在芯片上的Flash存儲(chǔ)器附在用戶的產(chǎn)品中,可隨時(shí)編程,在線編程,使用戶的產(chǎn)品設(shè)計(jì)容易,更新?lián)Q代方便。89C52單片機(jī)采用增強(qiáng)的RISC結(jié)構(gòu),使其具有高速處理能力,在一個(gè)時(shí)鐘周期內(nèi)可執(zhí)行復(fù)雜的指令,每 MHz可實(shí)現(xiàn)1MIPS的處理能力。

89C52單片機(jī)工作電壓為2.7?6.0V,可以實(shí)現(xiàn)耗電最優(yōu)化。89C52的單片機(jī)廣泛應(yīng)用于計(jì)算機(jī)外部設(shè)備,工業(yè)實(shí)時(shí)控制,儀器儀表,通訊設(shè)備,家用電器,宇航設(shè)備等各個(gè)領(lǐng)域。4.1.1AT89C52AT89C52是一個(gè)低電壓、高性能COMS位單片機(jī),片內(nèi)含8Kbytes的可反復(fù)擦寫的Flash只讀程序存儲(chǔ)器(ROM和256bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATME公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn) MCS-51旨令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,功能強(qiáng)大的AT89C52單片機(jī)可為你提供許多復(fù)雜較系統(tǒng)控制應(yīng)用場合。AT89C52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫口線,AT89C52可以按照常規(guī)方法進(jìn)行編程,但不可以在線編程(S系列的才支持在線編程)。其將通用的微處理器和Flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲(chǔ)器可有效地降低開發(fā)成本。AT89C52有PDIP、PQFP/TQF及PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。圖 4-1所示為DIP封裝引腳圖。P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTRXD/P3.0TXD/P3.11NT0/R3.2

iNTI/P3.3T0/P3.4T1/P3.5WR/P3.6RD/P3.6XTAL2XTAL1匸匚匚匚匚匚匚匚匚匚匚匚匸匚LAT89C52vccP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/vpp

ale/prOG

pesnP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0圖4-1AT89C52DIP封裝引腳圖AT89C52各引腳功能AT89C52為40腳雙列直插封裝的8位通用微處理器,采用工業(yè)標(biāo)準(zhǔn)的C51內(nèi)核,在內(nèi)部功能及管腳排布上與通用的 8xc52相同,其主要用于會(huì)聚調(diào)整時(shí)的功能控制。功能包括對會(huì)聚主IC內(nèi)部寄存器、數(shù)據(jù)RAM及外部接口等功能部件的初始化,會(huì)聚調(diào)整控制,會(huì)聚測試圖控制,紅外遙控信號(hào)IR的接收解碼及與主板CPU通信等。主要管腳有:XTAL1(19腳)和XTAL2(18腳)為振蕩器輸入輸出端口,外接11.0592MHz晶振。RST(9腳)為復(fù)位輸入端口,外接電阻電容組成的復(fù)位電路。VCC(40腳)和VSS(20腳)為供電端口,分別接+5V電源的正負(fù)端。P0?P3為可編程通用I/O腳,其功能用途由軟件定義。VCC(40腳):接+5V電壓。GND(20腳):接信號(hào)地。RST(9腳):復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。ALE/PROG(30腳):當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對外輸出時(shí)鐘或用于定時(shí)目的。PSEN(29腳):程序儲(chǔ)存允許輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89s52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次 PSEN言號(hào)。EA/VPP(31腳):外部訪問允許。欲使CPU僅訪問外部程序存儲(chǔ)器(地址為0000H—FFFFH,EA端必須保持低電平(接地)。XTAL1(19腳):接外部晶振的一個(gè)引腳,且為輸入端。XTAL2(18腳):接外部晶振的另一個(gè)引腳,該引腳接地。P0口(39?32腳):雙向8位三態(tài)I/O口,在外接存儲(chǔ)器時(shí),與地址總線低8位及數(shù)據(jù)總線復(fù)用。P0可以驅(qū)動(dòng)8個(gè)LSTTL負(fù)載。P1口(1?8腳):具有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口,該接口輸出不包含高阻態(tài),輸出不能鎖存??梢则?qū)動(dòng)4個(gè)LSTTL負(fù)載。P2口(21?28腳):具有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口,在訪問外部存儲(chǔ)器時(shí),作為高8位地址總線??梢则?qū)動(dòng)4個(gè)LSTTL負(fù)載。P3口(10?17腳):具有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口,P3口的8個(gè)引腳還用于專門的功能一一復(fù)用雙功能口。它可以驅(qū)動(dòng)4個(gè)LSTTL負(fù)載。它作為第二功能使用時(shí),其各個(gè)引腳的功能如下:P3.0(10腳)RXD:串行口接收端P3.1(11 腳)TXD:串行口發(fā)送端P3.2(12腳)INT0:外部中斷0P3.3(13腳:外部中斷1P3.4(14腳)T0:定時(shí)/計(jì)數(shù)器0P3.6(16腳)WR:外部數(shù)據(jù)存儲(chǔ)器寫選通信號(hào)P3.7(17腳)RD:外部數(shù)據(jù)存儲(chǔ)器讀選通信號(hào)特殊功能寄存器:單片機(jī)內(nèi)含有兩個(gè)16位定時(shí)/計(jì)數(shù)器TO、T1。它們各自由兩個(gè)獨(dú)立的8位寄存器組成,分別為THOTLO、TH1、TL1,。TMOD用于控制定時(shí)/計(jì)數(shù)器的工作方式及4種工作模式,其中低4位為定時(shí)器TO的方式控制字,高4位為定時(shí)器T1的方式控制字。它的字節(jié)地址為89耳其各位的定義如下:GATEC/TM1M0GATEC/TM1MOGATE是選通門,當(dāng)GATE=1寸,只有INTO或INT1弓I腳為高電平且TR0或TR1置1時(shí),相應(yīng)的定時(shí)/計(jì)數(shù)器才被選通工作。C/T是計(jì)數(shù)器/定時(shí)器方式選擇位。MOWM1是操作模式選擇位。;TCON寄存器的高四位為定時(shí)/計(jì)數(shù)器TO、T1的控制寄存器和定時(shí)/計(jì)數(shù)溢出中斷標(biāo)志。;IE寄存器用于開放或屏蔽單片機(jī)各個(gè)中斷。;SCON?存器用于設(shè)置串口的工作方式和查詢接收、發(fā)送中斷產(chǎn)生標(biāo)志。4;SBUF串行數(shù)據(jù)緩沖器用于存放串口中預(yù)發(fā)送或接收的數(shù)據(jù),它由兩個(gè)獨(dú)立的寄存器構(gòu)成,一個(gè)發(fā)送緩沖器,一個(gè)接收緩沖器,他們公用一個(gè)地址。當(dāng)從SBUF取數(shù)據(jù)時(shí),訪問接收緩沖器,當(dāng)寫數(shù)據(jù)時(shí),訪問發(fā)送緩沖器。AT89C52串口通信單片機(jī)系統(tǒng)設(shè)計(jì)中,經(jīng)常需要使用串口與外部進(jìn)行通信,因此,串口通信部分是單片機(jī)功能模塊中極為重要的一部分。串口通信時(shí)通過串口來進(jìn)行的,串口不同于并口,它的數(shù)據(jù)和控制信息是一位接一位串行地傳送下去。與并口相比,雖然速度慢,但是傳送距離較并口會(huì)更長,因此常用于需要常距離通信而對速度又要求不高的場合。異步通信以幀的形式發(fā)送字符數(shù)據(jù),每一幀信息由起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位構(gòu)成。異步通信中,每傳輸一個(gè)字節(jié)就要使用起始位和停止位,因此傳輸速度有限,常用于低速場合。同步通信使用數(shù)據(jù)塊傳送信息,而不是字節(jié),省去了每個(gè)字節(jié)的起始位和停止位等數(shù)據(jù),提高了通信的速率。同步通信的每個(gè)數(shù)據(jù)塊的開始使用同步字符,使接受和發(fā)送同步。與異步通信相比,同步通信發(fā)送的數(shù)據(jù)量大、速度快,常用于傳輸速率要求較高的場合。AT89C52內(nèi)部的串口是一個(gè)標(biāo)準(zhǔn)的全雙工串口,支持四種工作方式。波特率是可變的,可由軟件設(shè)置。對89C52串口的訪問和設(shè)置是通過訪問其相關(guān)的特殊寄存器進(jìn)行的,與89C52串口相關(guān)的特殊寄存器共有3個(gè):SCONPCOI和SBUF串口控制寄存器SCON串口控制寄存器SCONR要用于設(shè)置串口的工作模式和串口中斷的查詢。其格式如下:D7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRISMO、SM1用于設(shè)置串口的工作方式SM2串口多機(jī)通信控制位。REN:允許串行接收控制。將其置為1時(shí)允許接收。TB8:用于設(shè)置串口工作方式2和方式3情況下要發(fā)送的第9位數(shù)據(jù),有軟件置位或復(fù)位。RB8:用于保存串口工作方式2和方式3情況下要接收到的第9位數(shù)據(jù)。TI:串口中斷發(fā)送標(biāo)志。當(dāng)串口數(shù)據(jù)發(fā)送完畢時(shí)置位 TI,同時(shí)向CPU發(fā)送串口中斷請求。RI:串口中斷接收標(biāo)志。當(dāng)串口數(shù)據(jù)接收到一個(gè)數(shù)據(jù)時(shí)置位TI,同時(shí)向CPU發(fā)送串口中斷請求。特殊功能寄存器PCON特殊功能寄存器PCONI有最高位與串口有關(guān),SMOP波特率選擇位,SMOD的設(shè)置可以影響波特率設(shè)置的精度。發(fā)送/接收緩沖器SBUF串口中的發(fā)送/接收緩沖器SBUF實(shí)際上共有兩個(gè),分別為發(fā)送緩沖器和接收緩沖器,他們在物理上是完全獨(dú)立的,因此可以同時(shí)進(jìn)行發(fā)送和接收。兩個(gè)緩沖器公用一個(gè)內(nèi)存地址99耳AT89C52中斷系統(tǒng)程序在執(zhí)行過程中,允許外部或內(nèi)部事件通過硬件中斷程序的執(zhí)行, 使其轉(zhuǎn)向出來外部或內(nèi)部事件的中斷服務(wù)中去,完成中斷服務(wù)程序后, CPU繼續(xù)與原來被中斷的程序,這樣的過程稱為中斷過程。能產(chǎn)生中斷的外部或內(nèi)部事件叫中斷源。1.中斷源80C52有6個(gè)中斷源,它們是:INTO:外部中斷0.當(dāng)IT0(TCON.0)=0時(shí),低電平有效;IT0(TCON.0)=1時(shí),下降沿有效。INT1:外部中斷1.當(dāng)IT1(TCON.2)=0時(shí),低電平有效;IT1(TCON.2)=1時(shí),下降沿有效。TF0:定時(shí)/計(jì)數(shù)器T0益處中斷。TF1:定時(shí)/計(jì)數(shù)器T1益處中斷。TF3:定時(shí)/計(jì)數(shù)器T2益處中斷。RX,TX:串行中斷2.中斷相關(guān)寄存器IE和IP51單片機(jī)有兩種中斷優(yōu)先級(jí),其中每一個(gè)中斷源的優(yōu)先級(jí)都可以有程序設(shè)定。中斷源的中斷要求能否得到響應(yīng),受允許中斷寄存器 IE中各位的控制。它們的優(yōu)先級(jí)由中斷優(yōu)先級(jí)寄存器IP的各位確定,同一優(yōu)先級(jí)內(nèi)的各中斷源同時(shí)要求中斷時(shí),以內(nèi)部的查詢邏輯來確定響應(yīng)次序。允許中斷寄存器IE的各位定義如下:MSB LSBEA——ET2ESET1EX1ET0EX0EA是總中斷允位。EA=0時(shí),禁止所有中斷;EA=1時(shí),則每個(gè)中斷源被允許還是被禁止,由各自的允許位確定;ET2:是定時(shí)器2中斷允許位。ET2=0,禁止定時(shí)器2中斷;ES:是串行口中斷允許位。ES=0禁止串行口中斷;ET1:是定時(shí)器1中斷允許位;EX1:是外部中斷1允許位;ET0是定時(shí)器0中斷允許位;EX0是外部中斷0允許位。中斷優(yōu)先級(jí)寄存器IP的各位定義如下:MSB LSB————PT2PSPT1PX1PT0PX0PT2:是定時(shí)器2中斷優(yōu)先級(jí)設(shè)定位;PS:是串行口中斷優(yōu)先級(jí)設(shè)定位;PT1:是定時(shí)器1中斷優(yōu)先級(jí)設(shè)定位;PX1:是外部中斷1優(yōu)先級(jí)設(shè)定位;PT0:是定時(shí)器0中斷優(yōu)先級(jí)設(shè)定位;PX0:是外部中斷0優(yōu)先級(jí)設(shè)定位。4.2單片機(jī)系統(tǒng)本設(shè)計(jì)的所用的單片機(jī)系統(tǒng)其實(shí)就是單片機(jī)最小系統(tǒng),所謂最小系統(tǒng)就是能是單片機(jī)正常工作的最少配置。本此設(shè)計(jì)的單片機(jī)系統(tǒng)由AT89C52單片機(jī)、復(fù)位電路、時(shí)鐘電路和電源電路組成,如圖4-2所示。

Xi二一CRYSTAL-PACKAQE-rCM--O3-CZI■ o _ti— Xi二一CRYSTAL-PACKAQE-rCM--O3-CZI■ o _ti— 苗 ,>XTAL1POO/ADOPO-1/AD1PO.27AD2XTAL2PO3/AD3PO-4/A&4P0-5/AD5POJ5/AD0PO_7/ACi7P20/A6P2.1/A9P2.2/A10PSENP2.3/A11ALEP2.4/A12EAP2.S/A13P2.6/A14P2.7/A15田_0/T2P3.0/RXDP1P31JTXDFM-2P3.2ANTQP1-3P3.3j1NT1P1.4P3.4/T0Pd_5pasmPI-SP3.6A>VRPI.7t9AT6SC52FRd<3ftAM=4extRux.CLOCK=11.a53^MI-IZr.?3a382Sl―,.訊,33圖4-2單片機(jī)最小系統(tǒng)4.2.1復(fù)位電路復(fù)位操作完成單片機(jī)片內(nèi)電路的初始化,是單片機(jī)從一種確定的狀態(tài)開始運(yùn)行。當(dāng)單片機(jī)的復(fù)位引腳RET出現(xiàn)5ms以上的高電平時(shí),單片機(jī)就完成了復(fù)位操作。復(fù)位操作通常有2中基本形式:上電復(fù)位、開關(guān)復(fù)位。常用的上電且開關(guān)復(fù)位電路如圖4-2中所示。上電后,由于電容充電,使RET持續(xù)一段高電平時(shí)間。當(dāng)單片機(jī)已在運(yùn)行中時(shí),按下復(fù)位鍵也能使RET持續(xù)一段時(shí)間的高電平,從而實(shí)現(xiàn)上電且開關(guān)復(fù)位的操作。4.2.2時(shí)鐘電路單片機(jī)的時(shí)鐘信號(hào)用來提供單片機(jī)內(nèi)各種操作的時(shí)間基準(zhǔn)。 單片機(jī)的時(shí)鐘信號(hào)通常用兩種電路形式得到:內(nèi)部振蕩方式和外部振蕩方式。在引腳 XTAL1和XTAL2外接晶體振蕩器,振蕩方式所得的時(shí)鐘信號(hào)比較穩(wěn)定,所以在本設(shè)計(jì)中就是采用內(nèi)部振蕩方式。晶振選用11.0592MHz內(nèi)部振蕩方式如圖4-2中所示。4.2.3電源電路電源設(shè)計(jì)部分如圖4-3所示。因?yàn)閱纹瑱C(jī)需要的是5V的電源,而輸入的是9-12V的電源,所以需要這個(gè)穩(wěn)壓電路把9-12V穩(wěn)壓到5V,電源電路設(shè)計(jì)為采用7805線性穩(wěn)壓,圖中電容是起到濾波的作用,一個(gè)發(fā)光二極管作電源指示燈。

DCINPOWERDCINPOWER圖4-3電源原理圖4.3RS232總線設(shè)計(jì)PC機(jī)使用RS-485總線控制單片機(jī)串口通信。它與傳統(tǒng)的 RS-232接口標(biāo)準(zhǔn)相比,其在通信速率、傳輸距離、抗干擾能力有了很大的提高,本設(shè)計(jì)考慮到遠(yuǎn)距離控制,所以采用 RS-485總線。該部分的設(shè)計(jì)有兩部分: PC機(jī)RS-232/RS-485電平轉(zhuǎn)換電路和RS-485通信接口電路。4.3.1RS-232電平轉(zhuǎn)換電路PC機(jī)只配備了標(biāo)準(zhǔn)的RS-232串口,因此還必須加上RS-232和RS-485轉(zhuǎn)換電路,才能實(shí)現(xiàn)通信。RS232與RS485轉(zhuǎn)換電路設(shè)計(jì)選用SN75LBC18芯片。圖4-6所示為SN75LBC18芯片邏輯功能圖。圖4-6SN75LBC184邏輯功能圖SN75LBC184是美國TI公司生產(chǎn)的一種RS232接口芯片,可在總線上連接64個(gè)收發(fā)器。其工作原理如圖1所示。發(fā)送使能端DE為高電平,SN75LBC18作為發(fā)送器,數(shù)據(jù)從第4腳輸入,第6、7腳輸出,其中7腳輸出信號(hào)的非;接收使能RE為高電平,SN75LBC18作為接收器,信號(hào)從6腳或7腳輸入,1腳輸出。利用SN75LBC18設(shè)計(jì)的RS232轉(zhuǎn)換電路如圖4-7所示。選用PC機(jī)的COM2接口,但COM的9個(gè)端口只使用其中的RTSRXDTX[與GN四個(gè)端口,以構(gòu)成簡易的四線通信線路。該電路使用了三片光電耦合器TLP521-1進(jìn)行隔離,這使P(機(jī)與SN75LBC18之間完全沒有了電的聯(lián)系,從而提高了工作的可靠性。當(dāng)RS232圖4-7RS-232電平轉(zhuǎn)換電路RS232勺R(shí)TS端為邏輯電平1(-12V)時(shí),光電耦合器的發(fā)光二極管不發(fā)光,光敏三極管不導(dǎo)通,輸出端為TTL邏輯電平1(+5V),此時(shí)選中RS232勺DE端允許RS23接收,這樣,RS232的TXD端就可以發(fā)送數(shù)據(jù)(工作邏輯與RTS端相似)。當(dāng)RS23的RTS端為邏輯電平0(+12V)時(shí),光電耦合器的發(fā)光二極管發(fā)光,光敏三極管導(dǎo)通,輸出端為TTL邏輯電平0(0V),此時(shí)選中RS232的R歸允許RS23發(fā)送。當(dāng)RS232勺R(shí)端的輸出為邏輯電平1時(shí),光電耦合器發(fā)光二極管不發(fā)光,光敏三極管不導(dǎo)通,這樣,在RS232俞出停止時(shí),其TXDfe平為-12V,電容被充電到-12V以使其輸出也變成-12V,即邏輯電平1;當(dāng)其輸出為邏輯電平0時(shí),光電耦合器發(fā)光二極管發(fā)光,光敏三極管導(dǎo)通,這時(shí),其輸出為+5V,也在RS23邏輯電平0的范圍之內(nèi),即為邏輯電平04.3.2RS-232終端單片機(jī)接口電路由于單片機(jī)的邏輯電平一般規(guī)定為TTL電平,所以單片機(jī)與SN75LBC18的連接電路就較簡單一些,如圖4-8所示。AT89C52勺P3.0、P3.1引腳分別與SN75LBC18的R、D引腳相連,這樣,當(dāng)單片機(jī)有關(guān)串行數(shù)據(jù)的操作包括數(shù)據(jù)輸入和輸出都能可以由這三個(gè)引腳完成。 當(dāng)然在上位機(jī)向下發(fā)送數(shù)據(jù)時(shí),對于分布式系統(tǒng)當(dāng)中的每個(gè)單片機(jī)系統(tǒng)的接受, 應(yīng)該遵從一定的數(shù)據(jù)傳輸協(xié)議,以便上位機(jī)發(fā)送的數(shù)據(jù)能有效地被分布,單片機(jī)系統(tǒng)能可靠的接受,同時(shí)單片機(jī)系統(tǒng)采集的現(xiàn)場數(shù)據(jù)同樣也可以應(yīng)該可靠的被上位機(jī)接收到。+5V4.4鍵盤鍵盤是由若干個(gè)按鍵組成的,是向系統(tǒng)提供操作人員的干預(yù)命令及數(shù)據(jù)的接口設(shè)備。在單片機(jī)應(yīng)用系統(tǒng)中,為了控制系統(tǒng)的狀態(tài),以及向系統(tǒng)中輸入數(shù)據(jù)時(shí),鍵盤是不可缺少的輸入設(shè)備,它是實(shí)現(xiàn)人機(jī)對話的紐帶。鍵盤按其結(jié)構(gòu)形式可分為編碼鍵盤和非編碼鍵盤兩種方式。編碼鍵盤通過硬件的方法產(chǎn)生鍵碼,它具有接口簡單,響應(yīng)速度快,但需要專用的硬件電路。非編碼鍵盤是通過軟件的方法產(chǎn)生鍵碼,它不需專用的硬件電路,結(jié)構(gòu)簡單,成本低廉,但響應(yīng)速度不如編碼鍵盤。在本設(shè)計(jì)中,由于按鍵的數(shù)目少,單片機(jī) I/O口資源充裕,所以采用編碼鍵盤。鍵盤是由按鍵構(gòu)成的,鍵的閉合與否通常用高、低電平來進(jìn)行檢測。鍵閉合時(shí),該鍵為高電平;鍵斷開時(shí),該鍵為低電平。鍵的閉合與斷開都是利用其機(jī)械彈性,由于機(jī)械彈性的作用,鍵在閉合與斷開的瞬間均有抖動(dòng)過程,抖動(dòng)的時(shí)間一般是5~10ms為了使CPU對鍵的一次閉合僅做一次鍵處理,必須去抖動(dòng)。去抖動(dòng)有硬件的方法和軟件的方法兩種。軟件去抖動(dòng)就是檢測到有鍵按下時(shí),執(zhí)行一個(gè)10~20ms的延時(shí)子程序后,再確認(rèn)鍵是否仍然保持閉合狀態(tài)。如仍閉合,貝順認(rèn)為此鍵按下,消除了抖動(dòng)影響??紤]該系統(tǒng)的復(fù)雜程度,決定選用CH451驅(qū)動(dòng)的16為鍵盤,如圖4-9所示:亠CJJ3U8FKACJ0 、\ g■> *■f圖4-9鍵盤第5章軟件基礎(chǔ)C語言簡介用于單片機(jī)設(shè)計(jì)開發(fā)的常用編程語言是匯編語言和 C語言,在本設(shè)計(jì)中使用C語言編程。C語言是一種源于編寫UNIX操作系統(tǒng)的語言,它是一種結(jié)構(gòu)化語言,能產(chǎn)生高效率的緊湊代碼。C語言含有許多本應(yīng)由匯編語言實(shí)現(xiàn)的機(jī)器級(jí)函數(shù),同時(shí)與匯編語言相比,它又具有如下優(yōu)點(diǎn):2不需要了解單片機(jī)的指令系統(tǒng),僅僅要求對存儲(chǔ)器結(jié)構(gòu)有初步的了解;2寄存器分配、存儲(chǔ)器尋址以及數(shù)據(jù)類型等細(xì)節(jié)可由編譯器管理;2程序有規(guī)范的結(jié)構(gòu),可分為不同的函數(shù),使得程序結(jié)構(gòu)化;2程序更具可讀性;2高的編程及程序調(diào)試效率;2提供的庫包含許多標(biāo)準(zhǔn)子程序,具有較強(qiáng)的數(shù)據(jù)處理能力;2程序易于做到模塊化,便于移植。Keil編譯器單片機(jī)的開發(fā)除了需要硬件的支持以外,同樣離不開軟件。CPU真正可執(zhí)行的是機(jī)器碼,用匯編語言或C語言等高級(jí)語言編寫的源程序必須轉(zhuǎn)換為機(jī)器碼才能被執(zhí)行。轉(zhuǎn)換的方法有手工匯編和機(jī)器匯編兩種, 前者目前已經(jīng)極少使用。機(jī)器匯編是指通過匯編軟件將源程序變?yōu)闄C(jī)器碼的編譯方法。這種匯編軟件稱為編譯器。下面將介紹目前十分流行的Keil8051C編譯器。5.2.1Keil8051C 編譯器簡介KeilC51是美國KeilSoftware公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會(huì)更加深刻。KeilC51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全 Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到 KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語言的優(yōu)勢。下面詳細(xì)介紹 KeilC51開發(fā)系統(tǒng)各部分功能和使用。KeilC51單片機(jī)軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu)C51工具包的整體結(jié)構(gòu),如下圖5-1所示,其中uVision與Ishell分別是C51forWindows和forDOS的集成圖5-1C51工具包整體機(jī)構(gòu)圖開發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程。開發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫文件,也可以與庫文件一起經(jīng)L51連接定位生成絕對目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試, 也可以直接寫入程序存貯器如EPROM中。5.2.2如何使用Keil軟件開發(fā)1.建立工程打開Keil軟件后,出現(xiàn)圖5-2所示界面。當(dāng)然,如果Keil在上次關(guān)閉時(shí)有打開的工程,再一次打開時(shí)它會(huì)自動(dòng)加載上一次的工程文件。

圖5-2Keil軟件主界面首先選擇“Project/NewProject... ”菜單,出現(xiàn)一個(gè)對話框,如下圖5-3所示。圖5-3 “創(chuàng)建新工程”對話框點(diǎn)擊后,在出現(xiàn)的對話框中選擇工程存在路徑,單擊“保存”后,出現(xiàn)如下圖5-4所示界面。在此界面上選擇系統(tǒng)所用的單片機(jī)型號(hào),例如:AtmelAT89C52單擊“確定”。

CPVVendor:AcerLabsDevice:CPVVendor:AcerLabsDevice:Family:廠UseExtendedLirLkerCLK51)instead,ofBL51I~UseExtendedAssembler(AX51)insteadofA51Description:AcerLtbsAer^ELexUTMCAxLilogDevicesAnchcrCliipsAtmelAtmelW'irtless&uCChipconCMLWicroeireuitsCyberneticMicroSys1CybraTechCygnslIntegratedFr?CypressSeniconduct01w取消確定取消圖5-4“選擇目標(biāo)器件”對話框設(shè)置完成后,軟件會(huì)提示“是否將8051上電初始化程序添加入工程?”如下圖5-5所示,這個(gè)一般選擇“否”。匚叩學(xué)Standard8051Startup匚dJetoProjectFolderandAddFiletoProject?圖5-5“是否將8051上電初始化程序添加入工程”對話框這樣,就建立了一個(gè)空的51工程。接下來的事,就是在這個(gè)工程里面加入自己的程序代碼。點(diǎn)擊 fl,或者“File”->“New,便建立了一個(gè)空的文本框?,F(xiàn)在,就可以開始在里面輸入源程序代碼了。保存時(shí)注意:如果是用C語言寫的程序,則將文本保存成*.c,如果是用匯編寫的程序,則將文本存成 *.asm,本系統(tǒng)使用的是 C語言,所以保存為Ijian.C。到目前為步,我們已經(jīng)建立了一個(gè)工程,也寫了一個(gè)程序代碼。但現(xiàn)在還不能開始編譯。因?yàn)檫€沒有將程序代碼添加到工程里面去。下一步就是將寫完的程序添加到工程里面,如下圖 5-6所示,在左邊ProjectWorkspace'工程窗口里的“SourceGroupT上右擊,選擇“AddFilestoGroup”’SourceGroupl'。在打開的對話框中,選擇剛存的文件路徑和對應(yīng)的擴(kuò)展名。這樣,程序就添加進(jìn)了這個(gè)工程圖5-6工程中添加文件頁面下一步,就開始編譯剛輸入進(jìn)去的代碼。點(diǎn)擊工具欄中的空按鈕。接著,Keil會(huì)打出下面的提示:創(chuàng)建目標(biāo)’目標(biāo)1'assemblingled.asm...linking...ProgramSize:data=8.0xdata=0code=100"first"-0Error(s),0Warning(s).其中“"first"-0Error(s),0Warning(s). ”說明現(xiàn)在的工程編譯通過,0個(gè)錯(cuò)誤和0個(gè)警告。建立工程的時(shí)候,默認(rèn)是不生成 HEX文件的,得在編譯做如下設(shè)置:單擊E田,出現(xiàn)如下圖4-7所示對話框,選擇“Output”所指的多選框勾上,點(diǎn)“確定”?,F(xiàn)在再點(diǎn)擊M重新編譯,系統(tǒng)提示:“creatinghexfilefrom"first"...便會(huì)在工程所在文件夾里生成HEX文件

Device|TargetOutputListing'C51 A51 \BL51LocateBL51Wise|Debuf|Utilities:tiedFolderforQbjtc^s.. N?nsofExecutable:qi?CreateExecut訕兩DebugInfornatio碩BrowseInformatii—Merg?32KHexfils■■■■■■lu^n■■■ ■康trftateHEXFijHEIMEX-SO''CreateLibrary:.\qi,LEErCreateBatchFiliAfterMakeVJeepThenCompletegtartDebugging'RunUserFrogrwn#1Browse..RimUserProgram養(yǎng)Browse...確建 取消 Defaults圖5-7工程設(shè)置中的"Output”頁面2.調(diào)試Keil有很強(qiáng)大的調(diào)試功能,可以顯示C程序的反匯編代碼、可以計(jì)算代碼運(yùn)行的時(shí)間、可以顯示程序中某一變量的值,,能用好這個(gè)調(diào)試工具對編寫單片機(jī)程序會(huì)有很大的幫助。同樣的,在這里,只對 Debug進(jìn)行簡單應(yīng)用介紹。圖5-8工程設(shè)置中的"Target”頁面

首先,單擊民,彈出如上圖5-8所示對話框,在目標(biāo)頁面上設(shè)置對應(yīng)的晶振頻率。其他不作修改。設(shè)置完成后,單擊業(yè)■,進(jìn)入調(diào)試界面如下圖5-9所示圖5-9調(diào)試界面點(diǎn)擊跖副田刊祁{「}】中對應(yīng)的工具按鈕則可以開始調(diào)試Proteus仿真軟件Proteus軟件是英國LabCenterElectronice 公司開發(fā)的EDA工具軟件。從1989年問世至今已有20年的歷史,在全球得到廣泛應(yīng)用。Proteus軟件除具有和其他EDA工具軟件一樣的原理編輯、印制電路板制作外,還具有交互式的仿真功能。它不僅是模擬電路、數(shù)字電路、模/數(shù)混合電路的設(shè)計(jì)與仿真平臺(tái),更是目前世界上最先進(jìn)、最完整的多種型號(hào)微處理器系統(tǒng)的設(shè)計(jì)與仿真平臺(tái), 真正實(shí)現(xiàn)了在計(jì)算機(jī)中完成電路原理圖設(shè)計(jì)、 電路分析與仿真、微處理器程序設(shè)計(jì)與仿真、系統(tǒng)測試與功能驗(yàn)證到形成印制電路板的完整電子設(shè)計(jì)、研發(fā)過程。Proteus軟件由ISIS(IntelligentSchematicInputSystem)和ARES(AdvaneedRoutingandEditingSoftware)兩個(gè)軟件構(gòu)成,其中ISIS是一款智能電路原理圖輸入系統(tǒng)軟件,可作為電子系統(tǒng)仿真平臺(tái); ARES是一款高級(jí)布線編輯軟件,用于制作印制電路板(PCB。

Proteus電路原理圖設(shè)計(jì)是在ISIS軟件環(huán)境中進(jìn)行繪制,該軟件編輯環(huán)境具有友好的交互式人機(jī)界面,其設(shè)計(jì)功能強(qiáng)大,使用方便。第6章系統(tǒng)軟件設(shè)計(jì)6.1系統(tǒng)流程整個(gè)云臺(tái)控制系統(tǒng)分為初始化,鍵盤掃描,串口中斷,延時(shí)程序和步進(jìn)電機(jī)運(yùn)轉(zhuǎn)五部分。主函數(shù)通過調(diào)用各子程序來實(shí)現(xiàn)鍵盤掃描,串口中斷程序的調(diào)用來實(shí)現(xiàn)步進(jìn)電機(jī)的控制。本設(shè)計(jì)的系統(tǒng)主程圖如圖6-1所示,中斷子程序流程圖如圖6-2所示。讀取鍵值是云臺(tái)向上左轉(zhuǎn)動(dòng)—是是是是讀取鍵值是云臺(tái)向上左轉(zhuǎn)動(dòng)—是是是是圖6-1系統(tǒng)主流程圖6.2初始化模塊所謂初始化就是在應(yīng)用系統(tǒng)中,需要對軟件進(jìn)行初始化設(shè)置,以能夠滿足該系統(tǒng)的正常工作。在本系統(tǒng)中,如果沒有初始化,則該系統(tǒng)無法正常工作。本系統(tǒng)中初始化程序包括兩部分,一部分是定時(shí)器初始化,另一部分是串口初始化。而這些都是通過設(shè)置相應(yīng)的特殊功能寄存器來實(shí)現(xiàn)的。本設(shè)計(jì)中定時(shí)器初始化包括定時(shí)/計(jì)數(shù)器選擇、定時(shí)/技術(shù)器工作方式、計(jì)數(shù)器裝初值、打開定時(shí)器;串口初始化包括串口工作方式設(shè)置、打開串口、開總中斷。和定時(shí)/計(jì)數(shù)器有關(guān)的特殊功能寄存器有TOMDTCON和串口相關(guān)的特殊功能寄存器有SCONPCON前面已經(jīng)介紹了特殊功能寄存器,這里不再贅述。串口工作方式1的波特率由定時(shí)/計(jì)數(shù)器T1、T2的溢出速率和SMO共同確定,計(jì)算公式為波特率=SMOD(2 132)2(Tl溢出率),TI溢出率=fosc/{12汽256—(TH1)]},本系統(tǒng)波特率為9600bit/s,晶振頻率為11.0592MHz串口選擇工作方式為1,所以初值等于0xfa。定時(shí)計(jì)數(shù)器的初始化編程步驟:根據(jù)定時(shí)時(shí)間要求或計(jì)數(shù)要求計(jì)算初值;工作方式控制字送TMOD;送計(jì)數(shù)初值到THx和TLx寄存器中;啟動(dòng)定時(shí)/計(jì)數(shù)器,即將TRx置位。6.3延時(shí)模塊通過用C語言寫一段循環(huán)程序,來占用CPI一段時(shí)間從而達(dá)到延時(shí)的目的。在該系統(tǒng)中,延時(shí)程序有至關(guān)重要的作用,一是作為普通的延時(shí)程序,而是產(chǎn)生步進(jìn)電機(jī)的工作所需脈沖頻率,延時(shí)的多少?zèng)Q定步進(jìn)電機(jī)的轉(zhuǎn)速,在本系統(tǒng)中,對步進(jìn)電機(jī)的轉(zhuǎn)速?zèng)]有做過多要求,所以采用了for循環(huán)語句構(gòu)成的比較簡單的延時(shí)程序,如果對延時(shí)時(shí)間、步進(jìn)電機(jī)轉(zhuǎn)速有要求的系統(tǒng)中,則可以使用定時(shí)器定時(shí),定時(shí)器的精度相當(dāng)高。下面是采用普通延時(shí)的程序源代碼:voiddelay(uintz)//延時(shí){uintx,y;for(x=z;x>0;x__)for(y=110;y>0;y--);}6.4串口中斷模塊在本系統(tǒng)中,單片機(jī)通過串口向單片機(jī)發(fā)送遠(yuǎn)距離控制信號(hào),一旦 PC機(jī)發(fā)送控制信號(hào)后,單片機(jī)接受到信息產(chǎn)生中斷,通過中斷服務(wù)程序去控制步進(jìn)電機(jī)動(dòng)作。由于串口中斷具有優(yōu)先級(jí)別高的特點(diǎn), 所以不需要擔(dān)心鍵盤和串口信息發(fā)生沖突。7仿真仿真是一項(xiàng)非常有效的檢測設(shè)計(jì)工作是否達(dá)到預(yù)期的結(jié)果方法, 而且非常具有實(shí)際意義。一項(xiàng)新的系統(tǒng)不經(jīng)過調(diào)試仿真就直接進(jìn)入實(shí)用, 這樣是非常不科學(xué)的,既費(fèi)時(shí)又費(fèi)里,所以一項(xiàng)新的設(shè)計(jì)只有在經(jīng)過了仿真的考驗(yàn)才能真正的得到實(shí)際應(yīng)用。仿真就是一個(gè)完成目標(biāo)模型的建立過程, 對于本次設(shè)計(jì)來說仿真所要完成的工作有:搭建虛擬串口、Keil軟件中程序的編譯并生成HEX文件、Proteus仿真軟件電路模型的建立。7.1虛擬串口首先安裝好SerialNull虛擬串口軟件和串口調(diào)試助手SComAssistantV2.1,分別對其進(jìn)行設(shè)置。打開SerialNull虛擬串口軟件,進(jìn)入主界面。添加虛擬端口,一般電腦最多為兩個(gè)串行口,這里我們選擇端口一為 COM2和端口二為COM3點(diǎn)擊添加端口就添加了這兩個(gè)串口,在虛擬端口下就會(huì)看到有兩個(gè)串口。這樣我們就完成里串口的設(shè)置,可以把此軟件關(guān)閉,這兩個(gè)端口將會(huì)一直存在于你的電腦中,下次直接使用就可以了。7.2Keil軟件程序編譯前面已經(jīng)介紹了Keil軟件的使用方法,這里不再陳述?,F(xiàn)在我們要做的是源程序代碼的編譯,最終目的是生成 HEX文件。操作步驟如下:(1)啟動(dòng)uVision2,創(chuàng)建一個(gè)項(xiàng)目文件,文件名為lijian,并從器件庫中選擇1款合適的CPU我選擇的是AT89C52(2) 創(chuàng)建一個(gè)新的源程序文件,文件名為lijian.C,并把這個(gè)源文件添加到項(xiàng)目中。(3) 為該單片機(jī)添加或配置啟動(dòng)程序代碼,代碼如附錄所示。(4) 設(shè)置工具選項(xiàng),使之合適目標(biāo)硬件。(5) 編譯項(xiàng)目并創(chuàng)造一個(gè)可供PRO編程的.HEX文件。完成以上步驟我們就完成了源程序代碼生成.HEX文件的任務(wù)。Proteus仿真同樣前面已經(jīng)介紹了ProteusISIS軟件的使用方法,這里不再多說?,F(xiàn)在要做的是將系統(tǒng)電路圖繪制在ProteusISIS編輯窗口中,添加完成相應(yīng)的設(shè)置并添加由Keil軟件生成的.HEX文件。主要介紹Proteus仿真軟件的設(shè)置。在ProteusISIS編輯窗口中,單擊鼠標(biāo)右鍵將AT89C52單片機(jī)選中并單擊鼠標(biāo)左鍵,彈出“EditComponen”對話框,如下圖7-2所示。在此對話框的“ClockFrequency”欄中設(shè)置單片機(jī)的晶振頻率為Frequency”欄中設(shè)置單片機(jī)的晶振頻率為11.0592MHz在“ProgramFile”欄中單擊圖標(biāo)匚,選擇先前用KeiluVision2生成的“l(fā)ijian.HEX”文件。在ProteusISIS菜單欄中單擊保存圖標(biāo)耳ISIS菜單欄中單擊保存圖標(biāo)耳,保存設(shè)計(jì),生成"lijian.DSN"文件。圖7-2 "EditComponent"對話框在ProteusISIS編輯窗口中單擊卜,則會(huì)彈出虛擬終端virtualterminal顯示框,它的作用主要是顯示PC通過串口發(fā)送的信息。下面我們再把用VC編寫的PC控制界面打開,再執(zhí)行相應(yīng)的操作。第8章結(jié)束語畢業(yè)設(shè)計(jì)是本科學(xué)習(xí)階段一次非常難得的理論與實(shí)際相結(jié)合的機(jī)會(huì), 通過這次比較完整的單片機(jī)系統(tǒng)設(shè)計(jì),各種元器件的選用,各種設(shè)備的適用標(biāo)準(zhǔn),各種軟件的使用方式,信息遠(yuǎn)距離傳輸,抗干擾能力強(qiáng)等問題,隨著設(shè)計(jì)的不斷深入而不斷熟悉并學(xué)會(huì)應(yīng)用的。我擺脫了單純的理論知識(shí)學(xué)習(xí)狀態(tài),和實(shí)際設(shè)計(jì)的結(jié)合鍛煉了我的綜合運(yùn)用所學(xué)的專業(yè)基礎(chǔ)知識(shí), 解決實(shí)際工程項(xiàng)目問題的能力,同時(shí)也提高我查閱文獻(xiàn)資料、設(shè)計(jì)手冊、設(shè)計(jì)規(guī)范以及電腦制圖仿真等其他專業(yè)能力水平,而且通過對整體的掌控,對局部的取舍,以及對細(xì)節(jié)的斟酌處理,都使我的能力得到了極大的鍛煉,經(jīng)驗(yàn)得到了豐富,并且意志品質(zhì)力,抗壓能力及耐力也都得到了不同程度的提升。本文構(gòu)建了一個(gè)完整的基于單片機(jī)的云臺(tái)步進(jìn)電機(jī)控制系統(tǒng)。分析云臺(tái)控制系統(tǒng)的具體實(shí)際要求,提出了詳細(xì)的設(shè)計(jì)方案,設(shè)計(jì)該系統(tǒng)主要分為單片機(jī)外圍,步進(jìn)電機(jī)驅(qū)動(dòng),RS232總線這三部分。在系統(tǒng)設(shè)計(jì)中,了解步進(jìn)電機(jī)的控制原理后,我解決了電機(jī)的驅(qū)動(dòng)器件;RS232總線設(shè)計(jì)中,經(jīng)上網(wǎng)查找相關(guān)資料,提出了RS232電平轉(zhuǎn)換解決方案及接口電路相關(guān)問題的解決方案。經(jīng)過軟件調(diào)試仿真,本系統(tǒng)不僅能夠?qū)崿F(xiàn)鍵盤按鈕控制云臺(tái)步進(jìn)電機(jī),而且還可以通過 PC遠(yuǎn)距離控制云臺(tái)步進(jìn)電機(jī),完成了本設(shè)計(jì)的最終任務(wù),得到了預(yù)期的結(jié)果。在這次畢業(yè)設(shè)計(jì)中也遇到了許多問題,程序的編寫、調(diào)試工作,經(jīng)過一次一次程序的修改、一次一次的編譯、一次次的嘗試,不斷在錯(cuò)誤中進(jìn)步,最終完成了程序的編譯。經(jīng)過程序代碼的編寫及成功仿真,我對其有了一定的了解,對其中的某些錯(cuò)誤有了一定的反應(yīng)能力。致謝本次畢業(yè)設(shè)計(jì)論文是在XXX老師悉心指導(dǎo)下完成的。從接受課題到現(xiàn)在完成畢業(yè)設(shè)計(jì)論文,衷心的感謝老師給予精心的指導(dǎo)和熱情的幫助,尤其在課題設(shè)計(jì)的準(zhǔn)備階段和設(shè)計(jì)階段,老師提出許多寶貴的設(shè)計(jì)意見,這樣使得我得以順利的完成畢業(yè)設(shè)計(jì)開發(fā)工作,在短暫的相處時(shí)間里,老師淵博的知識(shí),敏銳的思路和實(shí)事求是的工作作風(fēng)給我留下了深刻的印象,這將使得我終身受益,謹(jǐn)此向老師表示衷心的感謝和崇高的敬意。其次,我要特別感謝蘭發(fā)平同學(xué)對本次畢業(yè)設(shè)計(jì)的指導(dǎo), 他為完成這篇論文提供了巨大的幫助。最后,再次對關(guān)心、幫助我的老師和同學(xué)表示衷心地感謝。參考文獻(xiàn)于永,戴佳,常江.51單片機(jī)C語言常用模塊與綜合系統(tǒng)設(shè)計(jì)實(shí)例精講[M]. 北京:電子工業(yè)出版社,2007.4求是科技.單片機(jī)通信技術(shù)與工程實(shí)踐[M].北京:人民郵電出版社,2005.1李群芳肖看.單片機(jī)原理、接口及應(yīng)用一嵌入式系統(tǒng)技術(shù)基礎(chǔ)[M].北京:清華大學(xué)出版社,2003.5徐江海,張志良.單片機(jī)使用教程[M].北京:機(jī)械工業(yè)出版社,2006.12⑸侯玉寶,陳忠平,李成群.基于Proteus的51系列單片機(jī)設(shè)計(jì)與仿真[M].北京:電子工業(yè)出版社,2008.9⑹康曉明.電機(jī)與拖動(dòng)[M].北京:國防工業(yè)出版社,2005.8劉錦波,張承慧等.電機(jī)與拖動(dòng)[M].北京:清華大學(xué)出版社,2006.9戴佳.單片機(jī)C51語言應(yīng)用程序設(shè)計(jì)[M].北京:電子工業(yè)出版社,2006.7王英杰,林怡

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論