本文是由开发者分享基于机智云物联网平台的一款开发设计,通过ESP8266模块、NodeMCU开发板,实现普通排插到Wi-Fi智能控制排插的改造升级,以下为开发者的分享内容。我买了某品牌的LED灯 ,可以通过手机App控制开关状态和亮度,晚上睡觉前躺着就能关灯,大大方便了我等懒人。拆开一看,发现其核心部分是一片Wi-Fi模块 ,电路也不算复杂,我觉得可以自己DIY一个,就去网上淘了几个ESP8266模块和基于该模块的NodeMCU开发板,打发空闲时间。本人有一点51单片机和Keil基础,但对于Wi-Fi模块来说还是个 “小白”,仅简单地了解过NodeMCU固件,后来发现了机智云平台能够根据需求在云端生成代码,下载后简单地改一下就能用了,平台还提供手机端App 。用了七八天的空闲时间,我终于完成了Wi-Fi插座的制作。ESP8266芯片是乐鑫生产的,而我们买到的ESP-XX模块是安信可用乐鑫的模块再加上必要电路形成的一个单片机最小系统。机智云提供了云平台并可在云端生成代码,生成的代码是建立在安信可SDK的基础上,然后又添加了自己的一些控制协议。下面我们就以控制一个LED的亮灭为例,看看具体怎么操作吧!>>> 在线生成机智云代码在机智云官网注册一个账号,然后登录 ,进入开发者中心创建新产品。产品名称就叫LEDtest吧 ,选 择 “Wi-Fi/移动网络方案”,通信方式和数据传输方式保持默认即。
要实现控制LED的亮灭或继电器的吸合,需要用到一个变量,我们先在 gizwits_ ptoduct.h 中声明一下。因为只有开和关2个状态,用bool型就可以,这有点像KeilC51中的bit类型。
别忘了在gizwits_ product.c中进行初始化设置,这里设置LED是低电平点亮,上电初始化为高电平,默认不点亮。
云端生的代码默认定义了2个按键,而我们只需要1个就够了。NodeMCU开板的Flash按键接在 GPIO0 引脚。在定义按键时要注意 GPIO 的命名规则,比如GPIO1在程序里要写为U0TXD,这对初学者来说是要重点注意的地方。Inst Name、 GPIO 和 NodeMCU 的对照关系,如图所示。
智能插排的用途可以自由发挥,只要是能用开关控制的电器都可以接入,比如USB小灯、 普通风扇、电动车充电(可以将程序改为开启后定时关闭)等 。
全部0条评论
快来发表一下你的评论吧 !