所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开
【娱&柠】智能晾衣架
吴春芳 吴春芳 2019-07-14 22:08:13
0
0
简单

# 项目介绍 #

          晾衣服是每个家庭的日常家务,看似很小的事情,但是确实苦恼颇多。对于属于上班族的妈妈们来说,经常为突然的降雨而坐立不安。我俩就想如果能为妈妈做点什么就好了,这不刚学习了创客,先做个模型试试,或许真的可以由工厂生产呢!

        我们设计的智能晾衣架有三种模式:

       (1)手动模式。通过两个按钮来操控实现晾衣服和收衣服。现在一想,我们利用一个按钮也够了。当时做作品时,编程水平还低,原谅原谅自己!

       (2)遥控模式。通过一个红外遥控器控制晾衣杆的收放,比如在厨房做饭时,突然下雨了,就不用手足无措了。

       (3)智能模式。天黑了,自动收衣服。下雨了,自动收衣服。


        下面是演示视频:

材料清单 材料清单
1x
Arduino Uno主控板
1x
IO扩展板
2x
舵机
1x
光线传感器
1x
雨滴传感器
1x
红外遥控模块(套)
2x
按键开关

# 编程软件 #    米思齐0.998



步骤1 步骤1
制定方案

两人讨论交流,制定制作方案,包括要实现的功能、需要使用的硬件和其他材料、工具、程序流程图等。

projectImage
步骤2 步骤2
准备材料

根据方案,准备所需的硬件和其他材料:1块Arduino主控板、1块扩展板、2个舵机、1个光线传感器、1个雨滴传感器、1套红外遥控模块、2个按键开关、若干根小木棒、瓦楞纸、杜邦线。

projectImage
步骤3 步骤3
硬件搭建

将扩展板安装到Arduino主控板上,然后将其他元件连接到扩展板上。

projectImage
projectImage
步骤4 步骤4
编写程序

利用Mixly0.998软件编写程序,测试硬件连接是否正确,并编写项目程序。

projectImage
projectImage
步骤5 步骤5
晾衣架制作、硬件安装

使用一个废弃纸盒做底座,用于封装电子元件及固定支架。

projectImage

利用小木棒制作晾衣架的支架。

projectImage

将舵机通过热熔胶固定在支架上,进行阶段性测试。

projectImage
步骤6 步骤6
制作阳台、安装雨滴传感器、光线传感器

用瓦楞纸制作阳台模型。

projectImage
projectImage
步骤7 步骤7
调试、美化
projectImage
projectImage
代码 代码
	                    					#include <Servo.h>
#include <IRremote.h>

long ir_item;

Servo servo_4;
Servo servo_5;
void 收衣服() {
  servo_4.write(135);
  delay(0);
  servo_5.write(130);
  delay(0);
  delay(500);
  servo_4.write(105);
  delay(0);
  servo_5.write(100);
  delay(0);
  delay(500);
  servo_4.write(85);
  delay(0);
  servo_5.write(80);
  delay(0);
}

void 晒衣服() {
  servo_4.write(105);
  delay(0);
  servo_5.write(100);
  delay(0);
  delay(500);
  servo_4.write(135);
  delay(0);
  servo_5.write(130);
  delay(0);
  delay(500);
  servo_4.write(165);
  delay(0);
  servo_5.write(160);
  delay(0);
}

IRrecv irrecv_8(8);
decode_results results_8;

void setup(){
  servo_4.attach(4);
  servo_5.attach(5);
  Serial.begin(9600);
  irrecv_8.enableIRIn();
  收衣服();
  pinMode(2, INPUT);
  pinMode(3, INPUT);
}

void loop(){
  if (irrecv_8.decode(&results_8)) {
    ir_item=results_8.value;
    String type="UNKNOWN";
    String typelist[14]={"UNKNOWN", "NEC", "SONY", "RC5", "RC6", "DISH", "SHARP", "PANASONIC", "JVC", "SANYO", "MITSUBISHI", "SAMSUNG", "LG", "WHYNTER"};
    if(results_8.decode_type>=1&&results_8.decode_type<=13){
      type=typelist[results_8.decode_type];
    }
    Serial.print("IR TYPE:"+type+"  ");
    Serial.println(ir_item,HEX);
    if (ir_item == 0xFF30CF) {
      晒衣服();

    }
    if (ir_item == 0xFF18E7) {
      收衣服();

    }
    irrecv_8.resume();
  } else {
  }
  Serial.println(analogRead(A0));
  Serial.println(analogRead(A1));
  if (analogRead(A0) < 800) {
    servo_4.write(85);
    delay(0);
    servo_5.write(80);
    delay(0);

  }

  if (analogRead(A1) > 600) {
    servo_4.write(85);
    delay(0);
    servo_5.write(80);
    delay(0);

  }
  if (digitalRead(2) == 0) {
    收衣服();

  }
  if (digitalRead(3) == 0) {
    晒衣服();

  }

}
	                    				
Makelog作者原创文章,未经授权禁止转载。
0
0
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
[[c.comment_content]]