NodeRed ialah proyek open source dari IBM yang dimulai pada 2013. NodeRed memanfaatkan konsep pemrograman visual berbasis flow (low-code programming) untuk aplikasi yang bersifat event-driven. NodeRed dapat menghubungkan berbagai peralatan hardware, API, dan online services, serta banyak digunakan untuk membangun solusi Internet of Things (IoT) [1].

NodeRed: low cost prototyping tool
NodeRed juga menarik perhatian kalangan industri karena dapat digunakan untuk membuat prototipe sistem IoT di industri dengan biaya murah [2]. Saat dibutuhkan suatu proof of concept (PoC) dari sistem baru yang dikembangkan, daripada membuat program dari scratch dengan bahasa pemrograman dasar, jauh lebih cepat untuk membuatnya menggunakan NodeRed. Setelah PoC mendapatkan persetujuan, perusahaan dapat membuat aplikasi sebenarnya yang lebih handal dan cepat.
Fungsi NodeRed untuk aplikasi Industrial IoT
Apa yang bisa dilakukan NodeRed untuk aplikasi industrial IoT? Berikut ini rangkuman dari sumber yang saya dapatkan [3]:
- Mengambil data dari beberapa mesin produksi dengan berbagai protokol (OPC/UA, Modbus, S7, HTTP, TCP, dan lain – lain)
- Memproses dan menyatukan data points ke dalam data model yang standar
- Integrasi ke dalam sistem yang sudah ada, sesuai kebutuhan customer (misal: sistem MES atau ERP seperti SAP atau Oracle)
- Menggabungkan data dari berbagai mesin dan aksi pemicunya (machine to machine communication atau M2M)
- Membuat dashboard interaktif skala kecil dan sesuai kebutuhan pelanggan
Berikut ini penjelasan singkat untuk masing – masing poin di atas.
1. Mengambil data dari beberapa mesin produksi dengan berbagai protokol
Developer NodeRed (beserta komunitas yang aktif) telah menyediakan berbagai macam Node untuk berbagai keperluan. Pengguna dapat melakukan instalasi Node baru dengan mudah. Misalnya, saya pernah menggunakan NodeRed untuk koneksi dengan PLC Siemens S7 via S7 protocol menggunakan node: node-red-contrib-s7, dan koneksi dengan PLC Schneider atau Modicon via Modbus menggunakan node: node-red-contrib-modbus.
Sumber berikut menjelaskan berbagai node yang sering digunakan untuk aplikasi industri [4]:
- Protokol Modbus
- Protokol OPC UA
- Protokol BACNet
- Protokol MQTT
- Database: MySQL, MongoDB and InfluxDB
- Cloud service: AWS, Google Cloud and Microsoft Azure
- Node-RED Dashboard
2. Memproses dan menyatukan data points ke dalam data model yang standar
Dengan NodeRed kita dapat memanipulasi ataupun menyatukan data memanfaatkan node bawaan NodeRed seperti node \”change\” atau \”function\”. Di node \”function\” kita dapat menggunakan kode JavaScript untuk memanipulasi message yang diberikan dari node lain.
3. Integrasi ke dalam sistem yang sudah ada, sesuai kebutuhan customer
Kita dapat menghubungkan sistem yang dibuat dengan NodeRed ke sistem lain yang sudah ada, umumnya menggunakan REST API. Misalnya, saat ini salah satu mahasiswa bimbingan saya sedang berusaha menghubungkan PLC dengan ERP Odoo.
4. Menggabungkan data dari berbagai mesin dan aksi pemicunya
NodeRed juga dapat digunakan untuk memfasilitasi pertukaran data dalam machne to machine communication (M2M). Misalnya, saat ini mahasiswa bimbingan saya yang lain sedang menghubungkan sistem smart home dengan sistem robot (dalam environment ROS) memanfaatkan MQTT node di NodeRed
5. Membuat dashboard interaktif skala kecil
Salah satu kelemahan NodeRed ialah tampilan dashboard bawaan yang masih cukup sederhana dan kurang fleksibel. Namun demikian, untuk skala kecil, seringkali tampilan tersebut sudah cukup. Pengguna juga bisa memanfaatkan node dashboard lain untuk mendapatkan variasi tampilan.
Sebagai catatan, untuk saat ini, cukup banyak mahasiswa bimbingan saya di Teknik Elektro UK Petra yang memanfaatkan NodeRed dalam proyek Tugas Akhir maupun magang industri.
Sumber: