Orodha ya maudhui:

MQTT kwenye Bodi za Armtronix: Hatua 3
MQTT kwenye Bodi za Armtronix: Hatua 3

Video: MQTT kwenye Bodi za Armtronix: Hatua 3

Video: MQTT kwenye Bodi za Armtronix: Hatua 3
Video: Счастливая история слепой кошечки по имени Нюша 2024, Julai
Anonim
MQTT kwenye Bodi za Armtronix
MQTT kwenye Bodi za Armtronix

Katika hii tunaweza kufundisha mwanzoni jinsi unaweza kutumia mfumo wa Linux (Debian au Ubuntu) na kusanikisha Mosquitto (Mqtt Broker) juu yake, pia kukuonyesha jinsi ya kutumia Mqtt mteja kwenye Simu yako (Android) / Linux Based mfumo, kutuma na kupokea ujumbe kupitia Mqtt. Baada ya kufahamiana na hii, tungependa kukuonyesha jinsi unaweza kusanidi na kuunganisha bodi yetu na broker huyu wa Mqtt aliyewekwa. Pia ningependa kukuonyesha jinsi unaweza kuongeza uthibitishaji kwa Mqtt broker na vidokezo kadhaa vya msingi na ujanja wa utatuzi. Basi lets kuanza ………..

Hatua ya 1: Kufunga Mqtt Broker:

Kufunga Mqtt Broker
Kufunga Mqtt Broker
Kufunga Mqtt Broker
Kufunga Mqtt Broker
Kufunga Mqtt Broker
Kufunga Mqtt Broker
Kufunga Mqtt Broker
Kufunga Mqtt Broker

Kuna madalali wengi wa Mqtt ambao unaweza kusanikisha. Baadhi ya zile zinazojulikana ni kama ilivyoelezwa hapo chini. Baadhi yao ni huduma za wingu.

  • MzingaMQ
  • MosquittoCloud
  • MQTT
  • Matunda.io

Tutakuonyesha jinsi ya kufunga Mosquitto kwenye mfumo wa Linux (Ubuntu 18.04). Ili kufanya hivyo kwanza ongeza Mosquitto kwenye orodha ya chanzo cha ubuntu. Mara tu Mbu unapopatikana katika hazina za Ubuntu utaweza kuiweka na kupata-apt.

Fungua tu Kituo. Ili kufungua Kituo, nenda kushoto kona ya Ubuntu Desktop, Bonyeza Onyesha programu (Gridi ya 3X3 iliyopigwa). Dirisha litafunguliwa. Huko unatafuta Kituo. Bonyeza kwenye terminal unapaswa kuona dirisha wazi kama onyesho kwenye picha zifuatazo.

  • Onyesha Matumizi (Picha 1).
  • Tafuta Kituo (Picha 2).
  • Dirisha la Kituo (Picha 3).

Ingiza amri zifuatazo baada ya kufungua Kituo

Sudo apt-add-repository ppa: mbu-dev / mbu-ppa

Sudo apt-pata sasisho

Sudo apt-get kufunga mbu

Unaweza pia kusanikisha mteja wa Mqtt. Amri ya kufanya hivyo itakuwa

Sudo apt-install wateja wa mbu

Picha zingine kwa kumbukumbu yako

  • Inaongeza ppa (Picha 4).
  • Inasasisha repo (Picha 5).
  • Kuweka Mosquitto (Picha 6).
  • Kufunga Mteja wa Mbu (Picha 7).

Hatua ya 2: Kupima MQTT (Mosquitto)

Kupima MQTT (Mosquitto)
Kupima MQTT (Mosquitto)
Kupima MQTT (Mosquitto)
Kupima MQTT (Mosquitto)
Kupima MQTT (Mosquitto)
Kupima MQTT (Mosquitto)

Ili kujaribu mqtt kupitia ubuntu (mfumo huo au mfumo mwingine) unahitaji kusanikisha mteja wa mqtt ambayo ilikuwa imewekwa mapema na amri sudo apt-get install mbu-wateja. Ikiwa unataka kuijaribu kwa kutumia simu ya rununu (android), unaweza kusanikisha programu ya MyMqtt kutoka duka la kucheza.

Mqtt hufanya kazi kwa kitu kinachoitwa Mada. Kwa urahisi wa kuelewa fikiria mada hizi kama folda kwenye gari ngumu ya kompyuta. Wacha tuichukue kompyuta hii kama seva ya kompyuta (ambayo katika ulimwengu wa mqtt ni Mqtt Broker). Katika seva hii hebu fikiria kuwa na folda moja.

Jina la folda: / Folda_ya /

Sasa hebu fikiria watu wawili kutoka kwa mifumo miwili tofauti (PC / Laptop) wanaopata seva hii kusoma faili au kutuma / kutupa faili au kufanya operesheni zote mbili.

Tutawataja watu wawili / mfumo kama Mfumo X, Mfumo Y (Hawa ni Wateja wa Mqtt katika Ulimwengu wa Mqtt).

Sasa, wacha mfumo wa X utume / hutupa faili fulani (jina la faili: joto) kwenye folda ya "/ Folder_one /", hii katika ulimwengu wa mqtt tunaweza kuiita uchapishaji huu (tunatuma ujumbe / upakiaji wa malipo badala ya faili).

Sasa, wacha Mfumo Y utake kupata / kusoma faili hii au faili yoyote mpya au kusasisha kwenye folda hii, jambo la kwanza linahitaji ni kujua jina la folda na njia, ambayo kwa upande wetu ni "/ Folder_one /". Kwa hivyo sasa itaenda kwenye folda hii na kusoma / kupokea faili hiyo (jina la faili: joto). Kujua njia / Mada na kuangalia mabadiliko kwenye faili / faili mpya katika ulimwengu wa Mqtt ni usajili kwa mada hiyo.

Kuzingatia mfano hapo juu, Mfumo X unachapisha kwa "/ Folder_one" na Mfumo Y umejiunga na "/ Folder_one"

Pia kumbuka kuwa Mfumo X unaweza pia kujisajili kwa "/ Folder_one" na Mfumo Y pia unaweza Kuchapisha kwa "/ Folder_one". Kama busara hata mfumo wa Seva (Broker ya Mqtt) inaweza kuchapisha / kujiandikisha kwa "/ Folder_one" kwa kusanikisha mteja wa Mqtt juu yake kama vile tumefanya sasa. Kitu kingine cha kukumbuka ni kuchapisha au kujiandikisha kwa mada ambayo utahitaji kujua anwani ya IP ya Mqtt Broker.

Kwanza tutaijaribu kupitia mteja wa ubuntu ambayo imewekwa kwenye mfumo sawa na broker. Tutafungua windows terminal mbili moja itachapisha na nyingine itajiandikisha. Kwa mfano Tutatumia / Folder_one kama mada. Kabla ya chapisho / chini ya mada utahitaji kupata anwani ya IP ya ubuntu. Ili kufanya hivyo bonyeza kwenye kona ya juu ya kulia ya skrini, chagua mpangilio wa wifi, kutoka hapo utaweza kupata anwani ya IP ya mfumo wa ubuntu (kwa sasa broker IP). Picha ya skrini iliyoshirikiwa kwa kumbukumbu (Picha 8).

Au kupata anwani ya IP ya broker unaweza kupata anwani ya IP kwa kusanikisha zana za wavu kwa kutumia amri ifuatayo kwenye terminal

Sudo apt kufunga zana za wavu

Kuweka zana za wavu (Picha 9). Baada ya hapo andika tu amri ipconfig utapata orodha ya kiolesura cha mtandao na anwani ya mac na IP

Sudo ipconfig

Anwani ya IP ya mfumo wangu ni 192.168.1.67 (Picha 10)

Ili kuchapisha

mosquitto_pub -h 192.168.1.67 -t / Folder_one -m pub_to_folderone

Hapa, mosquitto_pub ni amri, ikifuatiwa na kipengele cha kitambulisho cha param -h ambayo ni mwenyeji / broker anwani ya IP (Kwa upande wetu 192.168.1.67), ikifuatiwa na -t ambayo ni jina la mada kwa mchapishaji (Kwa upande wetu / Folder_one), ikifuatiwa na -m ambayo inamaanisha ujumbe / mzigo wa malipo utatumwa ambao (Kwa upande wetu ni pub_to_folderone).

Kujiunga

mosquitto_sub -h 192.168.1.67 -t / Folda_ya moja

Ujumbe uliotumwa na mchapishaji: pub_to_folderone

Mfano wa kuchapisha

mosquitto_pub -h 192.168.1.67 -t / Folder_one -m "hi mtihani mqtt"

mosquitto_pub -h 192.168.1.67 -t / Folda_ya -m "mqtt inafanya kazi"

Mfano wa jibu lililopokelewa kwa usajili wa mada

mosquitto_sub -h 192.168.1.67 -t / Folda_ya moja

Ujumbe uliotumwa na mchapishaji:

  • pub_to_folderone
  • hi mtihani mqtt
  • mqtt kufanya kazi

Pub Sub katika dirisha mbili tofauti za terminal kando (Image 11)

Kujaribu Mqtt kwenye android (my mqtt)

Sakinisha programu ya mymqtt kutoka duka la kucheza kwenye simu yako ya android (Picha 12)

Fungua programu na bonyeza kona ya juu upande wa kushoto (Picha 13, Picha 14).

Bonyeza kwenye Mipangilio na uweke anwani ya IP ya broker, bandari kwa chaguo-msingi itakuwa 1883. Hivi sasa hatutumii mqtt broker iliyothibitishwa kwa hivyo jina la mtumiaji na nywila zitakuwa wazi. Ila tu na bonyeza tena kwenye kona ya juu ya kushoto ya programu (<Mipangilio) droo itafunguliwa tena (Picha 15).

Juu ya droo itakuonyesha anwani ya IP ya broker na bandari programu imeunganishwa kwenye (Picha 16).

Sasa ongeza mada unayotaka kujisajili kwa kubonyeza Kujiunga. Hapa tutakuwa tukiongeza mada kama / Folder_one (Picha 17, Picha 18).

Baada ya kufanya hivyo, kutoka kwa mfumo wa ubuntu kwa kutumia terminal tutachapisha kwenye mada. Wakati wa kuchapisha unapaswa kupata malipo / ujumbe uliochapishwa kwenye programu hii ya rununu. Kwa mfano kuchapisha mzigo wa malipo kama "ARM -Automation Robotic & Mechatronics". Amri ni kama ilivyotajwa hapo awali.

mosquitto_pub -h 192.168.1.67 -t / Folder_one -m "ARM -Automation Robotic & Mechatronics"

kuchapisha kutoka kwa mfumo wa ubuntu (Picha 19).

Imepokea ujumbe uliochapishwa kwenye dashibodi (Picha 20).

Sasa hebu tuchapishe kutoka kwa simu ya android (My mqtt) na tujiandikishe kwenye mfumo wa ubuntu. Kwa mfano huu tunatumia mada "/ mymqtt_to_pub".

Ili kufanya hivyo kwanza fungua kituo kutoka kwa mfumo wako wa ubuntu na ujiandikishe kwa mada "/ mymqtt_to_pub" ukitumia amri ifuatayo (Picha 21)

mbu_sub -h 192.168.1.67 -t / mymqtt_to_pub

Sasa nenda kwenye droo ya programu ya mymqtt na bonyeza bonyeza. Ongeza mada ya kuchapisha (Kwa upande wetu ni "/ mymqtt_to_pub") na tuma ujumbe kama tutatuma "hi Ubuntu", bonyeza kitufe cha kutuma (Picha 22, Picha 23).

Ujumbe unapaswa kuonekana kwenye dirisha lako la mwisho la mfumo wa ubuntu (Picha 24).

Kumbuka kuwa mfumo wa ubuntu na simu ya android inapaswa kuwa kwenye mtandao mmoja au bandari 1883 inapaswa kufunuliwa na unapaswa kujua anwani ya IP ya router / lango lako la mqtt kufanya kazi. Ikiwa unataka kuongeza uthibitishaji kwa broker yako ya mqtt unaweza kuifanya kwa kufuata kiunga cha blogi kilichotajwa hapo chini https://medium.com/@eranda/setting-up-authenticat… Fuata kutoka kwa hatua mbili za blogi hii. Tumewezesha uthibitishaji wa broker wetu na tutatumia broker aliyethibitishwa kwa bodi zetu.

Hatua ya 3: Kufanya kazi na Bodi ya Armtronix & Mqtt

Kufanya kazi na Bodi ya Armtronix & Mqtt
Kufanya kazi na Bodi ya Armtronix & Mqtt
Kufanya kazi na Bodi ya Armtronix & Mqtt
Kufanya kazi na Bodi ya Armtronix & Mqtt
Kufanya kazi na Bodi ya Armtronix & Mqtt
Kufanya kazi na Bodi ya Armtronix & Mqtt

Hivi sasa kwa mafunzo haya, tunatumia Bodi yetu ya Wifi Single Dimmer ambayo hutumia Triac kukata wimbi la sine na kuzima balbu au kudhibiti kasi ya shabiki. Pia tumeiunganisha kupitia aina ya uthibitishaji wa mqtt.

Hapo awali tumesanidi bodi. Hatua za kuisanidi ni kama ilivyoelezwa hapo chini.

Nguvu kwenye ubao, itaanza kuandaa Kituo cha Ufikiaji cha Wifi.

Kutumia simu ya admin au kompyuta ndogo unganisha kwenye AP hii (Picha 25).

Mara baada ya Kuunganishwa na aina hii ya AP 192.168.4.1 kwa kufungua kivinjari (chrome / firefox) kutoka kwa mfumo uliounganishwa wa AP / Simu. Hakikisha hutumii muunganisho wako wa data (3G / 4G).

Wakati wa kuandika IP, ukurasa wa wavuti utafungua ambapo ufuataji lazima uingizwe (Picha 26).

  • SSID: Jina la Wifi AP.
  • Nenosiri: Nenosiri la SSID.
  • Modi ya IoT Mqtt au Http (Chagua Mqtt).
  • Mqtt Broker IP (Kwa upande wetu ni 192.168.1.67).
  • Jina la mtumiaji wa Mqtt na nywila, kwani tunatumia aina ya uthibitishaji, tumetumia Naren, xxxx
  • Mqtt chapisha mada: Hii itakuwa juu ya mada ambayo bodi inachapisha pia, tumetumia / testpub.
  • Mqtt jiandikishe mada: Hii itakuwa juu ya mada ambayo bodi inasikiliza kwa amri za kusababisha triac, tumetumia / testub.
  • Jina la kifaa: Ni jina unaloita alexa kwa kuchochea bodi, tumetumia corvi.

Baada ya kuingiza maelezo, Bonyeza kitufe cha kuwasilisha, kwa kufanya hivyo utapata skrini kama inavyoonyeshwa kwenye Picha 27, subiri kwa muda hadi bodi itaacha kuwa mwenyeji wa AP.

Tafadhali kumbuka kuwa tumeunganisha bodi yetu kupitia Uart kwa mfuatiliaji wa serial wa Arduino IDE. Kwa hivyo upande wa kushoto utaona ujumbe wa utatuzi unachapisha kupitia Uart (hii ni kwa kumbukumbu yako tu).

Mara hii itakapofanyika unaweza kutazama skrini ya utatuzi. Maelezo mengi yataonekana hapo. Baada ya hii, itaweza kufanikiwa kuungana na broker kwenye skrini ya utatuzi (serial) unaweza kuona hii.

Imeunganishwa na broker wa MQTT na uthibitishaji. Imesajiliwa kwa mada 1.

Baada ya kuchapisha hii sasa unaweza kuanza kuipeleka amri kupitia mqtt juu ya mada iliyojiandikisha kwa ie / testub /

Kwa amri hizi za bodi ni:

  • R13_ON: Kuwasha triac hadi 100%.
  • R13_OFF: Kuzima triac hadi 0%.
  • Dimmer: xx: Wapi, xx ni thamani ya kufifia na inaweza kuwa tofauti kutoka 0 hadi 99.
  • Rudisha: Kufuta usanidi wa bodi.
  • Hali: Chapisha hali ndogo ya bodi kwenye mada ya kuchapisha ya bodi.

Kutuma amri hii kutoka kwa mfumo wa msingi wa Ubuntu ambapo mteja wa mqtt amewekwa, andika tu kama onyesha hapa chini. Vigezo viwili vya ziada vinaongezwa hapa kwa sababu ya uthibitishaji - i.e. -u ambayo ni jina la mtumiaji na -P ni nenosiri, tafadhali kumbuka kuwa hizi ni nyeti sana.

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testub -m R13_ON

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testub -m R13_OFF

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testub -m Dimmer: 50

Kumbuka: 50 ni thamani ya kufifia

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testub -m R13_ON

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testub -m Hali

Kwa hali ya hivi karibuni, hali hiyo inachapishwa kwenye mada ya uchapishaji ya bodi ambayo kwa upande wetu ni / testpub. Kwenye bodi yetu mabadiliko yoyote kwenye kifaa yamechapishwa kwenye mada ya uchapishaji ya bodi. Kwa mfano, ikiwa tutapita Dimmer: 50 kwenye mada iliyosajiliwa kwenye bodi kuliko kutekeleza hii kwa mwili, bodi itatuma ujumbe ukisema kiwango kilichofifia kwenye mada ya kuchapisha. Mfano umeonyeshwa hapa chini, Kujiandikisha kutoka kwa mfumo wako wa ubuntu hadi mada ya uchapishaji ya bodi ingiza amri ifuatayo

mosquitto_sub -h 192.168.1.67 -u Naren -P xxxx -t / testpub

ujumbe tunaopata ni

PunguzaIS50

kaptura chache za skrini sawa ziko chini (Picha 28, Picha 29)

Ilipendekeza: