Satura rādītājs:
- Piegādes
- 1. darbība: ATPŪTA JSON Http (-u) protokolu
- 2. solis: plūsma
- 3. darbība: informācijas panelis
- 4. darbība: plūsmas importēšana (projekts, skripts utt.)
- 5. darbība. Kā tas viss darbojas kopā
- 6. darbība: HTTP POST un GET
- 7. solis: pogu mezgli
- 8. solis: funkcijas mezgls
- 9. darbība: JSON mezgls un injekcijas mezgls
- 10. darbība: teksta mezgls un atkļūdošanas mezgls
- 11. solis: diagrammas mezgls
- 12. solis: mērierīču mezgli un saišu mezgli
- 13. darbība. Paldies, ka izlasījāt manu pamācību
Video: Kā strādāt ar JSON mezglā SARKANS: 13 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:54
Šī pamācība iemācīs jums strādāt ar JSON mezglā-RED. Es jums parādīšu, kā kontrolēt tīkla kontaktligzdas ar json failu pārsūtīšanu, izmantojot http get and post. Un šīs zināšanas varat izmantot vēlāk, lai kontrolētu jebkuru ierīci, kas atbalsta JSON protokolu.
Mācību nolūkos es izmantošu NETIO 4All tīkla kontaktligzdu, taču neuztraucieties, jums nekas nav jāpērk. NETIO piedāvā pārsteidzošu 4All tiešsaistes demonstrāciju, ko varat izmantot.
Piegādes
NETIO 4Visas tīkla jaudas kontaktligzdas vai 4All tiešsaistes demonstrācija:
Mezgls-SARKANS
1. darbība: ATPŪTA JSON Http (-u) protokolu
Šī daļa ir nedaudz tehniska, bet, lūdzu, izturiet mani. Ja es nepaskaidroju šo daļu, tad jums būs problēmas saprast vērtības json failos, kurus mēs nosūtīsim mezglā-RED.
Katrai izejai (elektrības kontaktligzdai) piemērojamās darbības:
Visos M2M protokolos NETIO kontaktligzdas izmanto tās pašas darbības, kuras var piemērot atsevišķām izejām. Piemēram, darbību Toggle vai Short Off var ierakstīt jebkurā izvadē.
Tomēr mainīgo Action var izmantot tikai vērtību ierakstīšanai, to nevar izmantot pašreizējā izejas stāvokļa nolasīšanai.
Šīs ir darbības, kuras varat piemērot katrai izvadei.
0 = izeja izslēgta (izslēgta)
1 = izeja ir ieslēgta (ieslēgta)
2 = izeja uz īsu laiku izslēgta (īss izslēgts)
3 = izeja ir ieslēgta uz īsu laiku (īss ieslēgts)
4 = izeja pārslēgta no viena stāvokļa uz otru (pārslēgšana)
5 = izvades stāvoklis nemainīgs (bez izmaiņām)
6 = ignorēts
Piemērs - JSON fails, lai pārslēgtu izvades Nr. 1:
{
"Rezultāti": [{
"ID": 1, "Darbība": 4
}]
}
ID - šis skaitlis norāda, kuru izvadi mēs izmantosim
Darbība - šī daļa ir darbība, ko veiks izvade (piemēram, 1 (ieslēgt izvadi))
2. solis: plūsma
Un tagad galvenā daļa. Šādi izskatās mezgls-RED vide.
Mēs esam importējuši URL API plūsmu (redzamais projekts. Vēlāk es jums parādīšu, kā importēt plūsmas un šo projektu) Šis projekts sastāv no divām daļām:
- NETIO AN30 (JSON REST API) plūsma
- Informācijas panelis (grafiskais interfeiss, ar kura palīdzību jūs varat vadīt savu programmu)
3. darbība: informācijas panelis
Šādi izskatās šīs pamācības informācijas panelis mezglā-SARKANS. Jūs varat to pielāgot, ja vēlaties, lai tas atbilstu jūsu gaumei.
Šī projekta informācijas panelis ir sadalīts 4 daļās:
- Ierīces statuss - parāda ierīces informāciju, piemēram, modeli, mac adresi vai programmaparatūras versiju.
- (POST) Control Output 1 - satur 5 pogas, kas kontrolē 1. izvadi. Katra poga veic dažādas darbības
- (GET) O1 - O4 izvades stāvokļi - šī daļa parāda katras ierīces izejas pašreizējo stāvokli.
- Ierīču pārvaldība - šajā daļā varat atrast visu veidu diagrammas un mērinstrumentus, kas parāda pašreizējās NETIO 4 visas ierīces mērītās vērtības
4. darbība: plūsmas importēšana (projekts, skripts utt.)
Izvēlnē (labajā augšējā stūrī) atlasiet Importēt un pēc tam starpliktuvi.
Pēc tam nokopējiet zemāk esošo tekstu norādītajā laukā un noklikšķiniet uz Importēt.
Trūkstošo mezglu instalēšana
Mezgli tiek ielādēti atlasītajā plūsmā. Iespējams, tiek parādīts kļūdas ziņojums ar to mezglu sarakstu, kuri tiek importēti, bet vēl nav instalēti mezglā RED. Šajā gadījumā trūkstošie mezgli ir jāinstalē.
Ja trūkst mezglu, izvēlnē atlasiet Pārvaldīt paleti, noklikšķiniet uz Instalēt un atrodiet un instalējiet trūkstošos mezglus.
Importēt tekstu:
[{"id": "56b9510c.98c6f", "type": "tab", "label": "NETIO AN30 (REST JSON)", "disabled": false, "info": "", {"id ":" 6a66b637.da1558 "," tips ":" http pieprasījums "," z ":" 56b9510c.98c6f "," nosaukums ":" HTTP pieprasījums (POST) "," metode ":" POST "," ret ": "txt", "url": "https://netio-4All.netio-products.com:8080/netio.json", "tls": "", "x": 430, "y": 100, "vadi":
5. darbība. Kā tas viss darbojas kopā
Plūsma būtībā ir sadalīta divās daļās: POST un GET.
POST: Rakstīšana O1
- Plūsmas informācijas panelī izveidotās piecas pogas tiek parādītas informācijas panelī.
- Pēc informācijas paneļa noklikšķināšanas uz pogas Output 1 = ON, derīgā slodze tiek iestatīta uz failu netio.json, kas norāda izvadi un darbību (definēta katrai pogai).
- Bloks HTTP pieprasījums (POST) nosūta failu netio.json kā pieprasījumu uz IP adresi.
- Servera atbilde (statuss) tiek atgriezta kā izeja.
- Bloks Msg.payload parāda HTTP pieprasījuma (POST) rezultātu.
GET: lasīšana no O1 līdz O4
- 1 sekundes atkārtojuma bloks ar vienas sekundes periodu aktivizē HTTP pieprasījuma (GET) bloku, kas savukārt nosūta netio.json kā GET pieprasījumu un atgriež pilnu JSON failu ar ligzdas statusu, kas saņemts no servera.
- JSON Parse bloks pārveido JSON failu no HTTP pieprasījuma (GET) bloka uz JSON objektu, lai būtu iespējams manipulēt ar JSON faila rekvizītiem.
- Funkciju bloks ņem atsevišķas JSON objekta daļas un pārveido tās par ziņojuma objekta īpašībām vēlākai lietošanai.
- Bloks Pašreizējā diagramma iestata msg objekta rekvizītu msg. TotalCurrent, jo nākamais pašreizējās diagrammas (ierīces) bloks var parādīt tikai msg.payload vērtību.
- Pēc tam seko dažādi izvades mezgli, lai informācijas panelī parādītu atlasītos ziņojuma objekta rekvizītus, kas ņemti no JSON objekta.
Ziņojuma objekts un ziņojuma maksa
Vienkāršu un kodolīgu skaidrojumu skatiet šeit:
www.steves-internet-guide.com/node-red-mess…
6. darbība: HTTP POST un GET
HTTP pieprasījums (POST)
Šis mezgls nosūta komandas failu netio.json kā HTTP pieprasījumu (POST), lai kontrolētu NETIO 4All ierīci.
HTTP pieprasījums (GET)
Šis mezgls nosūta HTTP pieprasījumu (GET) un atgriež statusa atbildi.
Iepriekš aizpildītā adrese norāda uz NETIO 4All tiešsaistes demonstrāciju, kurā varat pārbaudīt savienojumu, bez galda NETIO ierīces.
netio-4all.netio-products.com
Šajos mezglos ir iespējams iestatīt savu IP adresi; tomēr IP ir jāmaina gan HTTP pieprasījuma mezglos, gan POST, gan GET.
7. solis: pogu mezgli
Noklikšķinot uz pogas mezgla, tiek ģenerēts ziņojums, kas satur failu netio.json (labais attēls), kas pēc tam tiek nosūtīts caur http pasta mezglu uz netio viedo strāvas kontaktligzdu.
8. solis: funkcijas mezgls
Funkciju mezgls ir īpašs mezgls, kas ļauj rakstīt pielāgotu JavaScript funkciju.
Šajā pamācībā funkcija izvēlas vērtības no parsētā JSON faila (tagad JSON objekta) un piešķir tās ziņojuma objekta rekvizītiem.
Kods ir sadalīts četrās sadaļās:
- Vērtību piešķiršana no JSON objekta atsevišķiem ziņojuma objekta rekvizītiem
-
Kļūdu apstrāde gadījumā, ja tīkla kontaktligzda neatbalsta globālos mērījumus
Ja tīkla kontaktligzda neatbalsta globālo vērtību mērīšanu, mezgls-RED parādītu kļūdas, jo šī funkcija neatradīs attiecīgo īpašumu, piem. msg.payload. GlobalMeasure. Voltage, jo tā nebūtu JSON objektā. Šajā gadījumā msg objekta īpašums, piem. msg. Spriegums, ir iestatīts uz 0, un kļūda tiek apstrādāta.
- Izvades stāvokļa vērtību piešķiršana
- Parādīto izvades stāvokļa vērtību krāsu iestatīšana atbilstoši izvades stāvokļiem
9. darbība: JSON mezgls un injekcijas mezgls
JSON mezgls
JSON mezgls parsē JSON failu un pārveido to par JSON objektu.
Kā atbilde no servera uz GET pieprasījumu, HTTP pieprasījuma mezgls atgriež JSON failu, kas satur pašreizējo NETIO 4x ierīces statusu, bet ir vienkārši teksta fails, tāpēc, lai strādātu ar datiem, JSON failam ir nepieciešams lai to parsētu JSON objektā.
Ievadiet mezglu
Katru sekundi šis mezgls aktivizē HTTP pieprasījuma mezglu, kas nosūta GET pieprasījumu.
Rezultātā informācijas paneļa vērtības tiek atjauninātas ar vienas sekundes periodu
10. darbība: teksta mezgls un atkļūdošanas mezgls
Teksta mezgls
Informācijas panelī tiek parādīts teksta lauks. Šajā pamācībā teksta mezgli parāda pašreizējo, spriegumu, modeli, programmaparatūras versiju vai JSON versiju.
Iezīme tiek parādīta informācijas panelī, un nosaukums ir mezgla nosaukums, kas tiek parādīts plūsmā mezglā-SARKANĀ.
Atkļūdošanas mezgls
Parāda ziņu maksas ielādi.
11. solis: diagrammas mezgls
Šis mezgls attēlo pašreizējo diagrammu informācijas panelī atbilstoši lietderīgās slodzes vērtībai.
Šis mezgls var uzzīmēt diagrammas tikai atbilstoši lietderīgās slodzes vērtībai.
Šī iemesla dēļ funkcijas mezgls tiek izmantots, lai iestatītu msg.payload vērtību, kas jāparāda.
msg.payload = msg. TotalCurrent;
12. solis: mērierīču mezgli un saišu mezgli
Gabarīta mezgls
Šis mezgls informācijas panelim pievieno mērinstrumentu logrīku.
Šajā pamācībā katrs mērītājs vizualizē vienu ziņojuma objekta īpašību: spriegumu [V], korekciju [A], frekvenci [Hz] un kopējo patieso jaudas koeficientu (TPF).
Saistīt mezglus
Mezglu saistīšana un atsaistīšana darbojas kā tunelis. Ziņojums.payload nonāk saitē mezglā un iziet no saites izejas mezgla.
Es to izmantoju, lai padarītu plūsmu mazliet skaidrāku un vieglāk lasāmu.
13. darbība. Paldies, ka izlasījāt manu pamācību
Es ceru, ka jums patika mans pamācāmais un, cerams, uzzināju kaut ko jaunu.
Šī pamācība ir tikai saīsināta versija dažādām manis sagatavotajām rokasgrāmatām
Sākotnējais ceļvedis ir garāks un daudz detalizētāks, un kopumā tas ir labāk strukturēts. Ja jūs kaut ko nesaprotat vai domājat, ka esmu kaut ko nokavējis vai neesmu pietiekami izskaidrojis, tad to noteikti varat atrast tur.
Es apsolu, ka jūs nebūsiet vīlušies
Oriģināls:
Ir arī līdzīgi ceļveži par dažādiem mezgla-RED lietošanas veidiem, tādēļ, ja jūs interesē, lūdzu, izpētiet:
Darbs ar REST URL API mezglā-RED
www.netio-products.com/en/application-notes/an29-node-red-example-of-url-api-communication-with-netio-4x
Darbs ar REST XML mezglā-RED
www.netio-products.com/en/application-notes/an31-node-red-example-of-rest-xml-communication-with-netio-4x
Darbs ar TCP/Modbus mezglā-RED
Jau pavisam drīz:)
Ieteicams:
Darbs ar URL API mezglā RED: 10 soļi
Darbs ar URL API mezglā SARKANS: šī pamācība iemācīs jums izmantot URL API (http get) mezglā RED. Tas ir apzināti vienkārši. Un, ja jūs esat salīdzinoši jauns mezglā RED, šis piemērs jums ir piemērots. Es iemācīšu, kā izmantot mezgla-SARKANO vidi un kas tā ir, un
DockerPi sērijas IoT mezgla (A) dēlis Raspberry Pi 4B: 4 soļi
DockerPi sērijas IoT mezgla (A) dēlis Raspberry Pi 4B: Apraksti: IoT Node (A) ir viens no Docker Pi sērijas moduļiem. IOT mezgls (A) = GPS/BDS + GSM + Lora. I2C tieši kontrolē Lora, sūta un saņem datus, kontrolē GSM/GPS/BDS moduli, izmantojot SC16IS752, mātesplatē ir nepieciešams tikai I2C atbalsts. Atbalsts Raspbe
DragonBoard 410c - Kā strādāt ar zema ātruma paplašināšanu: 8 soļi
DragonBoard 410c - Kā darbojas zema ātruma paplašināšana: šī apmācība ir par DragonBoard 410c zema ātruma paplašināšanu. Zema ātruma paplašināšanas ieejas un izejas (I/O) DragonBoard 410c ir: GPIO (vispārējas nozīmes ievade/izvade); MPP (daudzfunkcionāla tapa); SPI (Serial Peripheral Interface); I2C (
Kā strādāt ar Arduino un dažādām RGB LED: 3 soļi
Kā strādāt ar Arduino un dažādām RGB LED: Arduino ir pārsteidzoša maza ierīce. Bet viena no visbiežāk izmantotajām lietojumprogrammām šai jaudīgajai mazajai ierīcei bieži ir mirgojoša vai mirgojoša gaismas diode. Šī apmācība parādīs trīs veidus, kā strādāt ar RGB LED un Arduino. Pirmais veids ir izmantot vienkāršu
Super Ghetto barošanas poga manā Oneplus One (vajadzētu strādāt pie jebkura): 3 soļi
Super Ghetto barošanas poga manā Oneplus One (vajadzētu strādāt pie jebkura): Problēma: visas tālruņa pogas ir salauztas. To nomaiņa ir tikai pagaidu risinājums, jo man ir salauzts aizmugurējais vāks, un es nekur nevaru atrast aizvietotāju, kas nepārsniegtu lietotā OPO cenu, bet es sapratu, kāpēc gan nejaunināt, ja es