MicroPython动手做(28)——物联网之Yeelight-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

楼主: eagler8

MicroPython动手做(28)——物联网之Yeelight

[复制链接]
 楼主| 发表于 2020-6-6 20:31 | 显示全部楼层
# MicroPython动手做(28)——物联网之Yeelight
#测试HSV颜色模型的hue 色调(饱和度设为100)

[mw_shl_code=arduino,true]# MicroPython动手做(28)——物联网之Yeelight
#测试HSV颜色模型的hue 色调(饱和度设为100)

from mpython import *
import network
import music
from yeelight import *
import time

my_wifi = wifi()

my_wifi.connectWiFi("zh", "zy1567")


music.play('G5:1')
oled.fill(0)
oled.DispChar("测试HSV色调", 35, 18, 1)
oled.DispChar("0-359", 55, 29, 1)
oled.show()
bulb = Bulb(discover_bulbs()[0]["ip"])
time.sleep_ms(500)
bulb.turn_on()
time.sleep_ms(500)
bulb.set_brightness(100)
time.sleep_ms(500)
bulb.set_rgb(51, 0, 0)
rgb[1] = (int(0), int(102), int(0))
rgb.write()
time.sleep_ms(1)
while True:
    for i in range(0, 360, 22):
        time.sleep_ms(500)
        bulb.set_hsv(i, 100)[/mw_shl_code]

 楼主| 发表于 2020-6-6 20:35 | 显示全部楼层
mPython X 实验图形编程

22.png
 楼主| 发表于 2020-6-6 20:56 | 显示全部楼层
本帖最后由 eagler8 于 2020-6-6 21:03 编辑

# MicroPython动手做(28)——物联网之Yeelight
# 测试HSV颜色模型的hue色调变动(实验视频)

https://v.youku.com/v_show/id_XN ... oneSokuUgc_3.dtitle


 楼主| 发表于 2020-6-6 21:09 | 显示全部楼层
14、测试Yeelight灯泡的色温变动(1700k-6500k)

可以使用 set_color_temp(degrees) 函数设置灯泡色温
degrees 色温参数,范围1700k~6500k。

知识点:

色温
是表示光线中包含颜色成分的一个计量单位。从理论上说,黑体温度指绝对黑体从绝对零度(-273℃)开始加温后所呈现的颜色。黑体在受热后,逐渐由黑变红,转黄,发白,最后发出蓝色光。当加热到一定的温度,黑体发出的光所含的光谱成分,就称为这一温度下的色温,计量单位为“K”(开尔文)。如果某一光源发出的光,与某一温度下黑体发出的光所含的光谱成分相同,就称为某K色温。如100W灯泡发出的光的颜色,与绝对黑体在2527℃时的颜色相同,那么这只灯泡发出的光的色温就是:(2527+273)K=2800K。

23.png

色温与亮度
高色温光源照射下,如亮度不高则给人们有一种阴冷的气氛;低色温光源照射下,亮度过高会给人们有一种闷热感觉。光色的对比:在同一空间使用两种光色差很大的光源,其对比将会出现层次效果,光色对比大时,在获得亮度层次的同时,又可获得光色的层次。

色温原理
开尔文认为,假定某一纯黑物体,能够将落在其上的所有热量吸收,而没有损失,同时又能够将热量生成的能量全部以“光”的形式释放出来的话,它产生辐射最大强度的波长随温度变化而变化。例如,当黑体受到的热力相当于500—550℃时,就会变成暗红色(某红色波长的辐射强度最大),达到1050—1150℃时,就变成黄色……因而,光源的颜色成分是与该黑体所受的温度相对应的。色温通常用开尔文温度(K)来表示,而不是用摄氏温度单位。打铁过程中,黑色的铁在炉温中逐渐变成红色,这便是黑体理论的最好例子。通常我们所用灯泡内的钨丝就相当于这个黑体。色温计算法就是根据以上原理,用K来对应表示物体在特定温度辐射时最大波长的颜色。根据这一原理,任何光线的色温是相当于上述黑体散发出同样颜色时所受到的“温度”。颜色实际上是一种心理物理上的作用,所有颜色印象的产生,是由于时断时续的光谱在眼睛上的反应,所以色温只是用来表示颜色的视觉印象。

 楼主| 发表于 2020-6-6 21:42 | 显示全部楼层
# MicroPython动手做(28)——物联网之Yeelight
# 测试Yeelight灯泡的色温变动(1700k-6500k)

[mw_shl_code=arduino,true]# MicroPython动手做(28)——物联网之Yeelight
# 测试Yeelight灯泡的色温变动(1700k-6500k)

from mpython import *
import network
import music
from yeelight import *
import time

my_wifi = wifi()

my_wifi.connectWiFi("zh", "zy1567")


music.play('G5:1')
oled.fill(0)
oled.DispChar("测试色温变动", 30, 18, 1)
oled.DispChar("1700-6500", 33, 29, 1)
oled.show()
bulb = Bulb(discover_bulbs()[0]["ip"])
time.sleep_ms(500)
bulb.turn_on()
time.sleep_ms(500)
bulb.set_rgb(51, 0, 0)
rgb[1] = (int(0), int(102), int(0))
rgb.write()
time.sleep_ms(1)
while True:
    for i in range(1700, 6501, 80):
        time.sleep_ms(500)
        bulb.set_color_temp(i)[/mw_shl_code]
 楼主| 发表于 2020-6-7 05:37 | 显示全部楼层
mPython X 实验图形编程

23-.png
 楼主| 发表于 2020-6-7 05:40 | 显示全部楼层
色温1700K


27.jpg
 楼主| 发表于 2020-6-7 05:45 | 显示全部楼层
色温3800K


29.jpg
 楼主| 发表于 2020-6-7 05:47 | 显示全部楼层
色温6500K

31.jpg
 楼主| 发表于 2020-6-7 06:01 | 显示全部楼层
Yeelight彩光版灯泡内部图


24.png

25.png
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-28 01:09 , Processed in 0.083047 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表