Evan 摸头灯

jrenc2002 · · 智能家居

Evan 摸头灯

Evan 摸头灯

拍拍 Evan 的头,两颊亮起开心的粉光并“啾啾”叫一声;2 秒内连拍三下进入派对彩虹;房间暗下来 2 秒后自动变成不吵人的暖黄小夜灯。

整个项目由 AI agent 用 iterx CLI 从需求一路做到嘉立创打板包:选型、连接、固件、仿真断言、成板布线,全部可复现。

它能做什么

动作 Evan 的反应 串口事件 --------- 平时 两颊青蓝色 4 秒呼吸 mode:idle 拍一下头 粉光闪 1.5 秒 + 啾啾两声 pat:1 mode:happy chirp 2 秒内连拍 3 下 彩虹旋转 4 秒 + 上行三音 pat:3 mode:party tune:party 关灯并保持 2 秒 暖黄夜灯,亮度 1/8,拍头只亮不响 mode:night chirp:muted 按住头 3 秒 切换静音 mute:on / mute:off

硬件

  • 主控:Arduino Nano(ATmega328P),装在 Evan 底座的 72×52 mm 双面载板上
  • 头顶:三针高电平轻触按键板(藏在软帽下,拍头即按下)
  • 两颊:WS2812B 2 位灯板(FastLED 驱动,亮度上限 96/255,总电流 < 100 mA)
  • 蜂鸣器:低电平有效无源蜂鸣器驱动模块(tone() 发声,空闲保持高电平)
  • 环境光:HW-486 光敏模拟模块(A0)
  • 载板 J1–J4:2.54mm 1×3 线束排针(1=5V、2=信号、3=GND),头部模块经线束连接

排针 模块 Nano --------- J1 头顶按键 D2 J2 两颊灯 D6 J3 蜂鸣器 D9 J4 光敏 A0

外壳(1.1.0 新增)

Q 版大头摆件,96×153×58 mm,30 个零件,design/structure/ 下按零件分文件:

  • 头顶软质蓝色“呆毛”就是按压帽,帽下柱塞直压 T1 按键板;
  • LED1 的两颗 WS2812B 经乳白导光板照亮两颊粉色光窗,额心小孔给光敏电阻采光;
  • 蜂鸣器贴后脑,后脑壳开正对的双圈出声孔;
  • 72×52 载板竖立在底座里,四根支柱托住,Nano USB 从底座左侧开口插拔,头部模块经中空颈管走线到 J1–J4。

IterxAI 桌面端装配:0 干涉,独立四视图审图通过。待补:各模块无实物 3D 模型(按尺寸占位),USB 开口尺寸需按实物核对。

验证到哪一层

  • iterx check:本地与桌面端项目一致性全部通过(含引脚绑定 design/constraints.json)
  • iterx build:Nano 编译通过,Flash 30%、RAM 27%
  • iterx sim run --scenario sim/headpat.yaml:17/17 断言通过(按键输入、A0 模拟电压、D6 灯带波形、D9 蜂鸣方波逐条验证)
  • 桌面端交互仿真验收通过;成板 DRC/ERC 0 错误,Gerber 13 个文件 + 嘉立创上传包 board/jlc/iterxai-jlc-ready.zip
  • 尚未上真机:光敏方向需按 docs/02-build-guide.md 第 5 步实测校准

自己做一个

搭建与接线见 docs/02-build-guide.md,需求与取舍见 docs/00-requirement.md。

设计取舍

  • 原计划用 TTP223 电容触摸,但桌面端还没有它的交互仿真模型,成板前验收无法通过;换成行为相同(按下输出高)且可仿真的按键板。
  • 元件库里 Uno 没有可制造封装,唯一有封装的核心板是 Nano,所以底座载板用 Nano;头部模块分布在头和脸颊,本就要走线束,载板只放 Nano 与排针。
  • 灯带用 FastLED:IterxAI 受管工具链目前只信任 FastLED,Adafruit NeoPixel 能在本地编译但桌面端成板会拒绝。

#evan #arduino #nano #3d外壳