基于arduino的灯光控制(easy版)

前述

本人在某沿海城市就读,主要学习控制专业。目前本科记录一下课设生活,之后研究生阶段会搞一些关于嵌入式方面的知识。因为保送了所以大四还有些空余时间到时候也会记录自己的毕设内容,其余时间跟着研究生导师看一些论文搞一些实际的应用,感觉目前学得很杂,但是还是想记录一下自己的科研生活吧。

写论坛的目的也是为了能让自己学得知识更好的表述出来,有利于自己或者其他同学的学习,有问题也可以指出,还是个小菜鸟。

提示

我自己已经把这个课设写了wiki所以论坛的内容我直接copy一下,格式不兼容我会更改,但如果有没有注意到的地方还请见谅。

这个课设很遗憾我没有找到合适的画图软件,因为VBB的模块太少只能画出板子和灯,其他的我还没有探索,见谅。

基于Arduino的照明控制系统

首先我在设计过程中先是实现感应功能,其功能实现是要通过红外感应的,因为没有买人体红外感应模块所以我们暂用红外避障模块来代替。

红外避障模块的感应范围较红外感应模块来的小很多,但实现内容差不多,可以近似来代替。

这是一个简单的红外感应程序,如果感应到障碍物他就会亮灯,如果没有感应到障碍物他就会关闭。

代码:

接下来我想实现一个简单的照明控制。

工况:可以手动控制也可以通过红外感应来实现灯亮灭的照明控制,如果人走开等会熄灭有时候会产生一些问题,比如人只是去拿一个东西或上厕所,所以我只实现感应亮灯不进行灭灯行为。
接线图我这边因为还没有下专门的Arduino的画图软件所以我这里口述一下:
所用配件:
三个引脚的红外避障模块
三个引脚的按钮
有杜邦线若干
电阻(分压电阻)
两个模块的Vcc都接在Arduino的+5v上,GND接在Arduino的GND上
红外模块的输出引脚接在1
开关的s引脚接在4
我们通过2口连接led小灯和一个电阻,最后接地。

代码如下:

loop中循环的主题主要分为两部分:第一个if主要是实现红外避障(我们这里实际上是用来红外感应的)第二个if是现实小灯电动控制的。
本次设计从3:30-6:40
就我而言难点是实现按钮状态的保持,因为我不能一直按住按钮实现灯亮,所以等进行保持功能。

放张我在图书馆拍的图

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年11月5日
下一篇 2022年11月5日

相关推荐