ዝርዝር ሁኔታ:

NodeMCU - MQTT መሰረታዊ ምሳሌ 4 ደረጃዎች
NodeMCU - MQTT መሰረታዊ ምሳሌ 4 ደረጃዎች

ቪዲዮ: NodeMCU - MQTT መሰረታዊ ምሳሌ 4 ደረጃዎች

ቪዲዮ: NodeMCU - MQTT መሰረታዊ ምሳሌ 4 ደረጃዎች
ቪዲዮ: How to Publish DHT11 Sensor Data from NodeMCU to Mosquitto MQTT Broker over LAN | NodeMCU | MQTT | 2024, ሀምሌ
Anonim
Image
Image

ይህ ትምህርት በ NodeMCU ቦርድ ላይ ያለውን መሠረታዊ የ MQTT ፕሮቶኮል አጠቃቀም ያሳያል። እኛ እዚህ MQTTBox ን እንደ MQTT ደንበኛ እንጠቀማለን ፣ እና የሚከተሉትን ክንውኖች ለማጠናቀቅ NodeMCU ን እንጠቀማለን።

በየሰከንዱ “outTopic” በሚለው ርዕስ ላይ “ሰላም ዓለም” ን ያትሙ። በ “inTopic” ርዕስ ላይ ይመዝገቡ ፣ ማንኛውንም የተቀበሉ መልዕክቶችን ያትሙ። የተቀበሉት የክፍያ ጭነቶች ሁለትዮሽ ያልሆኑ ሕብረቁምፊዎች ናቸው ብሎ ያስባል። የተመዘገበው መልእክት “1” ከሆነ ፣ ያብሩ onboards LED. በደንበኝነት ለመመዝገብ የተላከው መልእክት “0” ከሆነ የቦርድ LED ን ያጥፉ።

ዝግጅት: Osoyoo NodeMCU x1

የዩኤስቢ ገመድ x1

ፒሲ x1

አርዱዲኖ አይዲኢ (ጥቅስ 1.6.4+)

በዩኤስቢ ገመድ በኩል NodeMCU ን ከፒሲ ጋር ያገናኙ።

ደረጃ 1 የቤተ መፃህፍት ጭነት

የቤተ መፃህፍት ጭነት
የቤተ መፃህፍት ጭነት
የቤተ መፃህፍት ጭነት
የቤተ መፃህፍት ጭነት

PubSubClientlibrary ን ይጫኑ

ከ MQTT ደላላ ጋር ለመገናኘት የ MQTT የመጨረሻ ነጥብ ቤተ-መጽሐፍት (PubSubClient) እንፈልጋለን ፣ እባክዎን ቤተመጽሐፉን ከሚከተለው አገናኝ ያውርዱ

ከላይ ያለውን ፋይል ይንቀሉ ፣ ያልታሸገውን አቃፊ ወደ አርዱዲኖ አይዲኢ ቤተ -መጽሐፍት አቃፊ ያንቀሳቅሱት።

Arduino IED ን ይክፈቱ ፣ በ “ምሳሌዎች” አምድ ላይ “pubsubclient” ን ማግኘት ይችላሉ።

የ MQTT ደንበኛን ይጫኑ ፦

እኛ MQTTBox ን እንደ MQTT ደንበኛ እንጠቀማለን። እባክዎን ከዚህ ያውርዱ

ደረጃ 2 ኮድ

ኮድ
ኮድ
ኮድ
ኮድ

አርዱዲኖ አይዲኢን ይክፈቱ -> ፋይል -> ምሳሌ -> pubsubclient–> mqtt esp8266 ፣ የናሙና ኮድ ያገኛሉ።

የሚከተሉት ክዋኔዎች እንደመሆንዎ መጠን የራስዎን WiFi እና MQTT ቅንብሮችን ለማስማማት ኮዱን ያርትዑ 1) የሆትፖት ውቅር - ከኮድ መስመር በታች ያግኙ ፣ የራስዎን ssid እና የይለፍ ቃል እዚያ ላይ ያድርጉት።

const char* ssid = “your_hotspot_ssid”; const char* password = “your_hotspot_password”;

2) MQTT የአገልጋይ አድራሻ ቅንብር ፣ እዚህ ነፃ የ MQTT ደላላን “broker.mqtt-dashboard.com” እንጠቀማለን። ከ mqtt_server እሴት በላይ ለማዘጋጀት የራስዎን የ MQTT ደላላ ዩአርኤል ወይም የአይፒ አድራሻ መጠቀም ይችላሉ። እንዲሁም እንደ “broker.mqtt-dashboard.com” ፣ “iot.eclipse.org” ወዘተ ያሉ ፕሮጀክቱን ለመሞከር አንዳንድ ታዋቂ ነፃ የ MQTT አገልጋይን መጠቀም ይችላሉ።

const char* mqtt_server = “broker.mqtt-dashboard.com”;

3) የ MQTT ደንበኛ ቅንብሮች የእርስዎ MQTT ደላላ የደንበኛ መታወቂያ ፣ የተጠቃሚ ስም እና የይለፍ ቃል ማረጋገጫ ከፈለገ ፣ ያስፈልግዎታል

ለውጥ

ከሆነ (client.connect (clientId.c_str ()))

ወደ

ከሆነ (client.connect (clientId ፣ userName ፣ passWord)) // የእርስዎን clientId/userName/passWord እዚህ ያስቀምጡ

ካልሆነ ፣ ልክ እንደ ነባሪ ያቆዩዋቸው። ከዚያ በኋላ ተጓዳኝ የቦርድ ዓይነትን እና የወደብ ዓይነትን ከዚህ በታች ይምረጡ ፣ ከዚያ ንድፉን ወደ ኖድኤምሲዩ ይስቀሉ።

  • ቦርድ “NodeMCU 0.9 (ESP-12 ሞዱል)”
  • የሲፒዩ ድግግሞሽ “80 ሜኸ” የፍላሽ መጠን - 4 ሜ (3 ሜ SPIFFS)
  • የሰቀላ ፍጥነት ፦”115200 ″
  • ወደብ: ለእርስዎ NodeMCU የራስዎን ተከታታይ ወደብ ይምረጡ

ደረጃ 3 የ MQTT ደንበኛን ያዋቅሩ (MQTTBOX)

የ MQTT ደንበኛን (MQTTBOX) ያዋቅሩ
የ MQTT ደንበኛን (MQTTBOX) ያዋቅሩ
የ MQTT ደንበኛን (MQTTBOX) ያዋቅሩ
የ MQTT ደንበኛን (MQTTBOX) ያዋቅሩ
የ MQTT ደንበኛን (MQTTBOX) ያዋቅሩ
የ MQTT ደንበኛን (MQTTBOX) ያዋቅሩ
የ MQTT ደንበኛን (MQTTBOX) ያዋቅሩ
የ MQTT ደንበኛን (MQTTBOX) ያዋቅሩ

በዚህ ደረጃ ፣ በ MQTTBox ላይ የ MQTT ደንበኛን እንዴት መፍጠር እንደሚቻል እናሳያለን።

አዲስ የ MQTT ደንበኛ ለማከል የእርስዎን MQTTBox ይክፈቱ እና ሰማያዊውን ቁልፍ ጠቅ ያድርጉ።

የ MQTT ደንበኛ ቅንብሮችን ከዚህ በታች እንደሚከተለው ያዋቅሩ

  • የ MQTT ደንበኛ ስም - የሚወዱትን ማንኛውንም ስም ይምረጡ
  • ፕሮቶኮል - “mqtt/tcp” ን ይምረጡ
  • አስተናጋጅ - በዚህ አምድ ውስጥ የእርስዎን “mqtt_server” ይተይቡ ፣ ከእርስዎ ንድፍ ጋር ተመሳሳይ መሆኑን ያረጋግጡ። (እኛ “broker.mqtt-dashboard.com” ን እዚህ እንጠቀማለን)
  • ሌሎች ቅንብሮችን እንደ ነባሪ ያቆዩ
  • ለውጦችዎን ለማስቀመጥ ጠቅ ያድርጉ።

በመቀጠል ፣ በራስ -ሰር ወደ አዲሱ ገጽ ይገባሉ። ከላይ ያለው ውቅረት ሁሉ ትክክል ከሆነ ፣ “አልተገናኘም” ወደ “ተገናኝቷል” ፣ የእርስዎ MQTT ደንበኛ ስም እና የአስተናጋጅ ስም በዚህ ገጽ አናት ላይ ይታያል።

የርዕስ ቅንብር - የእርስዎ የ MQTT ደንበኛ ህትመት ርዕስ ከእርስዎ አርዱዲኖ ረቂቅ የምዝገባ ርዕስ (inTopic እዚህ ጋር ተመሳሳይ መሆኑን ያረጋግጡ። የእርስዎ የ MQTT ደንበኛ የደንበኝነት ምዝገባ ርዕስ ከእርስዎ አርዱዲኖ ረቂቅ ህትመት ርዕስ ‹outTopic እዚህ› ጋር ተመሳሳይ መሆኑን ያረጋግጡ።

ደረጃ 4: የፕሮግራም አሂድ ውጤት

የፕሮግራም አሂድ ውጤት
የፕሮግራም አሂድ ውጤት
የፕሮግራም አሂድ ውጤት
የፕሮግራም አሂድ ውጤት
የፕሮግራም አሂድ ውጤት
የፕሮግራም አሂድ ውጤት
የፕሮግራም አሂድ ውጤት
የፕሮግራም አሂድ ውጤት

አንዴ ሰቀላው ከተከናወነ የ wifi መገናኛ ነጥብ ስም እና የይለፍ ቃል ቅንብር እሺ ከሆነ ፣ እና የ MQTT ደላላ ከተገናኘ ፣ ተከታታይ ሞኒተርን ይክፈቱ ፣ “ጤና ይስጥልኝ ዓለም” የሚለውን የህትመት መልእክት በተከታታይ ማሳያ ላይ ያያሉ።

ከዚያ የ MQTT ደንበኛውን ይክፈቱ እና ለርዕሰ ጉዳዩ የደመወዝ ጭነት “1” ን ያትሙ ፣ ይህ NodeMCU ለ “inTopic” በመመዝገብ እነዚህን መልእክቶች ይቀበላል ፣ እና ኤልኢዲ መብራት ይሆናል።

በዚህ ርዕስ ላይ የክፍያ ጭነት “0” ን ያትሙ ፣ NodeMCU LED ይጠፋል።

የሚመከር: