Python实现智能小风扇和智能RGB灯
一.本次实验所需的设备和材料
Pico板、拓展版、8个RGB灯、小马达、风扇叶、光敏传感器、声音传感器、步进驱动模块、杜邦线、小型台灯。
二.实验现象
当声音传感器获取到声音,小风扇会自动开始旋转,再次收到声音就停止转动,如果光照超过一定的值,RGB灯就不会亮,当光敏传感器处于低光照时,RGB灯开始亮,以跑马灯的形式运转,不停切换颜色。
三.设备之间的连接
(1)将电机小风扇的接线端子连接到ULN2003驱动模块上的白色座子上,注意这里的接口并不是完全对应的,红色线接到最靠近电阻的那一侧(如上图所示),IN4引脚连接到扩展板上GP13,负极(-)引脚连接到扩展板上GND,正极(+)引脚连接到扩展板上的5V(一定要连到5V);
(2)将RGB模块如下图,通过杜邦线连接在PICO的GP17,其中GND连接GND,VCC连接VCC,RGB连接GP17;
(3)将光敏传感器如下图接线,模块的VCC连接VCC,OUT连接GP28,GND连接GND;
(4)将声音模块如下图接线,模块的VCC连接VCC,GND连接GND,OUT连接GP22;
(5)最后将USB数据线连接到Pico和电脑USB口。
四.代码的编写
from machine import Pin
from machine import Pin,PWM
from machine import ADC
import ws2812b
import random
import utimering_pin = 17
numpix = 8
strip = ws2812b.ws2812b(numpix,0,ring_pin)
strip.fill(0,0,0)
strip.show()sound = Pin(23,Pin.IN)
def sound_state():if sound.value() == 0:return Truereturn False
fan = PWM.(Pin(13))
fan.freq(1000)
def my_map(x,in_min,in_max,out_min,out_max):return int((x-in_min)*(out_max-out_min)/(in_max-in_min)+out_min)
def pwm_motor(speed):if speed>100 or speed <0:print('Please enter a limited speed value 0-100')returnpulse = my_map(speed,0,100,0,65535)fan.duty_u16(pulse)light = ADC(28)def get_value():return int(light.read_u16()*101/65536)while True:if sound_state() == True:print("已获取到声音")pwm_motor(90)utime.sleep(3)else:pwm_motor(10)value = get_value()if value>80:for i in range(numpix):strip.fill(0,0,0)r = random.randint(0,256)g = random.randint(0,256)b=random.randint(0,256)strip.set_pixel(i,r,g,b)strip.show()utime.sleep(.2)else:strip.fill(0,0,0)utime.sleep(.2)
**五.实验效果视频**
https://www.kuaishou.com/short-video/3x2ywhhvw6mbm4g?authorId=3x9tgj4hpuesfxk&streamSource=profile&area=profilexxnull
六.实验的结论
树莓派的pico功能强大,适合各种开发,特别是Python语言,要实现以上功能,多半都是用到传感器,通过传感器获取的值进行判断,
编写语言除了一些计算要一点专业知识,例如映射和小风扇的转数等,其他的都是例如引脚的配置和各种库的调用,
还有就是if语句和while循环语句的使用,另外就是函数的定义以及函数功能的编写。
Python实现智能小风扇和智能RGB灯相关推荐
- 最简单DIY基于ESP8266的智能彩灯②(在网页用按键和滑动条控制RGB灯)
ESP8266和ESP32智能彩灯开发系列文章目录 第一篇:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯) 第二篇:最简单DIY基于ESP8266的智能彩灯②(在网页用按键 ...
- 最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯)
ESP8266和ESP32智能彩灯开发系列文章目录 第一篇:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯) 文章目录 ESP8266和ESP32智能彩灯开发系列文章目录 前 ...
- 最简单DIY基于ESP8266的智能彩灯③(在网页用按钮+滑动条+手机APP控制RGB灯)
ESP8266和ESP32智能彩灯开发系列文章目录 第一篇:最简单DIY基于ESP8266的智能彩灯①(在网页用按钮点亮普通RGB灯) 第二篇:最简单DIY基于ESP8266的智能彩灯②(在网页用按键 ...
- Blinker接入小爱同学做智能家居RGB灯
如果你有一部非小米手机,怎样连入米家,使用小爱同学语音控制家电呢 此文相关看不懂的知识点 1.esp8266无法下载程序:参考我的另外一篇文章 链接 2.非小米手机小爱同学语音接入 链接 实现功能 小 ...
- 【毕设参考】ESP32 + HaaS Python 打造可以远程控制的智能风扇
智能小风扇 下图是本案例除硬件连线外的3步导学,每个步骤中实现的功能请参考图中的说明. 简介 在日常生活中,我们经常需要一些通过风扇降温的场景,比如说机房,电脑主机等等.通常情况下,我们都 ...
- 使用 Python 实现一个简单的智能聊天机器人
使用 Python 实现一个简单的智能聊天机器人 文章目录 使用 Python 实现一个简单的智能聊天机器人 简要说明 总体的思路 需要准备的环境 接收用户的语音输入, 并将其存为音频文件 调用百度A ...
- 智能家居 (3) ——智能家居工厂模式介绍实现继电器控制灯
目录 智能家居工厂模式整体设计框架 继电器控制灯代码 contrlEquipments.h 文件(设备类) mainPro.c 文件(主函数) bathroomLight.c 文件(浴室灯) seco ...
- python关键词对联_使用百度 AI 进行智能写诗 智能春联
注:本博客为博主在 百度 AI 社区 上分享的一篇文章,由于本博主也是作为一个学习者,所以如果文章中存在错误或者不适合的地方还请见谅. 先来一波推荐: 如果你也喜欢开发,欢迎加入百度 AI 开发平台的 ...
- 基于python的智能家居系统_基于Python Django的可扩展智能家居系统
基于 Python Django 的可扩展智能家居系统 龚 鸣,余杨志,邓宏涛 * [摘 要] 针对现阶段智能家居系统智能化迭代开发的需求,分析当前智能家居 系统主控的相关实现技术,提出了基于 Pyt ...
最新文章
- 你必须非常努力,才可以看起来毫不费力。
- php上传多个文件类型,ThinkPHP上传多文件多类型
- google drive的压缩包直接解压到google drive
- SAP中国,在中国,为中国,一些包含了SAP logo的NBA运动套装
- centos7 安装webmin
- pytorch中查看可训练参数
- LeetCode 15. 三数之和(3Sum)
- SQl---基础整理6--数据库的创建
- 本周个人进步要点20160821
- Postgresql的一些命令
- 微软发布关于 Surface Pro 3 TPM 绕过漏洞的安全公告
- Join a New Company
- Spring 切面 注解模式-练习Demo
- 探究CSS中border-top属性的使用
- Codewar python训练题全记录——持续更新
- 【Vue】postman汉化教程 保姆级教程 包教会
- c4d渲染测试软件,提升C4D渲染速度,你需要的高端显卡选购指南
- 电脑COM串口管理芯片75232、75185及电路(两者可代换)
- C语言switch练习之输入某年某月某日,判断这一天是这一年的第几天。
- P61-前端基础HTML-表单入门介绍