2. PROJENİN
AMACI
Türkiye’de birçok firma SCADA programı ile endüstriyel
sistemlerini ya da enerji sistemlerini kontrol etmektedir.
Bu kapsamda projenin hedefi SCADA Otomasyon programı
verilerininAndroid işletim sistemli mobil uygulamada izlenmesidir.
Mobil uygulamada bu verilerin izlenmesi, endüstride birçok
kolaylığı beraberinde getirebilir. İnsan ve zaman faktörü tasarrufu
sağlayacaktır.
3. SCADA
NEDİR?
Kapsamlı ve bütünleşmiş birVeriTabanlı Kontrol ve Gözetleme
Sistemi (Supervisory Control and DataAcquisition (SCADA) )
sistemi.
Bir tesise veya işletmeye ait tüm ekipmanların kontrolünden
üretim planlamasına, çevre kontrol ünitelerinden yardımcı
işletmelere kadar tüm birimlerin otomatik kontrolü ve gözlenmesi
sağlanabilir.
Anlık olay ve alarmları saklayarak geçmişte meydana gelen
olayları da tekrar günün tarihinde ve saatinde
gözlemleyebilmemizi de sağlayan geniş kapsamlı mükemmel bir
sistemdir.
5. SCADA
Birçok SCADA dağıtımı olmasına rağmen en popüler olanı
SiemensWincc SCADA dır.
SCADA Raporlama formatları CSV, DOC ve PDF’tir. En sık
kullanılan okunabilirliği ve işlenmesi bakımından CSV (Comma
SeperatedValues) tipidir.
Projemde SCADA’nın mevcut sistemlerdeki işleyişini analiz edip
raporlama standardı üzerinde çalıştım. SCADA’nın raporlama
öncesi işlemleri zaten mevcut sistemlerde standart olarak
yapılmaktadır.
8. PROJE
ADIMLARI
Projeyle ilgili literatür taraması yapıldı. Daha önceden bu konuda
yapılmış benzer uygulamalar incelendi. Literatür taraması özeti
teslim edildi.
Wincc SCADA programının sensörlerden PLC yardımıyla veri
alması, verileri şematik olarak tanımlaması ve sistem verilerinin
raporlanması aşamaları incelendi.
Verilerin sunucu tarafında işlenmesi ve telefonun minimum kaynak
tüketerek algılayabileceği formata getirilmesi aşamasında yeni
metodolojiler kullanıldı. (Bkz. RestfulWeb Service ve JSONParser)
Sunucu tarafı yazılımları, dinamik (responsive) bir Web Service
oluşturmak için Javascript ve Ajax ile kodlandı.
9. PROJE
ADIMLARI
Böylece SCADA’dan gelen CSV türündeki veriler okunarak
sıralandı.Sıralanan veriler Node.js kullanılarak sunucu tarafında
JSON tipine dönüştürüldü.
Mobil cihazların sınırlı işlemci ve hafıza gücü olduğundan web
tarafından veriler eskiden XML olarak alınırdı.XML tipindeki
dosyalar küçük boyutlu olduğundan çok popülerdi.Ancak XML
dosyalarının hem sunucu tarafında oluşturulması hem de mobil
cihaz tarafında işlenmesi zordu.
Yeni bir dosya tipi olan JSON formatı, şu sıralar XML’in yerini
hemen hemen her uygulamada almış durumda. Oluşturulması ve
işlenmesi XML’e göre daha kolay olmasından dolayı artık eski
sistemlerdeki XML dosyalar bile JSON formatına çevrilmekte
olduğundan ben de projemde CSV verileri JSON’a çevirerek mobil
uygulamamda kullanmayı tercih ettim.
10. PROJE
ADIMLARI
Mobil uygulama tarafında ise Android işletim sistemine yazılım
geliştirildiği için Java yazılım dili kullanıldı. Java’nın Android SDK’sı
ve JSON eklentileri (JSON Plugin) kullanıldı.
Android tarafında gelen JSON dataları telefonun ekranındaki
TextBox’a (metin kutucukları) yazdırmak için JSONParser
methodu kullanıldı. Uygulamada işletmede sürekli çalışan bir
motordan alınan verilerin tarih, saat, maksimum sıcaklık ve
örnekleme zamanı bilgileri ekrana yazdırıldı.
İşletmedeki motorun öngörülen maksimum sıcaklık değerini
aşması durumunda kırmızı arka plan, sembolik sıcaklık
göstergesi, pop-up (Toast) uyarı yazısı ve sesli alarm ile
uygulamanın uyarı sistemi yapıldı.
Programın menüsünden istenilen durumda işletmedeki yetkiliye
ulaşabileceği kısayol arama eklentisi yapıldı.
11. PROJE
ADIMLARI
Android uygulamasında temel birkaç veriye ait bilgiler
görüntülendiğinden yazılımın içinde SCADA’dan gelen tüm
verilerin telefonun yerel klasöründeki «scadadatas.txt» dosyasına
yazılması sağlandı.
Projenin yazılımında Eclipse IDE uygulama geliştirme ortamı
kullanıldı. Nesneye dayalı programlama (Object-oriented
programming) derleyenler için oldukça kullanışlı ve gelişmiş bir
uygulama olması bakımından tercih edildi.
Proje web tabanlı bir uygulama olduğu için Internet güvenliği için
Android uygulama içinde gerekli olan ayarlar yapıldı.
15. PROBLEMLER
Yeni yazılım teknolojileri kullanıldığından dolayı bazıAndroid
paketlerinde sık sık hatalar oluştu ve bu nedenle zamanımın büyük
çoğunluğu çözüm araştırmakla geçti.
Yazılım geliştirme (Software development) ve Ara yüzTasarlama
(User-Interface Design) çok farklı işler olduğundan uygulamamın
ara yüzü istediğim gibi olmadı. Projemin kod işleyişi başarılı
olmasına rağmen kullanıcı ara yüzü kod kalitesine gölge
düşürmektedir.
Projeyi tek kişi yapmış olmam dolayısıyla iş paylaşımı, bilgi
paylaşımı ve takım çalışması ortamı oluşmadığından proje arzu
ettiğim kalitede gerçekleşmemiştir.
16. SONUÇ
Uygulama yenilikçilik getirmesi bakımından oldukça önemlidir.
Daha önceleri SCADA verilerinin telefona mesaj olarak
gönderilmesi mümkündü ancak mobil uygulama hali yoktu.
Web tabanlı uygulama olduğundan ve yeni yazılım teknolojileri
kullanıldığından sadece Android platformu için değil tüm
platformlara uygundur. İstenildiğindeWindows Phone ve IOS
mobil platformları için de kolaylıkla uyarlanabilir.
Proje açık kaynak kodlu (open source) olarak gerçekleştirilmiştir.
Proje kodları GitHub Repository’sinde olacaktır. İsteyen herkes
oradan kodları çekip geliştirmeye devam edebilir.