Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasikan alur publikasi data
Aliran publikasi data menggunakan tiga node untuk membuat pipeline yang mengirimkan data industri Anda ke cloud. Alur ini penting untuk memungkinkan analitik berbasis cloud, penyimpanan jangka panjang, dan integrasi dengan layanan lain. AWS Pertama, data perangkat simulasi dikirim ke broker SiteWise Edge MQTT. Gateway mengambil data dari broker yang memungkinkan transmisi ke AWS IoT SiteWise cloud, di mana Anda dapat memanfaatkan kemampuan analitik dan visualisasi yang kuat.
-
Input data - Menerima data perangkat dari peralatan industri atau simulator
-
Penerjemah data untuk AWS IoT SiteWise - Menerjemahkan data ke AWS IoT SiteWise format untuk memastikan kompatibilitas dengan gateway SiteWise Edge
-
Penerbit MQTT - Menerbitkan data ke broker SiteWise Edge MQTT, membuatnya tersedia untuk konsumen lokal dan cloud

Konfigurasikan simpul input data
Dalam contoh ini, simpul input data menggunakan perangkat turbin angin simulasi yang menghasilkan data kecepatan angin. Node ini berfungsi sebagai titik masuk untuk data industri Anda, apakah itu berasal dari sumber simulasi (seperti dalam contoh kami) atau dari peralatan industri aktual di lingkungan produksi.
Kami menggunakan format JSON khusus untuk muatan data guna menyediakan struktur standar yang bekerja secara efisien dengan alat pemrosesan lokal dan layanan cloud. AWS IoT SiteWise Format ini mencakup metadata penting seperti stempel waktu dan indikator kualitas di samping nilai pengukuran aktual, memungkinkan manajemen data yang komprehensif dan pelacakan kualitas di seluruh pipeline Anda. Impor node injeksi untuk menerima data simulasi dalam format JSON standar ini dengan stempel waktu, indikator kualitas, dan nilai.
Untuk informasi selengkapnya tentang node-Red inject node, lihat bagian Inject di Dokumentasi
Simulator turbin menghasilkan data kecepatan angin setiap detik dalam format JSON standar ini:
contoh : Muatan data turbin
{ name: string, // Property name/identifier timestamp: number, // Epoch time in nanoseconds quality: "GOOD" | "UNCERTAIN" | "BAD", value: number | string | boolean }
Format ini memberikan beberapa manfaat:
-
name
Bidang mengidentifikasi properti atau pengukuran tertentu, memungkinkan Anda melacak beberapa titik data dari perangkat yang sama -
timestamp
Dalam nanodetik memastikan pelacakan waktu yang tepat untuk analisis historis yang akurat -
quality
Indikator membantu Anda memfilter dan mengelola data berdasarkan keandalannya -
value
Bidang fleksibel mendukung tipe data yang berbeda untuk mengakomodasi berbagai output sensor
contoh : Menyuntikkan simpul simulator turbin
[ { "id": "string", "type": "inject", "z": "string", "name": "
Turbine Simulator
", "props": [ { "p": "payload.timestamp", "v": "", "vt": "date" }, { "p": "payload.quality", "v": "GOOD", "vt": "str" }, { "p": "payload.value", "v": "$random()", "vt": "jsonata" }, { "p": "payload.name", "v": "/Renton/WindFarm/Turbine/WindSpeed
", "vt": "str" } ], "repeat": "1", "crontab": "", "once": false, "onceDelay": "", "topic": "", "x": 270, "y": 200, "wires": [ [ "string" ] ] } ]
Konfigurasikan node untuk terjemahan data
Gateway SiteWise Edge membutuhkan data dalam format tertentu untuk memastikan kompatibilitas dengan AWS IoT SiteWise cloud. Node penerjemah adalah komponen penting yang mengubah data input Anda ke format AWS IoT SiteWise payload yang diperlukan. Langkah penerjemahan ini memastikan bahwa data industri Anda dapat diproses, disimpan, dan kemudian dianalisis dengan benar di lingkungan AWS IoT SiteWise cloud.
Dengan menstandarisasi format data pada tahap ini, Anda mengaktifkan integrasi antara perangkat edge dan layanan cloud tempat Anda dapat menggunakan pemodelan aset, analitik, dan kemampuan visualisasi. Gunakan struktur ini:
contoh : Struktur muatan untuk penguraian data SiteWise Edge
{ "propertyAlias": "string", "propertyValues": [ { "value": { "booleanValue": boolean, "doubleValue": number, "integerValue": number, "stringValue": "string" }, "timestamp": { "timeInSeconds": number, "offsetInNanos": number }, "quality": "GOOD" | "UNCERTAIN" | "BAD", }] }
catatan
propertyAlias
Cocokkan dengan hierarki topik MQTT Anda (misalnya,). /Renton/WindFarm/Turbine/WindSpeed
Ini memastikan bahwa data Anda terkait dengan properti aset yang benar di AWS IoT SiteWise. Untuk informasi selengkapnya, lihat konsep “Alias aliran data” diAWS IoT SiteWise konsep.
-
Impor node fungsi contoh untuk terjemahan AWS IoT SiteWise payload. Fungsi ini menangani konversi dari format input standar Anda ke format AWS IoT SiteWise-kompatibel, memastikan pemformatan stempel waktu yang tepat, indikator kualitas, dan pengetikan nilai.
[ { "id": "string", "type": "function", "z": "string", "name": "Translate to SiteWise payload", "func": "let input = msg.payload;\nlet output = {};\n\noutput[\"propertyAlias\"] = input.name;\n\nlet propertyVal = {}\n\nlet timeInSeconds = Math.floor(input.timestamp / 1000);\nlet offsetInNanos = (input.timestamp % 1000) * 1000000;\n\npropertyVal[\"timestamp\"] = {\n \"timeInSeconds\": timeInSeconds,\n \"offsetInNanos\": offsetInNanos,\n};\n\npropertyVal[\"quality\"] = input.quality\n\nlet typeNameConverter = {\n \"number\": (x) => Number.isInteger(x) ? \"integerValue\" : \"doubleValue\",\n \"boolean\": (x) => \"booleanValue\",\n \"string\": (x) => \"stringValue\", \n}\nlet typeName = typeNameConverter[typeof input.value](input.value)\npropertyVal[\"value\"] = {}\npropertyVal[\"value\"][typeName] = input.value;\n\noutput[\"propertyValues\"] = [propertyVal]\n\nreturn {\n payload: JSON.stringify(output)\n};", "outputs": 1, "timeout": "", "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 530, "y": 200, "wires": [ [ "string" ] ] } ]
-
Verifikasi bahwa JavaScript kode menerjemahkan data kecepatan angin dengan benar. Fungsi ini melakukan beberapa tugas penting:
-
Mengekstrak nama properti dari input dan menetapkannya sebagai PropertyAlias
-
Mengonversi stempel waktu dari milidetik ke format detik dan nanodetik yang diperlukan
-
Mempertahankan indikator kualitas untuk pelacakan keandalan data
-
Secara otomatis mendeteksi jenis nilai dan memformatnya sesuai dengan persyaratan AWS IoT SiteWise
-
-
Hubungkan node ke alur Anda, hubungkan antara node input data dan penerbit MQTT.
Untuk panduan tentang menulis fungsi khusus untuk kebutuhan bisnis Anda, lihat Fungsi Menulis
Konfigurasikan penerbit MQTT
Setelah terjemahan, data siap untuk dipublikasikan ke broker SiteWise Edge MQTT.
Konfigurasikan penerbit MQTT dengan pengaturan ini untuk mengirim data ke broker Edge MQTT: SiteWise
Untuk mengimpor node keluar MQTT
-
Impor node konfigurasi MQTT keluar menggunakan.
"type": "mqtt out"
Node keluar MQTT memungkinkan Anda berbagi konfigurasi broker. -
Masukkan pasangan nilai kunci untuk informasi yang relevan dengan koneksi broker MQTT dan perutean pesan.
Impor mqtt out
simpul contoh.
[ { "id": "string", "type": "mqtt out", "z": "string", "name": "Publish to MQTT broker", "topic": "
/Renton/WindFarm/Turbine/WindSpeed
", "qos": "1", "retain": "", "respTopic": "", "contentType": "", "userProps": "", "correl": "", "expiry": "", "broker": "string", "x": 830, "y": 200, "wires": [] }, { "id": "string", "type": "mqtt-broker", "name": "emqx", "broker": "127.0.0.1", "port": "1883", "clientid": "", "autoConnect": true, "usetls": false, "protocolVersion": "5", "keepalive": 15, "cleansession": true, "autoUnsubscribe": true, "birthTopic": "", "birthQos": "0", "birthPayload": "", "birthMsg": {}, "closeTopic": "", "closePayload": "", "closeMsg": {}, "willTopic": "", "willQos": "0", "willPayload": "", "willMsg": {}, "userProps": "", "sessionExpiry": "" } ]
Contoh MQTT out node menciptakan koneksi MQTT dengan informasi berikut:
-
Server:
127.0.0.1
-
Pelabuhan:
1883
-
Protokol:
MQTT V5
Kemudian, node keluar MQTT mengonfigurasi perutean pesan dengan informasi berikut:
-
Topik:
/Renton/WindFarm/Turbine/WindSpeed
-
QoS:
1
Menyebarkan dan memverifikasi node
Setelah mengonfigurasi tiga node aliran publikasi data, ikuti langkah-langkah ini untuk menyebarkan aliran dan memverifikasi bahwa data sedang dikirim dengan benar ke AWS IoT SiteWise
Untuk menyebarkan dan memverifikasi koneksi
-
Connect ketiga node seperti yang ditunjukkan dalam aliran data publish.
-
Pilih Deploy untuk menerapkan semua perubahan koneksi node.
-
Arahkan ke AWS IoT SiteWise konsol
dan pilih Aliran data. -
Pastikan awalan Alias dipilih di menu dropdown. Kemudian, cari
/Renton/WindFarm/Turbine/WindSpeed
alias.
Jika Anda melihat alias yang benar dalam pencarian Anda, Anda telah menerapkan aliran dan transmisi data yang diverifikasi.