• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于OneNET的多模式遠(yuǎn)程控制開(kāi)關(guān)系統(tǒng)設(shè)計(jì)

    2022-02-22 13:34:04閆施錦劉靜波
    物聯(lián)網(wǎng)技術(shù) 2022年2期
    關(guān)鍵詞:數(shù)據(jù)流可視化遠(yuǎn)程

    閆施錦,陳 淼,劉靜波

    (南京工程學(xué)院 信息與通信工程學(xué)院,江蘇 南京 211167)

    0 引 言

    當(dāng)今時(shí)代,物聯(lián)網(wǎng)技術(shù)應(yīng)用有了很大的發(fā)展。網(wǎng)絡(luò)通信的發(fā)展和智能手機(jī)、平板等終端設(shè)備的普及以及更廣的WiFi信號(hào)覆蓋范圍,為智能設(shè)備的遠(yuǎn)程控制應(yīng)用提供了良好基礎(chǔ)。同時(shí),物聯(lián)網(wǎng)云平臺(tái)的推廣應(yīng)用也極大地促進(jìn)了各種遠(yuǎn)程控制的實(shí)現(xiàn),遠(yuǎn)程控制開(kāi)關(guān)系統(tǒng)在智能家居和其他工程控制中有較廣闊的應(yīng)用空間,在控制方式上一般為智能芯片控制(GSM模塊)或WiFi模塊遠(yuǎn)程控制。采用GSM短信控制方式時(shí),系統(tǒng)接收手機(jī)發(fā)送的短信,匹配短信內(nèi)容的關(guān)鍵字,對(duì)遠(yuǎn)程開(kāi)關(guān)進(jìn)行控制;采用WiFi遠(yuǎn)程控制得到了更廣泛的應(yīng)用,主要實(shí)現(xiàn)智能插座一路或多路開(kāi)關(guān)的通斷控制。本文設(shè)計(jì)一種以WiFi方式遠(yuǎn)程控制的開(kāi)關(guān)系統(tǒng),以多模式方式實(shí)現(xiàn)按鍵模式控制、定時(shí)模式控制、循環(huán)模式控制、溫控模式控制。相比傳統(tǒng)遠(yuǎn)程開(kāi)關(guān)單一的開(kāi)關(guān)控制方式,更加適用于不同的應(yīng)用場(chǎng)合。選擇中國(guó)移動(dòng)OneNET云平臺(tái)構(gòu)建手機(jī)端可視化用戶(hù)界面,可以方便地對(duì)開(kāi)關(guān)裝置實(shí)現(xiàn)遠(yuǎn)程控制。模式設(shè)定、參數(shù)設(shè)置均在手機(jī)端完成,并發(fā)送到開(kāi)關(guān)裝置,開(kāi)關(guān)裝置根據(jù)不同模式執(zhí)行不同的功能,根據(jù)設(shè)置的參數(shù)控制開(kāi)關(guān)的運(yùn)行狀態(tài)。

    1 系統(tǒng)組成與功能

    多模式遠(yuǎn)程開(kāi)關(guān)控制系統(tǒng)包括開(kāi)關(guān)裝置部分和OneNET云平臺(tái)構(gòu)建的遠(yuǎn)程訪(fǎng)問(wèn)控制部分。開(kāi)關(guān)裝置部分包括STM32F103RCT6單片機(jī)、WiFi模塊ESP8266、時(shí)鐘芯片DS3231、繼電器驅(qū)動(dòng)、溫度傳感器DS18B20等。系統(tǒng)組成如圖1所示。手機(jī)端采用OneNET云平臺(tái)提供各種控件,例如旋鈕、文本框、按鍵等,創(chuàng)建可視化用戶(hù)界面,通過(guò)調(diào)節(jié)控件參數(shù),設(shè)定模式選項(xiàng)以及各模式下的運(yùn)行參數(shù)。

    圖1 系統(tǒng)組成框圖

    基本原理:系統(tǒng)接入OneNET后,單片機(jī)讀取DS3231的時(shí)鐘數(shù)據(jù)作為系統(tǒng)定時(shí)模式或循環(huán)模式下的時(shí)間信息。讀取溫度傳感器的溫度測(cè)量數(shù)據(jù),當(dāng)系統(tǒng)處于溫控模式時(shí),與設(shè)定的溫度閾值進(jìn)行比較,從而控制開(kāi)關(guān)的運(yùn)作狀態(tài)。單片機(jī)通過(guò)ESP8266訪(fǎng)問(wèn)OneNET云平臺(tái),把開(kāi)關(guān)裝置的運(yùn)行時(shí)間和溫度測(cè)量值等數(shù)據(jù)發(fā)送到手機(jī)端。在云平臺(tái)創(chuàng)建手機(jī)端可視化用戶(hù)界面,實(shí)現(xiàn)開(kāi)關(guān)控制的4種模式切換。手機(jī)端通過(guò)發(fā)送指令隨時(shí)控制開(kāi)關(guān)裝置的運(yùn)作模式,使開(kāi)關(guān)裝置能夠按照預(yù)設(shè)功能對(duì)開(kāi)關(guān)進(jìn)行有效控制。

    手機(jī)端模式選擇設(shè)定,設(shè)置旋鈕0~3對(duì)應(yīng)表示4種模式:

    (1)模式0為按鍵模式,用戶(hù)在手機(jī)端操作按鍵控制開(kāi)關(guān)通斷;

    (2)模式1為定時(shí)模式,手機(jī)設(shè)置一組定時(shí)開(kāi)關(guān)時(shí)間,例如18:00開(kāi)、18:30關(guān),設(shè)置的參數(shù)發(fā)送到開(kāi)關(guān)裝置,當(dāng)系統(tǒng)運(yùn)行到相應(yīng)時(shí)間后,實(shí)現(xiàn)開(kāi)關(guān)的通斷;

    (3)模式2為循環(huán)模式,開(kāi)關(guān)裝置接收手機(jī)端設(shè)定的開(kāi)、關(guān)分鐘數(shù)值,循環(huán)實(shí)現(xiàn)當(dāng)前開(kāi)、關(guān)狀態(tài),例如開(kāi)5 min,關(guān)3 min的循環(huán)模式狀態(tài);

    (4)模式3為溫控模式,手機(jī)端設(shè)定溫度閾值并發(fā)送到開(kāi)關(guān)裝置,當(dāng)開(kāi)關(guān)裝置的溫度測(cè)量值大于閾值時(shí),開(kāi)關(guān)裝置處于接通狀態(tài),反之?dāng)嚅_(kāi)。

    開(kāi)關(guān)裝置配置有EPROM存儲(chǔ)芯片AT24C02,用以保存手機(jī)端下發(fā)指令所包含的各項(xiàng)參數(shù),包括定時(shí)時(shí)間、循環(huán)開(kāi)/關(guān)時(shí)間、溫度閾值等。開(kāi)關(guān)裝置接有320×240分辨率的TFT顯示屏,用以顯示各項(xiàng)參數(shù)和當(dāng)前模式。

    2 硬件電路設(shè)計(jì)

    圖2所示為開(kāi)關(guān)裝置的硬件電路。以STM32F103RCT6為核心,合理分配單片機(jī)的資源,把各模塊應(yīng)用于系統(tǒng)電路中。STM32F103RCT6是基于Cortex-M3架構(gòu)的高性能處理器,內(nèi)含串口、外中斷、DMA控制器、定時(shí)器等,可滿(mǎn)足系統(tǒng)的應(yīng)用需求。

    圖2 硬件電路設(shè)計(jì)

    ESP8266作為一款高集成度的WiFi模塊,可以獨(dú)立訪(fǎng)問(wèn)網(wǎng)絡(luò),也可以幫助其他主控芯片訪(fǎng)問(wèn)網(wǎng)絡(luò)。ESP8266提供一組串口,接單片機(jī)串口引腳PA2和PA3,訪(fǎng)問(wèn)OneNET云平臺(tái)。ESP8266配置為客戶(hù)端模式(STA),連接到路由器訪(fǎng)問(wèn)網(wǎng)絡(luò),單片機(jī)的PA12連接ESP8266的復(fù)位管腳,初始化ESP8266時(shí)用以復(fù)位模塊。

    單片機(jī)的PC10和PC11為IC總線(xiàn),PC10為SDA數(shù)據(jù)線(xiàn)、PC11為SCL時(shí)鐘線(xiàn)。IC總線(xiàn)接入時(shí)鐘芯片DS3231和EPROM存儲(chǔ)芯片AT24C02,接10 kΩ上拉電阻保證電平信號(hào)。單片機(jī)通過(guò)訪(fǎng)問(wèn)不同的器件地址讀取掛載于同一組總線(xiàn)上時(shí)鐘芯片和存儲(chǔ)芯片的數(shù)據(jù)。DS3231芯片器件地址為0xD0(寫(xiě))、0xD1(讀),圖2中AT24C02芯片器件地址為0xA0(寫(xiě))、0xA1(讀)。

    DS3231時(shí)鐘芯片是一款內(nèi)置溫補(bǔ)晶振的時(shí)鐘芯片,供電電壓為3.3 V,DS3231的INT/SQW引腳接入單片機(jī)的PC6,該引腳是1 Hz信號(hào)輸出端,需外接10 kΩ上拉電阻。初始化DS3231時(shí),配置其控制寄存器0EH為00H,則INT/SQW輸出1 Hz方波,該信號(hào)可作為外中斷信號(hào),接入單片機(jī)PC6,在中斷服務(wù)程序中完成處理讀取數(shù)據(jù)、讀取溫度、顯示數(shù)據(jù)等任務(wù),不占用主程序,提高了系統(tǒng)運(yùn)行效率。

    DS18B20是單總線(xiàn)數(shù)字溫度傳感器,連接于單片機(jī)的PA11。DS18B20具備體積小、精度高、測(cè)溫范圍廣等特點(diǎn),在-10~85 ℃測(cè)量范圍內(nèi),測(cè)溫精度為±0.5 ℃,采用T0-92封裝,廣泛應(yīng)用于溫度測(cè)量、溫度調(diào)節(jié)控制等場(chǎng)合。圖2中,DS18B20的3腳電源接入3.3 V電壓,2腳是DQ數(shù)據(jù)輸入/輸出端,通過(guò)10 kΩ上拉電阻接3.3 V電壓,與單片機(jī)之間以單總線(xiàn)方式進(jìn)行數(shù)據(jù)讀寫(xiě)。

    單片機(jī)的PA8是繼電器的驅(qū)動(dòng)信號(hào),PA8低電平時(shí)觸發(fā)繼電器動(dòng)作。本系統(tǒng)選用型號(hào)為SRD-05VDC-SL-C的繼電器,其觸點(diǎn)最大切換電壓為250 V AC,最大切換電流為15 A,線(xiàn)圈額定電壓為5 V DC。圖2中加入了三極管驅(qū)動(dòng)電路,起到了電平匹配轉(zhuǎn)換的作用,當(dāng)PA8為低電平時(shí),三極管9012、9013導(dǎo)通,5 V繼電器吸合;當(dāng)PA8為高電平時(shí),三極管9012、9013截止,繼電器斷開(kāi)。

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

    3.1 數(shù)據(jù)流分析

    開(kāi)關(guān)裝置與OneNET之間以MQTT協(xié)議方式傳輸數(shù)據(jù),具備支持雙向數(shù)據(jù)傳輸,實(shí)時(shí)性高,長(zhǎng)時(shí)間穩(wěn)定連接等優(yōu)點(diǎn)。在OneNET用戶(hù)登錄后,選擇多協(xié)議接入,在MQTT協(xié)議下創(chuàng)建“遠(yuǎn)程開(kāi)關(guān)”產(chǎn)品,添加設(shè)備后,獲取產(chǎn)品ID和設(shè)備ID,用戶(hù)設(shè)定鑒權(quán)信息,為訪(fǎng)問(wèn)OneNET做準(zhǔn)備。在多模式遠(yuǎn)程開(kāi)關(guān)系統(tǒng)應(yīng)用中,數(shù)據(jù)流的規(guī)劃分為以下兩大類(lèi):

    (1)上行數(shù)據(jù)流,即開(kāi)關(guān)裝置發(fā)送到OneNET云平臺(tái)的數(shù)據(jù)。主要是讀取的時(shí)鐘數(shù)據(jù),測(cè)量的溫度數(shù)據(jù)等。

    (2)下行數(shù)據(jù)流,即云平臺(tái)下發(fā)的指令,包括模式控制、定時(shí)時(shí)間設(shè)定、循環(huán)模式下的開(kāi)關(guān)時(shí)間設(shè)定和溫度閾值。

    這兩類(lèi)數(shù)據(jù)流在開(kāi)關(guān)裝置建立起與OneNET云平臺(tái)的連接后,數(shù)據(jù)流會(huì)在當(dāng)前設(shè)備下的數(shù)據(jù)流界面中展現(xiàn)。表1所列為本系統(tǒng)規(guī)劃的數(shù)據(jù)流信息,其中數(shù)組變量alarm用作存放不同數(shù)據(jù)流的變量數(shù)據(jù),數(shù)組變量time用于讀取DS3231時(shí)間數(shù)據(jù)。

    表1 數(shù)據(jù)流信息

    3.2 主程序設(shè)計(jì)

    系統(tǒng)上電后,首先對(duì)模塊進(jìn)行初始化處理,包括串口2初始化、ESP8266初始化、DS18B20初始化、顯示屏及外部中斷配置初始化。經(jīng)串口2發(fā)送指令給ESP8266,設(shè)置ESP8266為STA模式,等待確認(rèn)連接OneNET服務(wù)器,按照MQTT協(xié)議TYPE3格式對(duì)數(shù)據(jù)進(jìn)行打包封裝,每隔5 s發(fā)送數(shù)據(jù)至云平臺(tái)。同時(shí),系統(tǒng)隨時(shí)接收解析平臺(tái)發(fā)送的指令信息,執(zhí)行不同指令,包括模式選擇、溫度閾值設(shè)定、定時(shí)開(kāi)關(guān)時(shí)間設(shè)定,以及循環(huán)模式下的開(kāi)關(guān)時(shí)間設(shè)定。解析完成后賦給相關(guān)變量,保存到AT24C02中。主流程如圖3所示,可以看到,主流程中表示了多模式的執(zhí)行過(guò)程,系統(tǒng)根據(jù)不同模式執(zhí)行相應(yīng)的功能。開(kāi)關(guān)裝置讀取溫度數(shù)據(jù)和時(shí)間信息,顯示時(shí)間、參數(shù)等未放置于主流程中,而是采用STM32F103RCT6外中斷服務(wù)程序?qū)崿F(xiàn),每秒進(jìn)入一次外中斷,讀取數(shù)據(jù)、顯示信息,提高主程序的效率。

    圖3 系統(tǒng)主流程

    3.3 模式選擇執(zhí)行程序

    軟件設(shè)計(jì)時(shí)定義變量run_mode,開(kāi)關(guān)裝置接收到OneNET云平臺(tái)手機(jī)端發(fā)送的模式參數(shù),switch語(yǔ)句根據(jù)接收的變量數(shù)據(jù)run_mode執(zhí)行不同的控制方式。按鍵模式(run_mode=0),開(kāi)關(guān)裝置通過(guò)判斷是否接收到手機(jī)端的按鍵控制指令控制開(kāi)關(guān)狀態(tài);定時(shí)模式(run_mode=1),系統(tǒng)讀取實(shí)時(shí)時(shí)間,當(dāng)時(shí)間與設(shè)定的開(kāi)、關(guān)時(shí)間相等時(shí),分別控制運(yùn)行狀態(tài)為開(kāi)或關(guān);溫控模式(run_mode=3),測(cè)量溫度大于設(shè)定的閾值溫度,開(kāi)關(guān)裝置的繼電器吸合,反之?dāng)嚅_(kāi)。

    循環(huán)模式(run_mode=2)是循環(huán)執(zhí)行設(shè)定的開(kāi)、關(guān)時(shí)間數(shù)值,程序中alarm[4]、alarm[5]分別存放接收的循環(huán)開(kāi)分鐘和循環(huán)關(guān)分鐘數(shù)值,循環(huán)開(kāi)關(guān)執(zhí)行依次運(yùn)行。程序設(shè)計(jì)時(shí),定義flag變量為循環(huán)控制的參數(shù),循環(huán)開(kāi)狀態(tài)結(jié)束時(shí)flag=1,為轉(zhuǎn)入循環(huán)關(guān)運(yùn)行狀態(tài)準(zhǔn)備;反之,循環(huán)關(guān)狀態(tài)結(jié)束時(shí)flag=0,為轉(zhuǎn)入循環(huán)開(kāi)運(yùn)行狀態(tài)準(zhǔn)備。每個(gè)切換過(guò)程中,alarm[4]、alarm[5]的數(shù)值不能改變,分別轉(zhuǎn)存給int_on_temp和int_off_temp。程序中minute_flag==1表示1 min計(jì)時(shí)達(dá)到,程序中遞減開(kāi)或關(guān)int_on_temp和int_off_temp的數(shù)值,直到開(kāi)或關(guān)每個(gè)循環(huán)時(shí)間結(jié)束。minute_flag是指外中斷服務(wù)程序計(jì)時(shí),可以很方便地得到1 min的計(jì)時(shí)狀態(tài)。實(shí)際測(cè)試時(shí),系統(tǒng)按照給定的循環(huán)開(kāi)關(guān)時(shí)間運(yùn)行。循環(huán)模式運(yùn)行的具體程序如下所示:

    4 實(shí)際測(cè)試

    在完成軟硬件測(cè)試后,對(duì)系統(tǒng)進(jìn)行整體測(cè)試。當(dāng)裝置連接到OneNET平臺(tái)后,查看并確認(rèn)OneNET設(shè)備的在線(xiàn)狀態(tài)。OneNET平臺(tái)為用戶(hù)提供數(shù)據(jù)可視化應(yīng)用,用戶(hù)通過(guò)OneNET提供的可視化工具設(shè)計(jì)用戶(hù)操作界面。根據(jù)遠(yuǎn)程開(kāi)關(guān)系統(tǒng)功能,在OneNET創(chuàng)建的產(chǎn)品中找到應(yīng)用管理編輯功能,用戶(hù)可將旋鈕、開(kāi)關(guān)、文本框等控件拖拽至頁(yè)面。對(duì)每個(gè)控件的屬性和樣式進(jìn)行編輯,特別是對(duì)控件屬性中的數(shù)據(jù)流進(jìn)行配置,把控件數(shù)據(jù)流與程序設(shè)定的變量建立關(guān)聯(lián),才能操作手機(jī)端界面發(fā)送指令,參數(shù)才能正確傳輸給開(kāi)關(guān)裝置,同時(shí),將開(kāi)關(guān)裝置測(cè)量讀取的數(shù)據(jù)上傳到手機(jī)端。手機(jī)端可視化界面包括模式選擇旋鈕、一組定時(shí)開(kāi)和關(guān)時(shí)間設(shè)定旋鈕、一組循環(huán)開(kāi)關(guān)設(shè)定旋鈕、按鍵控制開(kāi)關(guān)、溫度閾值設(shè)置旋鈕,以及文本框顯示的時(shí)間和測(cè)量溫度數(shù)值。開(kāi)關(guān)裝置,包括LCD顯示時(shí)間、測(cè)量溫度以及接收的模式與各項(xiàng)參數(shù)。圖4和圖5表示處于循環(huán)模式(run_mode=2)測(cè)試狀態(tài)下,手機(jī)端應(yīng)用界面和開(kāi)關(guān)裝置實(shí)際運(yùn)行狀態(tài)。實(shí)際測(cè)試表明,4種模式運(yùn)行正常,手機(jī)端發(fā)送指令后開(kāi)關(guān)裝置響應(yīng)及時(shí),較好地實(shí)現(xiàn)了各項(xiàng)功能。

    圖4 手機(jī)端可視化界面

    圖5 開(kāi)關(guān)裝置實(shí)際運(yùn)行

    5 結(jié) 語(yǔ)

    將開(kāi)關(guān)裝置與OneNET云平臺(tái)的可視化應(yīng)用界面相結(jié)合,設(shè)計(jì)了多模式遠(yuǎn)程開(kāi)關(guān)系統(tǒng),開(kāi)關(guān)裝置和可視化應(yīng)用界面相互傳遞數(shù)據(jù)和接收指令,實(shí)現(xiàn)了4種模式下的遠(yuǎn)程開(kāi)關(guān)控制。數(shù)據(jù)傳輸和接收控制指令穩(wěn)定可靠,功能驗(yàn)證正常。系統(tǒng)實(shí)現(xiàn)了不同的時(shí)間控制方式,并且加入用傳感器方式控制的運(yùn)行模式,為進(jìn)一步應(yīng)用提供了拓展基礎(chǔ),可根據(jù)不同的應(yīng)用場(chǎng)合,選擇不同的傳感器,實(shí)現(xiàn)不同的模式控制??刂菩酒琒TM32擁有豐富的接口,軟件部分規(guī)劃相應(yīng)的數(shù)據(jù)流,在OneNET同步更新應(yīng)用界面,為進(jìn)一步由單路多模式擴(kuò)充多路多模式應(yīng)用奠定了良好的基礎(chǔ)。

    猜你喜歡
    數(shù)據(jù)流可視化遠(yuǎn)程
    讓人膽寒的“遠(yuǎn)程殺手”:彈道導(dǎo)彈
    軍事文摘(2022年20期)2023-01-10 07:18:38
    基于CiteSpace的足三里穴研究可視化分析
    遠(yuǎn)程工作狂綜合征
    基于Power BI的油田注水運(yùn)行動(dòng)態(tài)分析與可視化展示
    云南化工(2021年8期)2021-12-21 06:37:54
    基于CGAL和OpenGL的海底地形三維可視化
    汽車(chē)維修數(shù)據(jù)流基礎(chǔ)(下)
    “融評(píng)”:黨媒評(píng)論的可視化創(chuàng)新
    遠(yuǎn)程詐騙
    一種提高TCP與UDP數(shù)據(jù)流公平性的擁塞控制機(jī)制
    基于數(shù)據(jù)流聚類(lèi)的多目標(biāo)跟蹤算法
    无棣县| 新田县| 资中县| 霍林郭勒市| 兴安盟| 夏邑县| 县级市| 永春县| 永昌县| 商洛市| 灯塔市| 原阳县| 通榆县| 神木县| 微山县| 通山县| 芮城县| 漳平市| 巢湖市| 合川市| 龙游县| 沙坪坝区| 通山县| 建始县| 嵊泗县| 霞浦县| 洛阳市| 辽宁省| 阿瓦提县| 玉屏| 马关县| 化德县| 罗山县| 兰溪市| 肃宁县| 庆城县| 盐池县| 永清县| 塔河县| 潜江市| 上饶县|