Cuprins:

IOT123 - ASIMILAȚI REȚEAUA IOT: 26 de pași
IOT123 - ASIMILAȚI REȚEAUA IOT: 26 de pași

Video: IOT123 - ASIMILAȚI REȚEAUA IOT: 26 de pași

Video: IOT123 - ASIMILAȚI REȚEAUA IOT: 26 de pași
Video: IOT123 - BYKO LIVE RIDE 2024, Iulie
Anonim
IOT123 - ASIMILAȚI REȚEAUA IOT
IOT123 - ASIMILAȚI REȚEAUA IOT

REȚEAUA ASSIMILATE IOT este un set de protocoale care permit integrarea ușoară a senzorilor, actorilor, nodurilor de lucru și a brokerilor locali cu lumea exterioară.

Acest instructabil este instrucțiuni pentru instrucțiuni; indexează toate diferitele proiecte și indică locul în care sunt articolele și resursele pentru fiecare proiect.

CARACTERISTICI ȘI VIZIUNE În prezent, sclavii (senzori și actori) sunt auto-conținuți și se bazează pe mesaje I2C convenționale pentru a citi proprietăți sau pentru a acționa pe comenzi. Maestrul preia metadatele și proprietățile de la sclavi și le trimite unui broker MQTT. De asemenea, pornește un server web și servește fișiere JSON care pot fi editate pentru a configura masterul și a personaliza metadatele / proprietățile consumate în cele din urmă de Crouton. Senzorii / actorii individuali sunt citiți / comandați prin Crouton fără ca maestrul să aibă cunoștințe prealabile despre ceea ce fac sclavii.

Unul dintre obiectivele rețelei ASSIMILATE IOT este de a personaliza AssimilateCrouton astfel încât editorii de mashup deserviți de pe serverele web IOT NODE (vezi hub-urile următoare), să fie adăugați ca componenți web care vor oferi control complet asupra a ceea ce face, adică masterul nu este programat, sclavii au seturi de caracteristici de bază, dar tabloul de bord Crouton încorporează toate regulile de afaceri necesare pentru a rula treaba!

Furca Crouton este văzută ca o opțiune pentru control / configurare descentralizată a lucrurilor. În esență, orice combinație MQTT client / GUI vă poate administra lucrurile, deoarece fiecare funcție (senzori și actori) este expusă ca puncte finale MQTT.

CROUTON

Crouton. https://crouton.mybluemix.net/ Crouton este un tablou de bord care vă permite să vizualizați și să controlați dispozitivele IOT cu o configurare minimă. În esență, este cel mai ușor tablou de bord de configurat pentru orice entuziast hardware IOT care utilizează doar MQTT și JSON.

ASSIMILATE SLAVES (senzori și actori) au încorporate metadate și proprietăți pe care masterul le folosește pentru a construi pachetul json deviceInfo pe care Crouton îl folosește pentru a construi tabloul de bord. Intermediarul între ASSIMILATE NODES și Crouton este un broker MQTT care este prietenos cu websockets-urile: Mosquito este folosit pentru demo.

Întrucât ASSIMILATE MASTER (vezi hub-urile următoare) solicită proprietăți, formatează valorile răspunsului în formatul necesar pentru actualizările Crouton.

Pasul 1: ASIMILAȚI CUBUL SENSORULUI: ICOS10 CORS WEBCOMPONENTS

ASIMILAȚI SUBSENSORUL CUB: ICOS10 CORS WEBCOMPONENTS
ASIMILAȚI SUBSENSORUL CUB: ICOS10 CORS WEBCOMPONENTS

Pe dispozitiv, toate caracteristicile serverului web cu autentificare și găzduire în SPIFFS sunt încă acceptate, dar s-a acordat o atenție specială suportului CORS (Cross Origin Resource Sharing) pentru Polymer WebComponents (Crouton folosește Polymer 1.4.0).

RESURSE Instructibil, depozit

Pasul 2: ASIMILAȚI CUBUL SENZORULUI: PAGINA DE PERSONALIZARE ICOS10

ASIMILAȚI CUBUL SENZORULUI: PAGINA DE PERSONALIZARE ICOS10
ASIMILAȚI CUBUL SENZORULUI: PAGINA DE PERSONALIZARE ICOS10

ASSIMILATE SENSOR / ACTOR Slaves încorporează metadate care sunt utilizate pentru vizualizările definitorii în Crouton. Această versiune adaugă un server web ESP8266 Master, servește câteva fișiere de configurare care pot fi modificate de utilizator, apoi folosește acele fișiere pentru a redefini vizualizările. Așadar, numele cardurilor de bord și majoritatea proprietăților configurabile pot fi schimbate. Acest lucru era necesar de ex. DHT11 publică proprietăți de temperatură și umiditate: dacă un site are mai multe noduri cu senzori DHT11 separați, toți nu pot fi numiți temperatură (temp. garaj, temperatură curte …). Restricția de lungime a metadatelor setată de I2C Bus (16 caractere) nu există și pot fi aplicate valori mai bogate (până la 64 de caractere).

Autentificarea de bază opțională este cofigurabilă pentru pagina web de editare, precum și o listă de excludere din autentificarea pentru alte resurse. Un comutator în partea de jos, care oprește sclavii atunci când este necesar, a fost, de asemenea, dezvoltat pe o placă fiică existentă. Ca o notă tehnică, înainte de a începe această construcție, amprenta de memorie a fost de 70% din cauza unui grafic global de obiecte de metadate. Cea mai recentă bibliotecă AssimilateBus a avut modificări de rupere care decuplează variabila globală în fișiere JSON mai mici salvate în SPIFFS. Acest lucru a readus amprenta la ~ 50%, ceea ce este mai sigur pentru toate analiza / construirea JSON. Biblioteca AssimilateBusSlave rămâne aceeași (ASSIM_VERSION 2) pe parcursul acestor modificări.

RESURSE

Instruibil, depozit

Pasul 3: ASIMILAȚI CUBUL SENSORULUI: ICOS10 CROUTON RESET NODE

ASIMILAȚI CUBUL SENZORULUI: ICOS10 CROUTON RESET NODE
ASIMILAȚI CUBUL SENZORULUI: ICOS10 CROUTON RESET NODE

Acesta este predecesorul versiunii de personalizare Webserver. Încă are integrare Crouton.

Această versiune trimite dispozitivul Info cerut de Crouton către brokerul MQTT, pentru a bootstrap tablourile de bord automate. ASSIM_VERSION trebuie să fie 2 pentru AssimilateBusSlaves (actori și senzori). ANTERIORUL DE CASĂ anterior a fost modificat ușor, șina D0 înlocuind șina D6 neutilizată. A fost adăugată o nouă placă fiică care permite resetarea hardware-ului, trezirea în anumite condiții și în viitor va fi utilizată pentru comutatorul de alimentare cu partea de jos (pentru controlul puterii sclavilor).

RESURSE

Instrucționabil, depozit

Pasul 4: ASIMILAȚI CUBUL SENZORULUI: ICOS10 3V3 MQTT NODE

ASIMILAȚI SUB SENZOR: ICOS10 3V3 MQTT NODE
ASIMILAȚI SUB SENZOR: ICOS10 3V3 MQTT NODE

Aceasta este prima dintr-o varietate de combinații MCU / Feature din hub-urile ASSIMILATE SENSOR: masterii care colectează depozitele de date de la sclavii I2C ASSIMILATE SENSORS.

Această versiune folosește un Wemos D1 Mini, pentru a publica orice date aruncate de la ASSIMILATE SENSORS pe un server MQTT. Furnizează senzorilor o magistrală 3V3 I2C. O șină de 5V este încă furnizată, dar nu există un convertor de nivel logic pentru 5V I2C și este posibil să nu funcționeze așa cum se dorește. Acest lucru va fi livrat într-o viitoare înlocuire a plăcii fiice pentru cea prezentată aici.

RESURSE Instructibil, depozit

Pasul 5: ASIMILAȚI CUBUL SENZORULUI: ASAMBLARE ICOS10 GENERIC SHELL (IDC)

ASIMILAȚI SUB SENZOR: ASAMBLARE ICOS10 GENERIC SHELL (IDC)
ASIMILAȚI SUB SENZOR: ASAMBLARE ICOS10 GENERIC SHELL (IDC)

Aceasta este o versiune îmbunătățită (rezistența circuitului) a ansamblului ASIMILATE SENSOR HUB: ansamblu ICOS10 GENERIC SHELL (HOOKUP WIRE). Se asamblează mai repede și are un circuit de calitate superioară, dar costă mai mult (~ 10 USD în plus dacă suportă 10 senzori). Principala caracteristică este că acum este foarte modulară: panourile și cablurile pot fi înlocuite / personalizate fără a fi necesară dezlipirea / lipirea.

RESURSE Piese 3D structurabile

Pasul 6: IOT123 - ASIMILAȚI CUBUL SENZORULUI: ASAMBLAREA CUTIEI GENERICE ICOS10 (Sârmă de conectare)

IOT123 - ASIMILAȚI CUBUL SENZORULUI: ASAMBLĂ COSIERE GENERICE ICOS10 (Sârmă de conectare)
IOT123 - ASIMILAȚI CUBUL SENZORULUI: ASAMBLĂ COSIERE GENERICE ICOS10 (Sârmă de conectare)

Acesta este ansamblul original Shell. Utilizați cel IDC de mai sus.

RESURSE Piese 3D structurabile

Pasul 7: I2C MAX9812 BRICK

I2C MAX9812 BRICK
I2C MAX9812 BRICK
I2C MAX9812 BRICK
I2C MAX9812 BRICK

Acesta este circuitul care este utilizat de următorul ASSIMILATE SERSOR.

Acest I2C MAX9812 BRICK aruncă 3 proprietăți de detectare a sunetului:

  • audMin (0-1023) - cea mai mică valoare din fereastra eșantionului de 50ms (20Hz)
  • audMax (0-1023) - cea mai mare valoare din fereastra eșantionului de 50ms (20Hz)
  • audDiff (0-50) - o valoare derivată din diferența aMin și aMax

RESURSE

Instruibil, depozit

Pasul 8: ASIMILAȚI SENZORUL: MAX9812

ASIMILAȚI SENZORUL: MAX9812
ASIMILAȚI SENZORUL: MAX9812
ASIMILAȚI SENZORUL: MAX9812
ASIMILAȚI SENZORUL: MAX9812

Această versiune se bazează pe I2C MAX9812 BRICK.

Dacă aveți nevoie de câștig reglabil, vă recomand să schimbați acest senzor pe MAX4466.

Acest ASSIMILATE SENSOR aruncă 3 proprietăți:

  1. audMin (0-1023) - cea mai mică valoare din fereastra eșantionului de 50ms (20Hz)
  2. audMax (0-1023) - cea mai mare valoare din fereastra eșantionului de 50ms (20Hz)
  3. audDiff (0-50) - o valoare derivată din diferența aMin și aMax

RESURSE

Piese instructabile, depozitare, 3D

Pasul 9: CĂRĂCIE I2C HEATBAT

CĂRĂCIĂ DE BĂTĂTĂ INIMĂ I2C
CĂRĂCIĂ DE BĂTĂTĂ INIMĂ I2C
CĂRĂCIĂ DE BĂTĂTĂ INIMĂ I2C
CĂRĂCIĂ DE BĂTĂTĂ INIMĂ I2C

Acesta este circuitul care este utilizat de următorul ASSIMILATE SERSOR.

Această cărămidă I2C HEARTBEAT indică dacă sclavul ATTINY este în viață, de asemenea traficul I2C și are o proprietate:

STARE ("VIE")

RESURSE

Instruibil, depozit

Pasul 10: ASIMILAȚI ACTORUL: HEATBAT

ASIMILAȚI ACTORUL: INIMEA
ASIMILAȚI ACTORUL: INIMEA
ASIMILAȚI ACTORUL: INIMEA
ASIMILAȚI ACTORUL: INIMEA

Această construcție se bazează pe caramida I2C HEARTBEAT.

Acest ASSIMILATE ACTOR are o proprietate:

STARE ("VIE")

PB1 (fir alb, LED albastru) indică starea de sănătate ATTINY.

PB3 (fir galben, LED verde) comută cu solicitările I2C de la master.

PB4 (fir portocaliu, LED roșu) comută cu I2C primind de la master.

RESURSE

Instrucțiuni, depozitare, piese 3D

Pasul 11: CĂRĂCIĂ RELAY I2C 2CH

I2C 2CH CARELE RELAY
I2C 2CH CARELE RELAY
I2C 2CH CARELE RELAY
I2C 2CH CARELE RELAY

Acesta este circuitul nu este potrivit ca ACTOR ASIMILAT standard. Poate fi mai potrivit pentru șinele PCB I2C.

Acest I2C 2CH RELAY BRICK extinde funcționalitatea I2C KY019 BRICK și are două proprietăți de citire / scriere:

  • RELAJE 2CH [0] (adevărat / fals).
  • RELAJE 2CH [1] (adevărat / fals).

RESURSE

Instruibil, depozit

Pasul 12: I2C KY019 BRICK

I2C KY019 BRICK
I2C KY019 BRICK
I2C KY019 BRICK
I2C KY019 BRICK

Acesta este circuitul utilizat de următorul ASSIMILATE ACTOR.

Acest I2C KY019 BRICK este primul dintre ACTORI și are o proprietate de citire / scriere:

Comutator (adevărat / fals)

RESURSE

Instruibil, depozit

Pasul 13: ASIMILAȚI ACTORUL: KY019

ACTOR ASIMILAT: KY019
ACTOR ASIMILAT: KY019
ACTOR ASIMILAT: KY019
ACTOR ASIMILAT: KY019

Această construcție se bazează pe I2C KY019 BRICK.

Dacă aveți nevoie de 2 canale, vă recomand să înlocuiți acest actor cu 2CH RELAY BRICK.

Acest ASSIMILATE ACTORS și are o proprietate de citire / scriere:

Comutare (adevărat / fals)

RESURSE

Piese instructabile, depozitare, 3D

Pasul 14: I2C TEMT6000 BRICK

I2C TEMT6000 BRICK
I2C TEMT6000 BRICK
I2C TEMT6000 BRICK
I2C TEMT6000 BRICK

Acesta este circuitul care este utilizat de următorul ASSIMILATE ACTOR.

Acest I2C TEMT6000 BRICK aruncă 3 proprietăți:

  • Iluminare ambientală (Lux)
  • Iluminare ambientală (unități Candel pentru picioare)
  • Iradiere ambientală (Watt per metru pătrat).

RESURSE

Instrucționabil, depozit

Pasul 15: ASIMILAȚI SENZORUL: TEMT6000

ASIMILAȚI SENZORUL: TEMT6000
ASIMILAȚI SENZORUL: TEMT6000
ASIMILAȚI SENZORUL: TEMT6000
ASIMILAȚI SENZORUL: TEMT6000

Această construcție se bazează pe I2C TEMT6000 BRICK.

Acest ASSIMILATE SENSOR aruncă 3 proprietăți:

  • Iluminare ambientală (Lux)
  • Iluminarea ambientală (unități Candel pentru picioare)
  • Iradiere ambientală (Watt per metru pătrat).

RESURSE

Piese instructabile, depozitare, 3D

Pasul 16: I2C MQ2 BRICK

I2C MQ2 BRICK
I2C MQ2 BRICK
I2C MQ2 BRICK
I2C MQ2 BRICK

Acesta este circuitul utilizat de următorul ASSIMILATE ACTOR.

Acest I2C MQ2 BRICK aruncă 3 proprietăți:

  • GPL (Părți pe milion)
  • CO (PPM)
  • FUM (PPM).

RESURSE

Instruibil, depozit

Pasul 17: ASIMILAȚI SENZORUL: MQ2

ASIMILAȚI SENZORUL: MQ2
ASIMILAȚI SENZORUL: MQ2
ASIMILAȚI SENZORUL: MQ2
ASIMILAȚI SENZORUL: MQ2

Această construcție se bazează pe I2C MQ2 BRICK.

Acest ASSIMILATE SENSOR aruncă 3 proprietăți:

  • GPL (Părți pe milion)
  • CO (PPM)
  • FUM (PPM).

RESURSE

Instrucțiuni, depozitare, piese 3D

Pasul 18: I2C DHT11 BRICK

I2C DHT11 BRICK
I2C DHT11 BRICK
I2C DHT11 BRICK
I2C DHT11 BRICK

Acesta este circuitul care este utilizat de următorul ASSIMILATE ACTOR.

Acest I2C DHT11 BRICK aruncă 5 proprietăți:

  • Umiditate (%)
  • Temperatura (C)
  • Temperatura (F)
  • Temperatura (K)
  • Punct de rouă (C).

RESURSE

Instruibil, depozit

Pasul 19: ASIMILAȚI SENZORUL: DHT11

ASIMILAȚI SENZORUL: DHT11
ASIMILAȚI SENZORUL: DHT11
ASIMILAȚI SENZORUL: DHT11
ASIMILAȚI SENZORUL: DHT11

Această construcție se bazează pe I2C MQ2 BRICK.

Acest ASSIMILATE SENSOR descarcă 5 proprietăți:

  • Umiditate (%)
  • Temperatura (C)
  • Temperatura (F)
  • Temperatura (K)
  • Punct de rouă (C).

RESURSE

Instrucțiuni, depozitare, piese 3D

Pasul 20: RAILURI PCB I2C

SINURI PCB I2C
SINURI PCB I2C

Acolo unde nu sunt necesare carcase durabile, SENZORII ȘI ACTORII DE REȚEAȚĂ ASSIMILATE IOT se pot stiva mai eficient și cu mai puține resurse și efort, direct pe șine minimaliste. Cilindrii de fixare pot fi folosiți (așa cum se arată în această construcție) sau cărămizile subiacente pot fi conectate direct.

RESURSE Instructibil

Pasul 21: SCLAV DE PROTOTIPARE CU CARĂRI I2C

SCLAV DE PROTOTIPARE CU CARĂRI I2C
SCLAV DE PROTOTIPARE CU CARĂRI I2C
SCLAV DE PROTOTIPARE CU CARĂRI I2C
SCLAV DE PROTOTIPARE CU CARĂRI I2C

În timp ce dezvoltam cel mai recent ACTIM ASSIMILATE (KY-019 RELAY), o placă de generare generică a fost aruncată împreună pentru a-mi economisi niște lucruri suplimentare la biroul meu.

Are pinouturile standard ale I2C IOT123 BRICK, dar permite conexiuni personalizate la senzor de la ATTINY85.

ATTINY85 este detașabil prin soclul DIL. Liniile I2C sunt cablate. Orice altceva este conectabil. Funcționează foarte bine cu I2C BRICK MASTER JIG.

RESURSE Instructibil

Pasul 22: I2C BRICK MASTER JIG

I2C JIG BAD MASTER
I2C JIG BAD MASTER

În timpul dezvoltării SENZORILOR ȘI ACTORILOR ASIMILAȚI, păstrez un UNO la îndemână pentru trimiterea de comenzi adhoc I2C către prototipurile în curs de dezvoltare.

Unul dintre beneficiile modelului I2C BRICKS îl reprezintă pinouturile standardizate. În loc să folosiți de fiecare dată fire de panou (vezi Fritzings), se folosește un scut lo-tech robust.

RESURSE Instructibil

Pasul 23: TESTATOR DE CABLURI IDC (6 SIRURI)

TESTATOR DE CABLURI IDC (6 SIRURI)
TESTATOR DE CABLURI IDC (6 SIRURI)

În dezvoltarea ICOS10 ASSIMILATE SENSOR HUB, a trebuit să verific cablurile pe care le creez. Verificarea a fost pentru a verifica continuitatea între prize și izolarea între fire. Designul pe care l-am creat a folosit comutatoare DIP pentru a schimba între testele de continuitate și testele de izolare. Deoarece mă aștept să am o placă diferită pentru fiecare test (comutatoarele DIP nu sunt construite pentru utilizare constantă), cele două circuite pot fi cablate fără a fi nevoie de comutatoare DIP, RESURSE Instructibil

Pasul 24: TESTER CIRCUIT ICOS PANEL

TESTER CIRCUIT ICOS PANEL
TESTER CIRCUIT ICOS PANEL
TESTER CIRCUIT ICOS PANEL
TESTER CIRCUIT ICOS PANEL

În dezvoltarea ICOS10 ASSIMILATE SENSOR HUB, a trebuit să verific circuitele panoului așa cum au fost realizate. De asemenea, pe măsură ce știfturile erau lipite pe antetele 3P, am vrut să se introducă în ele știfturi 3P pentru a opri orice deformare în timpul lipirii. De asemenea, cheia acestui design: dezvoltasem deja un tester de circuit pentru cablurile IDC cu 6 fire.

RESURSE Instructibil

Pasul 25: JIG DE PROGRAMARE ABORDAT ATTINY85

JIG DE PROGRAMARE ABORDAT ATTINY85
JIG DE PROGRAMARE ABORDAT ATTINY85

Pe proiectele BRICK, am menționat că orificiile adiacente ATTINY85 au fost lăsate neutilizate, pentru a permite un programator pogo pin în timp ce DIP8 este lipit pe PCB. Acesta este acel programator pogo pin. Acesta este cu adevărat doar un cablu adaptor de la o priză DIP8 DIL a unui programator existent la jigul pogo de 6 x 4 găuri de distanțare pentru a fi utilizat pe PCB.

RESURSE Instructibil

Pasul 26: VIDEO

Recomandat: