Мазмұны:
- Жабдықтар
- 1 -қадам: JSON Http (s) протоколын REST
- 2 -қадам: ағын
- 3 -қадам: бақылау тақтасы
- 4 -қадам: Импорт ағыны (жоба, сценарий, т.б.)
- 5 -қадам: Барлығы қалай жұмыс істейді
- 6 -қадам: HTTP POST және GET
- 7 -қадам: түйін түйіндері
- 8 -қадам: Функционалды түйін
- 9 -қадам: JSON түйіні және түйінді инъекциялау
- 10 -қадам: Мәтіндік түйін және жөндеу түйіні
- 11 -қадам: Диаграмма түйіні
- 12 -қадам: өлшеу торабы мен сілтеме түйіндері
- 13 -қадам: Менің нұсқаулықты оқығаныңыз үшін рахмет
Бейне: JSON-мен Node-RED-те қалай жұмыс істеу керек: 13 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:24
Бұл нұсқаулық сізге JSON-мен RED түйінінде жұмыс істеуді үйретеді. Мен сізге желілік розеткаларды json файлдарын http алу және жіберу арқылы қалай басқаруға болатынын көрсетемін. Сіз бұл білімді кейінірек JSON протоколын қолдайтын кез келген құрылғыны басқару үшін пайдалана аласыз.
Оқыту мақсатында мен NETIO 4All желілік розеткасын қолданамын, бірақ уайымдамаңыз, сізге ештеңе сатып алудың қажеті жоқ. NETIO -да сіз қолдана алатын таңғажайып 4All онлайн демо нұсқасы бар.
Жабдықтар
NETIO 4All желілік powerocket немесе 4All онлайн демо:
Түйін-ҚЫЗЫЛ
1 -қадам: JSON Http (s) протоколын REST
Бұл бөлік сәл техникалық, бірақ маған шыдаңыз. Егер мен бұл бөлікті түсіндірмесем, онда біз түйін-ҚЫЗЫЛ арқылы жіберетін json файлдарындағы мәндерді түсінуде қиындықтар туындауы мүмкін.
Әр шығысқа қолданылатын әрекеттер (электр розеткасы):
Барлық M2M протоколдарында NETIO розеткалары жеке шығуларға қолдануға болатын әрекеттерді қолданады. Мысалы, кез келген шығысқа Toggle немесе Short Off әрекетін жазуға болады.
Дегенмен, Action айнымалы мәндерді жазу үшін ғана қолданыла алады, оны ағымдағы шығыс күйін оқу үшін қолдануға болмайды.
Бұл әр шығысқа қолдануға болатын әрекеттер:
0 = шығыс өшірулі (өшірулі)
1 = Шығу қосылды (Қосулы)
2 = шығыс қысқа уақытқа өшірілді (қысқа өшіру)
3 = шығыс қысқа уақытқа қосылды (қысқа қосулы)
4 = Шығу бір күйден екінші күйге ауыстырылды (ауысу)
5 = Шығу күйі өзгеріссіз (өзгеріссіз)
6 = Еленбейді
Мысал - шығыс нөмірін ауыстыру үшін JSON файлы. 1:
{
«Шығу»: [{
«Идентификатор»: 1, «Әрекет»: 4
}]
}
Идентификатор - бұл сан қандай шығыс қолданылатынын көрсетеді
Әрекет - бұл бөлік - бұл шығарылатын әрекет (мысалы, 1 (Шығуды қосу))
2 -қадам: ағын
Ал енді негізгі бөлім. ҚЫЗЫЛ түйін түйіні осылай көрінеді.
Бізде URL API ағыны импортталды (Сіз көріп отырған жоба. Кейінірек мен сізге ағындарды және бұл жобаны импорттауды көрсетемін) Бұл жоба екі бөліктен тұрады:
- NETIO AN30 (JSON REST API) ағыны
- Бақылау тақтасы (бағдарламаны басқаруға болатын графикалық интерфейс)
3 -қадам: бақылау тақтасы
Бұл нұсқаулыққа арналған RED түйініндегі бақылау тақтасы осылай көрінеді. Егер сіз өзіңіздің талғамыңызға сәйкес келсе, оны реттей аласыз.
Бұл жобаның бақылау тақтасы 4 бөлікке бөлінеді:
- Device Status - құрылғы туралы ақпарат, мысалы, модель, mac мекенжайы немесе микробағдарлама нұсқасы.
- (POST) Басқару шығысы 1 - Шығуды басқаратын 5 түйме бар. Әр түйме әр түрлі әрекетті орындайды
- (GET) O1 - O4 Шығу күйлері - Бұл бөлім сіздің құрылғыңыздан шыққан әрбір шығудың ағымдағы күйін көрсетеді.
- Құрылғыны басқару - бұл бөлімде сіз NETIO 4Aall құрылғысынан ағымдағы өлшенген мәндерді көрсететін графиктер мен өлшегіштердің барлық түрін таба аласыз.
4 -қадам: Импорт ағыны (жоба, сценарий, т.б.)
Мәзірде (оң жақ жоғарғы бұрышта) Импорттауды, содан кейін Алмасу буферін таңдаңыз.
Содан кейін төмендегі мәтінді көрсетілген өріске көшіріп, Импорттау түймешігін басыңыз.
Жетіспейтін түйіндерді орнату
Түйіндер таңдалған ағынға жүктеледі. Қате туралы хабар импортталатын, бірақ әлі түйін-ҚЫЗЫЛ-ға орнатылмаған түйіндердің тізімімен көрсетілуі мүмкін. Бұл жағдайда жетіспейтін түйіндерді орнату қажет.
Егер түйіндер жетіспесе, мәзірден Палитраны басқару пәрменін таңдаңыз, Орнату түймешігін басып, жоқ түйіндерді тауып орнатыңыз.
Мәтінді импорттау:
[{«id»: «56b9510c.98c6f», «type»: «tab», «label»: «NETIO AN30 (REST JSON)», «ажыратылған»: жалған, «ақпарат»: «»}, {«id «:» 6a66b637.da1558 «,» type «:» http сұранысы «,» z «:» 56b9510c.98c6f «,» name «:» HTTP сұранысы (POST) «,» әдіс «:» POST «,» ret «: «txt», «url»: «https://netio-4All.netio-products.com:8080/netio.json», «tls»: «», «x»: 430, «y»: 100, «сымдар»:
5 -қадам: Барлығы қалай жұмыс істейді
Ағын негізінен екі бөлікке бөлінеді: POST және GET.
POST: O1 -ге жазу
- Бақылау тақтасында ағымдағы бес түйме бақылау тақтасында көрсетіледі.
- Бақылау тақтасындағы Output 1 = ON түймешігін басқаннан кейін, жүктеме netio.json файлына орнатылады, ол шығыс пен әрекетті көрсетеді (әр түйме үшін анықталған).
- HTTP сұранысы (POST) блогы netio.json файлын IP мекенжайына сұраныс ретінде жібереді.
- Сервер жауабы (күйі) шығыс ретінде қайтарылады.
- Msg.payload блогы нәтижені HTTP сұрауынан (POST) көрсетеді.
Алу: O1 - O4 аралығында оқу
- 1 секунд қайталау блогы бір секунд уақыт ішінде HTTP сұранысы (GET) блогын іске қосады, ол өз кезегінде netio.json файлын GET сұрауы ретінде жібереді және серверден алынған ұяшық күйі бар толық JSON файлын қайтарады.
- JSON Parse блогы JSON файлын HTTP Request (GET) блогынан JSON объектісіне айналдырады, осылайша JSON файлындағы қасиеттерді басқаруға болады.
- Функционалды блок JSON объектісінің жекелеген бөліктерін алады және оларды кейін пайдалану үшін msg объектісінің қасиеттеріне айналдырады.
- Ағымдағы диаграмма блогы msg.payload файлын msg. TotalCurrent қасиетіне орнатады, себебі келесі ағымдағы диаграмма (құрылғы) тек msg.payload мәнін көрсете алады.
- Басқару тақтасында JSON объектісінен алынған msg объектісінің таңдалған қасиеттерін көрсету үшін әр түрлі шығыс түйіндері орындалады.
Хабарлама объектісі және хабарлама жүктемесі
Қарапайым және қысқаша түсініктеме алу үшін мына жерден қараңыз:
www.steves-internet-guide.com/node-red-mess…
6 -қадам: HTTP POST және GET
HTTP сұрауы (POST)
Бұл түйін NETIO 4All құрылғысын басқару үшін netio.json командалық файлын HTTP сұранысы (POST) ретінде жібереді.
HTTP сұрауы (GET)
Бұл түйін HTTP сұрауын (GET) жібереді және күйге жауапты қайтарады.
Алдын ала толтырылған мекен-жай NETIO 4All онлайн-демонстрациясын көрсетеді, онда сіз жұмыс үстелінде NETIO құрылғысыз қосылымды тексере аласыз.
netio-4all.netio-products.com
Бұл түйіндерде жеке IP -адресті орнатуға болады; алайда IP HTTP сұрау түйіндерінде де, POST -та да, GET -те де өзгеруі керек.
7 -қадам: түйін түйіндері
Түймешік түйінін басу netio.json файлы (оң жақ сурет) бар хабарды шығарады, содан кейін http пост торабы арқылы netio smart power розеткасына жіберіледі.
8 -қадам: Функционалды түйін
Функционалды түйін - бұл реттелетін JavaScript функциясын жазуға мүмкіндік беретін арнайы түйін.
Бұл нұсқаулықта функция талданған JSON файлынан (қазір JSON нысаны) мәндерді таңдайды және оларды msg объектісінің қасиеттеріне тағайындайды.
Код төрт бөлімге бөлінеді:
- JSON объектісінен msg объектісінің жеке қасиеттеріне мәндерді тағайындау
-
Желілік розетка жаһандық өлшемдерді қолдамайтын жағдайда қатені өңдеу
Егер желідегі розетка жаһандық мәндерді өлшеуді қолдамаса, Node-RED қателерді көрсетеді, себебі бұл функция сәйкес қасиетті таба алмайды, мысалы. msg.payload. GlobalMeasure. Voltage, себебі ол JSON нысанында болмайды. Бұл жағдайда msg объектісінің қасиеті, мысалы. msg. Voltage, 0 мәніне орнатылады және қате өңделеді.
- Шығу күйінің мәндерін тағайындау
- Шығару күйлеріне сәйкес шығыс күйінің мәндерінің түстерін орнату
9 -қадам: JSON түйіні және түйінді инъекциялау
JSON түйіні
JSON түйіні JSON файлын талдайды және оны JSON нысанына айналдырады.
Серверден GET сұрауына жауап ретінде HTTP сұрау түйіні NETIO 4x құрылғысының ағымдағы күйі бар JSON файлын қайтарады, бірақ ол тек мәтіндік файл, сондықтан деректермен жұмыс істеу үшін JSON файлы қажет. JSON нысанына талдау қажет.
Түйінді енгізіңіз
Әр секунд сайын бұл түйін GET сұранысын жіберетін HTTP сұрау түйінін белсендіреді.
Нәтижесінде, бақылау тақтасындағы мәндер бір секундқа жаңартылады
10 -қадам: Мәтіндік түйін және жөндеу түйіні
Мәтіндік түйін
Бақылау тақтасында мәтіндік өрісті көрсетеді. Бұл нұсқаулықта мәтіндік түйіндер токты, кернеуді, модельді, микробағдарлама нұсқасын немесе JSON нұсқасын көрсетеді.
Жапсырма бақылау тақтасында көрсетіледі, ал атау-Node-RED ағынында көрсетілетін түйін атауы.
Түзету түйіні
Хабарлама жүктемесін көрсетеді.
11 -қадам: Диаграмма түйіні
Бұл түйін бақылау тақтасындағы ағымдағы диаграмманы пайдалы жүктеме мәніне сәйкес салады.
Бұл түйін пайдалы жүктеме мәніне сәйкес диаграммаларды ғана құра алады.
Осы себепті, msg.payload жүктелуін көрсету қажет мәнге орнату үшін функция түйіні қолданылады.
msg.payload = msg. TotalCurrent;
12 -қадам: өлшеу торабы мен сілтеме түйіндері
Өлшеу торабы
Бұл түйін бақылау тақтасына көрсеткіш виджетін қосады.
Бұл нұсқаулықта әр өлшегіш хабарлама объектісінің бір қасиетін бейнелейді: кернеу [V], қисық [A], жиілік [Гц] және жалпы шынайы қуат факторы (TPF).
Сілтеме түйіндері
Түйіндерді қосу және байланыстыру туннель сияқты жұмыс істейді. Msg.payload түйіндегі сілтемеге келіп, сілтемеден шығу түйінінен шығады.
Мен оны ағынды біршама түсінікті және оқуды жеңілдету үшін қолдандым.
13 -қадам: Менің нұсқаулықты оқығаныңыз үшін рахмет
Сізге менің үйреткенім ұнады деп үміттенемін және жаңа нәрсені үйрендіңіз деп үміттенемін.
Бұл нұсқаулық - мен жасаған әр түрлі нұсқаулықтың қысқартылған нұсқасы
Түпнұсқа нұсқаулық ұзақ және егжей -тегжейлі бағытталған және әдетте жақсы құрылымдалған. Егер сіз бір нәрсені түсінбеген болсаңыз немесе мені бірдеңені жіберіп алдым немесе жеткілікті түсіндірмедім деп ойласаңыз, онда сіз оны міндетті түрде сол жерден таба аласыз.
Сізге көңіліңіз қалмайтынына уәде беремін
Түпнұсқа:
Сондай-ақ, NED-RED-тің әр түрлі қолданылуы туралы ұқсас нұсқаулықтар бар, сондықтан сізді қызықтыратын болсаңыз:
RED URL API түйінінде-RED-те жұмыс істеу
www.netio-products.com/kz/application-notes/an29-node-red-example-of-url-api-communication-with-netio-4x
RED түйінінде REST XML-мен жұмыс істеу
www.netio-products.com/kz/application-notes/an31-node-red-example-of-rest-xml-communication-with-netio-4x
ҚЫЗЫЛ түйінінде TCP/Modbus-пен жұмыс
Жақында болады:)
Ұсынылған:
Tinusaur тақталарымен жұмыс істеу үшін Arduino IDE қалай орнатылады: 3 қадам
Tinusaur тақталарымен жұмыс істеу үшін Arduino IDE -ді қалай орнату керек: Бұл Arduino IDE -ді Tinusaur тақталарымен жұмыс істеу үшін қалай орнатуға болатыны туралы қысқаша нұсқаулық. Бұл оның Atmel ATtiny85/45/25 микроконтроллерлерімен жұмыс істеуін қамтамасыз етеді. . Жалғыз айырмашылық - бұл тақталар тізімінде Tinusau ретінде пайда болады
Arduino және әр түрлі RGB шамдарымен қалай жұмыс істеу керек: 3 қадам
Arduino және әр түрлі RGB шамдарымен қалай жұмыс істеу керек: Arduino - бұл таңғажайып кішкентай құрылғы. Бірақ бұл қуатты құрылғы үшін жиі қолданылатын қосымшалардың бірі - жарықдиодты жыпылықтау немесе жыпылықтау.Осы оқулықта RGB Leds және Arduino -мен жұмыс істеудің үш әдісі көрсетілген. Бірінші әдіс - қарапайым
Жабайы дыбыстар Қалай істеу керек :: 7 қадам
Жабайы дыбыстар қалай: :: Бұл I.M.Ps немесе интерактивті медиа жобаларға қадамдық кіріспе. Бұл " Қалай " Мен сізге интерактивті суретті қалай жасау керектігін көрсетемін. Сізге қажет материалдар: Vellum Paper Copper Brad Fasteners Tynker (Tynker аудио файлдары
Ағынды қалай өлшеуге болады және неге мұны істеу керек?: 4 қадам (суреттермен)
Ағынды қалай өлшеуге болады және неге мұны істеу керек?: Көптеген өндірушілер сіздің жобаңыздың ағымдағы ұтыс ойынының қаншалықты маңызды екенін білмейді, не үшін мұны білуіңіз керек. Бұл оқулықта мен сізге жобаның ағымдағы ұтысын қалай өлшеу керектігін және мұны білу неге маңызды екенін түсіндіремін. Т
IPod -пен жұмыс істеу үшін Sony Ericsson динамиктерін қалай өзгерту керек: 4 қадам
IPod -пен жұмыс істеу үшін Sony Ericsson динамиктерін қалай өзгерту керек. Бұл нұсқаулықта мен сізге Sony Ericsson динамиктерінің жұптарын iPod, MP3 немесе құлаққап ұясы бар кез келген нәрсемен жұмыс жасауды қалай көрсететінін көрсетемін! Бұл менің бірінші нұсқаулық, сондықтан сізге ұнайды деп сенемін! Құрал -жабдықтар: диаметрі 2,5 мм болатын кез келген кабель