回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页
best-icon

历时三个月!从1.0到2.0理工男自制<自动洗衣粉机> 简单

头像 阿偶 2021.09.05 2502 4

【导读】你的业余时间都在做什么呢?阿偶,历时三个月自制自动洗衣粉机从1.0到2.0(每天的业余时间只有一个半钟的时间),从手绘结构草图——元器件的选用——电路板的设计——程序的编写和调试——外观结构的设计——整体调试;1.0的失败差点令我放弃,中间思考了一段时间,直到2.0成功出现在卫生间……..

【项目介绍】

自小编的上一个作品自动洗手液泡沫机,万万没想到我们一线员工竟然用不起洗手液,那用什么?用…..用不伤手的立白洗衣粉呗!你一抓我一抓,浪费不说还洒了一地;呃???自动洗衣粉机可以有!

project-image
project-image

步骤1 流程图如下

project-image

材料清单

  • DFRobot Beetle控制器 X1 链接
  • DFROBOT出品 42步进电机 X1 链接
  • DRV8825步进电机驱动 X1 链接
  • DRV8825步进电机驱动器扩展板 X1 链接
  • DFROBOT红外数字避障传感器 X1 链接
  • AMS1117-5.5电源模块 X2 链接
  • 小轴承6*12*4mm X1 链接
  • 小轴承5*11*4mm X1 链接
  • 微型直流震动马达3V X1 链接
  • 12V2A开关电源 X1 链接
  • 不锈钢角码调节长孔 X2 链接
  • DC2.1母座 X1
  • 切断式洞洞板 X2

1、Beetle是DFRobot专门为电子制作爱好者和工作坊设计的微型Leonardo控制器

2、DFROBOT出品 42步进电机,这是一款带减速箱的步进电机,采用常规的8mm外径D型输出轴,电机步距角1.8°,额定电压2.78V,额定电流1.6A/相,静转矩3600g·cm,配减速比5.18的行星减速箱,外形尺寸为42×42×40mm,安装面板4个M3的安装螺纹孔,安装简便可靠,可应用于各种自动化控制系统

3、DRV8825步进电动机驱动器具有高达45V的输出驱动能力,可让您控制一个双极步进电动机,每个线圈的最大输出电流为2.2A

4、3v震动马达可加速帮助洗衣粉的掉落

5,电池可有可无,由于小编厂里的卫生间没有市电插头,所以加了个电池

步骤2 电路板焊接

小编不是很擅长电路图的绘制,手绘版的请笑纳

project-image
project-image
project-image

步骤3 转轴的加工

project-image

磨床加工

project-image
project-image

火花机加工

project-image

步骤4 外壳的设计与打印

project-image
project-image
project-image

3D打印

这盖子是不是有点眼熟呢!!

project-image
project-image
project-image
project-image

步骤5 组装

project-image
project-image
project-image
project-image
project-image
project-image
project-image

容量为550克

project-image
project-image

程序

代码
const int EnPin = A0;                           //步进电机使能引脚
const int DirPin =A1;                           //步进电机方向引脚
const int StepPin = A2;                         //步进电机脉冲引脚
const int IrPin = 9;                            //红外传感器信号引脚
const int LedPin = 10;                          //LED工作指示引脚
const int VibMotoPin = 11;                     //震动电机引脚
const unsigned int stepsPerRevolution = 33151;  //转一圈所需的脉冲数,计算方法:1度的需的脉冲数=一圏(360度)/步距角(1.8度)
                                                //  =200*电机的减速比(5.18:1)=1036*DRV8825细分数(1/32)=33152
const int Angle = 4143;                         //45度所需的脉冲数

void setup(){
  pinMode(StepPin,OUTPUT);                      //步进电机脉冲引脚设置为输出模式
  pinMode(DirPin,OUTPUT);                       //步进电机方向引脚设置为输出模式
  pinMode(EnPin,OUTPUT);                        //步进电机使能引脚设置为输出模式
  pinMode(IrPin,INPUT_PULLUP);                  //红外传感器设置为上拉模式
  pinMode(LedPin,OUTPUT);                       //LED设置为输出模式
  pinMode(VibMotoPin,OUTPUT);                  //震动电机设置为输出模式
  digitalWrite(EnPin,HIGH);                     //步进电机初始化为停止
  digitalWrite(LedPin,HIGH);                    //LED初始化为关灯
  digitalWrite(VibMotoPin,LOW);                //震动电机初始分为停止
}

void loop(){
  if(!digitalRead(IrPin)){                      //读取红外传感器
    digitalWrite(LedPin,LOW);                   //LED灯亮
    digitalWrite(VibMotoPin,HIGH);              //震动电机工作
    digitalWrite(EnPin,LOW);                    //使能步进电机
    digitalWrite(DirPin,LOW);                  //步进电机正转
    for(int x=0; x<Angle; x++){
      digitalWrite(StepPin,HIGH);
      delayMicroseconds(100);
      digitalWrite(StepPin,LOW);
      delayMicroseconds(100);
    }
   digitalWrite(LedPin,HIGH);                   //LED灯灭
   digitalWrite(VibMotoPin,LOW);                //震动电机停止
   while(!digitalRead(IrPin));                  //等待手放开
   delay(1000);                                 //延迟1秒,防止手未完全放开又触发
  }else
    digitalWrite(EnPin,HIGH);                   //无任何操作时电机停止
    digitalWrite(LedPin,HIGH);                   //LED灯亮
    digitalWrite(VibMotoPin,LOW);              //震动电机工作
}

上视频

【项目总结】

1、没有对洗衣粉余量的检测,可在适当位置加上红外对射传感器时刻检测洗衣粉的余量

2、没有让洗衣粉保持干燥,可在盖子上加上干燥剂和密封圈来实现对洗衣粉的干燥

3、在制作的过程中,我也遇到了很多问题,然后通过找资料把问题一个个的解决,不过最后看到完整的作品诞生,而且是能够和大家一起分享,也很有成就感,这就是创客的精神

【相关资源】

最后分享程序源文件和外壳的stl文件

评论

user-avatar
  • dafeng388

    dafeng3882023.10.30

    作品很有创意,我们可以谈Q66406915

    0
    • 杨阔

      杨阔2021.10.10

      外壳文件有没

      1
      • 阿偶

        阿偶2021.10.24

        有的

    • 许培享

      许培享2021.09.09

      漂亮

      0