HelloX成功与中国移动物联网平台对接

经过HelloX项目组同仁的努力,尤其是Tywin(@飓风)的努力下,HelloX最新版本V1.78已成功与中国移动OneNET(open.iot.10086.cn)物联网平台完成对接。这标志着HelloX操作系统又向物联网领域的应用迈出了一大步。

OneNET平台是中国移动物联网公司推出的专门针对物联网设备提供服务的云平台,只要遵循OneNET的接入协议,任何终端都可以与OneNET通过Internet进行对接。目前,OneNET平台支持RestFul和EDP等接入方式,HelloX采用EDP方式接入OneNET。

与传统嵌入式操作系统接入方式不同的是,接入代码是作为一个独立应用程序而存在的,不是与操作系统内核编译在一起。这与通用操作系统类似,接入代码被编译为一个独立的应用程序(EXE文件),存储在外部存储介质上。如果希望接入云平台,只需要运行这个平台特定的程序即可。运行完毕后,会动态卸载掉。这种方式可确保平台代码与操作系统内核的独立性,同时便于接入更多的云平台。据不完全统计,当前已经商用的物联网云平台,就已经达到了160多个。如何有效整合这些不同的云平台,解决“紧耦合”的问题,是物联网领域的一个难题。HelloX操作系统通过动态加载和卸载的方式,试图解决这个问题。

下面是接入过程的一些抓图。首先,在运行HelloX的终端上(这里是虚拟机),运行平台接入应用程序(./run.bat是运行云平台接入应用的批处理文件):

这时候,云平台的客户端代码就会与OneNET平台建立网络连接,然后采用JSON方式,向云平台传递数据。上图中,我们每隔两秒钟,把HelloX的本地网卡的报文收发统计信息,上传到云平台。

通过OneNET的手机客户端,就可以查看设备上传的数据了。下面的图示,展示了HelloX接收到的数据报文字节数(每隔两秒钟统计一次,OneNET的iPhone客户端还需要加把劲啊):

可以看出,大部分情况下,每2秒钟接收的字节数,在400字节左右。但是也会偶尔有突发的情况,比如有时候竟然达到了11万左右的字节。这时候网络应该是有突发的广播流量。

感兴趣的朋友,可以实际体验一下。大致步骤如下:

1.      到github上下载最新的代码(github.com/hellox-project/HelloX_OS)。代码中的/bin目录下,有创建好的虚拟硬盘文件(vdisk.rar),解压后可直接引导VirtualBox虚拟机;

2.      创建并配置VirtualBox虚拟机,并完成网络设置(参照下列文章完成网络设置:http://blog.csdn.net/hellochina15/article/details/48013881)。然后用vdisk来引导虚拟机;

3.      引导完成之后,在字符命令行下,运行命令“./run.bat”(注意反斜杠前面也有一个点),即可加载OneNET平台代码,并开始向OneNET发送数据(只传送网络统计数据,不涉及任何个人信息);

4.      这时候,到OneNET平台上去看一下对应的设备情况,应该能够看到最新更新的数据。链接如下:http://open.iot.10086.cn/device/detail?pid=20423&device_id=151403

如果您希望尝试修改OneNET的接入代码,可以用VisualStudio(2010以上版本)打开/iotcloud/cmcc/edp下的工程,进行代码修改即可。

后续HelloX会与更多的云平台进行对接,逐渐丰富云平台层面的生态链。为了方便开发者和终端用户,在HelloX的源代码中,专门创建了一个iotcloud的目录,用于存放成功对接的云平台客户端代码。所有最新的代码,已正式发布到github上,欢迎感兴趣的朋友下载试验。

最后,欢迎有志于物联网操作系统开发和推广应用的朋友加入我们,让我们一起构筑物联网时代的数字神经。

QQ群:38467832,为了给群成员提供更好的交流环境,拒绝垃圾广告,加入时请说明加入目的。

HelloX操作系统与中国移动OneNET物联网平台成功完成对接的更多相关文章

  1. 玩转OneNET物联网平台之MQTT服务④ —— 远程控制LED(设备自注册)+ Android App控制

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  2. 玩转OneNET物联网平台之MQTT服务③ —— 远程控制LED(设备自注册)

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  3. 玩转OneNET物联网平台之HTTP服务① —— 模拟上传温度(TcpClient)

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  4. 玩转OneNET物联网平台之MQTT服务② —— 远程控制LED

    1.理论基础     参考博主线上博文: 玩转PubSubClient MQTT库 玩转OneNET物联网平台之简介 玩转OneNET物联网平台之MQTT服务① 2.远程控制LED 2.1 实验材料 ...

  5. 玩转OneNET物联网平台之MQTT服务① —— OneNetMqtt全方位调试

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  6. 玩转OneNET物联网平台之MQTT服务⑤ —— OneNet智能灯+MVP框架

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  7. 玩转OneNET物联网平台之HTTP服务③ —— OneNet智能灯 HTTP版本

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  8. 玩转OneNET物联网平台之MQTT服务⑦ —— 远程控制LED(数量无限制)+ Android App控制 优化第一版

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  9. 玩转OneNET物联网平台之简介

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

随机推荐

  1. 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。

    先写我的思路,没有用指针的做法.如果你用的是VC,把第六行去掉. #include<stdio.h> #include<stdlib.h> int main() { setvb ...

  2. 【WCF--初入江湖】01 WCF编程概述

    01 WCF编程概述 SOA的优点 1.服务独立于平台和工作环境.服务并不关心自己所处的环境,也不关心与之进行通信的服务所处的    环境. 2.服务相互隔离. 3.服务对协议.格式和传输中立. 4. ...

  3. 精通ASP.Net MVC 3 框架(第三版)学习笔记

    精通ASP.Net MVC 3 框架(第三版)学习笔记 代码才是王道. http://pan.baidu.com/s/1pJyL1cn

  4. uva 10994

    一开始想法太简单  错了好多遍 #include <cstdio> #include <cstdlib> #include <cmath> #include < ...

  5. NOI 国家集训队论文集

    鉴于大家都在找这些神牛的论文.我就转载了这篇论文合集 国家集训队论文分类 组合数学 计数与统计 2001 - 符文杰:<Pólya原理及其应用> 2003 - 许智磊:<浅谈补集转化 ...

  6. What is XMLHTTP? How to use security zones in Internet Explorer

    Types of Security Zones Internet Zone This zone contains Web sites that are not on your computer or ...

  7. Exceptionin thread "main" java.lang.UnsatisfiedLinkError:org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjav

    在eclipse上运行hadoop报错:Exceptionin thread "main" java.lang.UnsatisfiedLinkError:org.apache.ha ...

  8. java中的freopen

    在做ACM题目的时候,为节省输入测试数据的时间,我们通常将数据复制到一个文本文档里,然后从文档里读出,避免在控制台一个数据一个数据的输入. 之前一直用的C/C++,freopen用起来很方便,如下: ...

  9. CSS中nth-child和nth-of-type的简单使用

    ele:nth-child是查找父元素下的子元素,包括子元素类型非ele的,当子元素类型不是ele时,则不会进行任何操作: ele:nth-of-type是查找父元素下的子元素类型为ele的元素,其是 ...

  10. dubbo/dubbox部署资料收集

    dubbo/dubbox部署资料收集 最近由于项目需要要部署bubbox,dubbo,在找资料过程中用的的一些网址如下,后来由于取消没有实际应用,以备今后再用 http://dubbo.io/Admi ...