《基于AVR單片機(jī)的云臺控制系統(tǒng)設(shè)計與實(shí)現(xiàn)》由會員分享,可在線閱讀,更多相關(guān)《基于AVR單片機(jī)的云臺控制系統(tǒng)設(shè)計與實(shí)現(xiàn)(4頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、基于AVR單片機(jī)的云臺控制系統(tǒng)設(shè)計與實(shí)現(xiàn)
摘 要: 為了滿足監(jiān)控系統(tǒng)中云臺高速度以及高精度的要求,利用AVR單片機(jī)設(shè)計云臺控制系統(tǒng),并給出系統(tǒng)總體方案。根據(jù)云臺的功能需求,構(gòu)建以單片機(jī)ATmega128為核心的硬件系統(tǒng),設(shè)計系統(tǒng)的軟件程序,并通過RS 485總線實(shí)現(xiàn)串口與PC機(jī)通信,控制云臺的上下和垂直運(yùn)動。通過對整個系統(tǒng)的研究發(fā)現(xiàn),其達(dá)到了預(yù)期的要求,具有良好的運(yùn)行效果。
關(guān)鍵詞: AVR單片機(jī); 云臺控制; 串行通信; ATmega128
中圖分類號: TN41?34 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2016)13?0160?03
Abstract:
2、In order to satisfy the requirements of PTZ (pan tilt zoom) high speed and high precision in monitoring system, the PTZ control system was designed with AVR microcontroller, and the overall system scheme was given. According to the function demand of PTZ, the hardware system taking ATmega128 as the
3、core was constructed, the system software program was designed, and the communication between serial port and PC was realized through RS 485 bus to control the horizontal movement and vertical movement of PTZ. The study of the whole system found that the system can achieve the expected requirements,
4、 and has good operating results.
Keywords: AVR microcontroller; PTZ control; serial communication; ATmega128
0 引 言
隨著時代的發(fā)展,人們的生活水平逐漸提高,對生活的安全性要求也越來越高。視頻監(jiān)控系統(tǒng)很好地滿足了人們的需求,能夠有效監(jiān)控不同情況的發(fā)生,提高生產(chǎn)和生活的安全系數(shù)。監(jiān)控系統(tǒng)一般由前端信息采取、傳輸以及控制三部分組成,其中云臺系統(tǒng)控制著攝像機(jī)不同方位的運(yùn)動,是監(jiān)控系統(tǒng)的核心部分。
云臺系統(tǒng)是攝像機(jī)和支撐物的中間部分,能夠通過自身的運(yùn)動控制鏡頭水平和垂
5、直運(yùn)動,這就擴(kuò)大了監(jiān)控系統(tǒng)的范圍,提高其使用價值。傳統(tǒng)的云臺控制主要是人工操作的,這樣對監(jiān)控人員和地理位置就有很大限制,存在一些監(jiān)控的死角。因此,遠(yuǎn)程自動控制的云臺逐漸成為監(jiān)控的新趨勢。自動的云臺控制系統(tǒng)能夠根據(jù)控制器發(fā)出的信號來定位和監(jiān)控不同的區(qū)域,實(shí)現(xiàn)大范圍的掃描,提高監(jiān)控設(shè)備的自動化管理。
目前市場上的云臺系統(tǒng)能夠?qū)崿F(xiàn):水平方向的360無限制旋轉(zhuǎn);0~90的垂直方向滑動;180的自動翻轉(zhuǎn);能夠記憶多個預(yù)置位和軌跡;能夠?qū)崿F(xiàn)用戶設(shè)定的不同速度和不同角度的監(jiān)視。
綜合上面的性能,本文提出了一種基于AVR單片機(jī)的云臺控制系統(tǒng)方案,以單片機(jī)ATmega128為核心設(shè)計了硬件系統(tǒng),并完
6、成了軟件系統(tǒng)編程。經(jīng)過研究發(fā)現(xiàn),其穩(wěn)定性強(qiáng)、可靠性高,達(dá)到了設(shè)計的要求。
1 總體方案設(shè)計
云臺控制系統(tǒng)的主要功能是擴(kuò)大攝像機(jī)的監(jiān)控范圍和控制鏡頭的參數(shù),其系統(tǒng)的組成框圖如圖1所示。整個云臺控制系統(tǒng)利用計算機(jī)和解碼器進(jìn)行通信,在服務(wù)器和解碼器之間是通過RS 485串口連接的。所謂的解碼器就是接收計算機(jī)的控制命令,對編碼進(jìn)行解析,驅(qū)動攝像機(jī)和云臺的轉(zhuǎn)動??蛻魴C(jī)與服務(wù)器通過Internet連接,在客戶端根據(jù)功能的要求編寫代碼,運(yùn)行TCP/IP協(xié)議發(fā)送到服務(wù)器上。
從功能上講,主要分為兩大模塊,分別是鏡頭模塊和運(yùn)動模塊。其中鏡頭模塊主要控制鏡頭的參數(shù),運(yùn)動模塊主要進(jìn)行上下、左右動作
7、控制以及預(yù)置位的控制。另外,還有電源模塊為其他模塊提供電源,云臺系統(tǒng)功能圖如圖2所示。
2 系統(tǒng)硬件設(shè)計
云臺控制的硬件設(shè)計主要由主控制器設(shè)計、驅(qū)動電路設(shè)計、通信電路設(shè)計、電源電路設(shè)計等組成。
2.1 主控制器設(shè)計
ATmega128型單片機(jī)是由ATMEL公司研發(fā)的,具有先進(jìn)的RISC結(jié)構(gòu),低功耗的8位處理器,擁有133條指令。在線編程FLASH存儲器可達(dá)到128 KB,4 KB的E2PROM存儲區(qū),可擴(kuò)展的外部存儲空間達(dá)到64 KB。它共有64個引腳,53個可以編程的輸入和輸出接口線,其中XTAL1,XTAL2是晶振接入引腳,AREF是A/D轉(zhuǎn)換器的參考電源,PEN是
8、串行下載的編程使能信號。
2.2 驅(qū)動電路設(shè)計
為了實(shí)現(xiàn)云臺控制系統(tǒng)性能,并且綜合考慮了功能、結(jié)構(gòu)、體積等因素,選擇了兩相步進(jìn)電機(jī)。步進(jìn)電機(jī)的驅(qū)動電路是由ULN2003A完成的,ULN2003A是高壓大電流的集成電路,內(nèi)部主要由NPN達(dá)林頓管構(gòu)成,能夠在5 V的工作環(huán)境下直接和TTL以及CMOS相連。較高的工作電壓和強(qiáng)大的負(fù)載能力使得它常用來驅(qū)動大功率的系統(tǒng)。驅(qū)動電路圖如圖3所示。
2.3 通信電路設(shè)計
由于云臺系統(tǒng)是遠(yuǎn)程控制的,串口通信的設(shè)計就顯得很重要。采用RS 485總線,這主要是其通信的速率高、傳輸距離遠(yuǎn)以及抗干擾的能力比較強(qiáng)。PC機(jī)上面配備的是RS 232串口
9、,因此要先實(shí)現(xiàn)電路的轉(zhuǎn)換,如圖4所示,然后是通信接口的設(shè)計。在設(shè)計轉(zhuǎn)換電路時,運(yùn)用的是SN75LBC184芯片,該芯片能很好地保證數(shù)據(jù)接口的轉(zhuǎn)換。SN75LBC184是美國TI公司生產(chǎn)的一種RS 485接口芯片,可在總線上連接64個收發(fā)器。在上位機(jī)向下發(fā)送數(shù)據(jù)時,對于分布式系統(tǒng)當(dāng)中的每個單片機(jī)系統(tǒng)的接收,應(yīng)該遵從一定的數(shù)據(jù)傳輸協(xié)議,以便有效分布上位機(jī)發(fā)送的數(shù)據(jù),單片機(jī)系統(tǒng)能可靠的接收,同時單片機(jī)系統(tǒng)采集的現(xiàn)場數(shù)據(jù)同樣也可以可靠的被上位機(jī)接收到?!?.4 電源電路設(shè)計
單片機(jī)需要的是5 V電源,而輸入的是9~12 V電源,所以需要穩(wěn)壓電路把9~12 V穩(wěn)壓到5 V,電源電路設(shè)計采用7805
10、線性穩(wěn)壓,電容起到濾波的作用,一個發(fā)光二極管作電源指示燈。
3 系統(tǒng)軟件設(shè)計
在完成硬件電路后,需要通過編程實(shí)現(xiàn)云臺的不同功能。云臺系統(tǒng)的控制分為主單片機(jī)和從單片機(jī),兩者之間是相互配合的。主從單片機(jī)的功能模塊并不相同。其中主單片機(jī)的功能主要是實(shí)現(xiàn)與鍵盤、從單片機(jī)的通信以及鏡頭的控制等;從單片機(jī)的功能主要是實(shí)現(xiàn)和主單片機(jī)通信、電機(jī)控制以及不同位置的記錄等。
選用C語言進(jìn)行編程,這主要是由于其自身存在很多優(yōu)點(diǎn)。在編程的時候,只需要對存儲結(jié)構(gòu)進(jìn)行設(shè)計即可。除此之外,軟件程序的設(shè)計模塊化方便了系統(tǒng)的維護(hù)和調(diào)試。強(qiáng)大的數(shù)據(jù)處理能力和便捷的編程方式為功能的實(shí)現(xiàn)提供了基礎(chǔ)。
整個云臺
11、控制系統(tǒng)分為初始化,鍵盤掃描,串口中斷,延時程序和步進(jìn)電機(jī)運(yùn)轉(zhuǎn)五部分。主函數(shù)通過調(diào)用各子程序?qū)崿F(xiàn)鍵盤掃描,串口中斷程序的調(diào)用實(shí)現(xiàn)了步進(jìn)電機(jī)的控制。系統(tǒng)流程圖如圖5所示。
3.1 初始化模塊和鍵盤模塊
初始化就是在應(yīng)用系統(tǒng)中對軟件進(jìn)行初始化設(shè)置,以滿足該系統(tǒng)的正常工作。初始化程序包括兩部分:定時器初始化和串口初始化。而這些都是通過設(shè)置相應(yīng)的特殊功能寄存器來實(shí)現(xiàn)的。定時器初始化包括定時/計數(shù)器選擇、定時/計數(shù)器工作方式、計數(shù)器設(shè)初值、打開定時器;串口初始化包括串口工作方式設(shè)置、打開串口、開總中斷。
綜合考慮,本設(shè)計單片機(jī)I/O資源比較豐富,所以采用獨(dú)立式鍵盤。獨(dú)立式鍵盤的每一個按
12、鈕直接與單片機(jī)的P0相連接,當(dāng)其中有一個按鈕被按下時,P0口的相應(yīng)位就被置為高電平,沒有按下則為低電平。所以單片機(jī)只需要識別P0的值就可以做出相應(yīng)的動作。
3.2 延時模塊和串口中斷模塊
當(dāng)單片機(jī)通過串口向PC機(jī)發(fā)送遠(yuǎn)距離控制信號時,一旦PC機(jī)發(fā)送控制信號后,單片機(jī)接收到信息產(chǎn)生中斷,通過中斷服務(wù)程序控制步進(jìn)電機(jī)動作。由于串口中斷具有優(yōu)先級別高的特點(diǎn),所以不需要擔(dān)心鍵盤和串口信息發(fā)生沖突。
3.3 步進(jìn)電機(jī)模塊
在控制系統(tǒng)中,步進(jìn)電機(jī)的運(yùn)行方式選用的是單、雙8拍運(yùn)行方式,即按A?AB?B?BC?C?CD?D?DA?A或者相反順序通電。在編程中,將步進(jìn)電機(jī)通電相的正序、反
13、序分別放在兩個數(shù)組中,在電機(jī)動作模塊中使用不同的數(shù)組,就能達(dá)到控制電機(jī)的正轉(zhuǎn)、反轉(zhuǎn),它們分別為moveup,movedown,moveleft,moveright。另外,還在系統(tǒng)中設(shè)置了自動運(yùn)行方式,這種方式是通過循環(huán)調(diào)用moveup,movedown,moveleft和moveright函數(shù)實(shí)現(xiàn)自動運(yùn)行的。
4 系統(tǒng)運(yùn)行測試
本系統(tǒng)使用AVR單片機(jī)控制步進(jìn)電機(jī)的運(yùn)動,通過鍵盤輸入步進(jìn)電機(jī)的轉(zhuǎn)動方向、速度。由單片機(jī)發(fā)出相應(yīng)的控制信號,實(shí)時改變步進(jìn)電機(jī)的運(yùn)動 。整個系統(tǒng)具有線路簡潔、性能良好、成本低、可靠性高等特點(diǎn),具有一定的實(shí)用性。監(jiān)控畫面圖如圖6所示。
從圖6的監(jiān)控畫面可以
14、看到,云臺系統(tǒng)運(yùn)行穩(wěn)定并且是可靠的,能夠精確地控制云臺不同方位的轉(zhuǎn)動、聚焦以及縮放,達(dá)到了預(yù)期目標(biāo)。
5 結(jié) 語
隨著人們安全意識的提高,監(jiān)控系統(tǒng)也逐漸發(fā)展起來。云臺系統(tǒng)作為監(jiān)控系統(tǒng)的核心部分,具有重要的意義。本文介紹了基于AVR單片機(jī)的云臺控制系統(tǒng),設(shè)計了總體的運(yùn)行方案。從主控制器設(shè)計、驅(qū)動電路設(shè)計、通信電路設(shè)計、電源電路設(shè)計等方面闡述硬件設(shè)計,從初始化,鍵盤掃描,串口中斷,延時程序和步進(jìn)電機(jī)運(yùn)轉(zhuǎn)等方面描述軟件系統(tǒng),整個云臺系統(tǒng)經(jīng)過測試,實(shí)現(xiàn)不同角度和距離的拍攝。整個系統(tǒng)達(dá)到了預(yù)期的設(shè)計目標(biāo),并具有良好的性能,具有一定的實(shí)用價值和市場前景。
參考文獻(xiàn)
【1】 耿德根,
15、宋建國,馬潮,等.AVR高速嵌入式單片機(jī)原理與應(yīng)用.北京:北京航空航天大學(xué)出版社,2001.
【2】 尚青青,朱秀昌.高清視頻監(jiān)控中心的設(shè)計與實(shí)現(xiàn).電視技術(shù),2013,37(11):186?187.
【3】 吳益飛,李勝,蔡驊.基于MSP430單片機(jī)的云臺控制系統(tǒng)設(shè)計與實(shí)現(xiàn).微計算機(jī)信息,2006,22(20):90?93.
【4】 張夢娜,于鴻洋.基于C/S模式的遠(yuǎn)程云臺控制系統(tǒng)設(shè)計與實(shí)現(xiàn).電視技術(shù),2014,38(13):145?148.
【5】 侍磊,韓寶玲,羅慶生,等.球形智能機(jī)器人云臺控制系統(tǒng)的設(shè)計與實(shí)現(xiàn).機(jī)械設(shè)計與制造,2011(3):148?150.
【6】 張剛.基于MSP430單片機(jī)的云臺控制系統(tǒng)設(shè)計與實(shí)現(xiàn).電子制作,2013(6):29.
【7】 姬廣芹.一種通用的云臺控制框架設(shè)計與實(shí)現(xiàn).南京:南京郵電大學(xué),2010.
董蘊(yùn)華,魏輝.云臺鏡頭控制系統(tǒng)終端解碼器的設(shè)計與實(shí)現(xiàn).河南機(jī)電高等??茖W(xué)校學(xué)報,2005,13(2):54?55.
曹贏,程磊,方康玲.驅(qū)動伺服一體化型機(jī)器人云臺系統(tǒng)的設(shè)計與實(shí)現(xiàn).計算技術(shù)與自動化,2008,27(4):31?34.
王煉.高速球型攝像機(jī)控制系統(tǒng)設(shè)計與實(shí)現(xiàn).南京:南京理工大學(xué),2008.