----I OK I----: Check Validity (Geçerliliği Kontrol Et)

----I OK I----: Check Validity (Geçerliliği Kontrol Et)

Endüstriyel otomasyon sistemlerinde veri doğruluğu, sistem güvenilirliği için kritik bir öneme sahiptir. Siemens TIA Portal’da kullanılan "Check Validity" (Geçerliliği Kontrol Et) komutu, kayan noktalı (floating-point) sayıların geçerliliğini kontrol ederek hatalı verilerin işlemlere girmesini önler. Bu rehberde, S7-1200 ve S7-1500 serisi PLC’lerde kullanılan bu komutun tanımı, parametreleri, çalışma mantığı, pratik örnekleri ve dikkat edilmesi gereken noktalar detaylıca ele alınacaktır.

"Check Validity" Komutu Nedir?

"Check Validity" komutu, bir operandın (örneğin %MD20) geçerli bir REAL veya LREAL değer içerip içermediğini denetler. NaN (Not a Number), sonsuzluk veya bozuk veri gibi geçersiz durumları algılar. Komut, yalnızca giriş sinyali (EN) 1 olduğunda çalışır ve operand geçerliyse çıkış (ENO) 1, değilse 0 döner. Örneğin, bir sensörden gelen verinin geçerliliğini kontrol ederek sistemin stabil çalışmasını sağlayabilir.

"Check Validity" Komutunun Parametreleri ve Mantığı

"Check Validity" komutu, kayan noktalı bir değerin geçerliliğini kontrol eder ve hata güvenliği için çıkış sinyali üretir. Temel parametreler şunlardır:

ParametreVeri TipiBellek AlanıAçıklama
Floating-point (REAL, LREAL)I, Q, M, D, LKontrol edilecek değişken (örneğin, %MD20)

Çalışma Mantığı:

  • EN (Enable Input) 1 olduğunda komut çalışır, aksi halde ENO 0 döner.
  • Operand geçerli bir sayıysa (NaN veya sonsuz değilse), ENO 1 olur.
  • Geçersiz durumlarda (örneğin, sıfıra bölme sonucu NaN), ENO 0 döner.

Örnek Diyagram:

EN: 1
Operand: 5.0    → ENO: 1 (Geçerli)
Operand: NaN    → ENO: 0 (Geçersiz)
    

Örnekler

Örnek 1: Sensör Verisi Kontrolü

Amaç: Bir sıcaklık sensöründen gelen Temp_Value yalnızca geçerliyse Process_Heater rölesini aç.

Ladder Kodu:

Network 1:
|---[Check Validity]----(Process_Heater)---|
    | Temp_Value
        

Örnek Senaryolar:

Temp_ValueENOProcess_Heater
25.51 (TRUE)1 (Aktif)
NaN0 (FALSE)0 (Pasif)

Açıklama:

  • Temp_Value geçerli bir sayıysa, Process_Heater aktif olur.
  • Geçersizse (örneğin, NaN), röle kapalı kalır.

Örnek 2: Hatalı Veriyi Sıfırlama

Amaç: Flow_Rate geçersizse sıfırlanır.

Ladder Kodu:

Network 1:
|---[Check Validity]----|NOT|----(Flow_Rate = 0)---|
    | Flow_Rate
        

Örnek Senaryolar:

Flow_RateENOSonuç
10.01 (TRUE)Değişmez
NaN0 (FALSE)0.0

Açıklama:

  • Flow_Rate geçersizse, ENO = 0 olur ve sıfırlanır.

Örnek 3: Çarpma Öncesi Kontrol

Amaç: Tag_Value1 ve Tag_Value2 geçerliyse çarpılır.

Ladder Kodu:

Network 1:
|---[Check Validity]----[Check Validity]----[MUL]---|
    | Tag_Value1       | Tag_Value2       | IN1: Tag_Value1
    |                  |                  | IN2: Tag_Value2
    |                  |                  | OUT: Tag_Result
        

Örnek Senaryolar:

Tag_Value1Tag_Value2Tag_Result
5.03.015.0
NaN3.0Çarpılmaz

Açıklama:

  • Her iki değişken de geçerliyse çarpım yapılır, aksi halde işlem durur.

Örnek 4: PID için Analog Doğrulama

Amaç: Ölçeklenmiş analog giriş, PID’ye yalnızca geçerliyse gönderilir.

Ladder Kodu:

Network 1:
|---[SCALE]----[Check Validity]----[PID]---|
    | AnalogRaw   ScaledValue     PV_IN: ScaledValue
        

Örnek Senaryolar:

ScaledValueENOPID Durumu
50.01 (TRUE)Çalışır
NaN0 (FALSE)Durur

Açıklama:

  • ScaledValue geçerliyse PID çalışır, değilse durur.

Avantajlar

  • Güvenlik: Geçersiz verilerin işlemlere girmesini önler.
  • Stabilite: PLC’nin beklenmedik durumlarda çökmesini engeller.
  • Hızlı Tespit: NaN veya sonsuz gibi hatalı verileri anında algılar.
  • Esneklik: EN/ENO mekanizmasıyla diğer işlemlere kolayca entegre edilir.

Dikkat Edilmesi Gerekenler

  • Değişken Başlatma: Kullanmadan önce değişkenleri başlatın (örneğin, 0.0).
  • Veri Tipi: Yalnızca REAL veya LREAL ile çalışır.
  • Döngü Süresi: Gereksiz kontroller döngü süresini uzatabilir.

Uygulamalar

  • Sensör Doğrulama: Analog girişlerin güvenilirliğini kontrol etme.
  • PID Kontrol: Hesaplama öncesi veri doğrulama.
  • Veri Kaydı: Yalnızca geçerli verilerin loglanmasını sağlama.

İpuçları

  • Aralık Kontrolü: Geçerlilikle birlikte değer aralığını kontrol edin (örneğin, Tag_Value > 100.0).
  • Simülasyon: PLCSIM ile test ederek geçersiz veri senaryolarını doğrulayın.
  • Varsayılan Değer: Geçersiz durumlarda alternatif bir değer atayın.

Sonuç

Siemens TIA Portal’da "Check Validity" komutu, kayan noktalı verilerin doğruluğunu kontrol ederek otomasyon sistemlerinde güvenilirlik sağlar. Sensör doğrulama, matematiksel işlemler ve PID kontrol gibi geniş bir yelpazede kullanılan bu komut, hata oranını azaltır ve sistem stabilitesini artırır. Doğru kullanım için değişkenlerin başlatılması ve EN/ENO zincirinin dikkatli yapılandırılması önemlidir. Bu rehberi TIA Portal projelerinizde uygulayarak daha sağlam çözümler geliştirebilirsiniz.

Ek Kaynaklar: Siemens S7-1200/S7-1500 Dokümantasyonu

Yorumlar