国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于嵌入式數(shù)據(jù)庫的分布式大壩監(jiān)測數(shù)據(jù)匯聚器設計

2011-07-02 10:48:10戴瑜興
電子技術應用 2011年5期
關鍵詞:監(jiān)測儀器上位嵌入式

沈 雁,戴瑜興,湯 睿

(湖南大學 電氣與信息工程學院,湖南 長沙410082)

隨著水利資源的運用日益廣泛及成熟,對于大壩的安全性進行監(jiān)測便成了其中的重要部分,因為大壩在投入使用之后始終存在著安全隱患,隨時都有可能威脅到下游人民的生命財產(chǎn)安全。電子及計算機技術的不斷發(fā)展,使得對大壩的自動化監(jiān)測成為可能。筆者從分布式的角度出發(fā),引入嵌入式數(shù)據(jù)庫[1],設計開發(fā)大壩安全監(jiān)測所用的數(shù)據(jù)匯聚器,為自動化的大壩監(jiān)測系統(tǒng)提供有力的支持。

1 數(shù)據(jù)匯集器的系統(tǒng)結構

1.1 分布式大壩監(jiān)測系統(tǒng)結構

大壩監(jiān)測安全采用分布式設計,由上位監(jiān)測機、局域網(wǎng)或互聯(lián)網(wǎng)、數(shù)據(jù)匯聚器、RS-485總線、DAM數(shù)據(jù)模塊、監(jiān)測儀器組成,如圖1所示。各種監(jiān)測儀器使用傳感器將采集的信號如電流、電壓等經(jīng)過處理后變成可以識別和計算的數(shù)字量[2]。監(jiān)測儀器可直接與數(shù)據(jù)匯聚器相連,也可以將多個儀器接至DAM數(shù)據(jù)模塊后再與數(shù)據(jù)匯聚器相連。數(shù)據(jù)匯聚器作為一個總的數(shù)據(jù)采集裝置,將眾多監(jiān)測儀器采集的數(shù)據(jù)進行匯聚并存儲,可為上位監(jiān)測機提供實時的或以往的監(jiān)測數(shù)據(jù),由于數(shù)據(jù)分布于各個數(shù)據(jù)匯聚器,提高了系統(tǒng)的可靠性及數(shù)據(jù)的共享性。數(shù)據(jù)匯聚器與上位監(jiān)測可以是局域網(wǎng),一般應用于對一個單獨的大壩進行監(jiān)測,也可以將數(shù)據(jù)匯聚器接入互聯(lián)網(wǎng),使得可以通過遠程訪問或對多個大壩進行統(tǒng)一的監(jiān)測。在數(shù)據(jù)匯聚器與監(jiān)測儀器之間采用帶有屏蔽層的RS-485同纜電纜,從而保證了在大壩復雜環(huán)境下數(shù)據(jù)的正常傳輸。

圖1 大壩監(jiān)測系統(tǒng)結構

1.2 數(shù)據(jù)匯集器的硬件結構

數(shù)據(jù)匯集器是整個大壩監(jiān)測系統(tǒng)的數(shù)據(jù)存儲中心,同時還具有TCP到RS-485的轉換功能,使得上位監(jiān)測機在需要時可以直接對監(jiān)測儀器進行操作,其結構框圖如圖2所示。為保證系統(tǒng)的可靠性,硬件的微處理器采用工業(yè)級ARM9芯片AT91SAM9261,在工作頻率為190 MHz時可達到210 MIPS,ARM9的核心系統(tǒng)除了包含AT91SAM9261處理器之外,還有 32 MB SDRAM、1 GB Nand Flash、4 MB Data Flash及 AT91SAM9261。Data Flash用來存放Bootstrap、Uboot以及 Linux的內核,而大容量的Nand Flash用于實現(xiàn)Linux所需的基本文件系統(tǒng)[3]。以太網(wǎng)芯片采用DM9000A與局域網(wǎng)及互聯(lián)網(wǎng)通信。所有的數(shù)據(jù)均采用SD卡存儲,因此設計了SD卡的接口,可以實現(xiàn)數(shù)據(jù)SD卡的隨時更改及存檔。設計了簡單的按鍵及液晶,用來實現(xiàn)對RS485參數(shù)及TCP/IP參數(shù)的配置操作。數(shù)據(jù)匯集器所接的設備可以達到16個,所以AT91SAM9261自身提供的串口遠遠不夠,通過采用ALTERA公司的EPxxxx型FPGA來完成UART功能接口的擴展,將串口接口擴展至16個。

圖2 數(shù)據(jù)匯集器硬件結構

2 應用SQLite的數(shù)據(jù)匯聚器軟件設計

2.1 軟件平臺架構

數(shù)據(jù)匯聚器在軟件上采用Linux作為操作系統(tǒng)平臺,Linux是優(yōu)秀的開源操作系統(tǒng),具有性能穩(wěn)定、內核可裁剪、支持眾多硬件等優(yōu)點,非常適合在嵌入式設備中使用。數(shù)據(jù)匯聚器所使用的軟件平臺架構如圖3所示。Linux內核之下加載了眾多的驅動程序來實現(xiàn)對各種硬件接口的統(tǒng)一文件操作。內核提供了一系列復雜的系統(tǒng)調用函數(shù),基于此實現(xiàn)了功能豐富的函數(shù)庫來滿足不同的功能需要,如openssl庫是基于TCP的安全網(wǎng)絡通信協(xié)議庫。由于需要數(shù)據(jù)庫的操作,在此加入了SQLite的函數(shù)庫。另外,數(shù)據(jù)匯集器所連接的監(jiān)測儀器各種各樣且由不同廠商生產(chǎn),所使用的串口通信協(xié)議不盡相同,這就需要為不同種類的儀器編寫各自的函數(shù)庫,輸出統(tǒng)一規(guī)范的數(shù)據(jù)。

2.2 數(shù)據(jù)庫設計

圖3 軟件平臺架構

作為分布式的監(jiān)測系統(tǒng),在數(shù)據(jù)匯聚中的數(shù)據(jù)存儲非常關鍵。單個數(shù)據(jù)匯聚器可以直接連接16臺監(jiān)測儀器,如果采用DAM數(shù)據(jù)模塊,則可以連接到最多達128臺監(jiān)測儀器。若以單個儀器單次測量最大數(shù)據(jù)量為100 B,同時每隔5 min測量一次,則一天的測量數(shù)據(jù)可達到3.5 MB,一年的數(shù)據(jù)量可為1.25 GB。對這樣大量的數(shù)據(jù)的插入、查詢等操作就必需使用數(shù)據(jù)庫進行管理。

SQLite是一款優(yōu)秀的數(shù)據(jù)庫,其具有零配置、無需安裝、數(shù)據(jù)庫存儲與機器字節(jié)順序無關、速度快等特點[4],同時也是開源軟件,其全部源代碼約為3萬多行C代碼,并且可以嵌入到程序當中。因此采用SQLite作為數(shù)據(jù)匯聚器的數(shù)據(jù)庫系統(tǒng)

為了避免采用一個數(shù)據(jù)庫文件來存儲所有的監(jiān)測數(shù)據(jù)信息,使用在對查詢某時間段的數(shù)據(jù)時因為一張大的數(shù)據(jù)庫表而造成速度上的減慢。系統(tǒng)采用分割文件的形式來存放測量數(shù)據(jù),為每一個月所存數(shù)據(jù)形成一個數(shù)據(jù)庫文件,數(shù)據(jù)庫的結構如表1。

表1 監(jiān)測數(shù)據(jù)庫結構

另有一個數(shù)據(jù)庫文件用來存放監(jiān)測儀器的相關信息,結構如表2。

表2 儀器數(shù)據(jù)庫結構

2.3 軟件實現(xiàn)

數(shù)據(jù)匯聚器的軟件運行流程如圖4所示,當設備上電啟動之后進入系統(tǒng)的初始化階段。在初始化階段包括了 AT91系列特有的 BootStrap程序、U-boot以及 Linux的內核,它們分別是一級引導另一級的系統(tǒng)的啟動[5]。到最后的Linux內核啟動后,就會加載在Nand Flash中的基本文件系統(tǒng),從“/app/”目錄中加載數(shù)據(jù)匯聚器的守護程序,從而進入不斷運行的調度中心。

圖4 軟件運行流程

為了保證系統(tǒng)的可靠性及穩(wěn)定性,防止程序意外地進入死循環(huán),使用了看門狗技術,每隔30 s必須執(zhí)行一次喂狗操作。當意外錯誤發(fā)生并導致整個系統(tǒng)崩潰后,看門狗便自動復位系統(tǒng),防止設備因一次故障而無法再次工作。

在調度中心,從儀器數(shù)據(jù)庫中加載每一個連接儀器對應的采集配置,主要是提取其采集周期,使得程序可以可靠并定時地對各監(jiān)測儀器進行自動數(shù)據(jù)采集。數(shù)據(jù)采集模塊根據(jù)儀器的類型調用對應的儀器操作函數(shù)庫通過RS485接口與儀器進行通信,并獲得儀器所測量到的數(shù)據(jù),得到數(shù)據(jù)后會將其分別存儲到數(shù)據(jù)庫及緩沖區(qū)中。

同時,調度中心還會一直偵聽上位監(jiān)測機的數(shù)據(jù)請求,從而在SQLite數(shù)據(jù)庫或存取緩沖區(qū)中提取所需要的測量數(shù)據(jù)。存取緩沖區(qū)存放了最近一個小時內所有儀器的測量數(shù)據(jù),當上位監(jiān)測機所請求的數(shù)據(jù)是在這一范圍內時,則會從存取緩沖區(qū)中提供,從而提高了響應的速度。

文中論述了分布式大壩監(jiān)測系統(tǒng)的組織結構及數(shù)據(jù)匯聚器在其中的作用。嵌入式數(shù)據(jù)庫的引入,可以提高對監(jiān)測數(shù)據(jù)存儲、查詢的效率以及可靠性,通過與分布式的存儲方式及互聯(lián)網(wǎng)相結合,方便地實現(xiàn)了多監(jiān)測上位機的數(shù)據(jù)共享,同時在一定程度上簡化了大壩監(jiān)測系統(tǒng)的復雜度。

[1]沈振中,陳允平,王成.大壩安全實時監(jiān)控和預警系統(tǒng)的研制和開發(fā)[J].水利水電科技進展,2010,30(6):68-69.

[2]葉慧聰,戴瑜興,劉玉芳.分布式大壩安全監(jiān)測數(shù)據(jù)采集系統(tǒng)設計[J].儀表技術與傳感器,2010(5):44-45.

[3]梁志剛.基于 AT91SAM9261的嵌入式 Linux的移植及其應用研究[D].浙江工業(yè)大學,2009.

[4]萬瑪寧,關永,韓相軍.嵌入式數(shù)據(jù)庫典型技術 SQLite和Berkeley DB的研究[J].微計算機信息,2006(1-2).

[5]黃深喜,樊曉平,劉利方.基于AT91SAM926X的嵌入式LINUX引導程序設計[J].微計算機應用,2009,30(10):69-71.

猜你喜歡
監(jiān)測儀器上位嵌入式
特斯拉 風云之老阿姨上位
車迷(2018年12期)2018-07-26 00:42:22
搭建基于Qt的嵌入式開發(fā)平臺
一種低功耗地下水位監(jiān)測儀器的設計與實現(xiàn)
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應用
“三扶”齊上位 決戰(zhàn)必打贏
基于ZigBee和VC上位機的教室智能監(jiān)測管理系統(tǒng)
以新思路促推現(xiàn)代農(nóng)業(yè)上位
學習月刊(2015年3期)2015-07-09 03:51:04
Altera加入嵌入式視覺聯(lián)盟
浸入式水深監(jiān)測儀器的設計
倍福 CX8091嵌入式控制器
自動化博覽(2014年4期)2014-02-28 22:31:15
大理市| 舒兰市| 平昌县| 电白县| 上饶市| 武功县| 二连浩特市| 科技| 新余市| 高陵县| 繁峙县| 瑞金市| 沁阳市| 铅山县| 潜江市| 天门市| 泸溪县| 乐平市| 舟山市| 永济市| 太原市| 会理县| 灌云县| 洮南市| 文化| 工布江达县| 泗水县| 乌鲁木齐县| 共和县| 驻马店市| 沙雅县| 南安市| 广南县| 山西省| 磐安县| 博爱县| 蓬溪县| 娄烦县| 融水| 香格里拉县| 长海县|