Tartalomjegyzék:

IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREV: 11 lépés
IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREV: 11 lépés

Videó: IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREV: 11 lépés

Videó: IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREV: 11 lépés
Videó: IOT123 - BYKO LIVE RIDE 2024, Július
Anonim
IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREVER
IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREVER
IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREVER
IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREVER
IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREVER
IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREVER

Az ASSIMILATE SENSOR/ACTOR Slaves metaadatokat ágyaz be, amelyeket a Crouton meghatározó vizualizációihoz használnak. Ez a build hozzáad egy webszervert az ESP8266 Masterhez, kiszolgál néhány konfigurációs fájlt, amelyeket a felhasználó módosíthat, majd ezeket a fájlokat használja a vizualizációk újradefiniálásához. Így a műszerfal kártyák neve és a legtöbb konfigurálható tulajdonság megváltoztatható. Erre szükség volt pl. a DHT11 közzéteszi a hőmérséklet és a páratartalom tulajdonságait: ha egy webhelynek több csomópontja van, külön DHT11 érzékelőkkel, akkor mindegyiket nem lehet hőmérsékletnek nevezni (garázshőmérséklet, udvarhőmérséklet …). Az I2C busz által beállított metaadat -hosszkorlátozás (16 karakter) nem létezik, és gazdagabb értékeket lehet alkalmazni (legfeljebb 64 karakter).

Az opcionális alaphitelesítés konfigurálható a weboldal szerkesztéséhez, valamint kizárási lista a hitelesítésből más forrásokhoz.

Egy alacsony oldali kapcsolót, amely szükség esetén lekapcsolja a rabszolgákat, szintén kifejlesztették egy meglévő leánylapon.

Technikai megjegyzésként az építkezés megkezdése előtt a memóriaterület 70% -os volt a globális metaadat -objektumgráf miatt. A legújabb AssimilateBus könyvtárban olyan változások történtek, amelyek a globális változót szétválasztották a SPIFFS fájlba mentett kisebb JSON fájlokká. Ez visszahozta a lábnyomokat ~ 50%-ra, ami biztonságosabb az összes JSON elemzés/épület számára. Az AssimilateBusSlave könyvtár változatlan marad (ASSIM_VERSION 2) ezen változtatások során.

JELLEMZŐK ÉS LÁTÁS

Jelenleg a rabszolgák (érzékelők és szereplők) önállóak, és konvencionális I2C üzenetekre támaszkodnak a tulajdonságok olvasásához vagy a parancsok végrehajtásához. A Mester felveszi a metaadatokat és a tulajdonságokat a rabszolgáktól, és elküldi az MQTT brókernek. Elindít egy webszervert is, és kiszolgálja a JSON fájlokat, amelyek szerkeszthetők a master konfigurálásához és a Crouton által végül felhasznált metaadatok/tulajdonságok testreszabásához. Az egyes érzékelőket/szereplőket a Croutonon keresztül olvassák/vezéreljék anélkül, hogy a mesternek előzetes ismerete lenne a rabszolgák tevékenységéről.

Az ASSIMILATE IOT NETWORK egyik célja a Crouton testreszabása úgy, hogy az IOT NODE webszerverekről kiszolgált mashup szerkesztők (mint ez a build) webkomponensekként kerüljenek hozzáadásra, amelyek teljes mértékben irányítják a dolgot, azaz a master nincs programozva, a rabszolgáknak alapvető funkciókészleteik vannak, de a Crouton műszerfal minden üzleti szabályt beágyaz a dolog futtatásához!

A Crouton villát a dolgok decentralizált irányításának/konfigurálásának egyik lehetőségének tekintik. Lényegében bármely MQTT kliens/GUI kombináció kezelheti a dolgait, mivel minden funkció (érzékelők és szereplők) MQTT végpontként vannak kitéve.

1. lépés: Crouton

Crouton
Crouton
Crouton
Crouton

Crouton. A https://crouton.mybluemix.net/ A Crouton egy műszerfal, amely lehetővé teszi az IOT -eszközök megjelenítését és vezérlését minimális beállítással. Lényegében ez a legegyszerűbben beállítható műszerfal bármely IOT hardverrajongó számára, csak MQTT és JSON használatával.

Az ASSIMILATE SLAVES (érzékelők és szereplők) beágyazott metaadatokat és tulajdonságokat tartalmaz, amelyeket a mester használ az eszközInfo json csomag létrehozásához, amelyet a Crouton használ a műszerfal építéséhez. Az ASSIMILATE NODES és a Crouton közötti közvetítő egy MQTT -bróker, amely barátságos a webes aljzatokban: a szúnyogot használják a bemutatóhoz.

Mivel az ASSIMILATE MASTER (ez a build) tulajdonságokat kér, a válaszértékeket a Crouton frissítésekhez szükséges formátumban formázza.

2. lépés: A webszerver / szerkesztő

A webszerver / szerkesztő
A webszerver / szerkesztő
A webszerver / szerkesztő
A webszerver / szerkesztő

Amint a mester elindul (ez a build), beágyazott webszerver indul el. Az IP -cím a soros konzolra kerül; végül ezt közzéteszik a Crouton műszerfalon.

Amikor megkeresi a megadott URL -t, az ACE EDITOR betöltődik:

Az Ace egy JavaScript -ben írt beágyazható kódszerkesztő. Megfelel a natív szerkesztők funkcióinak és teljesítményének, mint például a Sublime, a Vim és a TextMate.

Az Ace népszerű a beágyazott webszerverek körében, és jó felületet biztosít a JSON fájlok szerkesztéséhez és mentéséhez.

A bal oldali fájlnévre kattintva az ESP8266 SPIFFS fájlja olvasható be, és a tartalom betöltésre kerül a jobb oldalon. A fájl a felső eszköztárról menthető.

Fájl feltöltése:

  1. Válassza a Fájl lehetőséget a helyi fájlrendszerből.
  2. Helyezzen be egy mappa elérési útját (ha szükséges) a szövegmezőbe.
  3. Kattintson a Feltöltés gombra.
  4. Frissítsd az oldalt.

3. lépés: Eszköz testreszabása

Eszköz testreszabása
Eszköz testreszabása

Az eszköz konfigurálása (az ESP8266) az device.json fájlon keresztül történik.

Ezen bejegyzések némelyikét (wifi_ssid, wifi_key) módosítani kell, mielőtt feltöltené az adatokat a SPIFFS rendszerbe (ESP8266 Sketch Data Upload).

Keresse meg a webszerver gyökerét (a konzol kimenetén látható, mint a

SZERKESZTÉS

Az ACE EDITOR -ban válassza a config/device.json parancsot.

A bejegyzések a következők:

  • www_auth_username: hitelesítési felhasználónév a webszerver fájlokhoz (üres a nem jogosultsághoz).
  • www_auth_password: engedélyezési jelszó webszerver fájlokhoz (ha felhasználónév van megadva).
  • www_auth_exclude_files: pontosvesszővel határolt fájlok listája, amelyeket ki kell zárni az engedélyezési ellenőrzésekből (ha felhasználónév van megadva).
  • sensor_interval: ezredmásodperc az adatok közzététele az MQTT Broker számára.
  • ntp_szerver_neve: a használni kívánt időszerver neve.
  • time_zone: a helyi idő szerinti eltolás órákban.
  • wifi_ssid: a helyi hozzáférési pont SSID -je.
  • wifi_key: az SSID azonosítóhoz használandó kulcs.
  • mqtt_broker: az MQTT bróker címe.
  • mqtt_username: az MQTT brókerhez használt felhasználónév (üres, nincs szükség fiókra).
  • mqtt_password: az MQTT felhasználónévből használandó jelszó.
  • mqtt_port: az MQTT közvetítő portja.
  • mqtt_device_name: az MQTT témákhoz és a Crouton azonosításhoz használt név.
  • mqtt_device_description: az eszköz de3 leírása a Croutonban.
  • viz_color: az eszközkártyák azonosítására szolgáló szín a Croutonban (villás változatban)

4. lépés: Tulajdonságok testreszabása

Ingatlan testreszabása
Ingatlan testreszabása
Ingatlan testreszabása
Ingatlan testreszabása
Ingatlan testreszabása
Ingatlan testreszabása

Mindegyik Slave -nek van egy nvc struktura tömbje a definíciók.h fájlban:

// --------------------------------------- NYILVÁNOS TULAJDONSÁGOK

nvc kellékek [2] = {{"Páratartalom", "", igaz}, {"Hőmérséklet", "", hamis}}; // --------------------------------------- VÉGE KÖZZÉTÉTELT TULAJDONSÁGOK

Minden bejegyzéshez tartozik egy index, az első 0 (nulla).

A tulajdonságnév testreszabása a user_props.json fájlon keresztül történik.

Keresse meg a webszerver gyökerét (a konzol kimenetén látható, mint a

SZERKESZTÉS

Az ACE EDITOR -ban válassza a config/user_props.json (vagy töltsön fel egyet).

A szerkezet a következő:

Az első kulcs a rabszolga címe a definitions.h fájlban, amelyet a következők azonosítanak:

#define ADDRESS_SLAVE XX

  • A kulcsok következő szintje a tulajdonság indexe.
  • Ennek a kulcsnak az értéke a tulajdonság neve, amelyet a Croutonban kell használni a definíciós fájlban meghatározott tulajdonságnév helyett.

5. lépés: A metaadatok testreszabása

Metaadatok testreszabása
Metaadatok testreszabása
Metaadatok testreszabása
Metaadatok testreszabása
Metaadatok testreszabása
Metaadatok testreszabása
Metaadatok testreszabása
Metaadatok testreszabása

A lehetséges testreszabások mennyisége miatt minden slave saját metaadat -módosító fájllal rendelkezik. A fájloknak user_metas_.json formátumban kell lenniük.

A szolga cím az ATTINY85 vázlatok definitions.h fájljában található:

#define ADDRESS_SLAVE XX

A metaadatok ugyanabban a fájlban vannak definiálva:

const static char viz1 PROGMEM = "VIZ_CARD_TYPE";

const static char viz2 PROGMEM = "2: chart-donut"; const static char viz3 PROGMEM = "1";

Az első sor a metaadat -elem neve.

A második sor az érték. Általában tulajdonságindex utótaggal rendelkezik.

A harmadik sor a folytatás zászló. 1 - folytatás, 0 - metaadatok vége (VCC_MV).

Keresse meg a webszerver gyökerét (a konzol kimenetén látható, mint a

SZERKESZTÉS

Az ACE EDITOR -ban válassza a config/user_metas_SLAVE_ADDRESS.json parancsot (vagy töltsön fel egyet). A szerkezet a következő:

  • Név/érték párok tömbje.
  • A név a módosítandó metaadat -elem neve.
  • Az érték a változás. Az index utótagot ellenőrzik a csere szempontjából.

6. lépés: Anyagok és eszközök

Anyagok és eszközök
Anyagok és eszközök
Anyagok és eszközök
Anyagok és eszközök
Anyagok és eszközök
Anyagok és eszközök

ICOS10 (IDC) Shell Bill of Materials

  1. D1M BLOCK Pin Jig (1)
  2. D1M BLOCK alap és ház (1)
  3. Wemos D1 Mini (1)
  4. Wemos D1 Mini Protoboard Shield (1)
  5. 40P női fejlécek (8P, 8P, 9P, 9P)
  6. Férfi fejléc 90º (3P, 3P, 3P, 2P, 1P, 2P)
  7. 1 "kétoldalas protoboard (2)
  8. 2N7000 NFET (1)
  9. 6 tűs, burkolt IDC férfi fejléc (1)
  10. Csatlakozó vezeték (~ 10)
  11. 0,5 mm -es ónozott huzal (~ 4)
  12. 4G x 15 mm -es gombfejű önmetsző csavarok (2)
  13. 4G x 6 mm önmetsző süllyesztett csavarok (~ 20)
  14. Forrasztás és vas (1)

7. lépés: MCU előkészítés

Image
Image
MCU előkészítés
MCU előkészítés

Ebben a konstrukcióban a Wemos D1 Minit használjuk. Ha korábban épített D1M WIFI BLOCK -ot, akkor ezt használhatja a moduláris hardverkomponenshez. Ha nem, akkor kövesse a következő részt.

A FEJLŐZŐ TŰZŐK FORRÁSA AZ MCU -N (a PIN JIG segítségével) Ha nem tudja kinyomtatni a PIN JIG -t, kövesse az utasításokat és improvizáljon: a PIN JIG magassága (eltolása) 6,5 mm.

  1. Nyomtasson ki/szerezzen be PIN JIG -et erről az oldalról.
  2. Vezesse a fejléc csapjait a tábla alján (TX jobb-bal) és a forrasztóberendezésbe.
  3. Nyomja le a csapokat egy lapos, kemény felületre.
  4. Nyomja le határozottan a táblát a csőre.
  5. Forrasztja a 4 sarokcsapot.
  6. Melegítse fel és helyezze vissza a táblát/csapokat, ha szükséges (a tábla vagy a csapok nincsenek egy vonalban vagy függőlegesen).
  7. Forrasztja a többi csapot.

A FIRMWARE FELTÖLTÉSE

A kódtár itt található (pillanatkép).

A könyvtár ZIP -címe itt található (pillanatkép).

Utasítások a "ZIP könyvtár importálásához" itt.

A könyvtár telepítése után megnyithatja az "mqtt_crouton_esp8266_customization_webserver" példát.

Utasítások az Arduino beállításához a Wemos D1 Mini számára itt.

Függőségek: ArduinoJson, TimeLib, PubSubClient, NeoTimer (lásd a mellékleteket, ha megszakítják a tárolók változásait).

Feltöltés SPIFF -re

Miután betöltötte a kódot az Arduino IDE -be, nyissa meg az device.json fájlt az adat/config mappában:

  1. Módosítsa a wifi_ssid értékét a WiFi SSID azonosítójával.
  2. Módosítsa a wifi_key értékét a WiFi kulccsal.
  3. Módosítsa az mqtt_device_name értékét a kívánt eszközazonosítóval (nincs szükség csatlakozásra).
  4. Módosítsa az mqtt_device_description értékét a kívánt eszközleírással (Crouton nyelven).
  5. Device.json mentése.
  6. Töltse fel az adatfájlokat a SPIFFS fájlba.

8. lépés: Az MCU ház előkészítése

Image
Image
MCU ház előkészítése
MCU ház előkészítése
MCU ház előkészítése
MCU ház előkészítése

Az MCU ház a D1 Mini fejléceit csatlakoztatja, és a leánytáblák fejléceit, amelyek kommunikálnak a Socket (érzékelők és szereplők) áramkörrel.

HÁZFEJEK Ez egy D1 Mini Protoboard -on alapul, és a következő csapokat törli ki:

  1. A D1M WIFI BLOCK/D1 Mini csapjai a csatlakoztatáshoz.
  2. A D1M WIFI BLOCK/D1 Mini 2 érintkezősorának közvetlen kitörése. Ezek csak a kényelem érdekében állnak rendelkezésre prototípus készítés közben. Várhatóan a leánytáblák letiltják az összes hozzáférést ezekhez a fejlécekhez.
  3. 4 A leánytáblák által használt speciális csapok kitörése.

A D1M névjegyek hozzáadása a HÁZFEJEZŐHEZ:

  1. Tekintse meg a SOCKET JIG HASZNÁLATOT KERESZTÜLŐ videót.
  2. Vezesse át a fejléc csapjait a tábla alján (TX bal felső sarokban a felső oldalon).
  3. Vezesse a műszert a műanyag fejtetőre, és egyengesse mindkét felületet.
  4. Fordítsa meg a szerszámot és a szerelvényt, és erősen nyomja a fejet egy kemény, sík felületre.
  5. Nyomja le határozottan a táblát a csőre.
  6. Forrasztja a 4 sarokcsapot minimális forrasztással (csak a csapok ideiglenes igazítása).
  7. Melegítse fel és helyezze vissza a táblát/csapokat, ha szükséges (a tábla vagy a csapok nincsenek egy vonalban vagy függőlegesen).
  8. Forrasztja a többi csapot.
  9. Távolítsa el a csavart.
  10. Vágja le a csapokat a forrasztók felett.

A Daughter-board Breakouts hozzáadása:

  1. Vágjon le 4 9P női fejlécet.
  2. A tetején helyezze be a 9P fejlécet az ábrán látható módon, és forrasztja le az alján.

A közvetlen kitörések hozzáadása:

  1. Vágjon le 2 darab 8P női fejlécet.
  2. A tetején helyezze be a 8P fejlécet az ábrán látható módon, és forrasztja le az alján.

A fejlécek csatlakoztatásához alul, a TX csap felfelé irányítva:

  1. Nyomon követheti és forraszthatja az RST csapból 4 csapon keresztül.
  2. Nyomon követheti és forraszthatja az A0 érintkezőt 4 tűn keresztül.
  3. Nyomon követheti és forraszthatja a D1 tüskét 4 tűn keresztül.
  4. Nyomon követheti és forraszthatja a D2 csapból 4 érintkezőn keresztül.
  5. Nyomon követheti és forraszthatja a D0 csapból 2 sorban lefelé és 4 csapon keresztül.
  6. Nyomon követheti és forraszthatja a D7 -es csapból 4 tűn keresztül.
  7. Nyomon követheti és forraszthatja a GND csapból 4 tűn keresztül.
  8. Nyomon követheti és forraszthatja az 5 V -os tűből 4 tűn keresztül.
  9. Nyomon követheti és forraszthatja a 3V3 tűt 45 ° -kal lefelé 4 tűn keresztül.

A RENDSZER ÖSSZESZERELÉSE

A HÁZFEJEK az MCU HÁZRA vannak rögzítve, ez pedig az ALAPTÁBLÁRA.

  1. A HÁZFEJEK hosszú oldala a lyukra mutat, helyezze be a D1M CONTACTS -t az MCU HÁZ nyílásaiba, és nyomja le az öblítést.
  2. Helyezze be az MCU -t az MCU CONTACTS -ba a rögzítés során, hogy biztosítsa a megfelelő igazítást.
  3. Helyezze a VEZETŐKeretet az összeszerelt elemek tetejére, és rögzítse 2 db 4G x 16 mm -es csavarral.
  4. Helyezze az összeszerelt szerelvényeket úgy, hogy a lyuk a rövid oldal felé nézzen, és rögzítse a 4G x 6 mm -es csavarokkal.

9. lépés: A Slaves alacsony oldali kapcsolójának felépítése/RESET leánytábla

Slaves alacsony oldali kapcsoló építése/RESET leánytábla
Slaves alacsony oldali kapcsoló építése/RESET leánytábla
Slaves alacsony oldali kapcsoló építése/RESET leánytábla
Slaves alacsony oldali kapcsoló építése/RESET leánytábla
Slaves alacsony oldali kapcsoló építése/RESET leánytábla
Slaves alacsony oldali kapcsoló építése/RESET leánytábla

Ez a REST leánylapjának továbbfejlesztése. Ez hozzáad egy alacsony oldali kapcsolót, amely a slave-eket a GROUND-hoz köti. Ha a mester alaphelyzetbe áll, a szolga is visszaáll, és a metaadatokat továbbító inicializálás újraindul.

ÖSSZESZERELÉS

  1. A belsejében helyezze be a 9P 90 ° -os férfi fejlécet (1), az 1P 90 ° férfi fejlécet (2), a 2N7000 -et (3), és forrasztja le kívülről.
  2. A belsejében nyomon kell követni a sárga vezetéket a SÁRGA1 -től a SÁRGA2 -ig, és forrasztani.
  3. A belső oldalon kövessen egy csupasz vezetéket az SILVER1 -től az SILVER2 -ig és a forrasztást.
  4. A belső oldalon kövessen egy csupasz vezetéket az SILVER3 -tól az SILVER4 -ig és a forrasztást.

10. lépés: A fő alkatrészek összeszerelése

A fő alkatrészek összeszerelése
A fő alkatrészek összeszerelése
A fő alkatrészek összeszerelése
A fő alkatrészek összeszerelése
A fő alkatrészek összeszerelése
A fő alkatrészek összeszerelése
A fő alkatrészek összeszerelése
A fő alkatrészek összeszerelése
  1. Győződjön meg arról, hogy a SHELL fel lett építve és az áramkört tesztelték (kábel és aljzatok).
  2. Cserélje ki a 2P férfi fejlécet a 3V3 I2C LÁNYTÁBLA-n egy 2P 90º 1P férfi fejléccel.
  3. Helyezze be a 3V3 I2C LÁNYTÁBLÁT úgy, hogy a 3V3-as csap a fejlécek rongyos végén legyen (lásd a képet).
  4. Helyezze be az ALACSONY KAPCSOLÓT/LÉTESÍTŐ LÁNYTÁBLÁT úgy, hogy a huzal befelé legyen (lásd a képen).
  5. Keressen egy Dupont vezetéket a RESET DAUGHTER-BOARD 90º 1P férfi fejrésze között a 3V3 I2C DAUGHTER-BOARD-hoz.
  6. Helyezze be az IDC aljzatot a SHELL KÁBELBŐL a 3V3 I2C LÁNYTÁBLA IDC fejlécébe.
  7. Óvatosan helyezze be a LÁNYTÁBLÁKAT/HÁZT a kábelek közé a SHELL-ben, és igazítsa az alap lyukait.
  8. Rögzítse az ALAPOSZTÓT a héjhoz a 4G x 6 mm -es csavarokkal.
  9. Csatlakoztassa az elkészített ASSZIMILÁTUS ÉRZÉKELŐKET.

11. lépés: Következő lépések

Image
Image
Következő lépések
Következő lépések
Következő lépések
Következő lépések
  1. Irányítsa böngészőjét a https://crouton.mybluemix.net/crouton/connections weboldalra.
  2. Győződjön meg arról, hogy a közvetítő a test.mosquitto.org.
  3. Kattintson a Csatlakozás gombra.
  4. Adja meg az Eszköznév bemenetet mqtt_device_name néven a /config/device.json fájlban.
  5. Kattintson az Eszköz hozzáadása elemre.
  6. Kattintson az Automatikus csatlakozás lehetőségre.
  7. Kapcsolja be az ICOS10 -et (5V MicroUSB).
  8. Ellenőrizze a Crouton műszerfalon keresztül.

Ajánlott: