机器人开发

下班偷偷做的电子情书:一本会发光、能测心跳的手帐

一本送给女朋友的 DIY 活页手帐,纸艺之外藏了三块自己画的电路板。翻开封面灯带亮起,碰一下触摸键灯光换色,手指按上传感器灯带变红、小屏显示心率,翻到最后一页灯板亮起,照着那封手写信。本文跟着视频一页一页展示它的样子,简单说说里面的电路,也聊聊为什么觉得智能 DIY 手帐值得做成定制或套件。

视频演示

代码开源

查看电子情书的 Pico + FreeRTOS 固件源码

硬件开源

查看电子情书的嘉立创硬件开源


现在的 DIY 手帐,贴照片的、做拉页的、塞机关的,花样很多。

可它们有个共同点,纸做的东西,不会回应你。你翻开它,它就安安静静躺在那儿。

我一直觉得,会发光、能互动的智能 DIY 手帐,市面上几乎是空白。买不到,那就自己做一本,送给女朋友。

难处在时间。准备的时间不多,手帐、纸艺、电路、程序全是下班以后偷偷摸摸做的,不能让她发现。做出来的东西挺粗糙,线是露在外面的,板子是塞在插袋里的。

但翻开它的那一下,灯亮了。

视频 0:04 截图:翻开封面,内封板边沿的灯带亮起彩虹色

翻开封面

这本电子情书的底子,是一本 6 孔活页手帐。封面挂着「元气满满」「平安喜乐」的小吊牌,贴了一圈圆形照片。

翻开封面,内封板铺着白色毛绒,半透明插袋里放着整本书的大脑,一块树莓派 Pico 主控板,旁边是一块带圆形喇叭的 MP3 模块。

视频 0:00 截图:翻开封面,插袋里放着 Pico 主控板和带喇叭的 MP3 模块,灯带还没亮

板子边沿贴着一圈 WS2812 灯带,前封和底封各绕了一段。书一打开,灯带就开始跑彩虹,颜色一圈一圈往前流,身后的窗帘也跟着变色。

往下翻一页,一个紫色的纸艺摩天轮跟着页面立了起来,每个轿厢都是一张圆形照片。它是纯纸做的,没有电机,靠页面开合撑起来,灯带在后面替它打光。

视频 0:10 截图:纸艺照片摩天轮随页面立起,身后的灯带透出紫粉色的光

一页一页往后翻

前面几页,是纸的主场。

有一张写着「Happy Valentine's Day」的爱心卡,旁边是可以掀开的照片翻盖和星空照片卡。

视频 0:33 截图:Happy Valentine's Day 爱心卡和几张照片卡摊在灯带旁

黑卡页上有一串手风琴式的折叠照片,拉开是长长的一串,角上贴着「lucky」。同一页还有一朵手绘的大玫瑰,照着模板勾的线,颜色是自己一笔一笔涂的。只有一次机会,生怕画残。

视频 0:57 截图:黑卡页上拉开的手风琴折叠照片,角上贴着 lucky

再往后,是一页写着信的卡片。信的右边,有一个圆形的触摸键,亮着一圈蓝光。

视频 1:30 截图:手写信卡旁的圆形触摸键亮着蓝光,三根线顺着活页环走线

这是整本书第一个「可以点」的地方。手指轻轻一碰,灯带就换一种颜色,从紫色切到暖黄绿,或者闪起来。纸做的机关是你拉它,它动一下;这里是你碰它,整本书的光跟着变。

触摸键是现成的电容触摸模块,三根细线顺着活页环的孔绕过书脊,一路走回前封的主控板。

把手指放上去

翻过触摸页,左下角有一块白色小底座,上面是一块 0.96 寸的 OLED 小屏和一颗心率传感器,旁边画了个红色箭头,提示手指往哪放。

视频 2:27 截图:手指按在心率传感器上,整圈灯带变成红色

手指按上去,传感器亮起红光,整圈灯带一下变成红色,一闪一闪地跳。屏幕上写着「Heart Rate」,下面的数字先是 0,等了十来秒,跳成了 53。

视频 2:29 截图:OLED 屏上显示 Heart Rate 53

手指拿开,灯带换成粉色,慢慢地呼吸。

情书里写「心跳」两个字很容易,让一本书真的去数一下她的心跳,是另一回事。

拉开、拨动、转一转

心跳页之后,又回到纸的主场。

有的照片卡一层叠着一层,掀开一张还有一张。

视频 2:42 截图:一层层掀开的照片卡

「HAPPINESS」那页有一个爱心转盘,旁边几张照片可以往外抽、往旁边拨。

视频 3:06 截图:HAPPINESS 爱心转盘页,照片从卡槽里抽出来

有一页做成了棒棒糖的样子,旋涡圆盘拨开,露出藏在里面的照片。

视频 3:48 截图:棒棒糖造型的旋涡圆盘拨开后,露出里面的照片

还有一台纸做的复古收音机,唱片是一张圆形照片,滑杆可以推。它就是个纸艺装饰,不会出声。

视频 3:59 截图:纸艺复古收音机页,照片做成的唱片和可推动的滑杆

最后一页

一直翻到底封,内板中央藏着一块小小的 LED 灯板,几颗 LED 朝不同方向打出红、黄、白的光柱,四周围着一圈灯带。

视频 4:16 截图:底封内板中央的 LED 灯板打出红黄白光柱,四周围着一圈灯带

这块灯板上有一颗光敏电阻。书合着的时候,底封里一片黑;翻到最后一页,光照进来,它察觉到变亮了,四颗 LED 就一起亮起来。

它分不清现在翻到了第几页,只认一件事,最后一页被打开了。对一封情书来说,这件事刚好够用,信就放在这一页。

视频 4:22 截图:最后一页是一封黑卡白字的手写信,下方的灯板和灯带亮着

灯是电路点亮的,信是手写的。

藏在书里的电路

把纸艺都掀开,书里一共藏了三块我自己画的电路板。

电路板 放在哪 管什么
主控板 前封插袋 树莓派 Pico,负责供电和指挥所有灯光、触摸和传感器
心跳检测板 心跳那一页 MAX30102 心率传感器和 OLED 小屏
LED 灯板 底封 四颗 LED 和一颗光敏电阻

三块板都是在嘉立创EDA 里画的。主控板上,除了 Pico 和一路稳压,剩下几乎全是插座,触摸键、灯带、MP3 模块、心跳板、灯板,各插各的。

主控 MCU 原理图:Pico 主体、电池与稳压电路,以及触摸开关、RGB 灯带、MP3 播报、LED 灯带、LED 灯条和心跳检测的插座

插座多,是因为这块板要住在一本会翻页的书里。触摸键、心率传感器和灯板散在不同的页上,中间隔着好几层纸,只能靠细线连过去。线顺着活页环的孔绕过书脊,要换页、拆页的时候,拔下插头就行,不用动烙铁。

程序跑在 Pico 上,用 FreeRTOS 把活拆开,有的盯着光敏电阻,有的盯着心率传感器,触摸键一碰就发消息,灯带收到哪条消息,就换哪种灯效。

发生了什么 书怎么回应
打开书 灯带彩虹色循环流动
碰一下触摸键 灯带切换成闪烁或彩虹
手指按在心率传感器上 灯带变红,一闪一闪地跳,小屏显示心率
手指拿开 灯带换成粉色呼吸
翻到最后一页 灯板上四颗 LED 一起亮起

源码已经开源,地址在文首的本文资料里,想看灯效和心率怎么实现的,可以直接翻代码。

粗糙的地方

时间实在有限,有几处只能先这样。

线是露在外面的。灯带、触摸键、心跳板的线都顺着活页环走,翻页时跟着环一起动,没有藏进页里。主控板和 MP3 模块也只是放在插袋里,没有做外壳。

那块带喇叭的 MP3 模块,本来想让它在翻到最后一页时放一段声音。模块、接线和驱动都准备好了,程序里也给它留了位置,最后时间不够,这一路这次没接上。

心跳灯也偷了个懒。灯带一闪一闪的节奏是固定的,并不跟着测出来的心率走,真实的数字只在那块小屏上。

它也许不只是一份礼物

做完回头看,我还是觉得这个想法挺好。

手帐本身就是很多人会认真做的东西,纸艺、照片、手写信,花的都是心思。加上一点灯光、一个能碰的按键、一块会数心跳的小屏,它就从一本「好看的书」,变成了一本「会回应的书」。

智能 DIY 手帐这块,到现在我也觉得几乎是空白。承接定制,或者把这几块电路板做成套件,让会做手帐的人自己往里塞,都是不错的方向。

这次的设计里,其实已经有一点套件的影子。电路分成三块小板,靠插座和细线连接,哪一页放触摸键、哪一页放心跳板,都可以按自己的手帐来排。

把脑洞焊到电路板上,这次的电路板,夹在了一本手帐里。

下班后偷偷做的这一本,确实粗糙。可翻到最后一页,灯还是亮了。

参考资料

SparkFun MAX3010x 传感器库

Raspberry Pi pico-examples 示例仓库

FreeRTOS-Kernel 源码仓库

鸿尘客 Honchic · 把脑洞焊到电路板上

接着看

再读几篇项目与技术手记。

返回机器人开发

读到这里,也聊聊你的想法。

项目复刻、技术交流,或者一起折腾点什么。