Tartalomjegyzék:
- 1. lépés: Crouton
- 2. lépés: A webszerver / szerkesztő
- 3. lépés: Eszköz testreszabása
- 4. lépés: Tulajdonságok testreszabása
- 5. lépés: A metaadatok testreszabása
- 6. lépés: Anyagok és eszközök
- 7. lépés: MCU előkészítés
- 8. lépés: Az MCU ház előkészítése
- 9. lépés: A Slaves alacsony oldali kapcsolójának felépítése/RESET leánytábla
- 10. lépés: A fő alkatrészek összeszerelése
- 11. lépés: Következő lépések
Videó: IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐGOMB: ICOS10 CUSTOMIZATION WEBSEREV: 11 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:42
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. 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ő
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:
- Válassza a Fájl lehetőséget a helyi fájlrendszerből.
- Helyezzen be egy mappa elérési útját (ha szükséges) a szövegmezőbe.
- Kattintson a Feltöltés gombra.
- Frissítsd az oldalt.
3. lépés: 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
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
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
ICOS10 (IDC) Shell Bill of Materials
- D1M BLOCK Pin Jig (1)
- D1M BLOCK alap és ház (1)
- Wemos D1 Mini (1)
- Wemos D1 Mini Protoboard Shield (1)
- 40P női fejlécek (8P, 8P, 9P, 9P)
- Férfi fejléc 90º (3P, 3P, 3P, 2P, 1P, 2P)
- 1 "kétoldalas protoboard (2)
- 2N7000 NFET (1)
- 6 tűs, burkolt IDC férfi fejléc (1)
- Csatlakozó vezeték (~ 10)
- 0,5 mm -es ónozott huzal (~ 4)
- 4G x 15 mm -es gombfejű önmetsző csavarok (2)
- 4G x 6 mm önmetsző süllyesztett csavarok (~ 20)
- Forrasztás és vas (1)
7. lépé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.
- Nyomtasson ki/szerezzen be PIN JIG -et erről az oldalról.
- Vezesse a fejléc csapjait a tábla alján (TX jobb-bal) és a forrasztóberendezésbe.
- Nyomja le a csapokat egy lapos, kemény felületre.
- Nyomja le határozottan a táblát a csőre.
- Forrasztja a 4 sarokcsapot.
- 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).
- 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:
- Módosítsa a wifi_ssid értékét a WiFi SSID azonosítójával.
- Módosítsa a wifi_key értékét a WiFi kulccsal.
- Módosítsa az mqtt_device_name értékét a kívánt eszközazonosítóval (nincs szükség csatlakozásra).
- Módosítsa az mqtt_device_description értékét a kívánt eszközleírással (Crouton nyelven).
- Device.json mentése.
- Töltse fel az adatfájlokat a SPIFFS fájlba.
8. lépés: Az 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:
- A D1M WIFI BLOCK/D1 Mini csapjai a csatlakoztatáshoz.
- 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.
- 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:
- Tekintse meg a SOCKET JIG HASZNÁLATOT KERESZTÜLŐ videót.
- Vezesse át a fejléc csapjait a tábla alján (TX bal felső sarokban a felső oldalon).
- Vezesse a műszert a műanyag fejtetőre, és egyengesse mindkét felületet.
- Fordítsa meg a szerszámot és a szerelvényt, és erősen nyomja a fejet egy kemény, sík felületre.
- Nyomja le határozottan a táblát a csőre.
- Forrasztja a 4 sarokcsapot minimális forrasztással (csak a csapok ideiglenes igazítása).
- 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).
- Forrasztja a többi csapot.
- Távolítsa el a csavart.
- Vágja le a csapokat a forrasztók felett.
A Daughter-board Breakouts hozzáadása:
- Vágjon le 4 9P női fejlécet.
- 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:
- Vágjon le 2 darab 8P női fejlécet.
- 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:
- Nyomon követheti és forraszthatja az RST csapból 4 csapon keresztül.
- Nyomon követheti és forraszthatja az A0 érintkezőt 4 tűn keresztül.
- Nyomon követheti és forraszthatja a D1 tüskét 4 tűn keresztül.
- Nyomon követheti és forraszthatja a D2 csapból 4 érintkezőn keresztül.
- Nyomon követheti és forraszthatja a D0 csapból 2 sorban lefelé és 4 csapon keresztül.
- Nyomon követheti és forraszthatja a D7 -es csapból 4 tűn keresztül.
- Nyomon követheti és forraszthatja a GND csapból 4 tűn keresztül.
- Nyomon követheti és forraszthatja az 5 V -os tűből 4 tűn keresztül.
- 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.
- 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.
- Helyezze be az MCU -t az MCU CONTACTS -ba a rögzítés során, hogy biztosítsa a megfelelő igazítást.
- Helyezze a VEZETŐKeretet az összeszerelt elemek tetejére, és rögzítse 2 db 4G x 16 mm -es csavarral.
- 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
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
- 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.
- A belsejében nyomon kell követni a sárga vezetéket a SÁRGA1 -től a SÁRGA2 -ig, és forrasztani.
- A belső oldalon kövessen egy csupasz vezetéket az SILVER1 -től az SILVER2 -ig és a forrasztást.
- 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
- Győződjön meg arról, hogy a SHELL fel lett építve és az áramkört tesztelték (kábel és aljzatok).
- Cserélje ki a 2P férfi fejlécet a 3V3 I2C LÁNYTÁBLA-n egy 2P 90º 1P férfi fejléccel.
- 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).
- Helyezze be az ALACSONY KAPCSOLÓT/LÉTESÍTŐ LÁNYTÁBLÁT úgy, hogy a huzal befelé legyen (lásd a képen).
- Keressen egy Dupont vezetéket a RESET DAUGHTER-BOARD 90º 1P férfi fejrésze között a 3V3 I2C DAUGHTER-BOARD-hoz.
- Helyezze be az IDC aljzatot a SHELL KÁBELBŐL a 3V3 I2C LÁNYTÁBLA IDC fejlécébe.
- Óvatosan helyezze be a LÁNYTÁBLÁKAT/HÁZT a kábelek közé a SHELL-ben, és igazítsa az alap lyukait.
- Rögzítse az ALAPOSZTÓT a héjhoz a 4G x 6 mm -es csavarokkal.
- Csatlakoztassa az elkészített ASSZIMILÁTUS ÉRZÉKELŐKET.
11. lépés: Következő lépések
- Irányítsa böngészőjét a https://crouton.mybluemix.net/crouton/connections weboldalra.
- Győződjön meg arról, hogy a közvetítő a test.mosquitto.org.
- Kattintson a Csatlakozás gombra.
- Adja meg az Eszköznév bemenetet mqtt_device_name néven a /config/device.json fájlban.
- Kattintson az Eszköz hozzáadása elemre.
- Kattintson az Automatikus csatlakozás lehetőségre.
- Kapcsolja be az ICOS10 -et (5V MicroUSB).
- Ellenőrizze a Crouton műszerfalon keresztül.
Ajánlott:
IOT123 - D1M BLOCK - 2xAMUX összeszerelés: 7 lépés (képekkel)
IOT123 - D1M BLOCK - 2xAMUX összeszerelés: A D1M BLOCKS tapintható tokokat, címkéket, polaritási útmutatókat és kitöréseket ad a népszerű Wemos D1 Mini SOC/Shields/Clones -hoz. Az ESP8266 chip egyik problémája az, hogy csak egy analóg IO tű áll rendelkezésre. Ez az útmutató bemutatja, hogyan kell összeszerelni a 2xA
IOT123 - D1M BLOCK - RFTXRX Összeszerelés: 8 lépés
IOT123 - D1M BLOCK - RFTXRX összeszerelés: A D1M BLOCKS tapintható tokokat, címkéket, polaritási útmutatókat és kitöréseket ad a népszerű Wemos D1 Mini SOC/Shields/Clones -hoz. Az RF adók/vevők lehetővé teszik az ESP8266 számára a meglévő otthoni/ipari automatizálás elérését. Ez a burkolat 433
IOT123 - D1M BLOCK - GY521 Összeszerelés: 8 lépés
IOT123 - D1M BLOCK - GY521 Összeszerelés: A D1M BLOCKS tapintható tokokat, címkéket, polaritási útmutatókat és kitöréseket ad hozzá a népszerű Wemos D1 Mini SOC/pajzsokhoz/klónokhoz. Ez a D1M BLOCK egyszerű összeköttetést biztosít a Wemos D1 Mini és a GY-521 modul között (a cím és a megszakító csapok összekapcsolhatók
IOT123 - D1M BLOCK - ADXL345 Összeszerelés: 8 lépés
IOT123 - D1M BLOCK - ADXL345 Összeszerelés: A D1M BLOCKS tapintható tokokat, címkéket, polaritási útmutatókat és kitöréseket ad hozzá a népszerű Wemos D1 Mini SOC/pajzsokhoz/klónokhoz. Ez a D1M BLOCK egyszerű összeköttetést biztosít a Wemos D1 Mini és az ADXL345 gyorsulásmérő modul között. Kezdeti motivációm a fejlesztéshez
IOT123 - ASSZIMILÁTUS ÉRZÉKELŐ GOMB: ICOS10 3V3 MQTT NODE: 6 lépés
IOT123 - ASSZIMILÁCIÓS ÉRZÉKELŐ BEÁLLÍTÓ: ICOS10 3V3 MQTT NODE: Ez az első az ASSIMILATE SENSOR HUB -ok MCU/Feature kombinációi közül: a masterek, amelyek az I2C ASSIMILATE SENSORS slave -ek adatgyűjtőit gyűjtik. Ez a build egy Wemos D1 Mini -t használ az ASSIMILATE -ből származó adatok közzétételéhez