Sadržaj:

IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE: 11 koraka
IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE: 11 koraka

Video: IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE: 11 koraka

Video: IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE: 11 koraka
Video: IOT123 - BYKO LIVE RIDE 2024, Srpanj
Anonim
IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE
IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE
IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE
IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE
IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE
IOT123 - Čvorište asimiliranih senzora: ICOS10 WEBSEREV ZA PRILAGOĐAVANJE

Podređeni senzor za asimilaciju/glumac ugrađuju metapodatke koji se koriste za definiranje vizualizacija u Croutonu. Ova gradnja dodaje web poslužitelj u ESP8266 Master, služi nekim konfiguracijskim datotekama koje korisnik može izmijeniti, a zatim koristi te datoteke za redefiniranje vizualizacija. Tako se nazivi kartica nadzorne ploče i većina konfigurabilnih svojstava mogu promijeniti. To je bilo potrebno npr. DHT11 objavljuje svojstva temperature i vlažnosti: ako web mjesto ima nekoliko čvorova s zasebnim DHT11 osjetnicima, svi se ne mogu nazvati temperaturom (temperatura garaže, temperatura dvorišta …). Ograničenje duljine metapodataka koje postavlja I2C sabirnica (16 znakova) ne postoji i mogu se primijeniti bogatije vrijednosti (do 64 znaka).

Izborna osnovna provjera autentičnosti može se konfigurirati za uređivanje web stranice, kao i popis izuzimanja iz provjere autentičnosti za druge resurse.

Prekidač s niske strane koji isključuje robove kad je potrebno, također je razvijen na postojećoj kćeri.

Kao tehnička napomena, prije početka ove gradnje memorijski otisak bio je 70% zbog globalnog grafikona objekata metapodataka. Najnovija knjižnica AssimilateBus imala je velike promjene koje razdvajaju globalnu varijablu na manje JSON datoteke spremljene u SPIFFS. Ovo je vratilo otisak na ~ 50%, što je sigurnije za cijelu JSON -ovu raščlanjivanje/izgradnju. Knjižnica AssimilateBusSlave ostaje ista (ASSIM_VERSION 2) tijekom ovih promjena.

OSOBINE I VIZIJA

Trenutno su Slaveovi (senzori i akteri) samostalni i oslanjaju se na I2C poruke temeljene na konvencijama za čitanje svojstava ili radnju po naredbama. Master preuzima metapodatke i svojstva od robova i šalje ih posredniku MQTT. Također pokreće web poslužitelj i služi JSON datotekama koje se mogu uređivati za konfiguriranje glavnog i prilagođavanje metapodataka/svojstava koje na kraju potroši Crouton. Pojedini senzori/glumci čitaju se/zapovijedaju preko Croutona bez da gospodar ima predznanje o tome što robovi rade.

Jedan od ciljeva ASSIMILATE IOT MREŽE je prilagoditi Croutona tako da se uređivači mashupa koji se poslužuju s IOT NODE web poslužitelja (poput ove gradnje) dodaju kao web komponente koje će dati potpunu kontrolu nad onim što stvar radi, tj. Master nije programiran, robovi imaju osnovne skupove značajki, ali nadzorna ploča Crouton ugrađuje sva poslovna pravila potrebna za pokretanje!

Vilica Crouton smatra se opcijom za decentraliziranu kontrolu/konfiguraciju stvari. U biti, bilo koji MQTT klijent/GUI kombinacija može upravljati vašim stvarima, jer su sve funkcije (senzori i akteri) izložene kao MQTT krajnje točke.

Korak 1: Crouton

Kockica prepečenog kruha
Kockica prepečenog kruha
Kockica prepečenog kruha
Kockica prepečenog kruha

Kockica prepečenog kruha. https://crouton.mybluemix.net/ Crouton je nadzorna ploča koja vam omogućuje vizualizaciju i upravljanje vašim IOT uređajima uz minimalno postavljanje. U biti, to je najjednostavnija nadzorna ploča za postavljanje za svakog ljubitelja IOT hardvera koji koristi samo MQTT i JSON.

ASIMILIRAJUĆI SLOVENI (senzori i glumci) imaju ugrađene metapodatke i svojstva koja master koristi za izgradnju paketa deviceInfo json koji Crouton koristi za izradu nadzorne ploče. Posrednik između ASSIMILATE NODES -a i Croutona je MQTT posrednik koji je prilagođen web -utičnicama: Mosquito se koristi za demonstraciju.

Kako ASSIMILATE MASTER (ova gradnja) zahtijeva svojstva, formatira vrijednosti odgovora u potrebnom formatu za Croutonova ažuriranja.

Korak 2: Web poslužitelj / urednik

Web poslužitelj / urednik
Web poslužitelj / urednik
Web poslužitelj / urednik
Web poslužitelj / urednik

Kako se Master podiže (ova verzija), pokreće se ugrađeni web poslužitelj. IP adresa se šalje na serijsku konzolu; na kraju će ovo biti objavljeno na nadzornoj ploči Croutona.

Kad pregledate navedeni URL, učitat će se ACE EDITOR:

Ace je uređivač koda koji se može ugraditi napisan u JavaScriptu. Podudara se sa značajkama i performansama izvornih urednika kao što su Sublime, Vim i TextMate.

Ace je popularan kod ugrađenih web poslužitelja i daje dobro sučelje za uređivanje i spremanje JSON datoteka.

Klikom na naziv datoteke s lijeve strane datoteka će se pročitati iz SPIFFS -a na ESP8266, a sadržaj će se učitati za uređivanje s desne strane. Datoteka se može spremiti s gornje alatne trake.

Da biste učitali datoteku:

  1. Odaberite Datoteka iz lokalnog datotečnog sustava.
  2. Umetnite put mape (ako je potrebno) u tekstualni okvir.
  3. Pritisnite Upload.
  4. Osvježite stranicu.

Korak 3: Prilagodba uređaja

Prilagođavanje uređaja
Prilagođavanje uređaja

Na konfiguraciju uređaja (ESP8266) djeluje se putem datoteke device.json.

Neki od ovih unosa (wifi_ssid, wifi_key) morat će se izmijeniti prije nego što postavite podatke na SPIFFS (ESP8266 Sketch Data Upload).

Potražite korijen web poslužitelja (prikazano u izlazu konzole poput

UREĐIVANJE

U ACE EDITOR -u odaberite config/device.json.

Unosi su:

  • www_auth_username: korisničko ime za autorizaciju za datoteke web poslužitelja (prazno za neovlaštenu upotrebu).
  • www_auth_password: autorizacijska lozinka za datoteke web poslužitelja (ako je definirano korisničko ime).
  • www_auth_exclude_files: popis staza datoteka razdvojenih točkom i zarezom isključuje iz provjera autorizacije (ako je definirano korisničko ime).
  • sensor_interval: milisekunde između objavljivanja podataka posredniku MQTT.
  • ntp_server_name: naziv vremenskog poslužitelja za korištenje.
  • time_zone: pomak u satima za vaše lokalno vrijeme.
  • wifi_ssid: SSID vaše lokalne pristupne točke.
  • wifi_key: ključ za korištenje SSID -a.
  • mqtt_broker: adresa posrednika MQTT.
  • mqtt_username: korisničko ime koje se koristi za brokera MQTT (prazno jer nije potreban račun).
  • mqtt_password: lozinka za korištenje od korisničkog imena MQTT.
  • mqtt_port: port posrednika MQTT.
  • mqtt_device_name: naziv koji se koristi za MQTT teme i Croutonovu identifikaciju.
  • mqtt_device_description: opis uređaja opisanog u Croutonu.
  • viz_color: boja za identifikaciju kartica uređaja u Croutonu (u rastavljenoj verziji)

Korak 4: Prilagodba nekretnine

Prilagodba nekretnine
Prilagodba nekretnine
Prilagodba nekretnine
Prilagodba nekretnine
Prilagodba nekretnine
Prilagodba nekretnine

Svaki od Slaveova ima niz nvc struktura definiran u datoteci definitions.h:

// --------------------------------------- OBJAVLJENA SVOJSTVA

nvc rekviziti [2] = {{"Vlažnost", "", istina}, {"Temperatura", "", lažno}}; // --------------------------------------- KRAJ OBJAVLJENIH NEKRETNINA

Svaki od unosa ima indeks, a prvi je 0 (nula).

Prilagođavanje naziva svojstva vrši se putem datoteke user_props.json.

Potražite korijen web poslužitelja (prikazano u izlazu konzole poput

UREĐIVANJE

U ACE EDITOR -u odaberite config/user_props.json (ili ga prenesite).

Struktura je:

Prvi ključ je adresa podređenog računa u datoteci definitions.h koju su identificirali:

#define ADDRESS_SLAVE XX

  • Sljedeća razina ključeva je Indeks svojstva.
  • Vrijednost tog ključa je naziv svojstva koje će se koristiti u Croutonu umjesto naziva svojstva definiranog u datoteci definicija.

Korak 5: Prilagođavanje metapodataka

Prilagođavanje metapodataka
Prilagođavanje metapodataka
Prilagođavanje metapodataka
Prilagođavanje metapodataka
Prilagođavanje metapodataka
Prilagođavanje metapodataka
Prilagođavanje metapodataka
Prilagođavanje metapodataka

Zbog količine mogućih prilagodbi, svaki slave ima svoju datoteku za izmjenu metapodataka. Datoteke moraju biti u formatu user_metas_.json.

Adresa pomoćnog računa nalazi se u datoteci definitions.h u skicama ATTINY85:

#define ADDRESS_SLAVE XX

Metapodaci su definirani u istoj datoteci ovako:

const static char viz1 PROGMEM = "VIZ_CARD_TYPE";

const static char viz2 PROGMEM = "2: grafikon-krafna"; const static char viz3 PROGMEM = "1";

Prvi redak je naziv stavke metapodataka.

Drugi redak je vrijednost. Općenito ima sufiks indeksa svojstava.

Treći redak je zastava nastavka. 1 - nastavak, 0 - kraj metapodataka (VCC_MV).

Potražite korijen web poslužitelja (prikazano u izlazu konzole poput

UREĐIVANJE

U ACE EDITOR -u odaberite config/user_metas_SLAVE_ADDRESS.json (ili ga prenesite). Struktura je:

  • Niz parova ime/vrijednost.
  • Naziv je naziv stavke metapodataka koju treba promijeniti.
  • Vrijednost je promjena. Indeksni sufiks se provjerava radi zamjene.

Korak 6: Materijali i alati

Materijali i alati
Materijali i alati
Materijali i alati
Materijali i alati
Materijali i alati
Materijali i alati

ICOS10 (IDC) Shell Bill of Materials

  1. D1M BLOK Zglobni ubod (1)
  2. D1M BLOK baza i kućište (1)
  3. Wemos D1 Mini (1)
  4. Wemos D1 Mini protoboard štit (1)
  5. Ženski zaglavlji 40P (8P, 8P, 9P, 9P)
  6. Muški zaglavlje 90º (3P, 3P, 3P, 2P, 1P, 2P)
  7. 1 "dvostrana protoboard (2)
  8. 2N7000 NFET (1)
  9. IDC zaglavlje sa 6 kontakata obavijeno IDC -om (1)
  10. Spojna žica (~ 10)
  11. 0,5 mm kalajisana žica (~ 4)
  12. 4G x 15 mm Samorezni vijci s gumbom (2)
  13. 4G x 6 mm samorezni vijci s upuštenom glavom (~ 20)
  14. Lemljenje i željezo (1)

Korak 7: Priprema MCU -a

Image
Image
Priprema MCU -a
Priprema MCU -a

U ovoj verziji koristimo Wemos D1 Mini. Ako ste već izgradili D1M WIFI BLOK, možete ga koristiti za modularnu hardversku komponentu. Ako ne, slijedite sljedeći odjeljak kao minimum.

LETLJENJE PINOVA GLAVE NA MCU (pomoću PIN JIG -a) Ako ne možete ispisati PIN JIG, samo slijedite upute i improvizirajte: visina (pomak) PIN JIG -a je 6,5 mm.

  1. Ispišite/nabavite PIN JIG s ove stranice.
  2. Igle zaglavlja provucite kroz dno ploče (TX desno-lijevo) i u ubodnu lemilicu.
  3. Igle pritisnite prema dolje na tvrdu ravnu površinu.
  4. Čvrsto pritisnite ploču prema dolje.
  5. Lemite 4 kutna klina.
  6. Ponovno zagrijte i po potrebi postavite ploču/igle (ploča ili igle nisu poravnate ili okomite).
  7. Lemite ostale igle.

UČITAJUĆI FIRMER

Spremište koda možete pronaći ovdje (snimak).

ZIP biblioteke možete pronaći ovdje (snimak).

Upute za "Uvoz ZIP knjižnice" ovdje.

Nakon što je knjižnica instalirana, možete otvoriti primjer "mqtt_crouton_esp8266_customization_webserver".

Upute za postavljanje Arduina za Wemos D1 Mini ovdje.

Ovisnosti: ArduinoJson, TimeLib, PubSubClient, NeoTimer (pogledajte privitke ako se krše promjene u spremištima).

UČITAJ U SPIFFOVE

Nakon što se kôd učita u Arduino IDE, otvorite device.json u mapi data/config:

  1. Izmijenite vrijednost wifi_ssid sa svojim WiFi SSID -om.
  2. Izmijenite vrijednost wifi_key ključem za WiFi.
  3. Izmijenite vrijednost mqtt_device_name sa željenom identifikacijom uređaja (spajanje nije potrebno).
  4. Izmijenite vrijednost mqtt_device_description sa svojim željenim opisom uređaja (u Croutonu).
  5. Spremi uređaj.json.
  6. Prenesite podatkovne datoteke u SPIFFS.

Korak 8: Priprema stambenog prostora MCU

Image
Image
MCU Priprema stambenog prostora
MCU Priprema stambenog prostora
MCU Priprema stambenog prostora
MCU Priprema stambenog prostora

MCU kućište otkriva zaglavlja za D1 Mini u koje se može priključiti i zaglavlja za pomoćne ploče koje komuniciraju sa utičnicom (senzori i glumci).

KUĆIŠNE GLAVE Ovo se temelji na D1 Mini Protoboard -u i razbija ove pinove:

  1. Igle za D1M WIFI BLOCK/D1 Mini za spajanje.
  2. Izravni prekidi 2 reda kontakata iz D1M WIFI BLOCK/D1 Mini. Oni su dostupni samo radi praktičnosti tijekom izrade prototipa. Očekuje se da će pomoćne ploče blokirati sav pristup tim zaglavljima.
  3. 4 Razbijanja posebnih pinova koje koriste pomoćne ploče.

Za dodavanje kontakata D1M u GLAVNU KUĆU:

  1. Pogledajte VIDEO VOĐENJE KORIŠĆENJA UTIČNICE.
  2. Igle zaglavlja provucite kroz dno ploče (TX gore-lijevo na gornjoj strani).
  3. Umetnite ubod preko plastične glave i poravnajte obje površine.
  4. Okrenite sklopku i sklop i čvrsto pritisnite glavu na tvrdu ravnu površinu.
  5. Čvrsto pritisnite ploču prema dolje.
  6. Lemite 4 kutna zatiča minimalnim lemljenjem (samo privremeno poravnavanje pinova).
  7. Ponovno zagrijte i po potrebi postavite ploču/igle (ploča ili igle nisu poravnate ili okomite).
  8. Lemite ostale igle.
  9. Uklonite šablon.
  10. Odrežite igle iznad lemljenja.

Da biste dodali prekide na kćeri:

  1. Odrežite 4 ženska zaglavlja 9P.
  2. Na vrhu umetnite 9P zaglavlja kao što je prikazano, a lemite na dnu.

Da biste dodali izravne prekide:

  1. Odrežite 2 ženska zaglavlja 8P.
  2. Na vrhu umetnite 8P zaglavlja kao što je prikazano, a na dnu ih lemite.

Za spajanje zaglavlja, na dnu s TX iglom usmjerenom prema gore:

  1. Praćenje i lemljenje s RST pina preko 4 pina.
  2. Praćenje i lemljenje od A0 pina preko 4 igle.
  3. Praćenje i lemljenje od D1 pina preko 4 igle.
  4. Praćenje i lemljenje s D2 pina preko 4 igle.
  5. Praćenje i lemljenje od D0 igle prema dolje 2 reda i preko 4 igle.
  6. Praćenje i lemljenje s D7 pina preko 4 igle.
  7. Praćenje i lemljenje od GND pina preko 4 pina.
  8. Praćenje i lemljenje od 5V pina preko 4 pina.
  9. Praćenje i lemljenje od 3V3 igle prema dolje za 45 ° kroz 4 igle.

MONTAŽA STAVKE

GLAVE KUĆIŠTA pričvršćene su na MCU KUĆIŠTE, a ovo je pričvršćeno na PODLOGU.

  1. S dugom stranom GLAVA KUĆIŠTA usmjerenom prema rupi, umetnite D1M CONTACTS u otvore u MCU KUĆIŠTU i gurnite prema dolje.
  2. Umetnite MCU na MCU CONTACTS tijekom postavljanja kako biste osigurali ispravno poravnanje.
  3. OGRADU GLAVE postavite na vrh sklopova i pričvrstite 2 vijka 4G x 16 mm.
  4. Postavite montirana tijela s rupom usmjerenom prema kratkoj strani i pričvrstite vijcima 4G x 6 mm.

Korak 9: Izgradnja Slaves prekidača s niske strane/RESET kćeri

Izgradnja Slaves prekidača s niske strane/RESET kćeri
Izgradnja Slaves prekidača s niske strane/RESET kćeri
Izgradnja Slaves prekidača s niske strane/RESET kćeri
Izgradnja Slaves prekidača s niske strane/RESET kćeri
Izgradnja Slaves prekidača s niske strane/RESET kćeri
Izgradnja Slaves prekidača s niske strane/RESET kćeri

Ovo je poboljšanje REST pomoćne ploče razvijene posljednje verzije. Ovo dodaje prekidač na niskoj strani koji povezuje podređene uređaje na UZEMLJENJE. Ako se master resetira, i slave će se pokrenuti, a inicijalizacija koja širi metapodatke ponovno će započeti.

SKUPŠTINA

  1. S unutarnje strane umetnite muške zaglavlje 9P 90 ° (1), 1P 90 ° muški zaglavlje (2), 2N7000 (3) i lemite s vanjske strane.
  2. S unutarnje strane, ucrtajte žutu žicu od ŽUTE1 do ŽUTE2 i lemite.
  3. S unutarnje strane ocrtajte golu žicu od SREBRA1 do SREBRO2 i lemite.
  4. S unutarnje strane, ocrtajte golu žicu od SREBRNOG3 do SREBRNOG4 i lemite.

Korak 10: Sastavljanje glavnih komponenti

Sastavljanje glavnih komponenti
Sastavljanje glavnih komponenti
Sastavljanje glavnih komponenti
Sastavljanje glavnih komponenti
Sastavljanje glavnih komponenti
Sastavljanje glavnih komponenti
Sastavljanje glavnih komponenti
Sastavljanje glavnih komponenti
  1. Uvjerite se da je školjka izgrađena i krug testiran (kabel i utičnice).
  2. Zamijenite 2P muško zaglavlje na 3V3 I2C KUĆNOJ PLOČI s 2P 90º 1P muškim zaglavljem.
  3. Umetnite 3V3 I2C KUĆU, s 3V3 iglom na otrcanom kraju zaglavlja (vidi sliku).
  4. Umetnite KUĆU PLOČU ZA NISKU STRANICU/RESETIRANJE, sa žicom prema unutra (vidi sliku).
  5. Ucrtajte Dupont provodnik između 90 ° 1P muškog zaglavlja na RESET DAUGHTER-BOARD-u do 3V3 I2C DAUGHTER-BOARD-a.
  6. Umetnite IDC utičnicu iz LUČKOG KABLA u IDC zaglavlje na 3V3 I2C KUĆI.
  7. Pažljivo umetnite KUĆNE PLOČE/KUĆIŠTE između kabela u ŠKOLICI i poravnajte rupe za podnožje.
  8. Pričvrstite OSNOVNI SKLOP na ŠKOLICU vijcima 4G x 6 mm.
  9. Priložite sve ASIMILIRANE SENZORE koje ste napravili.

Korak 11: Sljedeći koraci

Image
Image
Sljedeći koraci
Sljedeći koraci
Sljedeći koraci
Sljedeći koraci
  1. Usmjerite svoj preglednik na
  2. Provjerite je li posrednik test.mosquitto.org.
  3. Pritisnite Connect.
  4. Unesite unos naziva uređaja kao mqtt_device_name u datoteci /config/device.json.
  5. Pritisnite Dodaj uređaj.
  6. Kliknite Automatsko povezivanje.
  7. Uključite svoj ICOS10 (5V MicroUSB).
  8. Provjerite putem Croutonove nadzorne ploče.

Preporučeni: