1. Verinin Yazılması
Kontrolcü, simülatör veya başka bir uygulama ölçüm ve durum bilgilerini belirlenen 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. Uygulamaların ortak olarak erişebildiği bir dosya, sistemler arasında basit bir veri alışveriş noktası olarak kullanılabilir.
TXT veri iletişimi 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 kullanışlıdır.
TXT veri iletişiminin temel çalışma mantığı 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 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.
In the EOS SCADA TXT client, the data address is specified using the row number in the TXT data file.
For example, to access the data in row number 21:
The row number must be a numeric value.
TXT dosyalarının önemli avantajlarından biri, veri formatının uygulamanın ihtiyaçlarına göre kolayca belirlenebilmesidir. Bununla birlikte, veri üreten ve tüketen uygulamaları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 kapsamlı uygulamalarda tarih, saat, veri adı, değer ve kalite 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 önemli 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 bir veri alışveriş noktası olarak kullanılabilir.
Ö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 çalışabilir:
Bu nedenle TXT yöntemi, EOS yazılımının geliştirme sürecindeki ilk veri alışverişi 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, 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.
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ı kategoride 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 | Protokole bağlı olarak bulunabilir |
| İnsan tarafından okunabilirlik | Çok yüksek | Protokole bağlıdır |
| Geliştirme kolaylığı | Çok kolay | Protokole bağlıdır |
| Hata kontrolü | Uygulamaya bağlı | Protokole bağlı mekanizmalar |
| Gerçek zamanlı kullanım | Sınırlı | Uygun protokollerde yüksek |
| Geliştirme ve simülasyon | Çok uygun | Protokole bağlıdır |
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.