智能晾衣架(二)--功能实现

news/2024/11/28 22:40:00/

本文素材来源于红河学院 工学院

作者:赵德森  张艺锦  潘志慧  曹紫康

指导老师:江洁  张龙超

1. 自动升降功能

       我们设计时采用了热释电传感器(人体红外传感器),在热释电传感器感应到有人靠近时,晾衣架通过四杆机构自动下降到合适人身高的位置,这时人们便可以开始悬挂衣物,在悬挂结束后使用者只需走出相应位置,晾衣架就能自动升高到适合晾晒的位置并开始晾晒。

2. 原地晾晒功能

       通过电机来作为动力原件,滑轨作为执行装置,单片机作为控制。让人们在衣服晾晒过程中,晾晒上一件衣物后只需要按动相对的按钮,滑轨便会移动一定距离,从而使得人们在原地经行晾晒,但衣服就能挂满整个阳台。而对于大型衣服(床单、被套等)的晾晒,原地晾衣也能提供极大的便利,在晾晒时人们只需要先挂上大型衣物其中的一角,再按动按钮让其移动到相应位置,再挂上另外一角便可。

 

3. 自动找光功能

       为节约成本,我们采用自然光(太阳光)来代替紫外线灯。在设计中,我们采用了光强传感器和丝杆相连接,让我们的晾衣系统可以通过丝杆进行整体移动,在通过光强传感器找到光线最强的位置就停止,从而保证衣物能得到充足的阳光照射和杀菌。

 

4. 自动避雨功能

       在日常生活中,衣物在晾晒过程中可能会出现极端暴雨天气,在这种天气下,原本已经晾晒好的衣物很容易受到雨水的侵蚀,因此我们通过雨滴传感器设计了自动避雨功能,让衣服在晾晒时候免受雨水等极端天气的侵蚀。

 

5. 一键收衣功能

       为给使用者提供收取衣物的方便,我们设计了一键收衣功能,通过滑轨与凸轮配合使用,让使用者避免了繁琐的收衣过程,在使用中只需要按动相应按钮就能完成衣物的收取,为使用者提供了极大的便利。 

 6. 样机设计及调试

       本作品设计的智能晾衣架一共使用了5个电机和1个舵机带动相应的传动机构进行配合运动,从而实现智能晾衣架的晾晒和收取更加智能化。电机与丝杆和四杆机构相结合控制了晾衣架的升降和伸缩等动作。其中电机带动四杆机构带动晾衣架的升降,丝杆则带动晾衣架水平伸出与收回。传感器与单片机进行配合,单片机控制着机械结构,根据自己的需求和环境的变化来控制晾晒过程,大大减少了人们在晾晒衣物上面的精力,做到了省时省力。而雨滴传感器和光强传感器在晾晒过程中实时反馈着晾晒环境给单片机,使单片机可以及时应对突发情况。

       本作品设计的智能晾衣架样机整体为大框架式结构,整体均由亚克力材料搭接而成,从结构的紧凑性和空间利用率来看,可能会存在一定的不足。

7. 程序代码

       我们的晾衣架通过机械机构与单片机的结合做到了晾衣、找光、躲雨、一键收衣智能化的晾衣架,解决了人们日常生活的困扰,做到了深省时省力,将日常生活的“琐事”与现代科技想融合。以下就是智能晾衣架的相关程序。

(1) 自动升降、原地晾衣、一键收衣部分

#include <Servo.h>

Servo servo_pin_3;

void setup()

{

  pinMode( 17, INPUT);

  pinMode( 18, INPUT);

  pinMode( 16, INPUT);

  pinMode( 14, INPUT);

  servo_pin_3.attach(3);

  pinMode( 5 , OUTPUT);

  pinMode( 6 , OUTPUT);

  pinMode( 9 , OUTPUT);

  pinMode( 10 , OUTPUT);

}

void loop()

{

  if (!( digitalRead(16) ))

  {

    servo_pin_3.write( 4 );

    delay( 500 );

    digitalWrite( 5 , HIGH );

    digitalWrite( 6 , LOW );

    delay( 10000 );

  }

  else

  {

    servo_pin_3.write( 90 );

    digitalWrite( 5 , LOW );

    digitalWrite( 6 , LOW );

  }

  if (!( digitalRead(18) ))

  {

    digitalWrite( 9 , HIGH );

    digitalWrite( 10 , LOW );

    if (!( digitalRead(17) ))

    {

      digitalWrite( 9 , LOW );

      digitalWrite( 10 , LOW );

    }

  }

  else

  {

    digitalWrite( 9 , LOW );

    digitalWrite( 10 , HIGH );

    if (!( digitalRead(14) ))

    {

      digitalWrite( 9 , LOW );

      digitalWrite( 10 , LOW );

    }

  }

}

 (2)自动避雨、自动找光部分

void setup()

{

  pinMode( 17, INPUT);

  pinMode( 16, INPUT);

  pinMode( 14, INPUT);

  pinMode( 5 , OUTPUT);

  pinMode( 6 , OUTPUT);

  pinMode( 9 , OUTPUT);

  pinMode( 10 , OUTPUT);

}

void loop()

{

  if (!( digitalRead(14) ))

  {

    if (!( digitalRead(17) ))

    {

      digitalWrite( 5 , LOW );

      digitalWrite( 6 , LOW );

    }

    else

    {

      digitalWrite( 5 , HIGH );

      digitalWrite( 6 , LOW );

    }

  }

  else

  {

    if (( ( analogRead(18) ) > ( 870 ) ))

    {

      digitalWrite( 5 , LOW );

      digitalWrite( 6 , LOW );

    }

    else

    {

      if (!( digitalRead(17) ))

      {

        digitalWrite( 5 , LOW );

        digitalWrite( 6 , HIGH );

        delay( 9000 );

      }

      else

      {

        digitalWrite( 5 , HIGH );

        digitalWrite( 6 , LOW );

      }

    }

  }

  if (!( digitalRead(16) ))

  {

    digitalWrite( 9 , HIGH );

    digitalWrite( 10 , LOW );

    delay( 800 );

  }

  else

  {

    digitalWrite( 9 , LOW );

    digitalWrite( 10 , LOW );

}

 关于智能晾衣架的完整内容可参考智能晾衣架

-----------------------------------------------完结---------------------------------------------------


http://www.ppmy.cn/news/296324.html

相关文章

银行vr元宇宙全景虚拟展馆提供更加真实、立体、高效的数字资产交易场景

为了贯彻国家普惠金融政策&#xff0c;使金融如无惠及广大群体,宇宙技术在金融行业中的应用将进一步提升金融消费体验感觉和金融管理水平。打造元宇宙金融服务平台&#xff0c;构建虚实结构的金融服务世界&#xff0c;培育和管理好数字机器人员工队伍&#xff0c;提升金融业务各…

XXL-JOB任务分片

文章目录 任务类型任务配置路由策略阻塞处理策略&#xff1a; 单个任务和集群任务单机多任务分片集群分片 任务类型 单个任务&#xff1a;一个任务实例便可完成 单机单任务&#xff1a;单机模式下任何路由模式都只有一个实例执行 集群单任务&#xff1a;由路由策略(广播模式除…

图论 (Java) 从入门到入土 /第一部分 图的基础-图的表示/

零.前言 图&#xff0c;是一种比较复杂的数据结构。和树的一个节点只和上层一个节点相连不同&#xff0c;在图中&#xff0c;任意两个节点都可能相连&#xff0c;且可能具有方向性&#xff0c;并且节点的边具有权重&#xff0c;因此&#xff0c;图被用于描述各种复杂的数据对象…

新一批高考毕业生即将迈入大学校园,作为前辈想要对即将进入本专业学习的后辈们分享

提醒&#xff1a;在发布作品前&#xff0c;请把不需要的内容删掉。 基于高考毕业生都是本行业的“萌新”&#xff0c;请你以较为通俗的语言介绍当前IT行业的发展和前景&#xff0c;提出IT专业的重要性&#xff0c;并预告本文将介绍的一些小tips&#xff0c;帮助高考生选择适合…

【大数据学习番外篇之爬虫2】爬虫入门简单例子

目录 1. 图片爬取 2. 破解百度翻译 3. 豆瓣电影爬取 4. 肯德基餐厅位置爬取 1. 图片爬取 通过以下代码我们可以看到图片已经爬取进入虚拟机里面。 # -*- coding: utf-8 -*- import re import requests from urllib import error from bs4 import BeautifulSoup import os…

2021单机游戏排行榜前十名

提供十大PC单机游戏排行榜前十名下载,以及推荐各类型2021单机游戏排行榜前十名&#xff0c;单机游戏排行榜大全汇集了所有的十大pc单机游戏榜下载资源&#xff0c;不断更新… 生化危机8&#xff1a;村庄 Resident Evil Village 鬼谷八荒 人类 神佑释放 怪物猎人物语2&#xff1…

shell脚本删除不带错误日志的文件

#!/bin/bash#查找带.log结尾的文件 #datals -l ./*.log| awk {print $9} datals ./*.log|cut -f 1for i in $data;doerrcat $i|grep error if [ -z "$err" ];thenecho $i,"[ok-del]"#使用的时候取消下面代码前面的##rm -f $i elseecho $i,"[error]&qu…

如何做好功能测试,看这几点就够了

关于新人如何做好功能测试&#xff0c;以下是我个人的一些思考。 01、测试基础的重要性 作为一名测试新人&#xff0c;测试基础非常非常重要。这里说的基础&#xff0c;不仅仅是什么是软件测试、软件测试的目的&#xff0c;而是测试用例的设计能力。 因工作的原因&#xff0…