Satura rādītājs:
- 1. darbība: instalējiet Mqtt Broker:
- 2. darbība. MQTT (moskītu) pārbaude
- 3. darbība. Darbs ar Armtronix Board & Mqtt
Video: MQTT uz Armtronix dēļiem: 3 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:51
Šajā pamācībā mēs sākotnēji vēlētos parādīt, kā jūs varat izmantot uz Linux (Debian vai Ubuntu) balstītu sistēmu un instalēt tajā Mosquitto (Mqtt Broker), kā arī parādīt, kā lietot Mqtt klientu savā tālrunī (Android)/ Linux sistēma, nosūtot un saņemot ziņas, izmantojot Mqtt. Pēc iepazīšanās ar to mēs vēlētos parādīt, kā jūs varat konfigurēt un savienot mūsu dēli ar šo instalēto Mqtt brokeri. Vēlos jums parādīt, kā Mqtt brokerim pievienot autentifikāciju, un dažus pamata padomus un trikus atkļūdošanai. Tātad, sāksim ………..
1. darbība: instalējiet Mqtt Broker:
Ir vairāki Mqtt brokeri, kurus varat instalēt. Daži no tiem ir zināmi zemāk. Daži no tiem ir mākoņa pakalpojumi.
- HiveMQ
- MosquittoCloud
- MQTT
- Adafruit.io
Mēs jums parādīsim, kā instalēt Mosquitto uz Linux balstītas sistēmas (Ubuntu 18.04). Lai to izdarītu, vispirms pievienojiet Mosquitto ubuntu avotu sarakstam. Kad Mosquitto būs pieejams Ubuntu krātuvēs, jūs varēsit to instalēt ar apt-get.
Vienkārši atveriet termināli. Lai atvērtu termināli, dodieties uz Ubuntu darbvirsmas kreiso apakšējo stūri, noklikšķiniet uz Rādīt lietojumprogrammu (3X3 režģis). Tiks atvērts logs. Tur jūs meklējat Terminal. Noklikšķiniet uz termināļa, un jums vajadzētu redzēt atvērtu logu, kā parādīts šajos attēlos.
- Rādīt lietojumprogrammu (1. attēls).
- Meklēt termināli (2. attēls).
- Termināla logs (3. attēls).
Pēc termināļa atvēršanas ievadiet šādas komandas
sudo apt-add-repository ppa: mosquitto-dev/mosquitto-ppa
sudo apt-get update
sudo apt-get install mosquitto
Varat arī instalēt Mqtt klientu. Pavēle to darīt būs
sudo apt-get install mosquitto-customers
Daži attēli jūsu uzziņai
- Ppa pievienošana (4. attēls).
- Repo atjaunināšana (5. attēls).
- Mosquitto instalēšana (6. attēls).
- Mosquitto Client instalēšana (7. attēls).
2. darbība. MQTT (moskītu) pārbaude
Lai pārbaudītu mqtt, izmantojot ubuntu (to pašu sistēmu vai citu sistēmu), jums jāinstalē mqtt klients, kas iepriekš tika instalēts ar komandu sudo apt-get install mosquitto-customers. Ja vēlaties to pārbaudīt, izmantojot mobilo tālruni (android), varat instalēt MyMqtt lietotni no Play veikala.
Mqtt strādā pie tā, ko sauc par tēmām. Lai atvieglotu izpratni, apsveriet šīs tēmas kā mapi datora cietajā diskā. Aplūkosim šo datoru kā datora serveri (kas mqtt pasaulē ir Mqtt Broker). Šajā serverī apskatīsim vienu mapi.
Mapes nosaukums: /Folder_one /
Tagad aplūkosim divus cilvēkus no divām dažādām sistēmām (personālajiem datoriem/klēpjdatoriem), kas piekļūst šim serverim, lai lasītu failus, nosūtītu/izmestu failus vai veiktu abas darbības.
Divus cilvēkus/sistēmu mēs nosauksim par sistēmu X, sistēmu Y (tie ir Mqtt klienti Mqtt pasaulē).
Tagad pieņemsim, ka sistēma X nosūta/izgāž kādu failu (faila nosaukums: temperatūra) mapē “/Folder_one/”, šajā pasaulē mqtt mēs to varam saukt par publicēšanu (faila vietā mēs nosūtām kādu ziņojumu/lietderīgo slodzi).
Pieņemsim, ka sistēma Y vēlas iegūt/izlasīt šo failu vai jebkuru jaunu failu vai atjaunināt šajā mapē, vispirms ir jāzina mapes nosaukums un ceļš, kas mūsu gadījumā ir “/Folder_one/”. Tātad tagad tas nonāks šajā mapē un lasīs/saņems šo failu (faila nosaukums: temperatūra). Zinot ceļu/tēmu un pārbaudot izmaiņas failā/jaunos failos Mqtt pasaulē, tiek abonēta šī tēma.
Ņemot vērā iepriekš minēto piemēru, Sistēma X publicē mapē “/Folder_one”, bet Y - abonē “/Folder_one”
Ņemiet vērā arī to, ka sistēma X var arī abonēt “/Folder_one” un sistēma Y var publicēt arī mapē “/Folder_one”. Tāpat kā gudri, pat servera sistēma (The Mqtt Broker) var publicēt/abonēt “/Folder_one”, instalējot tajā Mqtt klientu, kā mēs to esam darījuši. Otra lieta, kas jāatceras, ir publicēt vai abonēt tēmu, kas jums būs jāzina Mqtt Broker IP adrese.
Vispirms mēs to pārbaudīsim, izmantojot ubuntu klientu, kas ir instalēts tajā pašā sistēmā kā brokeris. Mēs atvērsim divus termināļa logus, no kuriem viens tiks publicēts, bet otrs to abonēs. Piemēram, kā tēmu izmantosim /Folder_one. Pirms pub/tēmas, jums būs jāatrod ubuntu IP adrese. Lai to izdarītu, noklikšķiniet uz ekrāna augšējā labā stūra, atlasiet wifi iestatījumu, no kurienes jūs varēsit atrast ubuntu sistēmas IP adresi (pašlaik starpnieka IP). Ekrānuzņēmums kopīgots atsaucei (8. attēls).
Vai arī, lai atrastu brokera IP adresi, varat atrast IP adresi, instalējot tīkla rīkus, izmantojot šādu komandu terminālī
sudo apt instalēt net-tools
Tīkla rīku uzstādīšana (9. attēls). Pēc tam vienkārši ierakstiet komandu ipconfig, jūs saņemsit tīkla saskarnes sarakstu ar mac un IP adresi
sudo ipconfig
Manas sistēmas IP adrese ir 192.168.1.67 (10. attēls)
Publicēt
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m pub_to_folderone
Šeit komanda mosquitto_pub ir komanda, kam seko parametra identifikatora elements -h, kas ir resursdatora /brokera IP adrese (mūsu gadījumā 192.168.1.67), kam seko -t, kas ir izdevēja tēmas nosaukums (mūsu gadījumā /Folder_one), kam seko -m, kas nozīmē nosūtāmo ziņojumu/lietderīgo kravu (mūsu gadījumā tas ir pub_to_folderone).
Lai abonētu
mosquitto_sub -h 192.168.1.67 -t /Folder_one
Izdevēja nosūtīts ziņojums: pub_to_folderone
Publicēšanas piemērs
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “hi test mqtt”
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “mqtt working”
Tēmas atbildes abonēšanas piemērs
mosquitto_sub -h 192.168.1.67 -t /Folder_one
Izdevēja nosūtīta ziņa:
- pub_to_folderone
- čau, mqtt
- mqtt strādā
Pub Sub divos atsevišķos termināļa logos blakus (11. attēls)
Mqtt pārbaude operētājsistēmā Android (mans mqtt)
Instalējiet lietotni mymqtt no Play veikala savā Android tālrunī (12. attēls)
Atveriet lietotni un noklikšķiniet uz augšējā kreisā stūra (13. attēls, 14. attēls).
Noklikšķiniet uz Iestatījumi un ievadiet brokera IP adresi, pēc noklusējuma ports būs 1883. Pašlaik mēs neizmantojam autentificētu mqtt brokeri, tāpēc lietotājvārds un parole būs tukši. Vienkārši saglabājiet to un vēlreiz noklikšķiniet uz lietotnes kreisā augšējā stūra (<Iestatījumi), atvilktne tiks atvērta no jauna (15. attēls).
Atvilktnes augšpusē tas parādīs brokera IP adresi un portu, ar kuru lietotne ir savienota (16. attēls).
Tagad pievienojiet tēmu, kuru vēlaties abonēt, noklikšķinot uz Abonēt. Šeit mēs pievienosim tēmu kā /Folder_one (17. attēls, 18. attēls).
Pēc tam, izmantojot Ubuntu sistēmu, izmantojot termināli, mēs publicēsim tēmu. Publicējot, jums vajadzētu publicēt kravu/ziņojumu šajā mobilajā lietotnē. Piemēram, lietderīgās kravas publicēšana kā “ARM -Automation Robotics & Mechatronics”. Komanda ir tāda, kā minēts iepriekš.
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “ARM -Automation Robotics & Mechatronics”
publicēšana no ubuntu sistēmas (19. attēls).
Saņemts publicēts ziņojums informācijas panelī (20. attēls).
Tagad publicēsim no Android tālruņa (My mqtt) un abonēsim Ubuntu sistēmā. Šajā piemērā mēs izmantojam tēmu “/mymqtt_to_pub”.
Lai to izdarītu, vispirms atveriet termināli no savas ubuntu sistēmas un abonējiet tēmu “/mymqtt_to_pub”, izmantojot šādu komandu (21. attēls)
mosquitto_sub -h 192.168.1.67 -t /mymqtt_to_pub
Tagad dodieties uz lietotnes mymqtt atvilktni un noklikšķiniet uz publicēt. Pievienojiet publicēšanas tēmu (mūsu gadījumā tas ir “/mymqtt_to_pub”) un nosūtiet kādu ziņojumu, piemēram, mēs nosūtīsim “hi Ubuntu”, nospiediet sūtīšanas pogu (22. attēls, 23. attēls).
Ziņojumam vajadzētu parādīties jūsu Ubuntu sistēmas termināla logā (24. attēls).
Ņemiet vērā, ka gan ubuntu sistēmai, gan android tālrunim jāatrodas vienā tīklā vai 1883. portam jābūt atklātam, un jums jāzina maršrutētāja/vārtejas IP adrese, lai mqtt darbotos. Ja vēlaties savam mqtt brokerim pievienot autentifikāciju, varat to izdarīt, izmantojot zemāk minēto emuāra saiti https://medium.com/@eranda/setting-up-authenticat… Izpildiet šī emuāra otro darbību. Mēs esam iespējojuši sava brokera autentifikāciju un mūsu dēļiem izmantosim autentificētu brokeri.
3. darbība. Darbs ar Armtronix Board & Mqtt
Šobrīd šajā pamācībā mēs izmantojam mūsu Wifi Single Dimmer Board, kas izmanto Triac, lai sasmalcinātu sinusa viļņu un savukārt aptumšo spuldzi vai kontrolētu ventilatora ātrumu. Arī mēs to esam savienojuši, izmantojot mqtt autentifikācijas veidu.
Sākotnēji mēs esam konfigurējuši dēli. Lai to konfigurētu, veiciet tālāk norādītās darbības.
Ieslēdzot uz tāfeles, tas sāks mitināt Wifi piekļuves punktu.
Izmantojot Android tālruni vai klēpjdatoru, izveidojiet savienojumu ar šo AP (25. attēls).
Kad ir izveidots savienojums ar šo AP, ierakstiet 192.168.4.1, atverot pārlūkprogrammu (chrome/firefox) no AP pieslēgtas sistēmas/tālruņa. Pārliecinieties, ka neizmantojat savu datu savienojumu (3G/4G).
Ievadot IP, tiks atvērta tīmekļa lapa, kurā jāievada sekojošais (26. attēls).
- SSID: Wifi AP nosaukums.
- Parole: SSID parole.
- IoT režīms Mqtt vai Http (izvēlieties Mqtt).
- Mqtt Broker IP (mūsu gadījumā tas ir 192.168.1.67).
- Mqtt lietotājvārds un parole, jo mēs izmantojam autentifikācijas veidu, mēs esam izmantojuši Naren, xxxx
- Mqtt publicēšanas tēma: mēs izmantosim /testpub. Šī būs arī tēma, ko valde publicēs.
- Mqtt abonēt tēmu: Mēs izmantosim /testub. Tas būs tas, par kuru tēmu padome klausās komandas, lai iedarbinātu triac.
- Ierīces nosaukums: tas ir vārds, kuru jūs saucat alexa, lai aktivizētu dēli, mēs esam izmantojuši corvi.
Pēc detaļu ievadīšanas nospiediet pogu Iesniegt, to darot, jūs saņemsiet ekrānu, kā parādīts 27. attēlā. Pagaidiet kādu laiku, līdz tāfele pārtrauc AP mitināšanu.
Lūdzu, ņemiet vērā, ka mēs esam pieslēguši mūsu plati caur Uart ar Arduino IDE sērijas monitoru. Tātad kreisajā pusē redzēsit atkļūdošanas ziņojumus, ko tā izdrukā, izmantojot Uart (tas ir tikai jūsu atsaucei).
Kad tas ir izdarīts, varat apskatīt atkļūdošanas ekrānu. Tur būs redzama lielākā daļa detaļu. Pēc tam tas veiksmīgi izveidos savienojumu ar brokeri atkļūdošanas (sērijas) ekrānā, ko jūs varat redzēt.
Savienots ar MQTT brokeri ar autentifikāciju. Abonēja 1. tēmu.
Kad tas ir izdrukāts, tagad varat sākt sūtīt tai komandas, izmantojot mqtt par tēmu, kuru tā ir abonējusi, ti, /testsub /
Šīs dēļa komandas ir šādas:
- R13_ON: lai ieslēgtu triac līdz 100%.
- R13_OFF: lai izslēgtu triac līdz 0%.
- Dimmer: xx: kur xx ir aptumšošanas vērtība, un to var mainīt no 0 līdz 99.
- Atiestatīt: lai notīrītu tāfeles konfigurāciju.
- Statuss: izdrukājiet tāfeles blāvuma statusu uz tāfeles publicēšanas tēmas.
Lai nosūtītu šo komandu no ubuntu bāzes sistēmas, kurā ir instalēts mqtt klients, vienkārši ierakstiet to, kā parādīts zemāk. Autentifikācijas dēļ šeit ir pievienoti divi papildu parametri -ti, -u, kas ir lietotājvārds un -P ir parole, lūdzu, ņemiet vērā, ka tie ir reģistrjutīgi.
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
Piezīme: 50 ir dimmera vērtība
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 Statuss
Lai iegūtu jaunāko statusu, statuss tiek izdrukāts uz tāfeles publicēšanas tēmas, kas mūsu gadījumā ir /testpub. Mūsu padomē visas ierīces izmaiņas tiek drukātas uz tāfeles publicēšanas tēmas. Piemēram, ja mēs nokārtosim Dimmer: 50 uz tāfeles abonētās tēmas, nevis fiziski to izpildot, tāfele nosūtīs ziņojumu, kurā būs norādīts publicēšanas tēmas blāvums. Piemērs ir parādīts zemāk, Lai abonētu no savas ubuntu sistēmas tāfeles publicēšanas tēmu, ievadiet šādu komandu
mosquitto_sub -h 192.168.1.67 -u Naren -P xxxx -t /testpub
ziņa, ko mēs saņemam
DimmerIS50
Tālāk ir norādīti daži ekrāna šorti (28. attēls, 29. attēls)
Ieteicams:
Objektu noteikšana ar Sipeed MaiX dēļiem (Kendryte K210): 6 soļi
Objektu noteikšana ar Sipeed MaiX dēļiem (Kendryte K210): Turpinot manu iepriekšējo rakstu par attēlu atpazīšanu ar Sipeed MaiX Boards, es nolēmu uzrakstīt vēl vienu pamācību, koncentrējoties uz objektu noteikšanu. Nesen parādījās interesanta aparatūra ar Kendryte K210 mikroshēmu, ieskaitot S
Attēlu atpazīšana ar K210 dēļiem un Arduino IDE/Micropython: 6 soļi (ar attēliem)
Attēlu atpazīšana, izmantojot K210 plates un Arduino IDE/Micropython: Es jau uzrakstīju vienu rakstu par to, kā palaist OpenMV demonstrācijas Sipeed Maix Bit, kā arī ar šo dēli izveidoju objekta noteikšanas demonstrācijas video. Viens no daudzajiem jautājumiem, ko cilvēki ir uzdevuši, ir - kā es varu atpazīt objektu, kuram neironu tīkls nav piemērots
WiFi automātiskā savienojuma izmantošana ar ESP8266/ESP32 dēļiem: 3 soļi
WiFi automātiskā savienojuma izmantošana ar ESP8266/ESP32 paneļiem: Mēs iemācīsimies izmantot bibliotēku AutoConnect, kas ļauj mums izveidot savienojumu un pārvaldīt WiFi piekļuves punktus, izmantojot viedtālruni. Iepriekš redzamais video palīdzēs jums šajā procesā, kā arī dažādos nepieciešamajos ekrānos. lai piekļūtu, lai uzzinātu par t
Kā iestatīt Arduino IDE darbam ar Tinusaur dēļiem: 3 soļi
Kā iestatīt Arduino IDE darbam ar Tinusaur plāksnēm. Šis ir īss ceļvedis, kā iestatīt Arduino IDE darbam ar Tinusaur plāksnēm. Tas būtībā ir panākt, lai tas darbotos ar Atmel ATtiny85/45/25 mikrokontrolleri . Vienīgā atšķirība ir tā, ka tā dēļu sarakstā parādīsies kā Tinusau
AVR mini dēlis ar papildu dēļiem: 7 soļi
AVR mini dēlis ar papildu dēļiem: nedaudz līdzīgs PIC 12f675 mini protoboardam, bet pagarināts un ar papildu dēļiem. Izmantojot attiny2313