Blynk: Raspberry-სა და Arduino-ს მარტივი კონტროლი. საჯარო ბნელი სერვერები IoT მოწყობილობებისთვის ბნელი სერვისები Arduino სერვერებისთვის

მე ბევრს ვფიქრობდი იაფი გადაწყვეტის პოვნაზე Arduino-ს ინტერნეტით დასაკავშირებლად და გასაკონტროლებლად Ethernet ეკრანის ან WI-FI მოდულის დაკავშირების საჭიროების გარეშე. შემდგომი გამოკვლევის შემდეგ აღმოვაჩინე, რომ Arduino მიკროკონტროლერთან კომუნიკაციის ერთადერთი გზა არის მისი სერიული პორტი, ამიტომ შევქმენი მარტივი C# ფანჯრის დამატება, როგორც კერა (HUB) სერიულ პორტთან მუშაობისთვის ხარკის გაგზავნისა და მიღებისთვის. გადახდა.

ეს HUB პროგრამა უკვე დაკავშირებულია ინტერნეტთან თქვენი პერსონალური კომპიუტერის საშუალებით და გეხმარებათ მონაცემთა გაგზავნასა და მოძიებაში მიკროკონტროლერსა და მონაცემთა ბაზას შორის, გარდა იმისა, რომ თავად ინახავს მონაცემებს ონლაინ MySQL მონაცემთა ბაზაში.

მანამდე მე მქონდა შანსი დამეწყო პატარა კონდახიდან, რაც საშუალებას მაძლევს გავაპროტესტო იდეის სტაგნაცია. რომელი აპლიკაციისთვის, რაიმე სენსორის მიერთების გარეშე, გამოვიყენე მხოლოდ Arduino LED-ი, რათა შემეძლო ჩართო და გამორთო LED ინდიკატორი PIN 13-ზე, ძველი პორტის შემდეგ ასოების "I" და "O" შეყვანით.

Int შეყვანა; //შესვლის სიმბოლოს შენახვა სერიული პორტიდან. int led = 13; // Pin 13 // რეგულირების ფუნქცია ამოქმედდება ერთხელ, როდესაც დააჭირეთ გადატვირთვის ღილაკს ან დააჭირეთ live ღილაკს int state; void setup() ( // ციფრული პინის LED_BUILTIN ინიციალიზაცია გამომავალი სახით. Serial.begin(9600); pinMode(led, OUTPUT); // დააყენეთ პინი 13 როგორც ციფრული გამომავალი Serial.flush(); ) // ფუნქცია მარყუჟდება ისევ და ისევ void loop() ( // სტრიქონის შეყვანა = ""; // while (Serial.available() > 0) // ( // input += (char) Serial.read( ) ; // delay(5); //) მდგომარეობა = digitalRead(led); if (Serial.available()) (input = Serial.read(); led, !digitalRead(led));digitalWrite(led, HIGH) ;Serial.println(1);delay(1000); (0); delay(1000); ) else if (input == "T") (analogRead(led); Serial.println(0);

Krok 2. ონლაინ მონაცემთა ბაზების შექმნა

მონაცემთა შესანახად, ჩვენ შეგვიძლია გამოვიყენოთ „ონლაინ შუამავალი“, რომელიც იქნება ხიდი Arduino დაფასა და ჩვენს HUB დანამატს შორის. ტომ ჩვენ გაქურდეს უფასო ჰოსტინგიმონაცემთა ბაზა, რომელიც იმუშავებს პირდაპირ Arduino-ს დაფიდან აღებული მონაცემებისა და მასზე გაგზავნილი ბრძანებების შესანახად.

ჩვენი ტიპის უმარტივესი არჩევანია ბაზა MySQL მონაცემები, იმიტომ ეს არ არის ძვირი და ფართოდ არის ვიკორისტი. ქვემოთ მიმაგრებულ არქივში ნახავთ, რომ მხოლოდ ორი ცხრილის მოთავსება შეგიძლიათ. ჯერ უნდა შეინახოთ ბრძანებები, შემდეგ გაგზავნოთ დაფაზე და მეორე ცხრილი არის Arduino დაფის გამომავალი ამონაწერი და მისი განახლება შემდგომი დამუშავებისთვის.

ჰოსტინგისთვის შეგიძლიათ ეწვიოთ საიტს freemysqlhosting.net. ონლაინ PHP MyAdmin შეგიძლიათ მარტივად იპოვოთ - phpmyadmin.co. დამატებითი ინფორმაცია შეგიძლიათ იხილოთ ვებსაიტზე phpmyadmin.net.

Krok 3. C# ჰაბის შექმნა

აქ ჩვენ ვქმნით ჰაბს, რომელიც შეიძლება ჩაითვალოს როგორც შეყვანის ფილტრი კომპიუტერზე, რათა ჯერ გადასცეს მასში გავლილი მონაცემები, შემდეგ გავაგზავნოთ Arduino დაფაზე სერიული პორტით და ბოლოს.

ამ კერის ინტერფეისი ძალიან მარტივია, მხოლოდ ორია ტექსტის ველები, რომელიც მიუთითებს კანის „ტრანზაქციის“ სტატუსზე, გადასცემს მონაცემებს კერიდან (დენი და ამოღება).

Შენიშვნა. ჰაბი შეიძლება გაფუჭდეს, თუ გსურთ იმუშაოთ თქვენს Arduino დაფაზე ინტერნეტის საშუალებით.

გაკვეთილი 4. ვებ ინტერფეისის შექმნა

ჩვენ მივაღწიეთ გაკვეთილის ყველაზე მაგარ ნაწილს.

მე შევქმენი ვებ-დამატება Asp.net C# ტექნოლოგიაზე დაფუძნებული ადაპტაციური ინტერფეისით, რომელიც შეიძლება გაშვებული იყოს ნებისმიერ მოწყობილობაზე, ეს ვებ-დამატება განთავსებულია მხოლოდ ონლაინ მონაცემთა ბაზაში და არ იცის, რომ სხვაზე არის გადასახადი. მხარე.

ამ ინტერფეისის გამოყენებით შეგიძლიათ კლასიფიციროთ თქვენი ელექტრონული კომპონენტები, რომლებიც დაკავშირებულია Arduino-სთან. სამიზნეზე დაწკაპუნებით, ჩართვით და მოციმციმეობით, თქვენ უბრალოდ ინახავთ მონაცემებს ონლაინ რეჟიმში.

კონდახი

მწვანე ღილაკზე (ON) განყოფილებაში „მისაღები“ (დარბაზი – განსაკუთრებით პატარებისთვის) დაჭერით ინტერნეტით აგზავნით შეკვეთას და აინთებთ ჯიხურის მისაღებში შუქს. ამ გზით, კერა, რომელიც შეიძლება მდებარეობდეს მსოფლიოს მეორე მხარეს, იღებს შეტყობინებას და იყენებს მას ელექტრონული ლანსერის დახმარებით, რომელიც დაფუძნებულია თქვენს ჯიხურში Arduino-ზე.

დაცული void BtnHallOn_Click(ობიექტის გამგზავნი, EventArgs e) ( AddTempOrders("I");

Krok 5. Zavantazhuemo პროექტი

დადგა დრო, რომ თავად სცადოთ ყველაფერი და შექმნათ თქვენი საკუთარი პროექტი.

იმედია ყველაფერი დაგჭირდება. გისურვებთ შესანიშნავ პროექტებს!

ვადიმ კოლესნიკი, მ.ტირასპილი

ძალიან მარტივია სრულფუნქციური მოწყობილობების დაყენება Arduino-ზე გამოსვლების ინტერნეტში დამატებითი უაზრო სერვისის გამოყენებით

Zagalnye Vidomosti

myDevices დემონტაჟის პროცესშია პროგრამული უზრუნველყოფის უსაფრთხოებაეს არის სიტყვის ინტერნეტის (IoT) სექტორის გაფართოება და არის Avanquest-ის შვილობილი კომპანია. myDevices Cayenne არის პირველი გადასატანი დანამატი და სერვისი Raspberry Pi-ზე IoT პროექტების გამარტივებული განვითარებისთვის.

ახლახან გამოქვეყნდა RadioLotzman პორტალზე, მე შევეცადე გამომეჩინა სისტემის ძირითადი უპირატესობები და შესაძლებლობები, როდესაც მუშაობდი ერთბორტ კომპიუტერზე Raspberry Pi (RPi). თუმცა, Cayenne პროექტი სტაბილურად ვითარდება და დეველოპერები, თავიანთი მომხმარებლების საჭიროებებზე დაყრდნობით, თანდათან ამატებენ ახალ ფუნქციებს და არის რამდენიმე უმნიშვნელო გაუმჯობესება.

IoT მოწყობილობების განვითარება Arduino-სა და Raspberry Pi-ზე Cayenne-თან მუშაობისას ფუნდამენტურად განსხვავებულია. Raspberry Pi-ის ნაცვლად, Cayenne პლატფორმა შეიძლება ჩაითვალოს ვიზუალური განვითარების შუაგულად: ჩვენ ფიზიკურად ვაკავშირებთ სხვადასხვა პერიფერიულ მოწყობილობებს Raspberry Pi-ს დაფაზე და შემდეგ ვმუშაობთ მხოლოდ ონლაინ Cayenne-ის შუაში (ვიჯეტების კონფიგურაცია, მონაცემთა დამუშავება, ალგორითმების წერა ავტომატიზაცია).

Arduino-ზე დაფუძნებული Cayenne-ის დაფა (დაფა) შექმნილია ვიჯეტებისა და საკონტროლო ელემენტების ნაკრების უზრუნველსაყოფად, რომლებიც ვიზუალიზებენ მონაცემებს სენსორებიდან და გადასცემენ მონაცემებს კონტროლერზე ამ და სხვა მოწყობილობების გასაკონტროლებლად. ჩვენ ვაშენებთ. რობოტის შუაში სენსორებით, ელექტრონული მოწყობილობებით, დამატებითი პერიფერიული მოწყობილობებით (მაგალითად, დისპლეი, სხვა კლავიატურა), ავტომატიზაციის დამუშავება ევალება მიკროკონტროლერს. სხვა სიტყვებით რომ ვთქვათ, ყველაფერი დაყვანილია Arduino მოწყობილობის სტანდარტულ დიზაინამდე; koristuvach წერს თავად პროგრამის კოდიდა ასევე Cayenne ფუნქციის პროექტში ინტეგრირებით. ეს, ჩემი აზრით, არის Cayenne-ის მთავარი უპირატესობა: თქვენ შეგიძლიათ დაუკავშიროთ სისტემას ნებისმიერი სენსორი ან მექანიკური მექანიზმი, მხარდაჭერილი პერიფერიული მოწყობილობების სიით შეზღუდვის გარეშე.

ოპერატორის ინტერფეისი და სამუშაოსთვის მომზადება

რაც აკლია სისტემის ინტერფეისს, მის პერსონალიზაციას, კონტროლის მეთოდებსა და ვიჯეტებს დაფაზე, ყველაფერი არ ჰგავს სისტემას Raspberry Pi-ზე, განსაკუთრებით სხვა უნიკალური ელემენტების გამო, რომლებიც დომინირებენ დანარჩენზე (მაგალითად, დესკტოპი, მეხსიერება, პროცესორი. დანართი). ამიტომ, სისტემასთან მუშაობის საფუძვლების გასაგებად, გირჩევთ გაეცნოთ ამ სტატიებს. სტატიაში მოცემული ყველა ინფორმაცია შესაბამისია როგორც სისტემის ვებ ინტერფეისისთვის, ასევე მობილური აპლიკაციისთვის. სტატიაში ასევე მოცემულია მხარდაჭერილი პერიფერიული მოწყობილობების სია.

IoT-ის განსავითარებლად, მე მას დავამატებ, რადგან ჩვენ გვჭირდება შემდეგი პროგრამები:

  • განაახლეთ თქვენი ღრუბლოვანი ანგარიში Cayenne სერვისზე (შეგიძლიათ გამოიყენოთ იგივე);
  • დააინსტალირეთ ინტეგრირებული Arduino IDE ბირთვი;
  • დაამატეთ Cayenne ფუნქციების ბიბლიოთეკა Arduino IDE-ში;
  • დააყენეთ Arduino IDE: აირჩიეთ დაფა და COM პორტი, რომლებთანაც არის დაკავშირებული;
  • დააკავშირეთ Ethernet Shield ან Wi-Fi Shield გაფართოების დაფა Arduino-ს (ან გამოიყენეთ Arduino დაფა ინტეგრირებული ქსელის ინტერფეისით).

ვფიქრობ Arduino IDE-ის ბირთვის დაყენების პროცესი, ასევე გადახდის და პორტის არჩევა არ საჭიროებს ახსნას და გადავალთ მთავარზე.

Cayenne ბიბლიოთეკა Arduino-სთვის შეიძლება ადვილად და სწრაფად დაინსტალირდეს ბიბლიოთეკის მენეჯერის გამოყენებით (Malyunok 2).

ბიბლიოთეკის ინსტალაციის შემდეგ, შეგიძლიათ გამოიყენოთ იგი თქვენს დანამატებში და გამოჩნდეთ ესკიზის დანართების განყოფილებაში Ახალი საქაღალდეკაიენიდან. ჩემი აზრით, ეს აპლიკაციები არავის აძლევს საშუალებას გაიგოს სისტემასთან მუშაობა, როგორ წაიკითხოს ისინი და ასევე, ვფიქრობ, რომ კაიენის სისტემაზე არის დოკუმენტაციის დიდი ნაწილი. სტანდარტულ ვერსიას აქვს ბიბლიოთეკა ესკიზების კომპლექტით, რომლებიც საშუალებას იძლევა ადვილად დაკავშირება და მონაცემთა გაცვლა სენსორებს/აქტუატორებსა და აპარატურულ სერვისებს შორის.

მომზადების ოპერაციების დასრულების, მოწყობილობის ბირთვის დაყენების და Ethernet Shield გაფართოების ბარათის დაკავშირების შემდეგ, შეგიძლიათ დაბეჭდოთ მოწყობილობა IoT მოწყობილობაზე.

Arduino დაფა შეიძლება დაუკავშირდეს კომპიუტერს USB-ის საშუალებით, ის შეიძლება დაკავშირდეს Ethernet Shield-თან strand კაბელი ადგილობრივი ზომები. ინტერნეტ ბრაუზერში შეგიძლიათ გადახვიდეთ Cayenne ღრუბელში და დაამატოთ ახალი მოწყობილობა - Arduino - Cayenne პანელზე. შემდეგი, ჩვენ ვირჩევთ დაფის ტიპს, ინტერნეტთან დაკავშირების მეთოდს (ბევრი ვარიანტია), ვეყრდნობით ჩვენი მოწყობილობის უნიკალურ ავტორიზაციის ღილაკს და ვამოწმებთ Arduino დაფის Cayenne-თან დაკავშირებას (Malyunok 3).

ყოველი ახალი მოწყობილობისთვის წარმოიქმნება ახალი უნიკალური გასაღები, რომელიც შემდეგ შეგიძლიათ იპოვოთ მოწყობილობის პარამეტრებში (გადახდა).

მას შემდეგ რაც აირჩევთ ქსელთან დაკავშირების მეთოდს, გამოჩნდება ფანჯარა მიკროკონტროლერის პროგრამის კოდით. ეს არის აუცილებელი მინიმუმი მოწყობილობის კარგ სერვისთან დასაკავშირებლად. გთხოვთ გაითვალისწინოთ, რომ თქვენი ავტორიზაციის გასაღები უკვე მითითებულია პროგრამის ტექსტში და ბიბლიოთეკა დაკავშირებულია, რაც მიუთითებს ლიმიტთან დაკავშირების იმავე მეთოდზე (Malyunok 4). ამ კოდს ვაკოპირებთ Arduino IDE-ში, ვაკომპლექტებთ და ვაინსტალირებთ დაფაზე. როგორც კი ყველაფერი სწორად დაყენდება, ახალი აქტიური მოწყობილობისა და აქსესუარების პანელი გამოჩნდება Cayenne-ის დაფაზე, სადაც ახლა შეგიძლიათ დაამატოთ ვიჯეტები და მორთვა ელემენტები. უფრო მეტიც, უკვე ამ ეტაპზე შეგიძლიათ დისტანციურად მართოთ Arduino-ს ხელმისაწვდომი ციფრული და ანალოგური პორტები, კოდის იგივე ხაზის ჩაწერის გარეშე - აქსესუარების პანელზე, დაამატეთ ვიჯეტის ღილაკი, მიუთითეთ პორტის ტიპი (ციფრული), რა არის ჩადეთ და შეინახეთ ვიჯეტი. ახლა, ბრაუზერში ღილაკზე დაჭერით, თქვენ შეცვლით პორტის ლოგიკურ პარამეტრს. ისევე მარტივად, დამატებითი ვიჯეტების დამატებით, შეგიძლიათ დააკავშიროთ PWM გამომავალი, მიიღოთ „სერ“ მონაცემები Arduino-ს ანალოგური შეყვანებიდან და აკონტროლოთ ციფრული შეყვანების მდგომარეობა.

მოწყობილობას დავამაგრებ კონკრეტულ კონდახზე

ახლა მე გეტყვით ამის შესახებ დამატებითი შესაძლებლობებიდა სისტემის ფუნქციები. კონდახივით ავიღე უბრალოდ სისტემა, საწყობში, სადაც წავიდნენ:

  • Arduino Uno დაფა;
  • Ethernet Shield გაფართოების ბარათი WIZnet W5100 კონტროლერზე;
  • ტემპერატურის სენსორი DS18B20;
  • ფოტორეზისტორი;
  • თერმისტორი;
  • მსუბუქი LED-ების დეკალი;
  • OLED დისპლეი SSD1306 კონტროლერზე

სენსორებისა და შუქდიოდების Arduino-სთან დამაკავშირებელი პრინციპული დიაგრამა ნაჩვენებია ფიგურაში 5.

შეგახსენებთ, რომ ელექტრომომარაგების უმეტესი ნაწილისთვის, რომელიც დაკავშირებულია სხვადასხვა სენსორების და სხვა მოწყობილობების კავშირებთან, შეგიძლიათ გაეცნოთ კავშირებს დოკუმენტაციის განყოფილებაში.

მე ვფიქრობ, რომ თუ დააკავშირებთ LED-ებს, ციფრული ტემპერატურის სენსორს და OLED დისპლეს, ელექტრომომარაგება არ იქნება ბრალი. ანალოგური სინათლისა და ტემპერატურის სენსორები დაკავშირებულია რეზისტენტული მიკროსქემის უკან არსებულ ანალოგურ შეყვანებთან. ამ შემთხვევაში, თერმისტორის ფარანისთვის საჭიროა უფრო ზუსტად ვიცოდეთ რეზისტორი R6-ის წინააღმდეგობა, რაც ნიშნავს, რომ გამომავალი კოდს ექნება განსხვავებული მნიშვნელობა გაფართოების დროს.

მიკროსქემის დიაგრამაზე მითითებული ელემენტების შეერთების შემდეგ, ჩვენ დავწერთ Arduino-ს ესკიზს, შემდეგ კი დავაყენებთ საჭირო ვიჯეტებს Cayenne-ის მართვის პანელზე. on ნარაზი Arduino დაფა უკვე მოითხოვს მინიმალურ ესკიზს და დაფა ჩამოთვლილია Cayenne მოწყობილობის პანელში. როგორც ზემოთ ვთქვი, ამ ეტაპზე შეგვიძლია დავამატოთ ვიჯეტები შუქდიოდებისთვის D1, D2, ასევე ამოვიღოთ „სერ“ მონაცემები ანალოგური შეყვანებიდან, რომლებზეც თერმისტორი და ფოტორეზისტორი არის დაკავშირებული (Malyunki 6, 7).

ბევრი Arduino კოდის დაწერის გარეშე, ჩვენ უკვე შევქმენით დისტანციური მართვისა და მონიტორინგის მარტივი სისტემა (Malyunok 8).

ციფრულად დასაწყებად ტემპერატურის სენსორები, თერმისტორი, PWM, მაგალითად, LED D2 გასაკონტროლებლად, თქვენ უნდა დაამატოთ მინიმალური ესკიზი. ბიბლიოთეკები ახლა აუცილებელია.

#შეიცავს< CayenneEthernet.h>// vikorista გაფართოების ბარათი Ethernet Shield
#შეიცავს< CayenneTemperature.h>// თერმისტორიდან მონაცემების გადაყვანის ფუნქციები
#შეიცავს< OneWire.h>// ფუნქციები რობოტებისთვის 1-Wire ავტობუსის გამოყენებით
#შეიცავს< DallasTemperature.h>// ფუნქციები რობოტებისთვის ციფრული ტემპერატურის სენსორებით
#შეიცავს< Arduino.h>// Arduino-ს სტანდარტული მუდმივები და მოდიფიკაციები
#შეიცავს< U8x8lib.h>// ბიბლიოთეკა OLED დისპლეით ტექსტურ რეჟიმში მუშაობისთვის
#შეიცავს< Wire.h>// ტექნიკის ინტერფეისის მხარდაჭერა I 2 C

#define VIRTUAL_PIN_1 V0 // ვირტუალური არხი DS18B20 სენსორისთვის
#define VIRTUAL_PIN_2 V1 // - თერმისტორისთვის
#define VIRTUAL_PIN_3 V2 // -- LED D2-სთვის ეს არხი მიიღებს მონაცემებს PWM მნიშვნელობების შესახებ
#define LED2_PWM 6 // რეალური Arduino პორტი, რომლის წინ არის დაკავშირებული LED D2

ვირტუალური არხები არის ციფრული და ანალოგური შეყვანის/გამოსვლის პორტები. ანალოგური შეყვანების უშუალოდ წაკითხვისას, კონტროლერი იღებს მონაცემებს 10-ბიტიანი ADC მიკროკონტროლერიდან. მნიშვნელობები, რომლებსაც ADC ბრუნავს, დევს დიაპაზონში 0...1023 და პროპორციულ ძაბვას მის შეყვანაში. სხვა სიტყვებით რომ ვთქვათ, თუ თქვენ დააკავშირებთ ტემპერატურის სენსორს Arduino-ს ანალოგურ შესასვლელთან და არ წაართმევთ ტემპერატურის მნიშვნელობას, დაგჭირდებათ დამატებითი კონვერტაციები და მათემატიკური გამოთვლები ძაბვა-ტემპერატურის გადასაყვანად.

მონაცემთა დამუშავების, ფორმატირებისა და დამუშავების გასამარტივებლად გამოიყენება ვირტუალური არხები. აუცილებელია გამოვიყენოთ ძლიერი ინსტრუმენტი, რომელიც გამოიყენება Arduino-სა და Cayenne-ს შორის გაცვლისთვის, ასევე მონაცემთა მარტივი ფორმატირებისთვის სწორი ვიზუალიზაციის მეთოდით. გახსოვდეთ, რომ ვირტუალური არხები არ შეიცავს ფიზიკურ პარამეტრებს.

Cayenne.virtualWrite(V1, 123) // მთელი რიცხვის გადაცემა ვირტუალური არხის მეშვეობით V1
Cayenne.virtualWrite(V2, 12.34) // მნიშვნელობის გადაცემა მცურავი კომით ვირტუალური არხის V2 საშუალებით

მაგალითად, ანალოგური ტემპერატურის სენსორის წაკითხვის შემდეგ, შეგიძლიათ გამოიყენოთ კოდის ერთი ხაზი, რომ შეცვალოთ ცელსიუსის გრადუსის მნიშვნელობა და გადაიტანოთ ეს მნიშვნელობა მართვის პანელზე. გარდა ამისა, ვირტუალური არხები საშუალებას გაძლევთ აკონტროლოთ ნებისმიერი პერიფერიული მოწყობილობა, რომელიც დაკავშირებულია Arduino ანალოგურ ან ციფრულ პორტებთან, ჩაწერის გარეშე. დამატებითი კოდი. ამჟამად, არსებობს ორი ტიპის მონაცემები, რომლებშიც ფუნქციონირებს ვირტუალური არხები: მთელი და float. დაგეგმილია სიმბოლური ტიპებისა და მასივების შემდგომი მხარდაჭერა. აპლიკაციის პანელზე, ვირტუალური არხის საშუალებით, შეგიძლიათ დააკავშიროთ და აკონტროლოთ მიღებული მონაცემების ტიპი, ვიჯეტი ვიზუალიზაციისთვის.

// ციფრული პორტი, რომელსაც უკავშირდება DS18B20 სენსორები. არ მოაწყოთ Arduino 0 და 1 (Rx/Tx) პორტების ვიკორიზაცია.
const int ds18b20_Pin = 2;
//ანალოგური პორტი, რომელიც აკავშირებს თერმისტორს.
const int thermistorPin = 0;
// სტაციონარული რეზისტორის მხარდაჭერა (9 kOhm), რომელიც სერიულად არის დაკავშირებული თერმისტორთან მიწასთან.
const float წინააღმდეგობა = 9000;
// ავტორიზაციის გასაღები Cayenne. ამის გარკვევა შეგიძლიათ Cayenne ვებ ინტერფეისში მოწყობილობის პარამეტრების ჩანართზე.
char token = "640c9oedi4";
OneWire oneWire (ds18b20_Pin);
Dallas-ის ტემპერატურის სენსორები (&oneWire);
თერმისტორის თერმისტორი (თერმისტორის პინი, წინააღმდეგობა);

თქვენი შეხედულებისამებრ, პრაქტიკულად ნებისმიერ ეტაპზე, შეგიძლიათ დაამატოთ გამომავალი კოდიკომუნალური ინფორმაციის ჩვენება სერიული პორტის საშუალებით.

ინიციალიზაციის განყოფილებას აქვს შემდეგი ფუნქციები:

void setup()
{
Cayenne.begin(token); // კავშირი Cayenne-თან მინიჭებული ავტორიზაციის გასაღების გამოყენებით
სენსორები.begin(); // ციფრული ტემპერატურის სენსორების ინიციალიზაცია
u8x8.begin(); // ინიციალიზაცია და აღდგენა ტექსტური ინფორმაცია OLED ეკრანზე

u8x8.setPowerSave(0);
u8x8.setFont(u8x8_font_torussansbold8_r);
u8x8.drawString(2,0"Cayenne Test");
u8x8.drawString(1,2"System Running");
}

მთავარ პროგრამის ციკლში გვექნება მხოლოდ ერთი ფუნქცია:

void loop ()
{
Cayenne.run();
}

ყველა მონაცემთა გაცვლა Cayenne-ის დაფაზე შედგება რამდენიმე დამატებითი ფუნქციისგან:

CAYENNE_IN (ვირტუალური_პინი) - მიუთითებს ფუნქციას, რომელიც გამოიძახება, როდესაც მოწყობილობა იღებს განახლებულ მონაცემებს ვირტუალური არხის მეშვეობით Cayenne სერვერიდან.

CAYENNE_OUT (ვირტუალური_პინი) - განსაზღვრავს ფუნქციას, რომელიც გამოიძახება, როდესაც საჭიროა მოწყობილობიდან განახლების გაგზავნა Cayenne სერვერზე.

CAYENNE_CONNECTED() - ფუნქცია ჩართულია მაშინვე, როდესაც მოწყობილობა დაუკავშირდება Cayenne-ს. სხვათა შორის, ეს ფუნქცია გამოიყენება სინქრონიზაციისთვის.

Cayenne.syncAll() - ფუნქცია, რომელიც აყალიბებს მოთხოვნას Cayenne სერვერზე ყველა ვიჯეტის სინქრონიზაციისთვის. Arduino-ს ანალოგური და ციფრული პორტები განახლდება და ვირტუალური არხი გამოიმუშავებს CAYENNE_IN სახელს.

Cayenne.syncVirtual(Virtual_Pin) - სინქრონიზაცია მითითებული ვირტუალური არხისთვის. ძიების შედეგად, შემდეგ წყაროს ეწოდება CAYENNE_IN.

ჩემს წრეში, LED D2 დაკავშირებულია Arduino-ს ციფრულ პორტთან D6. ამ პორტს აქვს ალტერნატიული ფუნქცია - PWM გამომავალი. ამ LED-ის დისტანციური განათების PWM რეჟიმში განსახორციელებლად, ჩვენ დაგვჭირდება მონაცემების მიღება მოწყობილობის პანელიდან. ამ მიზნით, მოდით დავწეროთ ფუნქცია, რომ გააუქმოს მონაცემები V2 ვირტუალური არხის მეშვეობით:

CAYENNE_IN (V2)
{
// წაიკითხეთ მონაცემები PWM მნიშვნელობების შესახებ აქსესუარების პანელიდან (სლაიდერი)
int PWMValue = getValue.asInt(); // დიაპაზონის მნიშვნელობები 0 - 1023
analogWrite(LED2_PWM, PWMValue / 4); // PWM მნიშვნელობებისთვის არის 0 - 255 დიაპაზონში
}

ახლა პარამეტრების პანელზე არის „სლაიდერი“ ვიჯეტი სახელწოდებით LED_2 PWM (PWM) და მის პარამეტრებში მითითებულია, რომ ის მუშაობს ვირტუალური არხით 2 (Malyunok 9).

ესკიზის დაფაზე ატვირთვის შემდეგ, შეგიძლიათ გამოიყენოთ დამატებითი სლაიდერი Cayenne პანელზე D2 LED-ის სიკაშკაშის შესაცვლელად. ყველაფერი ძალიან სწრაფი და მარტივია.

CAYENNE_OUT (V0)
{
სენსორები.requestTemperatures(); // იღებს მონაცემებს ციფრული ტემპერატურის სენსორებიდან.
// ვაკონვერტირებთ მონაცემებს თერმისტორიდან, ვაფორმირებთ და ვუგზავნით სერვერს ვირტუალური არხის V1 საშუალებით
Cayenne.celsiusWrite(V1, thermistor.getCelsius());
//ციფრული ტემპერატურის სენსორიდან მონაცემები ფორმატირდება და სერვერზე იგზავნება ვირტუალური არხის V0 საშუალებით
Cayenne.celsiusWrite(V0, sensors.getTempCByIndex(0));
}

ვირტუალური არხების არსებობის გამო, სრულიად განსხვავებული მონაცემების გადაცემის მთელი ფუნქციის კოდი შედგება ორი მწკრივისაგან. აქსესუარების პანელზე დამატებულია ვიჯეტები DS18B20 ტემპერატურის სენსორისთვის და თერმისტორისთვის (ისინი მზად არიან მართვის პანელში). დააყენეთ ვიჯეტი, დაამატეთ ესკიზი დაფაზე და დაასრულეთ (Malyunki 10a, 10b)!


მალიუნოკი 10. Cayenne-ის ფენის პანელის ხედი Arduino-სთვის (ტემპერატურის სენსორები,
სიკაშკაშე, LED განათება D1, PWM LED განათება D2):

არ დაგავიწყდეთ, რომ მართვისა და კონტროლის ეს ფუნქციები ასევე ხელმისაწვდომია მობილური აპლიკაციაში. ვებ ინტერფეისში დაინსტალირებული ყველა ვიჯეტი ხელმისაწვდომია მობილური აპლიკაციაში (Malyunok 10b).

გარეგანი სახემოწყობილობა დაკავშირებული პერიფერიული მოწყობილობებით ნაჩვენებია ფიგურაში 11.

უპილოტო IoT მოწყობილობების განვითარების მიზანშეწონილობა

თქვენ შეიძლება შეამჩნიეთ, რომ რამდენიმე ეკრანის სურათზე შეგიძლიათ იხილოთ ჩემი მართვის პანელი, მათ შორის Arduino Uno და Raspberry Pi და ESP8266-1 მოწყობილობები. ყველაფერი მართალია, არა? დამატებითი მოწყობილობაცნობილ ESP-12 მოდულზე (ESP8266), რომელიც უერთდება Cayenne Wi-Fi სერვერს და აქვს აქსესუარების საკუთარი მიმდებარე პანელი (Malyunki 12a, 12b). ასეთი მოწყობილობა არის უიარაღო მოწყობილობა კონტროლისა და მართვისთვის. ორი LED-ები დაკავშირებულია მოდულთან (ერთი კავშირი ESP8266 PWM გამომავალთან) და ციფრული ტემპერატურის სენსორი DS18B20.


მალიუნოკი 12. ESP-12 მოდულის გვერდითი პანელი დრონისაგან თავისუფალი დანართისთვის:
ა) ვებ ინტერფეისი; ბ) მობილური აპლიკაცია.

მიუხედავად იმისა, რომ ESP8266 ბირთვი არის Arduino IDE-ს ბირთვი, დრონისაგან თავისუფალი IoT მოწყობილობების დანერგვა Cayenne-ით არანაირად არ განსხვავდება Arduino-ს განვითარებისგან. სხვა სიტყვებით რომ ვთქვათ, ნებისმიერი მოდული ESP8266 ჩიპზე არის Arduino დაფა Wi-Fi ინტერფეისით. ვისთვის Wi-Fi მოდულიჩვენ ვწერთ მსგავს ჩანახატს, ვიყენებთ იგივე ბიბლიოთეკებს სენსორებთან მუშაობისთვის, გვაქვს წვდომა ციფრულ და ანალოგურ შეყვან/გამომავალი პორტებზე. ამ მოდულში დაგროვილია დიდი რაოდენობით ინფორმაცია, სხვადასხვა დოკუმენტაცია და ინსტრუქციები.

ESP8266 მოდულთან პერიფერიული მოწყობილობების დამაკავშირებელი დიაგრამა ნაჩვენებია სურათზე 13. მე გამოვიყენე იგივე ESP-12 მოდული ადაპტერის საფასურის გარეშე ინტეგრირებული მიკროსქემისა და პროგრამირების ინტერფეისით, რამაც გაამარტივა მუშაობა ესკიზის შექმნის ეტაპზე. საუკეთესო ვარიანტი იქნება nodeMCU v3 ტიპის მზა მოდულის გამოყენება, რომელიც დაფუძნებულია Arduino ფორმის ფაქტორზე და აქვს ინტერფეისისთვის შესაფერისი წრე. (ეს არის ძალიან მნიშვნელოვანი მომენტი მოდულის დაპროგრამებამდე). მოდულის გარე გარეგნობა დაკავშირებული LED-ებით და ტემპერატურის სენსორით ნაჩვენებია პატარა 14-ში.

სანამ არის Cayenne სერვერთან კავშირი და მონაცემთა გაცვლა, მაშინ Arduino-სთვის ყველაფერი იგივეა. ვირტუალური არხების შესახებ ყველა კონცეფცია ინახება, თავად ფუნქციები გაანალიზებულია და ასევე იდენტიფიცირებულია უნიკალური ავტორიზაციის გასაღები. აქტუალობა შეზღუდულია მოდულის ინტერნეტთან დაკავშირების ეტაპზე.

ESP8266 მოდულზე მოწყობილობის დასაკავშირებლად ვაგრძელებთ ისევე, როგორც Arduino-ს ნებისმიერი დაფის დამატებას და გადავდივართ მოწყობილობის Cayenne-თან დაკავშირების ეტაპზე, სადაც წარმოიქმნება მინიმალური ესკიზი.

ეს ესკიზი უნდა შეიცვალოს. ჩვენ შეგვიძლია დავაკავშიროთ შემდეგი ბიბლიოთეკები:

#include "CayenneDefines.h" // Cayenne მუდმივები და ცვლილებები
#include "BlynkSimpleEsp8266.h" // ფუნქციები ESP8266-თან მუშაობისთვის
#include "CayenneWiFiClient.h" // ფუნქციები Wi-Fi კლიენტის დასანერგად

char token = "3yj62u9ogi";
char ssid = "ქსელი_SSID"; // SSID და პაროლი თქვენი Wi-Fi ქსელისთვის.
char პაროლი = "ქსელის_პაროლი";

ინიციალიზაციის განყოფილება ამატებს შემდეგ რიგს:

Cayenne.begin(token, ssid, პაროლი);

შედგენილი, დაინსტალირებული მოდულში (საათზე მეტი სჭირდება, Arduino დაფაზე ინსტალაციაზე ნაკლები), ახალი მოწყობილობის დაკავშირებისა და გააქტიურების საფუძველზე Cayenne-ის მართვის პანელში. შემდეგ ყველაფერი ისეა, როგორც Arduino-სთვის: ჩვენ ვამატებთ სენსორებთან მუშაობის ფუნქციებს და შეყვანის/გამოსვლის პორტებს, ვამატებთ ვიჯეტებს მოწყობილობის პანელზე. უბრალოდ საოცარია, არა?!

ვისნოვოკი

Raspberry Pi-ზე და Arduino-ზე Cayenne-თან მუშაობის შემთხვევაში, ნამდვილად შემიძლია ვთქვა, რომ Raspberry Pi არ არის შესაფერისი გამოსვლების ინტერნეტისთვის მოწყობილობების დასამუშავებლად, Cayenne-ის მიხედვით. რას ვერ იტყვით Arduino-ზე - მას არ აინტერესებს რესურსების გაზიარება, აქვს ბევრი დავალება, დაბალი გამოთვლითი ძალისხმევა (თუმცა ეს საკამათო საკითხია, ახალი Arduino დაფების შესრულების მახასიათებლები ARM პროცესორებზე), იდეალურია. მარტივი IoT მოწყობილობებისა და სისტემების სახლის ავტომატიზაციის შემუშავება.

გარდა ამისა, ამ კონტექსტში, Arduino-ს მთავარი უპირატესობა, როგორც მე მას პატივს ვცემ, არის მოწყობილობის დამოუკიდებლად შემუშავების, მიკროსქემის დიზაინის სწავლის, კოდის დაწერის, საბაზისო პროგრამირების შემუშავების შესაძლებლობა, მიუხედავად პროფესიული პროგრამების მტკიცებულებისა, ამიტომ Arduino შეუძლებელია. რომ ისწავლონ დაპროგრამება. შესაძლოა, მაგრამ... Arduino-სთან შედარებით, Cayenne პლატფორმა უზრუნველყოფს მომხმარებლისთვის მხოლოდ გრაფიკულ ინტერფეისს და მონაცემთა გამარტივებულ დამუშავებას. თქვენ თავად უნდა განავითაროთ იგი, მათ შორის სენსორების მონაცემების თავდაპირველი დამუშავება, მონაცემთა დამუშავების ქვესისტემა, ასევე დაზვერვისა და ავტომატიზაციის ალგორითმები. ახლა მიეცით Arduino-ს საშუალება, განავითაროს დრონისაგან თავისუფალი IoT მოწყობილობები ESP8266 Wi-Fi მოდულზე და ოფიციალური მხარდაჭერა (თუმცა არა ისევ) ახალი ჩიპი ESP32, რომელსაც აქვს უამრავი პერიფერიული მოწყობილობა, უხსნის დიდ შესაძლებლობებს თქვენ განავითაროთ ფუნდამენტურად ახალი მოწყობილობები და მიიღოთ წვდომა არა მხოლოდ მოყვარულებზე, არამედ პროფესიონალებზე.

ამ სტატიის დაწერის დროს, Cayenne-მ არ შეატყობინა ESP8266 ჩიპზე მოდულების ოფიციალური მხარდაჭერა. ეს, უპირველეს ყოვლისა, განპირობებულია იმ ჰობისტებისა და ინჟინრების სიძლიერით, რომლებიც მუშაობენ ან იყენებენ Arduino IDE-ს და იციან ESP8266 მხარდაჭერის შესახებ, კაიენის ბიბლიოთეკების დახმარებით მათ შეძლეს ESP8266-ის დაკავშირება და გამოყენება. თუმცა, Cayenne-ის ფორუმებზე უკვე შეგიძლიათ გაეცნოთ უპილოტო IoT მოწყობილობების სხვადასხვა პროექტების დიდ რაოდენობას.

Arduino-ზე და ESP8266-ზე ჩემი მოწყობილობების ვრცელი ტესტირების შემდეგ, შემიძლია ვთქვა, რომ ის მაინც საკმაოდ საიმედოდ მუშაობს. Arduino-ს დაბალი საიმედოობა Ethernet Shield-ით გამოწვეულია W5100 კონტროლერის გაყინვის აშკარა პრობლემის გამო, მრავალი განსხვავებული მეთოდის გამო, როგორც აპარატურის, ასევე პროგრამული უზრუნველყოფის. შემიძლია ვაღიარო, რომ არდუინოს დაფებზე პრობლემა არ არის Ethernet და Wi-Fi ინტეგრირებით.

Raspberry Pi-სა და Cayenne-ზე სტატიის მომზადებიდან არც ისე ბევრი საათია გასული, მაგრამ ახალი ფუნქციები და მხარდაჭერილი პერიფერიული მოწყობილობები ბევრად გამრავლდა. Arduino-სთვის სხვადასხვა გაფართოების დაფების, სენსორების და მოწყობილობების, მონაცემთა ბიბლიოთეკების, პროექტებისა და აპლიკაციების დიდი არჩევანის გარდა, Cayenne-ს ახლა აქვს მომხმარებლებისთვის ხელმისაწვდომი მოწყობილობები, LoRa ქსელები და სერვისები, ბიბლიოთეკები MQTT edge პროტოკოლის მაგალითები Arduino-სთვის. , C, C++, mBed, ბიბლიოთეკები რობოტებისთვის MQTT საბროკერო კოღოთი. ნამდვილად, Arduino-ზე ინტერნეტ მოწყობილობებისა და სახლის ავტომატიზაციის სისტემების განვითარებისთვის, გირჩევთ Cayenne სერვისებს.

სხვადასხვა მიკროკონტროლერებისა და მიკროკომპიუტერების დაპროგრამება, როგორიცაა Arduino, Raspberry Pi და მსგავსი, ერთ-ერთი ყველაზე მნიშვნელოვანი და შესაბამისი ამოცანაა. ამ პლატფორმებზე მოწყობილობების დიზაინი გასცდა ჰობი გიკებისა და პროფესიონალი პროგრამისტების ფარგლებს: ეს საფასური გამოიყენება რობოტების, დესკტოპების, კვადკოპტერების, IoT მოწყობილობების (ჭკვიანი ჯიხურები), სერვერებისა და Hi-Fi აუდიო სისტემების, ინტერფეისების შესაქმნელად.

სამწუხაროდ, მიკროკონტროლერების ბაზარი ძალიან სეგმენტირებულია. მათი პროგრამირება ხდება სხვადასხვა მედიისა და ინტერფეისის საშუალებით. სიტუაციამ შეიძლება გამოიწვიოს პროექტის კრახი სახელწოდებით Blynk.

Blynk არის შესანიშნავი სერვისი გრაფიკული მართვის პანელების შესაქმნელად და შესაფერისია მიკროკომპიუტერებისა და მიკროკონტროლერების ფართო სპექტრისთვის. იქ, სადაც ადრე, სენსორებისგან ინფორმაციის შესაგროვებლად საჭირო იყო სრულფასოვანი შეყვანის-გამომავალი ინტერფეისის დაწერა ან დამატებითი მოდულების დაყენება, ახლა თქვენ შეგიძლიათ გაუმკლავდეთ ხუთბორბლიანი რობოტით Blynk-ში.

Blynk-ის საშუალებით ვებსაიტებთან წარმატებული პროექტის შესაქმნელად, თქვენ საერთოდ არ გჭირდებათ ბევრი რამ: დააინსტალირეთ პროგრამა (ხელმისაწვდომია iOS და Android-ისთვის) ან სწრაფად გამოიყენეთ ვებ ფორმა. აქ მოგიწევთ დარეგისტრირება ერთ მოკლე დროში - შეიყვანეთ თქვენი ელექტრონული ფოსტა და პაროლი. რეგისტრაცია აუცილებელია, რადგან Blynk საშინელი გამოსავალია და მის გარეშე, კრაულზე კონტროლი ნებისმიერმა ჰაკერმა შეიძლება წაართვას.

ნებისმიერს შეუძლია სერვერის ლოკალურად დაყენება. ამ შემთხვევაში, ინტერნეტთან წვდომა არ არის საჭირო.

რობოტის პროგრამა vimagatime სიმღერის უნარები. თავიდანვე უნდა დააკავშიროთ თქვენი კომპიუტერი ან სმარტფონი დაპროგრამებულ დაფასთან. პროგრამა მხარს უჭერს დაფებთან კავშირს დამატებითი მრავალფეროვანი ინტერფეისებისთვის:

  • USB (სერიული),
  • Adafruit CC3000 WiFi,
  • ოფიციალური Arduino WiFi Shield,
  • ოფიციალური Ethernet Shield (W5100),
  • ENC28J60,
  • ESP8266 (WiFi მოდემი),
  • SeeedStudio Ethernet Shield V2.0 (W5200),
  • RN-XV WiFly,
  • ESP8266.

კავშირის დამყარების შემდეგ აუცილებელია მიმდინარე მოწყობილობის მოდულების სწორად დაკავშირება. ამის შემდეგ, პროგრამის სამუშაო ფორმაში თქვენ უნდა დაამატოთ ხელმისაწვდომი მოდულები (ვიჯეტები), დააყენოთ საჭირო კავშირის მისამართები და მიუთითოთ საჭირო პარამეტრები (საჭიროების შემთხვევაში შეგიძლიათ დაწეროთ თქვენი საკუთარი კოდი). საუბრის წინ, პროგრამით ვიჯეტის შესაქმნელად გამოიყენება drag'n'drop. კერამიკისთვის ხელმისაწვდომია კერამიკული მოწყობილობების უამრავი სიმულატორი - ჯუმპერები, სლაიდერები, დისპლეები, რისთვისაც შეგიძლიათ დაწეროთ საკუთარი ლოგიკა. გამოიკვლიეთ ფორმა, რათა აჩვენოთ და მოაწყოთ ინფორმაცია საჭირო სენსორებიდან გრაფიკების სახით.

ამრიგად, პლატფორმა შესაფერისია როგორც დამწყებთათვის, ასევე უფრო გამოცდილი ჰაკერებისთვის, რომლებსაც არ სურთ ერთი საათის დახარჯვა პროგრამის მართვისთვის პროგრამების წერაზე: ამინდის სადგურის მონაცემების წაკითხვიდან და სმარტ ტელეფონის კონტროლიდან რობოტების მართვამდე.

სამუშაოს დასაწყებად ყველა საჭირო ინფორმაცია განთავსებულია ოფიციალურ ვებგვერდზე. Blynk - ეს არის ისე, რომ ყველას შეუძლია მიიღოს მონაწილეობა ახალი ფუნქციების შექმნაში. ამ დროისთვის სერვისით სარგებლობა სრულიად უფასოა, მაგრამ სიტუაცია შეიცვლება - დროზე ადრე ახალი ფუნქციების მონეტიზაციისთვის. ამრიგად, უკვე ნათელია, რომ GPIO ინტერფეისებზე წვდომა შეძენილი იქნება შეძენის განხორციელებისთანავე.

ამჟამად Blynk მუშაობს შემდეგ დაფებთან:

  • Arduino: Uno, Nano, Mini, Pro Mini, Pro Micro, Mega, YUN (Bridge), Due;
  • Raspberry Pi;
  • ნაწილაკი (ex Spark Core);
  • ESP8266;
  • TinyDuino (CC3000);
  • Wicked WildFire (CC3000).

მშვენიერი რამ ESP8266. დასრულება დაძაბვის პროცესორიმდიდარი მეხსიერება, ახალი WiFi კონტროლერი. ESP32, რა თქმა უნდა, კიდევ უფრო ლამაზია, მაგრამ ბევრად მეტი ღირს. ალე არ არის მათ შესახებ ერთდროულად. უფრო სწორად, მათ შესახებ საერთოდ არა. კიდევ უფრო ადვილია ESP-ის გამოყენება სახლის პრაქტიკული ავტომატიზაციისთვის და დისტანციური მართვის ქვეშკონტროლი სმარტფონიდან ან კომპიუტერიდან. ასეთი მოწყობილობის მაგალითი ამ საიტზეა. ერთი პრობლემა - ასეთი მოწყობილობით რობოტისთვის, არა მარტო სახლის ზომებიდა პლანეტის ნებისმიერი წერტილიდან (სადაც არის ინტერნეტზე წვდომა, ცხადია), დაგჭირდებათ რაიმე სახის შუამავალი სერვერი, რომელიც მიიღებს შეტყობინებებს მოწყობილობიდან და გადაგიგზავნით თქვენ და ამ საკითხში. რა თქმა უნდა, არის ვარიანტები და პირდაპირი კავშირი, თორემ მე მათ აქ ვერ ვხედავ განხორციელების სირთულის ან ღირებულების მიხედვით.

ამ სტატიაში მოცემული ინფორმაცია არ არის ამომწურავი ან განსაკუთრებით უნიკალური, მე უბრალოდ ვცდილობდი გამეანალიზებინა და განეწყო ამ და სხვა იაფი სერვისების შესაძლებლობები. გთხოვ, შენს თავზე ნუ იდარდებ, თუ არ გინდა სხვის წინაშე გამოჩნდე - იზრუნე შენს ჯანმრთელობაზე. თუ მე დავაყენო საჯარო MQTT სერვერი ჩემთვის, მე მივაღწევ ინტერნეტის ბევრ რესურსს. როგორც წინასწარ გვითხარით esp8266.ru-ზე, სამწუხაროა, რომ იქ სერვისების ნახევარი ან აღარ არის რობოტიკა, ან განსაკუთრებით არ მომმართავენ ამ ან სხვა პარამეტრებზე. ყველაფერი, რაც აქ წერია, ჩემს თვალწინ არის სპეციალური მტკიცებულება, ამ სერვისებთან თქვენი გამოცდილება შეიძლება სრულიად განსხვავებული იყოს. თუ იცით რაიმე სხვა მსგავსი სერვისი, დაწერეთ კომენტარებში ან ელექტრონული ფოსტით (ფოსტა და სხვა კონტაქტები შეგიძლიათ იხილოთ საიტის სათაურის ზედა მარჯვენა კუთხეში) და შევეცდები გადავამოწმო და დავამატო სიაში.

MQTT ბროკერები

MQTT პროტოკოლი ალბათ პირველია, რასაც წააწყდებით ხმის სისტემებში, თუ ეძებთ გზას დისტანციურად მართოთ ყველა სახის „ინტელექტუალური რამ“. ვერ მოგცემთ გარანტიას, რომ პროტოკოლი უმარტივესია (განსაკუთრებით არაფერია ამის შედარება, როგორც ჩანს რაღაც გამომრჩა), მაგრამ განსაკუთრებით არ გამომიყენებია იგივე დასაკეცი ხელსაწყოები. უამრავი მაგალითია. Arduino IDE-სთვის არის ერთზე მეტი მზა ბიბლიოთეკა, როგორც ჩანს, „აირჩიე შენი გემოვნებით“. მობილური დანამატები- საკმარისია შეარჩიოთ როგორც სმარტფონისთვის, ასევე უძველესი პლანშეტიდან აგებული მართვის პანელისთვის. ეს ასევე, რა თქმა უნდა, ყველაზე პოპულარული ვარიანტია დისტანციური განკურნების განსახორციელებლად. ბნელი სერვერებიასევე არის ბევრი რამ, რასაც MQTT ბროკერებს უწოდებენ. მე ვერ ვხედავ, როგორ მუშაობს პროტოკოლი და სერვერები აქ, მაგრამ არსებობს უამრავი ინფორმაცია სხვა საიტებზე.

CloudMQTT.com

ამ სერვისიდან დაწყებული. უბრალოდ, ყველა რობოტული აპლიკაცია, რომელიც იყენებს MQTT პროტოკოლს, ეფუძნება ერთსა და იმავეს. მომსახურება არის მექანიკური და მარტივი, ყველაფერი ინტუიციურია. 2018 წელს Roci სერვისმა დაუშვა 10-მდე მოწყობილობასთან დაკავშირება უფასო სატარიფო გეგმით, რომელიც სრულიად ნაკლებად ძლიერი იყო. თუმცა, 2018 წლის ბოლოსთვის სერვისის მფლობელებმა გადახედეს პოლიტიკას და "Cute Cat" სატარიფო გეგმაზე ახლა მხოლოდ 5 კავშირია ხელმისაწვდომი. მით უმეტეს, ჩემთვის ეს საკმარისი არ არის. შემიძლია ერთდროულად დავაკავშირო სამი „ძირითადი“ მოწყობილობა - ორი სმარტფონი და ტაბლეტი, ხოლო ESP კვების ბლოკისთვის მხოლოდ ორი კავშირი იკარგება. მე უკვე მაქვს ბევრი სხვადასხვა "ავტომატიზაცია" და კიდევ იგეგმება. ბუნებრივია, შესაძლებელია ბროკერების რამდენიმე ინსტანციის წარმოება ერთში რეგიონალური რეგისტრაცია, მაშინაც კი, თუ ისინი ექვემდებარებოდნენ შეზღუდვებს დანარჩენი დროის განმავლობაში. მაგრამ ამ შემთხვევაში, სამი საკონტროლო მოწყობილობა კვლავ „აკვირდება“ სამ კავშირს კანის ნიმუშისთვის და შემდეგ ადგენს ასეთ წესს - და ამაზე არ ინერვიულებთ. ყველაზე იაფი ფასიანი სატარიფო გეგმა, Humble Hedgehog, წერის დროს თვეში 5 დოლარი ღირს. არა, ვერ ვიტან ამფიბიის წინაშე მარტო ყოფნას და ამხელა ფულს გადავიხდი ყოველ თვე. იგივე შესაძლებლობები არც ისე დიდია - 25 დაკავშირება. ასე რომ, მე მქონდა შანსი მეპოვა სხვა ვარიანტები.

Დადებითი: ხელით და მარტივად

მინუსები: 5-ზე მეტი დაკავშირება უსასყიდლო სატარიფო გეგმასთან

flespi.io

მე დიდი ხანია ბროკერი ვარ mqtt.flespi.io-სთან. ამის მიღების შემდეგ, იმ მომენტში, როდესაც დავიწყე მასთან გამკლავება, მე დავუშვი 100-მდე კონკურენტ კავშირს ერთდროულად დაკავშირება და დიდი ვალდებულებები მქონდა იმის გაგება, თუ რა იყო გადაცემული და შენახული. მშვენიერი! ამასთან, სერვისი არ არის ისეთი მოსახერხებელი, როგორც CloudMQTT. მართვის პანელი არ არის ძალიან მოსახერხებელი (მას ჯერ კიდევ სჭირდება სრულად განვითარება), წვდომის უფლებების დაყენება ერთი შეხედვით გაუგებარია, ორივე მოწყობილობებისა და სმარტფონების ავტორიზაცია ტოკენების გამოყენებით ურთიერთშემცვლელი ტერმინით „მოქმედება“. არ არსებობს ისეთი ფუნქციები, რომლებიც მჭირდება, რადგან არ ვიცი როგორ მოვიგო. მაგალითად, როგორ ამოიღოთ დანაზოგი მონაცემთა ბაზიდან - ჯერ კიდევ არ ვიცი. მკაცრად რომ ვთქვათ, ეს არ არის მხოლოდ MQTT ბროკერი, ასე რომ, ალბათ, მე უბრალოდ არ მესმის მისი ყველა შესაძლებლობა. ზოგჯერ ზოგიერთ სმარტფონზე ინფორმაცია გარკვეულ ზედა ნაწილში წყვეტს განახლებას. რამდენჯერმე, პროგრამული უზრუნველყოფის და მუდმივი ჩამოტვირთვების საშუალებით, სერვისი დავუკავშირე სერვერს, დაბლოკა ღრუბლოვანი ჩანაწერი რამდენიმე წლის განმავლობაში. მაგრამ მაინც ღირებული იქნებოდა ასეთი შესაძლებლობების შესწავლა. სამწუხაროა და აქ ფულის შოვნის აუცილებლობამ მოიცვა - 2019 წლიდან 10 კავშირზე გაცვლითი კურსი გაუქმდა უფასო ტარიფით. მასში ცუდი არაფერია, მაგრამ მე არ ვარ მზად ჩემი ჰობისთვის ასეთი წვრილმანი გადავიხადო, ან თუნდაც საეჭვო სისასტიკეს გავუძლო ჩემი მომსახურებისთვის. ზაგალომ, შუკატიმეო სწორედ ასე, მარგალიტის კუდებით...

Დადებითი: ადრე იყო 100-მდე კავშირი

მინუსებისალონი: არა ხელით, დასაკეცი მორგებული წვდომით, პანელიდან შეკავებული არ შეიძლება ამოღებულ იქნეს

HiveMQ საჯარო ბროკერი

აბსოლუტურად უფასო საჯარო ბროკერი ყოველგვარი საფასურის გარეშე. დაქირავება ამისთვის მთავარი გვერდიმათ შესახებ ბროკერი არ წერია. ალე არის შესანიშნავი "ALE" - ეს ბროკერი არ საჭიროებს რაიმე ავტორიზაციას, ასე რომ არ არსებობს. ნებისმიერს შეუძლია წაიკითხოს ყველა ინფორმაცია, რომელიც გადის მოწყობილობასა და თქვენ შორის. ვისაც დიდი ტრაგედია არ ექნებოდა, რადგან მხოლოდ ტემპერატურისა და ტენიანობის ნიშნებია, სუნის საიდუმლო ვერ წარმოიდგენს. თუ მარჯვნივ არის "ჭკვიანი ჯიხურის" დისტანციური მართვის პრობლემა, მაშინ ასეთი ბროკერი პრინციპში აღარ არის შესაფერისი. თქვენ არ გსურთ ვინმემ ჩართოს რაიმე მოწყობილობა თქვენს სიგნალიზაციაში, მაგალითად.

Დადებითი

მინუსები

Eclipse MQTT

კიდევ ერთი საჯარო ბროკერი ავტორიზაციის გარეშე. როგორც ვებგვერდზე წერია, ეს ბროკერი განკუთვნილია ტესტირებისთვის და არა კონფიდენციალური ინფორმაციის შესანახად და გადასაცემად. სერვერთან დასაკავშირებლად გამოიყენეთ შემდეგი პარამეტრები: server iot.eclipse.org, პორტი 1883; TLS v1.2, v1.1 ან v1.0-ისთვის – პორტი 8883. კავშირები ხელმისაწვდომია WebSockets-ის საშუალებით. Zagalom, იგივე პირობა და HiveMQ, მხოლოდ იმავე პროექციაში.

Დადებითი: არანაირი ღირებულება, არანაირი შეზღუდვა კავშირებზე

მინუსები: ვარგისია მხოლოდ ტესტირებისა და ამინდის სადგურებისთვის დისტანციური მართვის გარეშე

mosquitto.org

და კიდევ ერთი უზარმაზარი ბროკერი ავტორიზაციის გარეშე. ჩვენ არ გვჭირდება საკუთარი თავის გამეორება, ყველაფერი იგივეა, რაც HiveMQ-სა და Eclipse MQTT-ში. პატივი ეცით მათ, ვისაც ყველა ეს სერვერი უჭერს მხარს. TLS დაშიფვრაეს არანაირად არ ნიშნავს, რომ თქვენი მონაცემები მოიპარეს. გადამცემი არხი მოწყობილობასა და სერვერს შორის დაცულია ქურდობისგან, მაგრამ მონაცემები ინახება კონფიდენციალური წვდომის ქვეშ.

Დადებითი: არანაირი ღირებულება, არანაირი შეზღუდვა კავშირებზე

მინუსები: ვარგისია მხოლოდ ტესტირებისა და ამინდის სადგურებისთვის დისტანციური მართვის გარეშე

IBM Cloud (Bluemix)

ეს არ არის mqtt ბროკერი, ეს არის ნივთების ინტერნეტ პლატფორმა. ამ საწყობში ასევე არის mqtt ბროკერი. უფასო "Lite" სატარიფო გეგმაზე ნებადართულია 500-მდე მოწყობილობის რეგისტრაცია და 200 მბ ინფორმაცია თითო კანის მეტრიკაზე. ეს აბსოლუტურად მშვენიერია არა მხოლოდ სახლისთვის, არამედ კომერციული აპლიკაციებისთვისაც. ალე, როგორც ყოველთვის, არა "ALE"-ს გარეშე. პირველ რიგში, ამ პლატფორმაზე ნავიგაცია ძალიან რთულია. ასევე არის უამრავი დოკუმენტაცია. არც ისე მდიდარია! ერთ წელზე მეტი გავატარე, ვცდილობდი უფრო და უფრო გამეგო, თუ როგორ უნდა დამეწყო კავშირები. წინააღმდეგ შემთხვევაში, პლატფორმა საშუალებას გაძლევთ გამოაქვეყნოთ თემები მკაცრად მითითებულ ფორმატში: "iot-2/evt/event_id/fmt/format_string". იგივე ბრძანებები: "iot-2/cmd/ command_id /fmt/ format_string". და ყველა ჩვეულებრივი თავისუფლება - შემდეგ იგივე რაოდენობის შეტყობინებები. და ცნობილია ფორმატების ღერძი, რომელიც გადაცემულია, უფრო მეტიც - "json", "xml", "txt" და "csv". შესაძლებელია, რომ ვინმეს ეს მიდგომა სწორი და მოსახერხებელი აღმოჩნდეს, მაგრამ ღირებულების დამატების გარეშე. ეს ყველაფერი კარგად არის ასახული - უამრავი შესაძლებლობაა, რაც არ უნდა მოხდეს, მაგრამ ჩვენ დაუყოვნებლივ უნდა გავარკვიოთ ეს ყველაფერი.

Დადებითი: კავშირის ძალიან მაღალი ლიმიტები

მინუსები: ძალიან დასაკეცი დამწყებთათვის, ტოპებით შეზღუდული.

mqtt.dioty.co

ეს უკვე უფასო ბროკერია. ბუ. კავშირის პარამეტრების გვერდზე ნათქვამია: ”ეს MQTT ბროკერი ამჟამად მუშაობს ბეტა ვერსიაში. ბეტა ტესტირების ამ ეტაპზე გადასახადი არ არის, რადგან ლიმიტს დაადგენთ თვეში 50000-მდე. თუმცა, ჩვენ ვიტოვებთ უფლებას დროებით გავაუქმოთ თქვენი ანგარიშის ანგარიში, თუ თქვენ იღებთ მომსახურებას სხვა ანგარიშის პროვაიდერებისგან. მომავალში, ჩვენ დაგიკავშირდებით ელექტრონული ფოსტით, რათა შევეცადოთ გავიგოთ თქვენი კონკრეტული საჭიროებები და როგორ შეგვიძლია მათი დაკმაყოფილება.” 50,000 შეტყობინება თვეში - ეს არის დაახლოებით 70 შეტყობინება წელიწადში, რაც არც ისე მდიდარია, როგორც ერთი მოწყობილობის გამოქვეყნება შესაძლებელია სენსორის მონაცემების გაგზავნის სესიაზე 50 შეტყობინებამდე. ბროკერი მხარს უჭერს ავტორიზაციას და TLS კავშირს. რეგისტრაცია დაკავშირებულია ღრუბელთან Google შესვლა. მცირე განსხვავებაა - თქვენი ყველა თემა უნდა დაიწყოს მისამართიდან ელექტრონული ფოსტით, რომლის მეშვეობითაც თქვენ დარეგისტრირდით სერვისში, მაგალითად: ”/ [ელფოსტა დაცულია]/…/…/…”. ეს პრობლემა უფრო ხშირია MQTT კლიენტების სმარტფონებზე დაყენებისას (აკრიფეთ მეტი ტექსტი), მაგრამ არა სამუდამოდ. ჩემი აზრით, ეს სერვისი სრულიად პატივსაცემია. მე არ შევამოწმე მასთან მუშაობა და უბრალოდ დავრეგისტრირდი.

Დადებითი: აბსოლუტურად უკატო

მინუსები: თემებისთვის საჭიროა სპეციალური პრეფიქსი, საშუალოდ დაახლოებით 70 შეტყობინება წელიწადში

Solace.Cloud (PubSub+)

ეს არ არის იმდენად MQTT ბროკერი, რამდენადაც ეს არის მთელი IoT პლატფორმა. უსასყიდლო სატარიფო გეგმაზე ნებადართულია 50-მდე კავშირი, თვეში 1 გბ-მდე მონაცემების გადაცემა, 4 გბ-მდე შენახული მონაცემები (რეტიანებული შეტყობინება). Ცუდი არაა. თუმცა, უფასო ვერსიას ბევრი პერსონალიზაცია აქვს - ვინმესთვის რთულია „ერთდროულად“ დაწყება. იმ მომენტში მე არ გავხდი მისი მსხვერპლი. ალბათ, როცა დრო მოვა, გავარკვევ განწყობაზე.

Დადებითი: 50-მდე დაკავშირება

მინუსები: დაასრულეთ დასაკეცი ოსტატში

myqtthub.com

აშკარად ესტონელი ბროკერია. უსასყიდლო სატარიფო გეგმაზე დასაშვებია: 100-მდე აბონენტი, ან 50-მდე კავშირი; შენახული 10 მბ მონაცემები; 50-მდე გამოწერა თითო კავშირზე, მაქსიმუმ 250 გამოწერა (გაურკვეველია, "სახლი/#" გამოწერა ერთი გამოწერაა თუ მეტი?); 300 კვებით, მაგრამ არა უმეტეს 800 წელიწადში და არაუმეტეს 10000 დღეში. თუ თქვენ მოდიხართ რეგულარული (ყოველ ხუთ დღეში) პუბლიკაციებიდან, გამოაქვეყნეთ არაუმეტეს 34 შეტყობინება ერთდროულად. მეტი ინფორმაციაა - დამატებითი ინფორმაციისთვის იხილეთ სერვისის მთავარი გვერდი. თუმცა, საზღვრები სრულიად რეალურად გამოიყურება სახლში დამზადებული ვიკორისტანიდან. მცდელობის გარეშე...

Დადებითი: 50-მდე დაკავშირება

მინუსები: გაცვლითი კურსი რაოდენობაზე ეცნობება

mqtt.by

ბოდიშს ვიხდი ბელორუსის ბროკერისთვის. გაცვლაზე არაფერია ნათქვამი. იგი მხარს უჭერს ავტორიზაციას და ასევე გარკვეული თემების გასაჯაროების შესაძლებლობას, რათა გაიხსნას ისინი მომხმარებელთა მომსახურების გადასაჭრელად. თუმცა, არ არსებობს უსაფრთხო კავშირების მხარდაჭერა (TLS), რაც შეიძლება გადამწყვეტი იყოს გარკვეული პროგრამებისთვის. ყოველი გამოქვეყნებული თემა უნდა დაიწყოს პრეფიქსით „/user/im’ya_koristuvacha“, რაც კიდევ უფრო ართულებს მობილური mqtt კლიენტების დაყენებას, მაგრამ არა მთლიანად. დადებითი - სერვერზე არის ფარულად ხელმისაწვდომი თემები თარიღისა და დროის შესახებ, რაც ძალიან მოსახერხებელია ტაბლეტზე დაფუძნებული მართვის პანელისთვის, რომლის მიღებასაც 24 წელი სჭირდება - ერთ დროს და კიდევ ერთი წელი (ას თორმეტი). Zagalom, ზოგადად, ნორმალური ბროკერია, ან თუნდაც სტაბილურად მუშაობს.

Დადებითი: ყოველგვარი შეზღუდვის გარეშე, არის საჯარო თემები, შეგიძლიათ საკუთარი თემების გამოქვეყნება

მინუსები: არ არის SSL/TLS დაშიფრული კავშირი

mqtt.4api.ru

რუსი უსასყიდლო ბროკერი - "ჩვენ ყველასთვის უზრუნველვყოფთ წვდომას უფასო mqtt სერვერზე." ავტორიზაცია და რეგისტრაცია სერვისზე მეშვეობით სოციალური ზომები. გაჩნდა, პატივს სცემს ყველაფერს, არც ისე დიდი ხნის წინ. მიუხედავად იმისა, რომ საიტს აქვს SSL სერთიფიკატი, კავშირის პარამეტრები მიუთითებს მხოლოდ "SSL-ის გარეშე", შესაძლოა, მოწყობილობებისთვის SSL კავშირები არ არის ხელმისაწვდომი. კავშირის გვერდზე ასევე წერია: „ჩვენ არ გირჩევთ ამ სერვერის გამოყენებას სასიცოცხლოდ მნიშვნელოვანი პროექტებისთვის“. მართვის პანელს აქვს ძალიან მოკრძალებული ფუნქციონირება, რომელიც მოითხოვს მესამე მხარის პროგრამულ უზრუნველყოფას

Დადებითი: ყოველგვარი საზღვრების გარეშე

მინუსები Stan: არ არის SSL/TLS დაშიფრული კავშირი, მართვის პანელის ძირითადი ფუნქციონირება

სხვა სერვისები

თქვენ ვერ შეძლებთ ამის გაკეთებას მარტო MQTT-ით. MQTT არის მარტივი და მარტივი, მაგრამ საშუალებას გაძლევთ ნახოთ ინფორმაცია "აქ და ერთდროულად", საათში ცვლილებების ისტორიის გარეშე. განრიგებისა და სხვა სერვისების გადასახედად, იმუშავეთ მათზე რაიმე განსაკუთრებული სირთულეების გამოწვევის გარეშე. მათგან მოქმედებები წარმოდგენილია ქვემოთ.

ThingSpeak

ThingSpeak ხელმისაწვდომია უფასო მომსახურებაარაკომერციული მცირე პროექტებისთვის (<3 миллиона сообщений в год или ~ 8 200 сообщений в день). Сервис позволяет накапливать получаемые данные в своих хранилищах, после чего их можно удобно просматривать в виде графиков. В том числе и на сторонних сайтах, .

სერვისის განსაკუთრებული მახასიათებელია MatLab Analytics-თან ინტეგრაცია და მიუხედავად იმისა, რომ მე არ მიცდია MatLab სკრიპტების შესწორება, არაფერი გამომდიოდა. ისე, მე ნამდვილად არ მინდოდა. კატის გარეშე შენახვის სისტემისთვის, სერვისი საშუალებას გაძლევთ შეინახოთ ოთხამდე არხი, ხოლო კანის არხისთვის შეგიძლიათ შეინახოთ 8-მდე ველი სხვადასხვა მონაცემებით. ასევე არის კიდევ ერთი შეზღუდვა No-cost ანგარიშში - თქვენ არ შეგიძლიათ მონაცემების გამოქვეყნება ერთზე მეტჯერ 15 წამის განმავლობაში (რეკომენდებულია 20 წამის პაუზა), რაც ხელს შეუშლის ლიმიტის გადაჭარბებას დღეში 8200-ით. პრინციპში, ჩემი ყველა "გამომცემელი" ადვილად ჯდება ამ ზღვარში და ისინი ნაკლებად ძვირია. დიდი ხანია, რაც სერვისზე ვმუშაობ, ეს მარტივი და მარტივია, რადგან მე არ მაინტერესებს MatLab. არსებობს უამრავი კლიენტის პროგრამა Android-ისთვის და კიდევ უფრო ნაკლები MQTT-ისთვის.

Დადებითი: მარტივი ვიკი ESP-ზე, მოსახერხებელი საიტი

მინუსები: უამრავი საზღვრები უფასო oblikovy ჩანაწერზე

ღია მონიტორინგი.ონლაინ

ეს სერვისი ThingSpeak-ის მსგავსია - მასზე შეგიძლიათ ზუსტად იგივე გზით დაამატოთ მონაცემები და შემდეგ ნახოთ ცხრილი, გრაფიკები და ჰისტოგრამები. ინტერფეისი მარტივია, როგორც ThingSpeak, მაგრამ მისი დაყენება ბევრად უფრო მარტივია.

უპირველეს ყოვლისა, ეს სერვისი შექმნილია, როგორც მე მესმის, პირადი მზის ელექტროსადგურების პარამეტრების მონიტორინგისთვის, მაგრამ ზოგადად შესაფერისია სხვა მიზნებისთვის. სერვისი ხელმისაწვდომია უფასოდ, ამ დროისთვის ყოველგვარი შეზღუდვის გარეშე. ერთი გაცვლა, როგორც აქამდე აღმოვაჩინე - ჯგუფურ სერვერზე გაგზავნა ერთი კონტროლერისთვის არ შეიძლება იყოს თვეში ერთხელ. თუმცა, მნიშვნელობა კანის კონტროლერისთვის და კანს შორის კონტროლერების რაოდენობა სრულიად უმნიშვნელოა. სერვერზე მონაცემების გაგზავნა ხდება მარტივი მიღების მოთხოვნით; ArduinoIDE-ზე დანერგვაზე არაუმეტეს ერთი წელი დამჭირდა. ThingSpeak-ის ხედში შენახული მონაცემების ნახვა შესაძლებელია ერთ გრაფიკზე (გადაფარვით) და ასევე შეგიძლიათ ნებისმიერი დაფის მორგება დარჩენილი მნიშვნელობების საჩვენებლად. თქვენ ასევე შეგიძლიათ ნახოთ თქვენი დანაზოგის ღირებულებები მარტივ ცხრილში.

Დადებითი: მარტივი წვდომა ESP-ზე, მოსახერხებელი ინტერფეისი, არ არის საჭირო საზღვრები

მინუსები: შეუძლებელია გრაფიკის ჩვენება მესამე მხარის საიტებზე (ადმინისტრირებადი ThingSpeak-ის ქვეშ), მაგრამ ჯერ არ ვიცი როგორ გავაკეთო ეს

ბიბოტი

ამ სერვისის მთავარ გვერდზე წერია: „ყველაფერის რეალურ დროში დაკავშირება მდიდარი API-ით, რომელიც მხარს უჭერს REST, WebSockets და MQTT“. კერძოდ, მე ჯერ არ გამომიყენებია ეს სერვისი. ვიმსჯელებთ იმის მიხედვით, რაც მე მესმის აღწერილობიდან, ეს არის mqtt ბროკერისა და thingspeak.com-ის ველური ჯამი. No-cost რეჟიმში არხების და რესურსების რაოდენობა შეზღუდულია, მაგრამ დამატებითი რესურსების რაოდენობა შეზღუდულია: 0.05 მილიონი დღეში | თვეში 1,5 მილიონი. იმის გასაგებად, თუ რა არის შენახული, ლიმიტი კიდევ უფრო დაბალია: 5000 დღეში | თვეში 150000. გარდა ამისა, შეტყობინებები ინახება მაქსიმუმ სამი თვის განმავლობაში, რის შემდეგაც ისინი იშლება. თქვენ ვერ შეძლებთ ამინდის შეცვლას მთელი მდინარისთვის. სმარტფონისთვის მობილური კლიენტის შესახებ ჯერ არაფერი ვიცი. დარეგისტრირდა. Ვცდი. Visnovki robiti ჯერ ადრეა.

ბლინკი

დისტანციური მოვლის სერვისი „გონივრული მოწყობილობებით“ აქტიურად ვითარდება. პირდაპირ რომ ვთქვათ, აგრესიულად - ყველა ფორუმზე წერს რა არის საჭირო და რა არა. ჩემი აზრით, ეს პლატფორმა არ არის მოყვარულთათვის, არამედ ბიზნესისთვის. "ფასის გარეშე" რესურსი ძალიან ცოტაა, შეგიძლიათ უბრალოდ ჩართოთ LED ან ჩართოთ ერთი რელე. ერთხელ რომ ვცადე, დავნებდი და მაშინვე ამომეწურა რესურსი. ზედმეტად ხარბი.

Დადებითი: Მე არ ვიცი

მინუსები: ხარბი, მხოლოდ ერთი მობილური კლიენტი

ჯერჯერობით სულ ესაა. თუ იცით ESP დისტანციურად მართვის სხვა გზები („მობილურთან“ ერთად), გთხოვთ მომწეროთ. მოდით ვისაუბროთ ამაზე, იქნებ, ვისაუბროთ სტატიაზე.

ადრე მე ვიყენებდი ველოსიპედს Arduino მოწყობილობის მონიტორინგისთვის.

Მაგარი იყო.

/* -- ახალი პროექტი -- გრაფიკული მომხმარებლის ინტერფეისის ეს წყარო კოდი გენერირებულია ავტომატურად RemoteXY რედაქტორის მიერ. კომპიუტერული კოდისთვის, wiki RemoteXY ბიბლიოთეკა 2.3.5 ან უფრო ახალი ვერსიის ჩამოტვირთვა ბმულით http://remotexy.com/en/library/ ANDROID 4.3.1 ან უფრო ახალი ვერსიით; - iOS 1.3.5 ან უფრო ახალი ვერსიისთვის; Tsey კოდი არის უფასო პროგრამა; თქვენ შეგიძლიათ შეაკეთოთ ან შეცვალოთ იგი GNU Lesser General Public ლიცენზიით, რომელიც გამოქვეყნებულია თავისუფალი პროგრამული უზრუნველყოფის ფონდის ქვეშ; ან ვერსია 2.1 ლიცენზია, ან (თქვენი არჩევანით) ვერსიის ნებისმიერი ვერსია. */ ////////////////////////////////////////////////////////////// RemoteXY მოიცავს ბიბლიოთეკას // ///////////////////////////////////////// / მინიჭებულია RemoteXY ბიბლიოთეკის შეერთებისა და დაკავშირების რეჟიმზე #define REMOTEXY_MODE__ESP8266_HARDSERIAL_CLOUD #include // დააყენე კავშირი #define REMOTEXY_SERIAL Serial #define REMOTEXY_SERIAL_SPEED 9600 #define REMOTEXY_WIFI_SSID "***********" #define REMOTEXY_WIFI_PASSWORD "******OU****" #define REMOTEXY_WIFI_SSID "***********" #define REMOTEXY_CLOUD_PORT 6376 #define REMOTEXY_CLOUD_TOKEN "************************" #include // ბიბლიოთეკის დამატება DHT11 dht11 DHT; // განსაზღვრეთ dht11 გაცვლის კლასი #define DHT11_PIN 7 // DHT11 სენსორის კავშირები ციფრულ პინთან ნომერი 4 const int analogSignal = A3; //ანალოგური სიგნალის პინის დაკავშირება const int digitalSignal = 8; //ციფრული სიგნალის პინის ლოგიკური noGas დაკავშირება; //შეცვალეთ მნიშვნელობის შენახვა გაზის არსებობის შესახებ int gas = 0; //შეცვლა გაზის მოცულობის დაზოგვისთვის float hum = 0; //ტენიანობის შესანარჩუნებლად შეცვლა float temp = 0; //ტემპერატურის შენახვის შეცვლა int chk; //გაზომვა ბუფერის შენახვისთვის DHT char msgBuffer; // ინტერფეისის კონფიგურაცია #pragma pack(push, 1) 81,22,11, 2,26,31,31,79,78,0,79,70,70, 0,66,132,10,13,31,24, 7,10,27, 21,2,24, 66,132,56,13,31,24,4, 41,31,24,2,24,67,4,16,5,20, 5,38,23, 20,5,2,26,11,67, 4, 63,6,20,5,39,52,20,5,2,26, 11); // სტრუქტურა ნიშნავს ყველა ცვლილებას თქვენი საკონტროლო ინტერფეისის სტრუქტურაში ( // შეყვანის ცვლადი uint8_t switch_1; // =1 ჩართვისთვის და =0 გამორთვისთვის // გამომავალი ცვლადი int8_t level_1; // =0..100 დონის პოზიცია int8_t დონე_2; / / =0..100 ხდება დონის char text_1; // = UTF8 მწკრივი მთავრდება ნულოვანი სიმბოლოთი_2; #pragma pack(pop) ////////////////// ///// ////////////////////// // // END RemoteXY მოიცავს // ///////////// //// /////////////////////// /// #define PIN_SWITCH_1 13 void setup() ( RemoteXY_Init(); pinMode (PIN_SWITCH_1, OUTPUT ); / / TODO თქვენ დაყენების კოდი ) void loop() ( RemoteXY_Handler (); digitalWrite (PIN_SWITCH_1 )?LOW:HIGH); noGas = digitalRead (ციფრული სიგნალი); // წაიკითხეთ გაზის არსებობის გაზი = analogRead(analogSignal); = DHT .temperature; RemoteXY.level_1 = hum; RemoteXY.level_2 = ტემპერატურა; dtostrf(hum, 6, 2, RemoteXY.text_1); / ვიკორისტი RemoteXY სტრუქტურა მონაცემთა გადაცემისთვის)

Vikorystvo ამზადებს სენდვიჩს დაფებისგან.

დაუჯერებლად, ყველაფერი მაშინვე იკითხა:

კატასტროფული RemoteXY სერვისის გამოვლენის მომენტიდან, ფოტოს გადაღებამდე ერთი საათი გავიდა.

რობოტების მახასიათებლები RemoteXY-ით.

1. ყველაფერი ძალიან მარტივია. თავისებურად კარგია. მაგალითად, ბლინკთან და კაიენთან ერთად, ერთ წელიწადში ძლივს დაქორწინდებით ნულიდან. მაგალითად, ვიკორისტანისთვის, "KaScada Cloud" მოითხოვს სპეციალურ შეძენას.

2. არ არის საჭირო მონაცემების დამუშავება და შენახვა სერვერის მხარეს: არ არის კავშირი დაფასთან - დანამატში გამოჩნდება „No Connection“.

3. მხოლოდ 5 დიზაინის ელემენტია უფასო, მაგრამ PRO პროგრამა ღირს არაუმეტეს ერთი დღის განმავლობაში.

4. შესაძლებელია ერთი პროგრამით დაკავშირება გადახდიდან როგორც მყარი სერვერის, ისე უშუალოდ. მართალია, არა დაუყოვნებლივ. და სწრაფად გადართვა შეუძლებელია - თქვენ უნდა შეცვალოთ ესკიზი დაფიდან. ასევე შესაძლებელია სმარტფონის ბარათთან დაკავშირება Bluetooth-ით და USB-ით.