电子发光领带





准备工作:
材料:
材料名称 | 数量 | 型号/说明/备注 |
ESP12-E / ESP12-F | 1 |
|
WS2812B LED | 13 |
|
欧姆电阻 | 3 | 10K |
欧姆电阻 | 1 | 100欧姆 |
电线TP4056 IC | 1 |
|
绿色 LED (0805) | 1 |
|
红色 LED (0805) | 1 |
|
电池保护 IC | 1 | DW01 |
FS8205A MOSFET IC | 1 |
|
AMS117 3.3V | 1 |
|
电容器 | 2 | 10 uF |
电容器 | 1 | 10 0uF |
电容器 | 2 | 0.1uF |
滑动开关 | 1 | SMD |
Micro USB 端口 锂聚合物电池 | 1 1 |
3.7V |
3D打印部件 |
|
|
工具:
工具名称 | 数量 | 型号/说明/备注 |
镊子 | 1 |
|
烙铁 | 1 |
|
带注射器的焊膏 | 1 |
|
热风枪 | 1 |
|
FTDI USB 转 TTL 适配器 |
|
|
面包板 |
|
|
异丙醇 |
|
|
刷子 |
|
|
设计原理图





该项目以 ESP12-E/ESP12-F 微控制器为核心。WS2812B LED,通常称为 NeoPixel,作为可单独寻址的 RGB LED 模块运行。其操作围绕一条数据线展开,可无缝集成到各种照明应用中。数据串行传输到WS2812B,链中的每个 LED 都会接收其颜色和亮度信息。接收到数据后,LED 会解释信号并以指定的颜色和强度点亮信号。这种对每个 LED 颜色和亮度的精确控制可实现迷人的视觉效果、动画和动态照明显示,使WS2812B成为从装饰照明到数字艺术装置和可穿戴技术等项目的理想选择。
在此设置中,WS2812B LED 以菊花链方式连接在一起,其 VSS 和 GND 引脚连接到相应的电池电压和接地。此外,第一个 LED 的 DIN(数据输入)连接到 ESP 12E 上的一个 GPIO 引脚,而该 LED 的 DOUT(数据输出)连接到后续 LED 的 DIN,从而为链中的所有 LED 创建顺序连接。该原理图还采用了 TP4056 电路。TP4056 是一款用途广泛、用途广泛的单节锂离子 (Li-ion) 或锂聚合物 (LiPo) 电池充电器 IC。其主要功能是从各种电源(例如 USB 端口或外部直流电源)高效安全地为可充电锂离子或锂聚合物电池充电。TP4056 采用简单明了的充电算法和内置保护功能,使其成为各种便携式和电池供电设备的热门选择。
TP4056 在两个主要充电阶段运行:恒流 (CC) 和恒压 (CV)。在CC阶段,充电器为电池提供固定的充电电流,该电流由连接到IC的外部电阻的值决定。该电流逐渐增加电池电压。一旦电池电压达到特定阈值(锂离子电池通常约为 4.2 伏),TP4056 就会过渡到 CV 阶段。在此阶段,它在电池端子上保持恒定电压,使充电电流逐渐降低。这样可以防止过度充电,因为充电电流会随着电池达到其最大容量而逐渐减少。TP4056 还集成了多种安全功能,包括过充保护、过放保护和热保护,确保电池在充电过程中保持在安全的工作状态。总体而言,TP4056 为单节锂离子或锂聚合物电池充电应用提供了简单而可靠的解决方案。
设计电路板布局





在 KiCad 中为 发光领带 创建电路板布局是将这种迷人的可穿戴技术变为现实的细致而重要的一步。在错综复杂的设计中,每个元素都必须无缝协调,从 LED 的放置到精细走线的布线。为了获得最大的亮度和视觉冲击力,LED 必须与 ESP12-E/ESP12-F 微控制器紧密相连,确保数据和电源的同步流动。布局不仅要保证电路板的结构完整性,还要优化这种照明配件的性能。随着 发光领带 拥抱优雅与创新的结合,其 KiCad 板布局成为时尚艺术与技术科学相遇的画布,有望吸引和激励所有遇到其光芒四射魅力的人。
边缘剪裁层经过精心设计,以反映领结的比例和形状,向 发光领带 的同名致敬。虽然地面浇注已合并到 PCB 中,但它可能不是必需的。如果您选择使用它,确保 ESP12F 的天线区域下方没有铜填充物至关重要,因为这可能会导致未来的 Wi-Fi 连接复杂化。此外,滑动开关和 USB 微型端口放置在 发光领带 的底部,可以通过 USB 微型端口实现方便的电源开/关功能和充电。该板的整体尺寸为 127 mm * 57.15 mm。
按照以下步骤在 KiCad 中进行电路板布局:
1. 打开 KiCad:启动 KiCad 并打开您的项目。在进入电路板布局之前,请确保您已经完成了原理图设计阶段。
2. 打开 PCBNew:在 KiCad 中,用于 PCB 布局的工具称为 PCBNew。您可以通过选择“PCBNew”或单击其图标(如果在您的 KiCad 版本中可用)从 KiCad 主菜单访问它。
3. 加载网表:如果尚未加载,则需要加载原理图设计生成的网表。为此,请执行以下操作:
- 在PCBNew中,转到“工具”>“从原理图更新PCB”。
- 浏览并选择与您的项目关联的网表文件。
- 单击“读取当前网表”。
4. 初始封装分配:PCBNew 将尝试自动将原理图中的元件与库中的封装相关联。单击“注释”按钮查看这些分配,并确保所有组件都与其封装正确匹配。进行任何必要的更正。
5. 放置组件: 现在,是时候将您的组件放置在 PCB 画布上了.请按照下列步骤操作:
- 点击“放置”按钮。
- 开始在电路板上放置组件,遵循设计的要求和指南。
- 如果需要,使用“M”键旋转组件。
- 注意组件间距、对齐方式和方向。
6. 布线轨迹:放置组件后,您需要布线轨迹以连接它们。方法如下:
- 点击“路线”按钮。
- 通过单击一个打击垫并拖动到另一个打击垫来开始布线跟踪。
- 使用“R”键在布线时以交互方式更改图层。
- 跟踪设计约束中指定的设计规则,例如走线宽度和间隙。
7. 添加铜浇注(可选):您可以为电源和接地平面创建铜浇注:
- 单击“添加填充区域”按钮。
- 绘制多边形以定义每一层(例如,接地层和电源层)的铜浇注。
- 将每个铜浇注的网设置到相应的电源网或接地网。
8. 丝网印刷和指示符:在电路板上添加丝网印刷标签和元件指示符,以帮助识别元件及其方向。
9. 最终检查:在最终确定电路板布局之前:
- 运行设计规则检查 (DRC),以确保您的设计符合制造规则和约束。
- 检查是否有任何未连接的网络或未路由的连接。
10. 生成 Gerber 和钻孔文件:按照步骤 3 中提到的步骤为您的 PCB 生成 Gerber 和钻孔文件。
11. 查看并保存:仔细检查您的电路板布局并保存您的工作。确保您已保存PCB布局文件和项目文件。
12. 文档: 在将 PCB 设计发送给制造商时,考虑创建设计文档或组装说明以随附您的 PCB 设计.
完成这些步骤后,您在 KiCad 中的 PCB 布局就可以进行制造了。在将设计发送给 PCB 制造商之前,请务必彻底检查您的设计,以避免物理板中的潜在错误。
生成 Gerbers

在 KiCad 中生成 Gerber 文件是准备印刷电路板 (PCB) 设计进行制造的关键步骤。Gerber 文件是 PCB 制造商用于创建物理板的行业标准格式。以下是有关如何在 KiCad 中生成 Gerber 文件的分步指南:
1. 打开您的 KiCad 项目:确保您的 KiCad 项目已打开,并且您的 PCB 设计已准备好投入生产。
2. 打开 PCBNew:在 KiCad 中,PCB 设计工具称为 PCBNew。通过单击 PCBNew 图标或从 KiCad 主菜单中选择它来打开它。
3. 检查您的设计:在生成 Gerber 之前,请仔细检查您的设计是否存在任何错误,例如未连接的走线、缺少组件或违反设计规则。
4. 设置绘图参数:
一个。在 PCBNew 中,转到“文件”>“绘图”。
b.在“绘图”对话框中,确保正确配置了以下设置:
- 绘图格式:Gerber (rs274x)。
- 输出目录:选择要保存 Gerber 文件的目录。
- 绘制所有图层:确保选择了制造所需的所有图层。
- 选项:验证是否未选中“使用 Protel 文件扩展名”。
c. 单击“绘图”按钮。
5. 生成 Gerber 文件:
一个。单击“绘图”后,PCBNew 将在指定目录中生成 Gerber 文件。
b.将创建一系列 Gerber 文件,每个文件代表 PCB 的不同层,例如铜层、丝网印刷、阻焊层等。
6. 查看 Gerber 文件:您可以使用 Gerber 查看器(例如 GerbView)来验证生成的 Gerber 文件。确保它们准确地代表您的 PCB 设计。
7. 生成钻取文件:
一个。要生成钻取文件,请转到“文件”>“钻取文件”。
b.在“钻取文件”对话框中,验证设置,包括输出目录。
c. 单击“钻取”。
8. 查看钻孔文件:使用 Gerber 查看器确认钻孔文件已正确生成并包含所需的钻孔和标记。
9. 压缩文件(可选):您可以创建一个包含所有 Gerber 和钻孔文件的 ZIP 存档,以便轻松提交给 PCB 制造商。
10. 文档(可选):最好在提交中包含自述文件,其中包含有关设计的重要信息,例如层名称和任何特殊说明。
现在,您已经成功地为您的 KiCad PCB 设计生成了 Gerber 文件和钻孔文件,使其可以在您选择的 PCB 制造工厂进行制造。在提交文件进行生产之前,请始终确保您的文件符合制造商的规格。
我选择了位于印度古吉拉特邦的专门从事印刷电路板的制造工厂 PCB Power 来制造我的电路板。他们的网站,可以在以下位置找到
,是我选择的平台。我决定为电路板选择光滑的黑色,并选择了 1.6 毫米的厚度,这种选择不仅增加了它的美感,而且强烈推荐。
组装和焊接





SMD组装的精度确保了这些元件被精心地放置在PCB上。
使用焊膏和热风枪的 SMD(表面贴装器件)组装是电子行业采用的一种专业技术,用于在印刷电路板 (PCB) 中填充表面贴装元件。与传统的焊接方法相比,这种工艺具有更高的精度和多功能性,使其成为现代电子制造中不可或缺的一部分。
锡膏应用:
这种组装方法的第一步是在PCB的焊盘上涂上焊膏。焊膏是悬浮在助焊剂中的微小焊料颗粒的混合物。通常使用自动点胶机或模板将焊膏准确地沉积到指定区域。这一步至关重要,因为它可以确保每个组件都有适量的焊料。
元件放置:
涂上焊膏后,使用自动拾贴机将电阻器、电容器、IC 和微控制器等 SMD 元件精心放置在 PCB 上。这些机器以微米级的精度将每个组件精确定位到其指定的焊盘上。
热风枪回流焊:
元件放置后,PCB会受到受控的加热过程,通常使用热风枪或在回流焊炉内进行。焊膏回流,熔化元件并将其粘接到PCB焊盘上。热风枪方法特别适用于小规模或原型组装,因为它提供了更大的灵活性和对焊接过程的控制。
该过程完成后,不要忘记在红色 LED 上方用一些焊线短接端子,因为这是为WS2812B LED 提供电压的原因。
使用焊膏和热风枪的 SMD 组装体现了精度和效率的结合。
编程





使用 FTDI USB 转串口适配器和 Arduino IDE 对 ESP12E 模块进行编程是一个简单的过程。以下是分步指南:
您将需要:
FTDI USB 转串口适配器
Arduino IDE 安装在您的计算机上。
合适的 USB 电缆。
1. 连接硬件:
- 通过USB电缆将FTDI适配器连接到计算机。
- 将 FTDI 适配器连接到 ESP12E 模组,如下所示:
- FTDI 3.3V(或 5V,取决于您的 ESP12E 版本)至 ESP12E VCC。
- FTDI GND 到 ESP12E GND。
- FTDI TX 到 ESP12E RX。
- FTDI RX 到 ESP12E TX。
- 或者,您可以将 FTDI 适配器的 DTR/RTS 引脚连接到 ESP12E 的 GPIO0 引脚以实现自动编程模式,但这并不总是必需的。
2. 在Arduino IDE中安装ESP8266板:
- 打开Arduino IDE。
- 转到“文件”>“首选项”。
- 在“Additional Boards Manager URL”字段中,输入以下 URL:
'''http://arduino.esp8266.com/stable/package_esp8266com_index.json'''
- 单击“确定”关闭“首选项”窗口。
- 转到“工具”>“看板”>“看板管理器”。
- 搜索“esp8266”并安装“esp8266”开发板包。
3. 选择ESP8266板:
- 进入“工具”>“开发板”,选择合适的ESP8266板(例如“NodeMCU 1.0 (ESP-12E Module)”)。
4. 设置上传参数:
- 在“工具”中,设置以下参数:
- “CPU频率”:80 MHz。
- “闪存大小”:根据您的 ESP12E 模组,选择合适的闪存大小(通常为 4MB)。
- “端口”:选择与您的FTDI适配器对应的COM端口。
5. 编写并上传您的草图:
- 在 GitHub 存储库中编写或打开给定的 Arduino 草图
- 确保您的代码包含ESP8266所需的库。
- 单击Arduino IDE中的“上传”按钮(右箭头图标)。
- Arduino IDE 将编译您的草图,并通过 FTDI 适配器上传到 ESP12E 模块。
6. 监控串行输出(可选):
- 您可以在 Arduino IDE(工具>串行监视器)中打开 Serial Monitor,查看 ESP12E 的串行输出以进行调试。
就是这样!您的 ESP12E 模组现在应该使用 Arduino 草图进行编程。确保断开 GPIO0 与 GND 的连接(如果已连接)并重置 ESP12E 模块以运行上传的代码。
简要介绍固件

该固件控制 发光领带 的行为,它显示各种照明模式和颜色。这是代码及其细分。
库和依赖项:该代码使用多个库来实现不同的功能:
“Adafruit_NeoPixel”:此库用于控制 NeoPixel LED,即可以显示各种颜色的 RGB LED。
“ESP8266WiFi”和“WiFiClient”:这些库用于处理 Wi-Fi 连接。
'ESP8266WebServer':该库允许您在 ESP8266 上创建一个 Web 服务器,用于通过 Web 界面控制 发光领带。
“EEPROM”:该库用于在ESP8266的EEPROM存储器中读取和写入数据。
常量和变量:
该代码定义了各种常量和变量来控制 发光领带 的行为,包括 LED 引脚、Wi-Fi 设置、电池监控、LED 颜色、亮度和不同的照明模式(关闭、低电量、纯色、无限远、脉冲、连拍)。
设置功能:
'setup()' 函数初始化串行通信、NeoPixel LED 和 EEPROM。
它还会检查电池电压,如果电压低于阈值,则将 发光领带 设置为低电量模式。
Wi-Fi 接入点用于通过 Web 界面控制 发光领带。
启动 Web 服务器,并将 发光领带 的 IP 地址打印到串行监视器上。
循环功能:
'loop()' 函数根据 'btMode' 变量连续运行并处理不同的照明模式。
它还会定期检查电池电压,并在必要时切换到低电量模式。
可用的照明模式包括关闭、低电量、纯色、无限远、脉冲和连拍。
Web 界面:
'handleRoot()' 函数用作控制 发光领带 的 Web 界面。
它从 Web 表单中读取 RGB 颜色值和所选模式,并相应地更新 发光领带 的设置。
Web 界面允许用户更改 LED 颜色并选择不同的照明模式。
LED动画功能:
多个函数('off()'、'lowBatt()'、'solid()'、'infin()'、'pulse()' 和 'burst()')用于根据所选模式控制 LED 图案和颜色。
该代码使 发光领带 能够通过 Web 界面更改其 LED 颜色和照明模式,使其成为可定制和交互式可穿戴 LED 配件。用户可以通过访问 Web 界面和调整设置来控制 发光领带 的外观。
3D打印和零件组装

在启动3D打印机之前,焊接,连接并确保LiPo电池以正确的极性连接。如果您没有可用的 3D 打印机,请考虑使用您当地提供的 3D 打印服务。
外壳的 3D 打印部件为容纳各种电子设备、原型或机械组件提供了一种多功能且经济高效的解决方案。这些定制的外壳是使用增材制造技术创建的,允许精确和复杂的设计,使用 .step 文件查找保险杠和框架附带的 .stl 文件。
连接WIFI、完工成品




要与发光领带建立连接,请按照下列步骤操作:
1. 激活滑动开关并访问手机上的 Wi-Fi 设置,确保禁用移动数据。
2. 找到名为“PizzaBowTie”的 SSID 并连接到它。记下提供的 IP 地址。
3. 在手机浏览器中输入IP 地址,即可与 发光领带 交互并更改颜色。
通过将发光领带连接到您的衬衫上,与它的界面互动,并陶醉于它提供的绚丽和鲜艳的色彩,享受您的创作。











