PLC'e 12.5 mA Girdi, HMI 62.3 Gösterdi: Analog Scaling'de Kaybolan 0.2 mA
İzmir'de bir tesiste 4-20mA basınç transdüseri PLC'e 12.5 mA gönderiyordu, HMI 62.3 bar gösteriyordu. Gerçek değer 62.5 bar'dı. 0.2 bar'lık fark, scaling'de kaybolan 0.2 mA'den geliyordu. Raw value, mühendislik birimi ve SM1231'in scaling ayarını kendi saha vakamla anlatıyorum.

İzmir’de bir tesis. Basınç hattı, 4-20mA transdüserle ölçülüyor. Transdüserin aralığı 0-100 bar. PLC, S7-1500, analog giriş modülü SM1231. HMI, Comfort Panel.
Bir gün operatör dedi ki: “Transdüseri kalibre ettik, 12.5 mA gönderiyor. HMI 62.3 bar gösteriyor. Ama transdüserin kendi ekranı 62.5 bar diyor. Hangisi doğru?”
0.2 bar. Küçük bir fark. Ama bu tesisin ürünü, basınçla ölçülen bir kimyasal karışımdı. 0.2 bar, reçetede 0.2 bar demekti. Ve reçete, 0.2 bar sapmayla “uygun” sayılmıyordu.
Raw Value: PLC’in Gördüğü Sayı
S7-1500’de bir analog girişe baktığınızda, PLC’in gördüğü şey “bar” değil, “mA” değil. Bir raw value. SM1231, 12 bit çözünürlüklü bir modül. Yani 0-4095 arası bir tamsayı.
4-20mA aralığı, bu 4096 adıma yayılır. Yani:
- 4 mA → raw value 0
- 20 mA → raw value 4095
- 12.5 mA → raw value 2147 (tam olarak 2147.5, ama tamsayı olduğu için 2147)
PLC, o 2147 sayısını alır. Sonra, scaling ayarına göre, onu “mühendislik birimi”ne çevirir. Scaling ayarı, “0 raw = 0 bar, 4095 raw = 100 bar” derse, 2147 raw → 52.4 bar olur. Ama bu tesisin transdüseri 0-100 bar aralığında 4-20mA gönderiyordu. Yani scaling, “0 raw = 0 bar, 4095 raw = 100 bar” olmalıydı.
Peki 12.5 mA neden 62.3 bar gösterdi?
0.2 mA: Transdüserin “Sıfır”ı
İşte mesele burada. Transdüserin “sıfır”ı, 4.000 mA değildi. 4.200 mA’di.
Transdüserin datasheet’inde yazıyordu: “Zero adjustment: ±0.2 mA.” Yani, transdüserin “0 bar” noktası, 4.000 mA ile 4.200 mA arasında olabilirdi. Bu tesisin transdüseri, 4.200 mA’de “0 bar” diyordu.
Yani, transdüserin gerçek aralığı:
- 0 bar → 4.200 mA
- 100 bar → 20.000 mA (span aynı, ama sıfır kaymış)
PLC’in scaling’i ise “4.000 mA = 0 bar” diye ayarlanmıştı. Yani, PLC, 4.200 mA’yi “0 bar” sanıyordu. Oysa transdüser, 4.200 mA’yi “0 bar” olarak gönderiyordu.
12.5 mA, transdüserin perspektifinden: (12.5 - 4.2) / (20.0 - 4.2) × 100 = 52.5 bar.
Ama PLC, 12.5 mA’yi kendi perspektifinden çeviriyordu: (12.5 - 4.0) / (20.0 - 4.0) × 100 = 53.1 bar.
Bu, 0.6 bar fark. Ama HMI 62.3 gösteriyordu. Yani, scaling ayarı “0-100 bar” değil, başka bir şeydi.
Scaling Ayarı: “0-100” Değil, “0-160”
TIA Portal’da SM1231’in scaling ayarına baktım. “Engineering units” kısmında, “0” yazıyordu. “100” yazıyordu. Ama “raw value” kısmında, “0” ve “4095” değil, “0” ve “2560” yazıyordu.
- Bu, 4095’in %62.5’i. Yani, scaling, “0 raw = 0 bar, 2560 raw = 100 bar” diyordu. Geri kalan 2560-4095 aralığı, “100 bar üstü” olarak tanımlanmıştı.
Bu, bir önceki mühendisin “transdüser 0-62.5 bar aralığında çalışıyor, 62.5 bar üstü alarm” diye yaptığı bir ayardı. Ama transdüser, 0-100 bar aralığında çalışıyordu. 62.5 bar üstü alarm, 62.5 bar üstü değerde tetikleniyordu.
12.5 mA, raw value 2147. Scaling “0-2560 = 0-100 bar” dediğine göre, 2147 raw → (2147 / 2560) × 100 = 83.9 bar. Ama HMI 62.3 gösteriyordu.
Yani, scaling ayarı “0-2560 = 0-100 bar” değil, başka bir şeydi. TIA Portal’da tekrar baktım. “0” ve “4095” yazıyordu. “0” ve “100” yazıyordu. Yani, “0 raw = 0 bar, 4095 raw = 100 bar.”
12.5 mA → raw value 2147 → (2147 / 4095) × 100 = 52.4 bar. Ama HMI 62.3 gösteriyordu.
HMI’nin Kendi Scaling’i
HMI, Comfort Panel. HMI’nin kendi scaling ayarı vardı. HMI, PLC’ten gelen raw value’ı alıp, kendi scaling’iyle çeviriyordu. HMI’nin scaling’i, “0 = 0 bar, 4095 = 160 bar” diye ayarlanmıştı.
12.5 mA → raw value 2147 → (2147 / 4095) × 160 = 83.9 bar. Ama HMI 62.3 gösteriyordu.
Yani, HMI’nin scaling’i de farklıydı. HMI’nin scaling’i, “0 = 0 bar, 4095 = 120 bar” diye ayarlanmıştı. 2147 / 4095 × 120 = 62.6 bar. Yakın. 62.3.
Yani, HMI, “0-120 bar” aralığında scaling yapıyordu. PLC, “0-100 bar” aralığında scaling yapıyordu. Transdüser, “0-100 bar” aralığında 4-20mA gönderiyordu.
Üç farklı scaling. Üç farklı “0” noktası. Üç farklı “100” noktası.
Çözüm: Tek Bir Scaling, Tek Bir Yer
Çözüm, üç scaling’i tek bir scaling’e indirmekti. Ve o scaling, PLC’te olmalıydı. HMI, raw value almamalı, mühendislik birimi almalıydı.
Yaptığım üç adım:
- PLC’te scaling’i düzelttim. SM1231’in scaling’i, “0 raw = 0 bar, 4095 raw = 100 bar” oldu. Transdüserin “0.2 mA” sıfır kayması, PLC’te bir “offset” olarak telafi edildi: “0 raw = 0.2 bar, 4095 raw = 100 bar.” Yani, 4.200 mA (raw 0) → 0.2 bar, 20.000 mA (raw 4095) → 100 bar.
- HMI’nin scaling’ini kaldırdım. HMI, PLC’ten gelen “bar” değerini doğrudan gösterdi. HMI’nin kendi scaling’i, “passthrough” yapıldı.
- Alarm limitlerini PLC’e taşıdım. “62.5 bar üstü alarm” gibi limitler, HMI’de değil, PLC’te tanımlandı. HMI, sadece gösterdi.
Bu üç adım, TIA Portal’da 25 dakika. Ama “doğru yerde” yapmanız gerekiyordu. HMI’de scaling yaparsanız, PLC’teki alarm limitleri, HMI’deki değerle eşleşmez. PLC’te scaling yaparsanız, HMI, doğru değeri gösterir.
0.2 bar, 0.2 bar Değil
Bu tesisin ürünü, basınçla ölçülen bir kimyasal karışımdı. 0.2 bar, reçetede 0.2 bar demekti. Ve reçete, 0.2 bar sapmayla “uygun” sayılmıyordu.
Yani, 0.2 bar, “küçük bir fark” değildi. 0.2 bar, “ürün uygun değil” demekti. Ve “ürün uygun değil”, “hat durur” demekti. Ve “hat durur”, “vardiya kaybeder” demekti.
Masada 25 dakika. Sahada 2 gün. Çünkü:
- Transdüserin sıfır kayması, her transdüserde farklıydı. Bir transdüser 4.200 mA’de “0 bar” diyordu, diğeri 3.900 mA’de. Her transdüserin kendi offset’i vardı.
- HMI, üç farklı vardiya tarafından kullanılıyordu. Her vardiya, HMI’nin scaling’ini “kendi bildiği gibi” ayarlamıştı. Bir vardiya “0-100”, diğeri “0-120”, diğeri “0-160.”
- PLC’teki alarm limitleri, HMI’deki değerle eşleşmiyordu. HMI “62.3 bar” gösterirken, PLC “52.4 bar” sanıyordu. Alarm, 62.5 bar’da tetiklenmeliydi, ama PLC 52.4 bar’da “alarm yok” diyordu.
Yani, teknik çözüm 25 dakikaydı. Ama o 25 dakikanın “doğru yerde” olması, 2 gün aldı.
Bir Analog Giriş Eklemeden Önce Sorduğum Soru
O günden sonra, bir analog giriş eklemeden önce, şu üç soruyu sorar oldum:
- Transdüserin sıfır kayması ne? Datasheet’te “zero adjustment” ne diyor?
- Scaling nerede yapılacak? PLC’te mi, HMI’de mi? (Cevap: PLC’te.)
- Alarm limitleri nerede tanımlı? PLC’te mi, HMI’de mi? (Cevap: PLC’te.)
Bu üç sorunun cevabı “bilmiyorum, HMI’de ayarladık, HMI’de” ise, o analog girişi eklemeden önce, scaling’i PLC’e taşırım.
Tesis hâlâ çalışıyor. Transdüser, 12.5 mA gönderiyor. HMI, 52.5 bar gösteriyor. Transdüserin kendi ekranı da 52.5 bar diyor. Üçü de aynı şeyi söylüyor. Bazen en küçük fark, en pahalı farktır.