Siemens TIA Portal’da Pozitif Kenar Algılama Komutları
Siemens TIA Portal’da R_TRIG (Pozitif Kenar Algılama) Komutu
Siemens TIA (Totally Integrated Automation) Portal, endüstriyel otomasyon projelerinde PLC (Programlanabilir Lojik Kontrolör) programlamayı destekleyen güçlü bir platformdur. TIA Portal’da kullanılan R_TRIG (Pozitif Sinyal Kenarını Tespit Etme) komutu, CLK girişinde "0"dan "1"e yükselen kenarı algılayarak belirli bir çıkışı bir tarama döngüsü boyunca "1" yapmak için tasarlanmıştır. P_TRIG’den farklı olarak, R_TRIG bir fonksiyon bloğu (FB) olarak çalışır ve durum bilgisini bir instance veri bloğunda (DB) saklar. Buton tetikleme, sensör algılama veya başlatma işlemleri gibi senaryolarda kullanılan bu komut, Ladder Diyagramı (LAD) ve Structured Text (STL) dillerinde etkilidir. Bu makalede, R_TRIG komutunun çalışma prensibi, parametreleri, kullanım örnekleri ve pratik ipuçları detaylı bir şekilde ele alınacaktır. Tüm bilgiler Siemens Industry Online Support’tan doğrulanmıştır.
1. R_TRIG Komutu Nedir?
R_TRIG (Rising Edge Trigger), CLK girişinde "0"dan "1"e yükselen kenarı (pozitif kenar) algılar ve çıkış parametresi Q’yu bir tarama döngüsü boyunca "1" yapar. P_TRIG’den farklı olarak, R_TRIG bir fonksiyon bloğudur ve önceki CLK durumunu bir instance veri bloğunda (DB) saklar. Komut, dört temel parametreye sahiptir:
- EN: Komutu etkinleştiren giriş (Enable Input).
- ENO: Komutun yürütme durumunu gösteren çıkış (Enable Output).
- CLK: İzlenen giriş sinyali.
- Q: Pozitif kenar tespit edildiğinde "1" olan çıkış.
Matematiksel Model: Pozitif kenar, CLK’nın durumu şu şekilde ifade edilir: CLK_current ∧ ¬CLK_previous = 1.
2. Parametreler ve Bellek Alanları
R_TRIG komutunun parametreleri ve desteklenen bellek alanları şöyledir:
Parametre | Bildirim | Veri Tipi | Bellek Alanı (S7-1200/S7-1500) | Açıklama |
---|---|---|---|---|
EN | Input | BOOL | I, Q, M, D, L veya sabit | Komutu etkinleştirir (1: aktif, 0: pasif) |
ENO | Output | BOOL | I, Q, M, D, L | Yürütme durumu (1: başarılı, 0: hata) |
CLK | Input | BOOL | I, Q, M, D, L veya sabit | İzlenen sinyal |
Q | Output | BOOL | I, Q, M, D, L | Pozitif kenar sonucu (1: kenar var, 0: yok) |
Not: R_TRIG, önceki durumu saklamak için bir instance DB kullanır. Her R_TRIG örneği için benzersiz bir DB atanmalıdır.
3. Nasıl Çalışır?
R_TRIG komutu, CLK girişindeki sinyalin durumunu karşılaştırarak pozitif kenarı algılar:
- Etkinleştirme: EN = 1 olduğunda komut çalışır.
- Mevcut Tarama: CLK’nın anlık durumu okunur.
- Önceki Tarama: Instance DB’den önceki CLK durumu alınır.
- Karşılaştırma: CLK = 1 ve önceki durum = 0 ise Q = 1 (pozitif kenar).
- Güncelleme: Instance DB, mevcut CLK ile güncellenir.
Zamanlama Diyagramı:
CLK: 0────┐ ┌────0────┐ └────┘ └────┘ DB State: 0────────0──1────────1 Q: 0────────1──0────────0
Açıklama: Q, yalnızca yükselen kenarda bir tarama döngüsü için "1" olur.
4. Pratik Örnekler
R_TRIG komutunun kullanımını anlamak için aşağıdaki senaryolar incelenebilir:
Örnek 1: Kombine Sinyal Tespiti
Senaryo: TagIn_1 ve TagIn_2 sinyalleri AND ile birleştiğinde veya TagIn_3 aktif olduğunda TagOut_Q bir döngü için "1" olur.
---[TagIn_1]---[TagIn_2]--+---[R_TRIG]----(TagOut_Q) | CLK: CombinedSignal ---[TagIn_3]-------------+ InstanceDB: "R_TRIG_DB"
STL Kodu:
A "TagIn_1"; A "TagIn_2"; O "TagIn_3"; = "CombinedSignal"; CALL "R_TRIG_DB" EN := TRUE, CLK := "CombinedSignal", ENO => "ENO_Status", Q => "TagOut_Q";
Açıklama: Kombine sinyal yükseldiğinde TagOut_Q bir döngü için "1" olur.
Örnek 2: Buton ile Başlatma
Senaryo: I0.0 (buton) basıldığında Q0.0 bir döngü için aktif olur.
---[I0.0]---[R_TRIG]----(Q0.0) CLK: I0.0 InstanceDB: "Button_Edge_DB"
STL Kodu:
CALL "Button_Edge_DB" EN := TRUE, CLK := "I0.0", ENO => "ENO_Status", Q => "Q0.0";
Açıklama: Buton basıldığında Q0.0 bir döngü için "1" olur. Titreşim önlemek için 100-200ms debouncing önerilir.
5. Avantajlar
R_TRIG komutu şu avantajları sunar:
- Yapısal Programlama: Instance DB ile durum saklama, modüler tasarıma olanak tanır.
- Hassasiyet: Yükselen kenarı doğru bir şekilde algılar.
- Kontrol: EN/ENO ile koşullu yürütme ve hata yönetimi sağlar.
6. Dikkat Edilmesi Gerekenler
R_TRIG komutunu kullanırken şu noktalara dikkat edilmelidir:
- Instance DB Çakışması: Her R_TRIG örneği için benzersiz bir DB kullanın; aksi halde durum bilgisi bozulur.
- Döngü Bağımlılığı: Komutun her tarama döngüsünde çalışması için OB1 gibi döngüsel bloklarda kullanın.
- ENO Kontrolü: Hataları yakalamak için ENO çıkışını izleyin (örneğin, geçersiz DB adresi).
7. Uygulama Senaryoları
R_TRIG komutu aşağıdaki alanlarda yaygın kullanılır:
- Başlatma İşlemleri: "Çalıştır" sinyaliyle bir kurulum rutini başlatma.
- Sensör Tespiti: Fotoelektrik sensörle parça sayımı.
- Güvenlik Sistemleri: Hata sinyalinde gecikmeli acil durdurma.
8. Yeni Başlayanlar İçin İpuçları
R_TRIG komutunu etkili kullanmak için:
- Simülasyon: TIA Portal PLCSIM ile sinyal geçişlerini test edin.
- DB İsimlendirme: Anlamlı isimler kullanın (örneğin, "Conveyor_EdgeDetect_DB").
- Modüler Tasarım: R_TRIG’yi fonksiyon bloklarında kapsülleyin.
- Dokümantasyon: Instance DB’leri ve tetikleyicileri yorumlarla açıklayın.
- Debounce: Titreşim için 100-200ms zamanlayıcı ekleyin.
9. Sonuç
Siemens TIA Portal’da R_TRIG (Pozitif Sinyal Kenarını Tespit Etme) komutu, sinyal yükselişlerini algılamada yapılandırılmış bir çözüm sunar. Instance DB kullanımı, modüler programlamayı destekler ve EN/ENO parametreleriyle gelişmiş kontrol sağlar. Bu rehberdeki örnekler ve ipuçlarıyla, PLC programlamada pozitif kenar tetiklemeyi etkin bir şekilde uygulayabilirsiniz! Görüşlerinizi yorumlarda paylaşabilirsiniz.
Yorumlar
Yorum Gönder