物联网IOT开发平台小结

首页 » 物联网 » 物联网IOT开发平台小结

ESP8266陆陆续续的玩了一年,借助Arduino库,硬件端的程序已可以实现快速开发,但手机端的控制UI仍难以实现,总结下最近了解的平台,主要包括Blynk、微信、openhab,分享总结下。

1、Blynk

Blynk是最早接触的,也是感觉和硬件端最贴近,同时易用性最好的平台,可惜从2016年3月份开始,Blynk手机端的程序开始进行能量点管理,要添加更多的控件,必须购买能量点。关于能量点,个人完全可以理解,维护这样一个跨平台和硬件的程序,确实需要经济支持。说说Blynk的优缺点:

  • 支持的硬件平台多,代码部署简单,而且函数调用接口也是统一的,简单的代码示例见下(pwm控制玩具小车的例子),硬件端只需要设置认证字符串,然后Blynk.begin和Blynk.run就可以运行了,用户不需要关心通信协议问题,上手太容易。
#include 
#include 
#include 
//auth
char auth[] = "******************";

int f_pin = 5;
int b_pin = 4;
void setup()
{
  analogWriteFreq(20000);
  analogWriteRange(1023);
  Serial.begin(115200);
  Serial.println("Begin to auth:");
 Blynk.begin(auth,"**********","**********",IPAddress(*********));
  Serial.print("Begin:");

}

BLYNK_WRITE(V1) {
  int x = param[0].asInt();
  int y = param[1].asInt();
  if(y400) {
    analogWrite(f_pin,(512-y)*2);
  } else if(y>650) {
    analogWrite(b_pin,(y-512)*2);
  } else {
    analogWrite(b_pin,0);
    analogWrite(f_pin,0);
  }
  Serial.print("x=");
  Serial.print(x);
  Serial.print("ty=");
  Serial.print(y);
  Serial.println(); 
}

void loop()
{
  Blynk.run();
}
  • 手机端控制界面做的很漂亮,傻瓜式操作,不需要繁琐的配置文件,所有的操作均看作对硬件的io口操作,复杂的操作可以通过虚拟端口实现,这个实现非常棒,大大简化了配置工作。

  • 通讯协议隐藏,用户不用操心通讯的问题,所有的工作由Blynk的库完成,服务器端可以自己部署。

  • 缺点就是官方送的enegry不够用。

  • 总结Blynk仍然是我认为最棒的iot应用,用户不用操心协议、UI等琐碎的事情,专注硬件端的实现就好了,它更多的适合嵌入式开发人员。

2、微信

微信我只申请了订阅号,功能非常有限,官方倒是有硬件平台,但一般用户没有权限开通。微信的优越点非常明显:

  • 用户粘性大,这是微信最大的优点,用户不需要再安装新的app,可以和好友共享信息。

  • 语音识别很赞,服务器端接口处理起来也不困难,用户对着手机说指令,就可以操作家里的家电,这个是其他平台不能比拟的。

  • UI设计没有,需要自己写web端页面,很困难,我只比照着weui写了个温湿度就再也不想碰了。

  • 从服务器到设备的协议需要自己实现,即使使用mosiqtto这样的中间件,也要做协议转换的工作,至少熟悉php、nodejs、asp或者jsp等语言。

  • 最大的缺点,订阅号没办法实现设备到移动终端的主动推送。

  • 硬件端的支持为0,还要在硬件端自己实现通讯协议。

  • 总结,微信对硬件的支持没有,但语音识别及统一的接口,给用户带来了方便,是个偏向于前端的工具。

3、openhab


这是最近接触的iot开源平台,官方提供了一整套的解决方案,从app到服务器端的程序,支持众多协议,甚至服务器端可以自己写脚本完成一些自动化功能,将硬件端的功能后移至服务器端实现。

  • 用户自定义sitemap,自行配置界面,而且完全免费,这个很赞;

  • 支持的协议众多,完全是做平台的概念,不管什么协议,都可以装进这个平台,官方心很大;

  • 这个平台可以在家中布置,树梅派或者beagle bone都可以,数据集中在自家管理,解决隐私顾虑,但对于中国内网用户来说,访问家中网关还是很困难的。

  • 硬件端的支持没有,需要自己实现。

  • 学习成本高,要完全入门,还是要花点时间的,而且配置全是文本配置,易用性较Blynk差,但扩展性就好太多了。

  • openhab更像是iot的智能网关,起到总线连接转换的作用。

总结,如果微信官方能开发iot平台,只需要解决协议、UI,一统天下应该不难,可惜微信的dna里没有嵌入式的血液,他们不会做这个工作。

Blynk是面向嵌入式开发者的,做的也最彻底,目前看引入厂商支持很难,希望能走的更远。

openhab是在用心做平台了,相信会有越来越多的个人玩家与厂商会借助这个平台。

国内的阿里系、yeelink等接触不多,感觉都是在玩大数据概念了。

本文章来源于互联网,如有侵权,请联系删除!原文地址:物联网IOT开发平台小结

相关推荐: TDengine 在蓝深远望电机物联网监测预警与预测性维护平台中的应用

作者:李凯 蓝深远望 小 T 导读:蓝深远望致力于服务政府及大型国有企事业单位的数字化转型,结合大数据、数字孪生、区块链、网络安全等核心技术,为政府运行、社会服务、城市管理、公共安全、基层治理等领域,提供智能场景应用、安全管理、数据运营与产品服务,赋能数字政府…