“光照指示器”的版本间的差异
853387039@qq.com(讨论 | 贡献) (→搭建硬件) |
|||
第4行: | 第4行: | ||
| | | | ||
==目的== | ==目的== | ||
− | + | 做一个的光照指示器,将光值分为三个等级,通过绿、蓝、红三种颜来反应光的强弱。 | |
+ | [[File:light_indicator-ok.jpg|600px|center|thumb]] | ||
==原理== | ==原理== | ||
+ | 通过Light光线传感器检测光的强弱,系统判断光强在定义的哪个范围区间,对应让彩灯亮不同颜色,同时,在同一区间内光越强,颜色越亮。 | ||
+ | [[File:light_indicator-sch.jpg|600px|center|thumb]] | ||
==设备== | ==设备== | ||
第13行: | 第16行: | ||
|模块||数量||功能 | |模块||数量||功能 | ||
|- | |- | ||
− | |[[ | + | |[[mCookie-CoreUSB/zh]]||1||核心板 |
|- | |- | ||
|[[Microduino-Sensorhub/zh]]||1||传感器转接板 | |[[Microduino-Sensorhub/zh]]||1||传感器转接板 | ||
第19行: | 第22行: | ||
|[[Microduino-Light/zh]]||1||光敏传感器 | |[[Microduino-Light/zh]]||1||光敏传感器 | ||
|- | |- | ||
− | |[[Microduino- | + | |[[Microduino-Color led/zh]]||1||彩色led灯 |
|- | |- | ||
− | | [[ | + | | [[mCookie-BM/zh]]||1||电池管理 |
|} | |} | ||
+ | [[File:light_indicator-module.jpg|600px|center|thumb]] | ||
− | + | ==准备== | |
− | + | *Setup 1:用USB线将CoreUSB模块与PC/Mac相连,并打开Arduino IDE。 | |
− | + | [[File:CoreUSB_Ble_pc.jpg|600px|center]] | |
− | *Setup | + | *Setup 2:下载程序: [https://github.com/Microduino/Microduino_Tutorials/blob/master/MCookie_Tutorial/light_led/light_led.ino light_led] |
− | [https://github.com/Microduino/Microduino_Tutorials/blob/master/MCookie_Tutorial/light_led/light_led.ino light_led] | + | [[File: light_indicator-sch.jpg|600px|center]] |
− | + | * Setup 3:加载代码,将程序代买拷贝到IDE中。程序编译通过后选择好板卡和COM端口下载程序。 | |
− | [[ | + | ==程序说明== |
− | + | *传感器引脚定义,彩灯接D6,光照传感器接A0 | |
− | * | ||
− | |||
− | |||
− | |||
− | |||
− | == | ||
− | |||
− | * | ||
<source lang="cpp"> | <source lang="cpp"> | ||
#define PIN 6 | #define PIN 6 | ||
第66行: | 第62行: | ||
colorWipe(strip.Color(map(sensorValue, 800, 960, 0, 255), 0, 0)); | colorWipe(strip.Color(map(sensorValue, 800, 960, 0, 255), 0, 0)); | ||
</source> | </source> | ||
+ | *“map(val,x,y,m,n)”函数为映射函数,可将某个区间的值(x-y)变幻成(m-n),val则是你需要用来映射的数据。 | ||
+ | ==搭建硬件== | ||
+ | *Setup 1:将光敏电阻接到Sensorhub的A0引脚上,将彩色led灯接到D6引脚上。 | ||
+ | [[file: light_indicator _A0_6.JPG|thumb|800px|center]] | ||
+ | *Setup 2:将激活后的电池盒与BM模块相连. | ||
+ | [[File:CoreUSB_Ble_steup2.jpg|600px|center]] | ||
+ | *Setup 3:将所有模块堆叠在一起,顺序随意,电路部分搭建完成。 | ||
+ | [[File: ight_indicator_steup-all.jpg|600px|center]] | ||
==结果== | ==结果== | ||
改变光的环境,光从暗到亮颜色依次变化为绿-蓝-红,并且光越弱,亮度越低。 | 改变光的环境,光从暗到亮颜色依次变化为绿-蓝-红,并且光越弱,亮度越低。 |
2015年9月9日 (三) 04:24的版本
Language | English |
---|
目的做一个的光照指示器,将光值分为三个等级,通过绿、蓝、红三种颜来反应光的强弱。 原理通过Light光线传感器检测光的强弱,系统判断光强在定义的哪个范围区间,对应让彩灯亮不同颜色,同时,在同一区间内光越强,颜色越亮。 设备
准备
程序说明
#define PIN 6
Adafruit_NeoPixel strip = Adafruit_NeoPixel(1, PIN, NEO_GRB + NEO_KHZ800);
#define Light_PIN A0
#define Light_value1 400
#define Light_value2 800
sensorValue = analogRead(Light_PIN);
if (sensorValue < Light_value1)
colorWipe(strip.Color(0, map(sensorValue, 10, 400, 0, 255), 0));
else if (sensorValue >= Light_value1 && sensorValue < Light_value2)
colorWipe(strip.Color(0, 0, map(sensorValue, 400, 800, 0, 255)));
else if (Light_value2 >= 800)
colorWipe(strip.Color(map(sensorValue, 800, 960, 0, 255), 0, 0));
搭建硬件
结果改变光的环境,光从暗到亮颜色依次变化为绿-蓝-红,并且光越弱,亮度越低。 你也可以通过乐高搭建一个漂亮的外观。 视频 |