版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、目錄第一章緒論11.1研究背景11.2無線視頻監(jiān)控應(yīng)用開發(fā)意義1第二章嵌入式無線視頻監(jiān)控系統(tǒng)總體方案設(shè)計(jì)22.1總體框架設(shè)計(jì)22.2系統(tǒng)硬件構(gòu)成32.3系統(tǒng)應(yīng)用軟件設(shè)計(jì)52.4本章小結(jié)6第三章嵌入式linux操作系統(tǒng)及開發(fā)環(huán)境的建立63.1嵌入式linux操作系統(tǒng)63.2交叉開發(fā)環(huán)境的建立73. 2. 1 gnu開發(fā)工具集83.2.2建立宿主機(jī)交叉開發(fā)環(huán)境93.3基于嵌入式linux的上層軟件開發(fā)模式103. 3. 1應(yīng)用程序的開發(fā)103.3.2應(yīng)用程序的調(diào)試10第四章視頻數(shù)據(jù)采集與處理114.1嵌入式linux下的視頻采集模塊軟件設(shè)計(jì)114. 1. 1 usb攝像頭驅(qū)動(dòng)程序加載124. 1.
2、 2基于v4l模塊的程序開發(fā)134.2圖像識(shí)別報(bào)警模塊軟件設(shè)計(jì)164. 2. 1基本結(jié)構(gòu)與算法原理174.2.2基于邊緣的背景去除算法的原理與實(shí)現(xiàn)184. 2. 3語音采集與報(bào)警的實(shí)現(xiàn)204.3圖像數(shù)據(jù)壓縮模塊軟件設(shè)計(jì)224.3.1 mpeg-4壓縮理論與實(shí)現(xiàn)224.4本章小結(jié)27第五章網(wǎng)絡(luò)視頻傳輸模塊軟件設(shè)計(jì)275.1流媒體傳輸控制協(xié)議棧275.2 rtp/rtcp協(xié)議分析與實(shí)現(xiàn)295. 2. 1 r丁p協(xié)議分析295. 2. 2 rtcp協(xié)議分析305. 2.3 rtp/rtcp協(xié)議的軟件設(shè)計(jì)與實(shí)現(xiàn)315.3基于rtp/rtcp的mpeg一4傳輸技術(shù)355. 3. 1 rtp有效載荷的確定
3、355. 3. 2 vop的封裝算法365.4 rtsp服務(wù)器建立375. 4. 1 r丁sp協(xié)議概述375. 4. 2 rtsp的消息385. 4. 3 sdp會(huì)話描述協(xié)議385. 4. 4 rtsp的方法395.4.5監(jiān)控系統(tǒng)中r下sp服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)405.5本章小結(jié)44第六章 總結(jié)與展望446.1論文總結(jié)446.2研究展望44參考文獻(xiàn)45第一章緒論1.1研究背景現(xiàn)在每個(gè)人都生活在嵌入式產(chǎn)品的世界里,在手表、手機(jī)、照相機(jī)、汽車,甚至運(yùn)動(dòng)鞋里都有嵌入式系統(tǒng)的身影。嵌入式系統(tǒng)小到一個(gè)芯片,大到一個(gè)標(biāo)準(zhǔn)的pc板,種類繁多,形式各異。事實(shí)上,嵌入式設(shè)備在數(shù)量上遠(yuǎn)遠(yuǎn)超過了各種通用計(jì)算機(jī)。pc的各
4、種輸入輸出和外部設(shè)備均是由嵌入式處理器控制的,每臺(tái)pc的外部設(shè)備中包含了5 j10個(gè)嵌入式微處理器,而一些高檔汽車中則包含了30到50個(gè)甚至更多的嵌入式微處理器,在工業(yè)流水線控制、通訊、儀器儀表、船舶、航空航天、軍事裝備等領(lǐng)域更是嵌入式計(jì)算機(jī)的天下。嵌入式系統(tǒng)的發(fā)展離不開通信和網(wǎng)絡(luò)等技術(shù)的支持,嵌入式設(shè)備的聯(lián)網(wǎng)成為必然趨勢。面向21世紀(jì)的嵌入式系統(tǒng)要求配備標(biāo)準(zhǔn)的一種或多種網(wǎng)絡(luò)通信接口,如ieee1394,usb, can, irda或bluetooth, gprs等無線網(wǎng)絡(luò)接口,同時(shí)也需要提供相應(yīng)的通信組網(wǎng)協(xié)議軟件和物理層驅(qū)動(dòng)軟件,在這樣的趨勢下,嵌入式internet (embedded i
5、nternet )技術(shù)應(yīng)運(yùn)而生。嵌入式internet是指設(shè)備通過嵌入式模塊而非pc接入internet,以internet為介質(zhì)實(shí)現(xiàn)信息交互的技術(shù)。例如,工業(yè)遠(yuǎn)程監(jiān)測系統(tǒng)是利用internet技術(shù)和總線控制技術(shù)實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集、分析并實(shí)時(shí)監(jiān)控設(shè)備運(yùn)行,從而降低成本,提高效率;手持智能設(shè)備通過gprs等無線接入方式和internet相連,代替pc在internet進(jìn)行個(gè)人數(shù)據(jù)傳輸、處理和存儲(chǔ),如收發(fā)郵件,下載資料,即時(shí)聊天等;遠(yuǎn)程視頻監(jiān)控系統(tǒng)是利用internet以及視頻壓縮等技術(shù)將實(shí)時(shí)視頻數(shù)據(jù)傳到監(jiān)控中心,其應(yīng)用范圍極為廣泛。嵌入式internet帶來的不僅是傳輸方式的改變,更重要的是拓寬了
6、傳統(tǒng)設(shè)備信息交流的范圍。通過internet,任何地點(diǎn),任何時(shí)間,任何兩個(gè)設(shè)備的信息交換都將成為可能,從而真正步入了“信息化”社會(huì)。1.2無線視頻監(jiān)控應(yīng)用開發(fā)意義研究表明,人類通過視覺所獲取的信息約占到其獲取的總信息量的70%,視覺信息具有直觀、可靠等一系列優(yōu)越性。近年來,隨著計(jì)算機(jī)、網(wǎng)絡(luò)及通信技術(shù)的迅猛發(fā)展,整個(gè)世界對網(wǎng)絡(luò)視頻方面的投入逐年加大,相關(guān)應(yīng)用也越來越廣泛,形成了具有巨大發(fā)展?jié)摿Φ氖袌觯找媸艿饺藗兊闹匾暫完P(guān)注。視頻監(jiān)控系統(tǒng)的發(fā)展基本上是從早期的模擬閉路電視監(jiān)控系統(tǒng)向數(shù)模結(jié)合的視頻監(jiān)控系統(tǒng)和現(xiàn)在的數(shù)字視頻監(jiān)控系統(tǒng)演變的過程。其中,利用網(wǎng)絡(luò)實(shí)現(xiàn)視頻監(jiān)控已成為一種趨勢,傳統(tǒng)的模擬視頻監(jiān)
7、控技術(shù)正在逐步向數(shù)字化、網(wǎng)絡(luò)化、智能化、無線化發(fā)展。可以說,視頻監(jiān)控進(jìn)入了全數(shù)字化的網(wǎng)絡(luò)時(shí)代。模擬視頻監(jiān)控系統(tǒng)中的信息流為模擬的視頻信號(hào),系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)主要是一種單功能、單向的信息采集網(wǎng)絡(luò),因此系統(tǒng)盡管已發(fā)展到很高的水平,己無太多潛力可挖,其局限性依然存在。模擬監(jiān)控系統(tǒng)的主要缺點(diǎn)有:(1)通常只適合于小范圍的區(qū)域監(jiān)控。模擬視頻信號(hào)的傳輸工具主要是同軸電纜,而同軸電纜傳輸模擬視頻信號(hào)的距離不大于1 km,雙絞線的距離更短,這就決定了模擬監(jiān)控只適合于單個(gè)大樓、小的居民區(qū)以及其它小范圍的場所;(2)系統(tǒng)的擴(kuò)展能力差。對于已經(jīng)建好的系統(tǒng),如要增加新的監(jiān)控點(diǎn),工程繁瑣復(fù)雜,新的設(shè)備也很難添加到原有的系統(tǒng)
8、之中;(3)無法形成有效的報(bào)警聯(lián)動(dòng),由于各部分獨(dú)立運(yùn)作,相互之間的控制協(xié)議很難互通,聯(lián)動(dòng)只能在有限的范圍內(nèi)進(jìn)行。數(shù)字視頻監(jiān)控系統(tǒng)將系統(tǒng)中信息流(包括視頻、音頻、控制等)從模擬狀態(tài)轉(zhuǎn)為數(shù)字狀態(tài),根本上改變視頻監(jiān)控系統(tǒng)從信息采集、數(shù)據(jù)處理、傳輸、系統(tǒng)控制等的方式和結(jié)構(gòu)形式。信息流的數(shù)字化、編碼壓縮、開放式的協(xié)議,使視頻監(jiān)控系統(tǒng)與安防系統(tǒng)中其它各子系統(tǒng)間實(shí)現(xiàn)無縫連接,并在統(tǒng)一的操作平臺(tái)上實(shí)現(xiàn)管理和控制。在國內(nèi)外市場上,主要推出的是數(shù)字控制的模擬視頻監(jiān)控和數(shù)字網(wǎng)絡(luò)視頻監(jiān)控兩類產(chǎn)品。前者技術(shù)發(fā)展已經(jīng)非常成熟、性能穩(wěn)定,并在實(shí)際工程應(yīng)用中得到廣泛應(yīng)用;后者是新近崛起的以計(jì)算機(jī)技術(shù)及圖像視頻壓縮為核心的新型
9、視頻監(jiān)控系統(tǒng),該系統(tǒng)解決了模擬系統(tǒng)部分弊端而迅速崛起,但仍需進(jìn)一步完善和發(fā)展。嵌入式方式的視頻監(jiān)控系統(tǒng)主要是以嵌入式視頻服務(wù)器方式提供視頻監(jiān)控。其具有布控區(qū)域廣闊、幾乎無限的無縫擴(kuò)展能力、易于組成非常復(fù)雜的監(jiān)控網(wǎng)絡(luò)、性能穩(wěn)定可靠等特點(diǎn),必將成為今后視頻監(jiān)控領(lǐng)域的主流產(chǎn)品。本文的工作就是開發(fā)一套基于arm處理器和usb攝.像頭的嵌入式無線網(wǎng)絡(luò)視頻監(jiān)控系統(tǒng)。本文所設(shè)計(jì)的嵌入式無線視頻監(jiān)控系統(tǒng)順應(yīng)視頻監(jiān)控系統(tǒng)的發(fā)展趨勢,結(jié)合先進(jìn)的視頻壓縮技術(shù)和網(wǎng)絡(luò)傳輸協(xié)議,并將近幾年來,逐漸成熟的無線通訊技術(shù)運(yùn)用到視頻監(jiān)控中,具有一定的理論和實(shí)踐價(jià)值。需要指出的是,由于現(xiàn)在的gprs網(wǎng)絡(luò)穩(wěn)定性和覆蓋范圍的局限,這里
10、考察的這類無線監(jiān)控系統(tǒng)還沒有真正得到商業(yè)上的大規(guī)模應(yīng)用。但是,相信隨著無線網(wǎng)絡(luò)的建設(shè),特別是第三代移動(dòng)通信網(wǎng)絡(luò)的建設(shè)和成熟,此系統(tǒng)在不遠(yuǎn)的將來一定會(huì)得到廣泛的應(yīng)用。 第二章嵌入式無線視頻監(jiān)控系統(tǒng)總體方案設(shè)計(jì)嵌入式無線視頻監(jiān)控系統(tǒng)涉及通信技術(shù)和視頻壓縮技術(shù)等多方面要點(diǎn),良好的總體方案設(shè)計(jì)是系統(tǒng)開發(fā)成功的關(guān)鍵,本章提出系統(tǒng)設(shè)計(jì)的總體方案,分別從硬件方案和軟件方案兩個(gè)方面介紹。2.1總體框架設(shè)計(jì)視頻監(jiān)控系統(tǒng)的一般過程是:在一些重要的場所安放一個(gè)或若干個(gè)攝像機(jī)拍攝監(jiān)控現(xiàn)場,然后將視頻信號(hào)通過一定的傳輸介質(zhì)傳到指定的監(jiān)控中心實(shí)時(shí)播放,或是再通過存儲(chǔ)設(shè)備,將媒體存儲(chǔ)到存儲(chǔ)介質(zhì)上,同時(shí)還可以根據(jù)不同需要和途
11、徑在現(xiàn)場安裝其它的探測裝置作為監(jiān)控系統(tǒng)的輔助設(shè)備,如溫濕度傳感器、聲音報(bào)警裝置等。根據(jù)視頻監(jiān)控系統(tǒng)的特點(diǎn)構(gòu)建系統(tǒng)總體框架如下:圖2. 1監(jiān)控系統(tǒng)總體框架設(shè)計(jì)整個(gè)無線視頻監(jiān)控系統(tǒng)由嵌入式微處理器系統(tǒng)和被控對象組成,嵌入式微處理器系統(tǒng)是整個(gè)系統(tǒng)的核心,由硬件層、中間層、軟件層和功能層組成。其中軟件層完成監(jiān)控系統(tǒng)的視頻圖像,音頻數(shù)據(jù)的采集壓縮,識(shí)別報(bào)警等功能,并為構(gòu)建流媒體服務(wù)器實(shí)現(xiàn)網(wǎng)絡(luò)通信協(xié)議;被控對象則是usb攝像頭、gprs無線網(wǎng)絡(luò)連接模塊,聲音接收器和其他監(jiān)測傳感器等,它們接收嵌入式微處理器系統(tǒng)發(fā)出的控制命令,執(zhí)行所規(guī)定的操作或任務(wù)。2.2系統(tǒng)硬件構(gòu)成整個(gè)嵌入式無線視頻監(jiān)控系統(tǒng)主要由嵌入式微
12、處理器、外圍硬件設(shè)備、嵌入式操作系統(tǒng)以及應(yīng)用軟件等幾部分組成。嵌入式微處理器方面,risc技術(shù)推動(dòng)著計(jì)算機(jī)體系結(jié)構(gòu)從封閉的cisc向開放的結(jié)構(gòu)發(fā)展。全球各大cpu芯片制造廠商爭相開發(fā)生產(chǎn)risc芯片,目前的典型結(jié)構(gòu)為arm系列、mips和shi。一般的嵌入式實(shí)時(shí)操作系統(tǒng)都支持上述r.isc微處理器。arm公司是一家ip供應(yīng)商,其核心業(yè)務(wù)是ip核以及相關(guān)工具的開發(fā)和設(shè)計(jì)。arm公司的ip核也由arm7 arm9發(fā)展到今天的arm 11版本。 一般而言計(jì)算機(jī)體系架構(gòu)設(shè)計(jì)主要由以下幾部分組成:指令集設(shè)計(jì),cpu核的設(shè)計(jì),流水線技術(shù),存儲(chǔ)器層次結(jié)構(gòu)設(shè)計(jì),i/o系統(tǒng)設(shè)計(jì)。risc思想的提出從簡化指令集的
13、角度降低了微處理器的開發(fā)難度和成本,同時(shí)提高微處理器的并行度。arm微處理器特點(diǎn):體積小、低功耗、低成本、高性能;支持thumb (16位)/arm (32位)雙指令集,能很好地兼容8/16位器件;大量使用寄存器,指令執(zhí)行速度更快;大多數(shù)數(shù)據(jù)操作都在寄存器中完成;尋址方式靈活簡單,執(zhí)行效率高;指令長度固定。arm體系的設(shè)計(jì)是基于risc思想的,其代碼密度性能介于其他多數(shù)risc微處理器和cisc微處理器之間。后來引入的thumb指令集則大大提高了代碼密度。arm主要使用32位的risc指令,但是指令代碼利用率低,arm為了彌補(bǔ)此不足,在新型arm構(gòu)架(v4t版本以上)定義了16位的thumb指
14、令集。另外,為了加速通信和多媒體中有關(guān)數(shù)字信號(hào)的處理,arm微處理器在risc的基礎(chǔ)上增加了dsp核中的關(guān)鍵部件,雙核協(xié)同工作。 由于arm架構(gòu)的微處理器主要用于嵌入式系統(tǒng),因此arm構(gòu)架在設(shè)計(jì)中十分注意低電壓、低功耗處理,設(shè)計(jì)中采用了以下一些措施:降低電源電壓;減少門的翻轉(zhuǎn)次數(shù),當(dāng)某個(gè)功能電路不需要時(shí),禁止門翻轉(zhuǎn);減少門的數(shù)目,即降低芯片的集成度;降低時(shí)鐘頻率。arm的低功耗,使得arm在專門針對嵌入式系統(tǒng)的微處理器市場中始終處于有利的地位。arm還其他采用了一些特別的技術(shù),在保證高性能的前提下盡量縮小芯片的面積。目前廣泛應(yīng)用的arm微處理器有arm7系列、arm9系列、arm9e系列、ar
15、m 1 qe系列、securcore系列和intel strongarm, xscale系列。鑒于arm微處理器的眾多技術(shù)和市場優(yōu)勢,本系統(tǒng)硬件設(shè)計(jì)中,選用了一款帶有arm處理器的嵌入式評(píng)估板,如圖2.2所示。該硬件平臺(tái)采用intel xscale結(jié)構(gòu)的pxa255嵌入式微處理器。硬件平臺(tái)上的重要部件有晶振(時(shí)鐘)電路,復(fù)位電路,鍵盤、led等人機(jī)交互接口,jtag接口電路,存儲(chǔ)系統(tǒng)采用了64mb的nand flash和32mb的sdram。為方便接入lan網(wǎng)絡(luò),設(shè)計(jì)了rtl8019網(wǎng)絡(luò)芯片接口電路s。本系統(tǒng)的gprs應(yīng)用設(shè)計(jì)采用的方式是將gprs模塊獨(dú)立設(shè)計(jì),與嵌入式硬件平臺(tái)通過dart接口
16、經(jīng)電平轉(zhuǎn)換后的rs232接口相連。這種模塊化的結(jié)構(gòu)設(shè)計(jì),可以降低硬件調(diào)試難度,同時(shí)也是基于硬件平臺(tái)的可重用性考慮。圖2. 2監(jiān)控系統(tǒng)硬件結(jié)構(gòu)圖2.3系統(tǒng)應(yīng)用軟件設(shè)計(jì)系統(tǒng)的軟件設(shè)計(jì)基于嵌入式linux操作系統(tǒng)平臺(tái),系統(tǒng)軟件結(jié)構(gòu)模塊如圖2.3所示,整個(gè)系統(tǒng)根據(jù)功能分為4個(gè)獨(dú)立的模塊,各功能模塊功能說明如下:圖2. 3應(yīng)用軟件功能模塊(1)視頻音頻采集模塊。該模塊用于完成對視頻音頻信號(hào)的采集,將usb攝像頭和聲音接收器采集到的信號(hào)以文件的形式保存或者放入緩沖區(qū)供其它模塊使用。(2)圖像識(shí)別報(bào)警模塊。該模塊對采集得到的圖像信息做識(shí)別處理,發(fā)現(xiàn)異常時(shí)則以彩信或聲音的形式報(bào)警。(3)圖像壓縮模塊。該模塊用
17、于完成對圖像數(shù)據(jù)的壓縮處理,讀取由視頻采集模塊產(chǎn)生的緩沖區(qū)數(shù)據(jù),對其進(jìn)行壓縮處理后再以文件的形式保存或者將壓縮數(shù)據(jù)放入緩沖區(qū)供其它模塊使用。(4)網(wǎng)絡(luò)傳輸模塊。該模塊用于完成對視頻數(shù)據(jù)的網(wǎng)絡(luò)傳輸,讀取由緩沖區(qū)里的視頻數(shù)據(jù),并將其打成rtp包,然后將其做成流式文件格式,通過內(nèi)置的流媒體服務(wù)器傳輸?shù)骄W(wǎng)絡(luò)上。監(jiān)控系統(tǒng)直接將數(shù)字視頻信號(hào)采集編碼,無需計(jì)算機(jī)的協(xié)助即可獨(dú)立進(jìn)行工作,并通過gprs無線接入模塊與internet進(jìn)行連接。系統(tǒng)內(nèi)置網(wǎng)絡(luò)視頻服務(wù)器,用戶通過各類gprs智能終端以及標(biāo)準(zhǔn)的流媒體播放程序就可以根據(jù)ip地址對視頻采集設(shè)備進(jìn)行訪問,觀看通過無線gprs網(wǎng)絡(luò)傳輸?shù)膶?shí)時(shí)圖像。同時(shí)監(jiān)控系統(tǒng)具
18、備智能圖像識(shí)別功能,對定點(diǎn)場景的異常情況進(jìn)行彩信,聲音等形式的報(bào)警。 整個(gè)系統(tǒng)具有如下的特點(diǎn):(1)設(shè)備硬件核心采用基于xscale系列的pxa255嵌入式芯片,系統(tǒng)軟件使用嵌入式linux系統(tǒng),使得系統(tǒng)本身具有強(qiáng)大的處理功能,方便功能的擴(kuò)展;(2)視頻采集采用具有usb接口的通用外置攝像頭進(jìn)行,使視頻采集的通用性更好,軟硬件設(shè)計(jì)容易,成本更低;(3)軟件部分采用模塊化設(shè)計(jì),各模塊均可作為獨(dú)立的子系統(tǒng)存在,增強(qiáng)的系統(tǒng)通用性、可升級(jí)性和可維護(hù)性;(4)圖像識(shí)別報(bào)警功能采用基于邊緣檢測的背景去除算法,對異常情況識(shí)別準(zhǔn)確率高;(5)采用先進(jìn)mpeg-4視頻壓縮方式,適合無線網(wǎng)絡(luò)傳輸?shù)男枰?(6)聯(lián)網(wǎng)
19、方便,安裝簡易,充分利用gprs永遠(yuǎn)在線等優(yōu)點(diǎn)。2.4本章小結(jié)本章首先描述了嵌入式視頻監(jiān)控系統(tǒng)的總體設(shè)計(jì)框架,硬件開發(fā)平臺(tái)的主要構(gòu)成,并闡述了基于該硬件平臺(tái)的依據(jù)和優(yōu)勢。然后設(shè)計(jì)了基于嵌入式linux操作系統(tǒng)的應(yīng)用軟件框架,并指出了系統(tǒng)具備的特點(diǎn)。 第三章嵌入式linux操作系統(tǒng)及開發(fā)環(huán)境的建立采用linux的嵌入式系統(tǒng)設(shè)計(jì)者可以利用開源代碼的易得性、posix兼容性、堅(jiān)實(shí)的可靠性以及大量的應(yīng)用程序,而且沒有許可費(fèi)用。所有這些好處,再加上價(jià)格優(yōu)勢,使得linux成為嵌入式操作系統(tǒng)的一個(gè)出色的解決方案。3.1嵌入式linux操作系統(tǒng)嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)理論為基礎(chǔ),軟件硬件可裁剪,適
20、應(yīng)系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)6。一般的嵌入式系統(tǒng)具有以下特征:系統(tǒng)內(nèi)核小;專用性強(qiáng);系統(tǒng)可裁剪以及實(shí)時(shí)操作系統(tǒng)(rtos)的需求。嵌入式操作系統(tǒng)eos ( embedded operating system)是一種支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,它是嵌入式系統(tǒng)(包括硬、軟件系統(tǒng))重要的組成部分,包括與硬件相關(guān)的底層驅(qū)動(dòng)軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié)議、圖形界面、標(biāo)準(zhǔn)化瀏覽器等。與通用操作系統(tǒng)相比較,嵌入式操作系統(tǒng)在系統(tǒng)實(shí)時(shí)高效性、硬件的相關(guān)依賴性、軟件固態(tài)化以及應(yīng)用的專用性等方面的特點(diǎn)。目前廣泛應(yīng)用的eos產(chǎn)品包括vxworks, wince, vrt
21、x, paimos, psos, nucleus,lynx , qnx等,這些rtos都是商用的嵌入式操作系統(tǒng),它們在系統(tǒng)可靠性和對用戶的技術(shù)支持上都有優(yōu)勢。但是缺點(diǎn)是價(jià)格昂貴,核心源代碼不公開,可移植性差,難以實(shí)現(xiàn)嵌入式系統(tǒng)要以最小的軟硬件系統(tǒng),最低的成本去完成目標(biāo)功能這一特點(diǎn)。linux系統(tǒng)與unix系統(tǒng)兼容,開放源代碼。它原本被設(shè)計(jì)為桌面系統(tǒng),現(xiàn)在廣泛應(yīng)用于服務(wù)器領(lǐng)域。而更大的影響在于它正逐漸的應(yīng)用于嵌入式設(shè)備。由于linux使用gpl(gnu general public license),所以任何對將linux定制于pda或者其他移動(dòng)設(shè)備的人都可以從internet上免費(fèi)下載其內(nèi)核和
22、應(yīng)用程序,并開始移植或開發(fā)。許多l(xiāng)inux改良品種迎合了嵌入式/實(shí)時(shí)市場。它們包括 rtlinux(實(shí)時(shí)linux ),uclinux(用于非mmu設(shè)備的linux), montavista linux(用于arm, mips, ppc的linux分發(fā)版)、arm-linux ( arm上的linux和其它linux系統(tǒng)。linux用于嵌入式領(lǐng)域的優(yōu)勢具體表現(xiàn)如下:(1) linux內(nèi)核精簡,各部分的功能明確,可擴(kuò)展性強(qiáng),容易剪裁。(2)免費(fèi),可以極大幅度地降低產(chǎn)品成本,在價(jià)格上面擁有優(yōu)勢,只要不違反gpl協(xié)議,就可以自由發(fā)布和使用軟件。(3)代碼開放,可以免費(fèi)獲得,有利于后來者學(xué)習(xí),縮短開發(fā)
23、過程。(4) linux符合ieee posix編程標(biāo)準(zhǔn),有非常好的可移植性和穩(wěn)定的性能。(5)支持tcp/ip協(xié)議,有強(qiáng)大的網(wǎng)絡(luò)功能。(6)豐富的開發(fā)工具和大量的文檔。linux提供c c+十,java以及其他很多的開發(fā)工具,這些工具可以被免費(fèi)地使用。當(dāng)然,嵌入式linux也存在其不足之處。在實(shí)時(shí)領(lǐng)域內(nèi),其實(shí)時(shí)性存在不足。linux是一個(gè)分時(shí)系統(tǒng),雖然實(shí)現(xiàn)了軟實(shí)時(shí)性,在很多的情況下還是無法滿足滿足實(shí)時(shí)的需求。對于一些實(shí)時(shí)性要求強(qiáng)的環(huán)境需要改進(jìn)。對于具體的應(yīng)用還需要開發(fā)具體的啟動(dòng)程序、設(shè)備驅(qū)動(dòng)程序和上層應(yīng)用程序。這些程序是不具備通用性的,需要專門開發(fā)。表3. 1嵌入式linux與商業(yè)rtos比
24、較3.2交叉開發(fā)環(huán)境的建立linux軟件開發(fā)以native方式進(jìn)行的,即本機(jī)開發(fā)、調(diào)試,本機(jī)運(yùn)行的方式。這種方式通常不適合于嵌入式系統(tǒng)的軟件開發(fā),因?yàn)閷τ谇度胧较到y(tǒng)的開發(fā),沒有足夠的資源在本機(jī)運(yùn)行開發(fā)工具和調(diào)試設(shè)備。嵌入式系統(tǒng)的軟件開發(fā)采用交叉編譯調(diào)試的方式,如圖3.1.圖3. 1基于宿主機(jī)和目標(biāo)板的交又開發(fā)環(huán)境交叉編譯調(diào)試環(huán)境建立在宿主機(jī)上,開發(fā)時(shí)使用宿主機(jī)上的交叉編譯、匯編及連接工具形成可執(zhí)行的二進(jìn)制代碼,然后把可執(zhí)行文件下載到目標(biāo)機(jī)上運(yùn)行。gnu所倡導(dǎo)的自由軟件除了linux操作系統(tǒng)外,gnu的軟件還包括編譯器(gcc, g+十)、二進(jìn)制轉(zhuǎn)換工具(objdump, objcopy)、調(diào)試
25、工具(gdb, gdbserver, kgdb)和基于不同硬件平臺(tái)的開發(fā)庫。3. 2. 1 gnu開發(fā)工具集交叉編譯環(huán)境的建立最重要的就是要有一個(gè)交叉編譯器。本系統(tǒng)開發(fā)用到的編譯器是-linux-gcc,它是gcc的改版。編譯器的生成依賴于相應(yīng)的函數(shù)庫。配置一個(gè)gcc的交叉編譯器一般包含如下幾個(gè)步驟:(1)取得binutils, gcc, glibc的源碼;(2)配置并編譯binutils,得到下一步要用到的匯編器和連接器;(3)配置并編譯gcc源代碼,生成gcc編譯器;(4)配置glibc編譯生成glibc的c函數(shù)庫;(5)再次配置并編譯gcc源代碼,生成其它語言的編譯器如:c+等。也可從網(wǎng)
26、上直接下載相關(guān)的工具鏈(toolchain ) o arm-linux-toolchain包括一系列的開發(fā)調(diào)試工具17。工具集如表3.2所示。表3. 2 gnu工具集其中主要組件包括:(1) arm-linux-gcc: arm交叉編譯器,可以以交叉編譯的形式開發(fā)目標(biāo)應(yīng)用程序,即在宿主機(jī)上開發(fā)編譯可在目標(biāo)上運(yùn)行的二進(jìn)制文件。arm-linux-gcc的使用方法同標(biāo)準(zhǔn)gcc基本一樣,可以參考gun的gcc文檔。(2)輔助工具。包括-linux-obj dump(可以反編譯二進(jìn)制文件),arm-linux-as(匯編編譯器),arm-linux-ld(連接器)。(3) arm-linux-gdb(
27、交叉調(diào)試器),可使用多種交叉調(diào)試方式,gdb-bdm(背景調(diào)試工具),gdbserver(使用以太網(wǎng)絡(luò)調(diào)試)o arm-linux的打印終端通常情況下是串口,內(nèi)核在啟動(dòng)時(shí)所有的信息都打印到串口終端(使用printf函數(shù)打印),同時(shí)也可以通過串口終端與系統(tǒng)交互。3.2.2建立宿主機(jī)交叉開發(fā)環(huán)境在進(jìn)行應(yīng)用程序開發(fā)之前,要在宿主機(jī)上建立和配置好開發(fā)應(yīng)用程序所需要的開發(fā)環(huán)境。(1)安裝redhat linux9.0。需要選擇定制(custom)安裝,并且在定制時(shí)選擇nfs(網(wǎng)絡(luò)文件系統(tǒng))和dialup workstation(撥號(hào)工作站);配置網(wǎng)絡(luò)時(shí),主機(jī)ip要與開發(fā)板的ip在同一子網(wǎng)內(nèi)。(2)安裝工
28、具鏈,即把toolchain壓縮包解壓到相應(yīng)的目錄下,默認(rèn)的路徑是/usr/local下,把-linux工具鏈目錄加入到環(huán)境變量path中,可實(shí)現(xiàn)-linux-gcc編譯器直接調(diào)用。(3)安裝arm-linux操作系統(tǒng),即把a(bǔ)rm-li壓縮包解壓到相應(yīng)目錄下,采用下列命令安裝kernel.tgz到根目錄下。 tar zxvf kernel.tgz -c/(4)配置nfs ( network file system )。配置nfs的目的是讓目標(biāo)板通過網(wǎng)絡(luò)映像宿主機(jī)硬盤,從而使宿主機(jī)的硬盤成為目標(biāo)板的一個(gè)虛擬硬盤,這時(shí)你宿主機(jī)硬盤上的文件映射為目標(biāo)板上某一目錄中的文件。(5)配置minicom(
29、minicom作為目標(biāo)板的顯示終端,以監(jiān)控目標(biāo)板上程序的運(yùn)行)。運(yùn)行minicom-s進(jìn)行配置,選擇serial port setup項(xiàng),設(shè)置如下參數(shù): serial device: /dev/ttyso bps/parbits: 115200 8n 1 hardware flow control: no software flow control: no3.3基于嵌入式linux的上層軟件開發(fā)模式3. 3. 1應(yīng)用程序的開發(fā)本系統(tǒng)在軟件模塊開發(fā)時(shí)采用了以下兩種嵌入式linux應(yīng)用程序開發(fā)模式:1.先在宿主機(jī)(intel cpu)上調(diào)試通過后,再移植到pxa255評(píng)估板上。這種host方式下有
30、gdb調(diào)試工具可用。移植的工作要解決一個(gè)函數(shù)庫的問題。由于嵌入式linux開發(fā)平臺(tái)提供的工ibc庫同標(biāo)準(zhǔn)的libc庫有一些不同,在程序移植時(shí)可能會(huì)有函數(shù)未定義的問題。對于這種問題,就需要編制這些要用到卻又未定義的函數(shù)。同時(shí)也需要改動(dòng)makefile以適應(yīng)目標(biāo)板。2.利用nfs直接在目標(biāo)板上開發(fā)將宿主機(jī)和目標(biāo)板通過串口相連,在宿主pc機(jī)上運(yùn)行minicom作為目標(biāo)板的顯示終端,利用nfs在目標(biāo)板端mount上宿主機(jī)硬盤,這樣就可直接在目標(biāo)板上調(diào)試宿主機(jī)硬盤中交叉編譯好的應(yīng)用程序。下面給出這種直接開發(fā)模式下的開發(fā)流程:(1)用串口和網(wǎng)線將宿主機(jī)和目標(biāo)板連接起來。要求宿主機(jī)安裝了nfs(2)在宿主機(jī)
31、上編寫應(yīng)用程序,并進(jìn)行交叉編譯,生成可執(zhí)行的文件。交叉編譯可以用命令行的方式,如果有多個(gè)源文件,則可以通過編寫makefile來進(jìn)行編譯;(3)將編譯好的文件放到開啟nfs服務(wù)的目錄下(4)在宿主機(jī)上啟動(dòng)minicom作為目標(biāo)板的仿真終端(5) mount映射宿主機(jī)硬盤根目錄/到板子的/mnt目錄下,例如:mount 192. 168.0. 2:/mnt(6)在minicom下即可運(yùn)行映射目錄下的可執(zhí)行文件調(diào)試信息通過串口打印在宿主機(jī)的minicom屏幕上或記錄在syslog文件中,這樣便可進(jìn)行應(yīng)用程序的調(diào)試。假如程序運(yùn)行不對,可方便切換到宿主機(jī)去編輯、編譯,只要不重啟開發(fā)板就不必再作任何操作
32、,因?yàn)閙ount的宿主機(jī)硬盤上的應(yīng)用程序會(huì)自動(dòng)覆蓋更新,再重新執(zhí)行的就是更改后的新版本。這樣反復(fù)調(diào)試、更改、編譯再調(diào)試,而不必反復(fù)燒寫開發(fā)板,直至程序工作正常,再將最終定版的映象文件燒寫到開發(fā)板上。3.3.2應(yīng)用程序的調(diào)試直接在目標(biāo)板上調(diào)試應(yīng)用程序采用以下三種方法:(1)打印串口。這是嵌入式系統(tǒng)中最常用的調(diào)試手段,雖然簡單但卻有效實(shí)用。其實(shí)幾種方法相比之下,最有效便捷的方法還是printf,尤其配合mount進(jìn)行應(yīng)用程序的調(diào)試。(2)使用log記錄文件。例如,使用syslog將應(yīng)用程序運(yùn)行過程中的中間信息全部v錄在/var/log/syslog下。(3) gdb調(diào)試。首先需要在板子上移植gdb
33、server,才支持通過以太網(wǎng)或串口遠(yuǎn)程調(diào)試。下面介紹以太網(wǎng)調(diào)試步驟: 先在目標(biāo)板端啟動(dòng)gdbserver cd /bin gdbserver 192.168.0.2:7070 test這里test為用戶應(yīng)用程序可執(zhí)行文件名且已燒制在板子/bin目錄下,7070為tcp端口號(hào),宿主機(jī)通過這個(gè)端口與板子建立調(diào)試通道。端口號(hào)可任意選取,一般大于20000然后在宿主機(jī)側(cè)鍵入下列命令: cd /home/test arm-linux-gdb test.gdb 則進(jìn)入gdb提示符: (gdb) target remote 192.168.0.230:7070該命令與板子建立tcp連接以進(jìn)行調(diào)試,下一步進(jìn)
34、行調(diào)試時(shí)不要運(yùn)行run,而應(yīng)該用continue,即c。要實(shí)現(xiàn)gdb(或ddd)的源代碼級(jí)調(diào)試,必須在編譯應(yīng)用程序時(shí)打開一g參數(shù)。采用該選項(xiàng)進(jìn)行編譯,flat格式的可執(zhí)行文件大小沒有變化,只是.gdb文件變大,這樣在gdb和ddd環(huán)境中就可以看到源代碼。3.5本章小結(jié) 本章首先介紹了嵌入式linux的發(fā)展與特點(diǎn),給出了交叉開發(fā)環(huán)境的建立方法,然后詳細(xì)分析了內(nèi)核的引導(dǎo)和啟動(dòng)過程以及內(nèi)核移植、文件系統(tǒng)移植和bootloader設(shè)計(jì)等嵌入式系統(tǒng)開發(fā)所涉及的重要環(huán)節(jié),最后介紹了基于嵌入式linux的上層軟件開發(fā)模式。 第四章視頻數(shù)據(jù)采集與處理視頻數(shù)據(jù)的采集是監(jiān)控系統(tǒng)實(shí)現(xiàn)的第一步,也是圖像識(shí)別和視頻壓縮
35、的基礎(chǔ)。本監(jiān)控系統(tǒng)由多個(gè)子系統(tǒng)構(gòu)成,在系統(tǒng)功能模塊劃分的基礎(chǔ)上設(shè)計(jì)一個(gè)良好的應(yīng)用程序結(jié)構(gòu)和一系列符合視頻數(shù)據(jù)特點(diǎn)的數(shù)據(jù)結(jié)構(gòu),并借助linux多線程的程序設(shè)計(jì)方法和多種系統(tǒng)調(diào)用完成功能模塊的軟件設(shè)計(jì)是本章工作的重點(diǎn)。4.1嵌入式linux下的視頻采集模塊軟件設(shè)計(jì)本系統(tǒng)運(yùn)行的平臺(tái)是基于xscale的嵌入式linux系統(tǒng)。系統(tǒng)在啟動(dòng)后,啟用了mmu,系統(tǒng)進(jìn)入保護(hù)模式,所以應(yīng)用程序就不能直接讀寫外設(shè)的v0區(qū)域(包括v0端口和vo內(nèi)存),這時(shí)一般就要借助于該外設(shè)的驅(qū)動(dòng)來進(jìn)入內(nèi)核完成這個(gè)工作。所以系統(tǒng)中的視頻采集分為兩步實(shí)現(xiàn):一是為usb接口的數(shù)碼攝像頭在內(nèi)核中寫入驅(qū)動(dòng),二是編寫上層應(yīng)用程序獲取視頻數(shù)據(jù)。
36、4. 1. 1 usb攝像頭驅(qū)動(dòng)程序加載系統(tǒng)使用的是usb接口的外置數(shù)碼攝像頭,usb設(shè)備和嵌入式硬件開發(fā)平臺(tái)構(gòu)成了一個(gè)usb通信系統(tǒng)。linux usb主機(jī)驅(qū)動(dòng)由三部分組成13。主機(jī)控制器驅(qū)動(dòng)程序 ( hcd ) , usb驅(qū)動(dòng)(usbd)、設(shè)備端驅(qū)動(dòng)程序(slave device driver),相互關(guān)系如圖4.1所示。圖4. 1 linux usb驅(qū)動(dòng)程序結(jié)構(gòu)hcd是usb主機(jī)驅(qū)動(dòng)程序中直接與硬件交互的軟件模塊;usbd部分是整個(gè)usb主機(jī)驅(qū)動(dòng)的核心,提供usb總線管理,帶寬管理等;usb設(shè)備端驅(qū)動(dòng)是最終與應(yīng)用程序交互的軟件模塊,向應(yīng)用程序屏蔽了硬件實(shí)現(xiàn)了的細(xì)節(jié),使得應(yīng)用程序可以像操作普
37、通文件一樣來操作外部設(shè)備,即可以使用和操作文件中相同的、標(biāo)準(zhǔn)的系統(tǒng)調(diào)用接口函數(shù)來完成對硬件設(shè)備的打開、關(guān)閉、讀寫和i/o控制操作。為應(yīng)用程序提供訪問接口。對于 usb攝像頭來說,其核心是感光芯片和數(shù)據(jù)處理dsp芯片。其中dsp芯片是影響攝像頭視頻采集速度以及相關(guān)性能的主要因素。本系統(tǒng)選用的是中星微zc301,用它將攝取的數(shù)字視頻圖像直接通過usb接口送入開發(fā)板進(jìn)行處理。這款芯片的特點(diǎn)是內(nèi)含數(shù)字?jǐn)z像ic接口,dram接口、實(shí)時(shí)圖像壓縮引擎、usb接口、fifo等功能,通過采用影像光源自動(dòng)增益補(bǔ)強(qiáng)技術(shù),自動(dòng)亮度、白平衡控制技術(shù),色飽和度、對比度、邊緣增強(qiáng)以及伽馬矯正等先進(jìn)的影像控制技術(shù),搭配com
38、s感光芯片使各項(xiàng)技術(shù)指標(biāo)都能與ccd芯片相媲美,因此,完全可以滿足后面系統(tǒng)圖像識(shí)別報(bào)警處理以及實(shí)時(shí)監(jiān)控的需要。在linux下,對驅(qū)動(dòng)程序的編譯添加一般有兩種方式14。可以靜態(tài)編譯進(jìn)內(nèi)核,再運(yùn)行新的內(nèi)核來測試;也可以編譯成模塊在運(yùn)行時(shí)加載。第一種方法效率較低,但在某些場合是唯一的方法。模塊方式調(diào)試效率很高,它使用insmod工具將編譯的模塊直接插入內(nèi)核,如果出現(xiàn)故障,可以使用od從內(nèi)核中卸載模塊。不需要重新啟動(dòng)內(nèi)核。但嵌入式系統(tǒng)是針對具體應(yīng)用的,所以本系統(tǒng)將linux下的zc301驅(qū)動(dòng)程序通過menuconfig配置以及內(nèi)核重編譯將設(shè)備驅(qū)動(dòng)程序以靜態(tài)的方法編譯進(jìn)內(nèi)核,再將帶有zc301驅(qū)動(dòng)的內(nèi)核
39、,將其燒寫到開發(fā)板上即可使用。usb模塊的視頻數(shù)據(jù)流如圖4.2所示。圖4. 2 usb模塊的視頻數(shù)據(jù)傳輸4. 1. 2基于v4l模塊的程序開發(fā)linux下的video for linux,簡稱v4l為市場現(xiàn)在常見的電視采集卡和并口及usb口的攝像頭提供統(tǒng)一的編程接口【s。同時(shí)也提供無線電通信、文字電視廣播解碼和垂直消隱的數(shù)據(jù)接口?,F(xiàn)在己經(jīng)有了video for linux two驅(qū)動(dòng),即v4l2,它解決了v4l中存在的一些問題,并提高了硬件性能。但是,目前v4l2仍然沒有集成到linux的內(nèi)核中,因此,本系統(tǒng)的視頻采集開發(fā)仍然是基于v4l的。linux下與v4l相關(guān)的設(shè)備文件與其用途如表4.1
40、所示。表4. 1 v4l的設(shè)備文件與用途usb攝像頭在linux中和打印機(jī),鼠標(biāo)一樣,屬于字符設(shè)備。其主設(shè)備號(hào)是810在嵌入式平臺(tái)上使用usb攝像頭時(shí),先用mknod命令創(chuàng)建一個(gè)設(shè)備結(jié)點(diǎn)/dev/video0再用in命令建立該結(jié)點(diǎn)與/dev/v41/video0的連接。訪問時(shí),用open()打開設(shè)備/dev/video0即可。利用v4l對usb攝像頭的編程需要li下兩個(gè)系統(tǒng)調(diào)用,分別是ioctl()調(diào)用和mmap()調(diào)用。ioctl ( input/output control ) o ioctl系統(tǒng)調(diào)用的功能是通過打開的文件描述符對各種文件尤其是字符設(shè)備文件進(jìn)行控制,完成特定的i/o操作。v
41、4l支持的ioctl命令大概有二十幾個(gè)16,在應(yīng)用中主要用的是下面幾個(gè)命令:表4. 2 v4l的主要控制命令mmap調(diào)用的功能是實(shí)現(xiàn)內(nèi)存映射,即將指定文件或?qū)ο蟮囊徊糠钟成涞絻?nèi)存中去。這樣可以通過訪問特定的內(nèi)存區(qū)域來直接對文件或?qū)ο筮M(jìn)行存取。與:ead和write。調(diào)用相比,這種i/o方式效率更高。mmap調(diào)用同樣適用于設(shè)備文件,即可以用mmap調(diào)用將設(shè)備文件映射到內(nèi)存中去,對設(shè)備文件的讀寫就轉(zhuǎn)化為對內(nèi)存的讀寫。對持續(xù)采集大量圖像數(shù)據(jù)的攝像頭來說,用mmap的內(nèi)存映射方式來傳送數(shù)據(jù),更能體現(xiàn)效率。mmap調(diào)用的格式是:void* mmap(void* start,size t length,i
42、nt prot,int flags,int fd,off t offset);參數(shù)fd是被映射到內(nèi)存文件的描述符;start指向欲對應(yīng)的內(nèi)存起始地址;length為映射到內(nèi)存的文件大小;offset為目標(biāo)文件中被映射部分起始點(diǎn)距文件開頭的偏移量;mmap調(diào)用成功后,其返回值就是指向內(nèi)存映射區(qū)域的指針,該內(nèi)存區(qū)域的大小就是由length參數(shù)指定的字節(jié)長度,接著應(yīng)用程序就可以對該區(qū)域進(jìn)行存取操作。v4l視頻程序設(shè)計(jì)時(shí)必須聲明兩個(gè)頭文件sys/types.h和linux/videodev.h,然后,遵循v4l給出video device數(shù)據(jù)結(jié)構(gòu)的定義:typedef struct v41 input
43、 int fd; struct video- capability capability;/*設(shè)備的基本信息*/ struct video_picture picture;/*設(shè)備采集的圖象的各種屬性*/ struct video- mmap mmap;/*用于設(shè)置ap*/ struct video一 mbuf mbuf;/*利用ap進(jìn)行映射的幀的信息*/ unsigned char *map;/*存放返回地址*/ char device256; int width; int height; struct frame * f; pthreadwe tthread; int cur frame;
44、 int framestat2;/*雙緩沖*/ video_ device;主要用到的采集操作函數(shù)定義如下: int v41_ open(char *name video device *vd);/*打開設(shè)備文件*/ int v41_ close(video_device *vd);/*關(guān)閉設(shè)備文件*/ int v41-get capability(video一evice *vd); /*取得設(shè)備文件的相關(guān)信息*/ int v41-get_pictwe(video_ device *vd); /*取得輸入到攝像頭的影像信息*/ int v41_ setalette(v4ldevice *vd,
45、 int palette)/*設(shè)置采集圖片格式*/ int v41_grab_ init(v41_ device *vd, int width, int height);/*采集初始化*/ int v41-grab frame(video一evice *vd, int frame); /*將影像放到mmap()映射的內(nèi)存*/ int v41-grab_ sync(v41_ device *vd); /*同步,等待一幀影像采集的完成*/ int v41_ mmap(v41一evice *vd); /*內(nèi)存映射*/ int v41-get mbuf(v41_ device *vd); /*得到用于內(nèi)存映射的緩沖區(qū)信息*/ unsigned char *v41_get address(v41_ device *vd)/*將采集數(shù)據(jù)的起始地址以指針返回*/圖4. 2 v4l視頻采集流程圖下面給出幾個(gè)主要函數(shù)的實(shí)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物流中心車輛調(diào)度與使用
- 招投標(biāo)項(xiàng)目技術(shù)創(chuàng)新策略與提示
- 無條件退出合作協(xié)議
- 智能家居招投標(biāo)流程解析
- 智能家居用電施工合同
- 臨時(shí)租賃用電施工協(xié)議
- 高三下學(xué)期工作計(jì)劃模板5篇
- 員工對公司的建議簡短范文(三篇)
- 2024年建設(shè)用砂石料供應(yīng)合同
- 04版離婚合同:三個(gè)孩子的撫養(yǎng)權(quán)、財(cái)產(chǎn)及贍養(yǎng)費(fèi)約定
- 橋梁結(jié)構(gòu)健康監(jiān)測系統(tǒng)實(shí)施和驗(yàn)收規(guī)范
- 2024安徽交控集團(tuán)所屬企業(yè)校園招聘筆試參考題庫附帶答案詳解
- 高級(jí)綜合英語智慧樹知到期末考試答案2024年
- 退休項(xiàng)目經(jīng)理返聘合同-工程管理
- 銀行柜員外包的可行性方案
- 電磁輻射EMF健康影響和測量技術(shù)及方法綜述樣本
- 種子投資計(jì)劃書
- 境外腐敗治理專項(xiàng)工作總結(jié)
- 鐵的氫氧化物課件
- 儲(chǔ)能消防簡介演示
- 顱內(nèi)壓監(jiān)護(hù)在顱腦損傷中的應(yīng)用-課件
評(píng)論
0/150
提交評(píng)論