Sisukord:
- Samm: KROUTON
- 2. etapp: ASIMILEERI KROUTON
- 3. samm: SEADME KOKKUPANEK
- 4. samm: FIRMWAREAR
- 5. samm: SEADMEKAART
- 6. samm: NÄDALAVAADE KAART
- Samm 7: ENDPOINT CUSTOMIZATION
- 8. samm: VIDEOD
Video: IOT123 - ASISIMILEERITUD ANTURI HUB: ICOS10 CORS VEEBIKOMPONENDID: 8 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-31 10:18
ASSIMILATE SENSOR/ACTOR Slaves manustab metaandmeid, mida kasutatakse Croutoni määratlevate visualiseerimiste jaoks. See ehitis erineb pisut eelmistest; riistvara muudatusi pole. Püsivara toetab nüüd kohandatud (rikkamate) toimetajate majutamist, mida saab integreerida AssimilateCroutoni uusimasse versiooni. Selles artiklis pööratakse rohkem tähelepanu püsivara ja MQTT armatuurlaua selgitamisele.
Üks veebikomponentide teenindamise eeliseid nende juhitavast seadmest on see, et seadme täpsem juhtimine on piiratud võrguga, millega seade on ühendatud: teie WiFi pääsupunktiga. Kuigi kui kasutate MQTT -serverit koos autentimisega, on kaitse sarnasus, võib avalikes võrkudes brauserist hetkeks lahkudes (AssimilateCroutoni veebisait) keegi teie automaatikaseadmeid sisse juhtida. See CORSi veebikomponendi funktsioon võimaldab näidikuid (temperatuur, valgustase, niiskus) avalikult kuvada ja käsufunktsioone (sisse/välja, ajastamine) kasutada ainult seadme võrgus.
Seadmes toetatakse endiselt kõiki veebiserveri funktsioone, millel on SPIFFS -is autentimine ja hostimine, kuid erilist tähelepanu on pööratud CORS (Cross Origin Resource Sharing) toele Polymer WebComponents (Crouton kasutab Polymer 1.4.0).
AssimilateCroutonis (Assimilate IOT võrgu jaoks kasutatav Croutoni kahvel) on muudatused hõlmatud
- seadmekaardi (assim-seade) tugi, mis muu hulgas näitab ja peidab kasutajale seadme jaoks eraldi kaarte
- info atribuut kõigil kaartidel, mis näitab kaardi jaoks kasulikku kontekstipõhist teavet
- CORS -i veebikomponentide tugi, sel juhul majutatakse seadme veebiserveris (ESP8266).
Samm: KROUTON
Croutonis armatuurlaud, mis võimaldab teil IOT -seadmeid visualiseerida ja juhtida minimaalse seadistusega. Põhimõtteliselt on see kõige lihtsam armatuurlaud IOT riistvarahuvilistele, kes kasutavad ainult MQTT -d ja JSON -i.
ASSIMILATE ORJAD (andurid ja osalejad) omavad metaandmeid ja atribuute, mida kapten kasutab seadme loomisel teabeinfo json paketis, mida Crouton kasutab armatuurlaua ehitamiseks. Vahendaja ASSIMILATE NODES ja Croutoni vahel on MQTT maakler, kes on veebipesade jaoks sõbralik: demo jaoks kasutatakse sääski.
Kuna ASSIMILATE MASTER taotleb atribuute, vormindab see vastuse väärtused Croutoni värskenduste jaoks nõutavas vormingus. AssimilateCroutoni kahvel lisab mõningaid funktsioone, mis võimaldavad teil detsentraliseerida teie seadet käitavaid ärireegleid, st IOT -seade ei vaja mingeid sisseehitatud ärireegleid, see on lihtsalt MQTT/I2C -side loomine targematele (ATTINY -juhitud) orjaosalistele ja anduritele.
2. etapp: ASIMILEERI KROUTON
MUUTUSED KROOONILE
Kahveldatud versiooni muudatused hõlmavad järgmist:
- kui lõpp -punktil on määratud tee atribuut, teeb kaardi veebikomponent CORS -i ressursi jaoks HTMLImporti (selle ehituse ESP8266 veebiserver).
- CORSi veebikomponendist ülesvoolu (sõltuvustest) eelnevatele ressurssidele viidatakse nii, nagu neid serveeritaks Croutoni veebisaidilt; kui neil ei õnnestu eranditöötlejat laadida, suunab teed ja laadib veebisaidilt uuesti.
- paremas ülanurgas kuvatakse praegune kohalik aeg, mis on kasulik kontrollimise ajastamiseks.
POLÜMERI SÕLTUMISED JA SÜGID
Polümeerist sõltuvuspuu lehti saab hostida CORSis. Kuna juurusõltuvusi võib rakenduses mitu korda kasutada, ei saa neile viidata kahest kohast (veebisaidilt ja seadmest), kuna polümeerimooduli laadija käsitleb neid kahe eraldiseisva ressursina ja mitu registreerimisviga jätavad rakenduse kiiresti lesta.
Sel põhjusel on kaardi veebikomponent (HTML -fail punktis 1.4.0) ja sellega seotud CSS -fail ainsad seadmes hostitavad failid. Teistele sõltuvustele viidatakse nii, nagu oleks veebikomponent hostitud pärit veebisaidi kaustas "html", mis hõlbustab selle kausta veebikomponentide arendamist, kuni olete valmis ESP8266 -s SPIFFS -i üles laadima. AssimilateCrouton töötab välja, kuidas õigeid faile hankida.
PAIGALDAMINE
originaal Croutoni looja edfungus kirjutas allika väljaandesse Pug/Less ja tal oli NPM/Grunt tööriistakett. Renderdasin Pug/Less HTML/css -ks ja lihtsalt redigeerisin/levitasin renderdatud faile. See murdis NPM/Grunt tööriistaketi. Selle parandamist käsitletakse peatükis TULEVIK.
Saate juhtpaneeli kohapeal oma DEV -kastis testida.
- Juurekausta käsurealt
- npm algus
- lite-server käivitatakse aadressil https:// localhost: 10001
Juurutamine staatilisse veebiserverisse:
- kopeerige kõik kaustad, välja arvatud node_modules
- kopeeri index.html (ja võib -olla ka web.config)
TULEVIK
Üks peamisi eesmärke on minna üle versioonile Polymer3 ja töötada Polymer CLI -ga. Täiustatud toimetajate ja raamistiku lisamine IOT -i arendajatele oma arendamiseks on kõrge prioriteet. Lõpuks käivitatakse täiustatud automatiseeritud süsteem täielikult eraldatud MQTT klientidelt nagu AssimilateCrouton.
AssimilateCroutoni jaoks kasutatava seadmeinfo paketi näide:
{ |
"deviceInfo": { |
"endPoints": { |
"CC_seade": { |
"seadme_nimi": "ash_mezz_A3", |
"kaardi tüüp": "assim-seade", |
"ssid": "Corelines_2", |
"ip_addr": "192.168.8.104", |
"lõpp -punktid": [ |
{ |
"title": "Kasvatage tuled", |
"kaardi tüüp": "crouton-simple-toggle", |
"lõpp -punkt": "lüliti" |
}, |
{ |
"title": "Istutustuled", |
"kaardi tüüp": "crouton-assim-weekview", |
"lõpp -punkt": "CC_switch" |
} |
] |
}, |
"CC_ lüliti": { |
"kaardi tüüp": "assim-weekview", |
"info": "Lülitage tuled sisse või välja 15 -minutiliste ajavahemike järel", |
"tee": "https://192.168.8.104/cors", |
"title": "Istutustuled", |
"interval_mins": 15, |
"väärtused": { |
"väärtus": "" |
} |
}, |
"lüliti": { |
"title": "Kasvatage tuled", |
"kaardi tüüp": "crouton-simple-toggle", |
"info": "Lülitage tuled ad hoc sisse või välja", |
"sildid": { |
"false": "OFF", |
"tõsi": "SEES" |
}, |
"ikoonid": { |
"false": "sun-o", |
"tõsi": "päike" |
}, |
"väärtused": { |
"väärtus": 0 |
} |
} |
}, |
"olek": "hea", |
"nimi": "ash_mezz_A3", |
"kirjeldus": "Ashmore'i kontor, Mezzanine, piirkond A2", |
"värv": "#4D90FE" |
} |
} |
vaadake rawdeviceInfo.json, mille hostiks on GitHub ❤
3. samm: SEADME KOKKUPANEK
Kuna riistvara muudatusi ei toimu, on siin lingid asjakohasele teabele:
- Kesta kokkupanek
- Materjalid ja tööriistad
- MCU ettevalmistamine
- MCU korpuse ettevalmistamine
- Slaves Low-Side Switch/RESET tütareplaadi ehitamine
- Peamiste komponentide kokkupanek
4. samm: FIRMWAREAR
PÕHIMUUTUSED SEE EHITUS
Selleks, et rakendus AssimilateCrouton saaks seadmest kasutada CORS -i ressursse, tuli vastuste päised teatud viisil konfigureerida. Seda rakendati selles püsivara väljalaskes (static_server.ino => server_file_read ()).
Samuti pidi polümeeri peamine sõltuvusgraafik olema pärit ühest päritolust. Kasutati strateegiat, et lisada veahaldur (corsLinkOnError) SPIFFS CORS -failidesse, et ressursid uuesti laadida AssimilateCroutoni veebisaidilt, kui neid seadmest ei leita.
SPIFFS -failisüsteemi on lisatud 2 uut konventsiooni seadmeinfos loodud lõpp -punktide kohandamiseks - mida AssimilateCrouton kasutab armatuurlaua kaartide loomiseks:
- /config/user_card_base.json Lõpp -punkti määratlus, kus esmalt vahetatakse käitusaja muutujad:,,. Tavaliselt lisatakse sinna assim-seadme kaart. See ei suhtle seadmega tagasi.
- /config/user_card_#.json Lõpp -punkti määratlus, kus esmalt vahetatakse käitusaja muutujad:,,. See on tavaliselt koht, kus rikkalikud toimetajad, näiteks assim-weekview kaart, lisatakse ühendatuna #-ga seotud I2C orja (näitleja/andur) külge.
Sketš/RAAMATUKOGUD
Selles etapis on projekt pakitud AssimilateBus Arduino raamatukogu näitena. Seda peamiselt selleks, et Arduino IDE -st oleks kõikidele vajalikele failidele lihtne juurde pääseda. Peamised koodiartiklid on:
- mqtt_crouton_esp8266_cors_webcomponents.ino - peamine sisenemispunkt.
- assimilate_bus.h/assimilate_bus.cpp - raamatukogu, mis tegeleb I2C suhtlemisega alamanduri/näitlejatega
- VizJson.h/VizJson.cpp - raamatukogu, mis vormindab/ehitab kõiki MQTT kaudu avaldatud JSON -e
- config.h/config.cpp - raamatukogu, mis loeb/kastib/kirjutab konfiguratsioonifaile SPIFFS -is
- static_i2c_callbacks.ino - vastuvõetud vara I2C tagasikutsumised ja orjade taotluste tsükkel on täielik static_mqtt.ino - MQTT funktsioonid
- static_server.ino - veebiserveri funktsioonid
- static_utility.ino - abistaja funktsioonid
Staatilisi INO funktsioone kasutati (teekide asemel) erinevatel põhjustel, kuid peamiselt selleks, et veebiserveri ja MQTT funktsioonid saaksid hästi koos mängida.
SPIFFI RESSURSID
SPIFFS -failide üksikasjalikud selgitused leiate siit.
- favicon.ico - ressurss, mida kasutab Ace Editor
-
config
- device.json - seadme konfiguratsioon (Wifi, MQTT …)
- slave_metas _#. json - genereeritakse käitusajal iga orja aadressi numbri (#) jaoks
- user_card _#. json - kohandatud lõpp -punkt, mis tuleb seadmesse integreerida iga alam aadressi numbri (#) jaoks
- user_card_base.json - kohandatud lõpp -punkt, mis tuleb seadme DeviceInfo -sse integreerida
- user_meta _#. json - kohandatud metaandmed alistavad alamate iga alam aadressi numbri (#)
- user_props.json - kohandatud atribuutide nimed, mis alistavad orjade metaandmetes olevad nimed
-
cors
- card -webcomponent.css - stiilileht erinevate kohandatud kaartide jaoks
- card -webcomponent.html - erinevate kohandatud kaartide veebikomponent
- toimetaja
- assimilate -logo-p.webp" />
- edit.htm.gz - Ace Editori HTML -i gzip
- edit.htm.src - Ace Editori algne HTML
- favicon -32x32-p.webp" />
FIRMWAREARI LAADIMINE
- Koodide hoidla leiate siit (hetktõmmis).
- Raamatukogu ZIP -i leiate siit (hetktõmmis).
- Siit leiate juhised "ZIP -kogu importimiseks".
- Kui kogu on installitud, saate avada näite "mqtt_crouton_esp8266_cors_webcomponents".
- Juhised Arduino seadistamiseks Wemos D1 Mini jaoks siin.
- Sõltuvused: ArduinoJson, TimeLib, PubSubClient, NeoTimer (vaadake manuseid, kui hoidlate muudatusi rikutakse).
LAADI SPIFFIDELE
Kui kood on Arduino IDE -sse laaditud, avage kaust data/config: device.json:
- Muutke wifi_ssid väärtust oma WiFi SSID -ga.
- Muutke wifi_key väärtust oma WiFi võtmega.
- Muutke mqtt_device_name väärtust oma eelistatud seadme identifitseerimisega (liitumist pole vaja).
- Muutke mqtt_device_description väärtust oma eelistatud seadme kirjeldusega (Croutonis).
- Salvestage device.json.
- Laadige andmefailid üles SPIFFS -i.
AssimilateBusi näite peamine sisenemispunkt:
/* |
* |
*SEADME ÄRIREEGLEID Eeldatakse, et neid kontrollitakse MQTT abil |
* |
* Muud kui seadistamine ja silmus selles failis |
* olulised liikuvad osad on |
* on_bus_received ja on_bus_complete saidil static_i2c_callbacks.ino |
* ja |
* mqtt_publish ja mqtt_callback saidil static_mqtt.ino |
* |
*/ |
#include "types.h" |
#include "VizJson.h" |
#include "assimilate_bus.h" |
#include "silumine.h" |
#include "config.h" |
#kaasake |
#kaasake // määrake MQTT_MAX_PACKET_SIZE väärtuseks ~ 3000 (või teie vajadustele seadmeinfo kohta) |
#kaasake |
#kaasake |
#kaasake |
#kaasake |
#kaasake |
// -------------------------------- MÄLUDEKLARATSIOONID |
// ------------------------------------------------ - määratleb |
#defineDBG_OUTPUT_FLAG2 // 0, 1, 2 MIINIMUM, VABASTAMINE, TÄIS |
#define_mqtt_pub_topic "outbox" // CROUTON CONVENTIONS |
#define_mqtt_sub_topic "postkast" |
// ------------------------------------------------ - klassi objektid |
Silumine _debug (DBG_OUTPUT_FLAG); |
Assimilatsioonibuss _assimilaatibuss; |
VizJson _viz_json; |
Config _config_data; |
WiFiClient _esp_client; |
PubSubClient _klient (_esp_client); |
WiFiUDP Udp; |
ESP8266WebServer _server (80); |
Neotimer _timer_property_request = Neotimer (5000); |
// ------------------------------------------------ - andmestruktuurid / muutuja |
RuntimeDeviceData _runtime_device_data; |
PropertyDto _dto_props [50]; // max 10 orja x max 5 atribuuti |
// ------------------------------------------------ - voolu reguleerimine |
volatilebool _sent_device_info = vale; |
bait _dto_props_index = 0; |
bool _fatal_error = vale; |
// -------------------------------- FUNKTSIOONI RAKENDUSALA DEKLARATSIOONID |
// ------------------------------------------------ - static_i2c_callbacks.ino |
voidon_bus_received (bait slave_address, byte prop_index, Roll roll, char name [16], char value [16]); |
voidon_bus_complete (); |
// ------------------------------------------------ - static_mqtt.ino |
voidmqtt_callback (char* teema, bait* kasulik koormus, unsignedint pikkus); |
voidmqtt_loop (); |
int8_tmqtt_get_topic_index (char* teema); |
voidmqtt_init (constchar* wifi_ssid, constchar* wifi_parool, constchar* mqtt_broker, int mqtt_port); |
voidmqtt_create_subscriptions (); |
voidmqtt_publish (char *root_topic, char *deviceName, char *lõpp -punkt, constchar *kasulik koormus); |
boolmqtt_ensure_connect (); |
voidmqtt_subscribe (char *root_topic, char *deviceName, char *lõpp -punkt); |
voidi2c_set_and_get (baidiaadress, baitkood, constchar *param); |
// ------------------------------------------------ - static_server.ino |
String server_content_type_get (Stringi failinimi); |
boolserver_path_in_auth_exclusion (String tee); |
boolserver_authread (stringitee); |
boolserver_file_read (stringitee); |
voidserver_file_upload (); |
voidserver_file_delete (); |
voidserver_file_create (); |
voidserver_file_list (); |
voidserver_init (); |
voidtime_services_init (char *ntp_server_name, bait time_zone); |
time_tget_ntp_time (); |
voidsend_ntp_packet (IPAddress & address); |
char *time_stamp_get (); |
// ------------------------------------------------ - static_utility.ino |
String spiffs_file_list_build (String tee); |
voidreport_deserialize_error (); |
voidreport_spiffs_error (); |
boolcheck_fatal_error (); |
boolget_json_card_type (baitide orja_aadress, bait prop_index, char *kaardi_tüüp); |
boolget_struct_card_type (baitide orja_aadress, bait prop_index, char *kaardi_tüüp); |
boolget_json_is_series (bait slave_address, bait prop_index); |
voidstr_replace (char *src, constchar *oldchars, char *newchars); |
bait get_prop_dto_idx (bait slave_address, bait prop_index); |
// -------------------------------- PÕHILINE |
voidsetup () { |
DBG_OUTPUT_PORT.begin (115200); |
SetupDeviceData seadme_andmed; |
Serial.println (); Serial.println (); // varu konsooli prügi jaoks |
viivitus (5000); |
kui (DBG_OUTPUT_FLAG == 2) DBG_OUTPUT_PORT.setDebugOutput (tõene); |
_debug.out_fla (F ("setup"), tõsi, 2); |
// hangi vajalik konfiguratsioon |
kui (SPIFFS.begin ()) { |
_debug.out_str (spiffs_file_list_build ("/"), tõsi, 2); |
kui (! _config_data.get_device_data (seadme_andmed, _runtime_device_data)) { |
report_deserialize_error (); |
tagasipöördumine; |
} |
} muud { |
report_spiffs_error (); |
tagasipöördumine; |
} |
// kasutage seadmes device.json määratud taimeriväärtust |
_timer_property_request.set (device_data.sensor_interval); |
mqtt_init (seadme_andmed.wifi_ssid, seadme_andmed.wifi_võti, seadme_andmed.mqtt_broker, seadme_andmed.mqtt_port); |
time_services_init (seadme_andmed.ntp_server_name, device_data.time_zone); |
server_init (); |
// käivitada metaandmete kogu |
_assimilate_bus.get_metadata (); |
_assimilate_bus.print_metadata_andmed (); |
mqtt_ensure_connect (); |
// vajab metaandmete kogumise lõpuleviimiseks anduri atribuuti (nimesid) |
_assimilate_bus.get_properties (on_bus_received, on_bus_complete); |
_timer_property_request.reset (); // võib selle ajani märgatavat aega mööda minna, nii et alustage uuesti |
} |
voidloop () { |
if (! check_fatal_error ()) return; |
mqtt_loop (); |
_server.handleClient (); |
if (_timer_property_request.repeat ()) { |
_assimilate_bus.get_properties (on_bus_received, on_bus_complete); |
} |
} |
vaata rawmqtt_crouton_esp8266_cors_webcomponents.ino, mille hostiks on GitHub ❤
5. samm: SEADMEKAART
Seadmekaart (kaardi tüüp: assim-seade) on veebisaidil hostitud ja seda pole vaja seadmest (CORS) esitada.
Selle vaikelehtede loendid:
- MQTT teemad seadmesse lugemiseks ja kirjutamiseks
- Pöörduspunkt, millega seade on ühendatud
- Link seadmesse hostitud SPIFFS -failiredaktori juurde ACE EDITORi abil
- Silmaikoon, mis avab kaardi kuvamise/peitmise lehe.
Kaardi kuvamise/peitmise lehtede loendid:
- Iga kaart eraldi üksusena
- Näitamisel paks sinine font
- Peidetud must tavaline font
- Kaardi tüüpi kujutav ikoon.
Kaardi saab peita, klõpsates kaartidel peitmisnupul või loendis sinise-rasvases kirjas kirjega. Kaarte saab kuvada, kui klõpsate loendis musta tavalise fondiga üksust.
Selle funktsiooniga on lõdvalt seotud info röstsaiad. Kui seadme DeviceInfo mõnele lõpp -punktile on määratud info atribuut, kuvatakse kaardil peitmisnupu kõrval teabenupp. Kui klõpsate, kuvatakse lõpp -punktis määratletud kontekstipõhine teave aknasse "röstitud".
Kui seadmekaart pole määratletud, ei kuvata kaartidel peitmisnuppe. Seda seetõttu, et kui need on peidetud, pole neid enam võimalik näidata.
Vt ENDPOINT CUSTOMIZATION, et saada üksikasjalikku teavet selle kohta, kuidas assim-seadme kaarti saab lisada ESP8266 SPIFFS-failide kaudu.
AssimilateCroutoni veebikomponent
NÄIDA PEIDA Ikoon |
SEADME VORM |
div> |
Näita peidetud loendit |
mall> |
paber-loendikast> |
div> |
crouton-kaart> |
mall> |
dom-moodul> |
vaadake rawassim-device.html, mille hostiks on GitHub ❤
6. samm: NÄDALAVAADE KAART
Nädalakaart (kaardi tüüp: assim-weekview) on seadmes hostitud (kausta cors). See süstitakse AssimilateCroutoni jaoks avaldatud seadmeinfo paketti, lisades faili SPIFFS (antud juhul kasutaja_kaart_9.json) faili config/user_card _#. Json.
ÜLEVAADE
Argipäevad esitatakse ajavahemike loenditena. Ajavahemiku täpsus määratakse atribuudiga "interval_mins" konfiguratsioonis/kasutaja_kaardil _#. Json. See peab olema tunni murdosa või tunni kordajad nt. 10, 15, 20, 30, 60, 120, 360. Ajapilul klõpsates veenduge, et selle aja jooksul on seotud seadmele sisse lülitatud olek. Kui ajavahemik on praegu, saadetakse seadme jaoks kohe käsk (avaldatakse). Tavaliselt kontrollitakse/avaldatakse olekut iga minuti järel. Valikud salvestatakse LocalStorage'i, nii et ajad laaditakse uuesti brauseri värskendamisega.
KASUTA KOHTU
Nädalavaade sobib praeguses olekus seadmetele, mis saavad oma oleku visualiseerimiseks kasutada lülitit Toggle, st need on sisse või välja lülitatud ja pärast seadistamist jäävad nad sellesse olekusse. Tuled, ventilaatorid ja veesoojendid on head kandidaadid.
PIIRANGUD/TÄHELEPANUD
- Intervall_mins peab olema üks ülalnimetatud väärtustest
- Nädalavaade ei toeta ka hetke toiminguid, mis on samuti planeeritud, näiteks lühikese aja (5 sekundit) sisse lülitamine kaks korda päevas.
TULEVIK
- Eeldatakse, et hetkelisi meetmeid toetatakse.
- Ajakava valimisel kaalutakse seadmete sünkroonitud salvestusruumi.
Samm 7: ENDPOINT CUSTOMIZATION
Nagu FIRMWARE'is lühidalt mainitud, on lõpp -punktide kohandamiseks SPIFFS -failisüsteemi lisatud 2 uut tava. JSON -failid on fragmendid, mis lisatakse MQTT maaklerile postitatud seadmeinfo paketi lõpp -punktide atribuudile, millest saab armatuurlaua määratlus.
Lõpp -punktide võtmed genereeritakse püsivaras:
- CC_device (kohandatud kaart) kasutaja_card_base.json jaoks
- CC_SLAVE_ENDPOINT NAME kasutajakaardi _#. Json jaoks (# on orja aadress)
Nagu varem mainitud, on muutujaid, mis asendatakse väärtused käitusajal:
- mqtt_seadme_nimi
- wifi_ssid
- local_ip
user_card_base.json
Näide:
kasutaja_kaart _#. json
Näide:
8. samm: VIDEOD
Soovitan:
ESP32 Smart Home Hub: 11 sammu
ESP32 Smart Home Hub: süsteemi loomine, mis suudab töödelda suurel hulgal anduriandmeid, omada mitut väljundit ja ühendada Interneti või kohaliku võrguga, võtab palju aega ja suuri jõupingutusi. Liiga sageli inimesed, kes soovivad luua oma nutika koduvõrgu
MITME ANTURI ÜHENDAMINE RASPBERRY PI -ga: 6 sammu (koos piltidega)
MITME ANTURI ÜHENDAMINE VAARIKA PI -ga: Selles projektis ühendame kolm Atlas Scientificu EZO andurit (pH, lahustunud hapnik ja temperatuur) Raspberry Pi 3B+-ga. Ahelate Raspberry Pi ühendamise asemel kasutame Whitebox Labsi kombitsat T3. T
IoT-HUB-Live integratsioon (ESP 8266, Arduino): 11 sammu
IoT-HUB-Live integratsioon (ESP 8266, Arduino): kui teil on IoT-seadmeid ja vajate mõõtmiste salvestamiseks pilveteenust
Tehke oma Afero Hub Raspberry Pi abil: 6 sammu
Tehke oma Afero Hub Raspberry Pi abil: Hei kõik! Oleme postitanud paar juhendit, mis näitavad, kui lihtne on kasutada meie Afero Modulo-1 tahvlit oma seadmete ühendamiseks pilvega, et muuta need traadita juurdepääsetavaks ja juhtmevabalt juhitavaks ja on võimeline teiste seadmetega rääkima
Sony Ericssoni USB HUB: 7 sammu
Sony Ericssoni USB HUB: looge oma telefoni jaoks USB -jaotur