摘 要: title="紅外線">紅外線遙控原理及核心芯片TMS320C6201的結(jié)構(gòu)特點和主要功能。描述了紅外線實時監(jiān)視報警系統(tǒng)的設(shè)計過程,給出了系統(tǒng)的組成框圖和主要電路的連線圖,簡要地說明了系統(tǒng)軟件的算法和設(shè)計方法。
關(guān)鍵詞: 紅外線 DSP芯片 實時監(jiān)視與報警
紅外線遙控技術(shù)是利用紅外線來傳送指令的技術(shù),它在家用電器、玩具、安全保衛(wèi)、軍事技術(shù)、工業(yè)控制以及人們的日常生活等許多領(lǐng)域的應(yīng)用十分廣泛。數(shù)字信號處理器(DSP)在實時、快速地進行數(shù)字信號處理方面無疑是佼佼者。TMS320C6201芯片是TI公司推出的并行處理的數(shù)字信號處理器,采用定點運算,是目前市場上所有的DSP芯片中速度較快、處理功能較強的DSP處理器,有廣闊的應(yīng)用前景。本文即利用TMS320C6201芯片作為微處理器,成功地開發(fā)設(shè)計出了紅外線信號實時監(jiān)視報警系統(tǒng)。本系統(tǒng)具有反應(yīng)靈敏、準(zhǔn)確度高、體積小、功耗低、功能強大、抗干擾能力強、成本低等特點。
1 紅外線遙控原理及DSP芯片
1.1 紅外線遙控原理
紅外線是一種電磁射線,其特性等同于無線電或X射線。人眼可見的光波長為380~780nm,波長為780nm~1mm的長射線稱為紅外線。部分光的光譜分布如圖1所示。紅外線光電開關(guān)(光電傳感器)是光電接近開關(guān)的簡稱,它是利用被檢測物體對紅外光束的遮光或反射,由同步回路選通而檢測物體的有無,其物體不限于金屬,對所有能反射光線的物體均可檢測。鏡反射式光電開關(guān)是集發(fā)射器與接收器于一體的器件。光電開關(guān)發(fā)射器發(fā)出的光線經(jīng)過反射鏡反射回接收器,當(dāng)被檢測物體經(jīng)過且完全阻斷光線時,光電開關(guān)就產(chǎn)生了檢測開關(guān)信號,其工作示意圖如圖2所示。本系統(tǒng)選用的是浙江洞頭光電開關(guān)廠的SQ3M-3鏡反射型NPN4線、開—閉式的光電開關(guān),其特性如下。
檢測距離3m?;夭钪?le;20%。響應(yīng)頻率200Hz。指向角3°~20°。工作電壓10~30V。靜態(tài)電流≤30mA,輸出電流≥200mA。殘留電壓≤1V??垢蓴_程度:能承受峰值為±1000V,脈寬為1μs的電壓沖擊。以電纜方式連接(長度2m)。防護等級IP50(IEC規(guī)格)。環(huán)境照度:太陽光11000Lux(最大),日光燈3000Lux(最大)。絕緣電阻≥50MΩ。耐電壓AC1500V(50/60Hz1分鐘),抗振程度:10~55Hz(周期每分鐘),復(fù)振幅為1mm且X、Y、Z方向各2小時??箾_擊性:500M/s2(50g)且X、Y、Z方向各3次。環(huán)境溫度:工作時在-30℃~+80℃(未結(jié)冰狀態(tài)下),儲存時在-30℃~+80℃(未結(jié)冰狀態(tài)下)。環(huán)境濕度:工作時為35%~95%RH。指示燈動作顯示為紅色LED。
1.2 DSP芯片
TMS320C6201芯片是高速、高效定點數(shù)字信號處理芯片,是TI公司20世紀(jì)90年代后期產(chǎn)品。它采用流水線操作方式,最大處理能力為1600MIPS,完成1024定點FFT的時間只需要70μs。由于具有特殊的velociTI結(jié)構(gòu)及獨特的指令集,所以它的運算能力、并行性和靈活性都非常強大。同時其外圍設(shè)備(DMA控制器、主機接口(HPI)、中斷選擇器等)能夠很方便地與其他外圍設(shè)備進行數(shù)據(jù)交換。TMS320C6201內(nèi)部結(jié)構(gòu)圖如圖3所示,由3個主要部分組成:CPU內(nèi)核、外設(shè)和存儲器。CPU內(nèi)核中的8個功能單元可以完成并行運行,功能單元執(zhí)行邏輯、位移、乘法、加法和數(shù)據(jù)尋址等操作。它的超長指令字(VLIW)方式,其單指令字長32位,每條32位指令占用1個功能單元。取指令、指令分配和指令譯碼單元每一周期都可以從程序存儲器到功能單元傳遞8條指令,這8條指令組成1個指令包,總字長為8×32=256位。芯片內(nèi)部設(shè)置了專門的指令分配模塊,可以將每個256位指令包分配到功能單元中,并由8個功能單元并行運行。其片內(nèi)存儲器總?cè)萘繛?MB,其中2KB×256用于程序內(nèi)存和程序cache;64KB用于數(shù)據(jù)內(nèi)存和數(shù)據(jù)cache,用戶可以訪問8位、16位和32位數(shù)據(jù)。它的外設(shè)模塊包括多通道緩沖串口、時鐘、外部存儲器接口EMIF、DMA控制器、主機口和power-down邏輯等。DMA控制器可以在存儲器空間的各區(qū)域間控制轉(zhuǎn)換數(shù)據(jù);外部存儲器接口EMIF可以訪問的片外存儲器最大容量為64MB,數(shù)據(jù)總線寬度為32位,同時也提供對8位和16位存儲器的讀寫支持;16位寬的主機口HPI可以訪問TMS320C6201的所有存儲空間和設(shè)備。
2 系統(tǒng)組成及工作原理
系統(tǒng)的組成框圖如圖4所示,其中DSP芯片C6201與信號調(diào)理電路、外擴存儲器等一起構(gòu)成高速的數(shù)據(jù)采集模塊,這些模塊與相應(yīng)的軟件結(jié)合,完成對數(shù)據(jù)的采集、存儲、故障判斷和報警等任務(wù)。當(dāng)接收到光電開關(guān)的信號后,C6201向上位機發(fā)出中斷請求。若該中斷未被屏蔽,則上位機響應(yīng)中斷,并轉(zhuǎn)入中斷服務(wù)程序。中斷服務(wù)程序?qū)⒋鎯υ贑6201的外擴SDRAM中的數(shù)據(jù)通過HPI一次性讀入上位機,然后返回中斷。而上位機則根據(jù)采集的數(shù)據(jù)作出報警或消除誤報等一系列動作。由于上位機與C6201之間的數(shù)據(jù)傳輸采用的是帶地址自增的讀方式,讀取對象是C6201的外部SDRAM,其最大傳輸速率為200Mbps。所以,C6201與上位機的通信非常迅速,系統(tǒng)具有很強的實時性。為了保證C6201HPI與接口PCI9052協(xié)調(diào)穩(wěn)定地工作,除了要有合理的硬件電路外,還必須對PCI9052的內(nèi)部寄存器進行準(zhǔn)確的配置(限于篇幅,這里不作介紹)。
2.1 系統(tǒng)主要電路
2.1.1 DSP與上位機的連線
DSP與上位機連線圖如圖5所示,C6201由主機口HPI通過PLX公司的PCI9052與上位機連接。C6201的HPI是一個16位寬度的并行端口,上位機掌握該接口的主控權(quán)。通過它可以直接訪問CPU存儲空間,還可以直接訪問DMA輔助通道,以完成HPI對存儲空間的訪問。主機和CPU都可以對HPI控制寄存器(HPIC)進行訪問,主機方還可以訪問HPI地址寄存器(HPIA)、HPI數(shù)據(jù)寄存器(HPID)以及C6201的存儲映射的外圍設(shè)備。HPI與CPU存儲空間的互連是通過DMA控制器實現(xiàn)的。它們借助專門的地址和數(shù)據(jù)寄存器,通過DMA輔助通道,完成HPI對存儲空間的訪問。PCI9052是PLX公司的低成本PCI接口芯片,它支持PCI2.1協(xié)議,在33MHz的總線時鐘頻率下峰值傳輸速率可達132MHzps,改善了數(shù)據(jù)傳輸?shù)?ldquo;瓶頸”問題,而且還不會浪費資源,同時還可以實現(xiàn)資源的自動配置。因為C6201的I/O工作電壓為3.3V,PCI9052工作電壓為5V,為了使電平匹配,必需通過SN74CBTD3384進行電平轉(zhuǎn)換。SN74CBTD3384是TI公司的10位雙向總線轉(zhuǎn)換器,其輸入、輸出引腳一一對應(yīng),分別排在芯片的二側(cè),圖5中共用了3片SN74CBTD3384。NM93CS46是PLX公司的串行E2PROM,它用于加載PCI9052的配置信息,并按一定的順序存放PCI9052的設(shè)備號(DID)、供應(yīng)號(SID)、供應(yīng)商號(VID)、子設(shè)備號(SDID)、子供應(yīng)商代號(SVID)、PCI總線與局部總線之間的地址空間映射關(guān)系、片選取地址、控制位、狀態(tài)位及其他雜項配置等。用MAX706作為硬件看門狗電路,在系統(tǒng)“死機”或程序“跑飛”時使系統(tǒng)能夠自動復(fù)位,以避免系統(tǒng)癱瘓。
2.1.2 DSP與外部存儲器電路的連線
TMS320C6201的EMIF是外部存儲器與DSP的接口,CPU訪問外部存儲器時必須通過EMIF。本系統(tǒng)采用同步動態(tài)型64Mb的SDRAM,DSP與SDRAM的接口如圖6所示,DSP與16位的ROM接口如圖7所示(其他電路略)。
2.2 軟件設(shè)計及算法分析
由于C6201的指令集較簡單,完成DSP算法中的一些指令(如乘、加、循環(huán)等)需要循環(huán)體,使程序設(shè)計復(fù)雜,所以軟件設(shè)計采用了軟件流水線技術(shù),并利用C6201的8個功能單元,讓程序并行運行。因系統(tǒng)對實時性要求高,故CPU采用了中斷工作方式。主程序?qū)τ布跏蓟?則等待中斷。中斷服務(wù)程序主要完成數(shù)據(jù)的采集與識別工作。系統(tǒng)中斷脈沖時間約為幾毫秒,但中斷處理程序必須在這個時間內(nèi)完成(C6201能保證在短時間內(nèi)完成相關(guān)函數(shù)、FFT等復(fù)雜的運算)。
為保證系統(tǒng)的準(zhǔn)確性、減少誤報率,本系統(tǒng)采用了識別算法。其思路是:由于被檢測物體經(jīng)過且完全阻斷某個光電開關(guān)至少要有幾十到幾百毫秒的時間,因而光電開關(guān)信號會在連續(xù)的數(shù)個周期中存在,且它們的函數(shù)有很強的自相關(guān)性。但微處理器可以對信號進行多次采樣,加以分析計算,以減少漏報率。
軟件由二大部分組成:一是運行在DSP內(nèi)的系統(tǒng)監(jiān)控程序,二是運行在上位機的圖形界面用戶程序。前者的實時性很強,故采用TMS320C6201匯編語言編寫,經(jīng)匯編、鏈接、調(diào)試后將目標(biāo)代碼通過JTAG口下載到DSP內(nèi)。它的主要功能:(1)系統(tǒng)初始化。完成ROM、RAM、中斷以及定時器等外設(shè)初始化設(shè)置。(2)定時采樣。將采集的數(shù)據(jù)經(jīng)濾波處理后存入數(shù)據(jù)RAM中。(3)對數(shù)據(jù)作FFT運算。根據(jù)選擇好的參數(shù)配置控制端口的工作等(限于篇幅,具體程序不作介紹)。
3 結(jié)束語
本DSP系統(tǒng)的開發(fā)是在ICETEK/EVM-AD40M高速采集板背板系統(tǒng)上進行的,選用的是TI公司的原裝TMS320C6201EVM處理板,十分方便。而且由于利用了DSP硬件結(jié)構(gòu)更適合作數(shù)據(jù)處理的特點,使程序用較少的時間就能完成比較復(fù)雜的運算,加之采用的并行技術(shù)、先進的數(shù)據(jù)分析算法和優(yōu)化的編程方法,使得其在報警的速度和準(zhǔn)確度方面得到了保證。該系統(tǒng)具有誤報率及漏報率低、時效性和實時性強的特點,己被做成產(chǎn)品,在一些超市、銀行、高級飯店、交通管理以及智能大廈等場所被使用,效果良好,其應(yīng)用前景十分看好。
參考文獻
1 吳湘淇,肖熙,郝曉莉.信號、系統(tǒng)與信號處理的軟硬件實現(xiàn).北京:電子工業(yè)出版社,2002
2 任麗香,馬淑芬,李方慧.TMS320C6000系列DSPs的原理與應(yīng)用.北京:電子工業(yè)出版社,2000
3 馬明建,周長城.數(shù)據(jù)采集與處理技術(shù).西安:西安交通大學(xué)出版社,1998
4 蘇長贊,鄒殿貴.紅外線與超聲波遙控.北京:人民郵電出版社,2001