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

        ?

        基于建筑智能化實(shí)訓(xùn)平臺(tái)和Android的環(huán)境監(jiān)測(cè)軟件設(shè)計(jì)①

        2024-02-26 04:15:00
        關(guān)鍵詞:實(shí)訓(xùn)數(shù)據(jù)庫(kù)設(shè)計(jì)

        劉 理

        (阜陽(yáng)職業(yè)技術(shù)學(xué)院城鄉(xiāng)建設(shè)學(xué)院,安徽 阜陽(yáng) 236031)

        0 引 言

        建筑智能化實(shí)訓(xùn)平臺(tái)是用于高職建筑類專業(yè)實(shí)驗(yàn)實(shí)訓(xùn)教學(xué)的成套設(shè)備,包括“綜合布線系統(tǒng)”、“門禁系統(tǒng)”、“消防系統(tǒng)”、“視頻監(jiān)控系統(tǒng)”和“照明系統(tǒng)”等多個(gè)子系統(tǒng)[1-2]。在不同的子系統(tǒng)中,包含了對(duì)采集溫度、濕度、煙霧濃度、光照強(qiáng)度等環(huán)境監(jiān)測(cè)數(shù)據(jù)的需求。實(shí)訓(xùn)平臺(tái)中已存在相應(yīng)無(wú)線傳感器節(jié)點(diǎn),可以實(shí)現(xiàn)對(duì)所需環(huán)境指標(biāo)的實(shí)時(shí)監(jiān)測(cè),采集數(shù)據(jù)通過(guò)無(wú)線網(wǎng)絡(luò)傳輸后,由電腦端的控制軟件完成數(shù)據(jù)顯示和管理。

        設(shè)計(jì)基于上述條件,開發(fā)應(yīng)用于Android系統(tǒng)的環(huán)境監(jiān)測(cè)軟件,結(jié)合WiFi模塊、ZigBee節(jié)點(diǎn)和網(wǎng)絡(luò)協(xié)調(diào)器等硬件,實(shí)現(xiàn)通過(guò)手機(jī)或平板上的APP遠(yuǎn)程實(shí)時(shí)監(jiān)測(cè)、管理采集信息和控制報(bào)警裝置的功能。

        1 系統(tǒng)設(shè)計(jì)方案

        建筑智能化實(shí)訓(xùn)平臺(tái)中的環(huán)境監(jiān)測(cè)系統(tǒng)硬件部分由傳感器(探測(cè)器)、報(bào)警器、網(wǎng)絡(luò)節(jié)點(diǎn)、網(wǎng)關(guān)和終端設(shè)備等組成。傳感器(探測(cè)器)包含了溫度探測(cè)器、煙霧探測(cè)器、濕度傳感器、光照強(qiáng)度傳感器等,用于采集相應(yīng)的環(huán)境數(shù)據(jù)。數(shù)據(jù)信息由網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)出,通過(guò)以網(wǎng)關(guān)為核心的ZigBee自組網(wǎng)絡(luò)進(jìn)行傳輸,并通過(guò)WiFi方式與客戶端(電腦或手機(jī))軟件連接實(shí)現(xiàn)監(jiān)測(cè)和控制[3]。

        設(shè)計(jì)根據(jù)硬件設(shè)備情況,結(jié)合傳感器、嵌入式、無(wú)線通信(Zigbee和WiFi)及數(shù)據(jù)庫(kù)等多項(xiàng)技術(shù),開發(fā)基于Android系統(tǒng)的應(yīng)用軟件,在手機(jī)或平板等移動(dòng)終端上實(shí)現(xiàn)對(duì)環(huán)境數(shù)據(jù)的采集、顯示、存儲(chǔ)、管理以及對(duì)報(bào)警器的控制,提高實(shí)訓(xùn)平臺(tái)環(huán)境監(jiān)測(cè)功能的實(shí)時(shí)性、便捷性、高效性和智能化。該系統(tǒng)整體架構(gòu)如圖1所示,主要分為環(huán)境采集模塊、網(wǎng)關(guān)模塊、服務(wù)器(數(shù)據(jù)庫(kù))模塊和用戶終端(Android軟件)模塊。

        2 硬件組成與分析

        2.1 環(huán)境采集模塊

        環(huán)境采集模塊用來(lái)采集各種環(huán)境數(shù)據(jù),由不同類型的傳感器、探測(cè)器與Zigbee網(wǎng)絡(luò)節(jié)點(diǎn)、電源模塊共同組成。其中,選擇CC2530為網(wǎng)絡(luò)節(jié)點(diǎn)的主控芯片,該芯片具有良好的兼容性和可擴(kuò)展性[4]。為每個(gè)傳感器對(duì)應(yīng)的網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)置唯一的IP地址,設(shè)置定時(shí)指令讓Zigbee網(wǎng)關(guān)自動(dòng)匯集各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)中傳感器所采集的數(shù)據(jù),并通過(guò)WiFi模塊將數(shù)據(jù)實(shí)時(shí)傳送到手機(jī)端,同時(shí)上傳至服務(wù)器的數(shù)據(jù)庫(kù)中。

        2.2 網(wǎng)關(guān)模塊

        該系統(tǒng)的網(wǎng)關(guān)模塊主要由兩部分組成,一是建立在CC2530芯片組基礎(chǔ)上構(gòu)成的ZigBee網(wǎng)絡(luò)協(xié)調(diào)器;二是WiFi模塊,采用ESP8266芯片組[5]。其中,ZigBee網(wǎng)絡(luò)協(xié)調(diào)器主要用于接收和處理各ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)的采集數(shù)據(jù),再由WiFi模塊將數(shù)據(jù)信息發(fā)送至手機(jī)端和數(shù)據(jù)庫(kù)。

        2.3 服務(wù)器(數(shù)據(jù)庫(kù))模塊

        該系統(tǒng)使用建筑智能化實(shí)訓(xùn)平臺(tái)配備的上位機(jī)電腦作為服務(wù)器,服務(wù)器主機(jī)內(nèi)裝載了控制軟件和數(shù)據(jù)庫(kù)[6]。其中,數(shù)據(jù)庫(kù)的內(nèi)容主要為系統(tǒng)采集的歷史環(huán)境數(shù)據(jù)信息,并通過(guò)MySQL軟件對(duì)這些數(shù)據(jù)進(jìn)行存放和管理。服務(wù)器主機(jī)硬件規(guī)格——主板:B460M芯片組,CPU:Intel 酷睿i5 10400,內(nèi)存:8 GB DDR4,硬盤:2 TB 7200轉(zhuǎn)機(jī)械硬盤,網(wǎng)卡:外置1300 M無(wú)線網(wǎng)卡。

        圖1 環(huán)境監(jiān)測(cè)系統(tǒng)整體架構(gòu)

        2.4 用戶終端(Android軟件)模塊

        用戶終端模塊選用搭載了Android系統(tǒng)的智能手機(jī)為測(cè)試對(duì)象。根據(jù)Android系統(tǒng)開源特性,對(duì)數(shù)據(jù)采集、處理和通信模塊的設(shè)計(jì)需求進(jìn)行分析后,決定使用Android studio軟件為應(yīng)用開發(fā)環(huán)境。測(cè)試手機(jī)的硬件規(guī)格——操作系統(tǒng):Android 11.0,CPU:驍龍865 八核2.9 GHz,內(nèi)存:8 GB LPDDR5,外存:128 GB UFS 3.0,網(wǎng)絡(luò):支持WiFi6和5G全網(wǎng)通。

        3 軟件設(shè)計(jì)

        3.1 整體設(shè)計(jì)

        根據(jù)需求分析,設(shè)計(jì)將軟件系統(tǒng)結(jié)構(gòu)劃分為交互層、中間層和數(shù)據(jù)層三層架構(gòu)。如圖2所示,交互層用于人機(jī)交互、中間層用于數(shù)據(jù)和控制命令傳輸、數(shù)據(jù)層用于數(shù)據(jù)存放和調(diào)用。在軟件(APP)中,用戶可操作界面上的相應(yīng)按鈕,實(shí)時(shí)查看環(huán)境數(shù)據(jù)、設(shè)備狀態(tài)、調(diào)取歷史數(shù)據(jù)和手動(dòng)開啟/關(guān)停報(bào)警器等,實(shí)現(xiàn)設(shè)計(jì)功能。設(shè)計(jì)選用的Android Studio作為開發(fā)環(huán)境,其配套有2個(gè)開發(fā)工具:JDK(Java Development Kit)、 SDK(Software Development Kit)。JDK使用Java語(yǔ)言編寫程序代碼;SDK是生成APP所需的編譯器。將開發(fā)環(huán)境配置完畢后,結(jié)合設(shè)計(jì)要求分別進(jìn)行各模塊的程序設(shè)計(jì)[7]。

        3.2 環(huán)境監(jiān)測(cè)顯示設(shè)計(jì)

        根據(jù)環(huán)境采集模塊硬件的主要作用和技術(shù)特點(diǎn),程序的設(shè)計(jì)應(yīng)能夠?qū)崿F(xiàn)將采集的數(shù)據(jù)信號(hào)以數(shù)值的形式顯示在手機(jī)界面上。由于系統(tǒng)中各傳感器采集現(xiàn)場(chǎng)物理量時(shí),數(shù)據(jù)將通過(guò)ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)中自帶的A/D轉(zhuǎn)換器后以數(shù)字量的形式輸出,在程序中設(shè)置從WiFi模塊中讀取實(shí)時(shí)數(shù)據(jù)的部分,并設(shè)計(jì)環(huán)境監(jiān)測(cè)顯示界面,將接收的信息直接顯示在對(duì)應(yīng)位置處。

        以讀取和顯示溫度信息為例,編寫代碼如下:

        public class TempCollector {

        public static void main(String[] args) {

        // 獲取WiFi連接信息

        WifiManager wifiMgr = (WifiManager)getSystemService(Context.WIFI_SERVICE);

        List scanResults = wifiMgr.getScanResults();

        // 遍歷掃描結(jié)果,獲取網(wǎng)絡(luò)節(jié)點(diǎn)溫度

        for (ScanResult scanResult : scanResults) {

        String ssid = scanResult.SSID;

        String bssid = scanResult.BSSID;

        int frequency = scanResult.frequency;

        int level = scanResult.level;

        int temperature = scanResult.temperature;

        // 顯示溫度

        System.out.println(" 溫度:" + temperature);

        }

        }

        }

        圖2 手機(jī)端軟件(APP)設(shè)計(jì)邏輯框圖

        3.3 數(shù)據(jù)庫(kù)調(diào)用設(shè)計(jì)

        為實(shí)現(xiàn)對(duì)歷史數(shù)據(jù)的存放和管理,還需要在APP中實(shí)現(xiàn)讀取服務(wù)器數(shù)據(jù)庫(kù)的功能。MySQL中存放的歷史數(shù)據(jù)已按照不同類型進(jìn)行存放,根據(jù)系統(tǒng)功能設(shè)計(jì)需求建立了關(guān)系型數(shù)據(jù)庫(kù),按類別劃分表格,包括溫度、濕度、煙霧濃度、光照強(qiáng)度等。按類別設(shè)置表格存放的優(yōu)勢(shì)在于,可以分別單獨(dú)寫入或讀取某一類型的數(shù)據(jù),數(shù)據(jù)間互不干擾。APP調(diào)取的歷史數(shù)據(jù)是通過(guò)本地?zé)o線網(wǎng)絡(luò)接入服務(wù)器數(shù)據(jù)庫(kù)查詢后顯示的。

        以從數(shù)據(jù)庫(kù)中讀取和顯示歷史溫度信息為例,編寫代碼部分內(nèi)容如下:

        public class MainActivity {

        public static void main(String[] args) {

        // 定義數(shù)據(jù)庫(kù)連接變量

        Connection conn = null;

        // 定義SQL語(yǔ)句

        String sql;

        // 定義結(jié)果集

        ResultSet rs;

        // 定義數(shù)據(jù)庫(kù)驅(qū)動(dòng)

        String driver = "com.mysql.jdbc.Driver";

        // 定義數(shù)據(jù)庫(kù)地址

        String url = "jdbc:mysql://localhost:3306/mydb";

        // 定義數(shù)據(jù)庫(kù)用戶名

        String user = "admin";

        // 定義數(shù)據(jù)庫(kù)密碼

        String password = "000000";

        try {

        // 加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)

        Class.forName(driver);

        // 連接數(shù)據(jù)庫(kù)

        conn = DriverManager.getConnection(url, user, password);

        // 定義SQL語(yǔ)句

        sql = "SELECT * FROM temperature";

        Statement stmt = conn.createStatement();

        rs = stmt.executeQuery(sql);

        // 遍歷結(jié)果集

        while (rs.next()) {

        // 獲取歷史溫度信息

        String historyTemp = rs.getString("history_temp");

        // 輸出歷史溫度信息

        System.out.println("歷史溫度信息:" + historyTemp);

        }

        conn.close();

        } catch (Exception e) {

        e.printStackTrace();

        }

        }

        }

        圖3 APP環(huán)境監(jiān)測(cè)界面

        3.4 報(bào)警器控制設(shè)計(jì)

        報(bào)警器有手動(dòng)控制和自動(dòng)控制兩種控制方式。其中,手動(dòng)控制指用戶可以通過(guò)手機(jī)App上的按鈕選擇開啟/關(guān)閉報(bào)警器;自動(dòng)控制則是通過(guò)設(shè)定溫度或煙霧濃度的閾值,觸發(fā)報(bào)警器自動(dòng)開啟,當(dāng)威脅消除時(shí)再自動(dòng)關(guān)閉。設(shè)計(jì)中的報(bào)警器直接連接在ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)中,因此在設(shè)計(jì)控制程序時(shí),手動(dòng)控制可以通過(guò)直接向其發(fā)送指令的形式完成,自動(dòng)控制則需要增加一個(gè)觸發(fā)條件。

        以自動(dòng)開啟報(bào)警器(實(shí)時(shí)溫度≥50 ℃)為例,編寫代碼如下:

        //定義報(bào)警器類

        public class Alarm {

        private boolean isOn;

        private int temperature;

        public Alarm(int temperature) {

        this.temperature = temperature;

        }

        //當(dāng)溫度大于等于50℃開啟

        public void checkTemperature() {

        if (temperature >= 50) {

        isOn = true;

        }

        }

        public boolean isOn() {

        return isOn;

        }

        }

        //定義ZigBee節(jié)點(diǎn)類

        public class ZigBeeNode {

        private Alarm alarm;

        public ZigBeeNode(Alarm alarm) {

        this.alarm = alarm;

        }

        //發(fā)出指令

        public void sendCommand() {

        alarm.checkTemperature();

        if (alarm.isOn()) {

        System.out.println("報(bào)警器已開啟");

        }

        }

        }

        //測(cè)試類

        public class Test {

        public static void main(String[] args) {

        Alarm alarm = new Alarm(50);

        ZigBeeNode zigBeeNode = new ZigBeeNode(alarm);

        zigBeeNode.sendCommand();

        }

        }

        4 功能測(cè)試

        將經(jīng)SDK編譯后生成的.apk文件安裝到測(cè)試手機(jī)中,連接本地WiFi后進(jìn)入登錄界面,輸入預(yù)設(shè)的用戶賬號(hào)和密碼,進(jìn)入控制界面,可選擇進(jìn)入“環(huán)境監(jiān)測(cè)”、“報(bào)警器控制”、“歷史查詢”和“設(shè)備狀態(tài)”四個(gè)選項(xiàng)。在環(huán)境監(jiān)測(cè)界面,可以查看到傳感器(探測(cè)器)采集反饋的溫度、濕度、煙霧濃度、光照強(qiáng)度等實(shí)時(shí)數(shù)據(jù)展現(xiàn),如圖3所示,實(shí)現(xiàn)了對(duì)建筑智能化實(shí)訓(xùn)平臺(tái)周圍環(huán)境的實(shí)時(shí)監(jiān)測(cè)。依次測(cè)試“報(bào)警器控制”、“歷史查詢”和“設(shè)備狀態(tài)”界面功能,均能實(shí)現(xiàn)設(shè)計(jì)需求,測(cè)試結(jié)果符合預(yù)期。

        5 結(jié) 語(yǔ)

        設(shè)計(jì)基于建筑智能化實(shí)訓(xùn)平臺(tái)環(huán)境監(jiān)測(cè)系統(tǒng)功能,結(jié)合傳感器、嵌入式、無(wú)線網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)等多種技術(shù)手段,開發(fā)了基于Android系統(tǒng)的手機(jī)端應(yīng)用軟件,實(shí)現(xiàn)了通過(guò)手機(jī)APP遠(yuǎn)程查看環(huán)境監(jiān)測(cè)實(shí)時(shí)數(shù)據(jù)、管理歷史數(shù)據(jù)和聯(lián)動(dòng)控制報(bào)警裝置的目標(biāo)。測(cè)試結(jié)果表明,已開發(fā)的軟件能夠有效滿足設(shè)計(jì)需求。今后將嘗試依據(jù)建筑智能化實(shí)訓(xùn)平臺(tái)其他子系統(tǒng)功能需求,在軟件中增加新的控制模塊,比如:增加“門禁系統(tǒng)”中的開/關(guān)門記錄等,進(jìn)一步增強(qiáng)手機(jī)端APP無(wú)線控制功能的覆蓋面和集成度,以提高全系統(tǒng)設(shè)備的易用性、高效性和先進(jìn)性。

        猜你喜歡
        實(shí)訓(xùn)數(shù)據(jù)庫(kù)設(shè)計(jì)
        基于CDIO理念的數(shù)控實(shí)訓(xùn)教學(xué)改革與實(shí)踐
        瞞天過(guò)?!律O(shè)計(jì)萌到家
        設(shè)計(jì)秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        電工電子實(shí)訓(xùn)教學(xué)改革與創(chuàng)新
        電子制作(2017年8期)2017-06-05 09:36:15
        有種設(shè)計(jì)叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        微課在數(shù)控實(shí)訓(xùn)課中的應(yīng)用探析
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        日韩人妻熟女中文字幕a美景之屋 国产suv精品一区二区四 | 国产福利一区二区三区在线观看 | 久久国产精品精品国产色婷婷| 欧美一级三级在线观看| 在线不卡中文字幕福利| 东北老熟女被弄的嗷嗷叫高潮| 日本高清视频wwww色| 中文字幕无线码中文字幕| 国产成人av综合色| 人妻有码av中文幕久久| 亚洲日韩国产欧美一区二区三区| 亚洲狠狠婷婷综合久久| 国产成人精品男人的天堂网站| 日本韩国亚洲三级在线| 欧美老妇多毛xxxxx极瑞视频| 欧美国产成人精品一区二区三区| 国产福利小视频91| 免费播放成人大片视频| 久久久精品一区aaa片| 国产尤物AV尤物在线看| 国产美女高潮流白浆免费观看| 丁香婷婷在线成人播放视频| 九一九色国产| 91情侣视频| 国产一区二区三区尤物| 超碰97人人射妻| 人妻无码中文字幕免费视频蜜桃| 亚洲av乱码国产精品色| 国产精品高潮呻吟av久久黄| 日日碰狠狠添天天爽无码| 国产成人综合久久久久久| 精品久久免费国产乱色也| 国产精品天干天干| 大学生被内谢粉嫩无套| 日日骚一区二区三区中文字幕| 19款日产奇骏车怎么样| 五月综合缴情婷婷六月| 久久这里只精品国产2| 一区二区精品天堂亚洲av| 亚洲av永久无码一区二区三区| 亚洲中文字幕第一页在线|