久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 16123|回復: 6
收起左側

Arduino自動化智能垃圾桶制作,感應開合 附程序

  [復制鏈接]
ID:472844 發表于 2019-7-20 09:31 | 顯示全部樓層 |閱讀模式
現在正在大力推進垃圾分類投放,這是一個很有意義但是卻需要投入大量精力的過程,作為一個工程師,我能做些什么,于是,我想到了制作一個簡易的智能垃圾桶,可以感應到人的靠近,自動打開和關閉垃圾桶。

制作出來的實物圖如下:
1231231.png 2.jpg
硬件組件:

·       跳線(通用)×16

·       SG90微伺服電機×1

·       超聲波傳感器 - HC-SR04(Generic)×2

·       面包板(通用)×1

·       ArduinoUNO和Genuino UNO×1

·       EspressifESP8266 ESP-01×1

軟件應用程序和在線服務:

·       Blynk

·       ArduinoIDE

手動工具和制造機器:

·       熱膠槍(通用)

·       膠帶


我對這個項目的期望是,當我靠近這個垃圾桶,我不需要踩腳踏或者其他動作就可以打開垃圾桶,這樣子可以幫助我們更加衛生的處理生活垃圾。

Arduino源程序如下:
  1. #define BLYNK_PRINT Serial          // Blynk
  2. #include <ESP8266WiFi.h>            // WIFI
  3. #include <BlynkSimpleEsp8266.h>     
  4. #include<Servo.h>                 //Servo SG90
  5. char auth[] = "483e2a27dc3b4fdcb5108b*******";   // token
  6. char ssid[] = "J**** Sidh***";  // SSID WIFI
  7. char pass[] = "190****";   // PASSWORD WIFI
  8. Servo servo;
  9. #define trigPin 13 //Ultrasonic1
  10. #define echoPin 12 //Ultrasonic1
  11. #define trigPin2 5 //Ultrasonic2
  12. #define echoPin2 4 //Ultrasonic2
  13. #define LED 2 //LED WIFI
  14. #define BLYNK_MAX_SENDBYTES 256 //256 Bytes

  15. void setup()
  16. {
  17.   Serial.begin (9600);
  18.   pinMode(trigPin, OUTPUT);     //Ultrasonic1
  19.   pinMode(echoPin, INPUT);      //Ultrasonic1
  20.   pinMode(trigPin2, OUTPUT);    //Ultrasonic2
  21.   pinMode(echoPin2, INPUT);     //Ultrasonic2
  22.   pinMode(LED, OUTPUT);         //LED
  23.   servo.attach(16);       //Servo
  24.   Blynk.begin(auth, ssid, pass);
  25.   Blynk.email("josie**************@gmail.com", "TrashBin", "Online."); // Test Online Email Sent
  26.   Blynk.notify("Tong Sampah Sudah Online"); //Notify Trash Online
  27.   servo.write(210); // Starting Position Servo
  28. }
  29. void loop()
  30. {
  31.   Blynk.run();
  32.   
  33.    //Ultrasonic1
  34.   long duration, distance;      
  35.   digitalWrite(trigPin, LOW);        
  36.   delayMicroseconds(2);              
  37.   digitalWrite(trigPin, HIGH);
  38.   delayMicroseconds(10);           
  39.   digitalWrite(trigPin, LOW);
  40.   duration = pulseIn(echoPin, HIGH);
  41.   distance = (duration/2) / 29.1;
  42.   Blynk.virtualWrite(V1, distance); //Level
  43.   //Ultrasonic1
  44.                                  
  45.   //Ultrasonic2                                    
  46.   long duration2, distance2;        
  47.   digitalWrite(trigPin2, LOW);        
  48.   delayMicroseconds(2);              
  49.   digitalWrite(trigPin2, HIGH);
  50.   delayMicroseconds(10);           
  51.   digitalWrite(trigPin2, LOW);
  52.   duration2 = pulseIn(echoPin2, HIGH);
  53.   distance2 = (duration2/2) / 29.1;
  54.   Blynk.virtualWrite(V2, distance2); //Level   
  55.   //Ultrasonic2

  56.   // Open Automation
  57.   if (distance >= 30 || distance <= 0)    //Condition when trash open and close automatically
  58.   {
  59.     Serial.println("Out of range");
  60.     servo.write(210);  //menutup
  61.     if (distance2 >= 6 || distance2 <= 0)  //Condition When Trash close reading full or not
  62.     {
  63.       Serial.print(distance2);
  64.       Serial.println(" cm2");
  65.       digitalWrite(LED, HIGH);
  66.       delay(500);
  67.     }
  68.     else
  69.     {
  70.       digitalWrite(LED, LOW);
  71.       delay(3000);
  72.       Serial.println("FULL");
  73.       Blynk.email("jo********@gmail.com", "Subject: TrashBin", "Full"); //if trash full will sending you email every 15minutes
  74.       Blynk.notify("Hey, Tong Sampah Penuh Segera Dikosongkan"); //Notify if trash full with blynk
  75.     }
  76.   }
  77.   else
  78.   {
  79.     Serial.print(distance);
  80.     Serial.println(" cm");
  81.     servo.write(60);      //Open trash
  82.     delay(5000);      //Delay open trash
  83.   }
  84.   delay(500); //Reading hands
  85. }
  86. //Open Automation

  87.   //Open Manually
  88.   BLYNK_WRITE(V3)
  89.   {
  90.   servo.write(param.asInt());//open
  91.   delay(5000);
  92.   }
  93.   BLYNK_WRITE(V5)
  94.   {
  95.    servo.write(param.asInt());
  96.    delay(5000);
  97.   }
  98.   //Open Manually
復制代碼

以上代碼下載:
智能垃圾桶.zip (23.19 KB, 下載次數: 287)




評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:428400 發表于 2019-8-2 18:58 | 顯示全部樓層
不錯,你是一個有想法的人!
回復

使用道具 舉報

ID:660320 發表于 2019-12-10 09:52 | 顯示全部樓層
我太佩服您啦!  師傅,我可不可以私下聯系您呀!
回復

使用道具 舉報

ID:684367 發表于 2020-1-26 23:07 | 顯示全部樓層
可不可以研究一下語音互動的垃圾桶智能分類
回復

使用道具 舉報

ID:779879 發表于 2020-6-15 13:35 | 顯示全部樓層
非常好
回復

使用道具 舉報

ID:452731 發表于 2020-6-27 22:36 | 顯示全部樓層
真的很好!學到了很多
回復

使用道具 舉報

ID:908153 發表于 2021-4-19 09:24 | 顯示全部樓層
很多作品
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品美女久久久久aⅴ国产馆 | 欧美一级毛片免费观看 | 亚洲精品在线视频 | 国产精品视频一区二区三区四区国 | 四虎永久免费地址 | 蜜月aⅴ免费一区二区三区 99re在线视频 | 久久一视频| 日韩一区二区三区在线视频 | av手机免费在线观看 | 日韩高清在线观看 | 欧美久久国产 | 一级a性色生活片久久毛片波多野 | 91国语清晰打电话对白 | 国产在线观看一区二区 | 成人激情免费视频 | 久久成人av| caoporn国产 | 久久久久久久久久一区 | 超碰av人人| 中日韩欧美一级片 | 国产精品成人一区二区 | 国产欧美一区二区三区在线看蜜臀 | 成人在线观看网址 | 男人天堂网站 | 亚洲一级淫片 | 久久精品二区 | aaaaaaa片毛片免费观看 | 伊人伊人| 国产免费一区二区 | 久久久精品欧美 | 国产h在线| 欧美精品久久久 | 成人av观看 | 男人天堂久久 | 毛片网站在线观看 | 91免费在线视频 | 久久久成人免费视频 | 欧洲免费视频 | 成人免费小视频 | 精产国产伦理一二三区 | 亚洲超碰在线观看 |