สารบัญ:

MQTT อิงจาก MicroPython ESP32: 5 ขั้นตอน
MQTT อิงจาก MicroPython ESP32: 5 ขั้นตอน

วีดีโอ: MQTT อิงจาก MicroPython ESP32: 5 ขั้นตอน

วีดีโอ: MQTT อิงจาก MicroPython ESP32: 5 ขั้นตอน
วีดีโอ: การใช้ ESP32 ร่วมกับ MicroPython 2024, พฤศจิกายน
Anonim
MQTT อิงจาก MicroPython ESP32
MQTT อิงจาก MicroPython ESP32
MQTT อิงจาก MicroPython ESP32
MQTT อิงจาก MicroPython ESP32

ฉันชอบเลี้ยงแมว หลังจากทำงานหนักมาทั้งวัน แมวสามารถผ่อนคลายฉันได้เมื่อกลับถึงบ้าน หลังจากการฝึกฝนอย่างหนัก แมวตัวนี้มีนิสัยที่ดีในการกินเป็นประจำใน "ร้านอาหาร" ทุกวัน แต่ช่วงหลังนี้ฉันต้องเดินทางสักสองสามวันและไม่มีใครดูแลแมวที่บ้าน ฉันจึงต้องการใช้ MQTT สำหรับการให้อาหารด้วยรีโมทคอนโทรล ถ้าแมวกำลังกินนี่เตือนฉันและให้ฉันสบายใจ

MQTT

MQTT เป็นโปรโตคอลการถ่ายโอนข้อความที่ใช้ไคลเอ็นต์-เซิร์ฟเวอร์ โปรโตคอล MQTT นั้นมีน้ำหนักเบา เรียบง่าย เปิดกว้าง และง่ายต่อการใช้งาน และคุณสมบัติเหล่านี้ทำให้สามารถใช้งานได้อย่างกว้างขวาง

เผยแพร่และสมัครสมาชิก

โปรโตคอล MQTT กำหนดเอนทิตีสองประเภทในเครือข่าย: ตัวรับส่งข้อความและไคลเอนต์บางตัว เอเจนต์คือเซิร์ฟเวอร์ที่รับข้อความทั้งหมดจากไคลเอนต์ จากนั้นกำหนดเส้นทางข้อความเหล่านี้ไปยังไคลเอนต์เป้าหมายที่เกี่ยวข้อง ลูกค้าคือสิ่งที่สามารถโต้ตอบกับตัวแทนเพื่อส่งและรับข้อความ ลูกค้าสามารถเป็นเซ็นเซอร์ IoT ในสถานที่หรือแอปพลิเคชันที่ประมวลผลข้อมูล IoT ในศูนย์ข้อมูล

ขั้นตอนที่ 1: วัสดุสิ้นเปลือง

เสบียง
เสบียง

ฮาร์ดแวร์:

MakePython ESP32

MakePython ESP32 เป็นบอร์ด ESP32 ที่มีจอแสดงผล OLED SSD1306 ในตัว

เซอร์โวมอเตอร์

HC-SR04

ซอฟต์แวร์:

uPyCraft IDE

คลิกเพื่อดาวน์โหลด uPyCraft IDE สำหรับ Windows

ขั้นตอนที่ 2: การเดินสายไฟ

การเดินสายไฟ
การเดินสายไฟ

MakePython ESP32 -- เซอร์โว

  • 3V3 -- VCC (เส้นสีแดง)
  • GND -- GND (เส้นสีน้ำตาล)
  • IO14 -- สัญญาณ (เส้นสีส้ม)

MakePython ESP32 -- HC-SR04

  • 3V3 -- VCC
  • IO13 -- Trig
  • IO12 -- Echo
  • GND -- GND

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

ดาวน์โหลดและเรียกใช้รหัสที่ให้ไว้ที่นี่

ทำการเปลี่ยนแปลงต่อไปนี้ในไฟล์ main.py จากนั้นบันทึกและเรียกใช้

แก้ไข SSID และ PSW เพื่อเชื่อมต่อ WiFi

SSID='Makerfabs' #REPLACE_WITH_YOUR_SSID

PSW='20160704' #REPLACE_WITH_YOUR_PASSWORD

แก้ไข IP ของโบรกเกอร์ MQTT ของคุณและกำหนดหัวข้อสำหรับการเผยแพร่และการสมัครสมาชิก

mqtt_server = '39.106.151.85' #REPLACE_WITH_YOUR_MQTT_BROKER_IP

topic_sub = b'feed' topic_pub = b'state'

เชื่อมต่อและสมัครรับข้อมูลหัวข้อ

def connect_and_subscribe():

global client_id, mqtt_server, topic_sub client = MQTTClient(client_id, mqtt_server) client.set_callback(sub_cb) client.connect() client.subscribe(topic_sub) print('เชื่อมต่อกับ %s นายหน้า MQTT สมัครรับข้อมูลจาก %s หัวข้อ' % (mqtt_server, topic_sub)) ส่งคืนไคลเอนต์

เผยแพร่ข้อความ

ลูกค้า = connect_and_subscribe()

client.publish(topic_pub, ผงชูรส)

ขั้นตอนที่ 4: การตั้งค่า MQTT

การตั้งค่า MQTT
การตั้งค่า MQTT
การตั้งค่า MQTT
การตั้งค่า MQTT

คุณสามารถดาวน์โหลดและติดตั้งไคลเอนต์ MQTT ได้ที่นี่ ช่วยให้คุณทำการควบคุมระยะไกลบนโทรศัพท์มือถือหรือคอมพิวเตอร์ของคุณ

  • เปิดและคลิกเพื่อสร้าง MQTT Client
  • ป้อนชื่อฟีด
  • โปรโตคอลเลือก mqtt / tcp
  • อินพุตโฮสต์: 39.106.151.85:1883
  • คลิกบันทึก

ขั้นตอนที่ 5: เผยแพร่และสมัครสมาชิก

เผยแพร่และสมัครสมาชิก
เผยแพร่และสมัครสมาชิก
เผยแพร่และสมัครสมาชิก
เผยแพร่และสมัครสมาชิก

หลังจากเชื่อมต่อแล้ว หัวข้อที่จะเผยแพร่อินพุต: feed อินพุตเพย์โหลด: เปิด แล้วคลิกเผยแพร่

เซอร์โวมอเตอร์หมุนและเริ่มป้อนอาหาร

หัวข้อที่จะสมัครสถานะอินพุตแล้วคลิกสมัคร

เมื่อแมวอยู่ใกล้ตัวให้อาหารกิน หัวข้อการสมัครรับข้อมูลจะได้รับ: แมวกำลังกิน… แมวได้รับหลังจากออกไป: แมวจากไป

แม้ว่าคุณจะทิ้งแมวไว้ที่บ้าน คุณก็ไม่ต้องกังวลว่าแมวจะหิว

แนะนำ: