雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995

MicroPython动手做(26)——物联网之OneNET

1、物联网(Internet of Things,缩写:IoT)
是基于互联网、传统电信网等信息承载体,让所有能行使独立功能的普通物体实现互联互通的网络。其应用领域主要包括运输和物流、工业制造、健康医疗、智能环境(家庭、办公、工厂)等,具有十分广阔的市场前景。

物联网的概念最早是在1999年由Kevin Ashton在一次演讲中提出来的,当时他是一个RFID研究机构的执行主任,这家研究机构是在宝洁公司和吉列公司的赞助下成立的。而他本人也因此被称为物联网之父。随后麻省理工学院的Neil Gershenfeld教授出版了一本名为《When things Start to Think》的书。以这些为标志,正式揭开了物联网的序幕。

物联网的英文是Internet of Things,缩写为IoT。这里的“物”指的是我身边一切能与网络联通的物品。例如你带的手表、你骑的共享单车、马路上的汽车、家里的冰箱、路边的路灯、甚至是一棵树。只要一件物品能够与网络相连,它就都是物联网中的“物”。而所谓物联网,就是“物”与人,以及“物”与“物”之间,通过网络来传递和处理信息。

00 (1).jpg

最新评论

楼层直达:

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
物联网的基本特征从通信对象和过程来看,物与物、人与物之间的信息交互是物联网的核心。物联网的基本特征可概括为整体感知、可靠传输和智能处理 。整体感知—可以利用射频识别、二维码、智能传感器等感知设备感知获取物体的各类信息。可靠传输—通过对互联网、无线网络的融合,将物体的信息实时、准确地传送,以便信息交流、分享。




智能处理—使用各种智能技术,对感知和传送到的数据、信息进行分析处理,实现监测与控制的智能化。根据物联网的以上特征,结合信息科学的观点,围绕信息的流动过程,可以归纳出物联网处理信息的功能:

(1)获取信息的功能。主要是信息的感知、识别,信息的感知是指对事物属性状态及其变化方式的知觉和敏感;信息的识别指能把所感受到的事物状态用一定方式表示出来。

(2)传送信息的功能。主要是信息发送、传输、接收等环节,最后把获取的事物状态信息及其变化的方式从时间(或空间)上的一点传送到另一点的任务,这就是常说的通信过程。

(3)处理信息的功能。是指信息的加工过程,利用已有的信息或感知的信息产生新的信息,实际是制定决策的过程。

(4)施效信息的功能。指信息最终发挥效用的过程,有很多的表现形式,比较重要的是通过调节对象事物的状态及其变换方式,始终使对象处于预先设计的状态 。



00- (1).jpg



雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
2、OneNET平台
是由中国移动打造的PaaS物联网开放平台。平台能够帮助开发者轻松实现设备接入与设备连接,快速完成产品开发部署,为智能硬件、智能家居产品提供完善的物联网解决方案。OneNET平台作为连接和数据的中心,能适应各种传感网络和通信网络,将面向智能家居、可穿戴设备、车联网、移动健康、智能创客等多个领域开放。

中移OneNET,将数据传输协议、数据储存格式等中间层的东西标准化,形成一个统一、开源的设备云平台,标准化、简约化、集成化,减少企业负担的同时为下一阶段的大数据分析提供基础条件。

核心能力输出
OneNET作为设备连接和数据的中心,面向物联网产业上下游企业提供标准化接入和定制化开发,具体能力输出包含2个方面:

1. 硬件侧:平台适配各种网络环境、兼容国内外主流通信协议,定制化支撑私有通信协议,以及完备的SDK包,可支持各类传感器和智能硬件的快速接入和可控触发控制;还提供对智能硬件的网络状态、终端状态、流量情况、位置信息进行全面的管理和监控;

2. 软件侧:平台通过丰富的API、应用孵化器、轻应用行业模板支持各类智能硬件和行业应用的图形化展示、SaaS层软件开发,满足物联网领域数据存储、数据安全、大数据分析等平台级服务需求。

OneNET平台在提供设备连接服务和数据中心服务的基础上进行开放合作,面向智能硬件创客和创业型企业推出硬件社区服务(包括硬件集市、双创云等),以及数据展现、数据分析和应用生成服务;面向重点行业领域/大客户推出行业PaaS服务和提供行业应用定制化开发服务。

IoT PaaS基础能力:提供智能设备自助开发工具、后台技术支持服务、物联网专网、短彩信、位置定位、设备管理、消息分发、远程升级等基础服务

SaaS业务服务:提供第三方应用开发平台,快速实现不同业务需求,借助轻应用孵化器快速搭建Web和APP应用

IoT数据云:提供高扩展的数据库、实时数据处理、智能预测离线数据分析、数据可视化展示等多维度的业务运营服务

开发者社区:高频的开发者社区,汇聚着不同的知识源,集合更多的物联网爱好者,让项目与开发成果开始传播

0-.jpg

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
0-9.jpg
OneNET八大功能

专网专号:中国移动基于物联网特点打造的专业化网络通道,提供“云-管-端”一体化的智能管道和支撑系统,支持工业级、车规级的专网卡和通信模组;

海量连接:基于多类型标准协议和API开发满足海量设备的高并发快速接入;

在线监控:实现终端设备的监控管理、在线调试、实时控制功能;

数据存储:基于分布式云存储、消息对象结构、丰富的数据调用接口实现数据高并发读、写库操作,有效保障数据的安全;

消息分发:将采集的各类数据通过消息转发、短彩信推送、APP信息推送方式快速告知业务平台、用户手机、APP客户端,建立双向通信的有效通道;

能力输出:汇聚中国移动短彩信、位置服务、视频服务、公有云等核心能力,提供标准API接口,缩短终端与应用的开发周期;

事件告警:打造事件触发引擎,用户可以基于引擎快速实现应用逻辑编排;

数据分析:基于Hadoop等提供统一的数据管理与分析能力。




OneNET应用领域

OneNET物联网专网已经应用于环境监控、远程抄表、智慧农业、智能家电、智能硬件、节能减排、车联网、工业控制、物流跟踪等多种商业领域。 物联网开放平台OneNET通过打造接入平台、能力平台、大数据平台能力满足物联网领域设备连接、协议适配、数据存储、数据安全、大数据分析等平台级服务需求。


0-0.jpg


广告

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
3、注册oneNET平台账号:

打开 https://open.iot.10086.cn/

根据个人情况选择个人注册或者企业注册

01.jpg

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
注册并登陆成功之后,进入NB-loT物联网套件

03 (1).jpg

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
广告

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
4、OneNET平台控制远程RGB灯

服务器地址不用修改,按照上述查看设备ID、产品ID、产品APIKey的方式找到这三项,并将其粘贴到对应程序位置。

当OneNET收到特定消息“开灯”时,3个LED灯显示红色;当OneNET收到特定消息 “关灯”时,3个LED灯显示熄灭。

  1. #MicroPython动手做(26)——物联网之OneNET
  2. #OneNET平台控制远程RGB灯

  3. from mpython import *
  4. import network
  5. from umqtt.simple import MQTTClient
  6. from machine import Timer
  7. import machine
  8. import ubinascii
  9. import time

  10. my_wifi = wifi()

  11. my_wifi.connectWiFi("zh", "zy1567")

  12. def OneNET_recv(_msg):pass
  13. _OneNET_msg_list = []
  14. def OneNET_callback(_topic, _msg):
  15.     global _OneNET_msg_list
  16.     try: _msg = _msg.decode('utf-8', 'ignore')
  17.     except: print(_msg);return
  18.     OneNET_recv(_msg)
  19.     if _msg in _OneNET_msg_list:
  20.         eval('OneNET_recv_' + bytes.decode(ubinascii.hexlify(_msg)) + '()')

  21. tim14 = Timer(14)

  22. _iot_count = 0
  23. def timer14_tick(_):
  24.     global _iot, _iot_count
  25.     _iot_count = _iot_count + 1
  26.     if _iot_count == 1000: _iot.ping(); _iot_count = 0
  27.     try: _iot.check_msg()
  28.     except: machine.reset()

  29. _iot = None
  30. def OneNET_setup():
  31.     global _iot
  32.     _iot = MQTTClient("192156", "183.230.40.39", 6002, "350146", "ZoSC5kM1oKqM7P6oCvbsaNOkDhg=", keepalive=300)
  33.     _iot.set_callback(OneNET_callback)
  34.     if 1 == _iot.connect(): print('Successfully connected to MQTT server.')
  35.     tim14.init(period=200, mode=Timer.PERIODIC, callback=timer14_tick)

  36. _OneNET_msg_list.append('开灯')
  37. def OneNET_recv_e5bc80e781af():
  38.     rgb.fill((int(204), int(0), int(0)))
  39.     rgb.write()
  40.     time.sleep_ms(1)

  41. _OneNET_msg_list.append('关灯')
  42. def OneNET_recv_e585b3e781af():
  43.     rgb.fill( (0, 0, 0) )
  44.     rgb.write()
  45.     time.sleep_ms(1)


  46. OneNET_setup()




雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
烧入程序之后,不知哪里出错.......连不上平台




串口输出:




Traceback (most recent call last):                                                         

  File "main.py", line 54, in <module>                                                     

  File "main.py", line 38, in OneNET_setup                                                

  File "umqtt/simple.py", line 99, in connect                                             

MQTTException: 4                                                                           

MicroPython v2.0.1-18-gbe8fbdd-dirty on 2020-04-24; mpython with ESP32  




屏显



07.jpg



雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
返回OneNET平台,在设备列表里面查看设备状态,设备依旧是“离线”,代表连接设备不成功。

08.jpg
广告

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
先添加产品,然后再添加设备,方可得到设备ID并显示在线,为连接成功。

13 (1).jpg

雕爷学编程

  • 42 主题
  • 1207 帖子
  • 2225 积分
  • 身份:LV5 资深技术员
  • 论坛新秀
  • E币:1995
12下一页
我要评论
29
132
广告
关闭 热点推荐上一条 /6 下一条
快速回复 返回列表