资讯中心
资讯中心
开源3D打印国际象棋钟:支持增量、回合加时、亮度与电量查看
2025-12-29 9

下棋越多,越容易遇到一个现实问题:想要一台“功能够用、规则可调”的实体棋钟,但价格并不友好。这个项目的思路很直接——自己做一台开源棋钟:时间可任意设置;支持每步增量(increment);还能在指定回合后追加“加时”(bonus),并切换到另一套增量规则(典型锦标赛节奏如开局 90 分钟、到第 40 回合后加时等)。项目还提出后续扩展方向:记录每回合用时,并通过蓝牙导出到电脑做时间管理分析。 

图片

图片


它能做什么?



  • 任意设置对局时间与增量(每走一步追加时间)。

  • 支持“回合触发加时”:到指定回合后加 bonus,并可切换到另一段 increment(例如前半段无增量、后半段 30 秒增量)。

  • 支持亮度调节与电量查看,并提供暂停、重置等对局控制。


硬件与材料



项目给出了完整清单,这里按“做成一台成品棋钟”所需的关键项归纳(具体数量与规格项目中都有列明):

  • 显示:TM1637 四位数码管模块 ×2

  • 主控:ESP32-WROOM-32

  • 供电:两节 18650(带焊片)+ TP4056(带保护、Type-C)+ 3V→5V 升压模块

  • 结构:PLA/PETG 打印件 + 10×3mm 圆形磁铁(用于回合切换结构)+ 木螺丝等

  • 扩展板:洞洞板(约 5×7cm 单面足够)+ 2.54mm 排针/排母切分成不同长度

  • 分立器件:多组电阻、IN4001 二极管、NPN 三极管(如 C945)、P 沟道 MOSFET(示例 NDP6020P)等

图片
图片
图片
图片


3D 打印要点



项目提供了可直接用于打印的 .3mf 配置文件;如果不用 .3mf,也提供 .step 文件与打印建议。整体推荐参数:3 圈墙(3 wall loops)+ 5% 填充;主体与底壳建议加 brim/“mouse ears” 防翘边;主体支撑可做得很少。

图片


回合切换件(Turn Switch / Teeter_Totter)

  • 在腔体封闭前暂停打印,每个槽位放入 2 颗磁铁叠放。

  • 项目建议两侧用相反极性,方便后续装配。

  • 示例暂停高度:20.8mm(约第 104 层),并建议侧放打印。

图片


主体(Body)

  • 同样在磁铁孔还能触达时暂停,每个孔放入 2 颗磁铁叠放。

  • 示例暂停高度:33.4mm(约第 167 层),主体建议“屏幕面朝下”打印,背面少量支撑。

图片


双色按键:没有多材料系统也能实现

  • 不移动按键模型位置,先删除按键本体,只打印符号并留在平台上;

  • 撤销删除、改为删除符号,换耗材再打印按键本体,让本体包住符号;

  • 项目提示:第一次删除后不要保存工程;另有无符号版本(Taste_2)便于自制图标。

图片
图片
图片
图片
图片


固件烧录



项目采用 Arduino IDE 作为“最省事”的入门方式: 

  • USB 连接 ESP32,先在设备管理器确认串口识别(示例为 CP210x USB-to-UART,记住 COM 号)。

  • Arduino IDE 中添加 ESP32 板卡索引,并在 Boards Manager 安装 Espressif 的 esp32 包。

  • 板型选择 ESP32 Dev Module

  • 安装显示库:在库管理器搜索 TM1637,安装 Avishay Orpaz 的版本。

  • 上传代码完成烧录。

图片
图片



图片
图片
图片

常见排错点项目也写得很明确:缺驱动、USB 线只有供电、IDE 端口选错等。


电路与焊接



这套棋钟的连线并非把所有线直接焊到 ESP32 上,而是做了一块“扩展板”把电源、显示、按键等汇总,装配更规整。 

连接器切分(40Pin 排针/排母按长度掰断)

  • 给 ESP32 的 20Pin 排母 ×2

  • 给显示的 6Pin 排母 ×1、4Pin 排针 ×2

  • 给按键的 3Pin 排母 ×1、5Pin 排针 ×1

  • 给充电板/升压等的 2Pin、单针、以及用于把所有连接器插到扩展板上的 12Pin 等(项目逐条列了长度清单)

图片


电池与充电板

  • 两节 18650 需先确认电压一致(不一致先充电均衡)。

  • 按项目方式把两电池并联(+ 对 +、- 对 -),并接入 TP4056 的 B+/B-;再从 OUT+/OUT- 引出到连接器。

  • 电池上垫泡棉,用电池夹固定,充电板滑入到位。

图片

图片


两块显示屏组合 

  • 模块文字朝上安装;两块屏幕并排焊 4Pin 接头;GND 与 5V 用短线互连。

  • 再制作 6Pin 显示连接线束:一端 GND、另一端 5V,中间为两块屏幕的 DIO/CLK;DIO/CLK 顺序后续可在代码中对调。

  • 最后对连接处做绝缘包裹。

图片
图片
图片
图片


按键线束

  • 按项目示意图连线:5PIN 为 5Pin 排针端、3PIN 为 3Pin 排母端。

  • 关键提示:接到 5PIN 的红线是 3.3V,放在连接器中间位置。

  • 红黑主干线约 10cm;按键之间短连线约 5cm;不同按键信号线长度从左到右逐渐变长(项目建议参考装配视频估算)。


扩展板电源逻辑

  • 电池升压到 5V 供 ESP32 与显示。

  • P 沟道 MOSFET 用于切断升压模块与后级,实现关机时几乎无耗电。

  • 电源键触发 MOSFET 导通;ESP32 再驱动 NPN 形成自保持上电;并能检测电源键长按,执行自断电。

  • 项目还提示:两颗 1MΩ 电阻需要贴板平放,因为会压在升压模块下方,需在装升压模块前先焊好。

图片
图片
图片
图片
图片


清理与短路检查

  • 用 99% 酒精 + 牙刷清理残留助焊剂(残留可能引发短路)。

  • 用万用表检查连焊短路并修复。


装配与校准



装配顺序

  • 先装屏幕,再装按键;接着装 ESP32 与夹具;最后装扩展板。

  • 注意事项:不要同时插 USB 和电源线。项目的测试方式是先用 USB 供电、且不接电池完成初测。

  • 按键可按个人习惯排列,但电源键因接法不同不建议随意换位。


霍尔传感器校准

项目说明:芯片、磁铁、耗材差异会影响读数,因此需要校准。操作流程:

  • 按住 battery 键,再按 settings 进入校准模式;屏幕显示 “cali”。

  • 按 play 开始校准,将 Teeter_Totter 拨到“全亮屏幕”一侧;过程中需要切换一次方向。

  • 校准完成回到 cali 页面,按 settings 继续:先显示当前读数,再显示两侧计算阈值。

  • 阈值可用 + / - 调整;退出后会保存,一般无需重复。

  • 确认按键映射无误后,拔掉 USB,再把电池插到扩展板。

图片

图片

开源代码:http://github.com/curlyman98/ChessClock-ESP32


上手使用



  • 开/关机:长按 power

  • 未开始对局:直接按 + / - 给双方加减时间。

  • 点击 settings 可依次调整:increment、到指定回合后的 bonus、bonus 后的 increment(2)、以及 bonus 回合数(对双方同时生效)。

  • 若要分别设置双方时间:长按 settings 进入完整菜单,可分别设置 P1/P2 的 H/m/s,以及 bonus 与 bonus 前后两段 increment。

  • 电池与亮度:长按 battery 查看电量;按住 battery 的同时用 + / - 调亮度。

  • 对局控制:play 开始/暂停;暂停时按 settings 可重置;若一方超时“旗落”,按 play 可重置棋钟。

  • 若回合切换不稳定:重新校准或在校准菜单里微调阈值。


总结



如果你既想要“锦标赛规则”那种可分段增量/回合加时的棋钟,又希望结构、电路、固件都能按自己的习惯持续迭代,这个项目的价值就在于:从 3D 打印到扩展板自保持电源,再到霍尔阈值校准与完整操作菜单,把一台可用的实体棋钟流程拆得非常清楚。项目也提到会在后续版本中持续更新,并计划做配套应用,用于查看用时并导出带时间戳的棋谱数据,欢迎提交建议与贡献。

免责声明:本篇所发布的内容主要经 AI 整理、翻译国外技术网站与开源社区,版权归原作者所有,仅用于学习交流。如涉及侵权,请公海555000JC线路检测中心删除或更正。

免责声明:本文采摘自“硬禾学堂”,本文仅代表作者个人观点,不代表公海555000JC线路检测中心及行业观点,只为转载与分享,支持保护知识产权,转载请注明原出处及作者,如有侵权请公海555000JC线路检测中心删除。

北斗/GPS天线咨询

板端座子咨询

连接器咨询

获取产品资料

  • 网站地图