六儿

中级会员
  • 主题:23
  • 回复:69
  • 金钱:300
  • 积分:374

一、遇到的问题
不知道大家平常学习工作的时候会不会遇到一个问题。一不小心,手一甩,啪叽,粗心的你就把水杯打倒了,赶紧用纸巾去擦,说不定还有影响到旁边的人。每次这样的时候都会很尴尬。。。


然而,有没有想过解决一下这个问题呢。哈哈哈哈哈哈哈,Moving Cup让你再也不尴尬,而且让你的逼格Level up。
二、制作思路
为了防止出现尴尬,我们就想让茶杯动起来,想喝水的时候将水送到手边,不想喝水的时候就屁颠屁颠到一边去。而且Moving Cup 必须结构简单,操作方便,不然就会使得桌面复杂凌乱,让本来凌乱的人更加凌乱。。。所以思路就是令喝水杯子动起来,moving,moving,moving。3维模拟的效果图如下所示,丝杆滑块机构使得杯子可以沿直线运动。我们如果要做的逼格高一点,就把下面的机构藏在桌子下面,将放杯子的平台露在桌面上,然后按钮放在手边,想喝水的时候按一下水杯过来,喝完水再按一下,水杯就离你远远的。

三、结构制作
下来就介绍我们的制作过程咯。由于实物都被我装起来啦,我们下来就按照下面的三维图来将吧,实际安装时遇到的问题我会介绍的~

首先使用3D打印将下面爆炸图中的零部件都打印出来

电机在如下位置,设计好的槽中固定,电机轴伸出来在螺杆底部连接。


光杆穿在图中的孔中


滑块旋进螺杆,旁边穿进光杆,这样就使得滑块可以在电机的转动下沿直线移动。装好后的结构如下图所示。


然后再将放杯子的底板装在滑块上面就OK了~

然后再整两个开关,就perfect啦~

那么这些都准备齐全了,然后在你的桌面上,画好固定整个机构的位置,整个台钻,打好固定孔,将上面的结构装上去就完美啦,然后就是电路部分咯~
四、电路部分制作
其实电路部分的设计很简单啦,目的就是可以用两个按键控制电机的正反转。在这里我们需要的东西就是一块arduino的板子,一个驱动直流电机的电路板LN298,还有一个升压模块就OK啦。
会使用到298上的INA,INB,EN1这三个口,INA和INB是控制电机正反转的口,EN1是使能口,也就是说当EN1是高电平时,INA和INB才会有用,298上输入端需要接给电机供电的电源正负两极和一个5V端口,输出就接到电机上就好啦。
在arduino上需要将298上的INA,INB,EN1这三个口分别接到数字口上,另外两个按键也需要接到arduino的数字口上。Arduino需要供给5V的电。
其他就是电源模块了,使用12V转5V电源,12V给电机供电,5V给arduino供电。
Arduino的程序如下所示:
i
[AppleScript] 纯文本查看 复制代码
nt ENA=2;
int IN1=9;
int IN2=10;
int KEY1=7;
int KEY2=8;
int flag1;
int flag2;
 
 
void setup()
{
  Serial.begin(9600);
  pinMode(ENA,OUTPUT);
  pinMode(IN1,OUTPUT);
  pinMode(IN2,OUTPUT);
  pinMode(KEY1,INPUT_PULLUP);
  pinMode(KEY2,INPUT_PULLUP);
}
 
void loop()
{
  flag1=digitalRead(KEY1);
  flag2=digitalRead(KEY2);
  if (flag1==LOW)
  {
    Serial.println("zhua");
    delay(50);
    if(flag1==LOW)
    {
      digitalWrite(ENA,HIGH);
      digitalWrite(IN1,HIGH);
      digitalWrite(IN2,LOW);
    }
  }
  else if (flag2==LOW)
  {
    Serial.println("song");
    delay(50);
    if(flag2==LOW)
    {
      digitalWrite(ENA,HIGH);
      digitalWrite(IN1,LOW);
      digitalWrite(IN2,HIGH);    
    }
  }
  else
  {
    digitalWrite(ENA,LOW);
  }
}