简述 - Brief Introduction
辉光管情怀
辉光管是电子管时代的显示器件,利用的是辉光放电原理,驱动电压高,体积大,娇气、寿命短(1000小时左右),随之 VFD 和 LED 的出现,辉光管很快就被淘汰,但许多人依然被其美丽的显示效果所吸引,由此制作一些怀旧风或朋克风的时钟。在动画《命运石之门》中,辉光管以世界线变动率检测仪的应用效果展示在人们面前。
✅ 该项目已经完成:
美观程度与用户体验
在设计之初,作品都是在美观的基础上扩展功能,并努力优化程序结构,使其可以保持长时间运行而不至于崩溃,提高使用体验。期待最终以一个装饰品的样貌作为最终成果,而不是电线外露的小制作水准。当然因为手工水平的局限性,或许不能做到完美。
功能设想 - Functionality
功能实现上,我将把功能需求分为两部分,一部分是必要功能,并且现在有能力通过代码或第三方软件/代码实现;另一部分是可选功能,主要是一些更加复杂的非必要功能,或是完全依赖第三方软件的功能,最终不一定实现。
必要功能
- 蓝牙音箱功能:https://github.com/lukasjapan/bt-speaker
- 辉光管时钟/闹钟
- 微信交互 (网络信息交互)
- 温湿度检测(传感器应用)
- 视频、照片捕捉、入侵预警(微信交互、本地保存)
可选功能
- 智能语音对话:Google Assistant SDK / Alexa SDK / DuerOs SDK
- NFC 身份认证
- 多媒体放映终端:KODI
- 智能家居桥接终端: HomeAssistant
备注:
- 这个颜色代表功能实现依靠第三方软件/代码,并标注了软件名称
- 这个颜色代表功能实现较多依靠第三方 SDK
设计 - Design
外观设计
外观的设计图如下:
外壳采用红花梨木板,使用电磨进行切割、钻孔。樱花状的镂空是驿站表示运行状态的呼吸灯,灵感来源于老款的 MacBook Pro。开关采用复古的摇杆式拨动开关。
辉光管显示模块设计
设计图如下:
辉光管的数字部分驱动由苏联产的 K155ID1 BCD 译码器完成每个辉光管配一个译码器,这样虽然成本高,但因为不需要动态扫描提高了稳定性,也方便了程序的编写和减少了控制器的负担,小数点部分使用 A42 高压三极管驱动。而三极管、译码器以及 RGB LED 的控制由 4*2 组74HC595 位移缓存器完成。
实现方案 - Make
材料需求
- 主要模块
树莓派 zero wh
Arduino nano
电压转换模块 *2
18650 电池控制模块
树莓派麦克风模块
PN532 NFC 模块
音响功放模块
- 主要电子元件
IN-12 辉光管
摄像头
音响
DHT11 传感器
贴片 LED
电位器
…
- 其它材料
红花梨木板
复古拨动开关
贴片点动开关
小风扇
18650 电池
洞洞板
…
程序实现
树莓派程序使用 Python3 编写,Arduino 的程序使用 C++ 编写,程序的架构设计图如下,main.py 调用其它模块运行,并进行变量共享:
硬件实现
电源转换、电源控制等模块,以及树莓派、Arduino 控制器可以方便的从网上购得。模块间使用杜邦线连接,辉光管模块的电路设计画成 PCB 图纸之后,交由淘宝 PCB 打样店进行制作,PCB 设计图如下:
控制部分实现
控制的流程图如下,其中因为树莓派串口被蓝牙占用,树莓派与 Arduino 、PN532 模块的连接使用 I2C 总线。 硬件的架构设计如下:
使用 Arduino 的原因:
- 控制硬件方面,单片机的实时性比跑 Linux 系统的树莓派优秀
- 若辉光管发生意外,会烧坏主机的话,Arduino 便宜的多
- 把部分频率高、简单的控制功能分离可以减少树莓派压力
@Aeonni 写于2018.11.09
转载请注明出处