Mundarija:
- Ta'minotlar
- 1 -qadam: REST JSON Http (s) protokoli
- 2 -qadam: oqim
- 3 -qadam: boshqaruv paneli
- 4 -qadam: Import oqimi (loyiha, skript, va boshqalar)
- 5 -qadam: Hammasi qanday ishlaydi
- 6 -qadam: HTTP POST va GET
- 7 -qadam: tugma tugunlari
- 8 -qadam: Funktsiya tuguni
- 9 -qadam: JSON tuguni va in'ektsiya joyi
- 10 -qadam: Matn tuguni va disk raskadrovka tuguni
- 11 -qadam: Chiziq tuguni
- 12 -qadam: o'lchash tugunlari va bog'lanish tugunlari
- 13 -qadam: Mening ko'rsatmalarni o'qiganingiz uchun tashakkur
Video: Node-RED-da JSON bilan qanday ishlash kerak: 13 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Bu ko'rsatma sizga tugunli REDda JSON bilan ishlashni o'rgatadi. Men sizga json fayllarini http get va post orqali uzatish orqali tarmoqqa ulangan rozetkalarni qanday boshqarishni ko'rsataman. Va siz bu ma'lumotni keyinchalik JSON protokolini qo'llab -quvvatlaydigan har qanday qurilmani boshqarish uchun ishlatishingiz mumkin.
O'qitish uchun men NETIO 4All tarmog'idan foydalanaman, lekin xavotir olmang, sizga hech narsa sotib olishning hojati yo'q. NETIO -da siz foydalanishingiz mumkin bo'lgan ajoyib 4All onlayn demolari mavjud.
Ta'minotlar
NETIO 4All tarmoqqa ulangan powerocket yoki 4All onlayn demo:
Qizil tugun
1 -qadam: REST JSON Http (s) protokoli
Bu qism biroz texnik, lekin iltimos, menga sabr qiling. Agar men bu qismni tushuntirmagan bo'lsam, siz tugun-REDda yuboradigan json fayllaridagi qiymatlarni tushunishda muammolarga duch kelasiz.
Har bir chiqish uchun amallar (elektr rozetkasi):
Hamma M2M protokollarida NETIO rozetkalari individual chiqishlarga qo'llaniladigan bir xil amallardan foydalanadilar. Masalan, Toggle yoki Short Off amallari har qanday chiqishga yozilishi mumkin.
Biroq, Action o'zgaruvchisini faqat qiymatlarni yozish uchun ishlatish mumkin, uni joriy chiqish holatini o'qish uchun ishlatib bo'lmaydi.
Bu har bir chiqishda qo'llaniladigan amallar:
0 = Chiqish o'chirilgan (O'chirilgan)
1 = Chiqish yoqilgan (yoqilgan)
2 = Chiqish qisqa vaqtga o'chirilgan (qisqa O'chirish)
3 = Chiqish qisqa vaqt davomida yoqilgan (qisqa yoqilgan)
4 = Chiqish bir holatdan ikkinchisiga o'tkazildi (o'tish)
5 = Chiqish holati o'zgarmadi (o'zgarishsiz)
6 = E'tiborsiz
Misol - chiqish raqamini o'zgartirish uchun JSON fayli. 1:
{
"Chiqish": [{
"ID": 1, "Harakat": 4
}]
}
ID - bu raqam biz qaysi chiqishni ishlatishini ko'rsatadi
Amal - bu qism - bu chiqadigan harakat (masalan, 1 (Chiqishni yoqish))
2 -qadam: oqim
Va endi asosiy qism. Qizil tugunli muhit shunday ko'rinadi.
Biz URL API oqimini import qildik (Siz ko'rib turgan loyiha. Keyinroq men sizga oqimlarni va bu loyihani qanday import qilishni ko'rsataman) Bu loyiha ikki qismdan iborat:
- NETIO AN30 (JSON REST API) oqimi
- Boshqaruv paneli (dasturni ishlatishingiz mumkin bo'lgan grafik interfeys)
3 -qadam: boshqaruv paneli
Bu ko'rsatma uchun tugun-RED boshqaruv paneli shunday ko'rinadi. Agar xohlasangiz, uni sozlashingiz mumkin.
Loyihaning boshqaruv paneli 4 qismga bo'lingan:
- Qurilma holati - model, mac manzili yoki dasturiy ta'minot versiyasi kabi qurilma ma'lumotlarini ko'rsatadi.
- (POST) Tekshirish Chiqish 1 - Chiqish 1 ni boshqaruvchi 5 ta tugmachadan iborat. Har bir tugma har xil amallarni bajaradi
- (GET) O1 - O4 Chiqish holati - Bu qism sizning qurilmangizdagi har bir chiqishning hozirgi holatini ko'rsatadi.
- Qurilmalarni boshqarish - bu bo'limda siz NETIO 4Aall qurilmasidan joriy o'lchangan qiymatlarni ko'rsatadigan har xil grafik va o'lchagichlarni topishingiz mumkin.
4 -qadam: Import oqimi (loyiha, skript, va boshqalar)
Menyuda (o'ng yuqori burchakda) Import -ni, so'ngra clipboard -ni tanlang.
Keyin, quyidagi matnni ko'rsatilgan maydonga ko'chiring va Import tugmasini bosing.
Yo'qolgan tugunlarni o'rnatish
Tugunlar tanlangan oqimga yuklanadi. Xato xabari import qilinadigan tugunlar ro'yxati bilan ko'rsatilishi mumkin, lekin hali tugun-RED-ga o'rnatilmagan. Bunday holda, etishmayotgan tugunlarni o'rnatish kerak.
Agar tugunlar etishmayotgan bo'lsa, menyudan Palitraning boshqaruvini tanlang, O'rnatish -ni bosing va etishmayotgan tugunlarni toping va o'rnating.
Matnni import qilish:
[{"id": "56b9510c.98c6f", "type": "tab", "label": "NETIO AN30 (REST JSON)", "o'chirilgan": noto'g'ri, "ma'lumot": ""}, {"id" ":" 6a66b637.da1558 "," type ":" http so'rovi "," z ":" 56b9510c.98c6f "," ism ":" HTTP so'rovi (POST) "," usul ":" POST "," ret ": "txt", "url": "https://netio-4All.netio-products.com:8080/netio.json", "tls": "", "x": 430, "y": 100, "simlar":
5 -qadam: Hammasi qanday ishlaydi
Oqim asosan ikki qismga bo'linadi: POST va GET.
POST: O1 ga yozish
- Oqimdagi boshqaruv panelida yaratilgan beshta tugma asboblar panelida ko'rsatiladi.
- Boshqaruv panelida Chiqish 1 = ON tugmachasini bosgandan so'ng, yuk yuki netio.json fayliga o'rnatiladi, u chiqishni va harakatni bildiradi (har bir tugma uchun belgilanadi).
- HTTP so'rovi (POST) bloki netio.json faylini IP -manzilga so'rov sifatida yuboradi.
- Server javobi (holati) chiqish sifatida qaytariladi.
- Msg.payload bloki natijani HTTP so'rovidan (POST) ko'rsatadi.
Oling: O1 - O4 dan o'qish
- 1 soniyali takrorlash bloki bir soniya ichida HTTP so'rovi (GET) blokini faollashtiradi, bu esa o'z navbatida netio.jsonni GET so'rovi sifatida yuboradi va serverdan olingan soket holati bilan to'liq JSON faylini qaytaradi.
- JSON Parse bloki JSON faylini HTTP Request (GET) blokidan JSON Ob'ektiga o'zgartiradi, shunda JSON faylidagi xossalarni o'zgartirish mumkin bo'ladi.
- Funktsiya bloki JSON ob'ektining alohida qismlarini oladi va ularni keyinchalik foydalanish uchun msg ob'ektining xususiyatlariga aylantiradi.
- Joriy diagramma bloki msg.payload -ni msg ob'ektining msg. TotalCurrent xususiyatiga o'rnatadi, chunki keyingi joriy grafik (qurilma) bloki faqat msg.payload qiymatini ko'rsatishi mumkin.
- Boshqaruv panelida JSON ob'ektidan olingan msg ob'ektining tanlangan xususiyatlarini ko'rsatish uchun turli xil chiqish tugunlari amal qiladi.
Xabar ob'ekti va xabar to'lovi
Oddiy va aniq tushuntirish uchun bu erga qarang:
www.steves-internet-guide.com/node-red-mess…
6 -qadam: HTTP POST va GET
HTTP so'rovi (POST)
Bu tugun NETIO 4All qurilmasini boshqarish uchun netio.json buyruq faylini HTTP so'rovi (POST) sifatida yuboradi.
HTTP so'rovi (GET)
Bu tugun HTTP so'rovini (GET) yuboradi va holat javobini qaytaradi.
Oldindan to'ldirilgan manzil NETIO 4All onlayn demosiga ishora qiladi, bu erda siz ish stolida NETIO qurilmasi bo'lmagan holda ulanishni sinab ko'rishingiz mumkin.
netio-4all.netio-products.com
Bu tugunlarda o'z IP -manzilingizni o'rnatish mumkin; ammo, IP -ni HTTP -so'rov tugunlarida, POST -da va GET -da o'zgartirish kerak.
7 -qadam: tugma tugunlari
Tugma tugmachasini bosish netio.json faylini (o'ngdagi rasm) o'z ichiga olgan xabarni hosil qiladi, u keyin http post tugun orqali netio aqlli quvvat rozetkasiga yuboriladi.
8 -qadam: Funktsiya tuguni
Funktsiya tuguni - bu maxsus JavaScript funktsiyasini yozishga imkon beruvchi maxsus tugun.
Bu yo'riqnomada funktsiya tahlil qilingan JSON faylidan (hozirda JSON obyekti) qiymatlarni tanlaydi va ularni msg ob'ektining xususiyatlariga tayinlaydi.
Kod to'rt qismga bo'lingan:
- JSON ob'ektidan msg ob'ektining individual xususiyatlariga qiymatlarni belgilash
-
Tarmoqqa ulangan rozetka global o'lchovlarni qo'llab -quvvatlamasa, xato bilan ishlash
Agar tarmoq rozetkasi global qiymatlarni o'lchashni qo'llab-quvvatlamasa, Node-RED xatolarni ko'rsatadi, chunki bu funktsiya tegishli xususiyatni topa olmaydi, masalan. msg.payload. GlobalMeasure. Voltage, chunki u JSON ob'ektida bo'lmaydi. Bunday holda, msg ob'ektining xususiyati, masalan. msg. Voltaj 0 ga o'rnatiladi va xatolik aniqlanadi.
- Chiqish holati qiymatlarini belgilash
- Ko'rsatilgan chiqish holati ranglarining chiqish holatiga qarab ranglarini sozlash
9 -qadam: JSON tuguni va in'ektsiya joyi
JSON tuguni
JSON tuguni JSON faylini tahlil qiladi va uni JSON ob'ektiga aylantiradi.
Serverdan GET so'roviga javob sifatida HTTP so'rovi tugmasi NETIO 4x qurilmasining joriy holatini o'z ichiga olgan JSON faylini qaytaradi, lekin bu faqat matnli fayl, shuning uchun ma'lumotlar bilan ishlash uchun JSON fayli kerak. JSON ob'ektiga tahlil qilinadi.
Tugunni kiritish
Har soniyada bu tugun GET so'rovini yuboradigan HTTP so'rov tugunini faollashtiradi.
Natijada, boshqaruv panelidagi qiymatlar bir soniya davomida yangilanadi
10 -qadam: Matn tuguni va disk raskadrovka tuguni
Matn tuguni
Boshqaruv panelida matn maydonini ko'rsatadi. Bu ko'rsatmada matn tugunlari joriy, kuchlanish, model, proshivka yoki JSON versiyasini ko'rsatadi.
Yorliq asboblar panelida, Ism esa tugun-RED oqimida ko'rsatiladigan tugun nomi.
Nosozliklarni tuzatish tuguni
Xabar yukini ko'rsatadi.
11 -qadam: Chiziq tuguni
Bu tugun boshqaruv jadvalidagi yukning qiymatiga qarab joriy jadvalni tuzadi.
Bu tugun faqat foydali yuk qiymatiga qarab jadvallarni tuzishi mumkin.
Shu sababli, msg.payload -ni ko'rsatilishi kerak bo'lgan qiymatga o'rnatish uchun funktsional tugun ishlatiladi.
msg.payload = msg. TotalCurrent;
12 -qadam: o'lchash tugunlari va bog'lanish tugunlari
Ko'rsatkich tuguni
Bu tugun asboblar paneliga o'lchagich vidjetini qo'shadi.
Bu ko'rsatmada har bir o'lchagich msg ob'ektining bitta xususiyatini ko'rsatadi: kuchlanish [V], aniq [A], chastota [Hz] va umumiy haqiqiy quvvat faktori (TPF).
Bog'lanish tugunlari
Tugunlarni ulash va ulash tunnel kabi ishlaydi. Msg.payload tugunidagi havolaga keladi va havoladan chiqib ketadi.
Men uni oqimni biroz aniqroq va o'qishni osonlashtirish uchun ishlatardim.
13 -qadam: Mening ko'rsatmalarni o'qiganingiz uchun tashakkur
Umid qilamanki, siz mening darsimni yoqtirdingiz va umid qilamanki, yangi narsalarni o'rgandingiz.
Bu ko'rsatma men qilgan har xil qo'llanmaning qisqartirilgan versiyasidir
Asl qo'llanma uzoqroq va batafsilroq yo'naltirilgan va umuman yaxshiroq tuzilgan. Agar siz biror narsani tushunmagan bo'lsangiz yoki men biror narsani o'tkazib yubordim yoki etarli darajada tushuntirmadim deb o'ylasangiz, uni aniq topishingiz mumkin.
Men umidsizlikka tushmasligingizga va'da beraman
Asl:
Shuningdek, tugun-RED-dan turli xil foydalanish bo'yicha o'xshash qo'llanmalar mavjud, shuning uchun agar siz qiziqmoqchi bo'lsangiz, o'zingizni erkin o'rganing:
RED URL API bilan tugun-REDda ishlash
www.netio-products.com/en/application-notes/an29-node-red-ex-le-url-api-communication-with-netio-4x
Tugun-REDda REST XML bilan ishlash
www.netio-products.com/en/application-notes/an31-node-red-example-of-rest-xml-communication-with-netio-4x
Tugun-REDda TCP/Modbus bilan ishlash
Tez orada:)
Tavsiya:
Dragonboard-410c bilan Alexa bilan qanday ishlash kerak: 5 qadam
Alexa-ni Dragonboard-410c bilan qanday o'zaro bog'lash mumkin: Ushbu qo'llanmada siz Alexa-ni Dragonboard-410c-ga qanday joylashtirishni o'rganasiz. Ishni boshlashdan oldin, sizga kerak bo'lgan narsalarni taqdim qilaylik: Alexa Voice Service (AVS) - qurilmalaringiz bilan gaplashish imkonini beradi, siz bulutli alexa -ga kira olasiz
Tinusaur taxtasi bilan ishlash uchun Arduino IDE -ni qanday sozlash kerak: 3 qadam
Tinusaur platalari bilan ishlash uchun Arduino IDE -ni qanday sozlash kerak: bu Arduino IDE -ni Tinusaur platalari bilan ishlashga sozlash bo'yicha qisqacha qo'llanma. Asosan, uni Atmel ATtiny85/45/25 mikrokontrolderlari bilan ishlash. . Faqatgina farq shundaki, u taxtalar ro'yxatida Tinusau sifatida paydo bo'ladi
Alexa Dragonboard, Android ilovasi va qahva mashinasi bilan qanday ishlash kerak: 7 qadam
Qanday qilib Alexa Dragonboard, Android ilovasi va qahva mashinasi bilan o'zaro aloqada bo'lish mumkin: Ushbu qo'llanmada qahva mashinasini Alexa Dragonboard va Android ilovasi bilan ulash, integratsiya qilish va ishlatish uchun zarur qadamlar berilgan
Arduino va turli xil RGB Led -lar bilan qanday ishlash kerak: 3 qadam
Arduino va turli xil RGB LEDlari bilan qanday ishlash kerak: Arduino - bu ajoyib kichik qurilma. Biroq, bu kichik qurilmaning eng ko'p ishlatiladigan ilovalaridan biri bu tez -tez LEDni o'chirish yoki o'chirishdir, bu ko'rsatma sizga RGB Leds va Arduino bilan ishlashning uchta usulini ko'rsatadi. Birinchi usul - oddiy usuldan foydalanish
IPod bilan ishlash uchun Sony Ericsson dinamiklarini qanday o'zgartirish kerak: 4 qadam
IPod bilan ishlashda Sony Ericsson karnaylarini qanday o'zgartirish kerak. Men sizga ko'rsatma beraman, Sony Ericsson karnaylarini iPod, MP3 yoki naushnikli rozetkalar bilan ishlash uchun qanday o'zgartirish kerakligini ko'rsataman. Bu mening birinchi ko'rsatmam, shuning uchun sizga yoqdi deb umid qilaman! Uskunalar: diametri 2,5 mm bo'lgan har qanday kabel