Alarm Yönetimi
Alarm sistemi, değişken değerlerindeki anormal durumları tespit eder, kaydeder ve operatöre bildirir.
İki katmanlı çalışır: alarm grubu ortak davranışı (kontrol periyodu, öncelik, renkler, tetiklenecek script’ler, yazıcı) belirler; alarm tanımları ise o grubun içinde tek tek koşulları tarif eder. Her grup bir projeye bağlıdır.
Nereden yönetilir
Section titled “Nereden yönetilir”| Ekran | Ne yapar |
|---|---|
| Alarm Grupları | Grubu ve grup genelindeki davranışı tanımlar |
| Analog Alarmlar | Sayısal değişkenler için eşik alarmları |
| Dijital Alarmlar | Boolean değişkenler için durum alarmları |
| Özel Alarmlar | Expression ile tanımlanan koşullar |
Tetiklenmiş alarmlar çalışma zamanında izlenir: Alarm Monitörü anlık durumu, Alarm Geçmişi ise geçmiş kayıtları gösterir.
Alarm Tipleri
Section titled “Alarm Tipleri”Her alarm tanımı üç tipten birine aittir:
| Tip | İzlediği | Tetiklenme koşulu |
|---|---|---|
| Analog | Sayısal değişken | Değer bir eşiği (High-High / High / Low / Low-Low) aşar |
| Digital | Bir veya iki boolean değişken | Değerlendirilen sonuç true olur (AND/OR ve tersleme desteklenir) |
| Custom | Serbest | Yazılan expression truthy döner |
Ortak Alanlar
Section titled “Ortak Alanlar”Üç tipin tamamı bu alanları taşır; tipe özgü alanlar kendi sayfalarında anlatılır.
| Alan | Tip | Açıklama |
|---|---|---|
| name | String (≤100) | Alarm adı — proje içinde benzersiz |
| dsc | String (≤255) | Açıklama |
| groupId | String | Ait olduğu alarm grubu |
| delay | Integer (ms, ≥0) | Koşul sağlandıktan sonra beklenen süre (debounce) |
| isActive | Boolean | Bu alarm tanımı aktif mi |
| part | String (≤100) | Ekipman / hat kodu — raporlama ve filtrede kullanılır |
| onTimeVariableId | String | Tetiklenme zamanını sahadan alacak değişken (opsiyonel) |
| offTimeVariableId | String | Kapanma zamanını sahadan alacak değişken (opsiyonel) |
Zaman damgasını sahadan almak
Section titled “Zaman damgasını sahadan almak”onTimeVariableId ve offTimeVariableId alanları, alarmın zaman damgasının nereden geleceğini belirler. Boş bırakıldıklarında alarm, sistemin koşulu fark ettiği anla damgalanır.
Bir değişken atandığında ise sistem o değişkenin son değerini epoch milisaniye olarak okur ve alarmın zamanını o değere ayarlar. Yani damga, SCADA’nın gözlemine değil sahanın bildirdiğine dayanır.
Bunun gerekçesi tarama periyodudur: alarm grubu saniyede bir kontrol ediyorsa, sistemin gördüğü an gerçek olaydan bir saniyeye kadar geç olabilir. Olayı kendi saatiyle damgalayan bir PLC bundan çok daha hassastır. Arıza sıralamasının önemli olduğu yerlerde — hangi koruma önce açtı, hangi sinyal önce geldi — bu fark belirleyici olur.
Yaşam Döngüsü
Section titled “Yaşam Döngüsü”Alarmın gerçek durumu iki değerlidir:
ON (tetiklendi) → OFF (kapandı)Onaylama, yorum ve zorla kapatma bu durumun parçası değildir — ayrı alanlarda tutulan operatör kayıtlarıdır:
| Alan / İşlem | Açıklama |
|---|---|
| acknowledgeTime / acknowledgedBy | Operatör onayladığında dolar; alarm hâlâ ON olabilir |
| commentTime / comment / commentedBy | Operatör yorum eklediğinde dolar |
| forceOff işlemi | Alarmı yapay olarak OFF’a çeker; koşul hâlâ doğru olsa bile |
| offTime | Koşul doğal olarak ortadan kalktığında dolar |
Bu ayrım renklendirmeye de yansır: bir alarm “ON ve onaylanmamış” ile “ON ve onaylanmış” durumlarında farklı renkte gösterilir. Renk eşlemesi grup üzerinde tanımlanır → Alarm Grupları.
Script ile yönetim
Section titled “Script ile yönetim”Alarmlar script’ten de sorgulanabilir ve yönetilebilir — listeleme, tarih aralığı sorgusu, onaylama, yorum ekleme, grup etkinleştirme. Metot envanteri ve örnekler: Alarm API →