三毛手工

位置:首页 > DIY手工 > 电子DIY

懒人必备法宝---刷牙机手工电子DIY教程

电子DIY2.18W

懒人必备法宝---刷牙机

几周之前,我教小孩子做了一个刷牙机,因为我本身也很喜欢做机器人这类的东西,正好可以借这次课程做一个。我在Reddit上提过,之后很多人留言想要这个教程,所以我就写了这篇教程,现在我们就开始吧!
原作: simsalapim

译者:ljos

主要材料

  MeArm的机器手臂  玩滑板用的头盔,这个很便宜
  Arduino UNO  SainSmart 的舵机罩
  你喜欢的牙刷

所需工具:

  如图

制作步骤:

第1步:

懒人必备法宝---刷牙机 第2张

组装机械手臂

我先组装了机械手臂,大家按照MeArm的教程来组装就行。

我安装的时候省略了步骤2,3,即组装底座的步骤。也省略了步骤18,19,20,没安装机器臂的手爪。

第2步:

懒人必备法宝---刷牙机 第3张

第3步:

懒人必备法宝---刷牙机 第4张

第4步:

懒人必备法宝---刷牙机 第5张

第5步:

懒人必备法宝---刷牙机 第6张

第6步:

懒人必备法宝---刷牙机 第7张

第7步:

懒人必备法宝---刷牙机 第8张

第8步:

懒人必备法宝---刷牙机 第9张

第9步:

懒人必备法宝---刷牙机 第10张

在机器手臂的末端,我没安装手爪,安了牙刷。安牙刷的时候,我反复试验了很多次,才找到一个好方法。(我没用多余的零件,因为我很懒。。)

安装牙刷的时候,我用了图一所示的零件,这是机器手臂剩下的套件。

我从剩下的套件里挑了一个最大的零件,在牙刷头上钻两个洞,和零件上最上面的两个孔对上,然后用尖头螺丝固定就可以了。

用两个螺丝将如图所示的其他两个零件固定到最大的零件上。确保最大的零件是背向牙刷的。然后用剩下的三个螺丝等将它们都固定在机器手臂上。

第10步:

懒人必备法宝---刷牙机 第11张

第11步:

懒人必备法宝---刷牙机 第12张

第12步:

懒人必备法宝---刷牙机 第13张

第13步:

懒人必备法宝---刷牙机 第14张

第14步:

懒人必备法宝---刷牙机 第15张

在头盔的正面钻一个舵机马达大小的洞。我先用钻孔机沿着舵机马达的轮廓钻了一个洞,然后用刀把它弄掉。

之后。我在机器手臂剩的套件中找了一个零件,如图所示,在头盔上钻4个洞,正好能和零件上的孔对齐就行。

现在安装舵机,安好之后,把零件安上。零件上面两个孔用长螺丝钉和螺栓固定,下面两个孔用短螺丝钉固定。螺丝钉的头要在头盔的里面,要不然它们就会妨碍机器手臂移动了。

第15步:

懒人必备法宝---刷牙机 第16张

第16步:

懒人必备法宝---刷牙机 第17张

现在要安装机器手臂,安的时候,要保证机器手臂上的舵机摆臂安在头盔的舵机马达上。一定要保证机器手臂安好了,这样你才可以左右移动舵机马达。

用MeArm组件里面的小的黑色螺丝钉固定。

第17步:

懒人必备法宝---刷牙机 第18张

第18步:

懒人必备法宝---刷牙机 第19张

第19步:

懒人必备法宝---刷牙机 第20张

现在我要把Arduino安到头盔上了。如果你还没安呢,就将舵机罩安装到Arduino UNO上。

我拿了一根坏的头绳,放在Arduino和舵机罩之间,然后将头绳从头盔上的两个孔中穿进去。确保Arduino上USB口是朝向头盔的背面的。

第20步:

懒人必备法宝---刷牙机 第21张

第21步:

懒人必备法宝---刷牙机 第22张

将舵机马达上的线从绑住Arduino的那个孔中拉出来,将它连到舵机罩的引脚7上。然后将机器臂下臂连到引脚6上,上臂连到引脚8上。


编程

下面是我写的程序,你可以根据实际情况(比如你的脸的尺寸)来调整一下代码。

// Written by Simone Giertz

#include <Servo.h>



Servo servo[3];

// base, upper arm, lower arm

static const int servoPin[3] = {7,8,6};



void setup()

{

n(9600);

for(int i=0; i<3; i++){

servo[i]ch(servoPin[i]);

}

// Fold the robot arm at the top of the helmet

servo[0]e(90); // base

servo[1]e(30); // upper arm

servo[2]e(150); // lower arm

}



void loop()

{

// Wait five seconds before we start the toothbrushing

delay(5000);



// Put the arm in brushing position

servo[1]e(180);

servo[0]e(90);

servo[2]e(70);



delay(1000);



// brush back and forth

for(int i = 0; i<10; i++){

servo[2]e(60);

delay(200);

servo[2]e(120);

delay(200);

}



// Fold the robot arm back up

servo[0]e(90);

servo[1]e(30);

servo[2]e(150);

}

小贴士:

原址: