Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Heyvan pişiklərini saxlamağı sevirəm. Bir günlük gərgin işdən sonra evə çatanda pişik məni rahatlaşdıra bilər. Çətin məşqdən sonra bu pişik hər gün "restoranda" nizamlı yemək yemək vərdişinə malikdir. Ancaq bu yaxınlarda bir neçə gün səyahət etməliyəm və evdə heç kim pişiyə baxmır, buna görə də uzaqdan idarə etmək üçün MQTT istifadə etmək istəyirəm. Pişik yeyirsə, bu mənə xatırlada bilər və arxayınlaşmağımı təmin edə bilər
MQTT
MQTT, müştəri-serverə əsaslanan mesaj dərc etmək / abunə olmaq protokoludur. MQTT protokolu yüngül, sadə, açıq və asan tətbiq olunur və bu xüsusiyyətlər onu geniş tətbiq etməyə imkan verir.
Nəşr et və abunə ol
MQTT protokolu şəbəkədəki iki növ varlığı müəyyən edir: mesaj brokeri və bəzi müştərilər. Agent, müştəridən bütün mesajları alan və sonra bu mesajları müvafiq hədəf müştəriyə yönləndirən bir serverdir. Müştəri, mesaj göndərmək və almaq üçün agentlə qarşılıqlı əlaqə qura biləcək bir şeydir. Müştəri, yerdəki IoT sensoru və ya məlumat mərkəzində IoT məlumatlarını işləyən bir tətbiq ola bilər.
Addım 1: Təchizat
Avadanlıq:
MakePython ESP32
MakePython ESP32, inteqrasiya olunmuş SSD1306 OLED ekranı olan bir ESP32 lövhəsidir.
servo motor
HC-SR04
Proqram təminatı:
uPyCraft IDE
Windows üçün uPyCraft IDE yükləmək üçün vurun
Addım 2: Kabel çəkmə
MakePython ESP32 - Servo
- 3V3 - VCC (qırmızı xətt)
- GND - GND (qəhvəyi xətt)
- IO14 - Siqnal (narıncı xətt)
MakePython ESP32-HC-SR04
- 3V3 - VCC
- IO13 - Trig
- IO12 - Yankı
- GND - GND
Addım 3: Kod
Burada göstərilən kodu yükləyin və işə salın.
Main.py faylında aşağıdakı dəyişiklikləri edin, sonra qeyd edin və işə salın.
WiFi qoşulmaq üçün SSID və PSW dəyişdirin
SSID = 'Makerfabs' #SİZİN_SSIDinizlə #DEĞİŞTİR
PSW = '20160704' #SİZİN_ŞİFRİNİZDƏN #DEĞİŞTİR
MQTT brokerinizin IP ünvanını dəyişdirin və nəşr və abunə üçün mövzuları müəyyənləşdirin
mqtt_server = '39.106.151.85 ' #SİZİN_MQTT_BROKER_IP İLƏ DEĞİŞTİR
topic_sub = b'feed 'topic_pub = b'state'
Mövzulara qoşulun və abunə olun
def connect_and_subscribe ():
qlobal 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 mövzusuna abunə olan %s MQTT broker' %(mqtt_server), topic_sub)) qayıdan müştəri
mesajları dərc edin
müştəri = connect_and_subscribe ()
client.publish (topic_pub, msg)
Addım 4: MQTT Ayarları
Cib telefonunuzda və ya kompüterinizdə uzaqdan idarə etməyinizə imkan verən MQTT müştərisini buradan yükləyə və quraşdıra bilərsiniz.
- MQTT Müştəri Yaratmaq üçün açın və vurun
- Giriş lentini adlandırın
- Protokol seçin mqtt / tcp
- Host girişi: 39.106.151.85:1883
- Saxla vurun
Addım 5: Nəşr et və Abunə ol
Bağlandıqdan sonra girişi yayımlamaq üçün mövzu: feed. Yük yükü girişi: yandırın və sonra dərc et düyməsini basın
Servo motor fırlanır və qidalanmağa başlayır.
Mövzuya giriş vəziyyətini yazın və sonra abunə olun
Pişik yeməyə yaxın olduqda, abunə mövzusu alır: pişik yeyir …, pişik ayrıldıqdan sonra alır: Pişik getdi.
Pişiyi evdə qoysanız belə, ac qalacağından narahat olmaq lazım deyil.