สารบัญ:

โครงการ Totoro - IoT & MQTT & ESP01: 7 ขั้นตอน (พร้อมรูปภาพ)
โครงการ Totoro - IoT & MQTT & ESP01: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: โครงการ Totoro - IoT & MQTT & ESP01: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: โครงการ Totoro - IoT & MQTT & ESP01: 7 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Indoor Location Positioning System using ESP32 UWB (Ultra Wideband) Module 2024, พฤศจิกายน
Anonim
โครงการ Totoro - IoT & MQTT & ESP01
โครงการ Totoro - IoT & MQTT & ESP01
โครงการ Totoro - IoT & MQTT & ESP01
โครงการ Totoro - IoT & MQTT & ESP01

โครงการ Totoro เป็นโครงการ IoT ที่ดีที่คุณสามารถคัดลอกในรูปแบบต่างๆ ได้มากมาย

การใช้บอร์ด ESP01 ด้วยโปรโตคอล MQTT คุณสามารถสื่อสารสถานะของปุ่มไปยังโบรกเกอร์ MQTT (ในกรณีของฉัน AdafruitIO)

คำแนะนำที่เป็นประโยชน์สำหรับ MQTT และ Adafruit:

คุณสามารถใช้ทุกโบรกเกอร์ MQTT ที่คุณต้องการและเหมือนกันสำหรับฟังก์ชันปุ่ม

มันทำงานอย่างไร?

อุปกรณ์ทุกเครื่องในเครือข่ายเชื่อมต่อที่ MQTT Broker และอ่านช่องชื่อ "love_box"

เมื่อคุณกดปุ่มบนอุปกรณ์เครื่องหนึ่ง เครื่องจะส่งข้อความในช่อง และอุปกรณ์อื่นๆ จะกะพริบไฟ LED จนกว่าคุณจะไม่กดปุ่ม เครื่องจะกะพริบ

ด้วยระบบนี้ คุณสามารถส่ง "เสียงแหลม" เล็กน้อยไปยังอุปกรณ์อื่นได้

ขั้นตอนที่ 1: วัสดุ

วัสดุ
วัสดุ
วัสดุ
วัสดุ
วัสดุ
วัสดุ

ในการสร้างโครงการนี้คุณต้องมีสิ่งต่อไปนี้:

  1. บอร์ด ESP01

    มีประโยชน์ - โปรแกรมเมอร์สำหรับ ESP01 (DIY)

  2. โมเดล 3 มิติ

    1. โทโทโร่ - https://goo.gl/n3mAsi -
    2. Meshmixer - https://goo.gl/qqMzh - สำหรับสร้างโมเดล 3D ต่างๆ
  3. ชิ้นส่วนอิเล็กทรอนิกส์

    1. ตัวควบคุมแรงดันไฟฟ้า LM317
    2. ตัวต้านทาน: 150ohm, 270ohm, 10K และ 68ohm.
    3. ตัวเก็บประจุ: 10uF
    4. ไฟ LED - หรือไฟ LED ภายใน -
    5. สวิตช์ปุ่มกดขนาดเล็ก
  4. ประสาน
  5. โปรโตบอร์ด
  6. ส่วนหัวหญิง
  7. ฟิลาเมนต์ 3 มิติโปร่งใส
  8. แหล่งจ่ายไฟ

    ขั้วต่อ BNC - https://goo.gl/DrD8k2 -

  9. บางสาย

ขั้นตอนที่ 2: สร้าง Protoboard

ทำโปรโตบอร์ด
ทำโปรโตบอร์ด
ทำโปรโตบอร์ด
ทำโปรโตบอร์ด
ทำโปรโตบอร์ด
ทำโปรโตบอร์ด
ทำโปรโตบอร์ด
ทำโปรโตบอร์ด

พลังสำหรับบอร์ด:

นำโปรโตบอร์ดและประสานส่วนประกอบตามรูปแรก

การกำหนดค่านี้อนุญาตให้ LM317 - https://goo.gl/VtzNz - ผลิตไฟฟ้าได้ประมาณ 3.4 โวลต์สำหรับ ESP01

คำถาม: ทำไมฉันถึงใช้ LM7805 ไม่ได้?

คำตอบ: LM780x ซีรีส์ไม่ทำงานภายใต้ 5 โวลต์และไม่สามารถผลิต 3.3 โวลต์ได้

เมื่อเสร็จแล้ว ให้ตรวจสอบแรงดันไฟขาออกด้วยมัลติมิเตอร์ จะต้องมีขนาดประมาณ 3.4 โวลต์และ 4.3 โวลต์

สำหรับแหล่งจ่ายไฟ คุณสามารถใช้แหล่งจ่ายไฟ 5V หรือใหญ่กว่าได้ ขอแนะนำว่าอย่าใช้ไฟเกิน 9 โวลท์ มันปล่อยความร้อนออกมามาก - สูญเสียพลังงาน - !

คณะกรรมการ:

ESP01 เป็นบอร์ดของซีรีส์ ESP ซึ่งมีขนาดเล็กและใช้งานได้จริง แต่ไม่เป็นมิตรกับผู้ใช้มากนัก

โปรดจำไว้ว่า คุณไม่สามารถใช้พิน Arduino เพื่อสื่อสารโดยตรงกับ ESP01 ได้ เนื่องจากเป็นพินที่ทนทานต่อแรงดันไฟฟ้า 3.3 โวลต์

มีประโยชน์มากในการสร้างโปรแกรมเมอร์สำหรับการเขียนโปรแกรม ESP01 ด้วย FTDI:

ใช้ภาพที่สองเป็นแนวทางและจดจำฟังก์ชันหมุดพิเศษ ภาพที่สาม เห็นในคำแนะนำด้านบน

สำหรับข้อมูลเพิ่มเติม โปรดอ่านขั้นตอน 1° ของคู่มือนี้:

หากคุณเป็นคนอิตาลี คุณสามารถอ่านคำแนะนำของฉันสำหรับ ESP01 และ FTDI DIY:

เสร็จสิ้น Protoboard:

ภาพที่สี่คือเสร็จสิ้นโครงการบนโปรโตบอร์ด

ฉันขอแนะนำ Female Headers สำหรับเชื่อมต่อบอร์ดกับโปรโตบอร์ด ในกรณีที่เกิดข้อผิดพลาด คุณสามารถเชื่อมต่อบอร์ดอื่นใหม่ได้

อย่าเชื่อมต่อปุ่มและตัวต้านทานของเธอ เราจะทำหลังจากนั้น

ขั้นตอนที่ 3: โบรกเกอร์ MQTT - Adafruit IO

โบรกเกอร์ MQTT - Adafruit IO
โบรกเกอร์ MQTT - Adafruit IO
โบรกเกอร์ MQTT - Adafruit IO
โบรกเกอร์ MQTT - Adafruit IO

MQTT Broker เป็น "เซิร์ฟเวอร์" สำหรับข้อความทั้งหมดของคุณจากและไปยังอุปกรณ์ ให้ดูภาพแรก

สำหรับข้อมูลเพิ่มเติม โปรดใช้คู่มือที่มีประโยชน์นี้:

ในกรณีของฉัน ฉันใช้ Adafruit IO แต่คุณสามารถใช้โบรกเกอร์ MQTT ทุกรายการที่คุณต้องการ

ไปที่ Adafruit IO และทำการลงทะเบียน

ตอนนี้คุณต้องสร้างแดชบอร์ดใหม่และ:

  • เพิ่มฟีด - https://goo.gl/z2Npto -

    สำหรับรหัสของฉันคือ "love_box"

  • เพิ่มบล็อค - https://goo.gl/YJsCqX -

    • ปุ่มชั่วขณะ: ลิงก์ไปยัง "love_box" โดยกด Value = 1 และ Release Value = 0
    • กราฟเส้น: ลิงก์ไปยัง "love_box" โดยมีแกน Y ขั้นต่ำ = 0 และแกน Y สูงสุด = 2

ในตอนท้ายคุณจะมีบางอย่างเช่นภาพที่สอง

คำถาม: ทำไมชื่อ "love_box" ในแดชบอร์ดจึงสำคัญ?

คำตอบ: ใน MQTT Broker - Ada IO - คุณสร้างช่องชื่อ "love_box" และหากในรหัสที่คุณใช้ช่องอื่น MQTT จะไม่ทำงาน

ขั้นตอนสุดท้ายของโบรกเกอร์ MQTT - Ada IO - คือ "AIO KEY" บนแดชบอร์ด ให้คลิกที่ปุ่มเล็ก ๆ ด้านขวาบน

ตอนนี้คัดลอก "ชื่อผู้ใช้" และ "รหัสที่ใช้งานอยู่" แล้วเขียนลงในรหัส Arduino

ขั้นตอนที่ 4: รหัส Arduino

รหัส Arduino
รหัส Arduino
รหัส Arduino
รหัส Arduino

ติดตั้ง ESP Core สำหรับ Arduino IDE:

คำแนะนำหลักคือ: https://goo.gl/yAqlU4 และทำตาม "การติดตั้งด้วย Boards Manager"

ตอนนี้ดูภาพแรก ESP01 รุ่นสีดำมีขนาดแฟลชดิสก์ 1MB และรุ่นสีน้ำเงินมี 512k แปลว่าอะไร? ดูภาพที่สอง คุณต้องเลือก "ขนาดแฟลช" ที่ถูกต้อง

รหัส Arduino อยู่ในที่เก็บนี้: รหัสอ่านชัดเจนมาก

อย่าลืมแก้ไข:

  • AIO_USERNAME
  • AIO_KEY
  • Wifi_number

หากคุณตัดสินใจแก้ไขช่อง "Adafruit_MQTT_Publish" และ "Adafruit_MQTT_Subscribe" คุณต้องแก้ไขบรรทัดเดียวกันและการเรียกในโค้ด

ขั้นตอนที่ 5: Meshmixer และ 3D Print

Meshmixer และ 3D Print
Meshmixer และ 3D Print
Meshmixer และ 3D Print
Meshmixer และ 3D Print
Meshmixer และ 3D Print
Meshmixer และ 3D Print
Meshmixer และ 3D Print
Meshmixer และ 3D Print

โมเดล 3 มิติ

สำหรับโครงการของฉัน ฉันต้องการโมเดลสามมิติของ Totoro

ฉันพบมันใน thingiverse ที่ลิงค์นี้:

คุณสามารถใช้โมเดล 3 มิติทุกรูปแบบได้ตามต้องการ ขั้นตอนต่อไปก็เหมือนกัน

เปลือก

ได้เวลาติดตั้ง Meshmixer ด้วยเครื่องมืออันทรงพลังนี้ คุณสามารถทำเชลล์สำหรับโปรเจ็กต์ของคุณได้

นำเข้าใน Meshmixer ของ Totoro STL และใช้เครื่องมือ Hollow:

ในเครื่องมือเดียวกัน อย่าลืมทำ Escape Holes ที่ด้านหลัง

ตอนนี้คุณต้องตัดโมเดลครึ่งหนึ่งโดยใช้เครื่องมือ Plane Cut:https://goo.gl/axPKXV

ใช้ปุ่มส่งออกเพื่อส่งออกส่วนล่าง

สุดท้ายก็ต้องตัดหู เลือกหูและใช้เครื่องมือแยก - ห้าภาพ -.

ใช้ปุ่มส่งออกเพื่อส่งออกหู

กลับไปที่โมเดลครึ่งบนและใช้เครื่องมือ Erase & Fill: https://goo.gl/d4LR76 - six image -.

พิมพ์ 3 มิติ

ฉันชอบที่จะพิมพ์ทีละชิ้น อย่าลืมใช้ฟิลาเมนต์ 3 มิติแบบโปร่งใส!

ขั้นตอนที่ 6: การประกอบ

การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ

เจาะรูที่หัว. รูนี้จำเป็นต้องใส่เข้าไปในปุ่ม

บล็อกปุ่มด้วยกาวร้อน และทดสอบการเชื่อมต่อกับมัลติมิเตอร์ในโหมดต่อเนื่อง

จับหูและเพิ่มชิ้นเล็ก ๆ ที่ด้านล่างโดยใช้สีน้ำเงินร้อนหรือการโจมตีพิเศษ ตัดชิ้นถ้ามันสูงเกินไป

ตอนนี้คุณสามารถเชื่อมต่อปุ่มและตัวต้านทานของเธอตามแผนผังในขั้นตอนที่ 2

การทดสอบครั้งแรก

อย่าลืมปิดโมเดล 3 มิติก่อนทำการทดสอบการทำงานที่ถูกต้อง!

กดปุ่มบน Adafruit IO และไฟ LED ภายในจะต้องกะพริบ จนกว่าคุณจะกดปุ่มที่หู

ทำการทดสอบซ้ำด้วยปุ่มที่หู

ขั้นตอนที่ 7: พร้อมที่จะไป

Image
Image
พร้อมที่จะไป
พร้อมที่จะไป

สุดท้ายนี้เป็นผลสุดท้าย

- คำถาม: คุณใช้ไฟ LED ภายในหรือไฟ LED สีแดงภายนอกหรือไม่?

- คำตอบ: ในรูปและวิดีโอนี้ฉันใช้ไฟ LED ภายใน เพื่อให้ชัดเจนยิ่งขึ้น LED สีแดงเป็นไฟ LED - คุณไม่สามารถปิดได้ - และ LED สีน้ำเงินเป็นไฟ LED ภายใน ไฟ LED ภายในและไฟ LED ภายนอกในแผนผังของฉันคือพินเดียวกัน

- คำถาม: ฉันสามารถใช้บนเครือข่ายที่ไม่รู้จักได้หรือไม่?

- คำตอบ: ไม่ คุณทำไม่ได้ คุณต้องตั้งโปรแกรม ESP01 ใหม่ เนื่องจากบอร์ดนี้ไม่มีที่ว่างสำหรับ OTA

ข้อมูลมากมายสำหรับ OTA:

แต่คุณสามารถทำได้หนา: เพิ่ม ID การเชื่อมต่อและรหัสผ่านพิเศษสำหรับ Personal Hotspot บนโทรศัพท์ของคุณ!

แนะนำ: