
这周我们来一起看看如何用Arduino自制一个只有表针,没有表盘的“空心时钟”。
看起来还是挺炫酷的,再放几张网友们参照教程做的图欣赏一下:


▲ 视频演示
第0步:材料准备步进电机28BYJ-48和驱动板包括
用于控制步进电机的微控制器(比如Arduino nano)
2mm x 10mm自攻螺钉 * 8
润滑脂(高粘性)
这个时钟可以用大多数常见的200 x 200mm打印机打印,除了装饰部分(index.stl,203 x 203mm)。
文章最后还有一个缩小小的版本(85%)。
文中所有的涉及的STL文件可以到文末下载。
第1步:打印零件
打印零件
有些零件需要支撑
好好去毛刺,特别是几个非常小的齿轮(时钟中心的蜗轮和小齿轮)
相关STL文件可以到文末下载。
第2步:组装蜗杆传动系统
用烙铁进行塑料焊接,对于连接
gear.stl
、axis.stl
和worm-gear.stl
相互之间是很有用的。你也可以使用一些安全的胶水,如双组分环氧胶。
在中央齿轮中注入一点油脂。不仅可以减少摩擦,而且可以减少齿隙。
中央齿轮的齿隙对时钟的精确性影响很大。h-gear1.1x.stl比原来的h-gear.stl要大一点,以抑制齿隙。中央齿轮的齿隙对时钟的精确性影响很大。从两个候选中选择更好的小齿轮。
h-gear1.1x.stl
比原来的h-gear.stl
大一点。

如果2毫米自攻螺钉的头部比步进电机的孔小,请使用垫圈或换更大的螺钉。

为了避免齿轮脱落,我们可以翻转机身一侧(上图中的绿色部分),然后把顶部的钩子钩住。
需要使用三颗自攻螺钉安装分钟盖。

注意使用自攻螺丝安装时针的时候不要拧太紧了,当你调整时钟时,它应该是会滑动的
固定好其他部分




将Nano的端口4、5、6和7连接到步进电机驱动器
连接VCC(+5V)和GND
如果你想把整个电路封闭起来放到盒子里,可以打印零件做个盒子(相关文件放在文末)。
然后用两个2毫米的自攻螺钉来组装起来。
第7步:程序将代码闪到Arduino上。把代码上传到Arduino IDE 上。
如果你的电机跑错了方向,请修改代码中的数字顺序:
int port[4] = {4, 5, 6, 7};
改为
int port[4] = {7, 6, 5, 4};
这上面的数字和Arduino Nano的针脚有关(D4-D7)。
完整代码如下:
// Please tune the following value if the clock gains or loses.
// Theoretically, standard of this value is 60000.
#define MILLIS_PER_MIN 60000 // milliseconds per a minute
// Motor and clock parameters
// 4096 * 110 / 8 = 56320
#define STEPS_PER_ROTATION 56320 // steps for a full turn of minute rotor
// wait for a single step of stepper
int delaytime = 2;
// ports used to control the stepper motor
// if your motor rotate to the opposite direction,
// change the order as {4, 5, 6, 7};
int port[4] = {4, 5, 6, 7};
// sequence of stepper motor control
int seq[8][4] = {
{ LOW, HIGH, HIGH, LOW},
{ LOW, LOW, HIGH, LOW},
{ LOW, LOW, HIGH, HIGH},
{ LOW, LOW, LOW, HIGH},
{ HIGH, LOW, LOW, HIGH},
{ HIGH, LOW, LOW, LOW},
{ HIGH, HIGH, LOW, LOW},
{ LOW, HIGH, LOW, LOW}
};
void rotate(int step) {
static int phase = 0;
int i, j;
int delta = (step > 0) ? 1 : 7;
int dt = 20;
step = (step > 0) ? step : -step;
for(j = 0; j
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?


微信扫码登录