Konfigurasi Special Measurement Unit pada Emerson Micro Motion™ Model 1700
Ubah mass flow kg/h menjadi m³/h, termasuk base unit, scale factor, label, aktivasi unit, reset totalizer, dan read-back verifikasi untuk siap audit, mudah dikerjakan, aman, dan sesuai kontrak.
Photo by Alexandra Vázquez / Unsplash
Ditulis oleh Ketut Kumajaya — 31 Oktober 2025
Konteks
Artikel ini mendokumentasikan konfigurasi Emerson Micro Motion™ Model 1700 untuk mengonversi unit pengukuran dari mass flow (kg/h) menjadi special measurement unit (m³/h). Konfigurasi meliputi penetapan base unit, scale factor, label, dan aktivasi unit khusus melalui register Modbus. Hasilnya sesuai kebutuhan kontrak maupun operasi lapangan.
Catatan: Scale factor ditetapkan sebagai inverse dari 0.8874378 m³/h per kg/h → 1 ÷ 0.8874378 ≈ 1.12695 sesuai definisi Micro Motion™.
Kerangka Implementasi: kg/h → m³/h
-
Base Mass Unit: kilograms
-
Base Time Unit: hours
-
Konversi: 1 kg/h = 0.8874378 m³/h → faktor konversi = 1.12695
-
Register Modbus (Node-RED 0-based):
- Base Unit: 131–132
- Scale Factor: 237–238
- Flow Label: 52–55
- Total Label: 56–59
- Active Unit: 39
Penting: Semua register sudah disesuaikan untuk Node‑RED (0-based). Pastikan tidak salah tulis 1-based (Emerson manual).
Konfigurasi Register
| Fungsi | Emerson manual (1‑based) | Node‑RED (0‑based) | Write Value | Catatan Kritikal |
|---|---|---|---|---|
| Base unit (mass flow) | 132–133 | 131–132 | [61,52] | Pastikan sesuai Node‑RED, jangan terbalik. |
| Conversion factor (float32, WordSwap) | 238–239 | 237–238 | [16482,16272] | Word Swap harus tepat: high/low word jangan tertukar. |
| Flow label (ASCII, 4 words) | 53–56 | 52–55 | [19763,12104,8224,8224] | — |
| Total label (ASCII, 4 words) | 57–60 | 56–59 | [19763,8224,8224,8224] | — |
| Active mass flow unit | 40 | 39 | 253 | Jangan salah register; aktifkan hanya satu. |
| Stop/start flowmeter (coil) | 2 / 2 | 1 / 1 | 0 / 1 | Kritikal: selalu stop (0) sebelum konfigurasi, start (1) setelah selesai. |
| Reset totalizer (coils, opsional) | 3–4 | 2–3 | [1,1] | Lakukan hanya saat reset diperbolehkan. |
Visualisasi Alur
Fungsi Bantu
Float32 Word Swap
function wordsToFloatWordSwap(words) {
// Micro Motion float WordSwap: high/low word invert
const buf = Buffer.alloc(4);
buf.writeUInt16BE(words[1], 0);
buf.writeUInt16BE(words[0], 2);
return buf.readFloatBE(0);
}
function floatToWordsWordSwap(f) {
const buf = Buffer.alloc(4);
buf.writeFloatBE(f, 0);
return [buf.readUInt16BE(2), buf.readUInt16BE(0)];
}
ASCII Unit String
function asciiToWords(str, wordsLen = 4) {
// Convert string ke 4-word ASCII untuk register
const s = str.padEnd(wordsLen * 2, ' ').slice(0, wordsLen * 2);
const words = [];
for (let i = 0; i < s.length; i += 2) {
words.push((s.charCodeAt(i) << 8) | s.charCodeAt(i + 1));
}
return words;
}
function wordsToAscii(words) {
return words.map(w =>
String.fromCharCode((w >> 8) & 0xFF) + String.fromCharCode(w & 0xFF)
).join('').trimEnd();
}
// Contoh: asciiToWords("M3/H") → [19763,12104,8224,8224]
Read‑Back Log
| Timestamp | Register | Read‑Back | Decode |
|---|---|---|---|
| 2025-10-31 18:45:02 | 131–132 | [61,52] | kg/h |
| 2025-10-31 18:45:03 | 237–238 | [16482,16272] | 1.12695 |
| 2025-10-31 18:45:04 | 52–55 | [19763,12104,8224,8224] | M3/H |
| 2025-10-31 18:45:05 | 56–59 | [19763,8224,8224,8224] | M3 |
| 2025-10-31 18:45:06 | 39 | 253 | Special unit aktif |
Kritikal: semua write dan read-back harus match. Word Swap diterapkan untuk scale factor float32.
Checklist Verifikasi
-
Base Unit: register 131–132 → kg/h
-
Scale Factor: register 237–238 → decode Word Swap ≈ 1.12695
-
Unit String:
- Flow label 52–55 → “M3/H”
- Total label 56–59 → “M3”
-
Active Unit: register 39 = 253 → special unit aktif
-
Status Operasi: Coil 1 = 0 saat konfigurasi, Coil 1 = 1 setelah start
-
Audit Logging: simpan log write/read (timestamp, address, values, hasil decode)
-
Safety Reminder: pastikan flowmeter berhenti sebelum menulis register / coil
Catatan Teknis
- Komunikasi: Modbus RTU via TCP gateway, mapping register sesuai manual.
- Endianness: gunakan Word Swap untuk float32.
- Delay: sisipkan 100–200 ms antar operasi.
- Persistensi: simpan konfigurasi ke EEPROM bila tersedia.
- Keselamatan: lakukan perubahan saat flowmeter berhenti.
- Addressing: perhatikan perbedaan 1‑based vs 0‑based, selalu verifikasi dengan read‑back.
Pengingat cepat: Manual Emerson menggunakan 1‑based addressing, sedangkan Node‑RED driver menggunakan 0‑based addressing. Aturan praktis:
Address Node‑RED = Address Emerson - 1. Contoh: Register 132–133 (manual) = Register 131–132 (Node‑RED).
Penutup
Konfigurasi special measurement unit memungkinkan operator menampilkan data proses dalam satuan yang lebih relevan, meski tidak tersedia secara default.
- Audit‑grade: semua langkah terdokumentasi.
- Operator‑friendly: konfigurasi + verifikasi cukup sekali klik di Node-RED.
- Fleksibel: dapat diterapkan untuk unit lain dengan menyesuaikan faktor konversi dan label.
Referensi
- Configuration & Use Manual – Micro Motion Model 1700 Transmitters (Analog Outputs) (Diakses: 31 Oktober 2025)
- Modbus Mapping Assignments for Micro Motion Transmitters (Diakses: 31 Oktober 2025)