Mündəricat:
- Addım 1: Mqtt Brokerini Qurun:
- Addım 2: MQTT (Mosquitto) testi
- Addım 3: Armtronix Board & Mqtt ilə işləmək
Video: Armtronix lövhələrində MQTT: 3 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Bu təlimatda, əvvəlcə Linux (Debian və ya Ubuntu) əsaslı bir sistemdən necə istifadə edə biləcəyinizi və üzərinə Mosquitto (Mqtt Broker) qura biləcəyinizi, telefonunuzda (Android)/ Linux əsaslı Mqtt müştərisini necə istifadə edəcəyinizi göstərmək istərdik. sistem, Mqtt vasitəsilə mesaj göndərmək və almaq. Bununla tanış olduqdan sonra, bu quraşdırılmış Mqtt brokeri ilə lövhəmizi necə konfiqurasiya edə biləcəyinizi göstərmək istərdik. Ayrıca, Mqtt brokerinə kimlik doğrulamasını necə əlavə edə biləcəyinizi və ayıklama üçün bəzi əsas məsləhət və fəndləri göstərmək istərdim. Beləliklə başlayaq ………
Addım 1: Mqtt Brokerini Qurun:
Yükləyə biləcəyiniz bir çox Mqtt brokerləri var. Bəzi tanınmışlar aşağıda qeyd edildiyi kimidir. Bəziləri bulud əsaslı xidmətlərdir.
- HiveMQ
- MosquittoCloud
- MQTT
- Adafruit.io
Sizə Mosquitto'nun Linux əsaslı bir sistemdə (Ubuntu 18.04) necə qurulacağını göstərəcəyik. Bunu etmək üçün əvvəlcə Mosquitto ubuntu mənbə siyahısına əlavə edin. Mosquitto Ubuntu anbarlarında mövcud olduqdan sonra apt-get ilə quraşdıra bilərsiniz.
Yalnız bir Terminal açın. Terminal açmaq üçün Ubuntu Masaüstünün sol alt küncünə gedin, Proqramı göstər (Doted 3X3 grid) düyməsini basın. Bir Pəncərə açılacaq. Orada Terminal axtarırsınız. Aşağıdakı şəkillərdə göstərildiyi kimi bir pəncərənin açıldığını görmək üçün terminala vurun.
- Ərizəni göstərin (Şəkil 1).
- Terminal axtarın (Şəkil 2).
- Terminal Pəncərəsi (Şəkil 3).
Terminalı açdıqdan sonra aşağıdakı əmrləri daxil edin
sudo apt-add-repository ppa: mosquitto-dev/mosquitto-ppa
sudo apt-get yeniləməsi
sudo apt-get mosquitto quraşdırın
Mqtt müştərisini də quraşdıra bilərsiniz. Bunu etmək əmri olacaq
sudo apt-get ağcaqanad müştəriləri quraşdırın
İstinad üçün bəzi şəkillər
- Ppa əlavə etmək (Şəkil 4).
- Repo yenilənir (Şəkil 5).
- Ağcaqanad quraşdırılması (Şəkil 6).
- Mosquitto Müştərisinin Qurulması (Şəkil 7).
Addım 2: MQTT (Mosquitto) testi
Ubuntu (eyni sistem və ya digər sistem) vasitəsilə mqtt sınamaq üçün əvvəllər sudo apt-get install mosquitto-clients əmri ilə quraşdırılmış mqtt müştəri qurmalısınız. Cib telefonu (android) istifadə edərək sınamaq istəsəniz, oyun mağazasından MyMqtt tətbiqini quraşdıra bilərsiniz.
Mqtt Mövzular adlı bir şey üzərində işləyir. Anlamaq asanlığı üçün bu mövzuları kompüterin sabit diskindəki qovluq kimi nəzərdən keçirin. Bu kompüterə bir kompüter serveri kimi baxaq (mqtt dünyasında Mqtt Brokeridir). Bu serverdə bir qovluğa sahib olmağı düşünək.
Qovluq adı: /Folder_one /
İndi bu serverə daxil olan iki fərqli sistemdən (PC/Laptop) iki adamı ya faylları oxumaq, ya da faylları göndərmək/boşaltmaq və ya hər iki əməliyyatı etmək üçün nəzərdən keçirək.
İki adama/sistemə Sistem X, Sistem Y (Bunlar Mqtt Dünyasında Mqtt Müştəriləridir) adını verəcəyik.
İndi deyək ki, System X "/Folder_one/" qovluğuna bir fayl (fayl adı: temperatur) göndərir/atır, bu mqtt dünyasında bu nəşriyyatı adlandıra bilərik (fayl yerinə bir mesaj/faydalı yük göndəririk).
İndi deyək ki, System Y bu faylı və ya hər hansı bir yeni faylı əldə etmək/oxumaq və ya bu qovluqda yeniləmək istəyir, ehtiyac duyduğu ilk şey, bizim vəziyyətimizdə "/Folder_one/" olan qovluq adını və yolunu bilməkdir. Beləliklə, indi bu qovluğa gedəcək və həmin faylı (fayl adı: temperatur) oxuyacaq/alacaq. Yolu/Mövzunu bilmək və Mqtt dünyasındakı faylda/yeni fayllarda dəyişikliklərin olub -olmadığını yoxlamaq bu mövzuya abunəlikdir.
Yuxarıdakı nümunəni nəzərə alaraq, System X "/Folder_one" saytına yayımlayır və System Y "/Folder_one" abunəsinə malikdir
Həm də unutmayın ki, X sistemi "/Folder_one" -ya abunə ola bilər və System Y "/Folder_one" -də də dərc edə bilər. Müdrik olduğu kimi, hətta Server sistemi (The Mqtt Broker), Mqtt müştərisini indiki kimi quraraq "/Folder_one" nəşr edə/abunə ola bilər. Xatırlamalı olduğunuz başqa bir şey, Mqtt Brokerinin IP ünvanını bilməniz lazım olan bir mövzunu dərc etmək və ya ona abunə olmaqdır.
Əvvəlcə brokerlə eyni sistemdə quraşdırılmış ubuntu müştəri vasitəsi ilə sınayacağıq. Biri dərc edəcək, digəri isə ona abunə olacaq iki terminal pəncərəsi açacağıq. Məsələn, mövzu olaraq /Folder_one istifadə edəcəyik. Bir mövzuya girmədən əvvəl ubuntu -nun IP ünvanını tapmalısınız. Bunu etmək üçün ekranın sağ üst küncünə vurun, wifi parametrini seçin, oradan ubuntu sisteminin IP ünvanını (hazırda broker IP) tapa biləcəksiniz. İstinad üçün paylaşılan ekran görüntüsü (Şəkil 8).
Və ya brokerin IP ünvanını tapmaq üçün terminalda aşağıdakı əmrdən istifadə edərək xalis alətlər quraşdıraraq IP ünvanını tapa bilərsiniz
sudo apt net-tools quraşdırın
Şəbəkə alətlərinin quraşdırılması (Şəkil 9). Bundan sonra ipconfig əmrini yazın, Mac və IP ünvanı olan bir şəbəkə interfeysi siyahısı alacaqsınız
sudo ipconfig
Sistemimin IP ünvanı 192.168.1.67 -dir (Şəkil 10)
Nəşr etmək
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m pub_to_folderone
Burada mosquitto_pub əmrdir, ardınca host /brokerin IP ünvanı olan -h parametr identifikatoru elementi (Bizim vəziyyətimizdə 192.168.1.67), ardınca yayımçının mövzu adı olan -t (bizim halda /Folder_one), sonra -m, göndəriləcək mesaj/faydalı yük deməkdir (Bizim vəziyyətimizdə pub_to_folderone).
Abunə olmaq üçün
mosquitto_sub -h 192.168.1.67 -t /Folder_one
Nəşriyyat tərəfindən göndərilən mesaj: pub_to_folderone
Nəşr üçün nümunə
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “salam test mqtt”
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m "mqtt işləyir"
Mövzuya abunə olmaq üçün alınan cavab nümunəsi
mosquitto_sub -h 192.168.1.67 -t /Folder_one
Nəşriyyat tərəfindən göndərilən mesaj:
- pub_to_folderone
- salam mqtt
- mqtt işləyir
Pub Sub iki ayrı terminal pəncərəsində yan -yana (Şəkil 11)
Android -də Mqtt testi (mənim mqtt)
Mymqtt tətbiqini play mağazasından android telefonunuza quraşdırın (Şəkil 12)
Tətbiqi açın və sol üst küncdə vurun (Şəkil 13, Şəkil 14).
Parametrləri vurun və brokerin IP ünvanını daxil edin, port 1883 olacaq. Hal -hazırda təsdiqlənmiş mqtt brokerindən istifadə etmirik, buna görə istifadəçi adı və şifrə boş olacaq. Sadəcə qeyd edin və yenidən tətbiqin sol üst küncünə vurun (<Ayarlar), çekmece yenidən açılacaq (Şəkil 15).
Çekmecenin üstündə, brokerin IP ünvanını və tətbiqin bağlı olduğu portu göstərəcək (Şəkil 16).
İndi Abunə olmaq üçün abunə olmaq istədiyiniz mövzunu əlavə edin. Burada /Folder_one olaraq mövzu əlavə edəcəyik (Şəkil 17, Şəkil 18).
Bunu etdikdən sonra, ubuntu sistemindən terminal istifadə edərək mövzunu dərc edəcəyik. Nəşr edərkən bu mobil tətbiqdə yayımlanan yük/mesajı almalısınız. Məsələn, "ARM -Automation Robotics & Mechatronics" kimi yük yükləmə. Əmr əvvəl qeyd edildiyi kimidir.
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “ARM -Automation Robotics & Mechatronics”
ubuntu sistemindən nəşr (Şəkil 19).
Tablosuna dərc edilmiş bir mesaj alındı (Şəkil 20).
İndi android telefonundan (My mqtt) yayımlayaq və ubuntu sisteminə abunə olaq. Bu nümunə üçün "/mymqtt_to_pub" mövzusunu istifadə edirik.
Bunu etmək üçün əvvəlcə ubuntu sisteminizdən bir terminal açın və aşağıdakı əmri istifadə edərək "/mymqtt_to_pub" mövzusuna abunə olun (Şəkil 21)
mosquitto_sub -h 192.168.1.67 -t /mymqtt_to_pub
İndi mymqtt tətbiqinin çekmecəsinə gedin və dərc et düyməsini basın. Nəşriyyat mövzusunu əlavə edin (Bizim vəziyyətimizdə "/mymqtt_to_pub") və "salam Ubuntu" göndərəcəyimiz kimi bir mesaj göndərin, göndər düyməsini basın (Şəkil 22, Şəkil 23).
Mesaj ubuntu sisteminin terminal pəncərənizdə görünməlidir (Şəkil 24).
Unutmayın ki, həm ubuntu sistemi, həm də android telefonu eyni şəbəkədə olmalı və ya 1883 portu açılmalı və mqtt -in işləməsi üçün yönlendiricinizin/ağ geçidinizin IP ünvanını bilməlisiniz. Mqtt brokerinizə kimlik doğrulaması əlavə etmək istəyirsinizsə, bunu aşağıda göstərilən blog bağlantısını izləyərək edə bilərsiniz https://medium.com/@eranda/setting-up-authenticat… Bu blogun ikinci addımını izləyin. Brokerimizin identifikasiyasını təmin etdik və lövhələrimiz üçün təsdiqlənmiş brokerdən istifadə edəcəyik.
Addım 3: Armtronix Board & Mqtt ilə işləmək
Hal -hazırda bu təlimat üçün, sinus dalğasını kəsmək və öz növbəsində ampulü söndürmək və ya fanın sürətini idarə etmək üçün Triac istifadə edən Wifi Tək Dimmer Kartımızdan istifadə edirik. Ayrıca mqtt identifikasiya növü ilə əlaqələndirdik.
Əvvəlcə lövhəni konfiqurasiya etdik. Konfiqurasiya etmək üçün addımlar aşağıda qeyd edildiyi kimidir.
Gücdə, Wifi Giriş Nöqtəsinə ev sahibliyi etməyə başlayacaq.
Bir Android telefonu və ya dizüstü kompüterdən istifadə edərək bu AP -yə qoşulun (Şəkil 25).
Bu AP -yə qoşulduqdan sonra, AP -ə bağlı sistemdən/Telefondan bir brauzer (chrome/firefox) açaraq 192.168.4.1 yazın. Məlumat bağlantınızı (3G/4G) istifadə etmədiyinizə əmin olun.
IP yazarkən, aşağıdakıların daxil edilməli olduğu bir veb səhifəsi açılacaq (Şəkil 26).
- SSID: Wifi AP adı.
- Şifrə: SSID Şifrəsi.
- IoT rejimi Mqtt və ya Http (Mqtt seçin).
- Mqtt Broker IP (Bizim vəziyyətimizdə 192.168.1.67).
- Mqtt istifadəçi adı və şifrəsi, doğrulama növündən istifadə edərkən Naren, xxxx istifadə etdik
- Mqtt dərc mövzusu: Bu, lövhənin hansı mövzuda yayımladığı olacaq, biz /testpub istifadə etmişik.
- Mqtt abunə mövzusu: Bu, lövhənin triakanı işə salmaq üçün əmrləri dinlədiyi mövzuda olacaq /biz testublardan istifadə etmişik.
- Cihazın adı: lövhəni işə salmaq üçün alexa -ya çağırdığınız addır, corvi istifadə etdik.
Detalları daxil etdikdən sonra Göndər düyməsini basın, bunu edərkən Şəkil 27 -də göstərildiyi kimi bir ekran alacaqsınız, lövhə AP -ni qəbul etməyi dayandırana qədər bir müddət gözləyin.
Unutmayın ki, lövhəmizi Uart vasitəsi ilə Arduino IDE -nin seriyalı monitoruna bağladıq. Beləliklə, sol tərəfdə Uart üzərindən çap etdiyi ayıklama mesajlarını görəcəksiniz (bu yalnız istinad üçündür).
Bunu etdikdən sonra ayıklama ekranını görə bilərsiniz. Detalların çoxu orada görünəcək. Bundan sonra, bunu görə biləcəyiniz debug (serial) ekranında brokerə uğurla qoşulacaq.
Doğrulama ilə MQTT brokerinə qoşuldu. Mövzu 1 -ə abunə.
Bunu çap etdikdən sonra abunə olduğu mövzuda mqtt vasitəsilə əmrləri göndərməyə başlaya bilərsiniz, yəni /testsub /
Bunun üçün lövhənin əmrləri:
- R13_ON: Triyakanı 100%açmaq üçün.
- R13_OFF: Triyakanı 0%-ə söndürmək üçün.
- Dimmer: xx: Burada xx karartma dəyəridir və 0 ilə 99 arasında dəyişə bilər.
- Sıfırla: lövhənin konfiqurasiyasını təmizləmək üçün.
- Vəziyyət: Şuranın nəşr mövzusunda lövhənin dimmer vəziyyətini yazdırın.
Bu əmri mqtt müştərisinin quraşdırıldığı ubuntu əsaslı bir sistemdən göndərmək üçün aşağıda göstərildiyi kimi yazın. Doğrulama səbəbiylə bura iki əlavə parametr əlavə olunur -yəni istifadəçi adı olan -u və -P şifrəsidir, bunların böyük hərflərə həssas olduğunu unutmayın.
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m R13_ON
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m R13_OFF
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m Dimmer: 50
Qeyd: 50 dimmer dəyəridir
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m R13_ON
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m Status
Ən son status üçün status, bizim vəziyyətimizdə /testpub olan lövhənin nəşr mövzusunda çap olunur. Bizim lövhədə cihazdakı hər hansı bir dəyişiklik lövhənin nəşr mövzusunda çap olunur. Məsələn, Dimmer: 50 -ni abunə mövzusunda fiziki olaraq yerinə yetirməkdən keçsək, lövhə nəşr mövzusundakı sönük səviyyəni bildirən bir mesaj göndərəcək. Nümunə aşağıda göstərilmişdir, Ubuntu sisteminizdən lövhənin nəşr mövzusuna abunə olmaq üçün aşağıdakı əmri daxil edin
mosquitto_sub -h 192.168.1.67 -u Naren -P xxxx -t /testpub
aldığımız mesajdır
DimmerIS50
eyni bir neçə ekran şortu aşağıda (Şəkil 28, Şəkil 29)
Tövsiyə:
ESP32 ilə MQTT Mood Lights: 4 Addım (Şəkillərlə)
ESP32 ilə MQTT Mood Lights: Uzun müddətdir ki, LED bantına hoppana bilmək üçün cazibədar idim, buna görə qaçıb oyuncaq üçün bir LED şeridi götürdüm. Bu əhval işıqlarını hazırlamağı bitirdim. MQTT ilə idarə oluna bilər ki, bu da hər cür ağıl əlavə etməyə imkan verir
MQTT Üzmə Hovuzu İstilik Monitoru: 7 Addım (Şəkillərlə birlikdə)
MQTT Üzgüçülük Hovuzu İstilik Monitoru: Bu layihə digər Ev Avtomatlaşdırma layihələrim üçün Ağıllı Məlumatların Daxil edilməsi-Geyser Nəzarətçisi və Çox məqsədli Otaq İşıqlandırma və Cihaz Nəzarətçisidir. Havuz suyunun istiliyini, ətraf havanı ölçən hovuz tərəfində quraşdırılmış bir monitordur
Arduino Uno ilə Akustik Levitasiya Addım-addım (8 addım): 8 addım
Arduino Uno ilə Akustik Levitasiya Adım Adım (8 addım): ultrasəs səs ötürücüləri L298N Dc dişi qadın adapteri kişi dc pinli Arduino UNOBreadboard Bu necə işləyir: Əvvəlcə Arduino Uno-ya kod yükləyirsiniz (rəqəmsal ilə təchiz edilmiş bir mikro nəzarətçidir) və kodu çevirmək üçün analog portlar (C ++)
ARMTRONIX Wifi 30Amps lövhəsi: 4 addım (şəkillərlə)
ARMTRONIX Wifi 30Amps lövhəsi: GİRİŞ: Armtronix 30AMPS Relay lövhəsi bir IOT lövhəsidir. Lövhənin xüsusiyyətləri bunlardır: Simsiz idarəetmə. USB -dən UART -a, AC -dən DC -yə 5V DC -AC -dən 5V DC -ə qədər AC. Lövhənin görünüşü və hissi və ölçüsü 105 mm X 7
ARMTRONIX WIFI TEK Dimmer Board V0.2: 3 Addım (Şəkillərlə birlikdə)
ARMTRONIX WIFI SINGLE Dimmer Board V0.2: Armtronix Wifi dimmer, ev avtomatlaşdırılması üçün hazırlanmış bir IOT lövhəsidir. Lövhənin xüsusiyyətləri bunlardır: Simsiz idarəetmə Kiçik form faktoru Göyərtədə AC -dən DC -ə 230VAC -dən 5V DC -ə qədər. DC virtual keçid Lövhənin ölçüsü 61.50 -dir