×

基于Arduino Nano运动感应灯帽

消耗积分:2 | 格式:zip | 大小:0.58 MB | 2023-02-13

刘玉兰

分享资料个

描述

这款灯帽是完全可穿戴的无束缚技术,可以在户外使用并给您的朋友和同事留下深刻印象。这是一顶棒球帽,帽沿上装有 5 个 RGB LED 灯,可以照亮您的脸部和工作空间。但让它与众不同的关键是它是运动控制的。使用运动传感器 (MPU6050),帽子能够检测您何时转动头部、转动速度以及头部向前和向侧面倾斜的角度。使用此信息,它可以改变灯光的颜色、它们的亮度,还可以为它们添加柔和的呼吸效果,以达到良好的效果。

  • 当您向前和向后倾斜时,颜色会发生变化。
  • 向任何方向转动头部的速度越快,灯光就会越亮。
  • 当您将头偏向一侧时,灯光开始以轻柔的呼吸节奏脉动。

穿上它,你就走了......

帽子结构

这顶帽子是标准的棒球帽,我用电子设备对其进行了改造。它是基于 Arduino Nano 的,直接连接了一个 MPU6050。Lights 和电池连接器一样也直接连接到 Nano。它由一个小型 3.8V LIHV 电池供电,并用橡皮筋包裹以保护它和接线。灯缠绕在一块材料上,并用橡皮筋和一些热胶固定在帽檐上。双面泡沫胶带用于为每个 LED 创建不同的部分,并将塑料扩散器固定在覆盖边缘的位置。然后将电子设备和电池固定在盖子的前侧。

poYBAGPp3g-APvKmABDxPZ6Jbzk742.jpg
 

软件

该软件的核心是等待新的 MotionSensor 读数,计算旋转增量、头部向前和向侧面的倾斜度,并使用这些根据粗略的启发式方法设置色调、饱和度和值。有趣的是,它尽可能使用 MPU6050 本机输出四元数而不是角度来执行此操作。

LightCap 还允许在 EEPROM 中生成和存储 MPU6050 校准值以及在 EEPROM 中的旋转偏移值。这消除了为每个部署修改草图的需要。您可以只连接到串行接口并使用草图中定义的命令对其进行配置。

该代码还包括一个“信号发生器”,用于创建用于修改灯光的呼吸效果。这使用一组数据点来定义波形,这些波形与插值一起使用以创建具有可变周期的平滑结果。

该代码基于我开发的名为 SweetMaker 的异步 Arduino 框架。这提供了一个简单的事件驱动回调 API,通知应用程序感兴趣的事件。事件可能是新的 MotionSensor 读数或表示 1s 已经过去的常规“滴答”事件。该框架还提供信号发生器代码和其他有用的功能,例如性能监视器。

使用的 MotionSensor 库是 SweetMaker 系列的一部分,并提供“四元数优先”的读数处理,以尽可能避免需要三角函数。

此外,硬件配置和相关软件也是 SweetMaker 系列的一部分,名称为 StrawberryString。StrawberryString 可用于 LightCap 和许多其他应用程序。

现在不是谈论更多关于 SweetMaker 的时候,但我希望在这之后发布更多与 SweetMaker 相关的帖子。

 


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !