热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

智能家居_智能家居填坑005开关复用

篇首语:本文由编程笔记#小编为大家整理,主要介绍了智能家居填坑005 开关复用相关的知识,希望对你有一定的参考价值。 背景 餐厅规划了一组主灯、两组灯带(一组3000k、一组6000k)、一组筒灯。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了智能家居填坑005 开关复用相关的知识,希望对你有一定的参考价值。


背景

餐厅规划了一组主灯、两组灯带(一组3000k、一组6000k)、一组筒灯。

在后期装修中餐厅主灯换成了风扇灯,筒灯换成了飞利浦智睿筒灯。但是在餐厅只设置了一个两位自复位开关。

常规情况下不能满足主灯、风扇、灯带、筒灯的开关。

技术图片

思路

为满足灯具的控制需求,需要对两位开关实现一些功能上的复用。

设:左边开关为 开关1,右边为 开关2



  1. 点击 开关1 :打开主灯

  2. 三秒内 再次 点击 开关1 :打开风扇低档

  3. 三秒内 再次 点击 开关1 :打开风扇中档

  4. 三秒内 再次 点击 开关1 :打开风扇高档

  5. 三秒内 再次 点击 开关1 :关闭风扇、主灯

  6. 1234 三秒后 点击 开关1 :关闭风扇、主灯

 



  1. 点击 开关2 :打开暖光灯带

  2. 三秒内 再次 点击 开关2 :打开白光灯带

  3. 三秒内 再次 点击 开关2 :打开所有灯带

  4. 三秒内 再次 点击 开关2 :关闭所有灯带

  5. 123 三秒后 点击 开关2 :关闭所有灯带

 



  1. 同时点击 开关1和开关2 :打开筒灯并切换到暖光模式

  2. 三秒内同时点击 开关1和开关2 :切换到白光模式

  3. 三秒内同时点击 开关1和开关2 :关闭筒灯

  4. 12三秒后同时点击 开关1和开关2 :关闭筒灯

实现

1.读取开关输入,判定输入状态

  返回1 :开关1按下

  返回2 :开关2按下

  返回3 :开关同时按下

技术图片

2.输出分流,确保三种状态不会相互影响。(可去除,但建议保留)

技术图片

3.单击与连击判定

技术图片

4.展示

https://v.youku.com/v_show/id_XNDU1ODQ3MTk3Mg==.html

技术图片


推荐阅读
  • PHP 过滤器详解
    本文深入探讨了 PHP 中的过滤器机制,包括常见的 $_SERVER 变量、filter_has_var() 函数、filter_id() 函数、filter_input() 函数及其数组形式、filter_list() 函数以及 filter_var() 和其数组形式。同时,详细介绍了各种过滤器的用途和用法。 ... [详细]
  • Python 学习是否需要先掌握 C 语言?
    Python 是一门非常适合编程入门的语言,很多人疑惑是否需要先学习 C 语言才能更好地掌握 Python。本文将详细探讨这个问题,并为初学者提供专业的建议。 ... [详细]
  • 本文详细探讨了HTML表单中GET和POST请求的区别,包括它们的工作原理、数据传输方式、安全性及适用场景。同时,通过实例展示了如何在Servlet中处理这两种请求。 ... [详细]
  • 最近观看了电影《含泪活着》,深受触动。这部电影不仅展现了生活的艰辛与无奈,更传递了坚韧不拔的精神力量。它提醒我们珍惜现实生活中的点滴美好,减少对虚拟世界的沉迷。 ... [详细]
  • 哈密顿回路问题旨在寻找一个简单回路,该回路包含图中的每个顶点。本文将介绍如何判断给定的路径是否构成哈密顿回路。 ... [详细]
  • CentOS系统安装与配置常见问题及解决方案
    本文详细介绍了在CentOS系统安装过程中遇到的常见问题及其解决方案,包括Vi编辑器的操作、图形界面的安装、网络连接故障排除等。通过本文,读者可以更好地理解和解决这些常见问题。 ... [详细]
  • 本文深入探讨了HTTP请求和响应对象的使用,详细介绍了如何通过响应对象向客户端发送数据、处理中文乱码问题以及常见的HTTP状态码。此外,还涵盖了文件下载、请求重定向、请求转发等高级功能。 ... [详细]
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
  • 本题探讨了在一个有向图中,如何根据特定规则将城市划分为若干个区域,使得每个区域内的城市之间能够相互到达,并且划分的区域数量最少。题目提供了时间限制和内存限制,要求在给定的城市和道路信息下,计算出最少需要划分的区域数量。 ... [详细]
  • 在现代Web应用中,当用户滚动到页面底部时,自动加载更多内容的功能变得越来越普遍。这种无刷新加载技术不仅提升了用户体验,还优化了页面性能。本文将探讨如何实现这一功能,并介绍一些实际应用案例。 ... [详细]
  • 解决Python中 'NoneType' 对象无属性 'find_all' 错误
    本文详细探讨了在Python编程中遇到的常见错误——'NoneType'对象没有属性'find_all',并深入分析其原因及解决方案。通过理解find_all函数的工作原理和常见用法,帮助读者避免类似问题。 ... [详细]
  • 本文探讨了在使用Selenium进行自动化测试时,由于webdriver对象实例化位置不同而导致浏览器闪退的问题,并提供了详细的代码示例和解决方案。 ... [详细]
  • 给定行数 numRows,生成帕斯卡三角形的前 numRows 行。例如,当 numRows 为 5 时,返回的结果应为:[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]。 ... [详细]
  • 本文介绍如何将自定义项目设置为Tomcat的默认访问项目,使得通过IP地址访问时直接展示该自定义项目。提供了三种配置方法:修改项目路径、调整配置文件以及使用WAR包部署。 ... [详细]
  • 本文介绍了一家大型电信公司在SOA/BPM基础设施项目中采用的版本控制和分支管理策略。自项目启动以来,团队通过定义详细的命名约定、测试流程和分支规则,确保了项目的顺利进行并成功投入生产。 ... [详细]
author-avatar
Utopia
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有