Мазмуну:
- 1 -кадам: Mqtt Брокерин орнотуу:
- 2 -кадам: MQTT (Mosquitto) тестирлөө
- 3 -кадам: Armtronix Board & Mqtt менен иштөө
Video: Armtronix такталарында MQTT: 3 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
Бул көрсөтмөдө биз башында Linux (Debian же Ubuntu) негизделген системаны кантип колдоно алаарыңызды жана ага Mosquitto (Mqtt Broker) орнотууну, ошондой эле Mqtt кардарын телефонуңузда (Android)/ Linux негизинде кантип колдонууну көрсөтүүнү каалайбыз. системасы, Mqtt аркылуу билдирүүлөрдү жөнөтүү жана алуу. Бул менен таанышкандан кийин, биз бул орнотулган Mqtt брокери менен биздин тактаны кантип конфигурациялап, туташтыра алаарыңызды көрсөткүбүз келет. Ошондой эле сиз Mqtt брокерине аутентификацияны кантип кошо алаарыңызды жана мүчүлүштүктөрдү оңдоонун негизги кеңештерин жана ыкмаларын көрсөткүм келет. Андыктан баштайлы ………
1 -кадам: Mqtt Брокерин орнотуу:
Сиз орното турган бир нече Mqtt брокерлери бар. Кээ бирлери төмөндө айтылгандай. Алардын айрымдары булутка негизделген кызматтар.
- HiveMQ
- MosquittoCloud
- MQTT
- Adafruit.io
Биз сизге Mosquitto -ны Linux негизиндеги системага (Ubuntu 18.04) кантип орнотууну көрсөтөбүз. Бул үчүн адегенде Mosquitto ubuntu булактарынын тизмесине кошулат. Mosquitto Ubuntu репозиторийлеринде болгондон кийин, сиз аны apt-get менен орното аласыз.
Терминалды ачыңыз. Терминалды ачуу үчүн, Ubuntu Desktopтун сол жактагы төмөнкү бурчуна өтүңүз, Колдонмону көрсөтүүнү басыңыз (3X3 чекиттүү чекит). Терезе ачылат. Ал жерден сиз Терминалды издейсиз. Терминалды чыкылдатыңыз, сиз төмөнкү сүрөттөрдө ачылган терезени көрө аласыз.
- Колдонмону көрсөтүү (1 -сүрөт).
- Терминалды издөө (2 -сүрөт).
- Терминал терезеси (3 -сүрөт).
Терминалды ачкандан кийин төмөнкү буйруктарды киргизиңиз
sudo apt-add-repository ppa: чиркей-dev/mosquitto-ppa
sudo apt-get update
sudo apt-get чиркейди орнотуңуз
Сиз ошондой эле Mqtt кардарын орното аласыз. Буга буйрук болот
sudo apt-get чиркей-кардарларды орнотуңуз
Маалымат үчүн кээ бир сүрөттөр
- Ppa кошуу (Image 4).
- Репо жаңыртылууда (5 -сүрөт).
- Mosquitto орнотуу (6 -сүрөт).
- Mosquitto Кардарын орнотуу (Image 7).
2 -кадам: MQTT (Mosquitto) тестирлөө
Mqttти ubuntu (ошол эле система же башка система) аркылуу текшерүү үчүн мурда sudo apt-get install mosquitto-clients буйругу менен орнотулган mqtt клиентин орнотушуңуз керек. Эгерде сиз аны уюлдук телефондун (андроид) жардамы менен сынап көргүңүз келсе, MyMqtt тиркемесин оюн дүкөнүнөн орнотсоңуз болот.
Mqtt Темалар деп аталган нерсенин үстүндө иштейт. Түшүнүүнүн оңой болушу үчүн бул темаларды компьютердин катуу дискиндеги папка катары карап көрүңүз. Келгиле, бул компьютерге компьютердик сервер катары мамиле кылалы (mqtt дүйнөсүндө Mqtt брокери). Бул серверде бир папкага ээ болууну карап көрөлү.
Папканын аты: /Folder_one /
Эми келгиле, бул серверге кирген эки башка системадан (PC/ноутбук) эки адамды карап көрөлү же файлдарды окуу үчүн, же файлдарды жөнөтүү/төгүү үчүн же экөөнү тең иштетүү үчүн.
Биз эки кишини/системаны System X, System Y деп атайбыз (Бул Mqtt дүйнөсүндөгү Mqtt кардарлары).
Эми, айталы, System X кандайдыр бир файлды (файлдын аталышы: температурасы) “/Folder_one/” папкасына жөнөтөт/төгөт, бул mqtt дүйнөсүндө биз бул жарыялоону атай алабыз (биз файлдын ордуна кээ бир билдирүүлөрдү/жүктөрдү жөнөтөбүз).
Эми, Y системасы бул файлды же кандайдыр бир жаңы файлды алууну/окууну же бул папкада жаңыртууну каалайт дейли, биринчи кезекте папканын атын жана жолун билүү керек, ал биздин учурда "/Folder_one/". Ошентип, азыр ал бул папкага барып, ошол файлды окуйт/алат (файлдын аталышы: температура). Жол/Теманы билүү жана Mqtt дүйнөсүндөгү файлдын/жаңы файлдардын өзгөрүшүн текшерүү - бул темага жазылуу.
Жогорудагы мисалды эске алып, Система X "/Folder_one" га жарыяланууда жана Y системасы "/Folder_one" га жазылды
Ошондой эле X системасы "/Folder_one" га жазыла алат, ал эми System Y дагы "/Folder_one" га жарыялай алат. Акылдуу болгондой эле, Server системасы да (The Mqtt Broker) Mqtt кардарын ага орнотуу аркылуу "/Folder_one" га жарыялай алат/жазыла алат. Эстен чыгарбоо керек болгон нерсе - Mqtt Brokerдин IP дарегин билишиңиз керек болгон теманы жарыялоо же жазылуу.
Биринчиден, биз аны брокер сыяктуу эле системада орнотулган ubuntu кардары аркылуу текшеребиз. Биз эки терминалдык терезени ачабыз, бири жарыялайт, экинчиси ага жазылат. Мисалы үчүн биз /Folder_one темасын колдонобуз. Пабга/темага кирүүдөн мурун ubuntuнун IP дарегин табышыңыз керек болот. Бул үчүн, экрандын жогорку оң бурчуна чыкылдатыңыз, wifi орнотуусун тандаңыз, ал жерден ubuntu системасынын IP дарегин таба аласыз (учурда брокер IP). Screenshort маалымдама үчүн бөлүшүлгөн (8 -сүрөт).
Же брокердин IP дарегин табуу үчүн терминалда төмөнкү буйрукту колдонуу менен таза инструменттерди орнотуу менен IP дарегин таба аласыз
sudo apt net-tools орнотуу
Таза инструменттерди орнотуу (9-сүрөт). Андан кийин ipconfig буйругун териңиз, анда сиз Mac жана IP дареги бар тармак интерфейсинин тизмесин аласыз
sudo ipconfig
Менин системамдын IP дареги 192.168.1.67 (Сүрөт 10)
Басып чыгаруу
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m pub_to_folderone
Бул жерде mosquitto_pub -буйрук, андан кийин -хосттун /брокердин IP дареги болгон параметрдин идентификатору элемент (биздин учурда 192.168.1.67), андан кийин -t басмакананын темасынын аталышы (Биздин учурда /Folder_one), андан кийин -m бул жөнөтүлө турган билдирүүнү/пайдалуу жүктү билдирет (Биздин учурда pub_to_folderone).
Жазылуу
mosquitto_sub -h 192.168.1.67 -t /Folder_one
Жарыялоочу жөнөткөн билдирүү: pub_to_folderone
Жарыялоо үчүн мисал
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”
Темага жазылуу боюнча алынган жооптордун мисалы
mosquitto_sub -h 192.168.1.67 -t /Folder_one
Басмакана жөнөткөн билдирүү:
- pub_to_folderone
- салам тест mqtt
- mqtt иштеп жатат
Pub Sub эки башка терминал терезесинде жанаша (Image 11)
Androidде Mqttти тестирлөө (менин mqtt)
Mymqtt колдонмосун андроид телефонуңузга Play Storeдон орнотуңуз (Сүрөт 12)
Колдонмону ачыңыз жана жогорку сол бурчун басыңыз (Сүрөт 13, Сүрөт 14).
Орнотууларды чыкылдатыңыз жана брокердин IP дарегин киргизиңиз, порт демейки боюнча 1883 болот. Учурда биз аутентификацияланган mqtt брокерин колдонбойбуз, андыктан колдонуучунун аты жана сырсөзү бош калат. Жөн гана аны сактап, кайра колдонмонун жогорку сол бурчун чыкылдатыңыз (<Орнотуулар), тартма кайра ачылат (Сүрөт 15).
Тартманын үстүндө ал сизге брокердин IP дарегин жана колдонмонун туташкан портун көрсөтөт (Сүрөт 16).
Эми жазылууну каалаган теманы жазылууну басыңыз. Бул жерде биз теманы /Folder_one катары кошобуз (Image 17, Image 18).
Муну аткаргандан кийин, ubuntu системасынан терминалды колдонуу менен биз темага жарыялайбыз. Жарыялоодо сиз бул мобилдик колдонмодо жарыяланган пайдалуу жүктү/билдирүүнү алышыңыз керек. Мисалы, жүктү "ARM -Automation Robotics & Mechatronics" деп жарыялоо. Команда мурда айтылгандай.
mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “ARM -Автоматтык робототехника жана мехатроника”
ubuntu системасынан жарыялоо (Сүрөт 19).
Панелде жарыяланган билдирүү алынды (Image 20).
Эми андроид телефондон (My mqtt) жарыялап, ubuntu системасына жазылалы. Бул мисал үчүн биз "/mymqtt_to_pub" темасын колдонуп жатабыз.
Бул үчүн адегенде ubuntu системаңыздан терминал ачыңыз жана төмөнкү буйрукту колдонуп "/mymqtt_to_pub" темасына жазылыңыз (Сүрөт 21)
mosquitto_sub -h 192.168.1.67 -t /mymqtt_to_pub
Эми mymqtt колдонмосунун суурмасына барып, жарыялоону басыңыз. Жарыялоо темасын кошуңуз (Биздин учурда бул "/mymqtt_to_pub") жана биз "салам Ubuntu" жөнөтө тургандай билдирүү жөнөтүп, жөнөтүү баскычын басыңыз (22 -сүрөт, 23 -сүрөт).
Билдирүү ubuntu системасынын терминалдык терезесинде көрүнүшү керек (Сүрөт 24).
Белгилей кетсек, ubuntu системасы да, андроид телефону да бир тармакта болушу керек же 1883 портунда ачык болушу керек жана mqtt иштеши үчүн роутериңиздин/шлюзуңуздун IP дарегин билишиңиз керек. Эгерде сиз mqtt брокерине аутентификацияны кошкуңуз келсе, муну төмөндөгү блог шилтемеси аркылуу аткарсаңыз болот https://medium.com/@eranda/setting-up-authenticat… Бул блогдун экинчи кадамын аткарыңыз. Биз брокерибиздин аутентификациясын иштеттик жана биздин такталар үчүн тастыкталган брокерди колдонобуз.
3 -кадам: Armtronix Board & Mqtt менен иштөө
Учурда бул көрсөтмө үчүн, биз Wifi Single Dimmer тактасын колдонобуз, ал синус толкунун кесүү үчүн Триакты колдонот жана өз кезегинде лампочканы өчүрөт же желдеткичтин ылдамдыгын көзөмөлдөйт. Ошондой эле биз аны mqtt аутентификация түрү аркылуу байланыштырдык.
Башында биз тактаны конфигурацияладык. Аны конфигурациялоо кадамдары төмөндө айтылгандай.
Тактада Wifi кирүү чекити башталат.
Android телефонун же ноутбугун колдонуу менен бул APге туташыңыз (25 -сүрөт).
Бул APга 192.168.4.1 түрүнө туташкандан кийин, AP туташкан тутумдан/Телефондон браузерди (chrome/firefox) ачуу менен. Маалымат байланышыңызды колдонбогонуңузду текшериңиз (3G/4G).
IP терип жатканда, төмөнкү киргизилиши керек болгон веб -баракча ачылат (Сүрөт 26).
- SSID: Wifi AP аты.
- Сырсөз: SSID сырсөзү.
- IoT режими Mqtt же Http (Mqtt тандоо).
- Mqtt Broker IP (Биздин учурда бул 192.168.1.67).
- Mqtt колдонуучунун аты жана сырсөзү, биз аутентификация түрүн колдонуп жаткандыктан, биз Naren, xxxxти колдондук
- Mqtt жарыялоо темасы: Бул такта кайсы темада чыгат, биз /testpub колдонгон болобуз.
- Mqtt жазылуу темасы: Бул тактаны иштетүү үчүн буйруктарды такта угуучу кайсы темада болот, биз /testsub колдонгонбуз.
- Түзмөктүн аты: Бул тактаны иштетүү үчүн alexa'га чакырган ысым, биз corvi колдондук.
Чоо -жайын киргизгенден кийин, тапшыруу баскычын басыңыз, муну менен сиз 27 -сүрөттө көрсөтүлгөндөй экранга ээ болосуз, такта APди кабыл алууну токтотмойунча бир аз күтө туруңуз.
Белгилей кетсек, биз тактайыбызды Uart аркылуу Arduino IDE сериялык мониторуна туташтырдык. Ошентип, сол жагында сиз Uart аркылуу басып чыгарган мүчүлүштүктөрдү көрө аласыз (бул сиздин маалыматыңыз үчүн).
Бул бүткөндөн кийин сиз мүчүлүштүктөрдү оңдоо экранын көрө аласыз. Деталдардын көбү ошол жерде көрүнөт. Андан кийин, ал брокерге мүчүлүштүктөрдү оңдоо (сериялык) экранында туташат, муну көрө аласыз.
Аутентификация менен MQTT брокерине туташты. 1 -темага жазылдым.
Муну басып чыгаргандан кийин, азыр жазыла турган темада mqtt аркылуу буйруктарды жөнөтө баштасаңыз болот, башкача айтканда /testsub /
Бул үчүн комиссиянын буйруктары:
- R13_ON: Триакты 100%күйгүзүү үчүн.
- R13_OFF: триаканы 0%га өчүрүү үчүн.
- Dimmer: xx: Бул жерде, xx - күңүрт мааниси жана 0дөн 99га чейин өзгөрүшү мүмкүн.
- Баштапкы абалга келтирүү: тактанын конфигурациясын тазалоо үчүн.
- Статус: Тактанын жарыялоо темасындагы тактанын күңүрт абалын басып чыгарыңыз.
Бул буйрукту mqtt клиенти орнотулган ubuntu негизделген системадан жөнөтүү үчүн, аны төмөндө көрсөтүлгөндөй териңиз. Аутентификациядан улам бул жерге эки кошумча параметр кошулган -б.а. -колдонуучунун аты жана -P -сырсөз, булар чоң -кичине экенин эске алыңыз.
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 Диммер: 50
Эскертүү: 50 диммер мааниси
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
Акыркы статус үчүн, статус биздин учурда /testpub болгон тактанын жарыялоо темасында басылып чыгат. Биздин тактада түзмөктөгү ар кандай өзгөрүү тактанын жарыялоо темасында басылып чыгат. Мисалы, эгерде биз Dimmer: 50 жазылуу темасында физикалык түрдө аткарууга караганда өтсөк, такта жарыялоо темасынын күңүрт деңгээлин билдирген билдирүү жөнөтөт. Мисал төмөндө көрсөтүлгөн, Ubuntu системаңыздан тактанын жарыялоо темасына жазылуу үчүн төмөнкү буйрукту киргизиңиз
mosquitto_sub -h 192.168.1.67 -u Naren -P xxxx -t /testpub
биз алган кабар
DimmerIS50
ошол эле бир нече экран шорты төмөндө (Сүрөт 28, Сүрөт 29)
Сунушталууда:
MQTT маанай жарыктары ESP32 менен: 4 кадам (сүрөттөр менен)
MQTT Mood Lights with ESP32: Мен LED диапазонуна секирүү үчүн бир топ убакыттан бери азгырылып келгенмин, ошондуктан мен чуркап чыгып, оюнчук үчүн LED тилкесин алдым. Мен бул маанай чырактарын жасап бүттүм. Алар MQTT менен башкарылышы мүмкүн, бул ар кандай акылдууларды кошууга мүмкүндүк берет
MQTT бассейнинин температурасы монитору: 7 кадам (сүрөттөр менен)
MQTT бассейнинин температурасы монитору: Бул долбоор менин башка үй автоматташтыруу долбоорлорумдун шериги болуп саналат Smart Data- Logging Geyser Controller жана Multi-maqsad-Room-Lighting and Appliance Controller. Бул бассейнге орнотулган монитор, бассейндеги суунун температурасын, айланадагы абаны
Акустикалык левитация Arduino Uno менен кадам-кадам (8-кадам): 8 кадам
Акустикалык левитация менен Arduino Uno Step-by-Step (8-кадам): ультрадыбыштуу үн өткөргүчтөр L298N Dc аял адаптеринин электр энергиясы менен камсыздоосу эркек токту Arduino UNOBreadboard Бул кантип иштейт: Биринчиден, сиз Arduino Uno кодун жүктөп бересиз (бул санарип менен жабдылган микроконтроллер) жана аналогдук порттор кодду айландыруу үчүн (C ++)
ARMTRONIX Wifi 30Amps тактасы: 4 кадам (сүрөттөр менен)
ARMTRONIX Wifi 30Amps Board: КИРИШҮҮ: Armtronix 30AMPS Relay board IOT board.The тактасынын өзгөчөлүктөрү төмөнкүлөр болуп саналат: Wireless control.On board USB to UART.On board AC to DC power supp1y 230VAC to 5V DC.AC virtual switch. Тактанын көрүнүшү жана сезими жана өлчөмү 105мм X 7
ARMTRONIX WIFI SINGLE Dimmer Board V0.2: 3 Steps (Сүрөттөр менен)
ARMTRONIX WIFI SINGLE Dimmer Board V0.2: Armtronix Wifi dimmer - бул IOT платасы, ал үйдүн автоматташтырылышы үчүн иштелип чыккан.Тактанын өзгөчөлүктөрү төмөнкүлөр: Зымсыз башкаруу Кичи форма фактору Бортто ACдан DC кубатына чейин 230VACтан 5V DCге чейин. DC виртуалдык которгуч Досканын өлчөмү 61.50