采用ESP32芯片构建一个真实世界颜色选择器
我设计了一个真实世界颜色选择器,来解决一个非常简单的问题:我经常在现实中看到某些颜色,希望以后能在设计中使用。
墙壁、产品、标志、包装,甚至完全随机的物品,都可能拥有让我立刻注意的颜色。通常情况下,我需要拍照,之后再尝试采样颜色,或者干脆指望自己记得它的样子。
因此,我决定制作一个小型手持设备,能够观察现实中的颜色,并将其转化为数字RGB/HEX值。
按下按钮,将传感器对准物体,设备便会显示对应的颜色数值。颜色也可以保存并随时浏览。
工作原理
本项目包含三个主要部分:
•TCS34725颜色传感器测量红、绿、蓝和透光通道。
•ESP32-S3读取传感器数据,并将测量结果转换为RGB数值。
•ST7789显示屏则显示最终的颜色及其对应的十六进制值。
ESP32-S3还负责处理按钮操作,并通过其非易失性偏好存储(Preferences)保存已保存的颜色。
所有部件均能放入紧凑的3D打印外壳中:
ESP32和按钮采用卡扣式安装,而其他组件则需使用M2螺丝固定:
LED可在扫描时自动点亮:
可通过USB打印颜色,同时充当键盘功能:
未来改进
在未来的版本中,我有一些想要改进的地方。
更好的色彩校准
目前的RGB转换设计有意简化,但可加入校准流程以提高传感器输出颜色的准确性。
更优的传感器外壳
为传感器添加物理外壳有助于阻挡环境光,使读数更加稳定一致。
更多预设颜色
当前实现最多支持20种预设颜色,但这一功能完全可以进一步扩展。
本文编译自hackster.io





