999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于安卓的幼兒園監控系統設計與實現

2015-02-04 20:10:25周明亮朱一群岑寶周
電子技術與軟件工程 2014年22期

周明亮 朱一群 岑寶周

當今幼兒園校車事件頻發,并且家長對于校車在行駛過程中的動態一無所知,因此需要一種技術能夠幫助家長對孩子所處的位置進行實時的檢測。基于GPRS, GPS等技術的基于安卓的幼兒園監控系統可以實現家長使用安卓手機上的客戶端能實時了解孩子的各方面的信息,解決家長無法實時了解孩子在途中的安全狀況,同時,該系統也給家長提供孩子在學校的生活狀況和學校的新動態等各方面的信息。監控系統裝置通過GPS獲取孩子所在位置信息,并通過GPRS模塊發送至遠程服務器上,家長可以通過android客戶端查看上位機處理軟件解析后存入數據庫的GPS數據以及孩子的個人信息和事件信息。該系統彌補了市場上利用視頻監控技術,人臉識別技術和智能卡技術只能在一定范圍內監控的缺點,該系統能夠全程的檢測孩子位置,監控具有靈活性。

【關鍵詞】GPRS技術 GPS技術 Android 校車監控

1 引言

當今社會,對于家庭來說,孩子便成了家庭的核心?;诎沧康挠變簣@監控系統可以很好的實現孩子實時位置監控,家長通過智能手機登陸手機客戶端便能查詢到孩子在幼兒園的狀況以及實時的位置信息。后臺管理系統讓幼兒園更好地實現了公開化教育,有利于校園的管理。隨著移動業務的快速發展,網絡技術的不斷提高,為本系統提供了強大的技術基礎,成熟的GPS、GPRS技術,為孩子的位置信息的傳送帶來有力的保障。本文通過對系統結構及所用技術的闡述實現上位機程序、后臺管理程序以及安卓手機客戶端程序。

2 系統總體結構

2.1 系統結構框圖

基于安卓的幼兒園監控管理系統使用GPRS技術把獲取到的GPS信息發送到服務器處理,家長通過登陸安卓上的客戶端來了解孩子的狀況,該系統具體設計框圖如圖2-1所示。

該系統包含了由GPS、單片機模塊、GPRS模塊構成的校車監控模塊、服務器端的上位機程序、后臺管理程序以及手機端的安卓客戶端程序。

校車監控模塊硬件放置于校車上,當校車啟動后,監控模塊電源接通,模塊進行初始化,即注冊GSM網絡,之后連接上GPRS模塊,注冊GPRS網絡,與此同時GPS模塊進行初始化定位,查詢地球周圍衛星,并進行準確定位,獲得的定位數據平均每3秒一次通過GPRS模塊發送至服務器端口。服務器端的數據接收工具從規定的端口讀取移動網絡傳來的數據,并對GPS數據進行解析和糾錯處理,再將數據存入數據庫校車ID所對應的表中。PC網站可訪問數據表中的數據,并顯示在網頁上,家長可以通過電腦訪問在校管理員錄入的學生信息,并查詢到孩子所在的校車及其位置信息。家長也可以通過手機客戶端利用家長自己注冊的手機號碼登陸系統,查看對應孩子相應的信息以及在校所發生的事件。由此,該系統在軟硬件的配合下完成了一套完整的監控管理系統。

2.2 系統功能模塊

基于安卓的幼兒園監控管理系統由GPS、MCU、GPRS硬件模塊與服務器端、安卓客戶端軟件模塊兩部分構成。硬件模塊主要實現遠程定位與定位數據的發送功能,軟件模塊實現定位信息處理與信息顯示功能。系統硬件模塊如圖2-2所示。

2.2.1 GPS模塊

發送定位信號,接收GPS衛星定位,將GPS定位信息[1]傳送給MCU進行處理。此處選用的監控模塊是瑞士生產的ublox NEO 5Q,其定位精度高,更新速度快,滿足本系統設計的要求,極限速度可達500m/s,遠高于車的行駛速度,在定位時,車速將不影響定位。

2.2.2 MCU處理模塊

此處使用的微控制單元為STC12C5A60S2負責處理接收過來的GPS數據,將經緯度解析出來,傳遞給GPRS,同時還有初始化GPRS模塊的功能。該模塊采用高速率的處理芯片,其強抗干擾能力,強抗靜電能力可以防止模塊在校車上被手機信號或強磁場干擾。

2.2.3 GPRS模塊

采用多頻模塊,支持移動和聯通運營商,負責將經過處理的GPS數據傳送到服務器端。使用該模塊時需要自備一張SIM卡,等待MCU進行初始化,即注冊運營商和注冊網絡。此處選用的是臺灣SIMCOM公司生產的SIM300。

2.2.4 服務器端

包括GPRS數據接收器,前臺管理系統,網站三部分。采用C#,ASP.NET,SQL程序編寫,本系統通過數據接收器接收經緯度并存入數據庫,前臺管理系統與網站讀取數據庫數據,并顯示在前端,管理系統與網站通過讀寫數據庫的形式存儲數據。

2.2.5 安卓客戶端

利用java程序編寫,通過聯網的方式與服務器進行交互,達到實時同步的效果,地圖采用百度地圖API接口能夠同步的顯示校車所在的地理位置。該客戶端也能夠查看學生的信息及事件信息。

3 系統軟件設計與實現

3.1 上位機設計

上位機使用C# 編程語言。該軟件不停地監控指定端口上發送過來的數據,并分析數據,把分析后的數據存入數據庫中。

3.1.1 GPS數據分析

設計該軟件需要對GPS的數據類型進行分析,GPS上電后,每隔一定的時間就會返回一定格式的數據,數據格式為:“$信息類型,x,x,x,x,x,x,x,x,x,x,x,x,x”。

每行開頭的字符都是‘$,接著是信息類型,后面是數據,以逗號分隔開。一行完整的數據如下:$GPRMC,080655.00,A,4546.40891,N,12639.65641,E,1.045,328.42,170809,,,A*60。

3.1.2 代碼實現過程分析

(1)根據以上分析,代碼部分定義如下:

if (ch == 'C') /// 如果第五個字符是C,($GPRMC)

{ if (status == 'A') { } } /// 如果數據有效,則分析已經定位endprint

(2)對GPS數據進行解析,實現功能: 把GPS模塊的GPRMC信息解析為可識別的數據。

a.從GPS接收數據GPRMC中分離緯度信息

GPS->latitude_Degree = (int)GPS->latitude / 100; /// 分離緯度

lati_cent_tmp = (GPS->latitude - GPS->latitude_Degree * 100);

GPS->latitude_Cent = (int)lati_cent_tmp;

lati_second_tmp = (lati_cent_tmp - GPS->latitude_Cent) * 60;

GPS->latitude_Second = (int)lati_second_tmp;

b.同理可 從GPS接收數據GPRMC中分離經度信息

(3)將分析出來的GPS數據再次重組。為了讓服務器能識別接收到的GPS數據,我們把接收的數據進行重組并進行以下規定,使用"@"作為數據的分隔符。部分代碼如下:

Int_To_Str(GPS.latitude_Degree,info1); //緯度

strcat(position2,"car1001@"); //此處car1001是校車的編號

strcat(position2,info1);

strcat(position2,"@");

例如:$GPRMC,034300.00,A,3100.44647,N,12123.66838,E,0.201,,210314,,,D*70中分析出可識別的31@00@26@121@23@39@數據。

3.2 上位機實現

上位機可修改IP地址以及端口,具有靈活性,能防止接收上位機的默認端口在已被使用的情況下而導致端口被占用的錯誤發生。上位機在啟動后一般很少暫?;蜿P閉,因此設計了上位機能最小化到系統托盤,減少占用任務欄窗口。

(1)還原GPS數據。上位機使用C#編程語言。通過該語句把接收到的數據分離出,并存放到G字符串數組中。

string[] G = GPS.Split(new char[] { '@' });

(2)經過實踐發現,本GPS接收到的位置信息與實際的坐標存在誤差,經過大量數據的統計分析得出緯度和經度的修正值。

- 0.001655144 緯度修正值 + 0.005411744 經度修正值

上位機軟件設計如圖3-1所示。

3.3 后臺管理程序設計與實現

管理程序使用C#編程語言。管理程序登陸設立分等級登陸,不同的人員具備不同權限,保護數據的真實性和完整性。管理程序具備添加、刪除、修改學生信息,實時監看各孩子和校車的動態路線的眾多功能。

管理程序只有學校的相關部門人員使用,各級別的管理人員擁有不同的權限,同時操作的模塊界面也不一樣,例如某老師登陸后只能管理他們班的學生,這樣防止其學生的信息被多人修改而導致信息錯亂。學校可設立相關的部門來專門管理老師的信息,以及各類信息的管理。這種設計可有效防止信息的泄露,如果某環節出問題能方便追蹤責任人。管理程序有如下模塊:

3.3.1 快速選擇模塊

管理程序有快速選擇模塊,利用樹狀分支的形式,方便管理人員快速找到所需的模塊,如圖3-2所示。

3.3.2 部門人員管理模塊

管理者的注冊頁面如圖3-3所示,該模塊是用來管理具備管理權限的人員的注冊、注銷、刪除和修改。不同等級管理員對孩子的管理范圍也不一樣,一共設立了2個等級,普通管理員和普通用戶。

3.3.3 查找功能的多模塊性

使用同一個查找模塊能對不同的界面進行檢索,既方便管理人員的使用,又減少了代碼量。其查找界面如圖3-4所示。

3.3.4 注冊學生的模塊

注冊的學生,在所有必填的信息不空情況下才能注冊,保證信息的完整性和必要性。學生擁有2個可選的監護人的信息。2個監護人都能登陸安卓的客戶端來看自己的孩子的信息。

3.3.5 修改信息模塊

學生剛注冊時提供了些基本的信息,而后還有其它的信息需要修改,本模塊能增加或修改其它信息,讓信息更加完善。

3.3.6 添加和查看孩子的事件

該模塊能夠添加孩子的事件,該事件模塊能夠記錄孩子的情況和孩子的生活動向,及時地讓家長了解孩子的新事件。查看事件如圖3-5所示。

3.3.7查看校車的狀態

該模塊反映出校車當前的位置和狀態,狀態是否在線,”1”表示校車在工作期間,”0”表示校車處于未工作期間。校車的0與1狀態如圖3-6、3-7所示。

3.3.8 查看校車的具體位置。

該模塊反映出校車所在的具體位置信息,可以供管理員以及老師查看,并能夠實時的跟蹤校車的位置,顯示具體的校車線路,并顯示在百度地圖上。

3.4 基于安卓系統的客戶端設計與實現

安卓客戶端采用java編程,做了一定的界面美化處理,并在服務器端采用服務器處理程序,更加節省了軟件客戶端的流量。程序主要由登陸界面、學生信息、位置查看、事件查看、設置頁面構成,登陸之后可以直觀地看到孩子的個人信息以及在校的事件信息,更加方便了家長對于孩子的信息的管理和查看。

基于安卓的幼兒園監控管理系統的軟件客戶端主要為家長服務,家長登陸到客戶端,可以查看到孩子的基本信息和擴展信息以及GPS在線狀態,同時也能查看到孩子在幼兒園所發生的事件。軟件主要采用的是json解析方式,listview顯示方式,以及擴展列表顯示方式,增加了軟件的可用性并提高了軟件的穩定性。同時將界面的按鈕做了小小的處理,增加了界面的美感。endprint

3.4.1 學生信息模塊

方便家長查看學生的信息,登陸之后可以查看到基本信息和擴展信息的選項卡,點擊基本信息和擴展信息可以查看全部的信息,該信息為最初注冊時所填的信息。其界面效果圖如圖3-8、圖3-9所示。代碼實現片段:

list.add(new BasicNameValuePair("action", "getbtn"));

list.add(new BasicNameValuePair("Username", userString));

String result= NetUtils.postRequest(url, list);

Customer[] cusarray= JSONHelper.parseArray(result, Customer.class);// 利用JSONHelper類的parseArray方法獲得服務器傳遞過來的數據解析成數組值,再對數組的數據進行分類。

3.4.2 位置查看

位置查看模塊主要由百度地圖API提供接口,JSON的數據解析功能構成,將GPS傳遞至數據庫的數據信息,傳遞至手機端,由手機端的java虛擬機通過百度地圖API的請求反地理地址編碼,將經緯度轉換為標準的街道地址,并顯示在手機界面上供家長查看,如果不在線將顯示不在線。其結果如圖3-10所示。代碼實現片段:

mBaiduMap.addOverlay(new MarkerOptions().position(result.getLocation()) .icon(BitmapDescriptorFactory.fromResource(R.drawable.icon_marka)));

mBaiduMap.setMapStatus(MapStatusUpdateFactory.newLatLng(result.getLocation()));

addr.setText(result.getAddress());//調用接口的BaiduMap類的addOverlay方法實現標記,利用setMapStatus方法實現地圖的顯示,利用result的getAddress方法實現街道地址的獲取,并用setText方法顯示在手機軟件界面上。

3.4.3事件查看模塊

事件查看模塊如圖3-11所示。主要由ArrayList列表顯示,為了能夠讓家長更加直觀地看到孩子在學校所發生的事件,其標簽包括了時間、地點與事件三部分。該模塊也是運用了JSON數據解析的方法,通過JSON的數據格式:{name:minijoy,password:minijoy} 傳遞到手機端,手機解析并賦值給TextView。同時利用手機屏幕像素獲取類WindowManager獲取手機的高和寬,以使得軟件適應于各種尺寸的手機。代碼實現片段:

SimpleAdapter adapter = new SimpleAdapter(this,getData(),R.layout.incindent,

new String[]{"title","info","img"},

new int[]{R.id.time,R.id.didian,R.id.inc});

listview.setAdapter(adapter);// 利用RelativeLayout類進行編碼布局,形成簡單的列表顯示于界面

RelativeLayout layoutRight=(Relative Layout) inflater.inflate(R.layout.button, null);// 利用listview的setAdapter方法設置列表,將列表放在容器中,顯示出來。

4 總結

基于C#、asp.net、IIS、Java等軟件技術,單片機、GPS、GPRS等硬件技術的基于安卓的幼兒園監控系統可以幫助家長對孩子動態而又靈活的位置信息以及幼兒園所發生的各種事件了如指掌。

通過與市場上的產品相比較,本產品在硬件方面:安裝方便,功能強大,集多種傳感器于一體。在軟件方面:系統功能穩定,消耗流量小,可進行實時定位,顯示真實的地理位置信息,便于家長查看。在技術方面:要求涉及的技術面廣,多種技術融為一體,界面設計較美觀。除此之外,系統本身具有一定優勢:第一,避免為每個孩子添加一套監控設備帶了的高成本;第二,防止小孩子容易丟失設備而帶來的信息泄露;第三,降低服務器因處理大量人員信息的壓力。

該系統功能強大,易于操作,安裝簡單,便于在實際的幼兒園中進行使用,推廣性較強,是真正意義上的實時位置監控系統。

參考文獻

[1]付軍偉,朱一群,周玲.基于GPS與GSM技術的幼兒園監控系統設計[J].科技探索,2014.

[2]林城.Android 2.3應用開發實戰[M].機械工業出版社,2011.

[3]劉平.Android手機訪問服務器的一種數據交互方法[J].西安財經學院 網絡與現在教育技術中心,2010.

[4]韓超.Android經典應用程序開發[M].人力資源出版社,2011.

[5]Andrew Troelsen著.朱曄.譯.C#與.NET 4高級程序設計[M].人民郵電出版社,2011.

[6]馬偉 著.ASP.NET 4權威指南[M].機械工業出版社,2011.

[7](英)Robin Dewson著.董明.譯.SQL Server 2008基礎教程[M].人民郵電出版社,2009.

[8]徐人鳳.曾建華.SQL Server 2000數據庫及應用[M].高等教育出版社,2004.

作者單位

上海電機學院 上海市 200240endprint

主站蜘蛛池模板: 久精品色妇丰满人妻| 国产午夜人做人免费视频中文 | 色视频国产| 日本三区视频| 国产一级小视频| 亚洲综合精品第一页| 国产在线拍偷自揄观看视频网站| 狠狠综合久久久久综| 亚洲欧洲日产国码无码av喷潮| 国产成+人+综合+亚洲欧美| 久久99精品久久久久纯品| 99国产精品免费观看视频| 99久久国产综合精品2023| 欧美午夜久久| 中文字幕久久亚洲一区| 国产一级二级在线观看| 亚洲人网站| 伊人久久大香线蕉aⅴ色| 天天做天天爱夜夜爽毛片毛片| 在线免费亚洲无码视频| 国产激情第一页| 国产精品欧美激情| 伊人久久精品亚洲午夜| 国产欧美日韩综合一区在线播放| 久久国产精品国产自线拍| 香蕉在线视频网站| 国产伦精品一区二区三区视频优播 | 一级黄色欧美| 毛片三级在线观看| 亚瑟天堂久久一区二区影院| 亚洲精品欧美日本中文字幕| 日韩色图区| 亚洲视频一区在线| 午夜免费视频网站| 日韩a级毛片| 国产原创第一页在线观看| 国产乱子伦视频在线播放| 亚洲人妖在线| 高清亚洲欧美在线看| 国产精品吹潮在线观看中文| 欧美一级视频免费| 国产尤物jk自慰制服喷水| 国产无码在线调教| 日韩国产高清无码| 在线视频亚洲欧美| 全午夜免费一级毛片| 国产在线精品香蕉麻豆| 色窝窝免费一区二区三区 | 在线免费a视频| 日本国产在线| 亚洲欧美h| 欧美精品二区| 精品久久人人爽人人玩人人妻| 国产精品视频猛进猛出| 人人澡人人爽欧美一区| 国产精品手机在线观看你懂的| 国产欧美一区二区三区视频在线观看| 久久久亚洲色| 伊人久久大线影院首页| www.91中文字幕| 久久国产精品77777| 国产精品原创不卡在线| 极品国产在线| 亚洲一区网站| 国产成人高清精品免费5388| 777午夜精品电影免费看| 成年人久久黄色网站| 亚洲欧美一级一级a| 国产精品视频免费网站| 日韩国产综合精选| 久久无码av三级| 精品视频一区二区三区在线播| 99成人在线观看| 久久久久久午夜精品| 欧美福利在线| 国产主播一区二区三区| 欧美日本在线观看| 国产成人在线无码免费视频| a毛片免费在线观看| 久草视频中文| 亚洲欧美综合精品久久成人网| 老司国产精品视频|