基于web开发的物联网IOT 简单实例-远程控制led灯(一)

zmuliang 2019-02-14 04:48:57
历史背景
在物联网IOT越来越受到大家关注的当下,自己对其越感兴趣,于是就直接进行一个尝试,毕竟实践出真知;
市场上很多app+智能硬件的组合产品,但用户每要使用智能硬件都需要下载一个APP,才能够使用,自己觉得有点麻烦,难道不能直接打开一个网页就可以直接控制吗,不用下载控制app吗?所以想尝试使用web来控制智能硬件(主要是擅长web的开发,哈哈)

实践历史
一切从零开始,从微信的硬件开发平台,各种云平台开始,一点一点地了解了很多和智能硬件开发的一个大概思路。
第一步从自己不熟悉的硬件开始,从网上买了许多各种感应器,开发板,led灯等一大堆硬件,学习进行硬件烧录(这里掉落了无数的坑里面,但是还是自己一点一点的爬了出来),然后从摸索各种模块,wifi、蓝牙、温湿度模块,led模块,开发板,到使用arduino开发一些简单的硬件demo,蓝牙控制led灯,获取温度湿度,人体感应led灯。。。。。,过程艰辛,成就感满满。
第一个历程碑出现了,从一个朋友中了解到一个开发板nodemcu,自从头上出现了一片蓝天(之前的摸索实在艰辛),为什么这样说呢?对于一个新手,有现成的烧录程序,可以从网站上下载需要的功能包(固件),直接烧录到硬件当中,程序编写时直接调用里面的API就可以实现想要的功能

实现
第一个远程控制led灯的实例开始,具体实现:

准备:led灯,nodemcu(已经烧录了固件),手机,ESPlorer(编写lua语句软件,写进nodemcu中)

硬件端实现思路是:待硬件连上wifi(我是直接把wifi的账号密码写进硬件中),每隔一段时间,使用http中的get方法(获取远程服务器json数据,然后解析json数据),不停的访问服务器,获取led的状态,然后根据led的状态来控制灯亮还是灭(硬件端编程,使用lua语言编程,使用到的api:timer,http,cjson)

web端的实现思路是:编写一个html网页(使用到ajax+php),上面有一个控制led开关按钮,当用户点击开启按钮,状态值就会传给服务器端(服务器端可以写进数据库,但当时我的办法是写进一个txt文件,这样就不用频繁地访问读写数据库)



这样就可以实现了,哈哈

这个案例有一个缺陷,硬件要不停通过http来访问远程,浪费资源和降低效率,是不可取的,但是这已经实现了通过web来控制硬件,初衷已达成,爽!

以后第二篇会说明是如何实现不要浪费资源,提高效率(剧透一下:websocket?还是其他更好的??),如何实现拭目以待!!

在实现的过程中会不断地搜索各种资料和网址,收集了一些有用的资料,有兴趣的可以找我要,相互学习,可加qq:807107475,加好友时请备注:iot物联网学习,每天会查看一次

...全文
522 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

1,068

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧