Anchor-Based Normalization: Strategi Koreksi Drift Data Akumulator di DCS/SCADA
Dari DCS ke ERP, data akumulasi sering “melenceng” tanpa kita sadari. Anchor‑Based Normalization menghadirkan cara sederhana namun kuat: satu anchor point, tiga zona deviasi, hasilnya data presisi dan transparan lintas sistem.
Photo by Jamie Street / Unsplash
Ditulis oleh Ketut Kumajaya | 28 September 2025
Pengantar
Dalam sistem DCS/SCADA, drift data akumulasi adalah masalah klasik. Counter runtime, hour meter, atau energi meter sering mengalami penyimpangan akibat overflow tipe data, jitter komunikasi, atau perbedaan jam antar perangkat. Bias kecil yang dibiarkan akan menumpuk, menghasilkan data historis yang tidak konsisten dan menyimpang.
Contoh sederhana: akumulasi flowmeter menyimpang hingga 2% dari nilai seharusnya, tanpa ada yang menyadari.
Untuk mengatasi hal ini, artikel ini memperkenalkan pendekatan Anchor-Based Normalization: strategi koreksi berbasis satu titik referensi (anchor point) yang ditanam di DCS, dengan Rapid SCADA sebagai time authority dan Node-RED sebagai relay REST API yang melakukan koreksi on-demand.
Lebih dari sekadar normalisasi, pendekatan ini mewujudkan self-healing measurement pipeline, di mana sistem secara otomatis mendeteksi deviasi, menerapkan koreksi hanya saat diperlukan, dan menyimpan catatan audit secara transparan.
Konsep Anchor-Based Normalization
- Anchor Point → nilai referensi tunggal yang diketahui benar (misalnya input statis
flowrate = 3750). - Window Historis → data 4–24 jam terakhir dari Rapid SCADA digunakan untuk menghitung selisih (offset).
- Offset Correction → selisih antara anchor dan histori diterapkan ke semua accumulator.
- Normalization → setiap data yang diminta ERP atau sistem bisnis lain sudah terkoreksi, sementara data mentah tetap tersimpan di Rapid SCADA.
Dengan cara ini, cukup satu anchor point untuk meluruskan seluruh accumulator.
Zona Deviasi
Untuk menjaga keseimbangan antara presisi dan keandalan, digunakan logika tiga zona:
| Zona | Kriteria Deviasi Relatif | Status Koreksi | Catatan Audit |
|---|---|---|---|
| Hijau | ≤ stddev | Tidak diterapkan (applied: false) |
Deviasi dianggap noise, data dilewatkan apa adanya |
| Kuning | > stddev dan ≤ max | Diterapkan (applied: true) |
Koreksi normal, offset dicatat di header |
| Merah | > max | Tidak diterapkan (applied: false) |
Data dianggap outlier, dilewatkan as-is dengan flag audit |
Contoh kasus: deviasi 0.1% masuk zona hijau sehingga tidak dikoreksi, deviasi 0.35% masuk zona kuning sehingga koreksi diterapkan, sedangkan deviasi 12.5% masuk zona merah sehingga data dilewatkan apa adanya dengan catatan audit.
Contoh Numerik Anchor-Based Normalization
- Anchor Point (DCS):
flowrate = 3750 - Window Historis (SCADA 4 jam terakhir): rata-rata akumulator terbaca
3737 - Offset:
$$\text{Offset} = \frac{3737 - 3750}{3750} \times 100% = -0.35%$$
Offset negatif di sini artinya histori terbaca lebih rendah dibanding anchor.
Evaluasi Zona Deviasi
- Threshold stddev: 0.20%
- Threshold max: 5.0%
Maka:
- Deviasi relatif = 0.35%
- Karena
0.20% < 0.35% ≤ 5.0%, maka masuk Zona Kuning. - Status: applied = true → koreksi offset diterapkan.
Payload Hasil Koreksi
"correction": {
"applied": true,
"relative_deviation": 0.35,
"std_dev_threshold": 0.20,
"max_threshold": 5.0
}
ERP atau sistem bisnis cukup membaca bagian data[] dengan tenang, karena hasil sudah terjamin sesuai header correction.
Perbandingan Kasus Lain
- Deviasi 0.1% → ≤ 0.20% → Zona Hijau → tidak dikoreksi (
applied: false). - Deviasi 0.35% → antara 0.20% dan 5.0% → Zona Kuning → dikoreksi (
applied: true). - Deviasi 12.5% → > 5.0% → Zona Merah → tidak dikoreksi, dilewatkan as-is dengan catatan audit.
Implementasi Payload
Informasi koreksi cukup ditaruh sekali di header. Data di bawah tetap bersih, hanya menampilkan nilai akumulator.
{
"site": "SIG025",
"description": "SIG Bekasi",
"correction": {
"applied": true,
"relative_deviation": 0.35,
"std_dev_threshold": 0.20,
"max_threshold": 5.0
},
"data": [
{
"index": 0,
"code": "FTLOX-01",
"description": "[1294] LOX Flow Totalizer",
"source": "[1294] LOX Flow Totalizer",
"data": [
{
"value": 829908.5625,
"timestamp": "2025-09-28T01:00:00+07:00"
},
{
"value": 826878.5,
"timestamp": "2025-09-28T00:00:00+07:00"
},
{
"value": 823849.1875,
"timestamp": "2025-09-27T23:00:00+07:00"
}
...
Visualisasi Alur Data
Kesimpulan
Dengan Anchor-Based Normalization berbasis anchor point di DCS dan logika tiga zona deviasi, pipeline data menjadi lebih presisi karena drift wajar terkoreksi, lebih aman karena noise kecil diabaikan dan outlier besar dilewatkan, serta lebih transparan karena data mentah tetap utuh sementara catatan koreksi tersimpan jelas.
Pendekatan ini membuat sistem audit-ready, mudah diajarkan lintas operator, dan scalable untuk berbagai aplikasi industri, khususnya pada akumulator seperti flow totalizer.
Hasilnya, audit tidak lagi disibukkan membetulkan angka, melainkan dapat langsung fokus pada analisis operasional dan pemeriksaan lanjutan berbasis catatan koreksi.