当前位置:首页 > 通信技术 > 充电吧
如果你只能在本地控制一个智能设备,那么它并不能被称之为智能。那有什么用呢?你需要的是远程控制设备的功能。而这正是远程配置发挥作用的地方。
远程配置能够让开发人员和用户触发行动,进而在任何地点控制他们的设备。设备状态解析通过网络(在本案例中为PubNub)传送的信号,并根据信号指令永久地改变装置的状态(如灯泡从关到开)。
A 远程配置的消息传递层
在本教程中,我们将展示如何在[基于Atmel的]Arduino联网设备上实现远程配置。在开发的过程中,我们遇到了两个问题。
1. 网设备的状态(如在线/离线状态)
2. 连接到云的设备的状态
通过使用Presence API,第一个问题迎刃而解,因此,我们将着重关注第二个问题。我们将采用存储和回放的方法,存储并检索用于家庭自动化解决方案的联网设备的状态。如此,我们就能够远程控制智能设备,实时发送信号。
JSON对象就是一个典型的示例,如下所示:

{"状态":[
{"通电":"真"},
{"咖啡量: 一半"},
{"温度":""}
]}

远程配置的整体流程
● 注册一个免费的PubNub账户。如此便可获得独特的发表/订阅键,用于激活PubNub。这些键位于开发人员控制台。
● 利用Arduino通过PubNub物联网网络发布消息,控制智能设备。
● 通过web浏览器,访问这些消息。
了解教程!
步骤一:连接PubNub
例如,控制冰箱的温度。如下参数可存储为设备的状态,如查看冰箱门的开启状态、温度、功耗,甚至还有冰箱的容积。
在Arduino IDE上运行,并查看步骤二中关于连接PubNub至Arduino的教程,获得更多详情。
步骤二:在Arduino中创建JSON对象
为在Arduino中创建json对象,我们需要使用JSON.h库。创建上文所述的JSON对象可参照如下步骤:

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

步骤三:向设备发送信号
除此之外,只需再利用Arduino IDE发布消息即可。要做到这一点,可参照如下代码:

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
char pubkey[] = "demo";
char subkey[] = "demo";
char channel[] = "设备状态";

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

while (!Ethernet.begin(mac)) {
Serial.println("以太网设置错误");
delay(1000);
}
Serial.println("以太网设置");

PubNub.begin(pubkey, subkey);
Serial.println("PubNub 设置");
}
// establishing internet connection to the Arduino and publishing the state建立Arduino网络连接并发布状态
void loop()
{
Ethernet.maintain();
EthernetClient *client;
client = PubNub.publish(channel, msg);
if (!client) {
Serial.println("发布错误");
} else {
client->stop();
}
delay(5000);
}

另外,如果只能在web浏览器上查看设备状态怎么办?在浏览器控制台中粘贴如下代码,并查看状态填写。

// 发布和订阅键初始化

var pubnub = PUBNUB.init({
publish_key: 'PUBLISH_KEY_HERE',
subscribe_key: 'SUBSCRIBE_KEY_HERE',
uuid: 'devices_state设备状态'
});

// 通过历史记录检索已经发布到该渠道的消息。

pubnub.history({
channel: '历史记录_渠道',
callback: function(m){console.log(JSON.stringify(m))},
});

就是这样!还有一点:PubNub并不限制你发布或通过历史记录检索消息的数量。你可以利用多个Arduinos进行尝试,并远程查看其状态。
远程配置的用例数之不尽,从农业到运输和物流,再到家庭自动化。它使你能够在地球上的任何地方完全控制你的智能设备,功能异常强大。
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭