手上有一块nodemcu,这货可以用lua编译脚本语言编程,也可以用arduinoIDE来编辑,用C语言来开发,甚至可以刷入micropython系统,用python语言开发。功能多而且就价格便宜,是DIY智能硬件的首选。

nodemcu

onenet平台是中移推出的一台智能硬件连接平台,可以支持http,mqtt,edp等等协议,由于nodemcu的主芯片是esp8266,我们就使用http协议来处理数据上传。话不多说,详细说明下学习过程。

1:注册onenet平台

注册吗?就是根据页面提示操作就好,验证邮箱,手机之后,就可以了,最后,我添加了一个nodemcu设备。

我的nodemcu设备

点击设备信息,查看设备相关设备数据。

设备信息

设备湿度

设备温度

2:模拟测试数据

当我们接触新的东西的时候,首先一点,学会利用官网工具,模拟上传数据,返回结果,得到success的时候,说明已经成功一半了。在设备管理当中,点击在线设备调试。

在线调试

在数据模拟器中,我们选择数据模拟器中选择上传数据流。

模拟上传数据

设备ID:自己设备的ID号,每个设备都有自己的ID。

APIKEY:设备的API钥匙,调用接口时候需要,每个设备的API-KEY也可以唯一。

数据流:任意自己定义的数据流,我这里取名test。

数据范围:我把温度的取值定义0-100℃。

间隔时间:每个五秒发送数据。

发送日志记录:error:succ代表数据成功上传。

这样,我们就可以在数据流展示区看看我们刚刚上传的数据。

模拟数据上传成功

3:POST请求数据

post请求数据是一项比较实用的技能,几乎所有的web开发在测试API的时候都需要用到。那我们用API调试工具来测试数据上传。

POST请求成功

ApiURL地址:自己需要调用的API地址。

请求方式:选择POST请求,至于用GET还是POST请求,这两者的区别,请读者自己考虑。

APIKey:自身设备的API钥匙,跟模拟数据上传的数据一样。

返回结果:error:succ代表成功。

很多人刚开始不熟悉的时候,都会出现各种各样错误,返回值不成功的情况,我举例说明:

APIkey不对,提示APIKey非法。

数据流不对,提示datestreams非法。

数据值不对,提示datapoints非法。

基本都是以上三者,请大家仔细阅读错误提示。

4:postman工具测试

当如果我们需要测试一个新的API的时候呢,有什么好的工具吗?我这里推荐谷歌的postman插件。

postman测试

点击右上角的code,可以完整的看出本次的请求。真的很方便,随时可以验证请求是否正确,返回status=200代表数据请求成功。

post请求数据包

5:nodemcu刷入espeasy系统

由于原来已经烧写过程序,刷入系统之前先擦除原来的程序,使用esptool工具来擦除系统默认程序。下载espeasy固件。下载地址:github.com/letscontrolit/ESPEasy/releases,目前已经更新到Release v2.0.0-dev12,我们下载到最新版本就可以。固件包里面就有工具。

esptool.exe就是删除工具

首先要确认一下esp8266所连接的端口号,因为需要以端口号作为参数的,比如我的端口号是COM4,我就可以运行以下命令来擦除flash

# esptool.py    --port COM4 erase_flash

擦除程序

再使用flashesp8266烧写固件车程序,选择ESPEasy_v2.0.0-dev12_dev_4096.bin文件。

烧写程序

烧写完成之后,就会出现ESP_Easy_0的的无线wifi,用手机或是ipad连接wifi并配置wifi密码。配置好之后,设备就可以工作上传数据了。

设备配置信息

192.168.1.196是自动分配的IP地址,如果大家不知道分配的IP地址是多少的话,可以使用IPScan工具,查看局域网内的各个设备的IP。

可以看到espressif的制造商

7:配置http客户端

我们需要把nodemcu配置成http客户端,链接到onenet平台上的服务器。

http服务配置

protocol:传输协议,选择genneric htttp协议,想通过http协议传输奥其他平台上的一可以使用这个。

locate Controller:选择主机名字还是IP地址。

Controller Hostname: onenet云服务地址。

Controller Port:http的默认端口基本上都是80。

HTTP Method:http请求方式,这里选择POST请求。

HTTP URL:http请求连接地址。

HTTP Header: 添加API-key的值。

HTTP Body:请求数据包。

配置http服务之后,还需要配置DHT11温湿度传感器的信息,在Devices选项里面选择需要的配置的传感器信息。

DHT11传感器配置

Device:选择传感器类型。

Name:自定义传感器名字。

Enable:传感器使能接入设备。

GPIO:由于DHT11的Data数据只需要一个引脚就可以上传温湿度了。

DHT Type:硬件的具体型号。

Value1:   temp就是上传的数据流名字,formula就是对这个获取值的计算方式,decimals就是默认小数点位数为2位。

Value2: 跟Value1的内容差不多。

点击提交(summit)之后,在关闭(closed)传感器配置信息,我们就可以看到上传的数据信息了。

温度27.00,湿度33.00,跟上面的设置一样。很明显温度就是27℃,湿度就是33%。

8:验证数据能不能上传以及上传的数据是否正确

打开串口调试工具或者是putty,查看串口输出信息。

已经读到传感器的数值了

再回到onenet平台上来,点击设备信息,查看数据流。

温度27℃

湿度33%

最后来张现场实物图:

nodemcu和DHT11传感器

nodemcu c语言开发,nodemcu连接到中移onenet平台相关推荐

  1. 公有云平台专题《中移云平台,NB-IoT模组对接中移OneNET平台》

    目录 1.中移OneNET平台介绍 2.中移OneNET平台注册 3.OneNET平台创建产品 4.NB模组对接OneNET平台 5.NB模组上报数据.接收下行数据 1.中移OneNET平台介绍 On ...

  2. 骑士智能科技M5310模块连接中移OneNet平台实现数据交互

    一.实验目的 使用骑士智能科技M5310模块加USB转串口,连接到中移OneNet平台上,并实现温湿度数据交互 二.准备工作 硬件:骑士智能科技M5310模块 + 移动NB卡.USB转串口.天线 软件 ...

  3. 物联网学习 第4讲 中移OneNET HTTP推送服务接入

    物联网开发 第4讲 中移OneNET HTTP推送服务接入 在使用OneNET平台时,如果我们自己开发应用,基本上会有获取设备的上下线信息以及设备上传的数据点的需求. 为了满足上述的需求,我们有以下两 ...

  4. ESP32运行MicroPython通过MQTT上报温湿度到中移OneNET物联网平台(附源码)

    前言:MQTT是当下物联网用的比较多的协议,本篇聊一聊用esp32通过MQTT连接到中移OneNET物联网平台. OneNET平台创建产品和设备 1.​创建产品:开发者中心->全部产品-> ...

  5. 连接中移Onenet云平台的C#上位机

    为什么要做这个上位机 物联网作为近些年快速发展的产物,产品越来越丰富,应用场景也越来越广泛,因此相关的体量也不断在壮大,很多公司根据自己的战略需求开始除了开发自己的物联网硬件产品,同时也慢慢在完善自己 ...

  6. Arduno + ESP8266模组运用中移OneNet物联网平台实现远程监控

    一.初识OneNet OneNET定位为PaaS服务,即在物联网应用和真实设备之间搭建高效.稳定.安全的应用平台:面向设备,适配多种网络环境和常见传输协议,提供各类硬件终端的快速接入方案和设备管理服务 ...

  7. nodemcu能不能用c语言开发,NodeMcu: 编译及运行esp-open-rtos系统

    NodeMcu除了可以使用自家的nodemcu-firmware - 基于eLua的固件,当然还可以使用基于esp-open-rtos系统的固件.个人还是喜欢使用C语言的esp-open-rtos系统 ...

  8. STM32+果云GA6-GPRS/GSM模块+MQTT+HTTP协议连接中移OneNet上传GPS数据定位

    一.环境介绍 MCU:  STM32F103C8T6 GSM模块: GA6--果云 开发软件: Keil5 完整源码下载:  https://download.csdn.net/download/xi ...

  9. c语言 开发交易系统,原创轻松编程(MT4平台智能交易系统图文教程)课件.pptx...

    原创轻松编程(MT4平台智能交易系统图文教程)课件 编程入门MT4平台智能交易系统图文教程本PPT采用Office2007编制开始之前请回答我的问题第一个问题 你真的下决心学习编程了吗?第二个问题 你 ...

最新文章

  1. 驾驶员行为监控系统:需要它来管理车队
  2. TSP问题——动态规划
  3. 博士生4篇高分论文参加答辩,却遭评委批评:你写的太多了
  4. 科大星云诗社动态20210216
  5. boost::hana::overload用法的测试程序
  6. Jsoup 简介书写
  7. 《SLAM十四讲》知识点梳理
  8. Linux中SDIO命令,Linux MMC/SD/SDIO体系结构
  9. Hibernate -- hibernate.cfg.xml 核心配置文件
  10. 第6章 基于锁的并发数据结构设计
  11. NFC:Arduino、Android与PhoneGap近场通信
  12. html svg 在线编辑器,用于矢量图形的SVG在线编辑器
  13. Python中pyserial库
  14. android图片花,Android中使用Canvas绘制南丁格尔玫瑰图(Nightingale rose diagram)
  15. 【渝粤教育】广东开放大学 中国文化与中国文学 形成性考核 (46)
  16. mysql ibd frm文件_mysql中frm和ibdata文件
  17. Dynamic , Static or Seperate Schema Design (Convert No-SQL to ORDBMS)
  18. 【数据去噪】SG-多项式平滑算法
  19. mysql right关键字_MYSQL 中的LEFT( RIGHT ) JOIN使用ON 与WHERE 筛选的差异
  20. python 四维数据怎么看性别_四维b超数据怎么看性别

热门文章

  1. JavaWeb学习:session
  2. Maven学习:依赖管理
  3. python中complex(10.99)是什么意思_代码 a = 10.99; print(complex(a)) 的执行结果是 _________ 。...
  4. 工作之余找到生活的意义
  5. Rust地图下载、Rust服务器地图下载教程、腐蚀地图下载攻略
  6. 富斯i6航模遥控器配apm(pix)飞控mission planner疑难杂症解决策略(上)
  7. PressLight: Learning Max Pressure Control to Coordinate(协调)Traffic Signals in Arterial Network(干线网络)
  8. 图像处理--OpenCV实现图像加噪与滤波
  9. NWPU-Crowd
  10. 【题解】ccf csp 201812-1 小明上学