趙金龍
(蘇州工業(yè)園區(qū)工業(yè)技術(shù)學(xué)校 電子技術(shù)中心,江蘇 蘇州 215123)
中國的安防行業(yè)起步較晚,上世紀(jì)70年代末在改革開放初期出現(xiàn)"萌芽"。到上世紀(jì)90年代,隨著世界科技水平的不斷提高和我國經(jīng)濟(jì)的迅速騰飛,中國安防行業(yè)以百米沖刺的速度跑步前進(jìn)。高速球攝像機(jī)俗稱"快球"是安防視頻監(jiān)控"家族"中的一位新成員,要求擁有反應(yīng)快、預(yù)置跟蹤、報(bào)警聯(lián)動等特點(diǎn),用原MCS51系列單片機(jī)已無法滿足其要求。本文旨在提出一種以ATmega128L為MCU,L6219DS為步進(jìn)電機(jī)驅(qū)動芯片的智能高速球攝像機(jī)的設(shè)計(jì)方案。該方案系統(tǒng)穩(wěn)定快速,步進(jìn)電機(jī)驅(qū)動平穩(wěn)精確,完全滿足行業(yè)要求。
在該系統(tǒng)的設(shè)計(jì)中,采用Atmel公司生產(chǎn)的ATmega128L作為主控MCU。整個(gè)系統(tǒng)的結(jié)構(gòu)框圖如1所示。
圖1
監(jiān)控外設(shè)通過RS485接口實(shí)現(xiàn)對高速球攝像機(jī)的X方向360°轉(zhuǎn)動、Y方向90°轉(zhuǎn)動和攝像機(jī)變倍變焦等操作。系統(tǒng)啟動后,首先對高速球攝像機(jī)進(jìn)行自檢包括驅(qū)動X方向電機(jī)通過同步輪帶動高速球轉(zhuǎn)動一周、Y方向電機(jī)俯仰一次以及攝像機(jī)變倍從近到遠(yuǎn),自檢完成后等待RS485通訊命令,根據(jù)命令執(zhí)行相應(yīng)的操作。
圖2
系統(tǒng)包括主控MCU、步進(jìn)電機(jī)驅(qū)動、RS485通訊、一體化攝像機(jī)驅(qū)動和控制協(xié)議選擇等幾部分。
ATmega128L內(nèi)核為AVR,具有以下特點(diǎn):
*先進(jìn)的RISC架構(gòu),內(nèi)部具有133條功能強(qiáng)大的指令系統(tǒng),而且大部分指令是單周期;32個(gè)8位通用工作寄存器+外圍接口控制寄存器。
*內(nèi)部有128KB在線可重復(fù)編程Flash、4KBEEPROM和4KB SRAM。
*有53個(gè)I/O引腳,每個(gè)I/O口分別對應(yīng)輸入、輸出、功能選擇、中斷等多個(gè)寄存器,使功能口和I/O口可以復(fù)用,大大增強(qiáng)了端口功能和靈活性,提高了對外圍的開發(fā)能力。
*內(nèi)部有2個(gè)8位定時(shí)器/計(jì)數(shù)器和2個(gè)具有比較/捕捉寄存器的16位定時(shí)器/計(jì)數(shù)器;1個(gè)具有獨(dú)立振蕩器的實(shí)時(shí)計(jì)數(shù)器;1個(gè)可編程看門狗定時(shí)器;2通道8位PWM通道;8路10位A/D轉(zhuǎn)換器;雙向I2C串行總線接口;主/從SPI串行接口;2個(gè)可編程串行通信接口;片內(nèi)精確的模擬比較器等。
*功耗低。CPU可工作在IDLE、POWERSAVE、POWERDOWN、STANDYBY等幾種省電模式下;可軟件編程選擇時(shí)鐘頻率。AT-mega128L的軟件結(jié)構(gòu)也是針對低功耗而設(shè)計(jì)的,具有內(nèi)外多種中斷模式。豐富的中斷能力減少了系統(tǒng)設(shè)計(jì)中查詢的需要,可以方便地設(shè)計(jì)出中斷程序結(jié)構(gòu)的控制程序、上電復(fù)位和可編程的低電壓檢測。
*帶JTAG接口。通過該口利用JTAG仿真器,可以很方便地實(shí)現(xiàn)程序的在線調(diào)試和仿真,編譯調(diào)試正確的代碼,通過JTAG口直接寫入ATmega128的Flash代碼區(qū)中。另外,支持Bootloader功能,即MCU上電后,首先通過駐留在Flash中的BootLoader程序,將存儲在外部媒介中的應(yīng)用程序搬移到ATmega128L的Flash代碼區(qū)搬移成功后自動去執(zhí)行代碼,完成自啟動。這對于產(chǎn)品化后程序的升級和維護(hù)提供了極大的方便。
*電源電壓為2.7~5.5V。
圖3
圖4
圖5
系統(tǒng)設(shè)計(jì)中選擇L6219DS驅(qū)動步進(jìn)電機(jī)。L6219DS是雙全橋PWM電機(jī)驅(qū)動器,可以持續(xù)輸出750mA電流,具有內(nèi)部嵌位二極管、內(nèi)部PWM電流控制、低輸出飽和電壓、內(nèi)部熱關(guān)斷電路等特性。在本系統(tǒng)中用兩個(gè)L6219DS驅(qū)動兩個(gè)雙極步進(jìn)電機(jī)繞組。MCU與L6219DS的接口電路如圖2所示。MCU的四個(gè)I/O口線控制一個(gè)L6219DS,通過編程控制輸出電流大小和電流流過電機(jī)繞組的方向,達(dá)到驅(qū)動步進(jìn)電機(jī)的目的。
智能高速球型攝像機(jī)安裝地一般離控制室比較遠(yuǎn),傳統(tǒng)的RS232通訊傳輸距離只能達(dá)到30米左右不能遠(yuǎn)距離傳輸。RS485與RS232不一樣,數(shù)據(jù)信號采用差分傳輸方式,也稱作平衡傳輸,它使用一對雙絞線,將其中一線定義為A,另一線定義為B,傳輸距離可達(dá)1千米以上。RS485通訊與MCU接口如圖3。
系統(tǒng)采用7LB184芯片作為RS485通訊解碼芯片,RO、DI引腳分別與 MCU的 RXD1、TXD1相連,接收發(fā)送使能引腳都和MCU的PG1腳連接。在本系統(tǒng)中將PG1置低即可進(jìn)入通訊接收狀態(tài)。
一體化攝像機(jī)與本系統(tǒng)是通過UART串口進(jìn)行數(shù)據(jù)通訊的,將MCU的TXD0、RXD0和一體化攝像機(jī)接口相連即可。通過撥碼開關(guān)的改變即可選擇不同的RS485通訊協(xié)議。他們與MCU的接口如圖4。
本系統(tǒng)中主要通過RS485通訊接收監(jiān)控外設(shè)發(fā)來的命令,命令類型主要有控制智能高速球攝像機(jī)向左、向右、向上、向下運(yùn)動以及攝像機(jī)的焦距的改變等。軟件設(shè)計(jì)中采用中斷方式接收串口數(shù)據(jù),且設(shè)置該中斷的優(yōu)先級最高,保證接收的數(shù)據(jù)不會丟碼。系統(tǒng)采用細(xì)分的方式驅(qū)動步進(jìn)電機(jī),使步進(jìn)電機(jī)運(yùn)行平穩(wěn),定位精確。系統(tǒng)的軟件設(shè)計(jì)流程如圖5所示。
本文討論了基于ATmega128L的智能高速球攝像機(jī)的設(shè)計(jì)思路,對系統(tǒng)中的各個(gè)模塊接口作了簡要的描述,并提出了系統(tǒng)軟件設(shè)計(jì)的總體思想。以上軟硬件設(shè)計(jì)思想已經(jīng)實(shí)現(xiàn)產(chǎn)品化。該產(chǎn)品功能強(qiáng),性能穩(wěn)定可靠,已經(jīng)得到用戶的認(rèn)可。
[1]劉蘭香、張秋生著.Atmega128單片機(jī)應(yīng)用與開發(fā)實(shí)例[M].機(jī)械工業(yè)出版社,2006.6.1
[2]王鴻鈺著.步進(jìn)電機(jī)控制技術(shù)入門 [M].同濟(jì)大學(xué)出版社,1990