智慧家——光控窗帘

智慧家里,光控窗帘不是基本的吗?doge。

功能说明:使用电机+光线+8MML发光模块。当光线传感器检测变黑的时候,LED变亮,并关闭窗帘。(天黑,家里开灯,并关上窗帘。天亮,家里关灯,打开窗帘。可自行调试。)

注意:使用一个电机时候,窗帘应设计成卷帘形式。控制电机正反转即可(自己做一下窗帘结构吧。)


光控窗帘

所选设备

MR开发板
在这里插入图片描述

光敏电阻传感器

在这里插入图片描述

8MM发光LED模块

在这里插入图片描述

12V直流电机

在这里插入图片描述

接线说明

光敏电阻

开发板光敏电阻
5VVCC
GNDGND
A0DO

8MMLED

开发板8MMLED
5VVCC
GNDGND
A1OUT

12V直流电机

引脚说明
B10只有为高电平时,马达才会转
B8PWM控制A电机
B9PWM控制B电机
B12A0 #本次使用了A电机,可以自己按需调试。
B13A1
B14B0
B15B1
#main.py -- put your code here!

from pyb import Pin,delay,Timer
cs = Pin('C8',Pin.OUT_PP)    #C8设置为输出引脚输出高电平
cs(1)
ch1 =None  
ch2 =None

#A电机正反转 s---
p2 = Pin('B8')
tim2 = Timer(10, freq=120)
ch2 = tim2.channel(1, Timer.PWM, pin=p2)
A0 = Pin('B12',Pin.OUT_PP)
A1 = Pin('B13',Pin.OUT_PP)
def z(speed):  #正转
	ch2.pulse_width_percent(speed)
	A0(1)
	A1(0)
def f(speed):    #反转
	ch2.pulse_width_percent(speed)
	A0(0)
	A1(1)
	#------end
Do = Pin("A0",Pin.IN)      #光敏                           
p1 = Pin('A1')             # 8MM 线性变亮
tim1 = Timer(2, freq=100)
ch1 = tim1.channel(2, Timer.PWM, pin=p1)

while True:
    delay(500)
    #print(Do.value())   #串口输出
    if Do.value()==0:    #没光
        ch1.pulse_width_percent(0)  # 灯不亮
        f(30)            # 电机反转 这里应该判断状态 我没写,注意一下
    else:
        for i in range(100):
            ch1.pulse_width_percent(i)  #灯线性亮
            delay(50)
            z(10)                       # 电机正转(关窗帘)

在这里插入图片描述
可以看到,无光下,开灯啦,电机正转带动窗帘(忘了不是动图了QAQ。窗帘自己弄哦。ZTMR支持2个电机,和A电机用法一样,自己试试哦。)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咸鱼桨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值