徐松亮ESP8266专项教学3-基于"机智云"和“ESP8266”开发属于自己的物联网产品实践流程(远程控制智能开关)

版权声明:本文为博主徐松亮的原创作品,未经允许不得转载,多谢支持!QQ:5387603

推荐点击此链接:欢迎进入徐松亮博客一站式导航搜索(随时更新)


目录

一,前言

本文项目

适合人群

起因:

“机智云”是什么?

为什么要用“机智云”?

“机智云”免费吗?

本文对开发者的要求

注意

二,准备工作

了解机制云官网:

电脑系统:

开发环境

开发板

三,从零开始的流程

申请“机智云”开发者账号:

创建产品

创建产品的数据节点

云端自动生成MCU源码

“安信可”的开发环境导入刚下载的源码

修改makefile文件

添加回调函数程序

修改打印函数程序

编译

下载

制作底板(或连接硬件)

手机下载产品调试APP

手机端申请机智云账号

使设备进入airlink模式

手机给设备配置WLAN信息

测试功能

四,总结


一,前言

  • 本文项目

    • 做个简单的属于自己的智能wifi开关。
  • 适合人群

    • 想要快速搭建属于自己的物联网产品的公司与产品开发工程师
    • 想一天就快速做出一个智能灯,智能开关,智能宠物窝等等。
  • 起因:

    • 近来物联网真正兴起与落地,作为研发型的产品经理,怎么可能不了解将设备接入物联网平台的知识呢!
    • 目前,大多数公司还是用自己公司的服务器,这样所有环节都需要自己的研发人员投入大量开发时间和成本。
    • 我必须亲自掌握,跑通这个数据流,“机智云”,让我相见恨晚啊。
    • 今天,我从不了解什么是机智云,到做成一个用手机可以通过wifi远程控制的智能灯,智能灯是用ESP8266实现的,读文档,做实验,各种注册配置设置开发调试,一共用了5-6个小时,真的效率很高啊,除了我有一定的开发基础的原因以外,更多的是“机智云”这个平台果然很机智,很好用。
  • “机智云”是什么?

  • 为什么要用“机智云”?

    • 作为一个物联网工程师(尤其是嵌入式工程师),你可以不依靠任何其他人,自己就设计出属于自己的物联网产品,
    • 它提供了整个物联网产品的开发环节的技术支持,真是牛逼,别的公司开发的是产品,“机智云”开发的是开发产品的工具。
    • 自动化完成平台端:设备管理,数据统计,数据存储等等
    • 自动化完成APP:提供方便的SDK(如果不二次开发,调试的时候有现成的DEMO很方便的使用)
    • 甚至你的嵌入式代码的90%也都由机智云给你自动生成了,还有量产的工具,相关的文档,你什么都没做,都由机智云完成了!
  • “机智云”免费吗?

    • 个人做实验肯定是免费的,量产产品视乎也是免费的。
    • 但是如果都免费的话,“机智云”怎么生存呢?应该会有什么增值服务吧,这些我目前还不确定。
  • 本文对开发者的要求

    • 有ESP8266(NodeMCU开发板)的开发经验
    • 有“安信可”开发环境的开发ESP8266的开发经验(或者基于linux开发ESP8266的开发经验),因为“机智云”自动生成的文件框架代码是C语言的,所以只会micropython或Ardiuno开发环境的开发人员,就不用看本文啦!
  • 注意

    • 本文对“机智云”的应用介绍只是入门级的,“机智云”真正的服务要比本文介绍的强大的多。

二,准备工作

  • 了解机制云官网:

  • 电脑系统:

    • Win10-64bit
  • 开发环境

  • 开发板

    • NodeMCU开发板(以ESP8266为核心芯片模块)
    • 自制了一个底板,没有的自己按要求用杜邦线接线一样。

三,从零开始的流程

  • 申请“机智云”开发者账号:

  • 创建产品

  • 创建产品的数据节点

    • 我们的实验以最简为原则,所以我就创建了一个InOut节点,即可以远程控制的一个开关量即可。
  • 云端自动生成MCU源码

  • “安信可”的开发环境导入刚下载的源码

    • File---import 弹出如下对话框:
    • 导入后如下文件:
  • 修改makefile文件

    • 直接导入的工程,编译是会出错的,要做如下更改:打开根目录的MakeFile文件,修改如下部分:
  • 添加回调函数程序

    • 有小伙伴会,不是自动生成代码吗?为什么还要写代码!就算给你请个做饭阿姨,你也要说明白你要吃啥吧!
    • 再次我们写2个函数,分别是数据节点变为0/1的时候要做什么。我这里是要让灯亮,我把灯接到了P0.4口。
    • 函数写完了,在哪里调用呢?在gizwits_product.c里,如下
  • 修改打印函数程序

    • 将打印信息输出到UART0,因为NodeMCU的USB就是UART0,并且把波特率改为115200.
  • 编译

    • 先Clean Project,再Build Project。等待编译完成。
  • 下载

    • 第一次先执行一次擦除,再进行烧写。
  • 制作底板(或连接硬件)

    • 根据程序,有2个按键需要连接(P0.0,P0.14),有1个输出需要连接到LED(P0.4)
    • 有这段程序得知,按键1接到了GPIO0上,按键2接到了GPIO14上。
    • 有main.c的程序得知按键如下功能:
      • 按键1短按:运行出厂测试代码
      • 按键1长按:模块复位
      • 按键2短按:AP模式
      • 按键2长按:airlink模式
    • 根据我们之前加的回调代码,我们知道程序把LED接到了GPIO4引脚上。
  • 手机下载产品调试APP

  • 手机端申请机智云账号

    • 这个账号是使用者的账号,跟上面的开发者账号是两回事。
  • 使设备进入airlink模式

    • 长按按键2,使设备进入airlink模式。
  • 手机给设备配置WLAN信息

    • 手机接入路由的WLAN
    • 点击我的设备---加号---一键配置
    • 因为我们用的是ESP8266,所以在下一个界面我们选择“乐鑫”
    • 等待配网结束,然后再界面上出现了设备:
  • 测试功能

    • 用手机操控设备的开关
    • 查看串口信息,开发板已经收到了手机的遥控信息。
    • 查看硬件:实际上我开发的灯已经点亮。

四,总结

  • 一天,即做完了“机智云”的整个数据链路实验,又整理完了这篇文档,让我觉得进步很多也很充实。
  • 后续关于机智云还有如下需要研究:
    • 设备的量产测试
    • 设备的在线升级(OTA)
    • APP的开发应用
    • 设备管理与数据管理
    • 与其他运服务器的借口
    • 。。。
  • 要学的东西真是太多了,加油!
  • 这些不仅仅是我的工作,而是我的对前沿科技产品的追求与爱好!
发布了28 篇原创文章 · 获赞 81 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/xslxhn/article/details/84031048