《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ARM 的火災信息傳輸網關設計
基于ARM 的火災信息傳輸網關設計
中電網
摘要: 針對城市消防遠程監控系統中火災自動報警系統的聯網問題,提出一種利用Internet實現火災自動報警系統與城市監控中心的聯接方案,設計了系統的關鍵設備——基于ARM的嵌入式網關。設備中采用經過剪裁、內核版本2.6的linux系統,提高了信息處理和傳輸的實時性和可靠性,并在嵌入式操作系統的基礎上,利用多線程及管道編程,實現了火災探測信息的處理傳輸及上層監控中心和下層網關的信息交互。設備實際運行后的結果表明,該火災
Abstract:
Key words :

0   引  言

火災是城市災害中的一種主要形式,它已經日益成為影響社會經濟發展和人民生活的一個重要災害,而目前城市在預防火災方面主要采用的就是在建筑物內安裝火災自動報警系統及其聯動消防裝置,雖然這種裝置在及早發現火情和控制火勢方面發揮了重要作用,但是在目前這種消防設備管理和監督體系下,很多建筑物的所有方不能夠及時地對建筑物內的消防設施進行檢查維修,導致很多火災自動報警系統故障誤報頻發,極大地影響了建筑物內的人員的工作和生活; 同時,大部分消防主控室主要通過人工值班、電話報警方式,因受到電話線路、報警方式方法以及報警人情緒的影響,往往造成接警調度處理速度較慢; 消防部門在接警時也是依靠電話來傳遞信息的,極易受到報警人或值班員聽覺的影響而導致接傳火警信息有誤,造成不應有的錯誤和無法估量的損失,所以建立基于互聯網的城市消防監控系統具有很重要的實踐意義。在這項工程中,最關鍵的就是處于網絡與自動報警聯動裝置之間的接入網關的設計和研制。利用這種專門的硬件設備以及在這之中的程序,可以把各個建筑物的消防自動化及其聯動裝置接入Internet,通過互聯網連接到城市中的監控中心。

1   基于互聯網的城市消防遠程監控系統結構

該系統由三層組成,系統框圖如圖1 所示。第一層是建筑物內的消防自動報警及其聯動裝置以及其他一些用戶的消防設施,它們由很多不同廠家和類型的火災探頭、消防主機、手動消防設備組成; 第二層是火災信息收集管理處置中心、政府消防部門信息接口、互聯網普通用戶查詢接口等信息使用單位 。

2   火災信息傳輸網關的硬件設計

該嵌入式網關的中央處理單元采用三星公司的16/ 32 位RISC 處理器S3C2440A,它基于ARM920T內核,運算速度高達400 MHz,適用于需要聯網應用的嵌入式電子設備。其中的NOR FLASH 用于存儲bo ot loader 啟動代碼,NAND FLASH 用于存儲操作系統的內核映像和根文件系統映像,SDRAM 用于加載操作系統內核及應用程序等可執行代碼和數據,為其運行提供空間。外圍電路包括以太網模塊、串口模塊、人機接口模塊等,如圖2 所示。

基于網絡的城市火災信息傳輸系統

圖1   基于網絡的城市火災信息傳輸系統

嵌入式網關的硬件結構

圖2   嵌入式網關的硬件結構

3   火災信息傳輸網關的軟件設計

3. 1   軟件總體設計

軟件總體設計如圖3 所示。

軟件基本框架

圖3  軟件基本框架

3. 2   總體概述

網關軟件系統按照功能分為4 個模塊。

( 1) 網絡通信模塊

主要負責信息往網絡上的傳遞,將該網關獲取的火警,故障等信息依照特定的網絡協議準確無誤地傳遞給上層的應用服務器,同時還要負責接收來自服務器的數據,如配置信息,控制指令等。具體來說,網絡通信模塊又可以分為兩個子模塊: 數據通信和數據處理。數據通信的工作只是負責從網絡上獲取數據或者將數據發送到網絡。數據處理主要負責組包和解包,涉及到通信協議。當數據區有數據需要網絡通信模塊處理時,數據處理子模塊會首先從數據區取出數據,并分析、判斷數據類型,根據數據類型組包,然后將包交給數據通信子模塊發送。

( 2) 串口采集模塊

主要負責通過串口獲取消防主機的狀態,并進行分析,分離出有用信息,并將其寫入數據區,供其他模塊使用,它是信息傳輸網關的核心。

由于消防主機眾多,而且協議又各不相同,因此串口采集模塊需要根據消防主機定制。在此,同樣將串口采集模塊分為兩個子模塊: 數據采集和數據加工。數據采集通過特定的對話方式( 和具體的消防主機有關) 從消防主機獲取數據,數據加工讀取這些數據,并按照消防主機協議進行解析,提取初步的信息,如消息類型( 火警還是故障) ,探頭地址( 內部編碼地址) 。然后依照內部協議組包,并寫入數據區,以后的工作就交由網絡通信模塊。

( 3) 系統控制模塊

主要用于控制信息傳輸網關的硬件設備,如指示燈、按鍵、燈等。它從數據區讀取控制指令,根據控制指令執行特定的硬件控制??刂浦噶羁赡苡删W絡通信模塊產生,如上層服務器發送查崗請求,網絡通信模塊經過數據處理轉化為響喇叭指令,寫入數據區。當然,控制指令可以由任何模塊產生。系統控制模塊可以返回硬件狀態信息,也是通過寫狀態信息到數據區來實現信息傳遞的。

( 4) 系統維護模塊

主要負責確保系統各個模塊的正常運行,同時記錄及上傳工作日志,供系統維護人員參考,同時收集上來的數據經過分析和挖掘,可以作為產品性能指標制定的依據。各模塊在建立之初將會在數據區注冊,維護模塊通過這個注冊信息實現心跳應答機制來判斷各個模塊的工作狀態。同時,還將數據區中的日志信息提取出來寫入日志文件,并提出發送日志文件請求給網絡通信模塊。

每個模塊依照分工完成職能之內的工作,不屬于職能內的工作通過寫入數據區交由職能模塊去完成。數據區是各個模塊傳遞信息的媒介,通過格式化的數據寫入和讀取,實現模塊間的信息共享和職能分工。

3. 3   各模塊詳細設計

3. 3. 1   流程分析

核心管理模塊是嵌入式網關入口,當嵌入式網關加電啟動,嵌入式網關的操作系統負責啟動核心管理模塊。此時,其他模塊還未啟動。核心模塊首先為其他模塊啟動初始化系統環境,如創建管道,共享內存等。接著,核心模塊啟動其他模塊。這時,系統將啟動完成。

接著,核心模塊建立定時器,創建定時器是為了定時地檢測其他模塊,以判斷其他模塊的狀態,稱這個過程為“心跳”。

當以上過程完成后,核心管理模塊開始監視所有管道,當管道有數據時,他讀取定長的數據并分析,找出源地址、目的地址及命令字。根據命令字類型的不同做不同的處理。程序流程圖如圖4 所示。

程序啟動過程

圖4   程序啟動過程

( 1) 初始化。初始化的主要工作是為模塊間的通信建立有名管道,每個與核心模塊通信的進程有一個管道。當前系統需要創建四個管道。其他模塊如果想要使用管道,必須首先打開管道。所有與管道的通信都有API 供其他用戶使用。

( 2) 啟動其他模塊。核心模塊通過子進程調用execl( ) 來啟動其他模塊。每個其他模塊都是一個可執行程序,通常位于一個固定的路徑及固定的文件名。每個模塊在啟動之后需要向核心模塊發送注冊信息,這些信息包括模塊標識、進程ID、進程狀態等。登記信息由核心模塊保留,供以后使用。

( 3) 創建定時器。核心模塊需要定時地檢測其他模塊的生存狀況,通過注冊一個定時器,可以定時地觸發檢測功能。

( 4) 開始*。當所有初始化工作完成以后,核心模塊開始進入工作狀態。它的主要工作就是負責處理管道信息。通過使用select ( ) 函數可以實現同時*多個管道。當某個管道有數據,核心模塊讀取數據包( 格式詳見后文) ,并解析出包頭,得到包的源地址,目的地址,及控制字并加以分析,選擇處理流程。處理流程包括: 數據中轉,巡檢,系統維護等。當該數據包處理完成以后,核心模塊返回繼續等待下一個數據包。

( 5) 處理數據中轉。其他模塊間無法直接通信,都必須通過核心模塊進行中轉。數據包中指明了包的源地址,目的地址及控制字。這里的控制字說明數據需要中轉,核心模塊解析到數據包需要中轉,就將包寫入到給定目的地址的模塊管道。

( 6) 處理巡檢。服務器需要定時地檢測前置機各個模塊的狀態,于是發送巡檢請求給網絡模塊,網絡模塊解析后組包發送給核心模塊,核心模塊在分析包發現該包是巡檢請求,于是通過kil l( ) 函數及注冊記錄信息,判斷各個模塊的狀態,并組包發送給服務器。

( 7) 處理系統維護。系統維護的主要任務是為了保證系統所有模塊的正常運行。前面初始化了一個定時器,通過定時器,可定時地查詢其他模塊的狀態。當發現某個模塊異常,核心模塊將重啟該模塊。

3. 3. 2   關鍵數據結構

( 1) 包格式

( 2) 模塊ID 定義

如表1 所示:

表1   模塊ID 定義

模塊ID 定義

# defineID_CORE0x0001

# defineID_NET WORK0x0002

# define ID_COM0x0004

# defineID_CT L0x0008

# define ID_LOG0x0010

( 3) 控制字定義

如表2 所示:

 表2   控制字定義

控制字定義

( 4) 管道初始化

首先,用戶必須選擇正確地管道初始化函數,通過初始化函數,用戶正確的建立與管道的連接。初始化函數如表3 所示。

表3   初始化函數

 初始化函數

( 5) 管道寫操作

一旦管道創建完成,用戶就可以通過調用管道寫函數來寫數據。用于必須調用和初始化一致的寫函數。

如網絡模塊調用pipe_init_ netw o rk 函數初始化管道,必須通過調pipe_w rite_netw ork 來寫,若調用其他函數寫入將失敗,如表4 所示。

表4   管道寫函數

管道寫函數

表4 中目的模塊ID 和控制字在conf ig . h 文件中定義。msg 是要發送數據的首地址,必須注意的是msg所指向的數據必須是字符串類型,必須以“ 0”結束,否則發送函數無法確定msg 數據包的長度。對于不是以msg 結尾的數據包,必須字符串化,否則發送函數的行為未定義。

( 6) 管道讀操作管道讀操作從管道讀取一個固定長度的數據包,并解析數據包,從數據包中分離信息。管道的讀操作可以是阻塞模式和非阻塞模式。在阻塞模式下,讀操作將阻塞直到有數據返回。用戶通過設置讀操作中的參數f lag 可以實現模式選擇。當f lag= 0 時,表示為阻塞模式; 當f lag= 1 時,表示為非阻塞模式。管道讀操作也要求管道必須正確的初始化,否則讀失敗,同時也要求必須選擇正確的管道讀函數,如表5 所示。

表5 

表5

表5 中,src 是unsigned shor t * 類型,如果不要求獲取源地址,可以傳遞NU LL。msg 用于存放接收數據的內存首地址,msg 必須大于或等于251 B??臻g必須由用戶分配。函數假定msg 的空間已分配且空間足夠大 。

( 7) 基于TCP/ IP 的網絡通信

裝置采用串口采集消防主機上的數據,并且把數據轉換成TCP/ IP 協議能識別的數據包,因此串口采集的數據源要作為以太網幀的一部分。為了向設備提供透明的接口并區分數據源,需要制定統一的幀格式。幀格式如下:

其中,串*字段用來區分數據源; 幀頭、幀尾作為一個串口幀的起始分界( 可自定義) ; 數據部分是來自串口的原始數據流。

以太網方面采用面向連接的網絡通信,采用TCP/ IP網絡通信協議。數據包結構描述中控制單元格式如下:

應用數據單元基本格式如下:


消防主機發送的信息一般在10~ 100 B 之間,若選擇T CP 協議,會使協議開銷在網絡的吞吐量中占有很大的比例。U DP 協議支持實時多播通信,保證了網關向監控中心實時發送火警情報,并能有效地減少用戶信息傳輸裝置的開銷和網絡資源。UDP 協議的數據可靠性和完整性問題由應用程序來解決,因此在該系統中使用UDP 更合理。

TCP/ IP 通信模塊采用SOCKET 套接字編程實現。本系統采用服務器/ 客戶端編程模型,服務器和客戶端分別對應監控中心工作站服務器和用戶信息傳輸裝置。

4   結  語

本文詳細剖析了利用Internet 實現火災自動報警系統與城市遠程消防監控中心的連接及相關信息的交互,并設計了該系統的關鍵設備——嵌入式信息傳輸網關,采用已經移植有Linux 2. 6 內核操作系統的ARM9單片機,在此基礎上進行了應用程序的開發,實現了火災探測信息的處理轉發功能和上位機與嵌入式網關的信息交互功能。設備在實際環境中安裝后的測試結果表明,該嵌入式系統對火災探測數據及交互信息的處理和轉發穩定可靠、實時性好,不僅適用于基于IP 的火災信息傳輸網絡中,同時還可應用于其串口和以太網通信的場合中,應用前景廣闊。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久一区精品| 国产精品国产三级国产aⅴ浪潮 | 一本色道久久综合亚洲精品婷婷 | 一本色道久久综合狠狠躁篇的优点 | 久久国产精品99国产精| 一区二区不卡在线视频 午夜欧美不卡'| 精品91在线| 黑人一区二区| 国产在线观看91精品一区| 国产日韩精品综合网站| 国产欧美日本一区二区三区| 国产精品视频一二三| 国产精品久久网| 国产精品网站在线播放| 国产精品中文字幕欧美| 国产三区精品| 国产主播在线一区| 国产综合精品一区| 在线观看国产精品淫| 在线电影国产精品| 亚洲国产成人午夜在线一区| 亚洲国产影院| 夜夜嗨av一区二区三区免费区| 日韩亚洲欧美中文三级| 亚洲视频在线观看三级| 亚洲综合欧美| 久久精品国产亚洲高清剧情介绍| 久久狠狠亚洲综合| 亚洲精品在线三区| 在线一区二区三区做爰视频网站 | 亚洲午夜av电影| 亚洲欧美日韩精品综合在线观看 | 国产视频精品xxxx| 狠狠色2019综合网| 91久久极品少妇xxxxⅹ软件| 日韩亚洲欧美成人一区| 亚洲一区二区三区中文字幕在线| 午夜久久久久| 亚洲国产精品久久久久| 一区二区av| 午夜视频一区| 久久婷婷久久| 欧美人牲a欧美精品| 国产精品视频精品视频| 国语自产在线不卡| 亚洲国产精品黑人久久久| 夜夜嗨一区二区三区| 亚洲欧美在线另类| 亚洲欧洲综合| 亚洲小视频在线观看| 欧美中文字幕在线视频| 免费亚洲一区| 欧美日在线观看| 国产亚洲人成a一在线v站| 亚洲经典自拍| 午夜精品国产更新| 亚洲欧洲日产国产网站| 亚洲天堂激情| 久久久精品免费视频| 欧美日韩国产综合一区二区| 国产欧美日韩亚洲| 亚洲黄色高清| 性欧美大战久久久久久久久| 亚洲伦理在线免费看| 性色av一区二区三区| 免费在线欧美视频| 国产精品亚发布| 亚洲人成毛片在线播放| 亚洲欧美色一区| 日韩午夜高潮| 久久久久久久综合日本| 欧美视频日韩视频在线观看| 伊伊综合在线| 亚洲欧美日韩国产中文在线| 亚洲理论电影网| 久久久成人网| 国产精品高潮久久| 亚洲人成人一区二区三区| 欧美一级免费视频| 亚洲午夜av| 欧美成人在线影院| 国产一区二区黄| 制服丝袜激情欧洲亚洲| 亚洲精品乱码久久久久| 欧美在线短视频| 欧美午夜一区二区福利视频| 亚洲国产成人av在线| 欧美有码视频| 亚洲欧美日韩第一区| 欧美日韩激情小视频| 有码中文亚洲精品| 欧美一级欧美一级在线播放| 亚洲一区视频| 欧美美女视频| 亚洲高清视频一区| 久久精品国产99精品国产亚洲性色| 性欧美大战久久久久久久免费观看| 欧美激情综合色综合啪啪| 激情综合在线| 欧美一区二区三区在线免费观看| 亚洲欧美日本伦理| 欧美午夜电影一区| 亚洲精品免费电影| 亚洲日本免费| 欧美91精品| 影音先锋日韩资源| 久久精品国产亚洲一区二区| 欧美中文字幕在线| 国产美女扒开尿口久久久| 亚洲网站在线播放| 亚洲一区二区三区精品在线观看 | 欧美日韩中文| 日韩视频在线观看一区二区| 日韩午夜在线视频| 欧美成人中文字幕| 亚洲国产精品va| 91久久国产自产拍夜夜嗨| 久久露脸国产精品| 韩国av一区二区三区在线观看| 新狼窝色av性久久久久久| 亚欧美中日韩视频| 国产精品视频一二三| 亚洲男女自偷自拍图片另类| 亚洲欧美日韩精品在线| 国产精品免费看| 亚洲综合好骚| 欧美中文日韩| 国产原创一区二区| 亚洲国产成人精品久久久国产成人一区| 久久精品视频一| 国产一区高清视频| 久久精品亚洲一区二区三区浴池| 久久亚洲一区二区三区四区| 精品动漫3d一区二区三区| 亚洲激情婷婷| 欧美国产先锋| 99在线精品观看| 亚洲自拍电影| 国产欧美丝祙| 欧美影院久久久| 嫩草成人www欧美| 亚洲人成人99网站| 亚洲影院一区| 国产欧美在线| 亚洲成色777777女色窝| 欧美成人亚洲成人日韩成人| 亚洲日本中文| 亚洲影院在线观看| 国产日韩精品电影| 亚洲高清影视| 欧美另类在线观看| 亚洲在线视频| 久久影视三级福利片| 亚洲激情网站免费观看| 亚洲女性裸体视频| 国产又爽又黄的激情精品视频| 亚洲日本电影| 国产精品久久99| 久久精品国产69国产精品亚洲| 欧美大片网址| 亚洲深夜福利在线| 久久蜜桃av一区精品变态类天堂| 亚洲电影第1页| 亚洲欧美日韩高清| 在线播放中文一区| 亚洲一区二区三区激情| 国产一区二区三区观看 | 日韩视频不卡中文| 国产精品一区久久| 亚洲精品乱码久久久久久日本蜜臀 | 亚洲电影在线| 午夜精品久久久久久久男人的天堂| 国产一二精品视频| 99热免费精品| 国产一区99| 一本到12不卡视频在线dvd| 国产欧美视频一区二区三区| 亚洲伦理在线| 国产一区二区在线观看免费| 日韩一区二区精品葵司在线| 国产欧美日韩不卡| 99精品99| 好吊色欧美一区二区三区视频| 亚洲一二区在线| 亚洲大片在线| 久久国产精品99精品国产| 亚洲欧洲一区二区在线观看 | 欧美日韩国产小视频在线观看| 亚洲欧美日韩精品久久亚洲区 | 国产有码在线一区二区视频| 亚洲午夜视频在线观看| 在线免费不卡视频| 欧美一二三视频| 亚洲毛片在线观看| 麻豆精品视频在线| 午夜伦理片一区| 欧美色图首页| 亚洲麻豆一区| 在线欧美日韩国产| 久久激情网站|