
Სარჩევი:
2025 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2025-01-23 14:50


ეს გაკვეთილი აჩვენებს MQTT პროტოკოლის ძირითად გამოყენებას NodeMCU დაფაზე.ჩვენ ვიყენებთ MQTTBox– ს, როგორც MQTT კლიენტს აქ და ჩვენ გამოვიყენებთ NodeMCU– ს შემდეგი ოპერაციების დასასრულებლად:
გამოაქვეყნეთ "გამარჯობა სამყარო" თემაზე "outTopic" ყოველ ორ წამში. გამოიწერეთ თემა "inTopic", დაბეჭდეთ ნებისმიერი მიღებული შეტყობინება. იგი მიიჩნევს, რომ მიღებული დატვირთვები არის სტრიქონები და არა ორობითი. თუ გამოწერილი შეტყობინება არის "1", აანთეთ ბორტზე LED. გამორთეთ საბორტო LED, თუ გამოწერის შეტყობინება არის "0".
მომზადება: Osoyoo NodeMCU x1
USB კაბელი x1
კომპიუტერი x1
Arduino IDE (ვერსია 1.6.4+)
შეაერთეთ NodeMCU კომპიუტერთან USB კაბელის საშუალებით.
ნაბიჯი 1: ბიბლიოთეკის დაყენება


დააინსტალირეთ PubSubClientlibrary
ჩვენ გვჭირდება MQTT საბოლოო ბიბლიოთეკის დაყენება (PubSubClient) MQTT ბროკერთან დასაკავშირებლად, გთხოვთ გადმოწეროთ ბიბლიოთეკა შემდეგი ბმულიდან:
გახსენით ფაილი ზემოთ, გადაიტანეთ გახსნილი საქაღალდე Arduino IDE ბიბლიოთეკის საქაღალდეში.
გახსენით Arduino IED, თქვენ შეგიძლიათ იპოვოთ "pubsubclient" სვეტში "მაგალითები".
დააინსტალირეთ MQTT კლიენტი:
ჩვენ გამოვიყენებთ MQTTBox– ს, როგორც MQTT კლიენტს. გთხოვთ გადმოწეროთ:
ნაბიჯი 2: კოდი


გახსენით Arduino IDE–> ფაილი–> მაგალითი–> pubsubclient–> mqtt esp8266, თქვენ მიიღებთ კოდის ნიმუშს.
შეცვალეთ კოდი თქვენი WiFi და MQTT პარამეტრების შესაბამისად შემდეგი ოპერაციებისთვის: 1) ცხელი წერტილის კონფიგურაცია: იპოვეთ კოდის ქვემოთ, ჩაწერეთ თქვენი საკუთარი ssid და პაროლი იქ.
const char* ssid = "your_hotspot_ssid"; const char* პაროლი = "your_hotspot_password";
2) MQTT სერვერის მისამართის დაყენება, აქ ჩვენ ვიყენებთ უფასო MQTT ბროკერს "broker.mqtt-dashboard.com". თქვენ შეგიძლიათ გამოიყენოთ თქვენი საკუთარი MQTT ბროკერის URL ან IP მისამართი mqtt_server ღირებულების ზემოთ დასადგენად. თქვენ ასევე შეგიძლიათ გამოიყენოთ რამდენიმე ცნობილი უფასო MQTT სერვერი პროექტის შესამოწმებლად, როგორიცაა "broker.mqtt-dashboard.com", "iot.eclipse.org" და ა.
const char* mqtt_server =”საბროკერო.mqtt-dashboard.com”;
3) MQTT კლიენტის პარამეტრები თუ თქვენი MQTT ბროკერი მოითხოვს clientID, მომხმარებლის სახელი და პაროლის ავთენტიფიკაციას, თქვენ უნდა
შეცვლა
თუ (client.connect (clientId.c_str ()))
დან
if (client.connect (clientId, userName, passWord)) // განათავსეთ თქვენი clientId/userName/passWord აქ
თუ არა, უბრალოდ შეინახეთ ისინი ნაგულისხმევად. ამის შემდეგ შეარჩიეთ შესაბამისი დაფის ტიპი და პორტის ტიპი ქვემოთ, შემდეგ კი ატვირთეთ ესკიზი NodeMCU- ში.
- დაფა:”NodeMCU 0.9 (ESP-12 მოდული)”
- პროცესორის სიხშირე:”80 MHz” Flash ზომა:”4M (3M SPIFFS)”
- ატვირთვის სიჩქარე:”115200
- პორტი: შეარჩიეთ თქვენი სერიული პორტი თქვენი NodeMCU– სთვის
ნაბიჯი 3: MQTT კლიენტის (MQTTBOX) კონფიგურაცია




ამ ნაბიჯში ჩვენ ვაჩვენებთ როგორ შევქმნათ MQTT კლიენტი MQTTBox– ზე.
გახსენით თქვენი MQTTBox და დააჭირეთ ლურჯ ღილაკს ახალი MQTT კლიენტის დასამატებლად.
დააკონფიგურირეთ MQTT CLIENT SETTINGS ქვემოთ:
- MQTT კლიენტის სახელი - შეარჩიეთ თქვენთვის სასურველი სახელი
- პროტოკოლი - აირჩიეთ "mqtt/tcp"
- მასპინძელი - ჩაწერეთ თქვენი "mqtt_server" ამ სვეტში, დარწმუნდით, რომ ეს იგივეა, რაც თქვენი ესკიზი. (ჩვენ ვიყენებთ "broker.mqtt-dashboard.com" აქ)
- შეინახეთ სხვა პარამეტრები ნაგულისხმევად
- დააწკაპუნეთ თქვენი ცვლილებების შესანახად.
შემდეგი, თქვენ ავტომატურად შეხვალთ ახალ გვერდზე. თუ ყველა ზემოთ კონფიგურაცია სწორია, "არ არის დაკავშირებული" შეიცვლება "დაკავშირებულია", თქვენი MQTT კლიენტის სახელი და მასპინძლის სახელი ნაჩვენები იქნება ამ გვერდის ზედა ნაწილში.
თემის პარამეტრი: დარწმუნდით, რომ თქვენი MQTT კლიენტის გამოქვეყნების თემა იგივეა, რაც თქვენი Arduino ესკიზის გამოწერის თემა (inTopic აქ. დარწმუნდით, რომ თქვენი MQTT კლიენტის გამოწერის თემა იგივეა, რაც თქვენი Arduino ესკიზის გამოქვეყნების თემა (გარეგანი თემა აქ.
ნაბიჯი 4: პროგრამის მუშაობის შედეგი




გადმოტვირთვის დასრულების შემდეგ, თუ wifi ცხელი წერტილის სახელი და პაროლი დაყენებულია და MQTT ბროკერი დაკავშირებულია, გახსენით სერიული მონიტორი, სერიულ მონიტორზე დაინახავთ გამოქვეყნების შეტყობინებას „hello world“.
შემდეგ გახსენით MQTT კლიენტი და გამოაქვეყნეთ დატვირთვა „1“თემაზე, ეს NodeMCU მიიღებს ამ შეტყობინებებს „inTopic“- ის გამოწერით და LED განათდება.
გამოაქვეყნეთ დატვირთვა "0" ამ თემაზე, NodeMCU LED გამორთული იქნება.
გირჩევთ:
როგორ გააკეთოთ საკუთარი ოპერაციული სისტემა! (სურათები და მაგალითი შიგნით): 5 ნაბიჯი

როგორ გააკეთოთ საკუთარი ოპერაციული სისტემა! (სურათები და მაგალითი შიგნით): გააკეთე ახლავე
MTP Arduino პროგრამირების მაგალითი: 5 ნაბიჯი

MTP Arduino პროგრამირების მაგალითი: ამ ინსტრუქციებში ჩვენ ვაჩვენებთ როგორ გამოვიყენოთ SLG46824/6 Arduino პროგრამირების ესკიზი დიალოგის SLG46824/6 GreenPAK ™ მრავალჯერადი პროგრამირებადი მოწყობილობის დასაპროგრამებლად. GreenPAK მოწყობილობების უმეტესობა არის ერთჯერადი პროგრამირებადი (OTP), რაც იმას ნიშნავს, რომ ერთხელ მათი არა V
Locker- ის თანამედროვე და ახალი და მარტივი მაგალითი Arduino Matrix კლავიატურით 4x4: 3 ნაბიჯი

Locker- ის თანამედროვე და ახალი და მარტივი მაგალითი Arduino Matrix Keypad 4x4: LCD კლავიატურის მატრიცის 4x4 გამოყენების კიდევ ერთი მაგალითი I2C წრედით
პროგრამის გამომგონებელი 2 - სუფთა წინა რჩევები (+4 მაგალითი): 6 ნაბიჯი

APP გამომგონებელი 2 - სუფთა წინა რჩევები (+4 მაგალითი): ჩვენ ვაპირებთ ვნახოთ, როგორ შეგვიძლია თქვენი აპლიკაცია AI2– ზე ესთეტიურად გამოიყურებოდეს :) ამჯერად კოდი არ არის, მხოლოდ რჩევები გლუვი პროგრამისთვის, როგორც ზემოთ მოყვანილი 4 მაგალითი
IoT Guru Cloud - მარტივი დიაგრამის მაგალითი: 4 ნაბიჯი

IoT Guru Cloud - მარტივი დიაგრამის მაგალითი: IoT Guru Cloud გთავაზობთ რამოდენიმე საყრდენ მომსახურებას REST API– ს საშუალებით და თქვენ შეგიძლიათ მარტივად მოახდინოთ ამ REST ზარების ინტეგრირება თქვენს ვებ გვერდზე. Highcharts– ით თქვენ შეგიძლიათ აჩვენოთ თქვენი გაზომვის სქემები უბრალოდ AJAX ზარით