晓庆 发表于 2019-8-5 01:00:56

【脑洞大赛】基于Processing语言的可编程LED特效灯

本帖最后由 晓庆 于 2019-8-18 07:34 编辑

1.简介这是一款十分炫酷的可编程LED特效灯,例如人造火焰、雪花飘落等动态的效果。通过processing语言可以编程生成各种显示效果,提供丰富多样的交互方式,包括音乐,声音,传感器和其他东西在内的输入。可以应用于晚会,酒吧等场所,营造特殊光影效果。
硬件:树莓派3B+开发版 x 1Fadecandy 开发板 × 11米LED灯带 × 2电源开关 × 1
软件:Processing
优势:提供非常绚丽的LED显示颜色,显示效果可以编程。提供非常酷炫的交互方式,比如声音反馈、与 API 连接并获取喜欢的服务、IFTTT集成、语音识别,以及许多其他功能。
进度:作品已完成,已上传
先看一段炫酷的视频吧(温馨提醒:视频中某些光线的变化模式或者闪光灯的方式,可能会引起极少数人出现癫痫症状。如有不适请立即停止观看)。https://v.youku.com/v_show/id_XNDMwMzcxMTYyNA==.html?spm=a2h0j.11185381
配合音乐享用效果更佳https://v.youku.com/v_show/id_XNDMwMDY5NDcwNA==.html?spm=a2hzp.8244740.0.0
2.原理说明
整个LED显示效果由部署在服务器(Windows/Mac/Raspberry/IOS/Android)processing语言生成,processing 的sketch实例能够通过采样点转换位图。树莓派作为服务器的角色,给fadecandy传输指令从而间接驱动灯条。采样点发送到fadecandy开发板,由fadecandy驱动8x15 的LED阵列,LED的光透过漫反射的PVC塑料管呈现出来。
Processing https://processing.org/img/processing3-logo.pngProcessing是一种具有革命前瞻性的新兴计算机语言,它的概念是在电子艺术的环境下介绍程序语言,并将电子艺术的概念介绍给程序设计师。它是Java 语言的延伸,并支持许多现有的Java 语言架构,不过在语法(syntax) 上简易许多,并具有许多贴心及人性化的设计。Processing可以在Windows、MAC OS X 、Linux 等操作系统上使用。目前最新版本为Processing 3。以Processing 完成的作品可在个人本机端作用,或以Java Applets 的模式外输至网络上发布。
官方网站:https://processing.org下载地址:https://processing.org/download/

效果很明显。颜色非常好,有时亮度也很高。这是一种控制光源阵列的很棒的方法,这意味着就算你不必是专业程序员,只需通过在 Photoshop 中制作的内容就做到很酷的效果。
https://i1.quwj.com/2019/03/05/ae34c319221b55a2f978cc716049f40b.gif


这里不得不提openprocessing.org 这个网站,它提供了丰富的草图并支持在线编辑工具。Processing还附带了一个很棒的工具用于浏览和安装所需要的库。https://th.i1.quwj.com/thumb/post/2019/03/20/8990072a7ae22fcde0eda7b4bc12dcfd,w_800.png

Fadecandy 采用了Micah Elizabeth Scott的Fadecandy开发板来。她一直在从事艺术和互动实验的灯光特效工作。正如她在网站(https://www.misc.name/fadecandy)上展示的那样,大多数普通的LED 控制器在混合色调或显示正确的色彩时效果很差。于是,她制作了Fadecandy开发板来解决这些问题。

更好的是,它可以通过USB 连接到大小型计算机,还可以嵌入到计算机(像树莓派一样)进行控制。也可以直接与Processing 进行接口,Processing 也可以在树莓派上使用,完全可以满足这种小规模的需求。

树莓派Raspberry Pi是一款针对电脑业余爱好者、教师、小学生以及小型企业等用户的迷你电脑,预装Linux系统,体积仅信用卡大小,搭载ARM架构处理器,运算性能和智能手机相仿。在接口方面,Raspberry Pi提供了可供键鼠使用的USB接口,此外还有快速以太网接口、SD卡扩展接口以及1个HDMI高清视频输出接口,可与显示器或者TV相连。
Ws2812 LED灯带这个可控制的多彩LED灯带,不过多介绍。
制作过程
软件准备1.   在Mac/Windows和树莓派上下载并安装processing 3(https://processing.org/download/),2.   下载并安装fadecandy软件到树莓派(https://github.com/scanlime/fadecandy/releases),调试过程中可以把fadecandy部署在Mac/Windows上。3.   下载processing的sketch。
硬件准备1.      树莓派3B2.   淘宝海外代购fadecandy开发版3.   ws2812 60珠LED灯带2米。4.   直径5cm,长度30cm的PVC管。5.   直径10cm,长度30cm的漫反射PC管。6.   5V 6A电源。
制作过程
LED 灯的布局
LED 我在某宝购买了两个1米长的带60个LED 的WS2812防水灯带,一个5V,6A, 30W 的电源 和一个 Fadecandy 开发板。沿着PVC 管四周缠绕8条垂直的灯带,每条灯带上带15个灯,这样的高度和 LED 密度,可以改善LED灯的分辨率。


将灯带固定在PVC管上


完成外壳的部分我会根据灯带展开的形式,决定灯带的长度。我采用光扩散PC管覆盖在LED灯的周围。
采用了Autodesk Fusion 360 软件自行设计了灯的底座外壳,采用3D打印机耗时两天打印出来。

我希望灯能够放在房子里的任意一个角落,而不是一直通过 USB 连接电脑。这意味着我需要选择小型的独立的计算平台与我的设计相匹配,需要能运行 Fadecandy 服务器并运算为LED供电的 Processing sketch。将软件部署在树莓派3B+,并集成为一个独立的LED灯。

成品化

产品外观
https://v.youku.com/v_show/id_XNDMwMDY5NTE2MA==.html?spm=a2hzp.8244740.0.0

配合Andriod APP控制https://v.youku.com/v_show/id_XNDMwMDY5NTc0NA==.html?spm=a2hzp.8244740.0.0
显示效果https://v.youku.com/v_show/id_XNDMwMzcwODI2NA==.html?spm=a2h0j.11185381.listitem_page1.5!2~A
通过Processing 的IOS客户端控制特效灯
https://v.youku.com/v_show/id_XNDMwOTA2OTYyNA==.html?x=&sharefrom=android&sharekey=2c1a2de1c0491a2e89cbd6438e0a0d9e3

配合IOS App显示效果
https://v.youku.com/v_show/id_XNDMwMDcxODA1Mg==.html?spm=a2h3j.8428770.3416059.1





saber1 发表于 2019-8-5 09:58:23

这玩意费电不,不费电我不要

晓庆 发表于 2019-8-6 00:06:09

saber1 发表于 2019-8-5 09:58
这玩意费电不,不费电我不要

如果喜欢这个作品,请多多支持

汤果 发表于 2019-8-13 16:36:36

这个灯也太酷了吧~

晓庆 发表于 2019-8-18 06:26:11

汤果 发表于 2019-8-13 16:36
这个灯也太酷了吧~

多谢支持

夜泽 发表于 2020-3-30 18:24:56

你好,可以看一下你做这个东西的代码吗?可以上传图片播放吗?
页: [1]
查看完整版本: 【脑洞大赛】基于Processing语言的可编程LED特效灯