基于ARM的串口通信系統(tǒng)的設計方案【實用文檔】doc_第1頁
基于ARM的串口通信系統(tǒng)的設計方案【實用文檔】doc_第2頁
基于ARM的串口通信系統(tǒng)的設計方案【實用文檔】doc_第3頁
基于ARM的串口通信系統(tǒng)的設計方案【實用文檔】doc_第4頁
基于ARM的串口通信系統(tǒng)的設計方案【實用文檔】doc_第5頁
已閱讀5頁,還剩77頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

基于ARM的串口通信系統(tǒng)的設計方案【實用文檔】doc文檔可直接使用可編輯,歡迎下載

目錄基于ARM的串口通信系統(tǒng)的設計方案【實用文檔】doc文檔可直接使用可編輯,歡迎下載摘要···········································································································································11設計目的·······························································································································12設計要求·······························································································································13設計內容·······························································································································23。1S3C2410與串口通信概述·····························································································23.1.1S2C2410處理器概述·······························································································23.1.2串口通信················································································································33.2方案設計························································································································43.3電路設計························································································································43。3。1電源設計···········································································································43.3。2晶振電路·············································································································53.3.3復位電路·············································································································63.3。5存儲器設計········································································································63。3。4JTAG接口············································································································63.3.6串口電路·············································································································73.4軟件設計···························································································································83。4。1Bootloader工作原理·····················································································83.4.2第一階段·············································································································93.4.1第二階段············································································································10總結與致謝······························································································································11參考文獻··································································································································12摘要串口通信是目前單片機和DSP等嵌入式系統(tǒng)之間,以及嵌入式系統(tǒng)與PC機或無線模塊之間的一種非常重要且普遍使用的通信方式。在嵌入式系統(tǒng)的硬件結構中,通常只有一個8位或16位的CPU,不僅要完成主流程的工作,同時還要處理隨時發(fā)生的各種中斷,因而嵌入式系統(tǒng)中的串口通信程序設計與PC機有很大的不同。串行端口的本質功能是作為CPU和串行設備間的編碼轉換器,一般微機內都配有通信適配器,使計算機能夠與其他具有RS232串口的計算機或設備進行通信。本系統(tǒng)中目標機開發(fā)板的內核采用的是三星的S3C2410,工作非??煽?,可穩(wěn)定運行在203MHz的時鐘頻率下。其外設非常豐富,功能強大,完全可以滿足設計需要。串口線采用常用的RS232型接口模式,能實現(xiàn)計算機與開發(fā)板間的數(shù)據(jù)傳輸與控制。關鍵詞:ARM;串口通信;串行端口;RS2321設計目的以嵌入式芯片S3C2410為核心的最小嵌入式系統(tǒng)構建方法,給出了S3C2410的復位電路、電源電路、存儲器電路和串口電路等硬件組成。在ADS環(huán)境下自制的最小Boobtloader程序開發(fā)并調試。2設計要求串口通信是嵌入式設備必備的通信方式之一,選用ARM芯片和電平轉換芯片完成出口通信的設計,并設計完整物理接口。根據(jù)設計題目的要求,選擇確定ARM芯片型號、電平轉換芯片型號,完成系統(tǒng)硬件設計和程序設計。3設計內容3.1S3C2410與串口通信概述3.1.1S3C2410處理器概述S3C2410是Samsung公司基于ARM920T內核的嵌入式微處理器.本文以S3C2410為核心,配置了最基本外圍電路構成了最小的嵌入式系統(tǒng),并在ADS上開發(fā)了啟動程序,完成硬件初始化,配置運行環(huán)境,串日調試功能。Samsung公司推出的16/32位RISC處理器S3C2410A,為手持設備和一般類型應用提供了低價格、低功耗、高性能小型微控制器的解決方案。為了降低整個系統(tǒng)的成本,S3C2410A提供了以下豐富的內部設備:分開的16KB的指令Cache和16KB數(shù)據(jù)Cache,MMU虛擬存儲器管理,LCD控制器(支持STN&TFT),支持NANDFlash系統(tǒng)引導,系統(tǒng)管理器(片選邏輯和SDRAM控制器),3通道UART,4通道DMA,4通道PWM定時器,I/O端口,RTC,8通道10位ADC和觸摸屏接口,IIC-BUS接口,IIC-BUS接口,USB主機,USB設備,SD主卡&MMC卡接口,2通道的SPI以及內部PLL時鐘倍頻器.S3C2410A采用了ARM920T內核,0.18um工藝的CMOS標準宏單元和存儲器單元.它的低功耗、精簡和出色的全靜態(tài)設計特別適用于對成本和功耗敏感的應用。同樣它還采用一種叫做AdvancedMicrocontrollerBusArchitecture(AMBA)新型總線結構.S3C2410A的顯著特性是它的CPU核心,是一個由AdvancedRISCMachines(ARM)有限公司設計的16/32位ARM920TRISC處理器。ARM920T實現(xiàn)了MMU,AMBABUS和Harvard高速緩沖體系結構。這一結構具有獨立的16KB指令Cache和16KB數(shù)據(jù)Cache,每個都是由8字長的行(line)構成。通過提供一系列完整的系統(tǒng)外圍設備,S3C2410A大大減少了整個系統(tǒng)的成本,消除了為系統(tǒng)配置額外器件的需要.本文檔將介紹S3C2410A中集成的以下片上功能:●1.8V/2.0V內核供電,3。3V存儲器供電,3.3V外部I/O供電;●具備16KB的I-Cache和16KB的D-Cache/MMU;●外部存儲控制器(SDRAM控制和片選邏輯)●LCD控制器(?大支持4K色STN和256K色TFT)提供1通道LCD專用DMA.●4通道DMA并有外部請求引腳.●3通道UART(IrDA1。0,16字節(jié)TxFIFO,和16字節(jié)RxFIFO)/2通道SPI●1通道多主IIC—BUS/1通道IIS-BUS控制器.●兼容SD主接口協(xié)議1。0版和MMC卡協(xié)議2.11兼容版?!瘢捕丝赨SB主機/1端口USB設備(1。1版)●4通道PWM定時器和1通道內部定時器●看門狗定時器●117個通用I/O口和24通道外部中斷源。●功耗控制模式:具有普通,慢速,空閑和掉電模式。●8通道10比特ADC和觸摸屏接口●具有日歷功能的RTC●具有PLL片上時鐘發(fā)生器3。1。1串口通信串口通信的概念,即串口按位(bit)發(fā)送和接收字節(jié)通信協(xié)議是指通信雙方按照約定的數(shù)據(jù)格式、同步方式、傳送速度、傳送步驟等規(guī)程來進行數(shù)據(jù)傳輸本次采用異步通信,其特點是通信雙方以一個字符(包括特定附加位)作為數(shù)據(jù)傳輸單位,且發(fā)送方傳送字符的間隔時間是不定的。在傳輸一個字符時總是從起始位開始,以停止位結束。如圖1所示:圖1串行數(shù)據(jù)幀格式S3C2410的UART提供3個獨立的異步串行通信端口,每個端口可以基于中斷或者DMA進行操作。換句話說,UART控制器可以在CPU和UART之間產生一個中斷或者DMA請求來傳輸數(shù)據(jù)。UART在系統(tǒng)時鐘下運行可支持高達230.4K的波特率,如果使用外部設備提供的UEXTCLK,UART的速度還可以更高。每個UART通道各含有兩個16位的接收和發(fā)送FIFO.S3C2410的UART包括可編程的波特率,紅外接收/發(fā)送,一個或兩個停止位插入,5—8位數(shù)據(jù)寬度和奇偶校驗.每個UART包括一個波特率發(fā)生器、一個發(fā)送器、一個接收器和一個控制單元,如圖11-1所示。波特率發(fā)生器的輸入可以是PCLK或者UEXTCLK.發(fā)送器和接收器包含16位的FIFO和移位寄存器,數(shù)據(jù)被送入FIFO,然后被復制到發(fā)送移位寄存器準備發(fā)送,然后數(shù)據(jù)按位從發(fā)送數(shù)據(jù)引腳TxDn輸出.同時,接收數(shù)據(jù)從接收數(shù)據(jù)引腳RxDn按位移入接收移位寄存器,并復制到FIFO。特性RxD0,TxD0,RxD1,TxD1,RxD2,和TxD2基于中斷或者DMA操作UARTCh0,1,和2具有IrDA1.0&16字節(jié)FIFOUARTCh0和1具有nRTS0,nCTS0,nRTS1,和nCTS1支持發(fā)生/接收握手3.2方案設計圖2通信系統(tǒng)的組成框圖本系統(tǒng)是以嵌入式芯片S3C2410為核心的最小嵌入式系統(tǒng)構建方法,給出了S3C2410的復位電路、調試接口、電源電路、存儲器電路和串口電路等硬件組成。3.3電路設計3.3。1電源設計S3C2410工作時內核需要1。8V電壓,I/O端口和外設需要3。3V電壓。VDDi/VDDiarm引腳口是供S3C2410內核的1。8V電壓;VDDalive引腳是功能復位和端口狀態(tài)寄存器電壓.M12引腳RTCVDD是RTC模塊的1。8V電壓,用電池供電保證系統(tǒng)的掉電后保持實時時鐘.VDDOP引腳是I/O端口3。3V電壓;VDDMOP引腳是存儲器I/O端口電壓;還有一系列VSS引腳需要接到電源地上.3。3V電壓從SV用AMS1117-3。3轉換得到如圖3所示;1。8V從3。3V通過MIC5207-1.8轉換得到。如圖3所示。圖3電源電路3。3。2晶振電路S3C2410內部有時鐘管理模塊,有2個鎖相環(huán),其中MPLL能夠產生CPU卞頻FCLK,AHB總線外設時鐘HCLK和APB總線外設時鐘PCLK;UPLL產生USB模塊的時鐘。OM3,OM2都接地時,主時鐘源和USB模塊時鐘源都由外接晶振產生.在XTIpll和XTOpll之間連接主晶振,可以選擇12MHz品振,通過內部寄存器的設置產生不同頻率的FOLK,HCLK和PCLK;在XTIrtc和XTOrtc上需要接32。768kHz的晶振供RTC模塊使用.同時在MPLLCAP和UPLLCAP上也要外接5pF的環(huán)路濾波電容。晶振電路如圖4所示。圖4晶振電路3。3。3復位電路S3C2410的J12引腳為nRESET復位引腳,nRESET上給4個FOLK時間的低電平后就可以復位??梢栽O計如圖5所小的復位電路,其中上電復位是靠RC電路特性完成,開關二極管1N4148在手動復位時對電容起快速放電的作用,因此可以把復位電平快速拉到OV。反響門74HC14可以起到延時作用,保證有足夠的復位時間.圖5復位電路3。3。4JTAG接口S3C2410有標準的JTAG接口,TCI(H6)為測試時鐘輸入;TDI(J1)為測試數(shù)據(jù)輸入;TDO(JS)為測試數(shù)據(jù)輸出;TMS(J3)為測試模式選擇,TMS用來設置JTAG接日處于某種特定的測試式;nTRST(H5)為測試復位,輸入引腳,低電平有效。其nTRST,TMS,TCK,TDI需要接10K的上拉電阻。通過,JTAG日可以完成芯片測試或在線編程.3.3。5存儲器設計S3C2410有32根數(shù)據(jù)線和27根地址線,因此地址線的尋址范圍為128M;但是S3C2410還有8根存儲器芯片片選信號線nGCSO--nGCS7,因此總的尋址空間為128M*8=1G。NandFlash啟動模式下復位時S3C2410的存儲器映射如圖6所示。如當訪問物理地址Ox08000000-0x10000000內的地址則nGCSl自動為低電平,以此類推。通過圖6可知SDRAM只能連接在nGCS6和nGCS7片選引腳上。S3C2410提供了SDRAM的接口,其中包括nSRAS:行信號鎖存;nSCAS:列信號鎖存;nSCS(就是nGCS6):片選信號;圖6DQM[3:0]:數(shù)據(jù)屏蔽;SCLI[1:0];時鐘;SCKE:時鐘有效;nBE[3:0]:高/低字節(jié)有效;nWBE[3:0]:寫有效.MT48LC16M16A2P是4塊16位32M的SDRAM存儲器.MT48LC16M16A2P的行地址13位為A0--A12,列地址9位為CAO—CA8,行和列地址是復用的。MT48LC16M16A2P包括4個塊,通過BA0,BA1的組合選擇塊。MT48LC16M16A2P是16位存儲器,因此數(shù)據(jù)線為DQO—-DQ15,還有CS片選,CLK時鐘,CKE時鐘使能,RAS行鎖存,CAS列鎖存,WE寫使能等引腳.圖7表示MT48LC16M16A2P和S3C2410的連接方法,其中BA0,BA1需要連接ADD24和ADDR25,通過S3C2410的說明可知,因為內存總大小是64M因此塊選擇信號必須使用ADDR24和ADDR25。S3C2410內部有NANDFlash控制器,支持從NADNFlash啟動.圖7是K9F120864MFlash芯片和S3C2410的連接方式.S3C2410采用一組內部寄存器來完成NANDFlash的操作.圖7存儲器連接電路3。3.6串口電路S3C2410的DART提供了二個同步串行IO日,圖8是COMO的連接方式。串口數(shù)據(jù)的收發(fā)有查詢方式、中斷方式和DMA方式等,這些可以在UCONO寄存器中設置.UTXH0把要發(fā)送的數(shù)據(jù)寫入此寄存器。URXH0讀此寄存器獲得串日接收的數(shù)據(jù)。串日一般可以用程序運行信息的輸出和程序調試。圖8串口連接電路3.4軟件設計在本系統(tǒng)中,指紋圖像識別部分的算法主要通過S3C2410芯片來完成。當S3C2410的OM0,OM1引腳接低電平時S3C2410就從NADNFlash啟動。在NANDFlash啟動模式下上電后NANDFlash控制器自動將NANDFlash的最前面的4k區(qū)域拷貝到所謂的”steppingstone”單面.這一過程完全由硬件自動實現(xiàn)."steppingstone”實際上是S3C2410內部的一個SRAM,因為NADNFlash不支持程序片內運行,因此必須把NANDFlash內的指令拷貝到SRAM或SDRAM中才可以運行.在拷貝完前4k代碼后,NANDFlash控制器自動將“steppingstone”映射到arm地址空間0x00000000開始的前4k區(qū)域.在映射過程完成后NANDFlash控制器將pc指針直接指向arm地址空間的0x00000000位置,準備開始執(zhí)行“steppingstone”上的代碼。而“steppingstone”上從NANDFlash拷貝過來的4k代碼,是程序員寫的bootloader的前4k代碼。bootloader之前寫好,并己經(jīng)被燒寫到NANDFlash的。x00000000開始區(qū)域。3。4.1Bootloader工作原理Bootloader是引導操作系統(tǒng)的程序,也是開發(fā)階段目標板和PC機的通信工具.Bootloader一般都放在NANDFlash的起始位置,這樣上電后Bootbader的第一個指令被自動執(zhí)行。由于BootLoader的實現(xiàn)依賴于CPU的體系結構,因此大多數(shù)BootLoader都分為stage1和stage2兩大部分.依賴于CPU體系結構的代碼,比如設備初始化代碼等,通常都放在stagel中,而目通常都用匯編語言來實現(xiàn),以達到短小精悍的目的。而stage2則通常用C語言來實現(xiàn),這樣可以實現(xiàn)復雜的功能,而目代碼會具有更好的可讀性和可移植性.階段1和階段2的工作流程如圖9。圖9程序流程圖3。4。2第一階段第一階段的卞要工作是硬件設備初始化,加載BootLoader的stage2,準備RAM空;拷貝BootLoader的stage2到RAM空間中;設置好堆棧;跳轉到stage2的C入日點下面介紹ADS環(huán)境下開始制作簡單Bootloader的方法。先建立工程命名為myBoot,定義出程序的基本結構如下:AREAmvBoot,CODE,READONLY;聲明一個代碼段,名稱為mvBooLENTRY;程序入口聲明,程序的開始執(zhí)行位置__ENTRY;入口名稱為_ENTRY…………;中間寫主要代碼END;程序結束在myBoot工程的Settings中做一些設置.首先設置Target/TargetSettings/postLink中選擇“ARMfromELF”。Linker/ArmLinker/0utput/LinkType選Simple簡單連接方式;ROBase設置為0x30008000代碼段連接地址。實際上ROBASE指定了程序的靜態(tài)連接地址。程序真正被執(zhí)行時所在的內存地址叫做運行地址.如果連接時用到絕對地址的話運行地址和鏈接地址保持一致時程序才能正常運行,這種代碼叫做與位置有關代碼。如果連接時沒有涉及到絕對地址那么連接地址和運行地址不一樣程序也可以正常運行,這種代碼叫做位置無關的代碼.但是Bootloader一開始時被加載在0x00位置開始運行,這會不會和ROBas.設置地址沖突呢?實際上是會沖突的,解決沖突的辦法就采用位置無關代碼(PIC)。實際上Boodloader的絕大部分代4i最后想讓它運行在0x30000800開始的SDRAM單,只有第一階段代碼運行在0x00開始的SRAM單,因此把階段1用位置無關的匯編代碼實現(xiàn)整個程序就正常運行了。RWBase是數(shù)據(jù)段的開始位置,如果不指定數(shù)據(jù)段,就緊接著代碼段放置.在Options->Imageentrypoint指定代碼的入口__ENTRY。程序的第一步要設置中斷向量表。S3C2410有7種中斷,中斷入日地址在0x00開始處,每個中斷占用4個字節(jié),正好可以放一個跳轉指令.程序如下:bResetHandler;復位中斷,也是整個程序的入口,b指令是根據(jù)當前PC進行跳轉,因此可以實現(xiàn)位置無關代碼引。在ResetHandler中需要做的工作有:關閉看門狗、關閉所有中斷、設置主頻、初始化SDRAM、設置中斷堆棧,最后搬移代碼到SDRAM中。最后一步跳轉到C程序的入口函數(shù)main中。3.4。3第二階段這階段代碼用C語言編寫,從main函數(shù)開始。這個階段的卞要任務有串日初始化、MMU的初始化、USB初始化、以太網(wǎng)初始化等.Bootloader工作時顯示屏可能還沒有工作,或者日標板根本就沒有顯示屏或鍵盤等設備,因此人機交勻_一般通過串日來實現(xiàn).因此必須初始化串口,通過串日打印運行信息或者接收用戶輸入.用串日連接到PC上,用專用或通用的串口軟件來接收信息或輸入信息??偨Y與致謝本次課程設計所設計的系統(tǒng)具有成本低廉,體積小,功耗低等特點,并且可靠性、可擴展性、同時節(jié)省硬件資源。但同時存在一些不足,本系統(tǒng)中的代碼是順序執(zhí)行的,運行時間較長。通過本次課程設計,使我對ARM嵌入式開發(fā)有了一定的掌握和理解,鞏固了我在《ARM嵌入式系統(tǒng)開發(fā)及應用》課程中所學的基本理論知識和實驗技能,使我對《ARM嵌入式系統(tǒng)開發(fā)及應用》課程有了更深入的了解,熟悉了S3C210的串口的使用,了解S3C2410的內部功能模塊,及內核架構。進一步激發(fā)了我對所學專業(yè)學習的興趣;提高了我的思考與實踐能力。在設計的過程當中,指導老師陳菲給予了我熱心的幫助和大力的支持,給我提了諸多的寶貴意見,拓寬了我的思路。在此我向老師致以崇高的敬意和衷心的感謝!參考文獻[1]杜春雷。ARM體系結構與編程[M].北京:清華大學出版社,2003。[2]周立功.ARM嵌入式Linux系統(tǒng)構建與驅動開發(fā)范例[M]。北京:北京航空航天大學出版社,2006.[3]斯洛斯(Sloss,A。N.)。ARM嵌入式系統(tǒng)開發(fā):軟件設計與優(yōu)化[M]。北京:北京航空航天大學出版社,2005。[4]ARM&Linux嵌入式系統(tǒng)教程。北京:北京航空航天大學出版社,2004.[5]陳賾.ARM9嵌入式技術及Linux高級實踐教程[M].北京:北京航空航天大學出版社,2005。[6]孫天澤,袁文菊.嵌入式設計及Linux驅動開發(fā)指南——基于ARM9處理器[M].第2版。北京:電子工業(yè)出版社,2007。[7]田澤.ARM9嵌入式Linux開發(fā)實驗與實踐[M]。北京:北京航空航天大學出版社,2006.[8]于明.ARM9嵌入式系統(tǒng)設計與開發(fā)教程[M]。北京:電子工業(yè)出版社,2006。[9]趙星寒。ARM開發(fā)工具ADS原理與應用[M].北京:北京航空航天大學出版社,2006.[10]季昱,林俊超,宋飛編.ARM嵌入式應用系統(tǒng)開發(fā)典型實例[M]。北京:中國電力出版社,2005。微服務系統(tǒng)設計方案微服務本質 微服務架構從本質上說其實就是分布式架構,與其說是一種新架構,不如說是一種微服務架構風格。?簡單來說,微服務架構風格是要開發(fā)一種由多個小服務組成的應用。每個服務運行于獨立的進程,并且采用輕量級交互.多數(shù)情況下是一個HTTP的資源API.這些服務具備獨立業(yè)務能力并可以通過自動化部署方式獨立部署。這種風格使最小化集中管理,從而可以使用多種不同的編程語言和數(shù)據(jù)存儲技術。?對于微服務架構系統(tǒng),由于其服務粒度小,模塊化清晰,因此首先要做的是對系統(tǒng)整體進行功能、服務規(guī)劃,優(yōu)先考慮如何在交付過程中,從工程實踐出發(fā),組織好代碼結構、配置、測試、部署、運維、監(jiān)控的整個過程,從而有效體現(xiàn)微服務的獨立性與可部署性。 本文將從微服務系統(tǒng)的設計階段、開發(fā)階段、測試階段、部署階段進行綜合闡述。?理解微服務架構和理念是核心。系統(tǒng)環(huán)境名稱版本說明JDK1。8SpringBootSpringFrameworkRibbonkafkaRabbitMQ微服務架構的挑戰(zhàn)可靠性:由于采用遠程調用的方式,任何一個節(jié)點、網(wǎng)絡出現(xiàn)問題,都將使得服務調用失敗,隨著微服務數(shù)量的增多,潛在故障點也將增多。也就是沒有充分的保障機制,則單點故障會大量增加.運維要求高: ?系統(tǒng)監(jiān)控、高可用性、自動化技術分布式復雜性:??網(wǎng)絡延遲、系統(tǒng)容錯、分布式事務部署依賴性強:? 服務依賴、多版本問題性能(服務間通訊成本高):? 無狀態(tài)性、進程間調用、跨網(wǎng)絡調用?數(shù)據(jù)一致性:? 分布式事務管理需要跨越多個節(jié)點來保證數(shù)據(jù)的瞬時一致性,因此比起傳統(tǒng)的單體架構的事務,成本要高得多。另外,在分布式系統(tǒng)中,通常會考慮通過數(shù)據(jù)的最終一致性來解決數(shù)據(jù)瞬時一致帶來的系統(tǒng)不可用。重復開發(fā): ?微服務理念崇尚每個微服務作為一個產品看待,有自己的團隊開發(fā),甚至可以有自己完全不同的技術、框架,那么與其他微服務團隊的技術共享就產生了矛盾,重復開發(fā)的工作即產生了。?沒有最好的,只有最適合自己的。架構設計思維設計?微服務架構設計的根本目的是實現(xiàn)價值交付,微服務架構只有遵循DevOps理念方可進行的更順暢,思維方式的轉變是最重要的。實現(xiàn)微服務技術架構,現(xiàn)有產品需要進行技術上的改進以及相關配套服務的實現(xiàn),采用分階段實施、以及試點產品優(yōu)先實施的策略,主要包括如下:?一、技術上的改進:?1、前后端分離,web前端通過Http/Https協(xié)議調用微服務的API網(wǎng)關,由API網(wǎng)關再經(jīng)過路由服務調用相應的微服務?2、不同微服務之間通過REST方式互相調用?3、微服務之間通過消息中間件實現(xiàn)消息交互機制?二、配套服務與功能實現(xiàn): 1、需要進行相應的自動化服務實現(xiàn),包括自動化構建、自動化安裝部署、自動化測試、自動化平臺發(fā)布(Docker實現(xiàn))?2、管理服務,對于微服務架構,必須配套相應的監(jiān)控與管理服務、日志管理服務等?3、協(xié)作服務,運用DevOps思想提升開發(fā)、測試、運維的高效溝通與協(xié)作,實現(xiàn)開發(fā)與運維的一體化微服務架構設計?

1、我們把整個系統(tǒng)根據(jù)業(yè)務拆分成若干個子系統(tǒng)或微服務.

2、每個子系統(tǒng)可以部署多個應用,多個應用之間使用負載均衡。

3、需要一個服務注冊中心Eureka,所有的服務都在注冊中心注冊,負載均衡也是通過在注冊中心注冊的服務來使用一定策略來實現(xiàn)。? Eureka可部署多個,進行高可用保證。

4、所有的客戶端都通過同一個網(wǎng)關地址訪問后臺的服務,通過路由配置ZUUL網(wǎng)關來判斷一個URL請求由哪個服務處理.請求轉發(fā)到服務上的時候使用負載均衡Ribbon。

5、服務之間采用feign進行調用.

6、使用斷路器hystrix,及時處理服務調用時的超時和錯誤,防止由于其中一個服務的問題而導致整體系統(tǒng)的癱瘓。

7、還需要一個監(jiān)控功能,監(jiān)控每個服務調用花費的時間等.8、使用SpringCloudConfig進行統(tǒng)一的配置管理,需要考慮與公司的配置管理平臺如何配合使用。?9、Hystrix,監(jiān)控和斷路器.我們只需要在服務接口上添加Hystrix標簽,就可以實現(xiàn)對這個接口的監(jiān)控和斷路器功能。

10、HystrixDashboard,監(jiān)控面板,他提供了一個界面,可以監(jiān)控各個服務上的服務調用所消耗的時間等。

11、Turbine,監(jiān)控聚合,使用Hystrix監(jiān)控,我們需要打開每一個服務實例的監(jiān)控信息來查看。而Turbine可以幫助我們把所有的服務實例的監(jiān)控信息聚合到一個地方統(tǒng)一查看。這樣就不需要挨個打開一個個的頁面一個個查看。架構的可靠性保證:?在關鍵節(jié)點做主備、集群部署,防止單點故障.待后續(xù)確認問題: 1、AccessControl:Zuul網(wǎng)關提供了相關控制功能,與我司CAS如何結合使用?2、ConfigServer:SpringCloud提供了遠程配置中心,與我司的配置管理平臺如何結合使用設計階段總體設計 1、功能規(guī)劃:對產品功能進行拆分,拆分為若干個微服務;一個功能可以創(chuàng)建多個微服務并部署在多個服務器節(jié)點上,以便進行負載均衡。 2、設計原子服務層,梳理和抽取核心應用、公共應用,作為獨立的服務下沉到核心和公共能力層,逐漸形成穩(wěn)定的服務中心,使應用能更快速的響應多變的客戶需求。?3、為每個服務設計API接口(REST方式)?4、為不同的服務進行分類,不同類型的服務需要的資源不同,可以配置不同的資源,包括CPU、內存、存儲等。服務拆分原則?1、粒度微小: ?根據(jù)業(yè)務功能劃分服務粒度,總的原則是服務內部高內聚,服務之間低耦合。?2、責任單一: 每個服務只做一件事,即單一職責原則。 3、隔離性原則: ?每個服務相互隔離,且不互相影響?4、業(yè)務無關優(yōu)先原則: ?基礎服務,是一些基礎組件,與具體的業(yè)務無關。比如:短信服務、郵件服務.這里的服務最容易劃分出來做微服務,也是我們第一優(yōu)先級分離出來的服務。服務規(guī)劃 為實現(xiàn)負載均衡,允許相同的服務在多個節(jié)點注冊相同的服務名,不同的端口.如果沒有前期的規(guī)劃,不同的服務提供者可能會注冊相同的服務名,導致消費者調用服務時產生調用混亂。?因此,需進行服務名的統(tǒng)一規(guī)劃: 1、規(guī)劃期統(tǒng)一制定每個服務提供者的服務名或者模塊標示。?2、服務名的命名規(guī)則:ModuleName_ServiceName,且所有字符小寫,不同單詞之間以下劃線分隔。如用戶管理模塊提供了獲取用戶信息的服務,則命名為:user_get_info。?3、新增服務名時,需要提出申請,審批通過后方可使用,為減少審批復雜度,可只審批ModuleName,即在模塊內部可以自由增加服務名,不需要進行審批。開發(fā)策略?總體原則:不同的微服務需進行物理隔離。?1、SVN策略:SVN上創(chuàng)建獨立的分支,不同微服務的代碼提交不受相互影響; —-—由配置管理員統(tǒng)一控制。 問題:開發(fā)分支與集成分支,都將增加很多,維護工作量增加. 2、編譯策略:代碼編譯時,各個微服務獨立編譯、打包,杜絕直接的依賴;?3、工程構建:代碼開發(fā)時,各微服務創(chuàng)建獨立的工程,工程之間不能產生直接依賴 4、持續(xù)集成:每個微服務獨立執(zhí)行持續(xù)集成. 5、版本集成:由統(tǒng)一的集成工具,實現(xiàn)自動化的版本集成,將所有微服務集成到統(tǒng)一的版本發(fā)布包中。版本策略?每個微服務可以獨立制作版本,伴隨著服務的增多,SVN分支增多,版本也將增多,版本管理的復雜度將成指數(shù)級增加。在服務之間依賴較多時,每個服務的升級或降級都將影響其他服務的正常運行。 因此需執(zhí)行如下策略: 1、所有服務的版本制作交由專業(yè)的版本管理員執(zhí)行. 2、采用自動化的版本制作策略,最大程度的減少人工操作.?3、每個服務的版本必須有詳細的版本計劃、版本說明,對于版本說明要制定模板,明確需要提交的內容、版本號、SVN標簽等。?4、對項目經(jīng)理的要求提升,需對整體的版本計劃有嚴格的制定,尤其是版本之間的依賴關系要非常明確,版本升級、降級的風險評估需完全充分. 5、接口管理:嚴格執(zhí)行接口管理制度,任何接口的變更必須進行審批、發(fā)公告等流程。數(shù)據(jù)庫挑戰(zhàn)與策略 每個微服務都有自己獨立的數(shù)據(jù)庫,那么后臺管理的聯(lián)合查詢怎么處理?這應該是大家會普遍遇到的一個問題,有三種處理方案。?1)嚴格按照微服務的劃分來做,微服務相互獨立,各微服務數(shù)據(jù)庫也獨立,后臺需要展示數(shù)據(jù)時,調用各微服務的接口來獲取對應的數(shù)據(jù),再進行數(shù)據(jù)處理后展示出來,這是標準的用法,也是最麻煩的用法。?2)將業(yè)務高度相關的表放到一個庫中,將業(yè)務關系不是很緊密的表嚴格按照微服務模式來拆分,這樣既可以使用微服務,也避免了數(shù)據(jù)庫分散導致后臺系統(tǒng)統(tǒng)計功能難以實現(xiàn),是一個折中的方案。?3)數(shù)據(jù)庫嚴格按照微服務的要求來切分,以滿足業(yè)務高并發(fā),實時或者準實時將各微服務數(shù)據(jù)庫數(shù)據(jù)同步到NoSQL數(shù)據(jù)庫中,在同步的過程中進行數(shù)據(jù)清洗,用來滿足后臺業(yè)務系統(tǒng)的使用,推薦使用MongoDB、HBase等。 第一種方案適合業(yè)務較為簡單的小公司;第二種方案,適合在原有系統(tǒng)之上,慢慢演化為微服務架構的公司;第三種適合大型高并發(fā)的互聯(lián)網(wǎng)公司。?建議,我們當前采用第二種方案。負載均衡 不再采用一般的增加負載均衡服務器的方式進行負載均衡,如F5、Nginx、LVS等,而是把負載均衡的功能以庫的方式集成到服務消費方的進程內,這種方案稱為軟負載均衡(SoftLoadBalancing)或者客戶端負載均衡.在SpringCloud中配合Eureka的服務注冊功能,Ribbon子項目則為REST客戶端實現(xiàn)了負載均衡。?使用Ribbon進行負載均衡,其工作原理可以概括為下面四個步驟:Ribbon首先根據(jù)其所在Zone優(yōu)先選擇一個負載較少的EurekaServer;定期從EurekaServer更新并過濾服務實例列表;根據(jù)指定的負載均衡策略,從可用的服務器列表中選擇一個服務實例的地址;然后通過RestClient進行服務調用。Ribbon本身提供了下面幾種負載均衡策略:RoundRobinRule:

輪詢策略,Ribbon以輪詢的方式選擇服務器,這個是默認值.所以示例中所啟動的兩個服務會被循環(huán)訪問;RandomRule:

隨機選擇,也就是說Ribbon會隨機從服務器列表中選擇一個進行訪問;BestAvailableRule:

最大可用策略,即先過濾出故障服務器后,選擇一個當前并發(fā)請求數(shù)最小的;WeightedResponseTimeRule:

帶有加權的輪詢策略,對各個服務器響應時間進行加權處理,然后在采用輪詢的方式來獲取相應的服務器;AvailabilityFilteringRule:

可用過濾策略,先過濾出故障的或并發(fā)請求大于閾值一部分服務實例,然后再以線性輪詢的方式從過濾后的實例清單中選出一個;ZoneAvoidanceRule:

區(qū)域感知策略,先使用主過濾條件(區(qū)域負載器,選擇最優(yōu)區(qū)域)對所有實例過濾并返回過濾后的實例清單,依次使用次過濾條件列表中的過濾條件對主過濾條件的結果進行過濾,判斷最小過濾數(shù)(默認1)和最小過濾百分比(默認0),最后對滿足條件的服務器則使用RoundRobinRule(輪詢方式)選擇一個服務器實例。性能策略 1、網(wǎng)絡優(yōu)化:優(yōu)化組網(wǎng)結構,提升網(wǎng)絡間通訊性能; 2、配置優(yōu)化:優(yōu)化SpringCloud組件集以及其他組件的配置信息,使得性能最大化.技術管理策略?微服務的架構理念中指出各微服務可以獨立建設,可以使用不同的技術、語言、框架等,以便能更快速的使用新技術、新框架等響應特定客戶需求,解決單體應用架構更新技術、更新框架時面臨的困難或阻礙。?但這也同時帶來了諸多問題,如下: 1、各服務是否可以任意使用自己的技術、自己的組件、框架呢?如果這樣,勢必帶來更大的管理困難、維護困難、技術共享困難。 2、公共的方法如何實現(xiàn)共享?如格式化時間的一個簡單方法需要共享,也需要封裝為一個服務接口嗎??管理策略: 1、總體原則:仍然需要進行統(tǒng)籌考慮,所有組件統(tǒng)一管理,組件放置在產品倉庫中,每個產品或服務需要共享組件時,從產品倉庫獲取。?2、特殊情況:特殊服務需要使用特殊的組件、框架,需提出申請,統(tǒng)籌規(guī)劃后進行決策。開發(fā)階段服務的調用AIP網(wǎng)關調用所有服務通過Zuul網(wǎng)關進行調用,不允許直接調用微服務提供者。Zuul可能會成為系統(tǒng)瓶頸,在項目復雜時可考慮為Zuul進行主備或負載均衡處理。同步調用?采用HTTPREST方式進行調用,針對業(yè)務需求可以進行負載均衡,負載均衡的調用方式有兩種:?1、FeignClient 2、RestTemplate?建議使用FeignClient方式進行服務調用。?不管是什么方式,他都是通過REST接口調用服務的http接口,參數(shù)和結果默認都是通過Jackson序列化和反序列化。因為SpringMVC的RestController定義的接口,返回的數(shù)據(jù)都是通過Jackson序列化成JSON數(shù)據(jù)。異步調用?rabbitMq、kafka、SpringCloudStream均是可以選擇的方案.SpringCloudStream,基于Redis、Rabbit、Kafka實現(xiàn)的消息微服務,簡單聲明模型用以在SpringCloud應用中收發(fā)消息。服務間調用的權限驗證一般我們的API接口都需要某種授權才能訪問,登陸成功以后,然后通過token或者cookie等方式才能調用接口。使用SpringCloudNetfix框架的話,登錄的時候,把登錄請求轉發(fā)到相應的用戶服務上,登陸成功后,會設置cookie或headertoken等。然后客戶端接下來的請求就會帶著這些驗證信息,從Zuul網(wǎng)關傳到相應的服務上進行驗證。Zuul網(wǎng)關在把請求轉發(fā)到后臺的服務的時候,會默認把一些header傳到服務端,如:Cookie、Set-Cookie、Authorization.這樣,客戶端請求的相關headers就可以傳遞到服務端,服務端設置的cookie也可以傳到客戶端。但是,如果你想禁止某些header透傳到服務端,可以在Zuul網(wǎng)關的application.yml配置里通過下面的方式禁用:zuul:?routes:?users:

path:/users/**

sensitiveHeaders:Cookie,Set—Cookie,Authorization

serviceId:user剛才說了我們的某個服務有時候需要調用另一個服務,這時候,這個請求不是客戶端發(fā)起,他的請求的header里面也不會有任何驗證信息。這時候,要么,通過防火墻等設置,保證服務間調用的接口,只能某幾個地址訪問;要么,就通過某種方式設置header。同時,如果你想在某個服務里面獲得這個請求的真是IP,(因為請求的通過網(wǎng)關轉發(fā)而來,你直接通過request獲得ip得到的是網(wǎng)關的IP),就可以從headerX-Forwarded—Host獲得.如果想禁用這個header,也可以:zuul.addProxyHeaders=false如果你使用RestTemplate的方式調用,可以在請求里面添加一個有header的Options。也可以通過如下的攔截器的方式設置,它對RestTemplate方式和FeignClient的方式都可以起作用:@Bean?publicRequestInterceptorrequestInterceptor(){?returnnewRequestInterceptor(){?@Override?publicvoidapply(RequestTemplatetemplate){?StringauthToken=getToken();?templat(yī)e.header(AUTH_TOKEN_HEADER,authToken);?}

};

}服務編排?主要的作用是減少項目中的相互依賴。比如現(xiàn)在有項目a調用項目b,項目b調用項目c...一直到h,是一個調用鏈,那么項目上線的時候需要先更新最底層的h再更新g.。。更新c更新b最后是更新項目a。這只是這一個調用鏈,在復雜的業(yè)務中有非常多的調用,如果要記住每一個調用鏈對開發(fā)運維人員來說就是災難.有這樣一個好辦法可以盡量的減少項目的相互依賴,就是服務編排,一個核心的業(yè)務處理項目,負責和各個微服務打交道。比如之前是a調用b,b掉用c,c調用d,現(xiàn)在統(tǒng)一在一個核心項目W中來處理,W服務使用a的時候去調用b,使用b的時候W去調用c。 其實可以理解為面向對象的設計,減少方法之間的一層層嵌套調用,而采取一個方法進行業(yè)務流程的串聯(lián),如方法W實現(xiàn)一個完整的業(yè)務處理,則采取下面方式:?functionw() { ?1、調用方法a; 2、調用方法b;?3、調用方法c;?}服務的熔斷處理?在服務之間進行調用時,由于各種原因會導致遠程服務不可用或壓力過載等異常導致的故障蔓延,此時需要有一種機制進行保護處理。SpringCloud通過Netflix的Hystrix組件實現(xiàn)熔斷和降級處理解決此問題。斷路器(CricuitBreaker)是一種能夠在遠程服務不可用時自動熔斷(打開開關),并在遠程服務恢復時自動恢復(閉合開關)的設施,SpringCloud通過Netflix的Hystrix組件提供斷路器、資源隔離與自我修復功能。SpringcloudHystrix熔斷器

?統(tǒng)一日志管理?不同微服務部署在不同節(jié)點上,登錄每個節(jié)點查看日志是比較麻煩的,同時對于需要關聯(lián)多個微服務日志聯(lián)合查看分析的情況將更加麻煩.伴隨節(jié)點數(shù)量的增加,如果沒有合適的管理機制與工具,定位問題、發(fā)現(xiàn)問題的復雜性將越來越大,將成指數(shù)級增長,因此需要進行統(tǒng)一日志管理。 1、建立統(tǒng)一的日志管理規(guī)范; 2、開發(fā)并使用統(tǒng)一的日志組件,為所有微服務提供統(tǒng)一的日志服務,由log4j或Blitz4j封裝;?3、在每個服務節(jié)點上部署日志采集Agent組件,由此Agent進行日志的采集與轉發(fā);?4、建立統(tǒng)一的日志中心,所有日志寫入日志中心.?說明:上述日志的實現(xiàn)由公司的“日志管理平臺”進行實現(xiàn),采用的是ELK集合框架.?統(tǒng)一監(jiān)控管理 使用Hystrix組件進行服務的監(jiān)控,使用Nagios進行服務器等資源的監(jiān)控。 1、Hystrix,監(jiān)控和斷路器。我們只需要在服務接口上添加Hystrix標簽,就可以實現(xiàn)對這個接口的監(jiān)控和斷路器功能.

2、HystrixDashboard,監(jiān)控面板,他提供了一個界面,可以監(jiān)控各個服務上的服務調用所消耗的時間等。

3、Turbine,監(jiān)控聚合,使用Hystrix監(jiān)控,我們需要打開每一個服務實例的監(jiān)控信息來查看。而Turbine可以幫助我們把所有的服務實例的監(jiān)控信息聚合到一個地方統(tǒng)一查看。這樣就不需要挨個打開一個個的頁面一個個查看。統(tǒng)一配置管理?實現(xiàn)各微服務的統(tǒng)一參數(shù)配置以及版本管理,可采用公司的配置管理平臺或者SpringCloudConfig配置中心。SpringCloudConfig配置中心

? SpringCloudConfig就是我們通常意義上的配置中心.SpringCloudConfig—把應用原本放在本地文件的配置抽取出來放在中心服務器,本質是配置信息從本地遷移到云端。從而能夠提供更好的管理、發(fā)布能力。

SpringCloudConfig分服務端和客戶端,服務端負責將git(svn)中存儲的配置文件發(fā)布成REST接口,客戶端可以從服務端REST接口獲取配置。但客戶端并不能主動感知到配置的變化,從而主動去獲取新的配置,這需要每個客戶端通過POST方法觸發(fā)各自的/refresh。 為解決配置信息能及時通知到各服務,同時減少每個微服務處理配置信息更新的復雜度,為此我們通過消息總線來解決此問題,方案如下:Git倉庫、ConfigServer、以及微服務“ServiceA"、“ServiceB"的實例中都引入了SpringCloudBus,所以他們都連接到了RabbitMQ的消息總線上。從Git倉庫中配置的修改到發(fā)起/bus/refresh的POST請求這一步可以通過Git倉庫的WebHook來自動觸發(fā)。/bus/refresh請求不再發(fā)送到具體服務實例上,而是發(fā)送給ConfigServer,并通過destination參數(shù)來指定需要更新配置的服務或實例。由于所有連接到消息總線上的應用都會接受到更新請求,所以在WebHook中就不需要維護所有節(jié)點內容來進行更新,從而解決了通過WebHook來逐個進行刷新的問題。分布式session?采用Redis作為緩存組件以及session的共享組件。 REST資源響應結構 制定規(guī)范和解析方法.API調用鏈追蹤?微服務架構上通過業(yè)務來劃分服務的,通過REST調用,對外暴露的一個接口,可能需要很多個服務協(xié)同才能完成這個接口功能,如果鏈路上任何一個服務出現(xiàn)問題或者網(wǎng)絡超時,都會形成導致接口調用失敗。隨著業(yè)務的不斷擴張,服務之間互相調用會越來越復雜。SpringCloudSleuth主要功能就是在分布式系統(tǒng)中提供追蹤解決方案,并且兼容支持了zipkin,你只需要在pom文件中引入相應的依賴即可。單元測試 做微服務架構,進行系統(tǒng)測試的復雜度較大,為保證產品質量與開發(fā)、測試效率,單元測試是必不可少的.?可采用Mock方式進行測試模擬,由持續(xù)集成進行自動化單元測試的執(zhí)行以及結果輸出。代碼調試 對于單體架構系統(tǒng),可直接本地化調試,但對于微服務架構,接口間的調用需采用遠程通訊的方式,也就是說被調用的服務必須啟動后方可被調用,因此當微服務增多時,你可能需要啟動大量的微服務或者web服務器,這給本地化調用與調試帶來了困難。?解決方案待研究.測試自動化測試單元測試:??由開發(fā)人員實現(xiàn)。? 采用Mock方式進行測試模擬,由持續(xù)集成進行自動化單元測試的執(zhí)行以及結果輸出.業(yè)務測試:? 開發(fā)進行實現(xiàn),測試也需考慮如何實現(xiàn)。 ?將多個服務或業(yè)務單元進行串聯(lián),測試一個完整的業(yè)務,甚至是不同業(yè)務之間組成的系統(tǒng)測試,需要采用相關的自動化測試框架執(zhí)行,如RobotFramework自動化測試框架。依賴測試?也可以稱為接口測試或者契約測試,在微服務逐漸增多的情況下,如何有效保證服務之間能夠按照接口的約定正常工作,即符合契約,成為微服務實施過程中,測試面臨的主要挑戰(zhàn)。 一、開發(fā)自動化的接口測試工具,?1、檢測接口是否滿足約定 2、檢測接口是否發(fā)生變化?3、檢測接口是否可以正常被調用。 二、測試方法: 采取基于消費者驅動的契約測試,測試架構如下: 其優(yōu)勢如下:從價值實現(xiàn)的角度定義契約從消費者使用契約的角度出發(fā),首先保證消費者基于此契約是可以實現(xiàn)價值的,有了這個前提,再使用契約來驗證提供者,如果提供者提供的契約同定義的契約一致,則證明提供者提供的契約是能夠實現(xiàn)服務消費者的。通過這種方式,使得更聚焦于如何從價值實現(xiàn)出發(fā).隔離消費者和提供者的測試對于契約的消費者和提供者可以分開獨立測試,有效解決傳統(tǒng)集成測試服務架構的弊端,將微服務的接口測試成本降到最低。 三、測試工具:?Pact、Janus、Pacto等。系統(tǒng)測試熔斷測試 1、通過停止微服務的方式測試服務路由的正確性?2、通過壓力測試,將某個微服務產生過載等異常,測試服務熔斷或降級?3、通過壓力測試,測試負載均衡策略的正確性性能測試?原有本地化的api調用將會變成REST的遠程調用,調用速度勢必受到影響,因此需要對系統(tǒng)性能進行考慮以及性能測試,主要影響因素如下:1、網(wǎng)絡:遠程調用時受到網(wǎng)絡通訊速度的影響,這涉及到網(wǎng)絡速度、網(wǎng)絡部署以及系統(tǒng)架構,有相互依賴的服務應采取就近部署原則。2、服務器:受到遠程服務所在服務器性能的影響。3、數(shù)據(jù)量:數(shù)據(jù)量這里指的是數(shù)據(jù)大小以及數(shù)據(jù)傳輸?shù)拇螖?shù)以及頻率,此時REST調用方式會產生瓶頸,當然,最好的方式是避免此種情況發(fā)生,此種場景采取消息中間件的方式異步通訊。持續(xù)集成?1、持續(xù)集成:每個微服務獨立執(zhí)行持續(xù)集成。 2、版本集成:由統(tǒng)一的集成工具,實現(xiàn)自動化的版本集成,將所有微服務集成到統(tǒng)一的版本發(fā)布包中。?3、持續(xù)集成可制作多種場景的版本,包括測試環(huán)境、開發(fā)環(huán)境、生產環(huán)境。 4、統(tǒng)計測試覆蓋率等指標數(shù)據(jù). 5、工具:Jenkins、Sonar等。持續(xù)部署?1、通過持續(xù)集成自動制作發(fā)布版本的Docker鏡像;?2、將docker鏡像自動上傳到docker容器中。?運維階段遠程升級?微服務不斷增加后,意味著部署容器也在同步增加,對于后續(xù)升級維護的工作量將會逐漸增加,開發(fā)統(tǒng)一管理中心,支持遠程維護與升級將可減少運維的復雜度.統(tǒng)一配置中心?使用SpringCloudConfig或者配置管理平臺進行統(tǒng)一的配置管理。統(tǒng)一日志中心?使用日志管理平臺進行統(tǒng)一的日志采集、日志分析。前言隨著計算機技術的發(fā)展和普及,計算機系統(tǒng)數(shù)量與日俱增,其配套的環(huán)境設備也日益增多,視頻監(jiān)控及報警系統(tǒng)已成為各大單位的重要組成部分。監(jiān)控系統(tǒng)旨在防止非法入侵及加強安全管理,真正做到人防和技防有機結合,及時發(fā)現(xiàn)以便及時采取相應的防范措施,將事故降壓到萌芽狀態(tài),并監(jiān)視現(xiàn)場發(fā)生的事情進行實時的記錄,對糧食物流工作區(qū)和場區(qū)主要作業(yè)區(qū)域進行監(jiān)控需求分析:為了保護財產安全及生產管理的需要,為糧倉建設一套高度智能化的模擬視頻監(jiān)控系統(tǒng)是非常必要的;1、首先,基于一個高標準的建筑設施的安全防范系統(tǒng)的設計本身就要有一個比較高的起點,因為只有這樣才能很好的為實際需求服務,管理使用起來得心應手。2、其次,所設計的視頻監(jiān)控系統(tǒng)在技術上要有一定的前瞻性和可擴展性,確保在未來幾年內不會落后3、工業(yè)電視系統(tǒng)包括一體化彩轉黑攝像機、防爆攝像儀及防護罩、支架、數(shù)字光端機、球型云臺等。4、系統(tǒng)采用數(shù)字硬盤錄像系統(tǒng),可對所有畫面進行24小時不間斷錄像,可實時錄像(25幀/秒)15天以上。硬盤錄像系統(tǒng)支持網(wǎng)絡服務,將其接入局域網(wǎng)或互聯(lián)網(wǎng),便成了一臺視頻服務器,可以通過軟件方式、WEB頁面方式、地圖瀏覽方式對圖像進行點播.5、攝像機能滿足使用在靠海的工業(yè)環(huán)境中,攝像機應是全天候并耐蝕的,并且提供防風罩,雨刷器,防霜凍裝置和自清潔器.它們還應具備可控加溫器件用以冬天去除潮濕.防爆要求符合攝像機安裝所在位置的要求。6、安裝于爆炸危險場所的攝像機、云臺及附屬設備應符合該場所粉塵防爆的要求。7、在CCR可對防護罩、云臺和攝像機提供各種遙控操作??梢酝ㄟ^選擇開關進行手動-自動顯示切換,自動循環(huán)顯示周期可以預設定。設計依據(jù)和指導思想本方案設計依據(jù):《智能建筑設計標準》(GB/T50314—2000)《視頻安防監(jiān)控系統(tǒng)工程設計規(guī)范》(GB50395)《智能建筑工程質量驗收規(guī)范》(GB50339)《城市住宅建筑綜合布線系統(tǒng)工程設計規(guī)范》(CECS/119—2000)《建筑與建筑群綜合面線系統(tǒng)工程設計規(guī)范》(GB/T50311-2000)《民用建筑電氣設計規(guī)范》(JGJ/T16—92)《民用閉路監(jiān)視電視系統(tǒng)工程技術規(guī)范》(GB/50198—94)《系統(tǒng)接地的型式及安全技術要求》(GB14050—93)《安全防范工程程序與要求》(GA/T75-94)《安全防范工程驗收規(guī)則》(GA/T308—2001)《工業(yè)電視系統(tǒng)工程設計規(guī)范》(GBJ115)《安全檢查防范系統(tǒng)通作圖形符號》(GA/74—94)《消防聯(lián)動控制設備通用技術條件》(GB16806-1997)《火災自動報警設計規(guī)范》(GB50116-98)中國電氣裝置安裝工程施工及驗收規(guī)范GBJ232-8安全防范工程費用概算編制辦法GA/T70—94工業(yè)電視系統(tǒng)工程設計規(guī)范GBJ115—87電氣裝置安裝工程電纜線路施工及驗收規(guī)范GB10568-92國際ISO/IS11801及TIA/EEIA568工程標準公安部監(jiān)控設備安裝規(guī)范阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)有關部們領導要求及現(xiàn)場平面圖實際情況設計指導思想:監(jiān)控系統(tǒng)能有效地隨時把監(jiān)控現(xiàn)場的信號及時送到監(jiān)控中心和監(jiān)控室,在監(jiān)控中心和監(jiān)控室能實時觀察監(jiān)控現(xiàn)場是否有異常情況,從而使阿爾及利亞監(jiān)控系統(tǒng)控制中心在安全及安全管理上做出及時的處理。☆性能、功能先進設備選型保證技術相對領先,性能可靠,操作簡便、實用,維護簡單,性能價格比最佳,并留有完備的擴展余地。設備均采用目前領先技術和生產工藝制造?!畈僮骱唵螌嵱脤嵭腥朔馈⒓挤老嘟Y合,采用高科技手段,進行智能化設計,盡量減少系統(tǒng)操作的復雜性.所有的操作人員只需要簡單的培訓即可熟練使用?!钔庥^效果美觀所有前端裝置安裝均考慮安全性、隱蔽性及美觀性。設計原則本項目方案設計遵循技術先進、功能齊全、性能穩(wěn)定、節(jié)約成本的原則。并綜合考慮施工、維護及操作因素,并將為今后的發(fā)展、擴建、改造等因素留有擴充的余地。本系統(tǒng)設計內容是系統(tǒng)的、完整的、全面的;設計方案具有科學性、合理性、可操作性。其具有以下原則:系統(tǒng)先進性:當今科學技術發(fā)展迅速,新技術、新產品層出不窮,若花巨資建成一個一到兩年之內就要淘汰的落后系統(tǒng),對于任何建設單位都是一種極大的浪費,也會影響到其安全保衛(wèi)工作。所以本系統(tǒng)設計方案將系統(tǒng)和設備的技術先進性放在非常重要的地位:1) 系統(tǒng)的技術性能和質量指標應達到國際領先水平;同時,系統(tǒng)的安裝調試、軟件編程和操作使用又應簡便易行,容易掌握,適合中國國情和本項目的特點。該系統(tǒng)集國際上眾多先進技術于一身,體現(xiàn)了當前計算機控制技術與計算機網(wǎng)絡技術的最新發(fā)展水平,適應時代發(fā)展的要求。2) 系統(tǒng)的先進性首先體現(xiàn)在技術設計思想上,只有系統(tǒng)設計結構的先進才有整個系統(tǒng)先進的基礎.本方案采用當今最先進的模塊化、開放式、集散分布式的系統(tǒng)設計思想,確保系統(tǒng)最大限度地可靠性和靈活性。3) 采用當前領先的技術和設備構造整個單位的安全防范系統(tǒng),充分利用目前成熟的數(shù)字化安防技術和設備,確保本系統(tǒng)在建成時處于先進的行列。系統(tǒng)可靠性可靠性是本系統(tǒng)設計中的關鍵,尤其是本工程針對大中型監(jiān)控的特殊性,可靠性更為重要,只有可靠的技術和設備才有可能發(fā)揮出其先進的功能和優(yōu)勢。為此在制作本方案及選用產品時,我們主要考慮以下幾點:1、在系統(tǒng)設計和設備選型中首先要考慮技術和設備的成熟性,只有經(jīng)過大量實際運用的技術和設備才可能說成熟,才具備一定的可靠性.2、采取集散型、分布式系統(tǒng)構造和控制方式,從系統(tǒng)設計的結構形式和控制方式的角度來提高系統(tǒng)總體的可靠性,分散故障風險,降低系統(tǒng)的整體故障的可能性。3、采用光纖作為主要信號傳輸,是整套系統(tǒng)的圖象在傳輸過程中不會出現(xiàn)延時和丟針現(xiàn)象,不影響或受外界的其他信號干擾,從整體性能和安全方面得到保障。4、從整個生命周期全盤評價選用設備的質量.選用便于系統(tǒng)建造施工的質量控制、運行故障率低、維護維修方便快捷的設備,以降低系統(tǒng)和設備生命周期的平均故障率。開放性以現(xiàn)有成熟的產品為對象設計,同時還考慮到周邊信息通信環(huán)境的現(xiàn)狀和技術的發(fā)展趨勢,可以消防、防盜、聚光系統(tǒng)實現(xiàn)聯(lián)動,具有RJ—45網(wǎng)絡通訊口,可實現(xiàn)遠程控制.保留足夠的擴展容量該項目設備的控制容量上保留一定的余地,以便在系統(tǒng)中改造新的控制點;系統(tǒng)中還保留與其他計算機或自動化系統(tǒng)連接的接口;也盡量考慮未來科學的發(fā)展和新技術的應用。提高監(jiān)管力度與綜合管理水平本項目系統(tǒng)設備控制需要高效率、準確及可靠。本系統(tǒng)通過中心控制系統(tǒng)對各子系統(tǒng)運行情況進行綜合監(jiān)控,時時動態(tài)撐握監(jiān)視及報警情況。閉路電視監(jiān)控大大減少勞動強度,減少設備運行維護人員;另外,系統(tǒng)的綜合統(tǒng)籌管理可使設備按最優(yōu)組合運行,在最佳情況下運行,既可節(jié)能,又可大大減少設備損耗,減少設備維修費用,從而提高監(jiān)管力度與綜合管理水平。系統(tǒng)適用性:可靠性、先進性與實用性往往難以調和,可靠不一定方便,先進常常意味著價高,物超所值也難免力所不能及,面對相互有一定程度的矛盾,我們在制定設計方案時以是否適用于阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)后期的應用做為最大原則。我們合理、全面、綜合評估了該系統(tǒng)在阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)的重要地位、影響、功能、投資規(guī)模、生命周期、安全要求,估算該安全防范系統(tǒng)最合理的投入規(guī)模,根據(jù)我方豐富的設計、工程經(jīng)驗,對安防技術的水平、發(fā)展趨勢、技術和設備市場的充分了解,在綜合平衡的基礎上,以量體裁衣的方式做出針對性的系統(tǒng)設計和設備選型,能最大的滿足阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)監(jiān)對安全防范系統(tǒng)的各方面要求。視頻監(jiān)控系統(tǒng)技術方案為解決阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)視頻能夠集中監(jiān)控問題和實現(xiàn)阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)智能化管理及安全防范的需求,我公司項目組經(jīng)研究決定采用先進的計算機技術、網(wǎng)絡傳輸技術、光纖傳輸技術、圖像處理技術等,來實現(xiàn)安全及防范管理。只有在安全穩(wěn)定的環(huán)境內,各監(jiān)控區(qū)域內人員、設備、機械等工作才能得以開展,并確保其質量,從而盡量避免事故帶來的經(jīng)濟和聲譽上的損失。安全管理離不開先進的安全防范設施,因此必須充分利用各種先進的安全防范系統(tǒng),提高保安工作的自動化程度和工作效率,減少冗余人員,降低運營成本。本視頻監(jiān)控系統(tǒng)可以直觀有效地顯示和控制各區(qū)域,提高工作人員的自律意識和安全意識等問題,同時也將提升阿爾及利亞糧倉視頻安防系統(tǒng)的管理能力.采集系統(tǒng)視頻監(jiān)控系統(tǒng)采用全模擬IP構架設計,實現(xiàn)全方位、智能化視頻監(jiān)控。前端視頻監(jiān)控點建設的好壞,直接影響整個安防系統(tǒng)建設的成效。系統(tǒng)設計應結合現(xiàn)場環(huán)境特點,選擇與之匹配的監(jiān)控攝像機,并做好嚴格的防雷接地和供電保障措施。前端監(jiān)控點模擬圖像通過監(jiān)控專網(wǎng)傳輸?shù)礁鞅O(jiān)控中心,進行24小時實時錄像存儲和輪巡顯示,保證在突發(fā)事件發(fā)生時,能夠調用現(xiàn)場實時圖像信息進行指揮和調度。具體建設規(guī)格如下:1)、前端采用一體化球型云臺,在前端監(jiān)控點實現(xiàn)圖像采集和高清數(shù)字編碼;2)、根據(jù)監(jiān)控點數(shù)量設置相應的客戶端PC接入視頻監(jiān)控平臺,以便進行視頻的各種操作;3)、每路高清晰度錄像保存時間要≥對所有畫面進行24小時不間斷錄像,可實時錄像(25幀/秒)15天以上;傳輸系統(tǒng)本系統(tǒng)采用全網(wǎng)絡化,整套系統(tǒng)傳輸現(xiàn)有或新建網(wǎng)絡、模電光纖傳輸信號。通過局域網(wǎng)WAN劃分實行不同的IP控制網(wǎng)絡段。實現(xiàn)分區(qū)域化的模擬IP地址查詢、控制、管理。1、建立集中管理監(jiān)控中心,配置視頻綜合監(jiān)控平臺、應用服務器、流媒體轉發(fā)服務器、數(shù)字硬盤錄像機、大屏幕顯示。數(shù)字硬盤錄像機可以將輸出的視頻信號存儲在硬盤上,可以設置視頻移動偵測報警錄像、傳感器錄像等多種策略,通過錄像記錄可以充分保護阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)的財產安全;大屏幕顯示部分可以將前端視頻信號、錄像機視頻信號.2、在有關部門領導的辦公室,客戶端軟件,來觀察現(xiàn)場實際情況.3、阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)的主要部位提升塔倉項;汽車發(fā)放站地磅大門并對重點部位進行24小時監(jiān)控.確保安裝的設備穩(wěn)固和圖像的清晰度,滿足對大范圍場景的觀測.4、其他場所安裝模擬一體化球型機,造型美觀,應用的場合比較廣泛;而在風力大、視角大、環(huán)境比較惡劣、適用各種環(huán)境和場所。顯示系統(tǒng)根據(jù)阿爾及利亞糧倉視頻監(jiān)控系統(tǒng)大屏幕建設需求,結合公司多年的工程經(jīng)驗,既要做到完美的顯示效果,又要兼顧運行過程中的經(jīng)濟實用性,電視墻采用46寸16:9液晶監(jiān)視器組成,單屏規(guī)格為:1024(寬)mm×580(高)mm,共32臺液晶監(jiān)視器組合方式,雙色LED屏顯示面積約為1024mm×580mm。電視墻主要用于顯示監(jiān)控視頻、網(wǎng)絡視頻信號、內部場所監(jiān)控等視頻圖像、計算機數(shù)據(jù)等信息。每臺監(jiān)視器顯示器的畫面、功能可任意定義,圖像清晰度高、色彩鮮艷逼真、顯示速度快、監(jiān)視器顯示調出畫面反應時間短.圖像無干噪點、畫面穩(wěn)定。視頻監(jiān)控系統(tǒng):視頻監(jiān)控系統(tǒng)主要任務是對建筑物內重要部位的事態(tài)、人員等動態(tài)狀況進行宏觀監(jiān)視、控制,以便對各種異常情況進行實時取證、復核,達到及時處理目的。本系統(tǒng)24小時全天候監(jiān)控,球機能夠水平360°連續(xù)旋轉,垂直180°翻轉;系統(tǒng)具有移動偵測功能;系統(tǒng)中的各監(jiān)控點能清楚查看監(jiān)視區(qū)域內的可疑事件、可疑人員的活動,可疑物體的移動;視頻監(jiān)控客戶端或終端上,可以實現(xiàn)多畫面的顯示,多個畫面之間的操作相互獨立.可以多路回放,也可以部分畫面顯示實況、部分畫面顯示回放。=支持不同畫面的顯示方式:1、4、6、9、16畫面等方式;還可以支持6、8、10、13、14、17、22、25畫面多種規(guī)格畫面的組合顯示方式;用戶可以選擇中屏顯示和全屏顯示兩種顯示方式;主碼流子碼流切換功能:在預覽列表樹和預覽窗口的右鍵菜單中添加主子碼流切換功能,點擊碼流切換,進行主碼流子碼流的切換。具備視頻自動復位功能:即可對監(jiān)控點的攝像機設定默認監(jiān)視狀態(tài),正常狀態(tài)下攝像機保持默認狀態(tài),在控制完成的可設定的時間段內恢復默認監(jiān)視狀態(tài)。軌跡控制:可以添加多條軌跡,并可自定義軌跡名稱保存至中心數(shù)據(jù)庫,針對單條可以開始錄制,停止錄制,開始調用,停止調用,并可顯示當前操作狀態(tài),可以添加或刪除調用軌跡;視頻預案功能:實現(xiàn)播放預案配置,主子碼流,畫面分割,每個畫面對應通道等??稍O置視頻跟蹤預案,在不同的時間自動控制快球轉換到需要重點監(jiān)控的部位。圖像的電子放大功能:瀏覽圖像時,選擇電子放大功能,可以對某區(qū)域的圖像畫面進行放大,放大到整個窗口。雙屏預覽:可以支持一機雙屏.實時視頻點播:可對指定的設備、指定的通道進行實時圖像視頻操作,可完成圖像顯示、縮放、抓拍和錄像等功能.視頻切換:可以實現(xiàn)圖像的手動切換、定時切換、分組切換、分組輪巡切換和報警切換等功能。群組定義:可將當前播放的圖像定義成群組或自定義挑選視頻組成群組,并可將群組再編輯成群組輪巡。云臺控制:具有云臺方向控制和云臺轉動速度調整功能;攝像機變倍,焦距,光圈調整功能;支持云臺開關控制,如雨刷,燈光等開關控制;支持預置點控制,可設置快球的巡航路線.具備多種云臺控制模式,即可通過傳統(tǒng)的云臺控制面板來控制,又可以在圖像上點擊和移動鼠標來控制云臺.視頻存儲:可以對指定的現(xiàn)場音視頻信息進行記錄或通過編程定時記錄;系統(tǒng)能同時記錄與資料相關的檢索信息,包括視頻通道、文件類型、時間對所有畫面進行24小時不間斷錄像,可實時錄像(25幀/秒)15天以上。視頻區(qū)域放大:可對實時監(jiān)控畫面與錄像回放圖像中任意的區(qū)域進行局部畫面放大查看,有針對性地查看監(jiān)控畫面中的每個細節(jié).任務計劃:可以按天、周、月、年、臨時等周期設置彈出畫面視頻群組播放、自定義的聲音播放、電視墻播放畫面等任務。存儲系統(tǒng)具有手動錄像、定時錄像、、移動偵測錄像、等錄像方式??稍O定錄像文件存放路徑,可對錄像計劃進行編輯.錄像文件可按日期、設備編號、設備地址等生成文件夾、文件名。具有本地及遠程錄像查詢和回放功能,支持基于時段、地點、對象的選擇回放,支持從1/4至8速的有級調整回放速率,支持暫停、重播.錄像回訪時,系統(tǒng)自動跳過畫面無變化的時間段,到達最近的畫面變化點,進行播放.能夠直接進入文件夾下點擊文件名播放,文件名中包含編碼器、時間信息?;胤艜r可進行單畫面、4畫面、單進、單退、快進(1/2/4/8倍數(shù))、剪輯、抓幀、下載等操作。支持即時回放、常規(guī)回放、事件回放、分段回放、標簽回放功能.即時回放功能(即,在預覽畫面時,發(fā)現(xiàn)有異常行為,值班人員可以立即回放剛才發(fā)生的情景錄像)可以配置即時回放的默認,是按大小保存回放數(shù)據(jù)還是按時間保存回放數(shù)據(jù);如果按時間保存可以選擇時間長度,30s、1min、3min、5min,并可以自定義碼率大小來粗略計算所需內存的大小如果按大小保存可以選擇保存回放數(shù)據(jù)的大?。?M、5M、10M.對于

溫馨提示

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

評論

0/150

提交評論