Sistem pemantauan 7 mesin larik CNC melalui OPC UA dan rekod nilai ukuran penggelek pada Grafana untuk kilang pengeluaran di Thailand
Pelanggan: Kumpulan pembuatan besar di Thailand
Kes ini ialah sistem yang menghimpunkan status 7 mesin larik CNC dan nilai ukuran penggelek pada papan pemuka Grafana di pelayan dalaman kilang. Node-RED membaca nilai mesin melalui OPC UA setiap 5 saat dan menulis nilai ukuran daripada tablet kembali ke pangkalan data Roller sedia ada milik kilang. Kami menyerahkan sistem bersama dokumen penutupan projek kepada kilang pengeluaran di Thailand pada September 2026.

- 7 mesin larik CNCMenghantar status melalui OPC UA
- Node-REDMembaca nilai mesin dan berfungsi sebagai API
- InfluxDB + pangkalan data Roller sedia adaMS SQL Server
- Grafana, halaman Overview dan InputMenerima nilai ukuran daripada angkup vernier digital pada tablet
- Industri
- Pembuatan am
- Tahun
- 2025–2026
- Skop pekerjaan
- 2 halaman Grafana (Overview dan Input) bersama Custom Plugin untuk menghantar data, API pada Node-RED yang menghubungkan Grafana dengan pangkalan data MS SQL Server, pembacaan data 7 mesin CNC melalui OPC UA setiap 5 saat ke dalam InfluxDB, pengujian sistem dan penyediaan dokumen projek. Termasuk kerja tambahan pada tahun 2026: analisis dan penulisan arahan pengambilan data (Query) daripada pangkalan data sedia ada milik kilang.
Ringkasan
- Kami menghubungkan 7 mesin larik CNC di barisan pelarikan penggelek melalui OPC UA supaya Node-RED membaca nilai setiap 5 saat dan menyimpannya ke dalam InfluxDB pada pelayan dalaman kilang.
- Halaman Overview pada Grafana memaparkan lampu status motor utama, status program, Alarm dan Cycle Time (masa setiap kitaran kerja) dalam minit bagi setiap mesin pada satu skrin.
- Bahagian QC (pemeriksaan kualiti) merekod diameter, lebar dan nilai kesipian penggelek melalui halaman Input pada tablet, dan API pada Node-RED menulis nilai itu kembali ke pangkalan data Roller sedia ada pada MS SQL Server.
- Semasa projek, pelanggan bersetuju untuk memaparkan Cycle Time menggantikan masa siap kerja kerana OPC UA tidak dapat menghantar data yang digunakan untuk pengiraan daripada G-code (set arahan yang digunakan mesin CNC untuk melarik bahan kerja).
- Kerja utama bermula pada tahun 2025, pelanggan menempah kerja tambahan analisis pangkalan data sedia ada pada tahun 2026, dan kami menyerahkan sistem bersama dokumen penutupan projek pada September 2026.
Masalah di tapak
Status 7 mesin larik CNC di barisan pelarikan penggelek (Roller) terdapat dalam perisian I-Link yang disambungkan pada mesin, manakala saiz penggelek yang diukur selepas pelarikan perlu direkodkan dalam pangkalan data Roller sedia ada milik kilang pada MS SQL Server. Pasukan pelanggan mahu melihat status mesin, saiz penggelek dan masa pengeluaran dari satu tempat, serta mahu nilai dalam pangkalan data sepadan dengan saiz yang benar-benar diukur.
Apa yang kami lakukan
Kami memasang Node-RED (alat penyambungan dan pemprosesan data) pada pelayan dalaman kilang untuk membaca nilai mesin CNC melalui OPC UA (piawaian bersama untuk pertukaran data mesin) setiap 5 saat, kemudian menyimpannya ke dalam InfluxDB (pangkalan data untuk data mengikut masa). Grafana (program pembinaan papan pemuka) mempunyai 2 halaman, iaitu halaman Overview untuk melihat status mesin dan halaman Input pada tablet untuk merekod nilai ukuran daripada angkup vernier digital. Nilai ukuran ditulis kembali ke pangkalan data Roller sedia ada melalui API (saluran untuk program bertukar data) yang kami bina pada Node-RED.
Hasil
Kami menyerahkan sistem bersama dokumen penutupan projek pada September 2026. Halaman Overview memaparkan status, Alarm dan Cycle Time (masa setiap kitaran kerja) bagi kesemua 7 mesin CNC pada satu skrin, dan nilai ukuran penggelek daripada halaman Input ditulis kembali ke pangkalan data Roller sedia ada.
Latar belakang masalah
Cabaran kes ini ialah melihat status 7 mesin larik CNC (mesin larik yang dikawal oleh komputer) dan nilai ukuran penggelek dari satu tempat. Kedua-dua bahagian data sudah wujud, tetapi berada dalam sistem yang berasingan. Status mesin terdapat dalam perisian I-Link yang disambungkan pada mesin, manakala saiz penggelek yang diukur selepas pelarikan perlu direkodkan dalam pangkalan data Roller sedia ada milik kilang pada MS SQL Server.
Pelanggan mahu pengguna dapat melihat saiz penggelek, nilai ukuran dan masa pengeluaran dengan jelas, serta mahu nilai dalam pangkalan data Roller sepadan dengan saiz yang benar-benar diukur pada setiap kali. Dalam barisan yang mempunyai banyak mesin, jika data berada di tempat berasingan, untuk mengetahui mesin mana yang beroperasi, mesin mana yang berhenti atau mempunyai Alarm (isyarat amaran kelainan mesin), setiap titik perlu dibuka dan disemak satu demi satu.
Apakah itu OPC UA
OPC UA ialah piawaian bersama untuk pertukaran data antara mesin industri dengan perisian. Jika mesin atau perisian kawalan mesin menyediakan data melalui OPC UA, sistem luaran boleh membaca status, Alarm dan pelbagai pembilang tanpa perlu menulis penyambung khusus bagi setiap jenama.
Keperluan dan kekangan
Sistem perlu berfungsi dengan perisian dan pangkalan data yang sedang digunakan oleh kilang, dan perlu mematuhi dasar bahagian IT pelanggan. Keperluan dan kekangan utama adalah seperti berikut:
- Dipasang pada pelayan dalaman kilang dan beroperasi dalam rangkaian pelanggan
- Membaca data mesin melalui OPC UA daripada perisian I-Link yang sudah disambungkan pada mesin CNC
- Dasar pelanggan tidak membenarkan pengambilan data secara langsung daripada pangkalan data sedia ada. Pembacaan dan penulisan pangkalan data Roller mesti melalui API
- Nilai ukuran mesti direkodkan dalam pangkalan data Roller sedia ada supaya nilai dalam pangkalan data sepadan dengan saiz yang benar-benar diukur
- Grafana bukan aplikasi web yang dibina khusus sepenuhnya. Rupa bentuk dan pengisian data tertakluk kepada kekangan Grafana
Bagaimana sistem membaca status mesin CNC dan menerima nilai ukuran penggelek
Sistem membaca status mesin melalui OPC UA dan menerima nilai ukuran penggelek melalui halaman Input pada Grafana yang dibuka daripada tablet. Data dari kedua-dua arah dipaparkan pada satu papan pemuka. Kami membaca data mesin melalui OPC UA daripada perisian I-Link yang sudah disambungkan pada mesin, dan menulis nilai ukuran melalui API pada Node-RED kerana dasar pelanggan tidak membenarkan pengambilan data secara langsung daripada pangkalan data.
- 1
Membaca status mesin melalui OPC UA
Node-RED mengambil nilai daripada kesemua 7 mesin CNC melalui OPC UA setiap 5 saat, seperti status program, Alarm, kelajuan putaran dan Cycle Time, kemudian menyimpannya ke dalam InfluxDB.
- 2
Memaparkan gambaran keseluruhan pada halaman Overview
Setiap mesin mempunyai lampu status motor utama (hijau bermaksud beroperasi), status program Run/Stop, lampu Alarm (merah bermaksud mesin bermasalah) dan Cycle Time yang ditukar daripada saat kepada minit sebelum dipaparkan.
- 3
QC merekod nilai ukuran penggelek melalui halaman Input
Selepas pelarikan selesai, bahagian QC (pemeriksaan kualiti) memilih mesin, penggelek dan kedudukan pada penggelek. Nilai diameter dan lebar diterima daripada angkup vernier digital, manakala nilai kesipian pada kedua-dua sisi diisi pada tablet. Sistem mengira perbezaan nilai kesipian serta-merta.
- 4
Menulis kembali ke pangkalan data sedia ada
Apabila butang simpan ditekan, API pada Node-RED akan merekod nilai baharu atau mengemas kini nilai sedia ada dalam pangkalan data Roller pada MS SQL Server.
- 5
Melihat jadual nilai ukuran terkini
Jadual pada Grafana memaparkan nilai terkini bagi setiap kedudukan penggelek, termasuk saiz semasa, jumlah yang dilarik keluar (Cutdown), serta diameter dan lebar terkini.
Hasil penyerahan
Kami menyerahkan keseluruhan set perisian pada pelayan dalaman kilang, bersama pengujian sistem dan dokumen projek. Senarai penyerahan adalah seperti berikut:
- Halaman Overview pada Grafana: status motor utama, status program, Alarm dan Cycle Time bagi kesemua 7 mesin CNC
- Halaman Input pada Grafana bersama Custom Plugin (komponen tambahan yang kami tulis) untuk menghantar nilai ukuran penggelek
- Jadual nilai ukuran terkini bagi setiap kedudukan penggelek
- Pembacaan data mesin melalui OPC UA dengan Node-RED dan penyimpanan ke dalam InfluxDB
- API pada Node-RED yang menghubungkan Grafana dengan pangkalan data Roller sedia ada pada MS SQL Server
- Kerja tambahan pada tahun 2026: analisis pangkalan data sedia ada milik kilang dan penulisan arahan pengambilan data (Query)
Bagaimana skop kerja berubah semasa projek
Skop kerja berubah dari segi skrin dan jadual nilai ukuran, dan semua perubahan berpunca daripada kekangan data atau alat yang ditemui semasa pembangunan. Setiap perubahan direkodkan dalam dokumen penutupan projek, seperti berikut:
- Cycle Time menggantikan masa siap kerja: rancangan asal adalah untuk mengira masa siap kerja daripada G-code (set arahan yang digunakan mesin CNC untuk melarik bahan kerja), tetapi OPC UA tidak dapat menghantar data tersebut. Oleh itu, halaman Overview memaparkan Cycle Time setiap mesin sebagai gantinya.
- Beberapa lajur dalam jadual nilai ukuran dibuang: lajur yang perlu merujuk kembali kepada saiz penggelek dalam pangkalan data sedia ada dibuang kerana struktur pangkalan data sedia ada tidak membenarkan rujukan sedemikian.
- Medan input disatukan dalam satu panel: Plugin piawai Grafana tidak dapat menghantar data dalam bentuk teks, jadi kami menyatukan medan input dalam satu panel dan menulis Custom Plugin untuk menghantar data.
Kerja utama bermula pada tahun 2025. Kemudian, pada tahun 2026, pelanggan menempah kerja tambahan untuk menganalisis pangkalan data sedia ada milik kilang dan menulis arahan pengambilan data (Query).
Hasil yang dapat disahkan daripada penyerahan
Bukti hasil kerja ini ialah dokumen penutupan projek (Product Document) yang merekodkan skrin yang diserahkan dan perubahan skop skrin semasa projek. Selain halaman Overview dan halaman Input, dokumen ini turut menunjukkan jadual nilai ukuran terkini bagi setiap kedudukan penggelek. Jadual ini memaparkan saiz semasa, jumlah yang dilarik keluar, serta diameter dan lebar terkini.
Kes ini tidak mempunyai angka pengukuran perniagaan, seperti pengurangan masa henti mesin. Oleh itu, kami hanya melaporkan perkara yang diserahkan dan mempunyai dokumen pengesahan.
Apakah yang kita pelajari
Kerja ini memberikan prinsip berikut untuk kerja integrasi data mesin dengan sistem sedia ada kilang:
- Semak senarai Tag (item data) yang benar-benar dapat dihantar oleh mesin melalui OPC UA sebelum mereka bentuk skrin. Nilai yang perlu dikira daripada data yang tidak dihantar oleh mesin tidak dapat dipaparkan. Dalam kes ini, masa siap kerja terpaksa ditukar kepada Cycle Time.
- Persetujui kaedah akses pangkalan data sedia ada dengan bahagian IT sebelum pembangunan bermula. Dalam kes ini, dasar tidak membenarkan pengambilan data secara langsung daripada pangkalan data, jadi kerja penyambungan terpaksa menunggu API, dan mesyuarat tentang penyambungan antara pasukan IT dengan pihak di tapak kerja ditangguhkan.
- Reka bentuk skrin mengikut kekangan alat dan struktur pangkalan data sedia ada, dan nyatakan skop skrin dengan jelas secara bertulis. Grafana bukan aplikasi web yang dibina khusus sepenuhnya, dan pangkalan data sedia ada menentukan lajur mana yang benar-benar boleh dipaparkan.
Cara menggunakan pendekatan ini di kilang anda
Jika mesin CNC atau perisian kawalan mesin anda menyediakan data melalui OPC UA, anda boleh menggunakan pendekatan yang sama seperti kes ini, iaitu membaca status mesin ke dalam Node-RED, menyimpannya dalam InfluxDB, memaparkannya pada Grafana dan menulis nilai ukuran kembali ke pangkalan data yang sedia ada di kilang. Bahagian yang perlu disesuaikan ialah senarai Tag mesin dan kaedah akses pangkalan data sedia ada anda.
Bahagian yang boleh digunakan semula dan bahagian yang perlu diubah suai
| Bahagian sistem | Boleh digunakan semula | Perlu diubah suai apabila |
|---|---|---|
| Pembacaan data mesin | Pembacaan nilai melalui OPC UA dengan Node-RED dan penyimpanan ke dalam InfluxDB | Mesin atau perisian kawalan mesin tidak menyediakan data melalui OPC UA, atau menyediakan set Tag yang berbeza; tinjauan di tapak kerja perlu dibuat terlebih dahulu |
| Halaman Overview | Lampu status motor utama, status program, Alarm dan Cycle Time bagi setiap mesin | Anda memerlukan nilai yang tidak dihantar oleh mesin, seperti masa siap kerja; perlu disemak sama ada terdapat data yang menyokongnya |
| Halaman Input | Penerimaan nilai daripada angkup vernier digital pada tablet melalui Custom Plugin | Bahan kerja atau nilai yang perlu diukur berbeza daripada penggelek; medan input dan pengiraan perlu ditetapkan semula |
| Penulisan kembali ke pangkalan data | API pada Node-RED yang merekod atau mengemas kini nilai dalam pangkalan data sedia ada | Pangkalan data anda ialah sistem lain, atau bahagian IT menetapkan kebenaran yang berbeza daripada kes ini; jadual dan kaedah penyambungan perlu dipersetujui semula |
- Dapatkan senarai Tag yang benar-benar boleh dihantar oleh mesin melalui OPC UA sebelum memuktamadkan skrin
- Selesaikan persetujuan dengan bahagian IT tentang kebenaran akses, jadual dan kaedah penyambungan pangkalan data sedia ada sebelum memulakan pembangunan
- Rumuskan secara bertulis skrin dan data yang diperlukan pada papan pemuka, dengan membandingkannya dengan had Grafana
Baca seterusnya
- Perkhidmatan pembangunan sistem pemeriksaan dan kawalan khusus
- Perkhidmatan penyepaduan data dan pembangunan AI untuk organisasi
- InGauge, penukar isyarat alat pengukur digital kepada USB
- Kes menghantar nilai daripada angkup vernier digital ke laporan QC secara automatik
- Kes penyatuan saluran masuk data pengeluaran pada pelayan pusat
- Artikel: menyimpan data kilang pada pelayan dalaman atau awan
Teknologi yang digunakan
Soalan Sering Ditanya
Sistem ini boleh digunakan dengan mesin CNC jenis apa?
Sistem ini boleh digunakan apabila mesin atau perisian kawalan mesin mendedahkan data melalui OPC UA. Dalam kes ini, sistem membaca daripada OPC UA perisian I-Link yang sedia disambungkan kepada mesin. Bagi mesin lain, tinjauan di tapak dan semakan senarai Tag perlu dilakukan terlebih dahulu sebelum pengesahan dapat diberikan.
Adakah pangkalan data atau program sedia ada kilang perlu ditukar?
Dalam kes ini, pangkalan data sedia ada tidak ditukar. Sistem menulis nilai ukuran kembali ke pangkalan data Roller sedia ada pada MS SQL Server melalui API pada Node-RED, hanya pada jadual dan lajur yang dipersetujui, serta beroperasi mengikut dasar rangkaian pelanggan. Sambungan bagi sistem anda bergantung pada struktur dan kebenaran akses yang dipersetujui dengan bahagian IT.
Mengapa Cycle Time dipaparkan dan bukannya masa kerja akan siap?
Kerana OPC UA tidak dapat menghantar data yang digunakan untuk mengira masa kerja akan siap daripada G-code. Pelan asal adalah untuk mengira nilai ini, tetapi semasa projek, pelanggan bersetuju untuk memaparkan Cycle Time setiap mesin dalam minit sebagai gantinya.
Di manakah data disimpan?
Data disimpan pada pelayan dalaman kilang. Data mesin berada dalam InfluxDB, manakala nilai ukuran penggelek berada dalam pangkalan data Roller sedia ada milik pelanggan.
Berapakah harga dan tempohnya?
Tiada harga tetap; harga bergantung pada bilangan mesin, data yang perlu dibaca dan sistem sedia ada yang perlu disambungkan. Hubungi kami untuk mendapatkan sebut harga selepas tinjauan di tapak.



