Përmbajtje:
- Furnizimet
- Hapi 1: REST JSON Http (s) Protokolli
- Hapi 2: Rrjedha
- Hapi 3: Paneli i kontrollit
- Hapi 4: Importi i rrjedhës (projekt, skenar, etj)
- Hapi 5: Si funksionon e gjitha së bashku
- Hapi 6: HTTP POST dhe GET
- Hapi 7: Nyjet e butonave
- Hapi 8: Nyja e funksionit
- Hapi 9: Nyja JSON dhe Nyja e Injektimit
- Hapi 10: Nyja e tekstit dhe nyja e korrigjimit
- Hapi 11: Nyja e grafikut
- Hapi 12: Nyja e Matësit dhe Nyjet e Lidhjes
- Hapi 13: Faleminderit që lexuat Udhëzuesin tim
Video: Si të punoni me JSON në Nyjen-KUQ: 13 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:18
Ky udhëzues do t'ju mësojë se si të punoni me JSON në nyjen-KUQ. Unë do t'ju tregoj se si të kontrolloni prizat e energjisë në rrjet me transferimin e skedarëve json përmes http get and post. Dhe ju mund ta përdorni këtë njohuri më vonë për të kontrolluar çdo pajisje që mbështet protokollin JSON.
Për qëllime mësimore do të përdor prizën e rrjetit NETIO 4All, por mos u shqetësoni, nuk keni nevojë të blini asgjë. NETIO ka demonstrimin mahnitës 4 të gjithë online që mund të përdorni.
Furnizimet
NETIO 4Të gjitha fuqitë në rrjet ose 4Të gjitha demonstrimet online:
Nyje-KUQ
Hapi 1: REST JSON Http (s) Protokolli
Kjo pjesë është pak teknike, por ju lutem duroni me mua. Nëse nuk do ta shpjegoja këtë pjesë, atëherë do të kishit probleme për të kuptuar vlerat në skedarët json që do të dërgojmë në nyjen-KUQ.
Veprimet e zbatueshme për çdo dalje (prizë elektrike):
Në të gjithë protokollet M2M, prizat e energjisë NETIO përdorin të njëjtat veprime që mund të aplikohen në daljet individuale. Për shembull, një veprim Toggle ose Short Off mund të shkruhet në çdo dalje.
Sidoqoftë, ndryshorja e Veprimit mund të përdoret vetëm për të shkruar vlera, nuk mund të përdoret për të lexuar gjendjen aktuale të daljes.
Këto janë veprimet që mund të aplikoni për secilën dalje:
0 = Dalja është e fikur (joaktive)
1 = Dalja e ndezur (Aktive)
2 = Dalja është e fikur për një kohë të shkurtër (e shkurtër e fikur)
3 = Dalja e ndezur për një kohë të shkurtër (e shkurtër e ndezur)
4 = Dalja kaloi nga një gjendje në tjetrën (kaloni)
5 = Gjendja e daljes e pandryshuar (pa ndryshim)
6 = I injoruar
Shembull - skedari JSON për të ndryshuar daljen nr. 1:
{
"Rezultatet": [{
"ID": 1, "Veprimi": 4
}]
}
ID - ky numër tregon se cilën dalje do të përdorim
Veprimi - kjo pjesë, është veprimi që do të bëjë dalja (p.sh. 1 (Aktivizo daljen))
Hapi 2: Rrjedha
Dhe tani pjesa kryesore. Kështu duket mjedisi nyje-KUQ.
Ne kemi importuar rrjedhën e API -së të URL -së (Projekti që shihni. Më vonë do t'ju tregoj se si të importoni rrjedhat dhe këtë projekt) Ky projekt përbëhet nga dy pjesë:
- Rrjedha NETIO AN30 (JSON REST API)
- Paneli (Ndërfaqja grafike me të cilën mund të përdorni programin tuaj)
Hapi 3: Paneli i kontrollit
Kështu duket pulti në nyjen-KUQ për këtë udhëzues. Mund ta personalizoni nëse dëshironi t'i përshtateni shijes tuaj.
Pulti për këtë projekt është i ndarë në 4 pjesë:
- Gjendja e pajisjes - tregon informacionin e pajisjes si modeli, adresa e Mac ose versioni i firmuerit.
- (POST) Output Control 1 - Përmban 5 butona të cilët kontrollojnë daljen 1. Çdo buton ekzekuton veprime të ndryshme
- (GET) O1 - O4 Gjendjet e daljes - Kjo pjesë tregon gjendjen aktuale të secilës dalje nga pajisja juaj.
- Menaxhimi i pajisjes - Në këtë pjesë mund të gjeni të gjitha llojet e grafikëve dhe matësve të cilët tregojnë vlerat aktuale të matura nga pajisja NETIO 4Aall
Hapi 4: Importi i rrjedhës (projekt, skenar, etj)
Në menunë (këndi i sipërm i djathtë) zgjidhni Import dhe më pas Clipboard.
Pastaj, kopjoni tekstin më poshtë në fushën e treguar dhe klikoni Import.
Instalimi i nyjeve që mungojnë
Nyjet ngarkohen në rrjedhën e zgjedhur. Shtë e mundur që një mesazh gabimi të shfaqet me një listë të nyjeve që janë duke u importuar, por që nuk janë instaluar ende në Node-RED. Në këtë rast, nyjet që mungojnë duhet të instalohen.
Nëse mungojnë nyjet, zgjidhni Menaxho paletën në meny, klikoni Instalo dhe gjeni dhe instaloni nyjet që ju mungojnë.
Importo tekstin:
[{"id": "56b9510c.98c6f", "type": "tab", "label": "NETIO AN30 (REST JSON)", "me aftësi të kufizuara": false, "info": ""}, {"id ":" 6a66b637.da1558 "," type ":" http request "," z ":" 56b9510c.98c6f "," name ":" HTTP Request (POST) "," method ":" POST "," ret ": "txt", "url": "https://netio-4All.netio-products.com:8080/netio.json", "tls": "", "x": 430, "y": 100, "telat":
Hapi 5: Si funksionon e gjitha së bashku
Rrjedha në thelb ndahet në dy pjesë: POST dhe GET.
POST: Shkrimi në O1
- Pesë butona të krijuar në Pult në Flow shfaqen në Panel.
- Pasi të klikoni butonin Output 1 = ON në Panel, ngarkesa ngarkuese vendoset në skedarin netio.json që specifikon daljen dhe veprimin (e përcaktuar për secilën prej butonave).
- Blloku i Kërkesës HTTP (POST) dërgon skedarin netio.json si kërkesë në një adresë IP.
- Përgjigja e serverit (statusi) kthehet si dalje.
- Blloku Msg.payload shfaq rezultatin nga Kërkesa HTTP (POST).
MERR: Leximi nga O1 - O4
- Blloku i Përsëritjes 1 i dytë aktivizon, me një periudhë prej një sekonde, bllokun HTTP Request (GET), i cili nga ana tjetër dërgon netio.json si një kërkesë GET dhe kthen një skedar të plotë JSON me statusin e prizës siç është marrë nga serveri.
- Blloku JSON Parse shndërron skedarin JSON nga blloku HTTP Request (GET) në një Objekt JSON në mënyrë që të jetë e mundur të manipuloni vetitë në skedarin JSON.
- Blloku i funksionit merr pjesë individuale të objektit JSON dhe i shndërron ato në vetitë e një objekti msg për përdorim të mëvonshëm.
- Blloku aktual i grafikut vendos msg.payload në vetinë msg. TotalCurrent të objektit msg, sepse blloku pasues i Grafikut aktual (Pajisja) mund të shfaqë vetëm vlerën e mesazhit të pagesës.
- Më pas ndiqen nyje të ndryshme dalëse për të shfaqur vetitë e zgjedhura të objektit msg, të marra nga objekti JSON, në Pult.
Objekti msg dhe ngarkesa mesazh
Për një shpjegim të thjeshtë dhe konciz, shihni këtu:
www.steves-internet-guide.com/node-red-mess…
Hapi 6: HTTP POST dhe GET
Kërkesë HTTP (POST)
Kjo nyje dërgon një skedar komandash netio.json si një Kërkesë HTTP (POST) në mënyrë që të kontrollojë pajisjen NETIO 4All.
Kërkesë HTTP (GET)
Kjo nyje dërgon një Kërkesë HTTP (GET) dhe kthen përgjigjen e statusit.
Adresa e para-mbushur tregon për demonstrimin online NETIO 4All, ku mund të provoni lidhjen pa pasur një pajisje NETIO në tryezën tuaj.
netio-4all.netio-products.com
Theseshtë e mundur të vendosni adresën tuaj IP në këto nyje; megjithatë, IP duhet të ndryshohet në të dy nyjet e Kërkesës HTTP, POST si dhe GET.
Hapi 7: Nyjet e butonave
Klikimi i nyjes së butonit gjeneron një mesazh që përmban një skedar netio.json (Fotografia e djathtë) e cila më pas dërgohet përmes nyjes postare http në prizën e energjisë netio të zgjuar.
Hapi 8: Nyja e funksionit
Një nyje funksioni është një nyje e veçantë që mundëson shkrimin e një funksioni të personalizuar JavaScript.
Në këtë udhëzues, funksioni zgjedh vlerat nga skedari JSON i analizuar (tani një objekt JSON) dhe i cakton ato në vetitë e objektit msg.
Kodi është i ndarë në katër pjesë:
- Caktimi i vlerave nga objekti JSON në vetitë individuale të objektit msg
-
Gabim në trajtimin në rast se priza e rrjetit nuk mbështet matjet globale
Nëse priza e rrjetit nuk mbështet matjen e vlerave globale, Node-RED do të shfaq gabime sepse ky funksion nuk do të gjejë vetinë përkatëse, p.sh. msg.payload. GlobalMeasure. Voltage, pasi nuk do të ishte i pranishëm në objektin JSON. Në këtë rast, vetia e objektit msg, p.sh. msg. Voltage, është vendosur në 0 dhe gabimi kapet i trajtuar.
- Caktimi i vlerave të gjendjes dalëse
- Vendosja e ngjyrave të vlerave të gjendjes së daljes së shfaqur sipas gjendjeve të daljes
Hapi 9: Nyja JSON dhe Nyja e Injektimit
Nyja JSON
Nyja JSON analizon skedarin JSON dhe e transformon atë në një objekt JSON.
Si përgjigje nga serveri ndaj kërkesës GET, nyja e Kërkesës HTTP kthen një skedar JSON që përmban statusin aktual të pajisjes NETIO 4x, por është thjesht një skedar teksti, kështu që për të punuar me të dhënat, skedari JSON ka nevojë të analizohet në një objekt JSON.
Injektoni nyjen
Çdo sekondë, kjo nyje aktivizon nyjen HTTP Request që dërgon një kërkesë GET.
Si rezultat, vlerat në Panel përditësohen me një periudhë prej një sekonde
Hapi 10: Nyja e tekstit dhe nyja e korrigjimit
Nyja e tekstit
Shfaq një fushë teksti në Panel. Në këtë udhëzues, nyjet e tekstit shfaqin rrymën, tensionin, modelin, versionin e firmuerit ose versionin JSON.
Etiketa shfaqet në Panel, dhe Emri është emri i nyjës i shfaqur në rrjedhën në Nyjen-KUQ.
Nyja e korrigjimit
Shfaq ngarkesën e msg.
Hapi 11: Nyja e grafikut
Kjo nyje paraqet grafikun aktual në Pult, sipas vlerës së ngarkesës.
Kjo nyje mund të bëjë grafikë vetëm sipas vlerës së ngarkesës.
Për këtë arsye, një nyje funksioni përdoret për të vendosur msg.payload në vlerën që duhet të shfaqet.
msg.payload = msg. TotalCurrent;
Hapi 12: Nyja e Matësit dhe Nyjet e Lidhjes
Nyja matëse
Kjo nyje shton një widget matës në Pult.
Në këtë udhëzues, çdo matës vizualizon një veti të objektit msg: tension [V], curent [A], frekuencë [Hz] dhe faktori i përgjithshëm i vërtetë i fuqisë (TPF).
Nyjet e lidhjes
Lidhja dhe lidhja e nyjeve funksionojnë si një tunel. Mesazhi i pagesës arrin në lidhjen në nyje dhe del jashtë nyjës së lidhjes jashtë.
E kam përdorur për ta bërë rrjedhën pak më të qartë dhe më të lehtë për t'u lexuar.
Hapi 13: Faleminderit që lexuat Udhëzuesin tim
Shpresoj se ju ka pëlqyer mësimi im dhe mësuat me shpresë diçka të re.
Ky udhëzues është vetëm një version i shkurtuar i udhëzuesit të ndryshëm që kam bërë
Udhëzuesi origjinal është më i gjatë dhe shumë më i detajuar dhe në përgjithësi është më i strukturuar. Nëse nuk keni kuptuar diçka ose mendoni se më ka munguar ose nuk kam shpjeguar diçka, atëherë patjetër që mund ta gjeni atje.
Ju premtoj se nuk do të zhgënjeheni
Origjinale:
Gjithashtu ka udhëzues të ngjashëm në lidhje me përdorimet e ndryshme të nyjës-DAR, kështu që nëse jeni të interesuar mos ngurroni të eksploroni:
Puna me REST URL API në nyjen-KUQ
www.netio-products.com/en/application-notes/an29-node-red-example-of-url-api-communication-with-netio-4x
Puna me REST XML në nyjen-KUQ
www.netio-products.com/en/application-notes/an31-node-red-example-of-rest-xml-communication-with-netio-4x
Puna me TCP/Modbus në nyjen-KUQ
Se shpejti:)
Recommended:
Punoni nga shtëpia Regjistruesi i kohës duke përdorur një mjedër Pi: 7 hapa
Regjistruesi i punës nga shtëpia duke përdorur një Raspberry Pi: Gjatë vitit të kaluar, kam pasur mundësinë të punoj nga shtëpia. Për të cilat më duhej të mbaja gjurmët e orëve që punoja. Duke filluar duke përdorur një spreadsheet Excel dhe duke futur manualisht orët e "clock-in" dhe "clock-out", shpejt zbulova se ishte
Punoni me avull UPS-in tuaj për të marrë orë në kohë për ruterin tuaj Wi-fi: 4 hapa (me fotografi)
Avulloni UPS-in tuaj për të marrë orë pune në Routerin tuaj Wi-fi: Ka diçka krejtësisht të pakëndshme në lidhje me faktin që UPS-i juaj të shndërrojë fuqinë e tij të baterisë 12V DC në fuqinë AC 220V në mënyrë që transformatorët që funksionojnë ruterin tuaj dhe fibrat ONT ta kthejnë atë në 12V DC! Ju jeni gjithashtu kundër [zakonisht
Rinovoni dritat me telekomandë - Çelsat ekzistues të murit Vazhdoni të punoni: 8 hapa
Retrofit Dritat Me Telekomandë - Çelësat Ekzistues të Murit Vazhdoni të Punoni: Përditësoni 4 Tetor 2017 - Shikoni Ndërprerësin e Dritës me Telekomandë - Retrofit. Ndërprerësi i dritës funksionon akoma, nuk ka shkrim shtesë për një version të përmirësuar Bluetooth me Energji të Ulët (BLE). Përditësim më 8 nëntor 2016 - Përditësuar me ndryshimet e bëra në projektin e Retrofitted Fan Timers.
DragonBoard 410c - Si të punoni me zgjerimin me shpejtësi të ulët: 8 hapa
DragonBoard 410c - Si të punoni me zgjerimin me shpejtësi të ulët: Ky udhëzues ka të bëjë me zgjerimin me shpejtësi të ulët në DragonBoard 410c. Hyrjet dhe Rezultatet (I/O) të Zgjerimit të Shpejtësisë së Ulët në DragonBoard 410c janë: GPIO (Input/Output për Qëllim të Përgjithshëm); MPP (Pin me shumë qëllime); SPI (Ndërfaqja Periferike Seriale); I2C (Në
Si të punoni me Arduino dhe LED të ndryshëm RGB: 3 hapa
Si të punoni me Arduino dhe LED të ndryshëm RGB: Arduino është një pajisje e mahnitshme e vogël. Por një nga aplikacionet më të përdorura për këtë pajisje të vogël të fuqishme është shpesh ndezja ose ndezja e një LED. Ky tutorial do t'ju tregojë tre mënyra për të punuar me RGB Leds dhe Arduino. Mënyra e parë është të përdorni një të thjeshtë