當前位置:首頁 > 通信技術 > 充電吧
如果你只能在本地控制一個智能設備,那么它并不能被稱之為智能。那有什么用呢?你需要的是遠程控制設備的功能。而這正是遠程配置發(fā)揮作用的地方。
遠程配置能夠讓開發(fā)人員和用戶觸發(fā)行動,進而在任何地點控制他們的設備。設備狀態(tài)解析通過網(wǎng)絡(在本案例中為PubNub)傳送的信號,并根據(jù)信號指令永久地改變裝置的狀態(tài)(如燈泡從關到開)。
A 遠程配置的消息傳遞層
在本教程中,我們將展示如何在[基于Atmel的]Arduino聯(lián)網(wǎng)設備上實現(xiàn)遠程配置。在開發(fā)的過程中,我們遇到了兩個問題。
1. 網(wǎng)設備的狀態(tài)(如在線/離線狀態(tài))
2. 連接到云的設備的狀態(tài)
通過使用Presence API,第一個問題迎刃而解,因此,我們將著重關注第二個問題。我們將采用存儲和回放的方法,存儲并檢索用于家庭自動化解決方案的聯(lián)網(wǎng)設備的狀態(tài)。如此,我們就能夠遠程控制智能設備,實時發(fā)送信號。
JSON對象就是一個典型的示例,如下所示:

{"狀態(tài)":[
{"通電":"真"},
{"咖啡量: 一半"},
{"溫度":""}
]}

遠程配置的整體流程
● 注冊一個免費的PubNub賬戶。如此便可獲得獨特的發(fā)表/訂閱鍵,用于激活PubNub。這些鍵位于開發(fā)人員控制臺。
● 利用Arduino通過PubNub物聯(lián)網(wǎng)網(wǎng)絡發(fā)布消息,控制智能設備。
● 通過web瀏覽器,訪問這些消息。
了解教程!
步驟一:連接PubNub
例如,控制冰箱的溫度。如下參數(shù)可存儲為設備的狀態(tài),如查看冰箱門的開啟狀態(tài)、溫度、功耗,甚至還有冰箱的容積。
在Arduino IDE上運行,并查看步驟二中關于連接PubNub至Arduino的教程,獲得更多詳情。
步驟二:在Arduino中創(chuàng)建JSON對象
為在Arduino中創(chuàng)建json對象,我們需要使用JSON.h庫。創(chuàng)建上文所述的JSON對象可參照如下步驟:

aJsonObject *msg = aJson.createObject();
aJson.addStringToObject(msg, "姓名", "Arduino");
aJson.addNumberToObject(msg, "外部溫度", 34);

步驟三:向設備發(fā)送信號
除此之外,只需再利用Arduino IDE發(fā)布消息即可。要做到這一點,可參照如下代碼:

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
char pubkey[] = "demo";
char subkey[] = "demo";
char channel[] = "設備狀態(tài)";

//setup
void setup()
{
Serial.begin(9600);
Serial.println("串口設置");

while (!Ethernet.begin(mac)) {
Serial.println("以太網(wǎng)設置錯誤");
delay(1000);
}
Serial.println("以太網(wǎng)設置");

PubNub.begin(pubkey, subkey);
Serial.println("PubNub 設置");
}
// establishing internet connection to the Arduino and publishing the state建立Arduino網(wǎng)絡連接并發(fā)布狀態(tài)
void loop()
{
Ethernet.maintain();
EthernetClient *client;
client = PubNub.publish(channel, msg);
if (!client) {
Serial.println("發(fā)布錯誤");
} else {
client->stop();
}
delay(5000);
}

另外,如果只能在web瀏覽器上查看設備狀態(tài)怎么辦?在瀏覽器控制臺中粘貼如下代碼,并查看狀態(tài)填寫。

// 發(fā)布和訂閱鍵初始化

var pubnub = PUBNUB.init({
publish_key: 'PUBLISH_KEY_HERE',
subscribe_key: 'SUBSCRIBE_KEY_HERE',
uuid: 'devices_state設備狀態(tài)'
});

// 通過歷史記錄檢索已經(jīng)發(fā)布到該渠道的消息。

pubnub.history({
channel: '歷史記錄_渠道',
callback: function(m){console.log(JSON.stringify(m))},
});

就是這樣!還有一點:PubNub并不限制你發(fā)布或通過歷史記錄檢索消息的數(shù)量。你可以利用多個Arduinos進行嘗試,并遠程查看其狀態(tài)。
遠程配置的用例數(shù)之不盡,從農(nóng)業(yè)到運輸和物流,再到家庭自動化。它使你能夠在地球上的任何地方完全控制你的智能設備,功能異常強大。
本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉