3033|31

3386

帖子

0

TA的资源

五彩晶圆(中级)

楼主
 

【花雕动手做】有趣好玩的音乐可视化系列小项目(17)--光导纤维灯 [复制链接]

 

偶然心血来潮,想要做一个声音可视化的系列专题。这个专题的难度有点高,涉及面也比较广泛,相关的FFT和FHT等算法也相当复杂,不过还是打算从最简单的开始,实际动手做做试验,耐心尝试一下各种方案,逐步积累些有用的音乐频谱可视化的资料,也会争取成型一些实用好玩的音乐可视器项目。这回在网上采购了50米的光导纤维,想试试作为音乐灯是否可行,不过收到快递时还是吓我一跳,太细太迷你了。

 

最新回复

效果看着不错,我想知道,这50米光纤需要多少米。   详情 回复 发表于 2022-8-18 11:31
点赞 关注
 

回复
举报

3386

帖子

0

TA的资源

五彩晶圆(中级)

沙发
 

 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

板凳
 

网上搜了一下,光导纤维,或称光学纤维(英语:Optical fiber),简称光纤,是一种由玻璃或塑料制成的纤维,利用光在这些纤维中以全内反射原理传输的光传导工具。微细的光纤封装在塑料护套中,使得它能够弯曲而不至于断裂。通常光纤的一端的发射设备使用发光二极管或一束镭射将光脉冲发送至光纤中,光纤的另一端的接收设备使用光敏组件检测脉冲。包含光纤的线缆称为光缆。由于信息在光导纤维的传输损失比电在电线传导的损耗低得多,更因为主要生产原料是硅,蕴藏量极大,较易开采,所以价格很便宜,促使光纤被用作长距离的信息传递介质。随着光纤的价格进一步降低,光纤也被用于医疗和娱乐的用途。

光纤主要分为两类,渐变光纤(英语:graded-index fiber)与突变光纤(英语:step-index profile)。前者的折射率是渐变的,而后者的折射率是突变的。另外还分为单模光纤及多模光纤。近年来,又有新的光子晶体光纤问世。

光导纤维是双重构造,纤芯部分是高折射率玻璃,表层部分是低折射率的玻璃或塑料,光在纤芯内传输,并在表层交界处不断进行全反射,沿“之”字形向前传输。这种纤维比头发稍粗,这样细的纤维要有折射率截然不同的双重结构分布,是一个非常惊人的技术。各国科学家经过多年努力,创造了内附着法、MCVD法、VAD法等等,制成了超高纯石英玻璃,特制成的光导纤维传输光的效率明显提升。现在较好的光导纤维,其光传输损失每公里只有零点二分贝;也就是说传播一公里后只损耗4.5%。

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

4
 

声音模块,使用性价比更高的MAX4466声音传感器。

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

5
 

MAX4466模块特点
电源电压:+2.4V至+5.5V(可直接接STM/ARDUNIO/树莓派等开发板)
电源抑制比:112dB
共模抑制比:126dB
AVOL:125dB(RL = 100kΩ) 轨到轨输出
静态电源电流:24μA
增益带宽:600kHz
尺寸:20.8mm x 13.8mm x 7.5mm/0.8 x 0.5 x 0.3inch

 

 

该模块在 Vcc 和接地引线上都包含铁氧体,以最大限度地减少电源噪声。如果与 MCU 一起使用,最好使用 2.4V – 5.5V 范围内可用的最安静的电源。在 Arduino 上,这通常是 3.3V 电源。

输出是直流耦合的。当输出信号处于静止状态时,它将位于 Vcc/2。如果 Vcc 为 5V,则输出将为 2.5V。如果输出需要交流耦合,可以在输出引脚和它驱动的电路的输入之间增加一个100uF的电容。

背面的小型单圈电位器可让您将增益从 25x 调整到 125x。逆时针旋转电位器会增加增益,而逆时针旋转会降低增益。

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

6
 

LED使用WS2812B

WS2812B是一种将控制电路和rgb芯片集成在一起的智能控制led光源。5050组件的包装。内部包括智能数字端口数据锁存和信号整形放大驱动电路。还包括精密内部振荡器和12V电压可编程恒流控制部分,有效保证了像素点光色高度一致。数据传输协议采用单NZR通信方式。像素上电复位后,DIN端口接收数据来自控制器,第一个像素收集初始24位数据,然后发送到内部数据锁存器,其他数据由内部信号整形放大电路通过DO端口发送到下一个级联像素进行整形。后对于每个像素的传输,信号要减少24位。像素采用自动整形传输技术,使像素级联数不受信号传输的限制,只取决于信号传输的速度。复位时间>280μs,中断时不会造成误复位,支持较低频率,价格低廉单片机。刷新频率更新到2kHz,画面频率低,高清摄像机无闪烁,提高出色的展示效果。LED具有驱动电压低、环保节能、亮度高、散射角大、一致性好、功率低、寿命长等优点。集成在led上的控制芯片越来越多电路简单,体积小,安装方便。

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

7
 

WS2812B采用四位模块

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

8
 

四位模块电原理图

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

9
 

模块引脚
VCC---这个引脚需要由一个5V-7V的直流电源接入。电压过高(7V)的话会烧毁LED,电压太低(5V)的话则会造成亮度过低,甚至造成LED不工作。

GND---公共引脚,接地,即接电源的负极。

IN---微控制器(或者是另外一个WS2812)的数据从这个引脚传入LED。

OUT---数据从这里输出给下一级的WS2812,如果这个WS2812是最后一级,则可直接悬空此引脚。

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

10
 

头回上手的光导纤维太细了,准备裁剪为10厘米一段,总长50米,算来也会有500段

 

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

11
 

光导纤维的原理

光纤是圆柱形的介质波导,应用全内反射原理来传导光线。光纤的结构大致分为里面的纤芯部分与外面的包覆部分。为了要局限光信号于纤芯,包层的折射率必须小于纤芯的折射率。渐变光纤(英语:graded-index fiber)的折射率是缓慢改变的,从轴心到包覆,逐渐地减小;而突变光纤(英语:step-index profile)在核心-包覆边界区域的折射率是急剧改变的。图为各种各样的光纤。

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

12
 

光导纤维的二个概念
1、折射率
折射率可以用来计算在物质里的光线速度。在真空里,及外太空,光线的传播速度最快,大约为3亿米/秒。一种物质的折射率是真空光速除以光线在这物质里传播的速度。所以,根据定义,真空折射率是1。折射率越大,光线传播的速度越慢。通常光纤的核心的折射率是1.48,包覆的折射率是1.46。所以,光纤传导信号的速度粗算大约为2亿米/秒。电话信号,经过光纤传导,从纽约到悉尼,大约12000公里距离,会有最低0.06秒时间的延迟。

2、全内反射
镭射的反弹于一根压克力棍内部,显示出光线的全反射。
当移动于密度较高的介质的光线,以大角度入射于核心-包覆边界时,假若这入射角(光线与边界面的法线之间的夹角)的角度大于临界角的角度,则这光线会被完全地反射回去。光纤就是应用这种效应来局限传导光线于核心。在光纤内部传播的光线会被边界反射过来,反射过去。由于光线入射于边界的角度必须大于临界角的角度,只有在某一角度范围内射入光纤的光线,才能够通过整个光纤,不会泄漏损失。这角度范围称为光纤的受光锥角(英语:acceptance cone),是光纤的核心折射率与包覆折射率的差值的函数。

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

13
 

剪裁下来的500根光导纤维

 

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

14
 

找到二只瓶盖,来做底座

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

15
 

光导纤维的端口要切齐

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

16
 

固定四位LED模块

 

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

17
 

迷你的光导纤维灯

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

18
 

  【花雕动手做】有趣好玩的音乐可视化系列小项目(17)--光导纤维灯
  项目程序之一:简单测试的呼吸灯

 

/*
  【花雕动手做】有趣好玩的音乐可视化系列小项目(17)--光导纤维灯
  项目程序之一:简单测试的呼吸灯
*/

#include <Adafruit_NeoPixel.h>
#define PIN 6
#define MAX_LED 4
#define ADD true
#define SUB false

int val = 0;
boolean stat = ADD;

Adafruit_NeoPixel strip = Adafruit_NeoPixel( MAX_LED, PIN, NEO_RGB + NEO_KHZ800 );

void setup() {
  strip.begin();
  strip.show();
}

void loop() {
  uint32_t color = strip.Color(val, val, val);
  strip.setPixelColor(0, color);

  if (val >= 235)
    stat = SUB;
  if (val <= 0)
    stat = ADD;

  strip.show();
  delay(15);
  if (stat == SUB) val --;
  else if (stat == ADD) val++;
}

 

 
 
 

回复

3386

帖子

0

TA的资源

五彩晶圆(中级)

19
 

实验场景图  动态图

 

 

点击上图查看Gif动图

 
 
 

回复

6841

帖子

11

TA的资源

版主

20
 

这项目搞得有点创意,能不能单独控制每一根光纤,显示不同的颜色。。。。

点评

粗的光纤估计可以,目前这个太细,像头发丝......  详情 回复 发表于 2022-8-17 11:59
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表