Pages

Kontrol: Özel Gösterge (Custom Gauge)

Custom Gauge kontrolü, sensör okumaları veya sistem metrikleri gibi sayısal değerleri analog gösterge biçiminde görselleştirmek için esnek ve görsel olarak etkileyici bir çözümdür. Bu kontrol sayesinde kullanıcılar kendi SVG grafiklerini yükleyebilir ve gösterge ölçeğini açı ve işaretler (tick) üzerinden özelleştirebilir.

Genel Bakış: Bir Custom Gauge Nasıl Çalışır?

Her gösterge, görünümünü ve davranışını tanımlayan üç ana bileşene sahiptir:

  1. Görsel Aralık (Min / Max) – göstergedeki sayısal değer aralığı.
  2. Açısal Yay (Başlangıç Açısı / Bitiş Açısı) – ibrenin dönebildiği açı bölgesi.
  3. İbre Başlangıç Konumu (Initial Arrow Position) – SVG yüklendiğinde, canlı veri gelmeden önce ibrenin işaret ettiği başlangıç konumu.

Varsayılan ayarlarda farklı SVG'ler (hazır veya özel) seçilebilir, ancak bu değerler her gösterge için ayrı ayrı yapılandırılmalıdır – çünkü tek tip bir şablon yoktur. Her SVG'nin farklı sayı aralığı, tasarımı ve merkez noktası olabilir.

Sayısal değerleri yalnızca rakam olarak girin, sembol veya birim eklemeyin.
Doğru: -30
Yanlış: -30°
Geçerlidir: Start Angle, End Angle, Initial Arrow Position, Min, Max vb.

Adım Adım Yapılandırma

1. Min / Max *

Gösterge üzerinde görüntülenen sayısal değer aralığını belirler (örn. 0–400 veya 0–3000).

  • Bu aralık açısal değildir, yay üzerindeki sayısal etiketleri ifade eder.
  • Min/Max değerlerini, SVG üzerindeki en küçük ve en büyük değerleri görerek kolayca belirleyebilirsiniz.
Örnek 1:

Gösterge 0 ile 400 arasında değerler gösteriyorsa:

  • Min = 0
  • Max = 400
Örnek 2:

Başka bir gösterge 0 ile 3000 arasında değer gösteriyorsa:

  • Min = 0
  • Max = 3000

Önemli: Bu değerler mutlaka SVG göstergenizde görsel olarak işaretlenmiş rakamlarla eşleşmelidir.

2. Başlangıç Açısı / Bitiş Açısı

İbrenin döndüğü açı aralığını, ibrenin dönme merkezine göre tanımlar.

  • Başlangıç Açısı = ibrenin başladığı açı.
  • Bitiş Açısı = ibrenin sona ulaştığı açı.
  • İbre bu iki açı arasında hareket eder.

Örnek (aşağıdaki görsele bakınız):

  • Başlangıç Açısı: -120°
  • Bitiş Açısı: 120°
    Bu, merkezde 0° olan 240°'lik bir dönüş sağlar.

Aşağıdaki örnekte ise ibre, farklı bir Initial Arrow Position Value (375) değerinde başlıyor:

  • Başlangıç Açısı: -30°
  • Bitiş Açısı: 210°

3. İbre Başlangıç Değeri (Initial Arrow Position Value) *

Bu değer, SVG yüklendiğinde ibrenin işaret edeceği varsayılan değeri tanımlar – canlı veri gelmeden önce.

  • İbre hangi sayıya işaret ediyorsa, bu değer o sayıya karşılık gelmelidir.
  • Aynı Min/Max aralığı içinde olmalıdır.

Örnek (yukarıdaki görsele göre):
Eğer aralık 0–3000 ve ibre 375 değerini gösteriyorsa:

  • Initial Arrow Position Value = 375

Bu ayar, göstergenin doğru başlangıç konumunda görünmesini sağlar.

Neden Her Gösterge Farklıdır?

Her SVG'nin farklı sayısal aralığı (örn. 0–400 veya 0–3000), farklı dönüş açısı (örn. 180° veya 240°) ve farklı dönme merkezi olabilir.

Bu nedenle, her gösterge ayrı ayrı yapılandırılmalıdır.

Uzaktan Konfigürasyon (CODESYS)

Bazı durumlarda, gösterge parametrelerini PLC üzerinden dinamik olarak yönetmek isteyebilirsiniz.

Şu durumlarda kullanılır:

  • Minimum, maksimum veya açıları PLC içinden değiştirmek istiyorsanız.
  • Birden fazla göstergeyi merkezi olarak kontrol etmek istiyorsanız.

Gösterge özelliklerinden Remote Control seçeneğini etkinleştirin. Böylece min, max, açı gibi parametreleri değişkenlere bağlayabilirsiniz.

Örnek: Yapılandırma

PROGRAM PLC_PRG
VAR
            CustomGauge1                                             : plcvisu.CustomGauge;
END_VAR

            CustomGauge1.value                                                       := REAL_TO_STRING(55);
            CustomGauge1.parameters.pMin                                     := -50;
            CustomGauge1.parameters.pMax                                    := 50;
            CustomGauge1.parameters.startAngle                             := -120;
            CustomGauge1.parameters.endAngle                              := 120;
            CustomGauge1.parameters.initialArrowPositionValue        := 0;
            CustomGauge1.ticks[0]                                                     := '-50';
            CustomGauge1.ticks[2]                                                     := '0';
            CustomGauge1.ticks[1]                                                     := '50';
            CustomGauge1.unit                                                          := 'unit';

Kendi SVG Dosyalarınızı Yükleyin (İleri Seviye)

Varsayılan göstergeleri öğrendikten sonra, kendi SVG dosyalarınızı yükleyebilirsiniz.

Aşağıdaki tabloda, SVG editörünüzde tanımlanması gereken ID’ler yer alıyor. Bu ID'ler doğru şekilde atanmazsa gösterge çalışmaz.

SVG ID Referans Tablosu

# Bileşen SVG ID
1 İbre / Ok / Gösterge arrow
2 Dönüş Merkezi rotationPoint
3 Mevcut Değer Metni value_tspan
4 Birim label_unit_tspan
5 Ana İşaret (Tick) tick_major_1_value
6 Ana SVG Konteyneri custom_control_root

Kurulum

Custom Gauge oldukça esnektir – ancak düzgün çalışması için doğru kurulum gerekir.

İbrenin dönme merkezi, gösterge davranışı için kritik önemdedir. StartAngle ve EndAngle değerleri bu merkez noktasına göre tanımlanır.

Not: Açısal değerleri tanımlarken ibrenin dönme merkezini mutlaka göz önünde bulundurun – aksi takdirde ibre yanlış konumda görüntülenebilir.

custom_control_root
tick_major_1_value
label_unit_tspan
value_tspan
rotationPoint
arrow
PROGRAM PLC_PRG VAR CustomGauge1 : plcvisu.CustomGauge; END_VAR CustomGauge1.value := REAL_TO_STRING(55); CustomGauge1.parameters.pMin := -50; CustomGauge1.parameters.pMax := 50; CustomGauge1.parameters.startAngle := -120; CustomGauge1.parameters.endAngle := 120; CustomGauge1.parameters.initialArrowPositionValue := 0; CustomGauge1.ticks[0] := '-50'; CustomGauge1.ticks[2] := '0'; CustomGauge1.ticks[1] := '50'; CustomGauge1.unit := 'unit';
375
Initial Arrow Position Value
375
0–3000
210°
Bitiş Açısı
-30°
Başlangıç Açısı
Initial Arrow Position Value
0°
120°
Bitiş Açısı
-120°
Başlangıç Açısı
3000
Max
0
Min
3000
0
400
Max
0
Min
400
0
-30°
-30