ESP8266和ws2811上的智能圣诞树

去年,我很晚才开始收集圣诞树。 通常,对于12月项目,每年年底的标准关闭制度特别有压力。 通常,孩子和我在新年前的几天开始装饰树。 装饰圣诞树的第一个惊喜是用了很多年前在OBI或Castorama购买的新年花环。 三个颜色通道中的一个完全熄灭,另一个在低亮度下工作。 那是星期天,起初我想快点去买一个替换品。 但是后来我想起了他们25个可控RGB LED的花环,它们是在Ali上一次买到的,用来“看”,并在盒子里撒粉。

在我看来,将花环连接到arduino并填写标准算法似乎太无聊了。 因此,我决定带来一些新的,时尚的东西。 这样使孩子自己取悦会很有趣。

因此,决定将该花环连接到智能家居。 我的智能家居主要使用ESP / arduino和blynk库在ESP8266系列微控制器上工作。 本地blynk服务器部署在RaspberryPi 3上。

如我上面所写,我没有太多时间,所以我将自己限制在NeoPixel库中的一些标准示例中。 使用智能手机进行模式之间的切换。 我将在文章末尾提供指向草图的链接。

将菊花链连接到ESP8266非常简单,但严格地将其连接到某些GPIO,具体取决于模块的型号和所需的传输速率

图书馆对此主题发表了评论:
// three element pixels, in different order and speeds NeoPixelBus<NeoGrbFeature, Neo800KbpsMethod> strip(PixelCount, PixelPin); //NeoPixelBus<NeoRgbFeature, Neo400KbpsMethod> strip(PixelCount, PixelPin); // For Esp8266, the Pin is omitted and it uses GPIO3 due to DMA hardware use. // There are other Esp8266 alternative methods that provide more pin options, but also have // other side effects. //NeoPixelBus<NeoGrbFeature, Neo800KbpsMethod> strip(PixelCount); // // NeoEsp8266Uart800KbpsMethod uses GPI02 instead // You can also use one of these for Esp8266, // each having their own restrictions // // These two are the same as above as the DMA method is the default // NOTE: These will ignore the PIN and use GPI03 pin //NeoPixelBus<NeoGrbFeature, NeoEsp8266Dma800KbpsMethod> strip(PixelCount, PixelPin); //NeoPixelBus<NeoRgbFeature, NeoEsp8266Dma400KbpsMethod> strip(PixelCount, PixelPin); // Uart method is good for the Esp-01 or other pin restricted modules // NOTE: These will ignore the PIN and use GPI02 pin //NeoPixelBus<NeoGrbFeature, NeoEsp8266Uart800KbpsMethod> strip(PixelCount, PixelPin); //NeoPixelBus<NeoRgbFeature, NeoEsp8266Uart400KbpsMethod> strip(PixelCount, PixelPin); // The bitbang method is really only good if you are not using WiFi features of the ESP // It works with all but pin 16 //NeoPixelBus<NeoGrbFeature, NeoEsp8266BitBang800KbpsMethod> strip(PixelCount, PixelPin); //NeoPixelBus<NeoRgbFeature, NeoEsp8266BitBang400KbpsMethod> strip(PixelCount, PixelPin); 


这是去年的录像带。


一个6岁的孩子很高兴,尤其是RGB Zebra。 在我看来,开发人员正是在这种情况下才想到这一元素的。

直到三月月,这棵树已经站了很长时间并且很高兴(孩子在二月下旬过生日,她想在朋友面前吹牛)。

由于“船舶如此成功地起飞”,将来决定增加更多的灯。 购买了另一个花环,其中有50个二极管。 连接时,我必须从花环的另一端添加5V电源,因为 她微弱地闪着光芒。 此外,几周前,我的女儿和母亲决定为圣诞树购买一颗星星。 他们以固定价格购买了一些最sheshmansky的中国人,但这也行不通。 他们递给我的字样是:“爸爸,把它修好,然后挂在圣诞树上!” 在恒星内部有一个单个二极管,一个电池和一个开关,事实证明它们可以工作,但触点闭合。 我打开了联系人,但整个家庭都以不同的颜色闪烁(它们内置在跳跃的硅胶球中)。 顺便说一句,如果有人向我解释该二极管如何在没有电阻和任何电路的情况下工作,我将感到非常高兴。 LED二极管是迄今为止最常见的单芯片,在透明灯泡中有一个阴极和一个阳极。 看起来像这样

通常,决定移除全时二极管,而是插入5pcs。 从花环ws2811。 因此,略微修改了草图和blynk轮廓以支持更多的灯光和星星。 这位明星收到了个人斑马,并被排除在所有动画算法之外。 有了动画,没有一个家庭喜欢这颗星星。


明年,我将添加坐标动画,也许有些读者会提供一些帮助。

链接到图书馆

草图链接:


两个

PS:如果很有趣,那么在接下来的文章中,我将介绍我对廉价智能家居的愿景。 目前,我已配置为使用智能手机,红外遥控器,运动传感器,墙壁按钮和语音控制照明,水族馆,气候,家庭影院。

Source: https://habr.com/ru/post/zh-CN409459/


All Articles