สารบัญ:

ถังขยะอัจฉริยะ: 9 ขั้นตอน
ถังขยะอัจฉริยะ: 9 ขั้นตอน

วีดีโอ: ถังขยะอัจฉริยะ: 9 ขั้นตอน

วีดีโอ: ถังขยะอัจฉริยะ: 9 ขั้นตอน
วีดีโอ: วิธีทำ ทำถังขยะอัตโนมัติ รุ่นอัพเกรด 2024, พฤศจิกายน
Anonim
ถังขยะอัจฉริยะ
ถังขยะอัจฉริยะ
ถังขยะอัจฉริยะ
ถังขยะอัจฉริยะ

ทำไมต้องสมาร์ทบิน?

ทุกคนมีขยะ และเป็นไปได้มากว่าทุกคนเคยประสบกับข้อโต้แย้งที่เจ็บปวดว่าใครควรทิ้งขยะและเมื่อใด เราเพิ่งทะเลาะกันในบ้านของเราเอง และตัดสินใจว่าถึงเวลาแล้วที่จะยุติความบ้าคลั่งนี้

เราได้สร้างกลไกที่จะแจ้งเตือนเราเมื่อถังขยะเต็ม หรือเมื่อถึงระดับกลิ่นแอลกอฮอล์ที่ต้องเปลี่ยนใหม่ (เช่น มีกลิ่นเหม็น) เราใช้เซ็นเซอร์สองตัว แบบหนึ่งที่ตรวจจับระดับของถังขยะในถังขยะ และอีกตัวที่ตรวจจับระดับแอลกอฮอล์ในเนื้อหาของถังขยะ เซ็นเซอร์ทั้งสองส่งข้อมูลโดยส่งการแจ้งเตือนไปยังสมาร์ทโฟนและอีเมลของเราเมื่อถึงระดับที่กำหนด

เคยต้องการที่จะเตือนเพื่อนร่วมห้อง/คู่หูของคุณอย่างไม่เต็มใจให้ทำส่วนของพวกเขาและทิ้งขยะหรือไม่? เราได้สร้างสิ่งนี้ขึ้นมาแล้ว! หากพวกเขาอยู่ที่บ้าน คุณสามารถแจ้งพวกเขาว่าถังขยะเต็ม/มีกลิ่นเหม็นด้วยการกดปุ่มบนสมาร์ทโฟนของคุณ ซึ่งจะทำให้ถังขยะมีเสียงร้องเล็กน้อย

ขนมปังและเนยที่แท้จริงของการออกแบบนี้คือเซ็นเซอร์กลิ่นเนื่องจากมองไม่เห็นกลิ่น (แต่บางครั้งก็ยากที่จะพลาด) ฟีเจอร์นี้ออกแบบมาเพื่อยกระดับประสบการณ์การกำจัดขยะของคุณอย่างมาก ดังนั้นคุณจะไม่ต้องโต้แย้งเรื่องนี้อีกต่อไป!

พวกเราคือใคร?

โครงการ IoT นี้สร้างโดย Udi Rahav และ Ran Havaletzki เราเป็นนักศึกษาวิทยาการคอมพิวเตอร์จากศูนย์สหวิทยาการ (IDC), Herzliya ประเทศอิสราเอล เราคิดแนวคิดนี้เป็นโครงการ IoT ขั้นสุดท้ายของเรา และเราภูมิใจเป็นอย่างยิ่งที่จะแบ่งปันกับคุณ

ด้านล่างนี้ คุณจะพบขั้นตอนในการดำเนินโครงการด้วยวิธีที่เรียบง่ายและเป็นมิตร เพื่อให้คุณสามารถสร้างถังขยะอัจฉริยะของคุณเองได้ สนุก!

เสบียง

ถังขยะขนาดเล็กถึงขนาดกลางแบบมีฝาปิดหรือไม่มีก็ได้

กระดาษกาว

ขั้นตอนที่ 1: อุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์

อุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์
อุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์
อุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์
อุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์
อุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์
อุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์

ฮาร์ดแวร์

Shield For NodeMcu - เปลี่ยน Breadboard เพื่อความสะดวก แต่คุณสามารถใช้ Breadboard ได้เช่นกัน

โมดูล ESP8266 Wifi

  • วิทยากร
  • LM386 แอมพลิฟายเออร์ - ใช้เพื่อทำให้ลำโพงดังขึ้น

สายจัมเปอร์

เซนเซอร์

HC-SR04 อัลตราโซนิกเซนเซอร์

MQ3 แอลกอฮอล์เซนเซอร์

ซอฟต์แวร์

  • Arduino IDE
  • แอพ Blynk
  • Adafruit io
  • IFTTT
  • Gmail
  • Google ไดรฟ์
  • Google ชีต

ขั้นตอนที่ 2: การเดินสายไฟ (Sensonr -> Breadboard)

Arduino IDE
Arduino IDE
การตั้งค่ารหัสของคุณ
การตั้งค่ารหัสของคุณ

HC-SR04 อัลตราโซนิกเซนเซอร์

  • VCC -> V+
  • ทริกเกอร์ -> D5
  • เสียงสะท้อน -> D0
  • Gnd -> G(-)

mq3 เซ็นเซอร์แอลกอฮอล์

  • A0 -> A0
  • GND -> G(-)
  • VCC -> V+

ลำโพง - เชื่อมต่อกับเครื่องขยายเสียง

  • + -> GND
  • - -> ออก

LM386 แอมพลิฟายเออร์

  • GND -> G
  • GND -> G
  • ใน -> V+
  • VCC -> D7

ขั้นตอนที่ 3: Arduino IDE

การติดตั้งและการกำหนดค่า

  1. Arduino IDE - ทำตามคำแนะนำที่นี่เพื่อดาวน์โหลด
  2. ไดรเวอร์ - ทำตามคำแนะนำที่นี่และดาวน์โหลดไดรเวอร์ CH340 จากนั้นทำตามคำแนะนำที่นี่สำหรับการติดตั้ง ESP8266 Arduino Addon

ขั้นตอนที่ 4: การตั้งค่ารหัสของคุณ

การตั้งค่ารหัสของคุณ
การตั้งค่ารหัสของคุณ

หลังจากที่คุณดาวน์โหลดโครงการ คุณจะมี 3 แท็บ

ไปที่ไฟล์ config.h

wifi_name - ชื่อ wifi ที่คอมพิวเตอร์ของคุณเชื่อมต่อกับ

wifi_password - wifi npassword ที่คอมพิวเตอร์ของคุณเชื่อมต่อกับ

BLYNK_KEY - Blynk Token ของคุณ (จากขั้นตอนที่ 4 ระยะที่ 5)

AIO_USERNAME - ชื่อผู้ใช้ Adafruit IO ของคุณ (จากขั้นตอนที่ 3 ระยะที่ 6)

AIO_KEY - คีย์ Adafruit IO ของคุณ (จากขั้นตอนที่ 3 ระยะที่ 6)

USER_EMAIL - ป้อนอีเมลของคุณที่นี่เพื่อรับการแจ้งเตือน

ขั้นตอนที่ 5: Adafruit IO

อดาฟรุต IO
อดาฟรุต IO
อดาฟรุต IO
อดาฟรุต IO
อดาฟรุต IO
อดาฟรุต IO
  1. ไปที่เว็บไซต์ Adafruit IO
  2. เข้าสู่ระบบ - หากคุณยังไม่มีบัญชี ลงทะเบียน หากคุณมีกรุณาเข้าสู่ระบบ
  3. ฟีด - ไปที่ฟีด และสร้างฟีดใหม่ 3 รายการ: ความจุถังขยะ กลิ่นถังขยะ และลำโพง
  4. แดชบอร์ด ไปที่แดชบอร์ดและสร้างแดชบอร์ดใหม่ "ถังอัจฉริยะของฉัน"
  5. บล็อก - หลังจากที่คุณสร้างแดชบอร์ดแล้ว ให้คลิกที่มัน แดชบอร์ดของคุณว่างเปล่า ไปที่ "สร้างบล็อกใหม่" (ปุ่มสีน้ำเงินเปิดโดยมี [+] อยู่) และกราฟ 3 กราฟ สำหรับแต่ละกราฟ ให้เลือกฟีดที่แตกต่างจากขั้นตอนที่ 3
  6. คีย์ AIO ของคุณ - คลิกที่ปุ่ม "YOUR AIO KEY" (สีเหลืองพร้อมคีย์) หน้าต่างใหม่จะเปิดขึ้นพร้อมชื่อผู้ใช้และคีย์ที่ใช้งานอยู่ โปรดจดชื่อผู้ใช้และรหัสที่ใช้งานอยู่ เราจะต้องใช้ในภายหลังเพื่อรวบรวมรหัส

ขั้นตอนที่ 6: Blynk

Blynk
Blynk
Blynk
Blynk
Blynk
Blynk
  1. ดาวน์โหลดแอป Blynk ไปยังโทรศัพท์ของคุณจาก App Store\Google play
  2. สร้างบัญชี Blynk - หลังจากที่คุณดาวน์โหลดแอป Blynk แล้ว คุณจะต้องสร้างบัญชี Blynk ใหม่ บัญชีนี้แยกจากบัญชีที่ใช้สำหรับฟอรัม Blynk ในกรณีที่คุณมีอยู่แล้ว
  3. สร้างโครงการใหม่ - หลังจากที่คุณลงชื่อเข้าใช้บัญชีสำเร็จแล้ว ให้เริ่มต้นด้วยการสร้างโครงการใหม่
  4. เลือกฮาร์ดแวร์ของคุณ - เลือกรุ่นฮาร์ดแวร์ที่คุณจะใช้ ในโครงการของเรา เราใช้ ESP8266
  5. Auth Token - เป็นตัวระบุเฉพาะที่จำเป็นสำหรับการเชื่อมต่อฮาร์ดแวร์ของคุณกับสมาร์ทโฟนของคุณ ทุกโครงการใหม่ที่คุณสร้างจะมี Auth Token ของตัวเอง คุณจะได้รับ Auth Token โดยอัตโนมัติในอีเมลของคุณหลังจากสร้างโครงการ คุณยังสามารถคัดลอกได้ด้วยตนเอง คลิกที่ส่วนอุปกรณ์และอุปกรณ์ที่จำเป็นที่เลือก แล้วคุณจะเห็นโทเค็น (โปรดจดไว้ เราจะต้องใช้ในภายหลังในรหัส)
  6. เพิ่มวิดเจ็ต - พื้นที่โครงการของคุณว่างเปล่า ไปที่ Widget Box และเพิ่มปุ่ม การแจ้งเตือน และอีเมล
  7. การตั้งค่าปุ่ม - พารามิเตอร์ที่สำคัญที่สุดในการตั้งค่าคือ PIN รายการพินแสดงถึงพินจริงที่กำหนดโดยฮาร์ดแวร์ของคุณ หาก SPEAKER ของคุณเชื่อมต่อกับ Digital Pin 7 - ให้เลือก D7 (D - ย่อมาจาก Digital) นอกจากนี้ โปรดเลือก PUSH MODE
  8. โครงการ Blynk ของคุณพร้อมที่จะดำเนินการแล้ว แต่ก่อนที่คุณจะคลิกเล่น ให้ทำตามขั้นตอนต่อไป
  9. สำหรับข้อมูลเพิ่มเติม โปรดไปที่คู่มือ Blynk ที่นี่

ขั้นตอนที่ 7: เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT

เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT
เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT
เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT
เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT
เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT
เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT
เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT
เชื่อมต่อ Adafruit กับ Google ชีตโดยใช้ IFTTT

IFTTT

"ถ้าเป็นอย่างนั้นหรือที่เรียกว่า IFTTT เป็นบริการบนเว็บฟรีที่สร้างกลุ่มของคำสั่งเงื่อนไขง่ายๆ เรียกว่าแอปเพล็ต แอปเพล็ตถูกกระตุ้นโดยการเปลี่ยนแปลงที่เกิดขึ้นภายในบริการเว็บอื่นๆ เช่น Gmail, Facebook, Telegram, Instagram หรือ Pinterest"

เราจะใช้บริการนี้เพื่อสร้างแอปเพล็ต ซึ่งเกิดจากการเปลี่ยนแปลงที่เกิดขึ้นภายใน Adafruit และเพื่ออัปเดต Google ชีตโดยใช้ฟังก์ชันต่างๆ เป็นตัวอย่างข้อมูลที่คุณสามารถรวบรวมได้จากข้อมูลที่เราได้รับ และสร้างข้อมูลเพิ่มเติมเกี่ยวกับถังขยะของเรา กิจวัตรประจำวัน.

1. ไปที่เว็บไซต์ IFTTT และคลิกดำเนินการต่อด้วย Google

2. ที่มุมบนขวา คลิกที่ปุ่ม "สร้าง"

3. เลือกคำสั่ง if โดยคลิกที่สี่เหลี่ยมสีดำที่มีเครื่องหมายบวกสีขาวอยู่

4. เลือกบริการ Adafruit

5. เลือกทริกเกอร์ "ช่องข้อมูลใหม่ใดๆ"

6. เลือกชื่อฟีด Adafruit ("ความจุ") - ชื่อที่คุณป้อนไปยังจอภาพของคุณ และคลิก "สร้างทริกเกอร์"

7. ไปที่ส่วน "แล้วนั้น" คลิกที่สี่เหลี่ยมสีดำที่มีเครื่องหมายบวกสีขาวอยู่

8. เลือกบริการ Google ชีต

9. เลือกการกระทำ "เพิ่มแถวในสเปรดชีต"

10. ถัดไป เปลี่ยนชื่อสเปรดชีตเพื่อรวมเฉพาะชื่อฟีดแล้วคลิก "สร้างการดำเนินการ"

11. ยืนยันแอปเพล็ตใหม่แล้วคลิก "เสร็จสิ้น"

ยินดีด้วย! คุณเพิ่งสร้างแอปเพล็ต IFTTT

ตอนนี้คุณสามารถสร้างอีกอันสำหรับฟีด "กลิ่น" โดยสร้างแอปเพล็ตใหม่และในด่าน 6 ให้เลือกชื่อฟีด Adafruit อื่น

Google ไดรฟ์

หลังจากที่คุณสร้างแดชบอร์ด Adafruit และแอปเพล็ตของ IFTTT ให้ไปที่ Google Drive>adafruit>io. ของคุณ

ข้างในคุณจะเห็นโฟลเดอร์ที่มีชื่อฟีด Adafruit ข้างในคุณจะมีสเปรดชีต

Google ชีต

หลังจากที่คุณสร้างสิ่งที่กล่าวมาทั้งหมดข้างต้นแล้ว คุณสามารถไปดูการไหลของข้อมูลในสเปรดชีตของคุณได้

นี่คือตัวอย่างฟังก์ชันที่เราสร้างขึ้นซึ่งคุณสามารถคัดลอกลงในสเปรดชีตของคุณได้

สูงสุดวันนี้ {{ชื่อฟีด}}:

=QUERY($A:$B, "select max(A) โดยที่ B มี '"&CONCATENATE(SWITCH(MONTH(TODAY()), 1, "มกราคม", 2, "กุมภาพันธ์", 3, "มีนาคม", 4, "เมษายน", 5, "พฤษภาคม", 6, "มิถุนายน", 7, "กรกฎาคม", 8, "สิงหาคม", 9, "กันยายน", 10, "ตุลาคม", 11, "พฤศจิกายน", 12, " ธันวาคม"), " ", DAY(TODAY()), ",", YEAR(TODAY()))&"'")

เฉลี่ยวันนี้ {{ชื่อฟีด}}:

=QUERY($A:$B, "select avg(A) โดยที่ B มี '"&CONCATENATE(SWITCH(MONTH(TODAY()), 1, "มกราคม", 2, "กุมภาพันธ์", 3, "มีนาคม", 4, "เมษายน", 5, "พฤษภาคม", 6, "มิถุนายน", 7, "กรกฎาคม", 8, "สิงหาคม", 9, "กันยายน", 10, "ตุลาคม", 11, "พฤศจิกายน", 12, " ธันวาคม"), " ", DAY(TODAY()), ",", YEAR(TODAY()))&"'")

เดือนสูงสุด {{ชื่อฟีด}}:

=QUERY($A:$B, "select max(A) โดยที่ B มี '"&CONCATENATE(SWITCH(MONTH(TODAY()), 1, "มกราคม", 2, "กุมภาพันธ์", 3, "มีนาคม", 4, "เมษายน", 5, "พฤษภาคม", 6, "มิถุนายน", 7, "กรกฎาคม", 8, "สิงหาคม", 9, "กันยายน", 10, "ตุลาคม", 11, "พฤศจิกายน", 12, " ธันวาคม"), " "&"'"))

เดือนเฉลี่ย {{ชื่อฟีด}}:

=QUERY($A:$B, "select avg(A) โดยที่ B มี '"&CONCATENATE(SWITCH(MONTH(TODAY()), 1, "มกราคม", 2, "กุมภาพันธ์", 3, "มีนาคม", 4, "เมษายน", 5, "พฤษภาคม", 6, "มิถุนายน", 7, "กรกฎาคม", 8, "สิงหาคม", 9, "กันยายน", 10, "ตุลาคม", 11, "พฤศจิกายน", 12, " ธันวาคม"), " "&"'"))

ขั้นตอนที่ 8: ผังโครงการ

แนะนำ: