Ismerje meg, hogyan kezdje el a Tulip Edge Driver fejlesztését és iterálását
Bevezetés
- Mit fog tanulni
- Hogyan fejlessze első edge driver projektjét
- Egy projekt felépítése
- A manifeszt és index fájlok frissítése
- Hogyan fejlessze első edge driver projektjét
- Amire szükséged lesz (előfeltételek)
- Az SDK Create összes lépésének követése
Első lépések
Miután létrehozta az új Edge-illesztőprogramját a create-edge-driver
eszközzel, készen áll a saját illesztőprogram kódjának megvalósítására!
A manifest.json frissítése
Először is meg kell határoznunk az illesztőprogramunk által megvalósított eseményeket és funkciókat. Az eszközesemények a Tulip Apps logikájának kiváltójaként használhatók. Például, beállíthat egy App trigger-t például így:
"Amikor az érzékelőm mérési eseményt lő, tárolja a hőmérsékleti adatokat a 'Shop Floor Temperature' változóban".
A meghajtók eszközfüggvényeket is implementálhatnak, amelyek az alkalmazáson belüli triggerek hatására hajthatók végre. Például:
"Amikor rákattintok erre a gombra, hívja meg a 'Fény kapcsolása' funkciót az eszközömön."
Ebben a példában az illesztőprogramunknak nem lesznek funkciói, de egy "data" nevű eseményt fog tüzelni, amikor az érzékelőnk mérést végez. Frissítse a functions részt az src/manifest.json fájlban, vagy hagyja üresen, vagy távolítsa el teljesen:
json... "functions":``[],...
Ezután frissítsük az események részt, hogy meghatározzuk az "data" esemény alakját. Ez az esemény egy objektum lesz két float tulajdonsággal, "hőmérséklet" és "páratartalom":json... "events": [ { { "name": "data", "schema": { "type": "object", "properties": { "temperature": { "type": "}, "humidity": { "type": "float" } } } } ],...
Az index.ts frissítése
Most megírjuk az illesztőprogram kódját, amely az Edge Driver SDK segítségével megkeresi a soros portot és csatlakozik hozzá, bejövő soros adatokat olvas, elemzi a JSON üzeneteket, és a fireEvent() segítségével elindítja az "data" eseményt. Cseréljük ki a példakódot az src/index.ts fájlban ezzel az új kóddal:
serial.onData((data) => { try { const decoder = new TextDecoder(); const stringData = decoder.decode(new Uint8Array(data)); const espData = JSON.parse(stringData.split("ESP: ")[1]); edgeDriverSdk.fireEvent("data", espData); } catch (error) { console.error(error); } });
serial.open();});````Ez egy nagyon egyszerű példa, amely az USB eszköz termékazonosítója alapján automatikusan megpróbálja megtalálni az eszközt, egyetlen alkalommal, amikor az illesztőprogram elindul. Az Edge Driver SDK támogatja az illesztőprogramok regisztrálását is, hogy azok akkor induljanak el, amikor a rendszer új eszközöket észlel, ami segíthet a robusztusabb sorozatgyártású illesztőprogramok elkészítésében.
#### Az illesztőprogram építése
Az illesztőprogramkód és a manifest.json frissítése után építse újra az illesztőprogramot`:npm run build`
Ez létrehozza a lefordított és csomagolt JavaScript fájlt, valamint az érvényesített manifeszt másolatát a dist könyvtárban.{height="" width=""}