亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Delphi IND Y控件的GPRS無線視頻通信程序在山洪災害預警系統(tǒng)中的應(yīng)用

        2012-07-14 07:28:10鐘志武
        湖南水利水電 2012年3期
        關(guān)鍵詞:山洪監(jiān)測站預警系統(tǒng)

        鐘志武

        (湖南省水利水電勘測設(shè)計研究總院 長沙市 410007)

        1 系統(tǒng)簡介

        本系統(tǒng)作為山洪災害預警系統(tǒng)的一部分,主要負責接收雨量水位監(jiān)測站通過無線GPRS網(wǎng)絡(luò)發(fā)送過來的數(shù)據(jù),包括雨量數(shù)據(jù)、水位數(shù)據(jù)、電瓶電壓數(shù)據(jù)和監(jiān)測站(水庫、河道和閘壩等)監(jiān)控無線視頻圖片信息。

        系統(tǒng)在Windows環(huán)境下用Delphi 7編寫,數(shù)據(jù)庫采用MS SQL Server 2005。下位機采用基于ARM9處理器(三星 S3C2410)的HYKJ-2410 Arm-PC104嵌入式工業(yè)計算機主板設(shè)計,配置HYKJ-GPRS V5.0通信模塊,預裝linux操作系統(tǒng),采用C語言編程,采用TCP/IP協(xié)議與上位機程序(本系統(tǒng))通訊。下位機采用太陽能電源供電(配置38 Ah電瓶和13 W太陽能電板),連接雨量傳感器、水位傳感器和視頻攝像頭。數(shù)據(jù)傳輸采用公共的GPRS網(wǎng)絡(luò),具有組網(wǎng)方便、實時性高、運行費用低等優(yōu)點。

        2 系統(tǒng)設(shè)計

        2.1 編程原理與系統(tǒng)流程

        Indy 的全名是 Internet Direct(也叫 Winshoes),它是一套開放源代碼的Internet控件集,它支持大部分流行的Internet協(xié)議。IdTCPServer控件是Indy控件系列中基于TCP/IP協(xié)議的TCP服務(wù)器控件。IdTCPServer是一個多線程控件。IdTCPServer在開始工作后,首先會自動建立一個偵聽線程TidListenerThread,該線程負責偵聽客戶端的連接請求,Server端首先是響應(yīng)客戶的Connect事件,一旦連接了,就自動在服務(wù)端對每一個服務(wù)器已接受的連接創(chuàng)建一個TidPeerThread線程。每個連接通過運行各自所屬的TidPeerThread來實現(xiàn)與服務(wù)器的數(shù)據(jù)交互。只要有客戶發(fā)送數(shù)據(jù),就會激活Server的OnExecute事件。數(shù)據(jù)的接收是在各個為連接所建的線程中并發(fā)進行的。而這個連接線程是需要Server維護的,IdTCPServer的最大連接線程數(shù)為600個左右,完全能滿足縣級山洪災害預警系統(tǒng)的需要。

        通常使用Winsock開發(fā)網(wǎng)絡(luò)應(yīng)用程序時,從Socket中讀取數(shù)據(jù)或者向Socket寫入數(shù)據(jù)都是異步發(fā)生的,這樣就不會阻斷程序中其它代碼的執(zhí)行。在收到數(shù)據(jù)時,Winsock會向應(yīng)用程序發(fā)送相應(yīng)的消息。這種訪問方式被稱作非阻塞式連接,它要求你對事件作出響應(yīng),設(shè)置狀態(tài)機,并通常還需要一個等待循環(huán)。與通常的Winsock編程方法不同的是,Indy使用了阻塞式(便于編程)Socket調(diào)用方式。阻塞式訪問更像是文件存取。當你讀取數(shù)據(jù),或是寫入數(shù)據(jù)時,讀取和寫入函數(shù)將一直等到相應(yīng)的操作完成后才返回,程序也一直阻塞在讀或?qū)懙牡胤健1热缯f,發(fā)起網(wǎng)絡(luò)連接只需調(diào)用Connect方法并等待它返回,如果該方法執(zhí)行成功,在結(jié)束時就直接返回,如果未能成功執(zhí)行,則會拋出相應(yīng)的異常。同文件訪問不同的是,Socket調(diào)用可能會需要更長的時間,因為要讀寫的數(shù)據(jù)可能不會立即就能準備好(很大程度上依賴于網(wǎng)絡(luò)帶寬)。

        事物都具有兩面性,阻塞式Socket也不例外。它的一個主要的缺點就是使客戶程序的用戶界面“凍結(jié)”。當在程序的主線程中進行阻塞式Socket調(diào)用時,由于要等待Socket調(diào)用完成并返回,這段時間就不能處理用戶界面消息,使得Update、Repaint以及其它消息得不到及時響應(yīng),從而導致用戶界面被“凍結(jié)”。Indy使用一個特殊的組件TIdAntiFreeze來透明地解決客戶程序用戶界面“凍結(jié)”的問題。TIdAntiFreeze在Indy內(nèi)部定時中斷對棧的調(diào)用,并在中斷期間調(diào)用Application.ProcessMessages方法處理消息,而外部的Indy調(diào)用繼續(xù)保存阻塞狀態(tài),就好像TIdAntiFreeze對象不存在一樣。我們只要在程序中的任意地方添加一個TIdAntiFreeze對象,就能利用到阻塞式Socket的所有優(yōu)點而避開它的一些顯著缺點。

        Indy服務(wù)器工作原理同Unix服務(wù)器十分類似,只是Windows不像Unix那樣支持fork,而是支持線程,因此Indy服務(wù)器為每一個客戶連接分配一個線程。圖1顯示了Indy服務(wù)器的工作原理與系統(tǒng)流程圖。Indy服務(wù)器組件創(chuàng)建一個同應(yīng)用程序主線程分離的監(jiān)聽線程來監(jiān)聽客戶連接請求,對于接受的每一個客戶,都創(chuàng)建一個新的線程來為該客戶提供服務(wù),所有與這一客戶相關(guān)的事務(wù)都由該線程來處理。

        圖1 系統(tǒng)流程示意圖

        2.2 數(shù)據(jù)結(jié)構(gòu)設(shè)計

        本系統(tǒng)接收的客戶端(下位機)通過GPRS網(wǎng)絡(luò)上傳的數(shù)據(jù)包包括字符串包(雨量、水位和電壓)和流媒體包(視頻圖片)。由于服務(wù)端讀取各個客戶端數(shù)據(jù)是并發(fā)進行的,所以應(yīng)盡量避免讀取數(shù)據(jù)時進行數(shù)據(jù)處理入庫,可分別為兩種數(shù)據(jù)包建立兩個循環(huán)隊列表,先將客戶端數(shù)據(jù)存入緩存中,然后新建兩個線程(定時器)處理數(shù)據(jù)。循環(huán)隊列表數(shù)據(jù)結(jié)構(gòu)如下所示:

        下位機上傳的數(shù)據(jù)包符合水利部發(fā)布的水情信息編碼標準(SL330-2005)和湖南省山洪災害監(jiān)測預警系統(tǒng)水文通信協(xié)議規(guī)范。數(shù)據(jù)包格式如下:

        河道水位包:CH 10 000 001 MMDDHHNN PN10 2 Z 100.00 NN

        該數(shù)據(jù)包表示站號為10 000 001的監(jiān)測站于時間MMDDHHNN采集的10分鐘雨量2 mm,河道水位100.00 m。

        水庫水位包:CK 10 000 001 MMDDHHNN PN10 2 ZU 100.00 NN

        該數(shù)據(jù)包表示站號為10 000 001的監(jiān)測站于時間MMDDHHNN采集的10分鐘雨量2 mm,庫水位100.00 m。

        2.3 模塊設(shè)計

        本系統(tǒng)除了接收監(jiān)測站的數(shù)據(jù)外,另一個功能是通過GSM短信貓遠程設(shè)置監(jiān)測站的參數(shù),包括連接的數(shù)據(jù)中心IP地址、端口號、水位站類型(河道或水庫等)、站號、水位原始高程等。主要的模塊有視頻監(jiān)控模塊、站點信息管理模塊、參數(shù)設(shè)置模塊、數(shù)據(jù)監(jiān)測模塊、數(shù)據(jù)查詢模塊等。

        圖2為監(jiān)測站視頻監(jiān)控示意圖。

        3 編程實現(xiàn)

        本系統(tǒng)關(guān)鍵代碼如下:

        圖2 監(jiān)測站視頻監(jiān)控示意圖

        4 結(jié)語

        本系統(tǒng)已經(jīng)應(yīng)用于湖南省30多個縣的山洪災害預警系統(tǒng)建設(shè)中,運行穩(wěn)定可靠,極大地提高對暴雨山洪災害的監(jiān)測能力和反應(yīng)速度,最大程度保障了人民群眾生命財產(chǎn)的安全。

        1水情信息編碼標準SL 330-2005.中華人民共和國水利部[S].

        2蔣方帥.Delphi 5程序員指南[M].北京:人民郵電出版社,2000.

        3國家防汛抗旱總指揮部辦公室.山洪災害防治縣級監(jiān)測預警系統(tǒng)建設(shè)技術(shù)要求[R].2010.

        猜你喜歡
        山洪監(jiān)測站預警系統(tǒng)
        民用飛機機載跑道入侵預警系統(tǒng)仿真驗證
        一種基于CNN遷移學習的井下煙、火智能感知預警系統(tǒng)
        河南科學(2020年3期)2020-06-02 08:30:14
        優(yōu)雅地表達
        基于ZigBee與GPRS的輸電桿塔傾斜監(jiān)測預警系統(tǒng)
        電子制作(2019年11期)2019-07-04 00:34:36
        北京市監(jiān)測站布局差異分析
        對輻射環(huán)境空氣自動監(jiān)測站系統(tǒng)開展數(shù)據(jù)化運維的探討
        橋、隧安全防范聲光預警系統(tǒng)
        與酷暑奮戰(zhàn)的環(huán)保英雄——宜興市環(huán)境監(jiān)測站現(xiàn)場采樣組的一天
        遭遇暴雨山洪如何避險自救
        湖北省山洪溝治理思路淺析
        中國水利(2015年9期)2015-02-28 15:13:20
        亚洲制服无码一区二区三区| 欧美牲交videossexeso欧美| 中文字幕精品久久久久人妻红杏ⅰ| 亚洲天堂在线视频播放| 美女视频永久黄网站免费观看国产| 国产女人精品一区二区三区| 免费观看成人欧美www色| 樱花草在线播放免费中文| 国产成+人+综合+亚洲专| 久久网站在线免费观看| 日本中文一区二区在线观看| 99精品国产一区二区三区a片| 999精品全免费观看视频| 久久久99精品国产片| 性人久久久久| 亚洲色www成人永久网址| 婷婷第四色| 亚洲蜜臀av一区二区三区漫画| 天天做天天爱夜夜爽毛片毛片 | 日韩一区二区超清视频| 淫秽在线中国国产视频| 亚洲精品久久国产精品| 丰满少妇被猛烈进入| 天堂最新在线官网av| 国产亚洲精品一品二品| 国内精品久久久人妻中文字幕| 亚洲精品自产拍在线观看| 国产喷白浆精品一区二区| 丰满人妻中文字幕一区三区| 久久久久成人片免费观看蜜芽| 亚洲婷婷丁香激情| 国产一区二区三区不卡在线播放| 国产精品情侣呻吟对白视频| 吃奶摸下的激烈视频| 中文字幕成人精品久久不卡| 日本最新视频一区二区| 性xxxx18免费观看视频| 亚洲天堂免费视频| 久久2020精品免费网站| 亚洲情综合五月天| 又爽又黄无遮挡高潮视频网站|