1

一个舵机的自我修养

 3 years ago
source link: https://wiki-power.com/%E4%B8%80%E4%B8%AA%E8%88%B5%E6%9C%BA%E7%9A%84%E8%87%AA%E6%88%91%E4%BF%AE%E5%85%BB
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

一个舵机的自我修养

如何把一个舵机改装成 360° 连转舵机,以及用代码解决杂音?

2218072-04cbc8eb7ac10ddc.jpg

背景#

一般来说,舵机只能转 180°(网上也有卖也有连转舵机,只是价格贵了一截)。如果想用舵机来作为小车的驱动,可以把它改为连转舵机。

改装 360° 舵机#

1. 准备工作#

2. 拆开舵机#

2218072-7bc137198ac65914.jpg

2218072-ce45e1ce8a869ed2.jpg

注意记住每个齿轮的位置。

2218072-f81faeac715a89f7.jpg

3. 修改齿轮#

把最大的齿轮拣出来,用斜口钳把后面凸起的地方剪掉。 2218072-2fab2f9620b5efb2.jpg

找一只比轴的直径大一点的螺丝刀,给这个齿轮扩大一下内径,使它能在轴上自由转动。 2218072-b5de55e257df450e.jpg

4. 封电位器#

在做这一步之前,我们必须先把舵机回到中位

2218072-3f7127da4c2c8d88.jpg

找一块 Arduino 板子,给它烧进一段让舵机回到中位的程序:

2218072-41374b07e5f87b06.png

如图,接上舵机,你会发现它一直在转。

2218072-04e91993e3d57d4d.jpg

把右边的轴来回转几圈,找到一个让电机停下来的位置(把这里的电位器调到中间的值。 2218072-964d07b3c4c304d4.jpg

给电位器上胶,封死它。注意,这时候不要不小心把轴给转动了,如果这样,就得重新返回第三步了。

5. 组装#

2218072-d0aec7a2cb430e4c.jpg

把齿轮组装回去,注意不要弄错齿轮位置。 把螺丝锁上,你就得到了一个 360° 连转舵机。

6. 调试#

烧入以下代码:

#include <Servo.h>
Servo myservo;
int pos = 0;
void setup() {
myservo.attach(9);
void loop() {
for (pos = 0; pos <= 180; pos += 1) {
// in steps of 1 degree
myservo.write(pos);
delay(15);
for (pos = 180; pos >= 0; pos -= 1) {
myservo.write(pos);
delay(15);

舵机状态:舵机加速—减速—反方向加速—减速。.....

消除杂音#

背景#

在使用舵机完成相关物联设备制作的时候,经常会遇到,舵机已经到达指定位置,但是仍然会有响声。不胜其烦,@张世博想出了一个方法,就是在舵机供电线路上串一个继电器,在不需要转动的情况下, Arduino 控制继电器断电。但是这个方法会增加硬件成本,而且增加代码复杂度。

解决方案#

在需要舵机工作时,使用 attach() 函数,在舵机工作完毕后,使用 detach() 函数。

FAQ#

Q:这只是一种类型的舵机,对结构不太相同的金属舵机,该如何改装?
A:可以参考一下 改装成连续旋转的伺服舵机 这篇文章。

参考与致谢#

文章作者:Power Lin
原文地址:https://wiki-power.com
版权声明:文章采用 CC BY-NC-SA 4.0 协议,转载请注明出处。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK