Verinin Yazılması
Kontrolcü, simülatör veya başka bir uygulama, ölçüm ve durum bilgilerini belirlenen bir TXT dosyasına yazar.
- Analog değerler
- Dijital durumlar
- Metin bilgileri
- Durum ve çalışma bilgileri
- Zaman bilgileri
TXT veri iletişimi, iki veya daha fazla uygulamanın veri alışverişini bir metin dosyası üzerinden gerçekleştirmesine dayanır. Bir uygulama veriyi dosyaya yazar, diğer uygulama ise bu dosyayı okuyarak verileri kullanır.
Örneğin bir kontrolcü veya simülasyon uygulaması sıcaklık, basınç, hız, güç veya durum bilgilerini bir TXT dosyasına yazabilir. SCADA uygulaması ise belirli aralıklarla bu dosyayı okuyarak değerleri kendi veri noktalarına aktarabilir.
Bu yaklaşımda özel bir haberleşme sunucusu, protokol dönüştürücü veya veritabanı kullanılması zorunlu değildir. Verinin ortak olarak erişilebildiği bir dosya, sistemler arasında basit bir veri alışveriş noktası olarak kullanılabilir.
TXT yöntemi, teknik olarak MODBUS, OPC UA veya IEC 60870 gibi standartlaştırılmış bir endüstriyel haberleşme protokolü değildir. Daha çok dosya tabanlı veri alışverişi yaklaşımıdır. Bununla birlikte basitliği nedeniyle özellikle geliştirme, test ve simülasyon çalışmalarında oldukça kullanışlıdır.
TXT iletişiminde temel fikir oldukça basittir. Veri üreticisi bir text dosyasına veri yazar, veri tüketicisi ise aynı dosyayı okuyarak verileri işler.
Kontrolcü, simülatör veya başka bir uygulama, ölçüm ve durum bilgilerini belirlenen bir TXT dosyasına yazar.
SCADA veya başka bir uygulama dosyayı belirli aralıklarla okuyarak içerdiği bilgileri kendi veri yapısına aktarır.
EOS SCADA TXT istemcisinde veri adresi, TXT veri dosyasındaki satır numarası kullanılarak belirlenir.
Örneğin 21 numaralı satırdaki veriye erişmek için:
Satır numarası sayısal bir değer olmalıdır.
TXT dosyalarının en önemli avantajlarından biri, veri formatının uygulamanın ihtiyaçlarına göre kolayca belirlenebilmesidir. Bununla birlikte, iki tarafın aynı format üzerinde anlaşması gerekir.
Örneğin her satır bir veri noktası olacak şekilde aşağıdaki gibi basit bir yapı kullanılabilir:
Temperature=24.5
Pressure=6.8
Power=1250
PumpStatus=1
Bir başka yöntemde değerler virgül, noktalı virgül veya başka bir ayraç ile ayrılabilir:
Temperature;24.5
Pressure;6.8
Power;1250
PumpStatus;1
Daha karmaşık uygulamalarda tarih, saat, veri adı, değer ve kalite bilgisi gibi alanlar aynı satırda tutulabilir. Böylece basit bir text dosyası, küçük ölçekli bir veri alışveriş formatı olarak kullanılabilir.
Veriler standart text dosyalarında tutulabilir. Özel bir veritabanı veya haberleşme sunucusu gerektirmez.
Veriler normal bir text editörü ile açılarak incelenebilir. Bu özellik geliştirme ve hata ayıklama çalışmalarında büyük kolaylık sağlar.
Neredeyse bütün programlama dilleri text dosyalarını okuyup yazabildiği için basit veri alışveriş uygulamaları kolayca geliştirilebilir.
Bir uygulamanın ürettiği veriler başka bir uygulama tarafından aynı dosya üzerinden okunabilir.
Gerçek saha cihazları bulunmadan SCADA ve veri toplama uygulamalarının geliştirilmesi ve test edilmesi için kullanılabilir.
SCADA sistemleri, text dosyalarını okuyarak dosya içerisinde bulunan verileri kendi veri noktalarına aktarabilir.
Saha cihazlarının davranışlarını taklit eden basit simülatörler TXT dosyaları kullanılarak geliştirilebilir.
Aynı bilgisayarda veya erişilebilir bir dosya sisteminde çalışan uygulamalar arasında veri paylaşımı için ek haberleşme donanımı gerektirmez.
TXT dosyaları özellikle küçük ölçekli veri alışverişlerinde, geliştirme çalışmalarında ve test ortamlarında SCADA ile diğer uygulamalar arasında köprü görevi görebilir.
Örneğin bir simülasyon uygulaması her saniye yeni ölçüm değerlerini TXT dosyasına yazabilir. SCADA sistemi ise bu dosyayı belirli aralıklarla okuyarak değerleri gerçek bir saha cihazından geliyormuş gibi işleyebilir.
Bu yaklaşım sayesinde gerçek PLC, RTU veya sensör donanımı hazır olmadan SCADA ekranları, alarm mekanizmaları, trendler ve veri kayıt sistemleri test edilebilir.
Benzer şekilde bir SCADA sistemi tarafından üretilen veriler de başka bir yazılım tarafından TXT dosyası üzerinden okunabilir. Böylece basit uygulamalar arasında düşük karmaşıklıklı bir veri alışveriş kanalı oluşturulabilir.
TXT veri iletişiminin önemli kullanım alanlarından biri yazılım geliştirme sürecidir. Gerçek saha cihazlarına erişimin mümkün olmadığı durumlarda, bir text dosyası basit bir veri kaynağı olarak kullanılabilir.
Örneğin bir test uygulaması aşağıdaki gibi davranabilir:
Bu nedenle TXT yöntemi, EOS yazılımının geliştirme sürecindeki ilk haberleşme yaklaşımlarından biri olarak ayrı bir yere sahiptir. Günümüzde daha gelişmiş endüstriyel protokoller kullanılsa da, bu basit yaklaşım geliştirme ve test amacıyla hâlâ faydalı olabilir.
TXT dosyası kullanılırken veri alışverişinin güvenilirliği, kullanılan uygulamaların dosyaya erişim biçimine bağlıdır. Özellikle aynı dosyanın bir uygulama tarafından yazılırken başka bir uygulama tarafından okunması durumunda dikkatli bir erişim yöntemi kullanılmalıdır.
Dosyanın tamamı yazılmadan okunması, eksik veri alınması veya iki uygulamanın aynı anda dosyayı değiştirmeye çalışması gibi problemler ortaya çıkabilir.
Bu nedenle daha güvenilir uygulamalarda geçici dosya kullanımı, dosya kilitleme, tamamlanma işareti, zaman damgası veya checksum gibi uygulama seviyesinde yöntemler kullanılabilir. Özellikle kritik endüstriyel sistemlerde TXT yönteminin sınırlamaları dikkate alınmalıdır.
TXT veri iletişimi ile MODBUS, OPC UA, IEC 60870, IEC 61850 veya MQTT gibi endüstriyel haberleşme protokolleri aynı amaçla değerlendirilmemelidir.
Endüstriyel protokoller; adresleme, veri tipleri, zaman aşımı, hata kontrolü, bağlantı yönetimi, veri kalitesi ve benzeri konularda belirlenmiş kurallar sunar. TXT yaklaşımında ise bu kurallar büyük ölçüde uygulamayı geliştiren kişi tarafından belirlenir.
| Özellik | TXT | Endüstriyel Protokoller |
|---|---|---|
| Standart veri modeli | Genellikle yoktur | Genellikle vardır |
| İnsan tarafından okunabilirlik | Çok yüksek | Protokole bağlıdır |
| Geliştirme kolaylığı | Çok kolay | Protokole bağlı |
| Hata kontrolü | Uygulamaya bağlı | Protokole bağlı standart mekanizmalar |
| Gerçek zamanlı kullanım | Sınırlı | Uygun protokollerde yüksek |
| Geliştirme ve simülasyon | Çok uygun | Protokole bağlı |
Bu bölümde TXT dosyaları üzerinden veri üretmek, okumak, yazmak, izlemek ve SCADA uygulamalarıyla test etmek için geliştirilen araçlar paylaşılacaktır.
Araçlar; TXT tabanlı veri üreticileri, test uygulamaları, dosya izleme araçları, örnek uygulamalar ve geliştiricilere yardımcı olacak çeşitli araçlardan oluşabilir.
SCADA ve veri toplama uygulamalarını test etmek amacıyla TXT dosyalarına örnek veriler üreten araç.
TXT dosyalarında meydana gelen değişiklikleri gerçek zamanlı olarak izlemek ve verileri görüntülemek için kullanılabilecek araç.
Farklı programlama dilleriyle TXT tabanlı veri okuma ve yazma işlemlerini gösteren örnek uygulamalar.
TXT dosyaları üzerinden SCADA veri toplama uygulamalarının test edilmesine yardımcı olacak araç.
TXT tabanlı veri iletişimi, modern endüstriyel haberleşme protokollerinin sunduğu gelişmiş özelliklere sahip değildir. Buna karşılık son derece basit olması, verilerin doğrudan görülebilmesi ve neredeyse her yazılım tarafından kullanılabilmesi önemli avantajlardır.
Özellikle SCADA, veri toplama ve otomasyon yazılımlarının geliştirilmesi sırasında gerçek cihazlara ihtiyaç duymadan test ortamı oluşturmak için kullanılabilir.
EOS yazılımının ilk geliştirme dönemlerinde kullanılan bu yaklaşım, yazılımın gelişim sürecinin bir parçası olarak korunmuş ve basit veri alışverişi ile test uygulamalarında kullanılabilecek bir yöntem olarak değerlendirilmiştir.