Android ile plc Kontrol

1
3835
Android ile PLC Kontrol

İlk başta plc kontrol için Android geliştirme araçlarını indirmeniz ve  yüklemeniz gerekmektedir:

Aşağıdaki link Android gelişimi için gerekli tüm araçları içeren bir arşiv dosyası indirmenize izin veriyor. Android gelişimi için arşiv indir.

  • JDK, 5-6.Sürüm: Java Development Kit ve Java Runtime Environment (JRE, JDK ile birlikte geliyor). Java kodu, yazma işlemi ve çalıştırmak için gereken dosyalar ve küçük programlar (araçlar) içerir.
  • Eclipse IDE (Eclipse Integrated Development Environment): Android uygulama oluşturmak, derlemek ve paketlemek için gerekli araçları içerir ve aynı zamanda bir Android cihaz emülatörü sağlar. Böylece  Android uygulamaları gerçek bir Android telefon olmadan test edilebilir.
  • Android SDK: Android Yazılım Geliştirme Kiti bir takım kapsamlı geliştirme araçları içerir.
  • ADT: Google, Eclipse ile Android uygulamaları geliştirmek için Android Geliştirme Araçları (ADT) sağlıyor. Android geliştirme özellikleriyle ADT, Eclipse IDE içindeki bir takım yapılandırılmış (extend edilmiş) bileşenleri düzenler.

Android ile plc Kontrol Nasıl Yapılır?

Eclipse Properties view

Bir sonraki adım, plc ile bir Android uygulaması ve kontrol gerçekleştirmek: 

Bu amaç için, Wifi ve özgür kütüphane (free library) Libnodave  kullanabilirsiniz:

  • Wi-Fi için HSPA ile bir 3G/UMTS yönlendirici; SCALANCE m875 ve endüstriyel uygulamalar için VPN özelliğini tercih edebilirsiniz.
  • PLC ile Android uygulamalarını bağlaman için ayrıca şu siteden http://libnodave.sourceforge.net/ gelen LibNoDave kütüphanelerini indirmeniz ve bunu değiştirmeniz gereklidir.

Bir Android uygulaması oluşturun:

Biz mümkün olduğunca basit bir test uygulaması oluşturacağız. Aşağıdaki veriler ile yeni bir Android Projesi oluşturmak için File  → New → Other… → Android → Android Application Project adımlarını izleyin.

  • Application Name (Uygulama İsmi) – S7 NoDaveTest
  • Project Name (Proje İsmi) – S7NoDaveTest
  • Package Name (Paket İsmi) – com.example.s7libnodavetest
  • Target SDK (Hedef SDK) – API 17: Android 4.2 (Jelly Bean)
  • Template (Şablon) – BlankActivity
  • Activity (Etkinlik) – MainActivity
  • Layout (Katman)– activity_main

Görünüş ve özelliklerini ekleyin:

Android uygulaması için bir layout (Katman) oluşturun: res/layout/activity_main.xml seçin ve sürükle ve bırak yoluyla veya XML kaynak kodu ile aşağıdaki gibi katmanları oluşturun;

  • Plain Text for IP address – IP Adresi için Düz Metin
  • Plain Text for entries variable type “test” – Giriş Değişken Türü “test” için Düz Metin
  • Plain Text for entries variable type “value” – Giriş Değişken Türü “değer” için Düz Metin
  • Widgets butonu – PLC ile bağlamak için
  • Widgets butonu – Değerleri okumak için
  • Widgets butonu – Değerleri yazmak için ekleyin.

res/values/string.xml dosyasını seçin ve statik özellikler ekleyin;

  • Ip address – IP adresi
  • Connection – Bağlantı
  • Read – Okuma
  • Write – Yazma

Görünüm özelliklerini düzenleyin. Her bir kullanıcının arabirimi bileşenini (bir view kopyasını) seçin ve onların özelliklerini Eclipse Properties view bağlantısı ile değiştirin.

LibNoDave library Verilerini Alma:

  • Package explorer içerisinde, sizin yeni projenize sağ tıklayın ve import (veri alı) seçin.
  • Sonra “File system” seçeneğini tıklayın. Burada size dizine göz atmak için bir diyalog penceresi karşınıza çıkmış da olabilir.
  • Kaynak dosyalarını içeren Base directory seçin ve ardından almak istediğiniz dosya/dizinleri kontrol edin.

İndirilen kütüphane bir test kütüphanesidir bu nedenle değiştirmeniz gereklidir. Tüm hata ayıklama işlevlerini (debug functions) kapatın, tüm kullanılmayan değişkenleri silin, sadece gerekli fonksiyonları bırakın ve başka tip iletişimler için olan fonksiyonları silin. Ayrıca köprü sınıfı (bridge class) oluşturmanız gereklidir. PLC ile bağlantılıyken, bu class bağlanmak için LibNoDave library ve android uygulamalarının UI’lerini kullanır, değişkenleri okuma/yazma vb işlemleri yapar.

Örneğe Başlıyoruz:

Kaynak kodlarını buradan indirebilirsiniz.  java kaynak kodlar

Değişkenler tablosu S7:

Buradaki amaç, Tablo S7 deki değişkenler gibi aynı çalışan bir android uygulaması oluşturmaktır.

Kaynak kodlarını buradan indirebilirsiniz.  java kaynak kodlar

Değişken tablosu için izin verilen adresler ve değişken tipleri örneği:

Android emülatörü ve “gerçek” bir ağ arabirimi ile test edilmiştir. Telnet ve ADB ile TCP Port (bağlantı noktası) emülatöre yönlendiriliyor:

  • adb forward tcp:sourceport tcp:destport
  • Telnet localhost 5554
  • redir add udp:sourceport:destport

Değişken Tablo Yapısı:

  • Giriş ve doğrulama talimatları S7 ve adresleri: java kaynak kodlar
  • PLC ile veri alışverişi: java kaynak kodlar
  • PLC ile bağlantı: java kaynak kodlar
  • Info instructions – Bilgi Talimatları
  • Force values – Kuvvet Değerleri

Paylaşır mısınız?
Önceki İçerikArduino Eğitim Ondalık Sayılar
Sonraki İçerikTürbülans Nedir?
Furkan Gümüş
Karadeniz Teknik Üniversitesi Makine Mühendisliği bölümü mezunu. Yüksek lisans eğitimini Marmara Üniversitesinde Mekatronik üzerine devam ettirmektedir. Uzmanlık alanı Robot ve Mekatronik Sistemler, Otomatik Kontrol, Mekanik Tasarım, Gömülü Sistem ve Kontrol Yazılımlarıdır.

1 Yorum

  1. Package explorer içerisinde, sizin yeni projenize sağ tıklayın ve import (veri alı) seçin. Bu kısmı bulamadım yardımcı olur musunuz?

Düşünceleriniz Nedir?