WIFi局域网开关控制实现-ESP8266 物联网

目的:
手机、被控继电器模块连接家里路由器,通过手机App控制继电器的开与断,可设置三种定时模式,即延时开、工作时间、关闭延时。可以控制单一继电器通断或者同时通断。例如,根据配置,可以控制热水器(双刀控制,主要怕漏电)按下按纽多久开始加热,加热多久。还可以躲在被窝里控制家里灯呀,电动窗帘呀。。一句话,懒。
为了考虑老人小孩使用,被控制模块保留机械按键,按一下,继电器开关发生翻转,关变开,开变关,并执行相应的运行时间延时。
目前手机APP可以同时连接四个模块同时控制。
本模块不需要连接外网,为了调试方便,继电器模块源代码默认为热点模式,你们可以自己改几句代码,可以变成连接WIFI模式,改成要连接的WIFI名和密码。或者改成你们想要的方式。。。自由发挥哈

相关源码开源,太简单的问题不要问,拒绝伸手党!不想回答。太难的问题也不要问,我怕回答不了。我不是搞软件开发的,我是搞硬件开发的。。在雅达电源搞开关电源开发的,,这些程序都是不忙的时候,不会的时候在CSDN等网上找的、改的。

我会偶尔上下CSDN。。。

开源不易,想打赏我的尽管来…

![在这里插入图片描述](https://img-blog.csdnimg.cn/ef8da5bca2674866895d727fa2f8e1e6.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6KaD6YOO,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center

下一步,我想弄个云服务器来联接这些模块和手机。
另外,你们有改善的版本,,发我一份:123182742@qq.com

实物:
继电器模块购买地址:https://item.taobao.com/item.htm?spm=a1z09.2.0.0.597f2e8dRJprBH&id=642884032543&_u=6k33lhf6ae1
!
备注:感觉这板子的220V转5V的模块质量不怎么样,,不放心的,建议可以换一块,或者拿手机充电头改装一下,然后放电开关盒里,K1,K2接外部开关。

注意你家开关盒高度是否能放进模块。

手机APP界面及使用:
安装好APP后,模块一定要更新程序。如附件。。。然后上电工作。。。
手机WIFI选择yq热点,密码:12345678,连接好,下一步:

程序图标

打开后:

点 设置

设置好设备名、IP地址、端口号后,点击 使能 下面的小方框,需要用哪个模块就是使能哪个。。
然后 点保存。。下次打开APP就自动连接了。。这部分数据存在手机里

从设备名下往下数,
第一个设备(热水器A),控制一个模块,双开双关 编号1
第二个设备 ,控制一个模块,双开双关 编号2
第三个设备 控制一个模块,两个独立开关 编号31,32
第四个设备 控制一个模块,两个独立开关 编号41,42

单选要设置的控制开关的延时,如果不设置,延时非常久。。。。
然后如果点 临时设置 模块不断电,会一直保留这次设置。如果断电,会使用之前的设置。
如果点 长久设置 模块断电,再上电。 会一直保留这次设置,这些数据保留在单片机flash里

设置好后 点返回。就可以控制开关了。

点绿色按纽,继电器会吸合,小绿灯会闪,如果设置有开延时,黑色灯闪,并开始倒计时。
点黑色按纽,继电器不吸合,小绿灯会变成黑色或者结束 开延时 ,并转变成 绿灯闪。

关键代码说明,分两部分
1. 手机APP
一定要手机与模块在同一路由器,并知道模块的IP地址
Android studio 4.2 版本。
启动—打开数据库—读取配置,如使能的状态、设备名、IP地址、端口号。(定时器参数存在单片机里,这里启动时候不读取),,,自动连接。。
初始化两个定时器,一个是刷新界面,每秒更新状态和模块的倒计时。一个每5秒检测模块连接状态,,如果断开,会自动重连

每个模块会分配一个接收线程,每发送一次数据,启动一个线程,发送完,就结速线程。
发送和接收都有checksum确认,本例中,前19个字节数据相加,取低8位数据存入最后一个字节,
接收时,会比较checksum是否正确,如果不正确,不执行任何动作。

具体内容,自己看代码吧,,

2. 单片机ESP8266部分
Arduino 版本: 1.8.16
设置模块为热点模式还是连接WIFi模式。(本例模块设置为热点 AP模式,可以改为WIFI模式)
读取flash中定时器参数值
设置定时器检测按键
是否有连接,如果有,每两秒更新当前状态给手机
接收到数据后,checksum确认,会比较checksum是否正确,如果不正确,不执行任何动作。
执行相应的命令,启动定时器,读写flash等。

//timer1.attach(1,timer1_task);
timer3.attach_ms(10,timer3_task);// key scan. period = 10mS. 按键检测。

// MyconnectWIFI(); //连接路由器模式
MyconnectWIFI_AP();//热点模式

server.begin(); //启动server
timer4.attach(2,timer4_task);//send out status. period = 2S 更新状态给手机。

我知道我写的比较渣,让你们看得辛苦了。
代码连接:
百度网盘:
链接:https://pan.baidu.com/s/1ex5c6sd-2HEE44p9yNYjiA
提取码:abcd

WIFi局域网开关控制实现-ESP8266 物联网 android studio arduino相关推荐

  1. WIFi 开关控制实现-ESP8266 物联网 android studio arduino QT多线程服务器

    WIFi 开关控制实现-ESP8266 物联网 android studio arduino QT多线程服务器 WIFI局域网/外网 开关控制实现-物联网ESP8266 android QT 简介:本 ...

  2. 通过WiFi进行环境监控的App(Android Studio)

    需求分析 本次需要做一个App,该App可以通过WiFi获取温湿度.烟雾浓度和一氧化碳的环境参数,并在界面上显示出来,能够评判空气质量,同时,在App内也可以实现这些环境参数的阈值更改功能,并向32单 ...

  3. 手机APP连接华为OceanConnect平台下发指令控制硬件(附Android Studio 代码工程和APK)

    1.接口 首先看到华为平台的接口 这些就是云平台上面的对接信息,然后现在用的HTTPS链接.安全秘钥是每个应用都有一个的. 2.开发文档 如果想要开发好APP,一定要看华为云平台上面的开发文档,这里直 ...

  4. android移动开发软件安装,android studio 开发的安卓软件怎么安装到手机上

    android studio 开发中如何让运用运行在真机中. 大体实现方式有3种: 分别是: 真机通过usb插到电脑上进行开发. android studio 上面编写程序进行编译apk版本,通过其他 ...

  5. Android 开发摆脱数据线 - Android studio 无线调试App

    Wifi 调试App已经不是什么新鲜的事情了,之前也看过不少,不是使用麻烦就是需要root权限,今个我给大家介绍一款好用的android studio 插件--ADB WIFI. 安装 setting ...

  6. Android Studio 安装步骤详细图解

    〇.前言 Android Studio 安装前需要先安装好JDK并配置好Path环境变量. 一.Android Studio 下载地址及版本说明 Android 开发者官网:https://devel ...

  7. android 11.0 wifi开关控制

    1.概述 在11.0的产品开发中,对于wifi的功能定制需求,有要求需要通过系统属性来控制wifi开关是否可以打开 来控制是否可以连接wifi,打开控制wifi的功能 2.wifi开关控制的核心代码 ...

  8. android 10.0 wifi开关控制

    1.概述 在10.0的系统产品开发中,产品需要对wifi模块进行管控,通过系统属性来控制wifi模块是否启用,所以需要在打开wifi的地方来通过系统属性来控制是否可以打开wifi 2.wifi开关控制 ...

  9. 51单片机+ESP8266+Android APP实现局域网内控制LED灯

    一.硬件设计 1.硬件选型 主控芯片:选用STC15W104.这款MCU比较小巧,控制3个LED灯的亮灭只需要3个IO即可,不足之处是没有串口,与ESP8266通信只能使用模拟串口,买了挺多的,先将就 ...

最新文章

  1. Sciences:用膳食纤维钓出15株缓解糖尿病的细菌!
  2. Markdown文章转化为富文本文章
  3. RPM打包原理、示例、详解及备查
  4. Github GUI 托管代码教程
  5. Oracle Service Bus简介
  6. 双系统(win8.1+ubuntu14.04)删除win下分区导致grub rescue解决方案
  7. Remix恢复已部署的合约
  8. 三维激光LiDAR点云数据处理,我帮您!
  9. python学习笔记30(利用turtle绘制最基本的几何图形)
  10. mac 怎么抓取 iphone 手机 日志
  11. 艾尔登法环绝配:iGame加推双风扇白色版RTX 3050
  12. 细菌觅食算法(Bacteria Foraging Algorithm,BFA)
  13. 华为鸿蒙系统老手机能用吗_华为使用自家“鸿蒙”系统,旧手机的安卓系统可以更新成那个系统吗?...
  14. 怎么更换当前电脑的ip(ip被网站封了无法访问怎么办)
  15. SPH实践之WCSPH两问题
  16. iphone绕ID激活并完美重启
  17. 我去,神操作!虚拟机Ubuntu18.04居然可以安装NVIDIA + 附带安装源码与命令
  18. 计算机类考研文献翻译有哪些,考研专业文献翻译如何准备
  19. 做一只跑过灰狼的兔子
  20. 软件测试需要的证书认证

热门文章

  1. Hdu 2546 饭卡
  2. Ubuntu18.04 安装 Lapack 库
  3. unrar e 解压命令报错:
  4. [毕业论文]Word版论文的常见格式问题整理(持续更新)
  5. 名悦集团在线盘点汽车品牌标志背后的那些故事
  6. 11月第3周国内域名服务商TOP10:DNSPod亚军
  7. iOS 判断日期是否是今天
  8. 零基础机器学习做游戏辅助第一课--神经网络与Keras介绍
  9. Android-浅谈真正断点续传
  10. ABB机器人多任务处理系统详解!