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

下載本文檔

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

文檔簡介

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

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

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

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

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

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

CPVVendor:AcerLabsDevice:CPVVendor:AcerLabsDevice:Family:廠UseExtendedLirLkerCLK51)instead,ofBL51I~UseExtendedAssembler(AX51)insteadofA51Description:AcerLtbsAer^ELexUTMCAxLilogDevicesAnchcrCliipsAtmelAtmelW'irtless&uCChipconCMLWicroeireuitsCyberneticMicroSys1CybraTechCygnslIntegratedFr?CypressSeniconduct01w取消確定取消圖5-4“選擇目標(biāo)器件”對話框設(shè)置完成后,軟件會提示“是否將8051上電初始化程序添加入工程?”如下圖5-5所示,這個一般選擇“否”。匚叩學(xué)Standard8051Startup匚dJetoProjectFolderandAddFiletoProject?圖5-5“是否將8051上電初始化程序添加入工程”對話框這樣,就建立了一個空的51工程。接下來的事,就是在這個工程里面加入自己的程序代碼。點擊 fl,或者“File”->“New,便建立了一個空的文本框?,F(xiàn)在,就可以開始在里面輸入源程序代碼了。保存時注意:如果是用C語言寫的程序,則將文本保存成*.c,如果是用匯編寫的程序,則將文本存成 *.asm,本系統(tǒng)使用的是 C語言,所以保存為Ijian.C。到目前為步,我們已經(jīng)建立了一個工程,也寫了一個程序代碼。但現(xiàn)在還不能開始編譯。因為還沒有將程序代碼添加到工程里面去。下一步就是將寫完的程序添加到工程里面,如下圖 5-6所示,在左邊ProjectWorkspace'工程窗口里的“SourceGroupT上右擊,選擇“AddFilestoGroup”’SourceGroupl'。在打開的對話框中,選擇剛存的文件路徑和對應(yīng)的擴展名。這樣,程序就添加進了這個工程圖5-6工程中添加文件頁面下一步,就開始編譯剛輸入進去的代碼。點擊工具欄中的空按鈕。接著,Keil會打出下面的提示:創(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個錯誤和0個警告。建立工程的時候,默認是不生成 HEX文件的,得在編譯做如下設(shè)置:單擊E田,出現(xiàn)如下圖4-7所示對話框,選擇“Output”所指的多選框勾上,點“確定”。現(xiàn)在再點擊M重新編譯,系統(tǒng)提示:“creatinghexfilefrom"first"...便會在工程所在文件夾里生成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有很強大的調(diào)試功能,可以顯示C程序的反匯編代碼、可以計算代碼運行的時間、可以顯示程序中某一變量的值,,能用好這個調(diào)試工具對編寫單片機程序會有很大的幫助。同樣的,在這里,只對 Debug進行簡單應(yīng)用介紹。圖5-8工程設(shè)置中的"Target”頁面

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

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

溫馨提示

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

評論

0/150

提交評論