View
10
Download
0
Category
Preview:
Citation preview
ENDÜSTRİYEL OTOMASYON SİSTEMLERİ
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
437
Elektroerozyon Tezgâhlarında İşleme Parametrelerinin PLC İle
Denetimi
Mehmet Fatih IŞIK1, Halil AYKUL
2, Erhan ÇETİN
2*
1Elektrik-Elektronik Mühendisliği Bölümü
Hitit Üniversitesi, Çorum mehmetfatih@hitit.edu.tr
2Makine Mühendisliği Bölümü
Hitit Üniversitesi, Çorum halilaykul@hitit.edu.tr *erhancetin@hitit.edu.tr
Özetçe
Elektroerozyon işleme (EEİ) malzeme işleme yöntemleri
içinde en iyi alternatiflerden biridir. Elektroerozyon ile işleme
prensip olarak elektriksel bir kıvılcımın metali aşındırmasına
dayanır. Bu çalışmada istenilen elektriksel kıvılcımı
oluşturabilmek için gerekli olan güç kaynağı ünitesinin
tasarımı ve imalatı gerçekleştirilmiştir. Güç kaynağının
kontrolünü gerçekleştirmek için PLC ve Operatör Panel
kullanılmıştır. Gerçekleştirilen kontrol ile hızlı açma ve
kapama işlemleri için uygun bir yapı sağlanmıştır. Kontrolör
olarak Panasonic PLC kullanıcı denetimi için Easy View
operatör panel kullanılmıştır. PLC ve operatör panel
arasındaki haberleşme için seri port kullanılmıştır. Bilgisayar
ortamında geliştirilen yazılımlar USB üzerinden PLC ve
operatör panele aktarılmıştır. Kullanıcı operatör panel
üzerinden tek yâda reçete sistemi ile birden fazla işlem
yapabilmektedir.
1. Giriş
Günümüzde geleneksel olmayan üretim yöntemlerinden
biri olan elektroerozyon ile işleme (EDM - Electrical
Discharge Machining) yaygın olarak kullanılmaktadır.
Özellikle CNC ve benzeri tezgahlarda yapılması zor olan
parçaların, çok sert malzemelerin ve karmaşık biçimlerin
kolaylıkla işlenebilmesi bu yöntemin kullanım alanını
genişletmiştir[1-3]. Elektroerozyon tezgâhında, kontrollü
elektrik arklarıyla talaş kaldırılır. Her bir ark iş parçası
üzerinde küçük bir krater meydana getirir. Arkın sürekli
dolaşmasıyla şablonun şekli karşı tarafa geçirilir. Klasik
tezgâhların aksine bu teknikle sertleştirilmiş parçalar ve sert
maden uçlar kolaylıkla işlenebilir[4]. Bu özellik, tezgâha çok
önemli bir uygulama sahası açmaktadır. Elektroerozyon
tezgâhının önemli bir avantajı da kesme kuvvetinin
olmamasıdır[5]. Şekil 1’de dalma elektroerozyon tezgâhının
şematik olarak gösterimi verilmiştir[6].
Şekil 1. Dalma EDM elemanlarının şematik olarak
gösterimi Elektroerozyon işlemi, özellikle uzay malzeme ve
alaşımları, iletken malzemeler ve süper tok olan malzemelerin
işlenmesinde başarılı olarak kullanılmaktadır. Özellikle
işlenmesi zor olan veya imkânsız olan karmaşık şekilli
parçaların işlenmesi özellikle bu işlemle rahat bir şekilde
yapılmaktadır. Elektroerozyon ile işleme imalat sanayinde
sürekli artan bir şekilde kullanılmaktadır. Bu metot, plastik
sanayinde de çelik kalıplar, ekstrüzyon kalıplar içinde
kullanılmaktadır[7].
2. Güç kaynağı ünitesi
Bu çalışma ile dalma elektroerozyon tezgahları için güç
kaynağı (jeneratör) ünitesinin tasarımı ve uygulaması
geliştirilerek, elektroerozyon tezgahlarında kullanılması
amaçlanmıştır. Uygulama aşamasında ilk olarak kıvılcım
işlemini sağlayacak olan güç kaynağı ünitesi için gerekli olan
elektronik kartlar tasarlanmıştır. Sonraki aşamada talaş
kaldırma işlemi için elektrodun bağlı olduğu ekseni hareket
ettirecek olan DC servomotorun kontrolü için elektronik
sürücü devresi tasarlanmıştır. Son olarak kıvılcım işlemi ve
servomotor kontrolü sağlanmıştır. Kontrolör olarak
endüstriyel uygulamalarda çok sık kullanılan PLC ve çalışma
durumunu izleme ve kontrol için operatör panel kullanılmıştır
[8].
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
438
Elektroerozyon ile işleme için gerekli olan talaş kaldırma
ünitesi, temel olarak şu bileşenlerden oluşur;
1. DC güç kaynağı ( Çok hızlı açma-kapatma işlemi yapabilen)
2. Dielektrik Sıvı
3. İş parçası ve Elektrot
4. Servo Sistem
Elektroerozyon ile işlemede talaş kaldırma işlemi için iyi
bir jeneratör tasarlayabilmek erozyon sistemi içinde olan gap
(aralık) voltajını iyi tespit etmek ve buna göre güç ünitesini
tasarlamak ile mümkündür. EDM sistemi, iş parçası ile
elektrot arasında meydana gelen aralık voltajının kontrolüne
göre çalışmaktadır. Bunun yanı sıra güç kaynağı tasarımı
sırasında, elektrot ile iş parçası arasında meydana gelen
kıvılcımın vurum süresi ve işlem bitiminde ne kadarlık bir
süre bekleneceği gibi hususlar önemli olduğu için göz önüne
alınmalıdır. Aralık geriliminin çalışma modeli Şekil 2’ de
gösterilmiştir[9].
Şekil 2. Gap voltajının çalışma modeli
Tasarlanan sistemin kontrol diyagramı Şekil 3’te
sunulmuştur. Kontrol sisteminde transformatör katı, AC-DC
dönüşümü, tek faz doğrultma işlemi ve filtreleme işlemi, GAP
voltajı, ton, toff, bekleme süresi ve geri çekme sürelerini
ayarlama işlemi ve DC servo motoru sürme işlemi ve diğer
devre kartları güç kaynağı içine yerleştirilmiştir[8].
Şekil 3. Geliştirilen güç kaynağı blok diyagramı
Geliştirilen güç kaynağına ait fotoğraf Resim 1’de
sunulmuştur.
Resim 1. Tasarlanan güç kaynağı ünitesi
3. Dc servomotor kontrol ünitesi
Elektroerozyon tezgâhları için geliştirilen güç kaynağı
ünitesi DC kaynak olarak kullanıldığı için bu çalışmada
elektrodun bağlı olduğu kafayı hareket ettirecek olan eksen
için DC servomotor tercih edilmiştir. Elektrodun bağlı olduğu
kafayı hareket ettirecek olan Z ekseni için Tablo 1’ deki
özelliklere sahip bir DC servomotor kullanılmıştır[8].
Tablo 1. DC Servomotorun teknik özellikleri
Eksen Gerilim
(VDC)
Akım
(A)
Güç
(W)
Tork
(Nm)
Devir
Sayısı
(d/dk)
Servomotor
Sürücü
Tipi
Z 12 DC 6,5 78 1,27
Nm 3000
DC Servo
Motor
Doğru akım motorların kontrolü iki aşamalı olarak
yapılmıştır. Birincisi doğru akım motoru için hız kontrolü
diğeri ise konum kontrolüdür. Buna göre bir doğru akım
ayarlayıcısına değişik yöntemlerle kumanda ederek akım
ayarlanabilir. Bu yöntemlerden bazıları darbe genişlik
modülasyonu (PWM) ve darbe periyodu modülasyonu (PFM)
dir[10]. Bu çalışmada darbe genişlilik modülasyonu
kullanılmıştır. Çünkü değişken ve yüksek frekanslı sistemlerde
filtre etme güçlükleri söz konusudur. Buna göre elektrotun
bağlı olduğu kafayı hassas hareket ettirecek olan Z ekseni için
tasarlanan sürücüye ait açık devre şeması Şekil 4’de, fotoğraf
ise Resim 2’de gösterilmiştir[8].
Transformatör
Katı
Tek Faz
Doğrultucu
Filtreleme
ve Sinyal
Durumu
Akım Seçici
ve Gerilim
Kıyıcı
Kontrol
Devresi
Operatör
Panel
PLC 220 V
50 Hz
Elektrot
İş Parçası
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
439
Şekil 4. Z ekseni için DC servomotor sürme devresi
Resim 2. Z ekseni için servomotor sürücüsü fotoğrafı
4. Denetleme ve kontrol ünitesi
Geliştirilen güç kaynağı ünitesinin denetimini sağlamak
üzere PLC ve operatör panel kullanılmıştır. PLC ve operatör
panel için gerekli olan yazılımlar bilgisayar ile cihazlara
gönderilmiştir.
4.1. PLC kontrol yazılımı
Kontrol ünitesi için Tablo 2’deki özellikler sahip
Panasonic FP-X serisi PLC kullanılmıştır. PLC den istenilen
analog çıkışları elde etmek için iki çıkışlı D/A dönüştürücü
kullanılmıştır.
Panasonic FPX PLC’ nin önemli üstünlükleri, aynı anda
dört eksen çıkış verme özelliğine sahip olması, PWM çıkış
verebilmesi, USB ile programlanabilme özelliğine sahip
olması, ekstra modüllerin eklenebilmesi, takılacak bir pil
vasıtasıyla adreslerdeki bilgilerin saklanabilmesi, doğrudan
operatör panel ile haberleşme yapabilmesi ve yazılımının
kolay bulunabilmesidir.
Tablo 2. Panasonic FP-X serisi PLC özellikleri
İşlemci hızı 0.32 usec Çalışma anında düzenleme
32K program hafızası FP-X 24v sensör güç kaynağı
Eklenebilen kartlar 16 İstasyonlu master/master
ağı
50 Micro saniyeli işlem
hızı
USB Girişi
I-PD kontrol Otomatik ayarlı PID
100KHz Hareket hızı Kayan nokta birimi
Modbus Master & Slave 8 Kanal hızlı sayacı
PLC ve çevre birimlerinin bağlantısı ve kontrolüne ait blok
diyagram Şekil 5’te sunulmuştur[8].
“
Şekil 5. Kullanılan PLC çıkış modülleri kullanımı blok
diyagramı
PC üzerinden gönderilen pozisyon bilgileri PLC aracılığı
ile servo sürücülere gerçek zamanlı bilgi olarak
gönderilmektedir. Servo sürücüler pozisyon bilgilerine göre
(Darbe Miktarı) istenilen pozisyona hareket etmektedir. Bu
sırada servomotorlara bağlı enkoderlerden alınana gerçek
zamanlı bilgiler ile karşılaştırarak sürücünün karşılaştırma
yapmasına imkân sağlamaktadır[11].
4.2. Operatör panel (touch panel) denetimi
Operatör panel (Touch Panel) endüstriyel uygulamalarda
çok sık kullanılan kullanıcının sistemi kontrol edebileceği
dokunmatik ekranlardır. Bir nevi mini bilgisayar olarak da
adlandırılabilir[8]. Geliştirilen sistemin servo kontrol
ünitesinin ve güç kaynağı ünitesinin kullanıcı denetimini
sağlamak için Easy View marka MT506S modeli renkli
operatör panel kullanılmıştır.
Geliştirilen güç kaynağı ünitesi PLC tabanlı ve operatör
panel kontrollü bir sistem olup operatör panel denetim blok
diyagramı Şekil 6’da gösterilmiştir[8].
Şekil 6. Operatör panel kontrolü blok diyagramı
Operatör panel üzerinden gönderilen değerler (dijitial
değer olarak 1 bit gönderilmiş ve bu 1 bitlik sürenin zamanı
FPX
PLC
Dij
ital
Çık
ışla
r (O
utp
ut)
Dij
ital
Gir
iş
(In
pu
t)
Analog Çıkış Modülü
D/A- 1 D/A- 2
GAP
Voltajı
Hassasiyet
Bekleme
Süresi
Geri
Çekme
Süresi
DC Servo
Motor
Operatör Panel
(Touch Panel)
FPX PLC
Güç Kaynağı Ünitesi Servo Kontrol Ünitesi
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
440
ayarlanmıştır) PLC üzerinden güç kaynağı ünitesinin çalışma
durumunu belirlemektedir. Operatör panelin çalışma durumu
Şekil 7’de gösterilmiştir[8].
Geliştirilen operatör panel yazılımı EBW-500 programı
kullanarak geliştirilmiştir. Kullanıcı isteğine bağlı olarak
işleme seçeneği seçilmek suretiyle işlem yapılabilmektedir.
Geliştirilen operatör panel yazılımının bilgisayar üzerinden
online kontrol edilebilmesi önemli bir avantaj olarak
görülmektedir[8].
Geliştirilen operatör panel yazılımı endüstriyel
uygulamalarda kullanılan klasik kontrol sisteminin aksine
işleme parametreleri kullanıcı isteğine bırakmaktadır.
Kullanıcı klasik kontrol sistemlerinde olan kademe seçiminin
yanında istediği değeri PLC üzerinden hem servo kontrol
ünitesine hemde jeneratör ünitesine gönderebilmektedir.
Şekil 7. Operatör panel çalışma durumu
Kullanıcı Şekil 7’ de vurum frekansı, ton (PWM) oranını
ve buna bağlı olarak bekleme ve geri çekme süreleri ile aralık
voltajı (kıvılcım aralığı)’ nı ayarlamalıdır.
Frekans kademeleri 0-12,5 KHz arasında
ayarlanabilmektedir. Tezgâhın uygun çalışma işlemini
gerçekleştirmesi için frekans 1KHz den itibaren ayarlanmıştır.
Şekil 8. Güç ayarı ekranı
Güç değerlerinin ayarlanmasından sonra Şekil 8’ de start
butonuna basıldığında belirtilen değerlerde işlem
başlamaktadır.
Şekil 9’ da Otomatik mod “Reçete ile işleme” seçeneği
olarak adlandırılmıştır.
Kullanıcı isteğine bağlı olarak geliştirilen reçete sistemi ile
işlenecek malzemenin farklı konumlarına ister adım adım ister
her adım bittiğinde diğer adıma geçiş şeklinde otomatik olarak
ayarlanabilmektedir. Bu durumda kullanıcı için geliştirilen
önemli bir fark her adım için farklı işleme parametreleri (Güç
kaynağı ünitesi için) girebilmektedir[8].
Zaman kısmında ki değer ise farklı eksenel noktalar için
belirtilen işleme zamanlarıdır. Örneğin; kullanıcı üç noktada
işleme yaptığını varsayarsak birinci noktada 40 s, ikinci
noktada 20 s üçüncü noktada ise 50 s çalışması isteniyorsa
belirtilen değerler işleme adımlarının yanında belirtilen alana
girilmesi suretiyle yapılmaktadır. Bu adımların sayısı PLC
içinde belirtilen sayı kadar oluşturulabilmektedir[8].
Şekil 9. Otomatik mod çalışma ekranı
Tasarımı yapılan ve geliştirilen güç kaynağı Resim 3’de
gösterilmiştir[8].
Resim 3. Tasarlanan güç kaynağı ünitesi
Geliştirilen PLC tabanlı operatör panel kontrollü güç
kaynağının teknik özellikleri Tablo 2’ de verilmiştir.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
441
Tablo 2. Güç kaynağına ait teknik bilgiler Elektronik Güç Devresi
Güç (220 V, 50 Hz, 1~) 2,5 KVA
Boşalım Akım
Kademeleri
0 – 5 – 10 – 15 – 25 A
Vurum Süresi
Kademeleri *
4-6-12-25-50-100-200-400-
800-1000 μs
Bekleme Süresi
Kademleri *
4-6-12-25-50-100-200-400-
800-1000 μs
Çalışma Süresi
Kademeleri *
0,2-0,4-0,8-0,8-1,6-3,2-6,4-
12,8 s
Geri Çekme Süresi
Kademeleri *
0,2-0,4-0,8-0,8-1,6-3,2-6,4-
12,8 s
Vurum Frekansı 1-12.5 Khz ( 19 kademe)
* Verilen değerler standart değerlerdir, fakat bu değerler
kullanıcı isteğine göre ayarlanabilmektedir.
** İsteğe göre ayarlanabilmektedir.
5. Sonuç
Geliştirilen PLC tabanlı ve operatör panel kontrollü güç
kaynağı endüstriyel uygulamalardaki yapıya benzer olarak
tasarlanmış ve imal edilmiştir. Geliştirilen güç kaynağına hem
hızlı bir tepki zamanı özelliği hemde istenilen değerler dış
etkilerden etkilenmeden daha doğru ve hatasız değerler
gönderilebilme imkânı sağlanmıştır. Operatör panel ile PLC
arasında veri iletme hızı çok yüksek olduğundan hızlı açma ve
kapama işlemleri için uygun bir yapı sunulmuştur. Aynı
zamanda PLC ve güç kaynağı arasındaki haberleşme hızın da
yüksek olması talaş kaldırma oranının istenilen değerde
tutulmasını sağlamıştır. Gerçekleştirilen uygulama istenildiği
takdirde bilgisayar üzerinden de kontrol edilebilmektedir.
Ayrıca PLC yazılımı sayesinde operatör panel üzerinden
birden fazla işleme parametresi ayarlanabilmektedir. Bunun
yanında geliştirilen operatör panel yazılımı ile tek işleme ya da
çoklu işleme durumları için de uygun bir yapı oluşturulmuştur.
Kaynakça
[1] S. H. Halkacı, Elektroerozyon (EDM) İle İşlemede Yarı
Küresel Uçlu Genel Amaçlı Elektrodların
kullanılabilirliğini Araştırılması S.Ü. Bilimsel Araştırma,
Konya, Proje No : 98/081, 2002.
[2] B. Ekmekçi , O. Elkoca , A. Erden, “Comparative Study
on the Surface Integrity of Plastic Mold Steel due to
Electric Discharge Machining,” Metallurgical and
Materials Transactions B, Cilt:36 No:2, s: 117-117, 2005.
[3] B. Ekmekçi, O. Elkoca, A. E. Tekkaya, A. Erden,
“Residual Stress State and Hardness Depth in Electric
Discharge Machining: De-ionized Water as Dielectric
Liquid”, Machine Science and Technology, Cilt: 9, s: 39–
61, 2005.
[4] J. Doval-Gandoy, R. Pasandin, B. Fernandez, “Sharpened
of saw blades by electrical discharge machining”,
Industrial Electronics Society, IECON 2005. 32nd Annual
Conference Of IEEE, s:5, 2005.
[5] Furkan Makine Sanayi “Elektroerozyon Tezgahları Temel
Bilgiler Kılavuzu”, 2000.
[6] C. Çoğun, Ş. Akaslan, “The effect of Machining
parameters on tool wear and machining performance in
EDM,” KSME International Journal, Cilt: 16, No: 1, s:
46-59, 2002.
[7] Y. Şahin, “Talaş Kaldırma Prensipleri 2” , Nobel Yayın
Dağıtım, Ankara, 2001.
[8] M. F. Işık, Bilgisayar Destekli Elektro Erozyon Yöntemi
ile Talaş Kaldırma Sistminin Tasarımı ve Uygulanması,
Gazi Üniversitesi Fen Bilimleri Enstitüsü Elektrik Eğitimi
Anabilim Dalı, Doktora Tezi, 2009
[9] G. Wollnberg, H. P. Shulze, M. Timm, T. Pape,
“Simulation of EDM Installations”, Proceedings of ISEM
XI”, Lausanne Switzerland, s: 153-162, 1995.
[10] L. Fu, “Robust Adaptive Decentralized Control of Robot
Manipulators”, IEEE Transactions on Automatic
Control, Cilt: 37, No:2, 1996.
[11]Coşkun, İ., Işık, M.F., “Position and speed control of
servomotor using microcontroller", Gazi University
Institute of Science and Technology , G.U. Journal of
Science, 17 (3) -2004.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
442
Esnek Üretim Sistemlerinde Kördüğüm Problemi ve Çözüm Yöntemleri
Murat Uzam1, Gökhan Gelen2
1Elektrik-Elektronik Mühendisliği Bölümü
Melikşah Üniversitesi, Talas-Kayseri murat_uzam@meliksah.edu.tr
2Mekatronik Mühendisliği Bölümü Gaziosmanpaşa Üniversitesi, Tokat
gokhan.gelen@gop.edu.tr
Özetçe
Esnek üretim sistemleri, bilgisayar kontrollü makine takımlarının, tamponların, konveyörlerin, robotların, otomatik güdümlü araçların ve diğer makinaların birleşimi olan pazar değişimlerine hızlı cevap verebilen sistemlerdir. Esnek üretim sistemlerinde esneklik kaynakların paylaşımı arttırılabilir. İki veya daha çok iş kümesinin her birinin diğer kümedeki işlerin tutmakta oldukları kaynakları bırakmaları için belirsizce beklemesine kördüğümün (deadlock) denilmektedir. Bu çalışmada esnek üretim sistemlerinde meydana kördüğüm problemi ve çözüm metotları incelenmektedir.
1. Giriş
Yirminci yüzyılın başlarında Henry Ford tarafından popüler hale getirilen seri üretim (mass production) insan toplumunun ve medeniyetinin gelişmesine ve ilerlemesine çok büyük katkı sağlamıştır. Ancak son otuz yılda hızlı pazar değişimleri sebebiyle gereksinim duyulan küçük miktardaki çoklu ürün türleri sebebiyle bazı problemler ortaya çıkmaktadır [1]. Bir üretim sisteminin uzun vadede hayatiyetini devam ettirebilmesi her şeyden önce değişken pazar taleplerine hızlı cevap verebilmesine bağlıdır. Bu tür teknolojik sınıra ancak esnek üretim sistemleri (flexible manufacturing systems - FMS) yardımıyla ulaşılabilir [2,3]. Bir FMS, bilgisayar kontrollü makine takımlarının, tamponların, konveyörlerin, robotların, otomatik güdümlü araçların (automated guided vehicles - AGV) ve diğer malzeme aktarma araçlarının (material-handling devices) bir birleşimidir. Pazar değişimlerine hızlı cevap verebilmek için esnekliği attırmak gerekir. Bu amaçla FMS genellikle yüksek seviyede kaynak paylaşımı (resource sharing) sergiler. Kaynak paylaşımının mevcudiyeti, iki veya daha çok iş kümesinin her birinin diğer kümedeki işlerin tutmakta oldukları kaynakları bırakmaları için belirsizce beklemesi anlamına gelen kördüğümün (deadlock) gerçek sebebi olan dairesel bekleme (circular wait) durumlarına sebep olabilir. Bu tür bir sistemde kördüğümler oluşur oluşmaz devam ederler ve bir insan veya başka harici bir işlemin müdahalesi olmaksızın çözümlenemezler. Bilgi teknolojisinin modern üretim sistemlerinde yaygın uygulanması sonucunda, modern üretim sistemlerinin güvenlik (safety), güvenilirlik (reliability) ve diğer muhtelif karmaşık talepleri kontrol yazılımı ile karşılanmaktadır [4]. Tesis ve bakım işlemleriyle karşılaştırıldığında kontrol
yazılımının tasarımı kontrol mühendisleri için karmaşık ve zahmetli bir görevdir. Kördüğüm, sistemin bir kısmının veya tamamının durmasına sebep olabileceğinden, yarı iletken üretimi veya kritik dağıtılmış veri tabanları gibi yüksek derecede otomatik sistemlerde kötü sonuçlara sebebiyet verebileceğinden kontrol mühendisleri kördüğüm problemlerini dikkatli bir şekilde hesaba katmalı ve uygun bir şekilde çözmelidir. Otomatik üretim sistemlerindeki kördüğüm problemlerine hem akademik hem de endüstri çevrelerinden yoğun ilgi gösterilmektedir [1]. Bir kördüğüm oluşması için, ilk defa [5]’de ortaya konulan ve Coffman şartları olarak bilinen dört şart mevcuttur:
1. Karşılıklı dışlama şartı (mutual exclusion condition): bir kaynak bir anda birden fazla işlem tarafından kullanılamaz.
2. Tut ve bekle şartı (hold and wait condition): hâlihazırda kaynakları tutan işlemler yeni kaynakları talep edebilirler.
3. Boşaltmama şartı (no pre-emption condition): hiçbir kaynak o kaynağı tutmakta olan işlemden zorlamayla boşaltılamaz ve kaynaklar ancak işlemin açık aksiyonu ile serbest bırakılabilirler.
4. Dairesel bekleme şartı (circular wait condition): her bir işlemin zincirdeki bir sonraki işlem tarafından tutulan bir kaynak için beklediği iki veya daha fazla işlem dairesel bir zincir oluşturur.
Bir kördüğüm oluşmasına sebep olan dört şarttan birinin etkisini yok etmek bir kaynak paylaşım sisteminde kördüğümlerin oluşmasını imkânsız hale getirir. Bir otomatik FMS’in fiziksel karakteristikleri ve teknik altyapısı ilk üç şartın her zaman mevcut olduğunu ve kördüğümleri yok etmenin tek çaresinin de dairesel bekleme şartının ortadan kaldırılması olduğunu ortaya koymaktadır [1,6]. FMS’te kördüğüm problemlerinin araştırılması için kullanılan üç temel matematik araç mevcuttur. Bunlar; Digraflar (directed graphs – yönlenmiş graflar), otomata ve Petri ağlarıdır [6]. Bir Digraf kendisinden kördüğüm kontrol prensibi türetilebilen, operasyonlar ve kaynaklar arasındaki etkileşimi tanımlayan basit ve sezgisel bir araçtır. Formal diller ve sonlu durum makineleri temelleri üzerine kurulan gözetimli kontrol teorisi (Supervisory control theory - SCT) [7] ayrık olay sistemlerinin (discrete event systems) modellenmesi ve kontrolü işlemlerini kapsamlı ve yapısal olarak
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
443
gerçekleştirmeyi hedeflemektedir. Bazı etkili ve hesaplaması verimli kördüğüm kontrol prensipleri otomata temelli olarak geliştirilmiştir. [8-12]. Özellikle belirli bir sınıf kaynak atama sistemi için polinom karmaşıklığına sahip teorik olarak önemli bir kördüğüm önleme prensibi [13]’te geliştirilmiş ve daha sonra Petri ağı formunda tekrar tanımlanmıştır [14]. FMS’lerle ilgili kördüğüm önleme üzerine yapılan çalışmalar dikkate alındığında, FMS’lerin modellenmesi ve kontrolü konularının incelenmesinde Petri ağlarının önemi gün geçtikçe artmaktadır. Bu bildirinin ikinci bölümünde esnek üretim sistemleri ve özellikleri kısaca tanıtılmaktadır. Üçüncü bölümde kördüğüm problemi temel bir örnek FMS üzerinde açıklanmış ve dördüncü bölümde bu kördüğüm probleminin Petri ağları ile çözümü kısaca sunulmuştur. Beşinci bölümde FMS’lerde kördüğüm çözüm stratejileri ve çözüm bekleyen problemler açıklanmıştır. Altıncı bölümde ise bu çalışmanın sonuçları yer almaktadır.
2. Esnek Üretim Sistemleri
Yalın ve atölye tipi üretim yapan geleneksel üretim sistemlerinde yüksek düzeyde yarı mamul stoku, uzun iş kuyrukları, düşük tezgah faydalanma oranları gibi problemlerle karşılaşılmaktadır. Diğer bir deyişle, etkinlik ve esneklik geleneksel üretim sistemlerinin üzerinde önemle durduğu problemler olmaktadır. Son yıllarda adları çok sık duyulan ve giderek daha geniş bir uygulama alanı bulan bir bilgisayar bütünleşik üretim (computer integrated manufacturing – CIM) sistemi olan esnek üretim sistemleri (flexible manufacturing systems – FMS), bu problemlere çözüm getirmek amacıyla geliştirilmişlerdir. FMS, değişikliklere belirli bir esneklik ölçüsünde cevap verme yeteneği bulunan üretim sistemidir. Esneklik temelde makine esnekliği (machine flexibility) ve rotalama esnekliği (routing flexibility) olmak üzere iki grupta düşünülebilir. Makine esnekliği, yeni ürün türlerini üretmek için yapılabilecek değişikliklere karşı sistemin müsaade kabiliyetini ve bir parça üzerinde gerçekleştirilen işlemlerin sırasını değiştirebilme kabiliyetini ifade eder. Rotalama esnekliği, bir parça üzerinde aynı işlemi gerçekleştirebilecek çoklu makinelerin kullanılabilme kabiliyeti ile hacim, kapasite veya yapabilirlik gibi büyük ölçekli değişiklikleri sistemin yerine getirebilme kabiliyetini ifade etmektedir. FMS sistemlerinin çoğu üç ana kısımdan oluşur. Bunlar; CNC vb. otomatik iş makineleri; makineleri birbirine bağlayan parça akışının sağlandığı malzeme aktarma sistemi; ve malzeme hareketlerini ve makine akışını kontrol eden merkezi kontrol bilgisayarıdır. Şekil 1’de basit bir esnek üretim sistemi görülmektedir. Bir FMS’in en önemli avantajı, yeni bir ürünü üretmek için gerekli zaman ve çaba gibi üretim kaynaklarının işletilmesindeki yüksek esnekliktir. FMS’in en iyi uygulaması, seri üretimdekine benzer küçük ürün gruplarının üretimidir. FMS’in gelişimindeki en büyük etken, bilgisayar teknolojisinde gerçekleştirilen ilerlemelerdir. FMS’lerin en önemli özelliği, belli bir süre boyunca insan müdahalesine gerek göstermeden çalışabilmeleridir. Esnek üretim sistemlerinin genel özellikleri aşağıda sıralanmaktadır.
Esnek Üretim Sistemleri ürün türünün fazla olduğu işletmelerde uygulanabilir.
Esnek Üretim Sistemleri aynı gruptan olup farklılık gösteren parçaları üretmek amacıyla kullanılmaktadır.
Arklı parçaları üretmek için makine-teçhizatta küçük çaplı değişiklikler yapılabilir.
Mamul, yarı mamul ve hammadde otomatik bantlarla, malzeme ve taşıyıcılarla hareket edebilmektedir.
Genel amaçlı makine-teçhizat ve malzeme taşıma sistemini kontrol eden ana bir bilgisayar vardır.
Farklı parçaların üretilmesi makineler üzerinde gerçekleşen otomatik değişikliklerle mümkün olabilmektedir.
Fabrikaya hammadde girişinden mamul çıkışına kadar tüm işlemler otomasyona dayalı olarak bilgisayarla gerçekleştirilmektedir.
Şekil 1: Basit bir esnek üretim sistemi.
3. Kördüğüm Problemi
Esnek üretim sistemlerinde esneklik kaynakların paylaşımı ile sağlanmaktadır. İki veya daha çok iş kümesinin her birinin diğer kümedeki işlerin tutmakta oldukları kaynakları bırakmaları için belirsizce beklemesine kördüğümün (deadlock) denilmektedir. İki makine ve bir robottan meydana gelen basit bir FMS’te körüğümün nasıl oluşabileceği bu kısımda açıklanmaktadır. İncelenecek olan sistem Şekil 2’de görülen esnek üretim sistemidir. Makineler (M1 ve M2) aynı anda sadece bir parçayı işleyebilir ve benzer şekilde robot (R) sadece bir parçayı bir makineden diğerine aktarabilir. P1 ( )
ve P2 ( ) adında iki farklı parça bu sistem tarafından işlenmektedir. Parçalar makinelere I/O1 ve I/O2 giriş/çıkış tamponları tarafından yüklenip çıkarılmaktadır. Buna göre bu iki farklı parçanın makineler ve robot tarafından işlenmesini ifade eden iki farklı üretim akışı söz konusudur: P1 için üretim akışı P1: M1 R M2 şeklindedir. Yani P1 parçası 1nci giriş/çıkış tamponundan M1’e alınarak işlenir. M1’de işlenen parça robot tarafından alınarak M2’ye aktarılır. M2’de işlenmesi biten P1 parçası daha sonra 2nci giriş/çıkış tamponu üzerinden sistem dışına gönderilir. Benzer şekilde P2 için üretim akışı P2: M2 R M1 şeklindedir. Bu sistemde spesifikasyon olarak herhangi bir kördüğüm (deadlock) olmaksızın iki farklı üretim akışının sağlanması istenmektedir.
Şekil 2: Basit bir esnek üretim sistemi (FMS) ve iki farklı
parça için üretim akışları.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
444
Bu sistemde kördüğüm problemi ortaya çıkmaktadır. Şekil 3’te basit FMS’te kördüğüm oluşması aşamalarından biri incelenmektedir. Şekil 3.(a)’da sistemde işlenen her hangi bir parça bulunmamaktadır. Şekil 3.(b)’de sistemde P1 parçası M1 tarafından işlenmektedir. Şekil 3.(c)’de M1 tarafından işlenen P1 parçası robot tarafından alınmıştır. Şekil 3.(d)’de robot P1 parçasını M1’den M2’ye taşırken bu kez M2 bir P2 parçasını işlemeye başlamıştır. Son olarak Şekil 3.(e)’de robotta yüklü P1 parçası varken ve M2 bir P2 parçasını işlerken M1 de bir P1 parçasını işlemeye başlamıştır. Bu durumda sistem kördüğüme girmiştir. Çünkü M2 bir P2 parçasını işlemekte olduğu için robot yüklediği P1 parçasını M2’ye aktaramamaktadır. M2 işlediği P2 parçasıyla ilgili işlemini bitirse bile robot yüklü olduğu için bu parçayı boşaltması mümkün değildir. Benzer şekilde M1 işlediği P1 parçasıyla ilgili işlemini bitirse bile robot yüklü olduğu için bu parçayı boşaltması mümkün değildir. Böylece sistemdeki paylaşılan kaynaklar olarak makineler ve robot her biri bir diğerini beklemeye devam eder. Buna dairesel bekleme durumu adı verilir. Sistem bu kördüğüm durumundan kurtulmazsa sürekli olarak bu şekilde beklemeye devam edecektir.
Şekil 3: Basit FMS’te kördüğüm oluşması.
Bu sistemde kördüğüm oluşumunu bu şekilde takip etmek mümkündür. Fakat çok karmaşık bir FMS için kördüğümün bu şekilde bulunması mümkün değildir. Bu nedenle modelleme yöntemlerinden faydalanarak FMS’te kördüğümle ilgili analiz ve kontrol yöntemleri geliştirilmiştir. Bir sonraki kısımda burada incelenmiş olan basit FMS için Petri ağı kullanılarak kördüğüm kontrolünün nasıl yapıldığı kısaca incelenmektedir.
4. Petri Ağları Kullanılarak Kördüğüm Önleme
Petri ağları kullanılarak FMS’te kördüğüm konusuyla ilgili gerçekleştirilmiş pek çok çalışma mevcuttur. Bu kısımda Petri ağları kullanılarak FMS’te kördüğüm önleme (deadlock prevention) konusunda kısa bir inceleme sunulmaktadır. Öncelikle FMS’in (kontrol edilmemiş) Petri ağı modeli elde edilir. Sonra bu model bir Petri ağı yazılımı yardımıyla analiz edilerek kördüğüm problemi olup olmadığı incelenir. Kördüğümün varlığı durumunda mevcut bir yöntem
kullanılarak kördüğümün çözümü için kontrol mevkileri (monitörler) hesaplanır. Bulunan bu monitörler kontrol edilmemiş Petri ağı modeline eklenerek kontrol edilmiş model elde edilir. Sonuçta elde edilen kontrol edilmiş model PLC (programmable logic controller) gibi bir sistem gerçekleme aracı yardımıyla FMS’in kontrolünde kullanılır. Bir önceki kısımda incelenen basit FMS için burada incelenen çözümün daha detaylı şekli [15]’te mevcuttur. Verilen iki üretim akışı için oluşturulan Petri ağı modeli Şekil 4’te görülmektedir. Bu Petri ağı analiz edilirse sistemin olası toplam 20 farklı duruma ulaşabildiği ve bu durumlardan 5’inde sistemin kördüğüm problemine maruz kaldığı anlaşılmaktadır. Buna göre maksimum müsaade edici (optimal) bir çözüm elde edilmesi için kontrol edilmiş modelde sistemin canlı olması ve 15 duruma ulaşabilmesi gerekir. [15]’te önerilen yöntemin kullanılması sonucunda bu ağdaki kördüğüm probleminin optimal şekilde çözülmesi için Şekil 5’de görülen 3 tane kontrol mevkisi hesaplanmıştır.
p1
p2 p3 p4
p5 p6 p7
p8 p9 p10
p11
t1
t2
t3
t4 t5
t6
t7
t8 Machine 1
Robot
Machine 2
Şekil 4: Üretim akışları için FMS’in Petri ağı modeli.
Sonuçta bu üç kontrol mevkisinin Şekil 4’teki kontrol edilmemiş Petri ağına ilave edilmesiyle Şekil 6’da görülen kapalı-çevrim kontrol sistemi ya da bir başka deyişle kontrol edilmiş model elde edilir. t1
t2 t5
t6
C1 t2
t3 t5
t6 t1
t2 t6
t7
(a) (b) (c)
C2 C3
Şekil 5: Petri ağı modelinin canlı (live) olması için hesaplanan kontrol mevkileri
5. Kördüğüm Çözüm Stratejileri
Kavramsal açıdan esnek üretim sistemlerinde kördüğüm çözümlenmesi için dört farklı strateji mevcuttur: kördüğüm ihmal etme (deadlock ignoring), kördüğüm önleme (deadlock prevention), kördüğümden sakınma (deadlock avoidance), kördüğüm bulma ve telafi etme (deadlock detection and recovery) [1]. 5.1 Kördüğüm İhmal Etme Kördüğüm olasılığı çok düşükse ve diğer kördüğüm kontrol stratejilerinin uygulanması teknik veya mali olarak çok zor ise
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
445
Ostrich algoritması [16] olarak bilinen kördüğüm ihmal etme (deadlock ignoring) stratejisi kullanılır. Kördüğüm ihmal etme konusundaki önemli bir örnek; işlem tablosunun dolu olduğu ve tüm işlemlerin daha fazla alt işlemi başlatmaya çalışıyor olduğu durumdaki UNIX işletim sistemidir. Fakat bu, çok nadir olarak karşılaşılan bir durumdur ve bu tür bir durumun önlenmesi çok gereksiz kısıtlamaların kullanılmasını gerektirdiğinden genellikle ihmal edilir. Teorik olarak kördüğüm ihmal etme stratejisi ikna olma ve doğruluk arasında bir değiş tokuştur (trade-off). Otomatik bir üretim sisteminde, teknik ve mali açıdan eğer kaynak paylaşımı yüksek oranda değilse ancak o zaman kördüğüm ihmal etme makul ve mantıklıdır. Bu strateji esnek üretim sistemlerinin ilk gelişim aşamalarında yaygın olarak kullanılmıştır.
Şekil 6: Optimal kontrol edilen kapalı-çevrim kontrol sistemi. 5.2 Kördüğüm bulma ve telafi etme Kördüğüm bulma ve telafi etmede (deadlock detection and recovery) kaynaklar bir işlem için her hangi bir kontrol yapılmadan tahsis edilir. Kaynak tahsisi ve taleplerinin durumu bir grup işlemin kördüğümlenip kördüğümlenmediğini belirlemek için periyodik olarak tetkik edilir. Bu işlem bir kördüğüm bulma algoritması ile gerçekleştirilir. Eğer kördüğüm bulunursa sistem kördüğümü telafi etmek için bir veya daha fazla işlemi bırakır. Doğru bir kördüğüm bulma algoritması için temel bir gereksinim, olası tüm kördüğümlerin raporlanması ve mevcut olmayan kördüğümlerin ise raporlanmamasıdır. Üretim pratiğinde bu strateji için genellikle insan operatörlere ihtiyaç duyulur. Bu sebepten bu stratejiler çok pahalı olabilir. Bir kördüğümün devam etmesi sistemin tamamının veya bir kısmının durması demektir. Kördüğüm telafisi işlemi hiçbir şekilde basit bir işlem değildir. Gerçekte bulunan bir kördüğümün uygun zamanda ve etkin bir şekilde telafi edilmesi en az kördüğüm bulma kadar zor bir iştir. Kördüğüm bulma ve telefi etme konusundaki çalışmalar genellikle graf teorisi temelli [17-19] olup Petri ağı temelli çalışmalar sınırlıdır [20]. 5.3 Kördüğümden Sakınma Kördüğümden sakınma (deadlock avoidance) stratejisinde, talep edilen bir kaynak talepte bulunan işleme bir sonraki durum eğer güvenli ise ancak o zaman tahsis edilir. Eğer tüm işlemlerin tamamlanmasını mümkün kılan bir çalışma sırası
mevcutsa bu duruma güvenli durum denir. Bir kaynağın bir işleme tahsis edilmesiyle sonraki durumun güvenli olup olmadığına karar verebilmek için her bir hücre denetleyicisinin ve global denetleyicinin global sistem durumuyla ilgili kayıt tutması gereklidir. Bunun anlamı yüksek miktarda depolama alanı ve etkin bir haberleşme kabiliyetinin gerekli olması demektir. Bu durum aynı zamanda içerisinde global bir denetleyici olmayan dağıtık bir kontrol sistemi tarafından kontrol edilen bir otomatik üretim sistemi için geçerlidir. Ayrıca, gerçek sistemlerde çok fazla miktardaki durum sayısından dolayı bir durumun güvenli olduğunu kontrol etmek hesaplaması zor bir işlemdir. Çok teferruatlı yöntemler genellikle yüksek kaynak kullanımı ve çıktı sağlarlar fakat bazı hallerde kördüğümlerin tamamını önleyemezler. Bu tür hallerde eğer kördüğüm oluşursa kördüğüm telafi işlemlerine ihtiyaç duyulur. Tutucu (conservative) metotlar tüm güvenli olmayan durumları, kördüğümleri ve sıklıkla bazen iyi durumları da yok ederler. Bu sebeple sistem performansı düşer. Öte yandan bu tür metotların amacı kolay uygulanabilir olmaktır. Kördüğümden sakınma stratejisine dayanan Petri ağı temelli birçok çalışma mevcuttur [1, 18, 21-24]. 5.4 Kördüğüm Önleme
Kördüğüm önleme, kaynak tahsisi çalışmalarında çok iyi tanımlanmış bir yöntem olarak bilinmektedir. Bu yöntemde genellikle kaynaklar için yapılan talepler kördüğüm oluşmayacak şekilde kontrol etmek için kullanılan çevrimdışı (off-line) bir hesaplama yardımıyla elde edilir. Başka bir deyişle kaynaklar talep eden işlemlere, yapılan talep kördüğümle sonuçlanmayacaksa ancak o zaman tahsis edilir. Kördüğüm önleme yaklaşımının amacı sistem üzerine sistemin kördüğüm durumlarına ulaşmasını önleyecek bazı kısıtlamaların konulmasıdır. Bu durumda hesaplama, çevrimdışı ve statik olarak yapılır ve kontrol prensibi bir kez tesis edildikten sonra sistem hiçbir zaman istenmeyen kördüğüm durumlarına ulaşamaz. Bir kördüğümü önlemenin en basit şekli bir işlem çalışmaya başlamadan önce gerekli tüm kaynakların talep edilmesiyle gerçekleşir. Fakat bu işlem sistem koşut zamanlılığını (concurrency) ve operasyonel esnekliğini yok ettiğinden dolayı yüksek oranda verimsizdir. Kördüğüm önleme algoritmalarının önemli bir avantajı problemler sistem tasarımı ve planlaması aşamalarında çözüldüğü için bu algoritmaları çalıştırma zararı yoktur. En temel eleştiri bu yöntemlerin çok tutucu olduğu ve böylelikle kaynak kullanımını ve sistem üretkenliğini düşürdüğü şeklindedir. Kördüğüm önleme, genellikle kördüğümlerin ciddi sonuçlarının olabileceği ve yüksek miktarda ekonomik kayıplara sebebiyet verilebilecek güvenlik kritik sistemlere uygulanabilir olarak değerlendirilmektedir.
Literatürde kördüğüm önleme konusundaki yöntemlerde araç olarak genellikle Petri ağları kullanılmaktadır. Kördüğüm önleme yöntemleri aşağıdaki gibi gruplanmaktadır.
Başlangıç işareti konfigürasyonu
Yapısal Analiz metotları
Ulaşılabilirlik grafı temelli yaklaşımlar
Temel sifona dayalı yaklaşımlar
Birleştirilmiş Teknikler
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
446
6. Çözüm Bekleyen Problemler
Bu kısımda, literatürde halen çözüm bekleyen bazı problemler hakkında bir değerlendirmeye yer verilmiştir. 6.1. Optimal Gözeticilerin Varlığı Ayrık olay sistemleri için işaret-temelli (marking-based), canlılık uygulayıcı gözeticilerin varlığı konusunda ulaşılabilirlik grafı, formal diller yaklaşımı, aktif alt-ağlar ve sifon kavramlarına dayalı Petri ağı temelli yöntemler üzerine literatürde çalışmalar bulunmaktadır. Ancak, FMS için monitör temelli optimal bir canlılık uygulayıcı Petri ağı gözeticisinin varlığı konusunda hiç bir çaba sarf edilmemiştir. Doğal ve ilginç bir problem, yapısal ve ilk işaret şartları açısından hangi şartlar altında optimal bir canlılık uygulayıcı Petri ağı gözeticisinin bulunduğunun incelenmesidir. 6.2. Dinamik Kontrol Spesifikasyonları Altında Kördüğüm Önleme Ayrık olay sistemlerinin gözetimli kontrolünde, bir Petri ağındaki önemli ve tipik kontrol spesifikasyonları genelleştirilmiş karşılıklı dışlama kısıtları (generalized mutual exclusion constraints – GMEC) olarak bilinen doğrusal eşitsizliklerdir. Diğer şekillerdeki kontrol spesifikasyonları GMEC problemi şekline dönüştürülebilir. Kontrol spesifikasyonlarının bir gözeticinin tasarım ve çalışma fazlarında değişmediği kabul edilir. Fakat pratikte kontrol gereksinimleri bir gözeticinin çalışma fazı esnasında değişebilir. Örneğin, bir takım tezgâhının bozulması veya müşteri siparişinin değişmesi gibi sebeplerle kontrol spesifikasyonları değişebilir. Dinamik kontrol spesifikasyonları bulunan bir FMS’te kördüğüm kontrol problemi için şu ana kadar literatürde hiçbir çalışma rapor edilmemiştir. 6.3. Yapısal Karmaşıklığı Azaltma Petri ağı temelli FMS’te kördüğüm önleme çalışmaları kapsamında ortaya koyulan sonuçların tamamı için genellikle 3 temel problem karşımıza çıkmaktadır [25]:
Davranışsal özgürlük (behavioral permissiveness), Yapısal karmaşıklık (structural complexity), Hesaplama karmaşıklığı (computational complexity).
Bu problemler bazı Petri ağı alt sınıfları için çözülmüştür. Örneğin [26]’da maksimum müsaade edici gözetici tasarımı için etkin bir yöntem geliştirilmiştir. Fakat buna rağmen hesaplama karmaşıklığı [26]’da halen çözülmesi gereken bir problem olarak durmaktadır. Ayrıca bu yöntem gereksiz monitörleri otomatik olarak bulup ayıklama işlemi yapamadığı için yapısal karmaşıklığa da çözüm gerektirememektedir. Görüleceği gibi bir taraftan kazanım sağlanırken diğer taraftan ödün verilmektedir. Ayrıca yapısal karmaşıklıktan bahsedilince bu sadece mevcut monitör sayısının artması olarak değerlendirilmemelidir. Öte yandan monitörlerin sıradan veya genel monitörler olması da yapısal karmaşıklığa etki eden önemli faktörlerdir. Bunlardan birincisi olan sıradan monitör, giriş ve çıkış oklarının ağırlığı 1 olan monitörlerdir. İkincisi olan genel monitörlerde ise monitörün giriş ve/veya çıkış oklarının ağırlığı 1’den fazla olabilir. Görüleceği gibi
aynı sayıda iki grup monitör arasında sıradan bir monitör ile genel bir monitör arasında bile yapısal karmaşıklık anlamında farklılıklar olabilmektedir. Buna göre optimal veya optimale yakın yöntemler için yapısal karmaşıklığı önleyici ve/veya azaltıcı yöntemler geliştirilmesi çok önem arz etmektedir. 6.4. Hesaplama Karmaşıklığını Azaltma Bir önceki kısımda ifade edildiği gibi yapısal karmaşıklığı azaltma çalışmaları yanında kördüğüm önleme amacıyla kullanılan yöntemlerde hesaplama karmaşıklığının da azaltılması önemli bir konudur. Burada özellikle ulaşılabilirlik grafı kullanılarak optimal (maksimum müsaade edici) veya optimale yakın çözüm üretilen yöntemler üzerinde yapılacak olan çalışmalar çok daha önemli olarak değerlendirilmektedir. Çünkü [26]’da yapılan çalışmadan görüldüğü gibi daha önceleri ulaşılabilirlik grafı kullanılarak geliştirilen yöntemlerin özellikle hesaplama karmaşıklığı olmasından dolayı içerisinde çok fazla durum bulunan pratik sistemlere uygulanmasının zor olduğu ifade edilmekteydi. Fakat [26]’daki çalışmadan görüldüğü üzere ulaşılabilirlik grafı kullanılarak geliştirilen optimal bir yöntem 140 milyondan fazla durum içeren büyük ölçekli bir sisteme 53 tane monitör yardımıyla uygulanabilmiştir. Buna göre [26]’da önerilen çalışma da dahil olmak üzere Petri ağı temelli FMS’te kördüğüm önleme amacıyla optimal veya optimale yakın mevcut yöntemlerin hesaplama karmaşıklığının azaltılması konusunda yapılacak yeni çalışmalara ihtiyaç vardır. 6.5. En İyi (best) Müsaade Edici Canlılık Uygulayıcı Petri Ağları Önceki kısımlardaki değerlendirmelerde ifade edildiği gibi bazı durumlarda FMS’te kördüğüm önleme çalışmalarında monitörler kullanılarak optimal Petri ağı temelli çözümler mevcut olmamaktadır. Bu tür problemler optimal çözümün bulunması yerine en iyi (best) müsaade edici canlılık uygulayıcı Petri ağı gözeticisinin (best permissive liveness-enforcing Petri net supervisor) bulunması [1] problemine dönüşmektedir. Bu bağlamda bu konu da yeni bir çalışma alanı olarak literatürdeki yerini almış bulunmaktadır. 6.6. Kontrol Edilemez ve Gözlemlenemez Geçişler Bir sistemde kontrol edilemez ve gözlemlenemez olaylar bulunabilir. Benzer şekilde bu tür olayların varlığını bir FMS’in Petri ağı modelinde de dikkate almak gerçekçi ve pratiktir. RW teorisinde [7] kontrol edilemez ve gözlemlenemez olaylar yeterli derecede dikkate alınmaktadır. Fakat Petri ağını kullanan araştırmacılar bir FMS için kördüğüm önleme prensibi geliştirdiklerinde genellikle tüm geçişlerin kontrol edilebilir ve gözlemlenebilir olduğunu varsayarlar. Kontrol edilemez ve gözlemlenemez geçişlerin varlığı dikkate alındığında mevcut tüm kördüğüm önleme prensiplerinin pek çoğu tekrardan düzenlenmek ve belki de tekrardan araştırılmak zorundadır.
7. Sonuçlar
Bu çalışmada, esnek üretim sistemlerinde oluşan kördüğüm problemi tanıtılmıştır. Kördüğüm problemi esnek üretim sistemlerindeki robot, makine gibi paylaşılan kaynaklar sebebiyle oluşmaktadır. Temel bir kördüğüm problemi iki
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
447
makine ve bir robottan oluşan örnek üretim sistemi üzerinde gösterilmiştir. Literatürde var olan ve halen üzerinde çalışılan kördüğüm çözüm stratejileri tanıtılarak literatürde halen çözüm bekleyen mevcut problemler irdelenmiştir.
Teşekkür
Bu çalışma, 1112M229 kodlu “Esnek Üretim Sistemlerinde Petri Ağları Temelli Kördüğüm Önleme için Yeni Yöntemler Geliştirilmesi Üzerine Teorik Çalışmalar” adlı TÜBİTAK –EVRENA projesi kapsamında desteklenmiştir.
Kaynakça
[1] Li Z. W., Wu N.Q., and Zhou M. C., “Deadlock Control for Automated Manufacturing Systems Based on Petri Nets - A Literature Review”, IEEE Transactions on Systems, Man, and Cybernetics, Part C- Applications and Reviews, Vol: 42, No:4, pp:437-462, 2012.
[2] Basnet C. and MIZE J.H., “Scheduling and control of flexible manufacturing systems: a critical review”, International Journal of Computer Integrated Manufacturing, Vol:7, No:6, pp:340-355, 1994.
[3] Dupond-Gatelmand C., “A survey of flexible manufacturing systems”, Journal of Manufacturing Systems, vol.1, no.1, pp.1-15, 1982.
[4] Charr J., Teichroew D., and Volz R., “Developing manufacturing control software: A survey and critique”, International Journal of Flexible Manufacturing Systems, vol.5, no.1, pp.53-88, 1993.
[5] Cofman E.G., Elphick M. J., and Shoshani A., “Systems deadlocks”, ACM Computing Surveys, vol.3, no.2, pp.66-78, 1971.
[6] Fanti M.P. and Zhou M.C., “Deadlock control methods in automated manufacturing systems”, IEEE Transactions on Systems, Man, and Cybernetics, Part A: Systems and Humans,, vol.34, no.1, pp.5-22, 2004.
[7] Ramadge P.J. and Wonham W.M., “The control of discrete event systems”, Proceedings of the IEEE, vol.77, no.1, pp.81-89, 1989
[8] Lawley M.A., Reveliotis S.A., and Ferreira P.M., “Design guidelines for deadlock handling strategies in flexible manufacturing systems”, International Journal of Flexible Manufacturing Systems, vol.9, no.1, pp.5-30, 1997.
[9] Lawley M.A., Reveliotis S.A., and Ferreira P.M., “A correct and scalable deadlock avoidance policy for flexible manufacturing systems”, IEEE Transactions on Robotics and Automation, vol.14, no.5, pp.796-809, 1998.
[10] Lawley M.A., “Integrating flexible routing and algebraic deadlock avoidance policies in automated manufacturing systems”, International Journal of Production Research, vol.38, no.13, pp.2931-2950, 2000
[11] Lawley M.A. and Reveliotis S.A., “Deadlock avoidance for sequential resource allocation systems: Hard and easy cases”, International Journal of Flexible Manufacturing Systems, vol.13, no.4, pp.385-404, 2001
[12] Yalçın A. and BOUCHER T.O., “Deadlock avoidance in flexible manufacturing systems using finite automata”,
IEEE Transactions on Robotics and Automation, vol.16, no.4, pp.424-429, 2000.
[13] Reveliotis S.A., Lawley M.A., and Ferreira P.M., “Polynomial-complexity deadlock avoidance policies for sequential resource allocation systems”, IEEE Transactions on Automatic Control, vol.42, no.10, pp.1344-1357, 1997.
[14] Park J. and Reveliotis S.A., “Deadlock avoidance in sequential resource allocation systems with multiple resource acquisitions and flexible routings”, IEEE Transactions on Automatic Control, vol.46, no.10, pp.1572-1583, 2001.
[15] Uzam M., “An optimal deadlock prevention policy for flexible manufacturing systems using Petri net models with resources and the theory of regions”, International Journal of Advanced Manufacturing Technology, vol.19, no.3, pp. 192-208, 2002.
[16] http://en.wikipedia.org/wiki/Ostrich algorithm, 2011.
[17] Singhal M., “Deadlock detection in distributed systems”, IEEE Computer, vol.22, no.11, pp.37-48, Nov. 1989.
[18] Viswanadham N., Narahari Y., and T. Johnson, “Deadlock prevention and deadlock avoidance in flexible manufacturing systems using Petri net models”, IEEE Transactions on Robotics and Automation, vol.6, no.6, pp. 713-723, 1990.
[19] Viswanadham N., Narahari Y., Performance Modelling of Automated Manufacturing Systems Englewood Cliffs, NJ: Pretence Hall, 1992.
[20] Basile F., Chiacchio P., Giua A., and Seatzu C., “Deadlock recovery of Petri net models controlled using observers”, Proc. of the IEEE Symposium on Emerging Technologies and Factory Automation, vol. 2, 2001, pp.441-449
[21] Ezpelata J., Tricas F., Garcia-Valles F., and Colom J.M., “A banker's solution for deadlock avoidance in FMS with flexible routing and multiresource states”, IEEE Transactions on Robotics and Automaton, vol.18, no.4, pp. 621-625, 2002.
[22] Ezpelata J. and Recalde L., “A deadlock avoidance approach for non-sequential resource allocation systems”, IEEE Transactions on Systems, Man, and Cybernetics, Part A: Systems and Humans, vol.34, no.1, pp.93-101, 2004
[23] Wu N.Q. and Zhou M.C., “Shortest routing of bi-directional automated guided vehicles avoiding deadlock and blocking”, IEEE/ASME Transactions on Mechatronics, vol.12, no.1, pp. 63-72, 2007.
[24] Wu N.Q. and Zhou M.C., “Deadlock resolution in automated manufacturing systems with robots”, IEEE Transactions on Automation Science and Engineering, vol.4, no.3, pp. 474-480, 2007.
[25] Li Z.W. and Zhou M.C., Deadlock Resolution in Automated Manufacturing Systems: A Novel Petri Net Approach, Springer, 2009.
[26] Chen Y.F., Li Z. W., Khalgui M., and Mosbahi O., “Design of a maximally permissive liveness-enforcing Petri net supervisor for flexible manufacturing systems”, IEEE Transactions on Automation Science and Engineering, vol. 8, Iss. 2, pp. 374-393, 2011.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
448
ÇİFT-AĞAÇ KARMAŞIK DALGACIK DÖNÜŞÜMÜ’NÜN GERÇEK-ZAMANLI GERÇEKLEŞTİRİMİ
Ferhat Canbay 1, Görkem Serbes 2, Sezer Gören3, Nizamettin Aydın1 1Bilgisayar Mühendisliği Bölümü
Yıldız Teknik Üniversitesi ferhatcanbay@gmail.com
nizamettin.aydin@yildiz.edu.tr 2Biyomedikal Mühendisliği Bölümü
Bahçeşehir Üniversitesi Biyomedikal Mühendisliği Enstitüsü
Boğaziçi Üniversitesi gorkem.serbes@bahcesehir.edu.tr
3Bilgisayar Mühendisliği Bölümü Yeditepe Üniversitesi sgoren@cse.yeditepe.edu.tr
ÖZETÇE Ayrık dalgacık dönüşümü, elektroensefalogram işaretleri, sinirsel iğnecik işaretleri ve pulmoner işaretler gibi birçok biyomedikal işaretin işlenmesi esnasında, öz-nitelik çıkarımı ve gürültü giderimi amacıyla, kullanılmaktadır. Çift ağaç karmaşık dalgacık dönüşümü (ÇAKDD) ise, ayrık dalgacık dönüşümünün yetersiz kaldığı işaretlerdeki faz kayması problemini çözmek amacıyla tasarlanmış yeni bir dönüşümdür ve biyomedikal işaretlerin işlenmesinde daha iyi sonuçlar verdiği literatürde gösterilmiştir. Günümüzde, biyomedikal işaretler, gelişmiş bilgisayar sistemleri ile gerçek-zamanlı olarak işlenmekte ve çeşitli hastalıkların teşhisinde kullanılmaktadırlar. Bu bildiride ÇAKDD’nin gerçek-zamanlı bir sistemde tasarlanması için bir ön çalışma yapılmıştır. Çalışmada ÇAKDD algoritması C programlama dilinde masaüstü bilgisayar ve 18F452 model PIC üzerinde koşturulmuş ve zaman karşılaştırılmaları yapılmıştır. Ayrıca, Mathwork firmasına ait model-tabanlı tasarım programı Simulink kullanılarak algoritmanın alanda programlanabilir kapı dizileri tasarımı yapılmış ve donanımsal gereklilikleri ortaya konulmuştur.
1. GİRİŞ Biyomedikal işaretler, fizyolojik sistemlerin çalışmasının anlaşılmasında ve bu sistemlerdeki bozuklukların teşhisinde kullanılabilecek bilgiler vermektedirler. Biyomedikal işaretlerin yapısına bakıldığında, fizyolojik sistemlerin zamanla-değişen çalışma mekanizmalarından dolayı, durağan olmayan niteliktedirler [1]. Klasik Fourier dönüşümü (FD) uygulandığı işaretleri durağan kabul edip, onlar hakkında zaman bilgisi vermemektedir. Bu sebepten zamanla-değişen biyomedikal işaretlerin işlenmesi için FD uygun değildir. Kısa zamanlı FD (KZFD) ise uygulandığı işareti pencereler kullanarak ufak parçalara ayırmakta ve bu pencereler altında kalan kısımlara FD uygulamaktadır. Bu sayede sıklık bilgisine ek olarak zaman bilgisi de elde edilmektedir fakat kullanılan
pencerelerin genişliği sabit olduğu için KZFD’de zaman çözünürlüğü ve sıklık çözünürlüğü analiz boyunca sabittir. Biyomedikal işaretlere bakıldığında ise bazı bölümlerinde salınımlı işaret parçaları bulunurken, bazı bölümlerinde ise ani-değişen işaret parçaları bulunabilir. Bu sebepten, biyomedikal işaretleri işleme esnasında sıklık-zaman çözünürlüğü ayarlanabilir bir dönüşüme gereksinim duyulur. Sürekli dalgacık dönüşümü, ölçek-zaman uzayında, salınımlı işaretler parçaları için iyi sıklık-çözünürlüğü ve aynı zamanda ani-değişen işaretler parçaları için iyi zaman-çözünürlüğü sağlayabilmektedir [2]. Bu nedenle biyomedikal işaretlerin işlenmesinde sürekli dalgacık dönüşümü kullanılmaktadır. Ayrık dalgacık dönüşümü (ADD) ise sürekli dalgacık dönüşümünü daha hızlı uygulayabilmek için önerilmiş bir algoritmadır. Bu algoritmada sıklık ve zaman çözünürlükleri dyadik (2’nin katı) olarak değişmektedir. ADD biyomedikal işaretlerin işlenmesinde, öz-nitelik çıkarımında ve gürültü giderimi basamaklarında, sıklıkla kullanılmaktadır [3]. Fakat ADD’nin, giriş işaretlerindeki faz kaymalarına karşı aşırı duyarlılık olarak adlandırılan önemli bir eksikliği bulunmaktadır. ADD ile analiz yaparken, ara basamaklarda elde edilen katsayılar giriş işaretlerindeki faz kaymalarından aşırı etkilenmektedirler ve bundan dolayı bu işaretlerdeki bozuklukları tespit etmek amacıyla dalgacık katsayılarını kullanan herhangi bir makine öğrenmesi algoritmasının olumsuz yönde etkilenmesi kaçınılmazdır. Bu olumsuz durumun üstesinden gelmek için, ayrık dalgacık dönüşümünün yeni bir gerçekleştirimi olan çift-ağaç karmaşık dalgacık dönüşümü (ÇAKDD) kullanılabilir [4]. ÇAKDD bu özellikleri sağlarken artıklık olarak ise d boyut olmak üzere 2d’lik bir artıklığa sahiptir. ÇAKDD daha önce embolik işaretleri ve akciğer işaretlerini işlemede kullanılmış ve ADD’ye göre daha başarılı sonuçlar elde edilmiştir [5]. Biyomedikal işaretlerin işlenmesinde gerçek-zamanlı ve taşınabilir sistemlerin kullanılması önemlidir çünkü bu sistemler hastanelerde kısıtlı sürede birçok hastaya uygulanabilmeli ve ivedilikle sonuçların alınabilmesi gerekmektedir. Ayrıca günümüzde elektroensefalogram (EEG) işaretleri, sinirsel iğnecik işaretleri ve pulmoner
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
449
işaretler gibi biyomedikal işaretleri kullanan sistemler çok kanallı veri girişine sahiptirler (EEG’de 128 kanal [6], sinirsel iğnecik işaretlerinde 94 kanal [7] ve pulmoner işaretlerde 14 kanal [8]), dolayısıyla bu çok kanallı işaretlerin ÇAKDD ile analiz edebilen sistemlerin gerçek-zamanlı ve taşınabilir olması gerekmektedir. Bu gereksinimlerden dolayı bu çalışmada, ÇAKDD algoritmasının gerçek-zamanlı uygulanması için bir ön-çalışma yapılmıştır. Öncelikle, C programlama dili kullanılarak, algoritma Intel i7 1.6 GHZ işlemcili, 4GB belleğe sahip masaüstü bilgisayar ve 18F452 model PIC üzerinde koşturulmuş ve zaman karşılaştırılmaları yapılmıştır. Ayrıca, Mathwork firmasına ait model-tabanlı tasarım programı Simulink kullanılarak algoritmanın alanda programlanabilir kapı dizileri (FPGA) tasarımı yapılmış ve donanımsal gereklilikleri ortaya konulmuştur.
2. YÖNTEM 2.1. Çift-ağaç karmaşık dalgacık dönüşümü
ÇAKDD, ADD’nin yetersiz kaldığı işaretlerdeki faz kayması problemini çözmek amacıyla tasarlanmıştır [4]. Bu problemi çözmek için, ÇAKDD içersinde iki tane gerçel ADD bulundurmaktadır. ADD dönüşümlerinin ilki dönüşümün gerçel kısmını, ikinci ADD ise dönüşümün sanal kısmını temsil etmektedir. Analiz ve sentez kısımlarında ADD’de olduğu gibi birbirini takip eden gerçel süzgeç bankları artarda uygulanmaktadır. Hem analiz hem de sentez kısımlarında kullanılan süzgeçler birbirleriyle ilişkilendirilmişlerdir ve dönüşüm bütün olarak ele alındığında yaklaşık olarak analitiktir.
2.2. ÇAKDD’nin gerçek-zamanlı uygulanma gerekliliği
ÇAKDD vb. sinyal işleme algoritmalarının donanımsal ya da gerçek zamanlı olarak gerçeklenmesine çeşitli sebeplerden ötürü ihtiyaç duyulmaktadır. Bunların en başında işaret işleme algoritmalarının birçok elektronik cihazda kullanılması yatmaktadır. Medikal, haberleşme vb. alanlarda işaret işleyen cihazlar kullanılır ve bu cihazlar gömülü sistemler veya mikroişlemciler ile geliştirilir. Bu tür sistemlerde cihazın büyüklüğü, maliyeti ve hızı en büyük kısıtlar olmaktadır. Küçük ve taşınabilir olması gereken bir cihaz ihtiyacı bulunması durumunda bilgisayarların kullanımı uygun düşmemektedir. Ayrıca çok düşük maliyetlerle gerçekleştirilebilecek bir cihaz yerine kat kat maliyetli bir bilgisayarı kullanmak verimli olmamaktadır. Bunların dışında bazı cihazların çok hızlı çalışması gerekmektedir. Böyle durumlarda özel tasarlanmış yongaların kullanılması gerekmektedir ki bahsedilen senaryodaki hız problemi gelen verinin hızından kaynaklı olabilir ya da paralel gelen girdilerin aynı anda işlenmesi gerekliliğinden de kaynaklanabilir. Günümüz bilgisayarlarında kullanılan işlemciler genel amaçlı olup birden çok çekirdeğe sahip olsalar bile yazılan programda kullanılan algoritmanın paralel çalışmaya uygun olması ve bunu da gerçekleyecek olan kişinin çok iyi yapması gerekir. Böyle bir durumda en iyi ihtimalde dahi işlemcinin çekirdek sayısına bağlı kalınmaktadır. Burada unutulmaması gereken bir nokta da gerçekleştirilmeye çalışılan algoritma için gereken işlem sayısı ne kadar düşükse bilgisayarın gerçek-zamanlı olarak kullanılabilmesi o kadar mümkün olmaktadır.
2.3. C dili ile masaüstünde uygulama
ÇAKDD ve ters ÇAKDD yöntemlerinin C programlama dili ile gerçeklemesi kayan-nokta ve sabit-nokta formatı kullanılarak yapılmıştır. Yöntem uygulanırken, öncelikle veriler alınıp diziye kaydedildikten sonra dizi üzerinde filtre katsayıları Şekil 1’de görüldüğü gibi kaydırılarak FIR süzgeç yöntemi uygulanmıştır. Test sırasında 1600 adet 4096 noktalık çerçeve girdi verisi programa off-line olarak beslenerek sonuçlar doğru bir şekilde elde edilmiştir. Yapılan testin sonucunda 1 saniyelik bir zaman elde edilmiştir. Bu sonuç her hangi bir kişisel bilgisayarda yaklaşık 6,4 MHz frekansta programın gerçek zamanlı olarak kullanılabileceğini göstermektedir. Ancak burada yapılan ölçüm yalnızca ÇAKDD algoritmasının çalışma hızıdır. Gelen verilerin alımı ve elde edilen sonuçların yazılması gibi işlemler de hesaba katıldığında hızın düşeceği aşikârdır. Çalışmada bu durumla ilgili yapılan testlerde verinin dosyadan okunup tekrar dosyaya yazılması gibi bir işlem yapıldığı takdirde hızın 16 kat düştüğü görülmüştür. Bunun temelinde ise işlemci ve çevre birimler arasındaki hız farkı yatmaktadır. Kayan-nokta ve sabit-nokta formatlarının karşılaştırılması için yapılmış testlerde ise sabit-nokta formatının yaklaşık olarak %30 daha verimli olduğu görülmüştür. IEEE formatı da denilen kayan-nokta formatında elde edilen sonuçlar daha hassas olmasına rağmen aritmetik işlemlerin bu formatta gerçekleştirilmesi daha zordur. Özellikle donanım tasarımında, alan büyüklüğü ve gerçekleme zorluğu gibi problemlere sebep olmaktadır. Tamsayı formatı ismi de verilen sabit-noktada ise işlemler tamsayı aritmetiği ile yapıldığı için işlemlerin gerçekleştirilmesi ve donanım tasarımı daha kolay olmaktadır. Çok yüksek hassasiyete ihtiyaç duyulmayan problemlerin çözümünde gayet verimli bir formattır. İşaret işleme alanında çok sıklıkla kullanılmaktadır.
Şekil 1. ÇAKKD’nin C programlama dili gerçeklenmesi sırasında kullanılan yöntem
2.4. C dili ile PIC üzerinde uygulama
ÇAKDD’nün PIC üzerinde gerçeklenmesi, bilgisayar üzerinde çalıştırılan, C ile yazılmış, bir önceki bölümde bahsi geçen programa ait algoritma ile mümkün olmamaktadır. Bunun başlıca sebebi PIC’in kısıtlı kaynağa, özellikle bellek açısından, sahip bir cihaz olmasıdır. Bellek kısıtı probleminin üstesinden gelebilmek için yalnızca, işlenmek üzere süzgeçlere gelen son 10 (Süzgeç, 10-tap olduğu için) veri hafızada tutulmuştur. Süzgeçlere her veri gelişinde de bir sonuç üretilmiştir. Bir önceki bölümde anlatılan yöntemde ise bütün veriler alındıktan sonra işlemler yapılmıştır. Kullanılan yöntem sayesinde yaklaşık [(Kullanılan Süzgeç Sayısı)*10+(Süzgeç Katsayıları)]*8B+(Programda kullanılan değişkenler vs.) kadar bir hafıza kullanılmıştır. Şekil 2’de
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
450
ÇAKKD’nin PIC üzerinde gerçeklenirken kullanılan algoritması görülebilir.
Şekil 2. ÇAKKD’nin PIC üzerinde gerçeklenirken kullanılan yöntem.
Testler, PIC 18F452 model ile hem kayan-noktalı hem de sabit noktalı olarak yapılmış olup sabit-nokta kullanımı kayan noktaya göre yaklaşık %35 daha iyi bir sonuç vermiştir. Ancak sabit nokta da dahi 10000 karmaşık sayı verisini 19.6sn.’de işleyebilmiştir. Sonuçlar, gerçek zamanlı olarak bu PIC 18F452 modelinde 500hz’in üzerindeki sıklıklar için gerçek-zamanlı olarak çalışılamayacağını göstermiştir. Çözüm için daha gelişmiş bir modelin kullanılması gerekmektedir.
2.5. SystemGenerator üzerinde uygulama
SystemGenerator, Xilinx firması tarafından geliştirilmiş, Mathwork firmasına ait model-tabanlı tasarım programı Simulink’te FPGA tasarımına olanak sağlayan bir sayısal işaret işleme aracıdır. SystemGenerator’da tasarım yapabilmek için daha önceden her hangi bir FPGA veya yazmaç transfer seviyesinde (RTL) tasarım metodolojisi deneyimine sahip olmaya gerek yoktur. Yapılan modeller, Simulink modelleme ortamında tutulur. FPGA programlama dosyasının oluşturulması için gerekli olan tüm geliştirme aşamaları otomatik olarak gerçekleştirilir [9]. Yapılan çalışmada, ayrık dalgacık dönüşümünün yalnızca gerçek ağacı için modelleme yapılarak test edilmiştir. Sistem sabit nokta formatıyla tasarlanmış olup hız verimliliği ön plandadır. Bilindiği üzere sabit nokta formatı kullanmak, sinyal işleme gibi toplama ve çıkarma işlemlerinin çokça kullanıldığı sistemlerde donanımsal ve zamansal açıdan çok büyük bir verimlilik sağlamaktadır. Çalışmada daha önceden yazılım ortamında kullanılan girdiler dosyadan okutularak modele beslenmesi ve ardından tekrar bir dosyaya yazılması şeklinde bir yöntem izlenmiştir. Bahsi geçen işlemlerin yapılabilmesi için ilk başta yapılması gereken “System Generator” simgesini modele eklemektir. Bu simge her modelde olması zorunlu bir elemandır. Dosyadan okuma işlemi için Simulink kütüphanesinden “Sources” seçeneği tıklanarak açılan simgelerden “From File” simgesinin modele eklenmesi gerekir. Okunacak olan dosyanın “.mat” uzantılı bir matfile dosyası olması zorunludur. Buna ek olarak dosyanın
ilk satırında zaman bilgisi, ikinci satırında ise veriler sırası ile kayıtlı olmalıdır. Birinci satırda zaman bilgisi olduğu için artan bir düzene sahip olması gerekmektedir, ilgili format Şekil 3’de görülebilir.
Şekil 3. Zaman bilgisi düzeni.
Dosyadan okunan verilerin Xilinx modülleri tarafından okunabilmesi için verilerin “Gateway In” bloğundan geçmesi gerekir. Bu modülde ise gelen verinin bit genişliği formatı gibi bir takım düzenlemeler yapılarak girdinin sisteme düzgün bir şekilde geçişi sağlanır. Modelde kullanılan en önemli modüller ise “FIR Compiler” modülleridir. Bu modüllerde FIR filtreleme işlemleri için gerekli süzgeç katsayıları, giriş ve çıkış bit genişlikleri, donanımda kullanılacak mimariler vs. gibi tüm ayarlamalar yapılabilir. Modelde süzgeç çıkışlarına altörnekleme modülleri konulmuştur. Altörnekleme modüllerinde örnekleme oranı belirlenerek istenilen oran sağlanabilir. Modelin çıkışlarından önce veri yolunun “Gateway Out” modülünden geçmesi gerekmektedir. Test sonuçlarının beklenen sonuçlarla uyumlu olmasını takiben donanım gerçeklenmesi aşamasına geçilmiştir. Fakat SystemGenerator programının üretmiş olduğu tasarım, alan açısından istenilen verimi sağlamamıştır. Tasarım, deneylerimiz sırasında kullanmış olduğumuz Xilinx Spartan-6 board’una sığmamıştır. Yapılan denemeler sonucunda ancak bir alçak veya yüksek geçiren süzgeç modülü Spartan-6 board’una sığmıştır. Tasarımının tamamı ancak daha gelişmiş bir board kullanımı ile mümkün görünmektedir. Tasarlanan model Şekil 4’de görülebilir.
3. SONUÇLAR
Şu ana kadar yapılan çalışmaların ışığında, hız ve donanımsal gerçeklemelerde kapladığı yer itibariyle sabit-nokta aritmetiğinin daha verimli olduğu görülmüştür. İkinci olarak, bilgisayar ortamında ve mikrodenetleyici ortamında yapılan hız testlerinde gerçek zamanlı olarak yapılabilecek olan işlemlerin çok yüksek sıklıkta olamayacağı görülmüştür. Bu tür ortamlarda belirli sıklıklarda veri akışına sahip sistemlerin yürütülebileceği görülmüştür. Ancak yüksek sıklıklı veya çok miktarda paralel girdiye sahip sistemlerde gerçek zamanlı olarak çalışılabilinmesi için paralel çalışma imkânına sahip olan FPGA ortamına ihtiyaç duyulduğu görülmüştür. Bundan sonraki çalışmada alan verimliği ön planda olan yüksek miktarda paralel girdiyi işleyebilen FPGA tabanlı bir sistemin ortaya konması hedeflenmektedir.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
451
Şekil 4. ÇAKDD’nin SystemGenerator üzerinde gerçekleştirimi.
4. KAYNAKÇA [1] L. Faes, K.H. Chon, ve G. Nollo, A Method for the
Time-Varying Nonlinear Prediction of Complex Nonstationary Biomedical Signals, IEEE Transactions On Biomedical Engineering, Cilt: 56, No: 2, 2009.
[2] M. Akay, Wavelet Applications in Medicine, IEEE Spectrum, Cilt. 34, No: 5, s:50-36, 1997.
[3] N. Aydin, F Marvasti, H. S Markus, "Embolic Doppler ultrasound signal detection using discrete wavelet transform ". IEEE Trans Inf. Tech Biomed. Cilt: 8, No: 2, s: 182-190,2004.
[4] 1.W. Selesnick, R.G Baraniuk ve N.G Kingsbury, -The dual-tree complex wavelet transform, IEEE Signal Process. Mag. Cilt: 22, No: 6, s:.123-151, 2005.
[5] G. Serbes, N. Aydin, Denoising embolic Doppler ultrasound signals using Dual Tree Complex Discrete Wavelet Transform, Engineering in Medicine and Biology Society (EMBC), 2010 Annual International Conference of the IEEE, s: 1840 – 1843, 2010.
[6] B. Benjamin, G. Dornhege, M. Krauledat, K. Müller, V.
Kunzmann, F. Losch, G. Curio, The Berlin Brain–Computer Interface: EEG-Based Communication Without Subject Training, IEEE TRANSACTIONS ON NEURAL SYSTEMS AND REHABILITATION ENGINEERING, Cilt: 14, No: 2, s: 147-152, 2006.
[7] M.W. Oram, N.G. Hatsopoulos, B.J. Richmond, ve J.P. Donoghue, Excess synchrony in motor cortical neurons provides redundant direction information with that from coarse temporal measures., J. Neurophysiol. Cilt: 86, s:1700–1716, 2001.
[8] G. Serbes, C.O. Sakar, Y.P. Kahya, N. Aydin, Pulmonary crackle detection using time–frequency and time–scale analysis, 2012, http://dx.doi.org/10.1016/j.dsp.2012.12.009
[9] http://www.xilinx.com/support/sw_manuals/sysgen_gs.pdf
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
452
GÜNEŞ TAKİP SİSTEMİ İÇİN DENETLEYİCİ TASARIMI VE
UYGULAMASI
Murat Orhun1, Fatih Onur Hocaoğlu
2, Said Mahmut ÇINAR
3
1Makine Mühendisliği Bölümü
Afyon Kocatepe Üniversitesi, Afyonkarahisar muratorhun@windowslive.com
2,3
Elektrik Mühendisliği Bölümü
Afyon Kocatepe Üniversitesi, Afyonkarahisar 2,3
Afyon Kocatepe Üniversitesi Güneş ve
Rüzgar Enerjisi Uyg. ve Araş. Mer.,Afyonkarahisar fohocaoglu@gmail.com
smcinar@gmail.com
Özetçe
Güneşten elektrik enerjisi üreten sistemlerin maliyetlerinin
kabul edilebilir sınırlara gerilemesi günümüzde
kullanımlarının oldukça yaygınlaşmasını sağlamıştır.
Ancak bu tür sistemler güneşe sabit bir açıyla
konumlandırılarak kullanıldığında verimleri oldukça
düşüktür. Diğer taraftan panellere güneş ışınlarının sürekli
dik açıyla gelmelerini sağlayacak bir hareket kabiliyeti
kazandırılır ve güneşi sürekli takip etmeleri sağlanır ise
verim önemli ölçüde artmaktadır. Bu çalışmada güneş
takibi için tasarlanmış bir kontrol algoritması tanıtılmıştır.
Kullanılan algoritma Afyon Kocatepe Üniversitesi ANS
Kampüsüne tesis edilmiş olan bir güneş takip sistemi
üzerinde test edilmiş ve Afyonkarahisar şartlarında güneş
takip sisteminin performansı izlenmiştir. Sistemden ölçülen
veriler incelendiğinde kontrol sisteminin verimi önemli
ölçüde arttırdığı anlaşılmaktadır.
1. Giriş
Güneş enerjisinden maksimum verim ile faydalanabilmek
oldukça önemlidir. Bu tür sistemlerden maksimum verimle
faydalanabilmek için güneş ışınlarının güneş panellerinin
yüzeyine dik gelmesi gerekir. Aksi takdirde zaten düşük
olan verimleri daha da düşecektir. Bu nedenle güneş
ışınlarının güneş panellerinin yüzeyine dik gelebilmesi için
güneş takip sistemi ve takip algoritması kullanılmalıdır.
Literatürde farklı bölgeler için gerçekleştirilmiş pek çok
fizibilite çalışması mevcuttur. Aşağıdaki çalışmalar bu tür
çalışmalara örnek olarak verilebilir:
Abdallah ve Nijmeh (2004), PLC kontrollü, iki eksenli
güneş takip sistemi tasarlamışlardır. Kontrol için gün
içerisinde güneşin konumunu dört kez ölçmüşler ve bu
ölçüme göre güneşin hızını tahmin etmişler. Tahmin
ettikleri hız ile sistemi sürekli döndürerek güneşi takip
etmişlerdir. Sistemden elde ettikleri enerjiyi, güney
yönünde 32° eğim açısı ile yerleştirilmiş sabit sistemde
üretilen enerji ile karşılaştırmışlar ve sonucunda hareketli
sistemin sabit sisteme göre yaklaşık % 41 daha fazla enerji
ürettiğini fakat takip etmek için harcadıkları enerjinin
ürettikleri enerjinin %3’ünü geçtiğini belirtmiştir. Abu-
Khader ve ark. (2008), PLC kontrollü iki eksenli güneş
takip sistemi tasarlamışlardır. Güneş takip sistemini gün
içerisinde güneşin konumuna göre dört kez döndürerek
ürettikleri enerji sabit sisteme göre %30 ile %45 arasında
daha fazla olduğunu ve güneşi takip etmek için harcadığı
enerji ürettiği enerjinin %3’ünün altında olduğunu tespit
etmiştir. Bingol ve ark. (2006), mikro işlemci tabanlı güneş
takip sisteminde step motor ve ışık sensörü kullanarak
güneşi takip etmeye yönelik bir çalışma
gerçekleştirmişlerdir. Özçelik ve ark. (2011), bir güneş
panelini kontrol etmek için yeni bir yaklaşım önermişlerdir.
İki eksenli bir sistemin Azimut ve yükseklik açısını
önerdikleri yöntemle değiştirebilmektedir. Bir başka
çalışmada Clifford ve Eastwood pasif bir güneş izleyici
sistemi tasarlamışlardır. Bu sistemin verimi %23
arttırdığını tespit etmişlerdir. Yenilerde yayınlanmış bir
çalışmada Koussa ve arkadaşları farklı gökyüzü durumları
için en iyi güneş izleyici sistemi tespit etmeyi
hedeflemişlerdir. Özel olarak seçtikleri belli günler için
sabit ve hareketli sistemlerin verim artış yüzdelerini tespit
etmişlerdir. Örneğin 1 Mayıs için sabit sisteme göre
hareketli sistemin %36 daha fazla elektrik enerjisi ürettiğini
tespit etmişlerdir (Kaussa ve ark. 2012). Rumala (1986),
servo motor, foto direnç sensörleri ve sinyal işleme devresi
kullanarak gölge yöntemli bir güneş takip sistemi
geliştirmiştir. Sefa ve ark.(2009), Türkiye de yapmış
oldukları çalışmada RS485 haberleşme ara birimi ve mikro
denetleyici kontrollü tek eksenli güneş takip sistemi
tasarlamışlardır. Sistem mekanizmasının basit olması
sayesinde kolay kurulum ve daha az bakım olanağı
sağlayacağını belirtmişlerdir. Demirtaş (2006), bilgisayar
kontrollü iki eksenli güneş takip sistemi tasarlamış ve imal
etmiştir. Sistemin dikey ve yatay hareketini step motor
(adım motoru) ile sağlamıştır. Elde edilen verileri
bilgisayar ortamına kaydedebilmek için ve sistemi
bilgisayar ile kontrol edebilmek için mikro denetleyici
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
453
kontrollü bir ara birim kullanmıştır. Güneş takip sistemi ile
takip edildiğinde normal gün ışığında 12 Volt, güneşe dik
olduğu zamanlarda 18,5 Volt, güneşi yeterli hassasiyette
takip edemediği veya havanın kapalı olduğu zamanlarda ise
10 Volt civarında gerilim üretmiştir. Hareketli sistemin
üretimlerini sabit sistem ile karşılaştırdığında %35 daha
fazla üretim elde ettiğini savunmuştur. Roth ve ark. (2004),
güneşin konumunu takip etmek için elektromekanik bir
sistem tasarlamış ve Federico Santa Maria (UTFSM)
Teknik Üniversitesi, Güneş Değerlendirme
Laboratuvarında imal etmişlerdir. Platformu iki adet küçük
DC motor ile hareket ettirmişlerdir. Güneş ışınlarını
pyrheliometre ile doğrudan otomatik olarak ölçmüşlerdir.
Bulutlu hava koşulları altında güneş görülmediğinden
kullandıkları bir bilgisayar programı ile güneşin konumunu
hesaplayarak (algılayıcılar tekrar güneşi algılayana kadar)
kontrolü sağlamışlardır. Yapmış oldukları bu çalışmayı
Şili’nin Valparaiso şehrinde denemiş ve oldukça verimli
olduğunu sistemin üzerine yerleştirilen güneş panellerinin
dışında kolektör gibi farklı sistemlerinde kolayca monte
ederek farklı amaçlar içinde kullanılabileceğini
savunmuşlardır. Literatürde birçok güneş takip sistemi
tasarlanmış ve birçok bölge için bu sistemlerin performansı
incelenmiştir. Bu çalışmada ise güneşin önerilen algoritma
ile Afyonkarahisar iklimsel şartlarında izlenmesi
durumunda verim artışının ne oranda gerçekleşeceğin tespit
edilmesi hedeflenmiştir. Bu çalışmada bir proje
kapsamında gerçekleştirilmiş çalışmaların bir bölümü
sunulmuştur. Çalışmada tasarlanan PLC tabanlı sistem ve
arayüz programı özgün olup sistemin uzaktan erişilip
müdahale edilebilirdir.
Bu çalışmada Bölüm 2’de tanıtımı yapılan güneş takip
sistemi üzerinde yine Bölüm 2’de anlatılan kontrol sistemi
ve algoritma kullanılarak ölçülmüş verilere ait grafikler
Bölüm 3’de sunulmuş ve Bölüm 4’de elde edilen sonuçlar
yorumlanmıştır.
2. Materyal ve Metot
2.1. Güneş Takip Sisteminin Tanıtımı
Aşağıda Resim 1’de iki eksen güneş takip sistemi yer
almaktadır. Güneş takip sisteminin hareketi eksen millerine
bağlı redüktörü tahrik eden AC Servo motorlar ile
sağlanmaktadır. Servo motorların ne zaman ve ne kadar
hareket edeceği Bölüm 2.3’de detayları anlatılan kontrol
sistemi ile gerçekleşmektedir.
Resim 1: Güneş takip sistemin genel görünümü.
2.2. PLC Kontrol Ünitesinin Panoya Montajı
PLC kontrol ünitesi bir adet DP20SX2 PLC ana modülü,
dört adet DVP04AD analog giriş modülü, iki adet
DVP04PT PT-100 sıcaklık ölçme modülü ve iki adet
DVP01PU servo kontrol modülü olmak üzere dokuz
modülden oluşmaktadır. Bu modüller Resim 2’de
görüldüğü gibi birbiri ardına PLC ana modülüne akuple
bağlanmıştır. PLC ana modülü ve modüller arasındaki
haberleşme modül bağlantı terminalleri üzerinden
gerçekleştirilmektedir. Ancak modüller arasında besleme
geçişi bulunmadığından tüm modüllerin güç kaynağı ile
bağlantıları harici kablo çekilerek gerçekleştirilmiştir.
Kablo montajlarının ardından PLC kontrol ünitesi
modülleri ile birlikte bir bütün olarak ray üzerine monte edilmiştir (Resim 2).
Resim 2: Güneş takip sistemin genel görünümü.
Panoya montajı yapılan PLC kontrol ünitesinin, ölçme
girişleri (panel sıcaklık sensörleri, panel akım ve
gerilimleri, kuzey, güney, doğu ve batı LDR girişleri,
kuzey-güney ve doğu-batı eksen enkoderleri, doğu-batı
sınır sensörü), kontrol çıkışları (kuzey-güney ve doğu-batı
servo start-stop çıkışları ve kuzey-güney ve doğu-batı servo
motorları sürücüleri için yön ve hız kontrol çıkışları) ve
PLC haberleşme bağlantıları gerçekleştirilmiştir. Sıcaklık
sensörleri, LDR sensörleri ve haberleşme bağlantıları için
blendajlı (shielded) kablolar kullanılmış ve bu kabloların
blendajları toprak hattına bağlanmıştır. Böylece ölçme
sinyallerinde oluşabilecek olası gürültünün önüne
geçilebilmiştir.
2.3. Kurulan Sistemin Devreye Alınması ve Veri
Toplama Çalışmaları
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
454
Güneş takip sisteminin kontrolünü ve veri toplama
işlemlerini gerçekleştiren yazılım altyapısı temelde iki
kısımdan oluşmaktadır. Yazılımlardan ilki PLC kontrol
ünitesi içine gömülen ve güneş takip algoritmalarının
işletildiği aynı zamanda ölçme işlemlerinin de yerine
getirildiği kontrol programıdır. İkinci yazılım ise sunucu
bilgisayar üzerinde çalışan ve güneş takip sistemi ile
kullanıcı arasında PLC üzerinden iletişim sağlayan arayüz
(interface) programıdır. Bu iki program aşağıda sırasıyla
ayrıntılı olarak sunulmaktadır.
2.3.1 PLC Kontrol Programı
PLC kontrol ünitesi içine gömülen program servo
motorların kontrolünü, güneş panellerinin akım, gerilim,
yüzey sıcaklığı gibi parametrelerinin ölçme işlemlerini
yerine getirmektedir. Güneş takip sisteminde PLC
kullanılmasının sebebi, kontrol ünitesinin ağır işletme
koşullarına maruz kalma durumudur. Örneğin kış aylarında
açık alanda bulunan kontrol ünitesi sıfırın altında 30 derece
soğukta çalışmak zorunda kalabilmektedir. Benzer şekilde
yaz aylarında da 40 derecenin üzerindeki sıcakta çalışması
gerekebilmektedir. PLC’ler endüstriyel şartlarda çalışmaya
uygun imal edildiklerinden hem ağır atmosferik şartlara
hem de uzun süreli kesintisiz çalışmaya imkân
sunmaktadır. PLC güneş takip sisteminin de panelleri
istenilen takip algoritmasına göre güneşe yönlendirmekte
ve sistemden topladığı verileri belirli zaman aralıklarında
(interval) haberleşme portu üzerinden bilgisayara
göndermektedir. Zaman aralıkları dakika olarak belirlenmiş
ve böylelikle çözünürlüğü oldukça yüksek veri ölçümleri
yapılmıştır. Aşağıda PLC kontrol programının tasarlandığı
DELTA firmasının “ISPSoft” isimli program geliştirme ekranı görülmektedir (Resim 3).
Resim 3: Delta PLC için program geliştirme yazılımı.
PLC için tasarlanan programın akış şeması genel hatlarıyla
aşağıda Şekil 1’de görülmektedir. Akış diyagramında
görüldüğü gibi ilk olarak, PLC ile sunucu bilgisayar
arasındaki uzaktan erişimi sağlayan RS-485 haberleşme
hattı ve servo motor sürücü modüllerinin başlangıç ayarları
gerçekleştirilmektedir. Ardından güneş takip sisteminin
analizinde kullanılan parametreler için analog giriş ölçme
süreci yürütülmektedir. Analog ölçme sürecinin
tamamlanmasını takiben PLC içinde bulunan gerçek zaman
saatinden yıl, ay, gün, saat, dakika ve saniye bilgilerinin
okunma işlemi yerine getirilmektedir. Programın buraya
kadar olan kısmı parametre ölçümlerini kapsamaktadır ve
ölçülen parametreler RS-485 haberleşme hattı üzerinden
sunucu bilgisayara gönderilmektedir.
Şekil 1: PLC programı akış diyagramı.
Ölçme işlemlerinin tamamlanmasının ardından ara yüz
programı üzerinde hangi takip algoritmasının seçildiğinin
belirlendiği bir sorgulama yapılmaktadır.
Ara yüz programında farklı takip algoritmalarının seçimine
imkân verilmektedir. Eğer saat başı takip algoritması
seçilmiş ise bir alt program çalıştırılmaktadır. Bu alt
programın işleyişini gösteren akış şeması aşağıda Şekil
2’de verilmiştir. Saat başı algoritması iki şekilde icra
edilebilmektedir. Bunlardan birincisinde; güneşin
konumuna göre hareket edilmekte ve bölgeye ait olan
azimut ve eğim açıların bulunduğu bir dosyadan alınan
verileri kullanarak saat başında bu açı değerlerine uygun
olan bir pozisyona paneller konumlandırılmaktadır.
İkincisinde ise; paneller, güneşin doğuş ve batış
pozisyonları arasında kalan açının eşit aralıklara bölünmesi
ile bulunan açı değeri kadar her saat başında hareket
ettirilmektedir.
Saat başı takip algoritması ikinci seçenekte olduğu gibi icra
edilirse ilk olarak platform güneşin doğuş pozisyonuna
konumlandırılmaktadır. Ardından güneşin doğuş ve batış
konumlarına ilişkin platformun doğu ve batı sınır açıları ile
güneşin doğuş ve batış zamanları belirlenmektedir. Bu
değerler üzerinden saat başı kat edilecek doğu-batı ve
kuzey-güney (yükseklik) eksenindeki açı değeri
hesaplanmaktadır (Denklem 1).
d bS
d bt t
(1)
Burada αS saat başı yönelme açısını, αd güneşin doğuş açısı
ve αb güneşin batış açısını belirtmektedir. td ve tb ise
sırasıyla güneşin doğuş ve batış zamanıdır. Denklemin
paydası gün ışığının mevcut olduğu saat değerini
vermektedir. Bu durumda denklemden [derece/saat]
biriminde saat başına karşılık gelen açı değeri elde
edilmektedir.
Başla
Başlangıç İşlemleri-RS-485 Haberleşme ayarları
-Servo modül ayarları
Analog Giriş İşlemleri-Akım girişleri
-Gerilim girişleri
-Sıcaklık girişleri
-LDR girişleri
-Enkoder girişleri
Gerçek Zaman (RTC) İşlemleri-Yıl, ay ve gün
-Haftanın günü
-Saat, dakika ve saniye
Güneşe otomatik yönelme
alt programı
Yön D-B?
Platformu
doğuya döndür
Platformu
batıya döndür
Doğu Batı
Yön K-G?
Platformu
kuzeye döndür
Platformu
güneye döndür
Kuzey Güney
Gecikme 1s mi? Hayır Evet
Son
Otm. yönelme
seçildi mi?
Evet
Hayır
1
D-B sınırda mı? Hayır
Evet
D-B servo durdur
1
D-B sınırda mı? Hayır
Evet
D-B servo durdur
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
455
Şekil 2: Saat başı takip algoritması akış şeması.
Saat başı açı değerinin belirlenmesine müteakip PLC den
alınan gerçek zaman saati değerleri üzerinden güneşin
doğuş saati kontrol edilmektedir. Güneş doğmuşsa bu
durumda saat başı zamanı yine gerçek zaman saati değerleri
üzerinden tespit edilmektedir. Saat başı olmuşsa platform
sabit bir hızda doğuya ve kuzey-güney yönünde hareket
ettirilmekte ve saat başı açısı değeri kadar hareket
sağlanmışsa servo motor durdurulmaktadır. Ardından
güneşin batış süresi kontrol edilmekte ve eğer güneş
batmamış ise bir sonraki saat başında aynı işlem
tekrarlanmaktadır. Eğer güneşin batış süresi gelmiş ise
takip durdurulmakta ve platform güneşin doğuş
pozisyonuna getirilerek güneşin doğuş süresi
beklenmektedir.
Elle kontrol algoritması seçilmişse kullanıcının yön
istekleri PLC programına gönderilmektedir. PLC programı
platformu istenilen yönde, elle kontrol için belirlenen sabit
hızda, hareket ettirmektedir. Kontrol sırasında eksen açıları,
haberleşme hata kodları ve diğer sistem parametreleri
izlenebilmektedir.
2.3.2. Sunucu Bilgisayar İçin Arayüz Programı
Güneş takip sistemi ile kullanıcı arasındaki iletişimi
sağlayan arayüz programı; ölçülen parametrelerinin
grafikler ve göstergeler yardımıyla izlenmesi, takip
algoritmalarının seçimi, verilerin toplanıp kaydedilmesi,
güneş takip sisteminin elle kontrolü gibi görevleri yerine
getirmektedir (Resim 4a,4b,4c). Bu ara yüz programı özel
bir firmaya sistem ihtiyaçları doğrultusunda hazırlatılmıştır.
Arayüz programı bir dizüstü bilgisayar üzerinde
çalıştırılmaktadır ve bu bilgisayar için Afyon Kocatepe
Üniversitesi, Bilgi İşlem Merkezi tarafından sabit IP tahsis
edilmiştir. Bu sayede sisteme internet üzerinden uzaktan
erişim sağlanabilmiştir. Resim 4a,4b ve 4c’de görüldüğü
gibi arayüz programı veri izleme göstergelerinin bulunduğu
“Ana Sayfa”, verilerin grafikler üzerinden izlenebildiği
“Grafik” ve güneş takip sisteminin elle kontrol edilebildiği
“Ayarlar” olmak üzere üç sekmeden oluşmaktadır.
Resim 4a: Güneş takip sistemi arayüz programı “Ana
sayfa” sekmelesi.
Resim 4b: Güneş takip sistemi arayüz programı “Grafik”
sekmelesi.
Resim 4c: Güneş takip sistemi arayüz programı “Ayarlar”
sekmelesi.
Program çalıştırıldığında ilk yapılması gereken işlem
sistemin uzaktan kontrolünü sağlayan PLC ile bilgisayar
arasındaki RS-485 haberleşmenin sağlanması için port
Başla
Doğuş ve batış parametreleri-Doğu-batı konumları belirle
-Doğuş ve batış zamanlarını belirle
Son
D-B enkoder > S. açısı?
D-B servo durdur
Evet
Hayır
Saat başı yönelme parametreleri-Saat başı yönelme açısını belirle
-Hareket hızını belirle
Saat başı mı? Hayır
Evet
İlk işlemler-Platformu doğu ilk pozisyonuna getir
Platformu
doğuya döndür
Güneş battı mı? Hayır
Evet
Güneş doğdu mu?
Hayır
Evet
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
456
seçiminin yapılmasıdır. Port seçiminin ardından “Bağlan”
butonuna basılarak iletişim başlatılmaktadır. İletişimin
başlamasıyla birlikte “Ana Sayfa” sekmesinde panel
akımları, gerilimleri, yüzey sıcaklıkları, PLC tarih ve saati,
dış ve iç ortam sıcaklıkları gibi parametre değerleri
görüntülenmektedir (Resim 4a).
Arayüzün “Grafikler” sekmesinde ise toplanan veriler
grafiksel olarak görülmektedir. Veriler büyütülerek (zoom
yapılarak) yakından incelenebilmektedir. Grafik bileşenleri
sayesinde verilerin günlük, haftalık değişimleri
görülebilmekte ve herhangi bir aksaklık olması durumunda
müdahale etme şansı olabilmektedir (Resim 4b).
Arayüzün “Ayarlar” isimli son sekmesinde güneş takip
sisteminin elle hareket ettirilmesi sağlanabilmektedir. Elle
kontrol seçeneği takip sisteminde gerçekleşecek tamirat ve
bakım çalışmalarında platformun uygun pozisyona
konumlandırılmasında oldukça faydalı olmaktadır. Ayarlar
sekmesinde bu işlem için doğu-batı ve kuzey-güney yön
seçme anahtarları bulunmaktadır. Ayrıca elle kontrol
durumunda sisteme hâkimiyeti artırmak için doğu-batı ve
kuzey-güney enkoder değerleri, doğu, batı, kuzey ve güney
yönü ışık şiddeti değerleri ve PLC modülü hata mesajları
görüntülenmektedir. Böylece kullanıcı elle sistemi kontrol
ederken bu değerleri izlemekte ve kritik bir noktaya
yaklaşılmışsa veya bir hata meydana gelmişse sistemi
durdurabilmektedir (Resim 4c).
Aşağıda arayüz programının akış şeması görülmektedir
(Şekil 3).
Şekil 3: Arayüz programı akış şeması.
Akış şemasında görüldüğü gibi başlangıç ayarlarının
ardından verilerin gösterilme ve kaydedilme işlemleri
gerçekleştirilmektedir. Veri gösterme ve kayıt işlemlerinin
ardından takip algoritmalarının hangisinin seçildiği
sorgulanmakta ve seçime göre uygun algoritma icra
edilmektedir. Tüm bu işlemler 1 saniye aralıklarla
gerçekleştirilmektedir. Ancak verilerin kayıt dosyasına ve
grafik bileşenine yazdırma gecikmesi 1 dakika olarak
belirlenmiştir. Bu çalışmada Şekil-2’de sunulan saat başı
kontrol algoritmasının performansına ait sonuçlar
sunulmuştur.
3. Bulgular
Saat başı takip algoritması monokristal, polikristal ve ince
film teknolojileri ile üretilmiş güneş panelleri için bir yıl
boyunca denenmiştir. Denenen bu paneller içerisinden
monokristal güneş paneline ait dakikalık sıklıklarla
ölçülmüş ve saatlik ortalamaları alınan üretim verilerinin
bir yılık değişimleri günlük olarak aşağıda sunulmuştur.
Şekil 4: Hareketli monokristal güneş panelinin 1 yıllık
üretimi.
Şekil 5: Sabit monokristal güneş panelinin 1 yıllık
üretimi.
Tablo 1: Monokristal güneş panellerinin 1yıllık
üretimleri.
Aylar TOPLAM ÜRETİMLER
Hareketli Monokristal Sabit Monokristal
Ocak 3332 3049
Şubat 5113 4361
Mart 6548 5337
Nisan 9105 6844
Mayıs 7689 5686
Haziran 11167 7953
Temmuz 11155 8404
Ağustos 11832 8032
Eylül 11801 8020
Ekim 8369 6289
Kasım 4152 2951
Başla
Başlangıç İşlemleri-RS-485 haberleşme için port seçimi
-Göstergelerin reset işlemleri
Verilerin gösterilmesi-Panel parametreleri
-Tarih ve saat
-Eksenlerin açı değerleri
-Hata mesajları
Verilerin kaydedilmesi-Grafik bileşenine
-Veri dosyasına
Gecikme 1s mi? Hayır Evet
Son
Elle kontrol
seçilmiş mi?
Evet
Hayır
Saat başı kontrol alt
programıSaat başı kontrol
seçilmiş mi?
Evet
Hayır
Güneş açılarına göre
kontrol alt programı
Güneş açıları
kon. seçilmiş mi?
Evet
Hayır
Yön seçimini PLC programına
gönder
LDR ile kontrol
seçilmiş mi?
Evet
Hayır
Seçimi PLC programına
gönder
0 50 100 150 200 250 300 3500
100
200
300
400
500
600
Zaman (Gün)
Enerji (W
h)
0 50 100 150 200 250 300 3500
50
100
150
200
250
300
350
400
Zaman (Gün)
Enerji (W
h)
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
457
Aralık 3651 3053
Toplam 93913 69980
Yukarıdaki grafiklerden ve tablodan da anlaşılacağı üzere
güneş panelinin güneşi takip etmesi durumunda
üretimlerinin önemli ölçüde arttığı anlaşılmaktadır. Ayrıca
güneşi takip edilmesi durumunda yaz aylarında ki üretimin
sabit sisteme göre diğer aylara nazaran daha fazla arttığı
görülmektedir.
4. Sonuçlar
Bu çalışmada servo motor kullanan iki eksende güneşi
takip edebilen uzaktan erişimli PLC tabanlı bir güneş takip
sistemi tanıtılmıştır. Sistemin performansı Afyonkarahisar
şartlarında izlenmiştir. Güneş takip sistemi ve takip
algoritması kullanılması durumunda hareketli monokristal
güneş panelinin sabit güneş paneline göre %34,2 daha fazla elektrik enerjisi üretimi yaptığı tespit edilmiştir.
Teşekkür
Bu çalışma 111E134 numaralı TUBITAK projesi
kapsamında gerçekleştirilmiştir.
Kaynakça
[1] S. Abdallah ve S. Nijmeh, “Two axes sun tracking
system with PLC control,” Energy Conversion and Management, Cilt: 45, No: 11-12, s:1931-1939, 2004.
[2] M.M. Abu-Khader, O.O. Badran ve S. Abdallah,
“Evaluating multi-axes sun-tracking system at
different modes of operation in Jordan,” Renewable
and Sustainable Energy Reviews, Cilt: 12, No: 3, s:864-873, 2008.
[3] O. Bingol, A. ALTINTAS ve Y. ÖNER,
“Microcontroller based solar-tracking system and its
implementation,” Journal of Engineering Sciences, Cilt: 12, No: 2, s:243-248, 2006.
[4] S. Ozcelik, H. Prakash, R. Challoo, “Two-Axis Solar
Tracker Analysis and Control for Maximum Power
Generation” Procedia Computer Science, Volume Cilt: 6, s:457462, 2011.
[5] M.J. Clifford, D. Eastwood, “Design of a novel
passive solar tracker,” Solar Energy, Cilt: 77, No:3,
Sayfa 269-280, 2004.
[6] M. Koussa, M. Haddadi, D. Saheb, A. Malek, S.
Hadji., Sun Tracker Systems Effects on Flat Plate
Photovoltaic PV Systems Performance for Different
Sky States: A Case of an Arid and Hot Climate Energy Procedia, Cilt:18, s:839-850, 2012.
[7] S.S.N. Rumala, “A shadow method for automatic
tracking,” Solar Energy, Cilt: 37, No: 3, s:245-247,
1986.
[8] İ. Sefa, M. Demirtas ve İ. Çolak, “Application of one-
axis sun tracking system,” Energy Conversion and Management, Cilt: 50, No: 11, s:2709-2718, 2009.
[9] M. Demirtaş, “Bilgisayar Kontrollü Güneş Takip
Sisteminin Tasarımı ve Uygulaması,” Politeknik Dergisi, Cilt: 9, No: 4, s:247-253, 2006.
[10] P. Roth, A. Georgiev ve H. Boudinov, “Design and
construction of a system for sun-tracking,” Renewable Energy, Cilt: 29, No: 3, s:393-402, 2004.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
458
Görüntü İşleme Tabanlı Zeytin Ayıklama Makinesi
Melih Kuncan1, H.Metin Ertunç
2, Gürkan Küçükyıldız,
3 Berkan Hızarcı
4,Hasan Ocak
5, Sıtkı Öztürk
6
1,2,3,4,5
Mekatronik Mühendisliği Bölümü
Kocaeli Üniversitesi, İzmit/Kocaeli melih.kuncan@kocaeli.edu.tr, hmertunc@kocaeli.edu.tr, gurkan.kucukyildiz@kocaeli.edu.tr,
berkanhizarci@gmail.com, hocak@kocaeli.edu.tr
6Elektronik- Haberleşme Mühendisliği Bölümü
Kocaeli Üniversitesi, İzmit/Kocaeli sozturk@kocaeli.edu.tr
Özetçe
Günümüzde endüstriyel tarımda görüntü işleme
uygulamalarının hızla yaygınlaştığı görülmektedir. Endüstriyel
tarımda kullanılan bu çalışmaların başında nesnelerin
renklerine göre ayrılması işlemi gelmektedir. Bu çalışmada,
görüntü işleme kullanılarak renkli nesnelerin ayrıştırılması
işlemi zeytinler için gerçekleştirilmiştir. Bu ayırma işlemi
zeytinlerin renklerine göre belirlenmesi ve belirlendikten
sonra zeytinlerin renklerine göre ayrıştırılması işlemidir. Bu
işlem için bir adet elektromekanik sistem geliştirilmiş olup,
çalışma kapsamında geliştirilen görüntü işleme algoritmaları
gerçek zamanlı olarak bu sistem üzerinde test edilmiş ve
sonuçları gözlenmiştir. Çalışmanın görüntü işleme kısmında
üç farklı yöntem denenmiş olup bu yöntemlerin elde ettiği
başarılar sonuçlar kısmında karşılaştırılmıştır.
1. Giriş
Son yıllardaki teknolojik gelişmeler tarımda da kendine geniş
bir yer bulmuştur. Bunun sonucunda endüstriyel tarıma geçiş
sağlanmıştır. Gelişen teknolojik yeniliklerle insan gücünü en
aza indirmek ve verimliliği en yükseğe çıkarmak için
endüstriyel tarım hayati bir önem taşımaya başlamıştır. Bu
kapsamda insanların yaptıkları işleri otomasyon sistemleri
yardımıyla daha kısa sürede ve daha ucuza mal eden
teknolojik araçlar tasarlanmıştır. Bu teknolojik araçların
tarıma sağladığı başarılı sonuçlar, hem endüstriyel tarıma olan
ilgiyi artırmış hem de tarımda kullanılacak olan birçok yeni
ekipmanlara olan talebi artırmıştır. Günümüzde görüntü
işleme kullanılarak endüstriyel tarım alanında başarılı
çalışmaların ve uygulamaların mevcut olduğu gözükmektedir.
Literatürde bulunan birçok çalışma sonucunda endüstriyel
tarımda görüntü işlemenin başarılı bir şekilde çalışabildiği
gözlenmiştir.
Zhao vd. [1], gerçek zamanlı olarak görüntü işleme
yöntemi kullanarak meyvelerin kalite standartlarını
belirlemişlerdir. Yazarlar geliştirdikleri sistem meyvelerin dış
yüzey kalite ve hatalarını, renklerini ve şeklini kullanarak
meyvelerin sınıflandırılmasını başarmışlardır. Çin’de yapılan
başka bir çalışmada, balık yetiştiriciliği sektöründe görüntü
işleme uygulamaları konusunda çalışmışlardır [2]. Yazarlar
görüntü işleme tekniklerini, balık hastalıklarının otomatik
tanısında ve tahmininde kullanmışlardır. Hufschmied vd. [3],
tarafından yapılan çalışmada mersin balığı çeşidinin görüntü
işleme yöntemi kullanılarak sınıflandırılması işlemi
gerçekleştirilmiştir. Yazarlar yaptıkları çalışmada balığın
boyut ve ağırlıklarını belirleyerek kesime uygun olup
olmadığına karar vermişlerdir. Poursaberia vd. [4],
çalışmalarında görüntü işleme teknikleri kullanılarak,
mandıradaki sığırlarda sakatlıkları erken teşhis edebilecek bir
yöntem geliştirmişlerdir. Yazarlar geliştirdikleri çalışmada %
96’dan daha yüksek bir başarı oranı elde etmişlerdir. Mustafa
vd. [5], çalışmalarında, muzun boyutunu ve olgunluğunu
belirlemek için görüntü işleme yöntemi kullanmışlardır.
Ülkemiz coğrafik konumundan dolayı başta Ege bölgesi olmak
üzere çeşitli bölgelerimizde bol miktarda zeytin üretimi
yapılmaktadır. Zeytinlerin boyutlarına göre sınıflandırılması,
sağlam-çürük olarak sınıflandırılması ve renklerine göre
sınıflandırılma işlemlerinin yapılması büyük bir sorun teşkil
etmektedir. Bu çalışma kapsamında görüntü işleme yöntemi
kullanılarak, zeytinlerin renklerine göre sınıflandırılması ve
istenilen haznelere gönderilme işlemi yapılmıştır. Şekil 1’de
ülkemizde hasat zamanına göre zeytin çeşitleri verilmiştir.
Şekilden de görülebileceği gibi farklı hasat zamanlarında
zeytinlerin renkleri farklı olmaktadır.
Şekil 1: Hasat Zamanlarına göre zeytin çeşitleri
2. Görüntü İşleme Algoritması
Bu çalışmada görüntü işleme tabanlı bir sistem geliştirilmiştir.
Görüntü işleme çalışması için sisteme bir adet Ueye-KP20B
kamerası sisteme entegre edilmiştir. Kameradan alınan
görüntüler, geliştirilen görüntü işleme algoritmaları ile
işlenmiştir. Zeytinlerin renklerini tespit eden görüntü işleme
algoritması HALCON ortamında geliştirilmiş olup bir
bilgisayar yardımıyla gerçek zamana aktarılmıştır. Bu bölümde
geliştirilen görüntü işleme algoritmaları açıklanmıştır.
Kullanılan kameranın özellikleri Tablo 1’de verilmiştir.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
459
Tablo 1: Kullanılan kamera özellikleri
Haberleşme Protokolü USB 3.0
Sensör Tipi CMOS
Saniyede Görüntü Sayısı 60 fps(frame per second)
Çözünürlük 1280x1024
2.1. Kullanılan Görüntü İşleme Algoritmaları
Görüntü işleme uygulamaları olarak, HSV (Hue, Saturation,
Value) renk modeli metodu kullanarak renkli nesnelerin ayırt
edilmesi, RGB renk modelinde Öklid ve Mahalanobis uzaklık
metodu kullanılarak renkli nesnelerin ayırt edilmesi
çalışmaları yapılmıştır. RGB (Red, Green, Blue) renk modeli
kısmında arka plan çıkartımı ve özellik çıkartımı yöntemleri de
kullanılarak uygulamaların verdiği sonuçlar karşılaştırılmıştır.
2.1.1. HSV renk uzayı
HSV renk uzayı, renkleri sırasıyla renk özü, doygunluk ve
parlaklık olarak tanımlar. HSV renk uzayının kullanılma
amacı RGB uzayına göre insan görü düzeneğine daha yakın
bir yapıda olmasıdır. Renkli nesnelerin ayrılması işlemi için
genellikle HSV renk uzayı modeli kullanılmaktadır. RGB renk
uzayında parlaklığa bütün bileşenlerin etkisi bulunmakla
beraber HSV uzayında ise RGB uzayından farklı olarak
parlaklığa sadece V değerinin etkisi vardır [6].
Şekil 2: RGB ve HSV renk uzayları
Geliştirilen sistemde kameradan alınan görüntü RGB
görüntüdür. Öncelikli olarak kameradan alınan görüntü RGB
renk uzayından HSV renk uzayına dönüştürülmüştür.
Kameradan alınan örnek bir RGB resim ile HSV
dönüştürülmüş hali Şekil 3’de verilmiştir.
Şekil 3: HSV metodu için örnek görüntü
RGB uzayından HSV uzayına dönüştürülmüş resimler
üzerinde deneme yanılma yoluyla belirlenen bir eşik
uygulanmıştır. Alınan resimlerden Hue ve Saturation değeri
belirlenen eşiğin üstünde olan zeytinler yeşil zeytin olarak
kabul edilmiştir.
2.1.2. RGB renk uzayında Öklid uzaklık metodu ile
sınıflandırma
Sınıflandırma, bir veri grubu içinde belirli bir sınıf oluşturan
objelerin benzerliğinden yola çıkarak ve özelliklerine göre
seçilerek gruplandırılması olarak tanımlanabilir.
Sınıflandırma; birçok bilim dalında kullanılan bir karar verme
işlemidir. Görüntü işleme kullanılarak sınıflandırma
yapılabilmesi için görüntülerden öznitelik çıkartılması
gerekmektedir. Bu çalışmada da öznitelik çıkartma işlemi
yapılmıştır. RGB renk uzayında alınan görüntünün R,G,B
ortalamaları (her bir kanalın ortalaması) birer öznitelik olarak
seçilmiştir. Bu sayede 3 boyutlu bir özellik uzayı elde
edilmiştir.
Literatürde kullanılan sınıflandırma algoritmalarında farklı
uzaklıklar kullanılmıştır. Öklid uzaklığı kolay uygulanabilir
olması nedeniyle en sık tercih edilen uzaklıktır. Yapılan
çalışma sırasında zeytinlerin renklerine göre sınıflandırması
işlemi yapılmıştır. Bunun için açık yeşil, yeşil, koyu yeşil ve
siyah olmak üzere dört farklı sınıf belirlenmiştir. Her bir sınıf
için 40 farklı örnek alınarak sınıflar oluşturulmuştur. Öznitelik
olarak ise RGB görüntü uzayında her bir kanalın ortalaması
seçilmiştir. Bu sayede 40 elemandan oluşan üç boyutlu bir
uzay elde edilmiştir.
Her yeni alınan görüntüde tespit edilen zeytinin hangi
sınıfa ait olduğunu belirlemek için zeytinin her bir kanalının
(R, G, B) ortalaması bulunur ve bulunan bu değerin her bir
sınıfa olan Öklid uzaklığına bakılır. Öklid uzaklığı (1)
denklemine göre hesaplanmıştır. Yukarıdaki formüle göre elde
edilen değerler arasında en yakın olanına zeytin dahil
edilmiştir [7].
2 2 2 2
1 1 2 2
1
( ) ( ) ... ( ) ( )n
n n i i
i
p q p q p q p q
(1)
Bu uzaklık, bahsi geçen iki nokta dışındaki bilgileri
hesaba katmamaktadır. Bu karşılaştırma metodunda,
karşılaştırılmak istenen nesnenin örnek kümeler arasında
hangisine en yakın olduğunu hesaplamak amacıyla (1)
denkleminde verilen Öklid uzaklık formülü kullanılır. Öklid
uzaklığı, Pisagor Teoremi temel alınarak bir noktanın diğer
noktaya olan doğrusal uzaklığının ölçüm yöntemidir.
Sınıflandırmada karşılaştırmak için oluşturulan veri
kümelerinin sayısına göre, bilgisayar tüm veri setlerini
tarayarak yeni verinin ortalamasıyla karşılaştır ve nesneyi en
yakın kümeye atar. Şekil 4’de RGB renk uzayında Öklid
metodu için kullanılan örnek görüntü gösterilmiştir.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
460
Şekil 4: RGB renk uzayında Öklid metodu için örnek görüntü
2.1.3. RGB renk uzayında Mahalanobis uzaklık yöntemi ile
sınıflandırma
Uzayda iki nokta arasındaki mesafeyi ölçmek için kullanılan
en temel uzaklık ölçütü Öklid uzaklığıdır. Öklid uzaklığı,
arasındaki mesafenin hesaplanacağı iki nokta dışındaki
bilgileri hesaba katmamaktadır. Mahalanobis uzaklık
metodunda sadece merkezlere olan uzaklık değil standart
sapma değerleri de hesaba katılmaktadır. Böylelikle daha
yüksek doğrulukta sınıflandırma işlemi yapılmaktadır.
1 1
2 2
3 3
1
1 2 3 1 2 3( , ) . . ([ . . . ] [ . . . ])
. .
. .
n n
n n
x
x
x
D x y S x x x x
x
(2)
Genel Mahalanobis formülü yukarıdaki (2) denkleminde
gösterilmiştir. Bu formülün sadeleştirilmiş hali aşağıdaki (3)
denklemde gösterilmiştir [8].
1( ) ( ) ( )T
MD x x S x (3)
Bu metodun görüntü işleme metodu olarak
uygulanmasında ilk aşama, karşılaştırma yapılabilmesi için
örnek kümelerin kaydedilmesidir. Bu aşamaya nesnenin
öğretilme aşaması da denilebilir. Öncelikle örneklenecek
kümeler belirlenir ve sırayla her kümenin ortalama değeri ve
standart sapması bulunur. Yapılan bu çalışmada, renklerine
göre her zeytin çeşidinin ( açık yeşil zeytin, yeşil zeytin, koyu
yeşil zeytin ve siyah zeytin) RGB uzayındaki piksel
değerlerinin ortalaması ve standart sapması kümelerin
değerleridir. Bu değerler ile hangi kümeye ait olduğu
bulunmaya çalışılan zeytinin RGB uzayındaki ortalama ve
standart sapma değerleri Mahalanobis uzaklık formülünde
yerine yerleştirilerek, zeytinin hangi kümeye ait olduğu
bulunabilir. Mahalanobis uzaklık formülü her örnek küme için
karşılaştırılacak zeytine uygulandığında, her örnek küme için
bir Mahalanobis uzaklığı elde edilir. Bu işlemlerin sonucunda;
hangi kümeye ait olduğu aranan zeytinin, Mahalanobis
uzaklığı en düşük çıkan kümeye ait olarak atanmaktadır.
Mahalanobis yöntemini görüntü işlemi uygulamasında
gerçekleştirebilmek için, Öklid uzaklık metodunda olduğu gibi
belirli sınıflar gerekmektedir. Sınıflar, farklı dört zeytin çeşidi
için örnek veri kümeleri oluşturulmuştur. İlgili sınıflar açık
yeşil, yeşil, koyu yeşil ve siyah olmak üzere dört farklı zeytin
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
461
sınıfı belirlenmiştir. Her bir sınıf için 50 farklı örnek alınarak
sınıflar oluşturulmuştur. Öznitelik olarak ise RGB görüntü
uzayının ortalaması ve standart sapma değerleri kullanılmıştır.
Örnek zeytin kümesi için RGB değerlerinin ortalaması
kullanılmıştır. Standart sapmaları da aynı şekilde örnek olarak
algoritmada hesaplanmıştır.
Uygulama olarak kullanılan genel Mahalanobis
uygulamasındaki denklemin parametreleri zeytinlerin
belirlenmesi işleminde kullanılmıştır. Buradaki parametreler
x aranan zeytinin ve m ise sınıflandırma işleminde
kullanılan örnek zeytinin, ortalama R, G ve B değerleri olmak
üzere aşağıdaki (4) denklemde gösterildiği gibidir.
[ ] [( ) ( ) ( )]x m xR mR xG mG xB mB (4)
Yukarıdaki (4) denklemde gösterilen ifade Mahalanobis
formülün ilk değişkenidir. İkinci olarak kovaryans matrisini de
çalışmamıza göre benzetim yapmamız gerekmektedir.
Kovaryans matris, aşağıdaki (5) denklemde gösterildiği gibi
hesaplanmaktadır.
2
2
2
0 0
0 0
0 0
R
G
B
S
(5)
Genel Mahalanobis formülünde olduğu gibi kovaryans
matrsini (S) ters olarak (S-1) hesaplamak gerekmektedir.
Bunun için aşağıdaki (6) denkleminde gözüktüğü gibi
hesaplanmaktadır.
2
1 2
2
1/ 0 0
0 1/ 0
0 0 1/
R
G
B
S
(6)
Mahalanobis uzaklık metodunun son değişkeni aşağıdaki
(7) denklemindeki gibi hesaplanmaktadır.
[ ]
xR mR
T
x m xG mG
xB mB
(7)
Bu üç değişken (8) denklemindeki gibi yazılarak, yapılan
çalışma için kullanılmıştır.
2
2
2
1/ 0 0
( , ) [ ] 0 1/ 0 [ ]
0 0 1/
R
T
x m G x m
B
D x m
(8)
Yukarıdaki (8) denkleminde gerekli işlemler yapıldıktan
sonra çalışma için kullanılan Mahalanobis formülü, aşağıdaki
(9) denklemine dönüşmektedir.
1
2 2 2 2
R mR mG mB
2 2 2
– – – x xG xB
R G B
D
(9)
Yukarıdaki (9) denklem örnek sınıf olarak belirlenen tüm
zeytinler için ayrı ayrı hesaplanacaktır. Çıkan sonuçlardan
Mahalanobis uzaklığı en yakın çıkan değer o sınıfa
atanmaktadır. Böylelikle hangi sınıfa ait olduğu bulunmaya
çalışılan zeytinin belirlenme işlemi gerçekleştirilmektedir.
Şekil 5: RGB renk uzayında Mahalanobis metodu için örnek
görüntü
3. Mekanik Tasarım
Bu çalışmada kullanılan mekanizma bilgisayara ortamında
modellendikten sonra imal edilmiştir. Sistemde mekanik
olarak zeytinlerin yerleşeceği yuvalar (tambur mekanizması),
hava kütükleri, zeytin aktarma haznesi, motor ve kompresör
mevcuttur.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
462
Şekil 6: Sistemin mekanik kısmı
4. Elektronik Tasarım
Geliştirilen görüntü işleme algoritması tarafından zeytinlerin
renklerine göre belirlenmesi işlemi gerçekleştirilmektedir.
Renklerine göre belirlenen zeytinleri, istenen bölgelere atmak
için hava kullanılmıştır. Bu hava akışının sağlanması için
sistem üzerinde mekanik olarak imal edilen hava kütüklerine
valfler monte edilmiştir. Bu valfler ilgili konumlarında
bulunan zeytinleri istenen bölgelere aktarmaktadır. Bu valfleri
geliştirilen görüntü işleme algoritmasıyla haberleşmesi için
valf kontrol kartı tasarlanmıştır. Bu valf kontrol kartı RS-232
ile haberleşmesi sağlanmıştır.
Şekil 7: Valf kontrol kartı
Belirlenen konumdaki valflere seriport yardımıyla bilgi
aktarılmakta ve ilgili valf aktif edilmektedir. Böylelikle hava
ile zeytin ayırma işlemi gerçekleştirilmektedir. Sistem için 3/2
seleoid valfler kullanılmıştır. Yani kullanılan valfler normalde
kapalı konumdadır. Valfin tetiklenmesi ile hava akışı
sağlanmaktadır. Kullanılan valfler 0,5 bar basınç altında
çalışmaya başlamaktadır. Valfler 10 bar basınç değerine kadar
çalışmaya devam etmektedir. Zeytinlerin ezilmemesi için
basınç değeri deneme yanılma yoluyla 2,2 bar, ideal basınç
değeri olarak belirlenmiştir.
Şekil 8: Sistemde kullanılan valf
5. Sonuçlar
Bu çalışmada görüntü işleme yöntemi kullanılarak renkli
nesnelerin ayırt edilmesi işlemi, gerçek zamanlı çalışan bir
sistem üzerinde yapılmıştır. Nesnelerin ayırt edilmesi
uygulamalarında farklı görüntü işleme yöntemleri
kullanılmıştır. Bu yöntemlerin birbirlerine göre üstünlükleri ve
zayıflıkları belirtilmiştir. Yazılım kısmında nesnelerin
renklerine göre sınıflandırma işleminde üç ayrı yöntem
kullanılmıştır. Bu yöntemler HSV uzayında, RGB uzayında
Öklid uzaklığı metodu kullanılarak ve RGB uzayında
Mahalanobis uzaklığı metotları kullanılarak nesnelerin
renklerine göre ayırt edilmesi uygulamaları
gerçekleştirilmiştir. Mahalanobis ve Öklid metotlarında
nesnelere, öznitelik değerlerine göre sınıflandırma işlemi
uygulanmıştır. Yapılan çalışma sırasında zeytinlerin renklerine
göre sınıflandırması işlemi yapılmıştır. Bunun için açık yeşil,
yeşil, koyu yeşil ve siyah olmak üzere dört farklı zeytin sınıfı
belirlenmiştir. Her bir sınıf için birçok farklı örnek alınarak
sınıflar oluşturulmuştur. Bu sınıflara göre başarı oranları
aşağıdaki Şekil 9’da gösterilmiştir.
0
20
40
60
80
100
Doğruluk
HSV
Öklid
Mahalanobis
Şekil 9: Geliştirilen görüntü işleme yöntemlerinin başarı
oranları
HSV uzayında yapılan uygulamada %90, Öklid uzaklık
metodu kullanılarak yapılan uygulama %80 ve Mahalanobis
uzaklık metodu kullanılarak yapılan uygulamada %97’lik
başarı oranları elde edilmiştir. Ayrıca zeytinler siyah zeytin,
koyu yeşil zeytin, yeşil zeytin ve açık yeşil zeytin olarak
sınıflara ayrılmıştır. Birçok örnek zeytin bu sınıflandırma
işlemi için kullanılmıştır. Üç farklı algoritma için farklı
sınıflardaki zeytinlerin belirlenmesi uygulaması ayrı ayrı
incelenmiştir. Aşağıdaki Şekil 10’da her metot için zeytin
çeşitlerinin bulunma yüzde grafiği verilmiştir.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
463
0
100
HSV Öklid Mahalanobis
Yesil ZeytinKoyu Yeşil ZeytinAçık Yeşil ZeytinSiyah Zeytin
Şekil 10: Geliştirilen görüntü işleme yöntemlerinin
sınıflandırma işlemi için başarı oranları
Son olarak uygulanan görüntü işleme algoritmalarının
süreleri incelenmiştir. Endüstriyel uygulamalarda zaman çok
önemli bir özelliktir. Bu çalışma kapsamında gerçekleştirilen
sistem, endüstriyel bir ürüne dönüştürülme potansiyeline sahip
olduğu için zaman aralıkları da incelenmiştir. Geliştirilen
görüntü işleme uygulamalarının çalışma zamanı Tablo 2’ de
gösterilmiştir.
Tablo 2: Kullanılan üç farklı yöntemin işlem yükünün
karşılaştırılması
HSV
METODU
ÖKLİD
METODU
MAHALANOBİS
METODU
ZAMAN
(sn)
0,7986
1,0406
0,9234
Geliştirilen üç farklı görüntü işleme yöntemi arasından en
başarılı olarak Mahalanobis uzaklık metodu olduğu
gözükmektedir. Mahalanobis yönteminde zeytinlerin standart
sapma değerlerinin hesaba katılmasının başarı oranındaki
etkisi büyüktür. İkinci olarak HSV uzayında yapılan uygulama
başarılı olduğu gözükmektedir. Öklid uzaklık metodunda
başarı oranı düşük çıkmasına rağmen yapılan uygulamada
sınıflandırma işleminde kullanılabileceği görülmüştür.
Teşekkür
Bu çalışma, Kocaeli Üniversitesi Mekatronik Mühendisliği
Bölümü Sensör Laboratuvarında yapılmıştır. Ayrıca bu
çalışma Kocaeli Üniversitesi Rektörlüğü Bilimsel Araştırma
Projeleri BAP Koordinasyon Birimi Koordinatörlüğü
tarafından 2013-014 no’lu proje olarak desteklenmiştir.
Kaynakça
[1] Yanru Zhao, Dongsheng Wang Dongping Qian, Machine
Vision based Image Analysis for the Estimation of Pear
External Quality, Second International Conference on
Intelligent Computation Technology and Automation,
071001, P. R. China, 2009.
[2] Lin Wenmei, Liu Yuzhen, Aquaculture Monitoring
System, International Forum on Information Technology
and Applications, 125105, China, 2010.
[3] Hufschmied By P., Fankhauser T. and Pugovkin D.,
Automatic stress-free sorting of sturgeons inside culture
tanks using image processing, Journal of Appl. Ichthyol.,
2011, 27, 622–626.
[4] Poursaberia A., Bahra C., Pluka A., Van Nuffel A.,
Berckmansa D., Real-time automatic lameness detection
based on back posture extraction indairy cattle: Shape
analysis of cow with image processing techniques,
Computers and Electronics in Agriculture, 2010, 74,
110–119.
[5] Nur Badariah Ahmad Mustafa, Nurashikin Ahmad Fuad,
Syed Khaleel Ahmed, Aidil AzwinZainul Abidin,
Zaipatimah Ali, Wong Bing Yit, and Zainul Abidin,
Determination of Size and Ripeness of a Banana, IEEE,
2008, 06-08.
[6] Görüntü İşleme Teknikleri Kullaılarak Meyve Tasnifi,
Güray Tonguç, Yüksek Lisans Tezi, Süleyman Demirel
Üniversitesi Fen Bilimleri Enstitüsü, Isparta, 2004.
[7] Liwei Wang, Yan Zhang, Jufu Feng, On the Euclidean
Distance of İmages, School of Electronics Engineering
and Computer Sciences, Peking Univesity Beijing,
100871, China, 2008.
[8] Jeh-Nan Pan, Jianbiao Pan, Chun-Yi Lee, Finding and
optimising the key factors for the multiple-response
manufacturing process, International Journal of
Production Research, Vol. 47, No.9, 2009, 2327-2344.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
464
OPC KullanılarakGerçek Zamanlı Haberleşen Matlab ve PLC Kontrollü Sistem
Zeynep Tekinalp1, Sıtkı Öztürk
2, Melih Kuncan
3
1,2
Elektronik ve Haberleşme Mühendisliği Bölümü
Kocaeli Üniversitesi, İzmit/Kocaeli zeynep.tekinalp@gmail.com, sozturk@kocaeli.edu.tr
3Mekatronik Mühendisliği Bölümü
Kocaeli Üniversitesi, İzmit/Kocaeli melih.kuncan@kocaeli.edu.tr
Özetçe
Bu çalışmada yaygın olarak kullanılan OPC
(OLEforProcessControl) teknolojisinin, bir görüntü işleme
uygulaması üzerinde çalışması gerçekleştirilmiştir. Görüntü
işleme uygulamasında, nesneleri renklerine göre ayırma
temeline dayanmaktadır. Endüstriyel sistemlerde
gerçekleştirilen görsel denetleme sistemi uygulamalarına bir
örnek olarak, bu çalışmada PLC (Programmable Logic
Controller) kontrollü deney düzeneği içerisindeki zeytinleri
renklerine göre ayırma işlemi, gerçek zamanlı olarak
gerçekleştirilmiştir. Çalışmada kullanılan deney düzeneği
Siemens S7-1200 PLC ile kontrol edilmektedir. Görüntü
işleme kısmı Matlab ortamında gerçekleştirilmiştir. Görüntü işleme uygulaması için bir web kamerası kullanılmıştır.
1. Giriş
Endüstriyel süreçlerin kontrolü, genellikle PLC olarak
isimlendirilen endüstriyel amaçlı küçük bilgisayarlar
kullanılarak gerçekleştirilmektedir. PLC’ler karmaşık
sistemlerin kontrolü için düşük maliyetli çözüm sunmakla
birlikte, çabuk ve kolayca diğer sistemlere uygulanabilirlik,
elektriksel gürültülere, titreşim ve darbelere karşı dayanıklılık
gibi avantajlar sağlamaktadır [1]. Otomasyon sistemleri
kullanımının yaygınlaşması ile birlikte, PLC’lerden talep
edilen iş yükü tek bir işlemci tarafından yerine
getirilemeyecek kadar ağırlaşmıştır. Çoğu durumda, sürecin
anlam bütünlüğü ve gereklilikleri, birden fazla PLC
kullanılarak üstesinden gelinmektedir.
Bu çalışmada yeşil ve siyah zeytinleri birbirinden ayırmak
için tasarlanan deney düzeneğinin kontrolü Siemens S7-1200
PLC ile yapılmaktadır. S7-1200, S7-200’ün geliştirilmiş bir
modelidir. Donanım ve yazılım olarak S7-300’e daha çok
benzediği için mikro, orta ve üst segmentte birbiriyle daha
uyumlu cihazlar kullanılıyor olacaktır. Dolayısıyla tüm PLC
serisinin entegrasyonu konusunda da bir adım denebilir. En
alttaki PLC ile en üstteki PLC benzer mantıkla
programlanıyor olacaktır. Bu da kullanıcılar açısından önemli
bir özelliktir. S7-1200’ün sunduğu birçok avantaj vardır. En
göze çarpan özelliklerinden birisi üzerinde profinet (ethernet)
portunun olmasıdır. Bunun sayesinde Profinet portundan,
PLC’ler kendi arasında Profinet üzerinden
haberleştirilmektedir. Ayrıca PLC, operatör paneli ya da
SCADA (Supervisory Control and Data Acquisition) yazılımı
ile bu port üzerinden haberleştirilmektedir. Diğer firmaların
ürünleriyle haberleşmek için S7-1200’ün üzerinde standart
olarak bulunan Profinet portuna ilave olarak RS485 veya
RS232 genişleme modülleri kullanılmaktadır. S7-1200 CPU
(CentralProcessingUnit), S7-200 CPU’suna göre daha
hızlıdır. Dolayısı ile programların çevrim süresi (cycle time)
çok daha kısa olacaktır. Hafıza alanı açısından, S7-1200’ün
hafızası S7-300’e benzer yapıdadır. S7-1200’ün maksimum
giriş-çıkış sayısı 1024 iken, bu S7-200’de 128 olmaktadır.
S7-1200, S7-200’e göre daha az yer kaplamaktadır [2,3]. Bu
yüzden hem CPU’lar hem de genişletme modülleri oldukça
kompakt yapıdadır. CPU ve modüller üzerindeki tüm
terminaller kolayca sökülüp takılabilecek yapıdadır. Bu
sayede, CPU’da ve genişleme modüllerinde herhangi bir
arıza olduğunda konnektörler üzerindeki bağlantıları
sökmeye gerek kalmadan ,hızlı bir şekilde değiştirme imkanı sağlamaktadır [4].
2. OPC (OLE forProcess Control)
Endüstriyel otomasyon alanında yapılan çalışmalarda farklı
markalara sahip cihazlardan veri aktarılması ya da cihazların
birbiriyle haberleşmesi çoğu zaman sorun oluşturmaktadır.
Cihazlar arası haberleşme, genel olarak üretici firma
tarafından geliştirilen özel bir ağı ile sağlanmaktadır. Her
üretici kendi geliştirdiği özel protokoller ve bu protokolleri
anlayabilecek özel donanımlar geliştirerek kendi ürünleri
arasında veri alış verişini sağlamaktadır [5]. Endüstriyel
otomasyonda kullanılan haberleşme sistemlerinin ve
protokollerinin markadan markaya farklılık göstermesi, bu
alanda bir standartlaşmaya gitme ihtiyacı doğurmuştur. Farklı
üreticiler tarafından geliştirilen donanım ve yazılımların
sorunsuz bir şekilde bir arada çalışmasını sağlamak için,
sunucu-istemci mimarisi temel alınarak OPC (Süreç
Yönetiminde Nesnelerin Bağdaştırılması ve
İlişkilendirilmesi) teknolojisi geliştirilmiştir [6]. OPC,
endüstriyel otomasyon alanında birlikte çalışabilirlik (inter
operability) sorununu çözmek amacıyla oluşturulmuş bir
standarttır. Diğer bir ifadeyle, birbirinden faklı markalardaki
kontrol sistemlerinin haberleşmesini sağlamaktadır.
İstemciye, kullanılan cihazdan bağımsız olarak, standart bir arayüz sunmaktadır [7].
OPC, Microsoft’un OLE/COM (Object
Linking&Embedding/Component Object Model) standardına
dayanmaktadır. OLE/COM, Microsoft’un farklı uygulamalar
arası bütünleşmeyi hedefleyen nesne tabanlı bir
teknolojisidir. OPC ise OLE tabanlı bir haberleşme
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
465
standardıdır ve farklı otomasyon seviyeleri arasında hızlı ve
güvenilir bir bağlantı sağlamaktadır. OLE teknolojisinin
kullanımıyla OPC, ister yönetim katındaki bir uygulama
olsun isterse süreç denetiminde kullanılan bir uygulama
olsun, farklı uygulamalar arası veri alış verişinin, tanımladığı
yöntem ve nesneler ile standart bir şekilde gerçekleşmesini
sağlamaktadır [8]. Örneğin bir PLC, Distributed Control
Systems (DCS) ya da diğer türde bir kontrolörün
haberleşmesi, cihaz kontrolü ve veri izleme için arayüz işlevi
gören SCADA yazılımların da okunması ve kontrolöre
verinin yazılması için kontrolörü SCADA’ya tanıtan bir
sürücü gereklidir. Her kontrolör üreticisinin haberleşme
protokolü farklı olduğundan her SCADA yazılımına özel, her
bir kontrolör markasının sürücüsü tasarlanmalıdır. Bu ise
emek, zaman ve maddi külfet açısından hem çok kaynak
tüketir hem de uygulama safhasında birçok zorluk
çıkarmaktadır. Ürüne özel sürücü yazılımı geliştirmeye
dayanan bu tür çözümler şu sorunları ortaya çıkarmıştır:
Aynı çalışmanın defalarca tekrarı: Her yazılım
geliştirici kendi yazılımı için, aynı cihazla
haberleşmek için bir sürücü yazılımı olmak
zorundadır.
Sürücüler arası uyumsuzluk: Son kullanıcı, bir
programda sahip olduğu bir özelliği, aynı
donanımla haberleşen diğer bir programda
bulamayabilir. Çünkü sürücü yazılımı geliştirenler,
kendi programlarıyla direkt olarak ilgili olmayan
bazı donanım özelliklerini desteklemeyebilirler.
Gelecekte donanımda olacak değişikliklere destek:
Geliştirilen sürücü yazılımları, donanım
firmalarından bağımsız olarak üretildikleri için,
aynı markanın yeni nesil bir ürünü olarak önceki
donanım için yazılmış sürücüyle haberleşmeyebilir.
Erişim problemi: Farklı iki uygulama farklı
sürücüler kullandıklarından dolayı çoğu zaman aynı anda aynı cihaza erişemezler.
OPC’den önce her uygulama yazılımına özel
sürücü geliştirilmesi ve bunun yol açtığı sorunlar ele
alınmıştır. Şekil 1’den görüldüğü gibi her bir cihazın diğer bir
cihazla haberleşmesi için o cihaza özgü sürücü yazılımı
gerekmektedir. Bunun yerine tüm kontrolörlerin standart bir
haberleşme uygulamasıyla veri alışverişi yapması daha
uygundur.
Şekil 1 : OPC’den önce donanım-uygulama arası yapı [9]
OPC tanımladığı standart ara yüzle, donanım üreticileri ve
yazılım sağlayıcıları arasına belirgin bir çizgi çizmiştir. Artık
donanım üreticileri sadece tek bir sürücü geliştirerek (bu
OPC sunucu yazılımıdır), piyasada bulunan tüm OPC istemci
özelliğine sahip yazılımlarla haberleşebilme özelliğine
kavuşmuş olmaktadır. Böylece kaynak ve zamandan tasarruf ve uygulamada birçok kolaylık sağlanmıştır.
Günümüzde OPC ile birçok farklı sürücü
yazılımlarına sahip, donanımların haberleşmesi
sağlanmaktadır. Şekil 2 de farklı donanım ve uygulamalar
arasında OPC kullanımına örnek bir yapı gösterilmektedir.
Donanım ile sürücü yazılımı arasındaki istenilen ara yüzü
sağlayan OPC, donanımda meydana gelen değişimlerin
yazılım üreticisini etkilemesini, aynı şekilde sürücü yazılımı
kısmında gerçekleşen yeniliklerin de donanım üreticisi için
bir uyum sorunu oluşturmasını önlemektedir [9].
Şekil 2 : OPC kullanımı ile donanım–uygulama arası yapı [9]
OPC sunucunun en yaygın kullanıldığı yer olarak,
endüstriyel ürün olan PLC’lerle yapılan HMI/SCADA
(Human Machine Interface/SCADA) uygulamaları öne
çıkmaktadır. Bu sistemler kompleks projelerde farklı
PLC’lerin bir arada çalışmasını sağlamaktadır. Bir tane OPC
Sunucu (server) kullanarak işletme içinde aynı ağda, aynı
tipteki birden fazla PLC ve uygun başka bir sürücü
kullanarak da haberleşme imkânı sağlamaktadır. OPC’de
kullanılan iletişim sürücüleri RS232, RS485, RS422,
Ethernet’dir. OPC standardı bunun dışında rüzgâr
türbinlerinde, enerjinin izlenmesinde ve yönetilmesinde,
otomobil üretim fabrikalarında, beton ve çimento
fabrikalarında, bina otomasyonunda, tekstil sektöründe,
petrol ve gaz sektöründe, kâğıt fabrikalarında, özetle imalatın
olduğu her yerde kullanılabilmektedir [7,10].
Günümüzde üretim hatlarındaki hız ve üretim
sayılarındaki artış; hata giderme, kalite güvencesi ve maliyet
konularının gittikçe daha fazla gündeme gelmesine; bu da
görsel denetim sistemi ihtiyaçlarının hızla artmasına sebep
olmaktadır. Endüstriyel sistemlerde görüntü işleme teknikleri
hemen her sektörde kullanılmaktadır. Otomotiv endüstrisinde
araç parçalarındaki hataları bulmak, ilaç ve gıda
endüstrisinde paketleme, etiket ve kapakların kontrolünde,
beyaz eşya endüstrisinde ürün hatalarını, boyama hatalarını
bulmak gibi çok farklı endüstriler görsel denetim sistemlerine
de ihtiyaç duymaktadır.
Görüntü işleme; video kamera, tarayıcı gibi görüntü
yakalayıcı cihazlarla alınıp sayısal bir resim haline
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
466
dönüştürülen görüntülerin, geliştirilen yöntemlerle işlenip
analiz edilmesi sonucu elde edilen bilgilerin yorumlanması
temeline dayanmaktadır. Endüstriyel kalite/üretim
kontrolleri, plaka okuma sistemleri, yüz tanıma uygulamaları,
parmak izi tanıma uygulamaları, iris tanıma uygulamaları,
askeri uygulamalarda akıllı silah üretimi gibi, günümüzde görüntü işlemenin kullanıldığı alanlara örnekler verilebilir.
Bu çalışmada endüstriyel sistemlerde kullanılan
görsel denetleme sistemi uygulamasına bir örnek olup, deney
düzeneği içerisindeki zeytinleri renklerine göre ayırma işlemi
gerçekleştirilmiştir. Bu çalışmanın amacı, endüstriyel tarımda
kullanılabilecek bir uygulamanın akademik alt yapısını
gerçekleştirmektir. PLC’den gelen görüntü işleme
uygulamasını başlat isteği, OPC üzerinden Matlab‘a
iletilmektedir. PC tabanlı bir kamera ile alınan görüntü
üzerinde, görüntü işleme algoritması uygulanmıştır. Elde
edilen renk bilgisi sonucunda, yeşil zeytinlerin konum bilgisi,
Matlab OPC istemci yazılımı üzerinden OPC sunucuya
iletilmektedir. OPC sunucudan da, sistem kontrolünü
sağlayan PLC’ ye gönderilmektedir. Bu konum bilgisine
dayanarak, PLC, deney düzeneğinde yeşil zeytinlerin
bulunduğu valfleri aktif etmektedir. Bu yapı blok olarak Şekil
3’de verilmiştir.
Şekil 3 : Sistem akış şeması
3. Zeytinlerin Renklerinin Tespiti
Renk uzayları renkleri tanımlamak için kullanılan
matematiksel modellerdir. Renk uzayları, bütün renkleri
temsil edecek şekilde üç boyutlu olarak tasarlanır. Çünkü
Renkmetri biliminin temelini oluşturan Grassmann’ın birinci
kanununa göre bir rengi belirlemek için birbirinden bağımsız
üç değişkene gerek vardır. Renklerin renk uzayındaki yerleri,
bu değişkenlere göre belirlenmektedir. Her renk uzayının
kendine özgü biçimde renk oluşturma için bazı standartları
vardır. Renk uzayları oluşturulurken bir başka renk uzayına
doğrusal ya da doğrusal olmayan yöntemlerle dönüşüm
yapılabilmektedir [11]. Standart bazı renk uzaylarına örnek
olarak RGB (Red, Green, Blue), CMY (Cyan, Magenta,
Yellow), HSV (Hue, Saturation, Value), HSL (Hue,
Saturation, Lightness), CIE renk uzayları verilebilir. Renkli
imgeler üzerinde çalışırken en sık kullanılan RGB renk
uzayıdır. Işığı temel alarak, doğadaki tüm renklerin kodları
bu üç temel renge dayalı olarak belirtilir. Her bir renk %100
oranında karıştırıldığında beyaz, %0 oranında
karıştırıldığında ise siyah elde edilir. Bu uzayda, ana renkler
olan kırmızı, mavi ve yeşil belirtilmediği için, bu ana
renklerin tanımı değiştikçe, tüm renkler değişir [12]. HSV
veya HSB (Hue Saturation Brightness) renk uzayı, RGB renk
uzayından doğrusal olmayan bir dönüşüm ile elde edilir. HSL
olarak da karşımıza çıkabilir. HSV (Hue Saturation Value) ve
HSB (Hue Saturation Brightness) aynı uzayı tanımlasalar da
HSL (Hue Saturation Lightness) farklı bir renk uzayıdır.
Ayrıca HSV renk uzayı kullanılan sensöre bağımlı olarak
renk değeri üretir. Yani, kullanılan cihaza göre renkler
farklılık gösterebilir. HSV renk uzayı, renkleri sırasıyla renk
özü, doygunluk ve parlaklık olarak tanımlar. Renk özü,
rengin baskın dalga uzunluğunu belirler. Doygunluk, rengin
"canlılığını" belirler. Yüksek doygunluk canlı renklere neden
olurken, düşük doygunluk değeri rengin gri tonlarına
yaklaşmasına neden olur. Parlaklık ise rengin aydınlığını yani
içindeki beyaz oranını belirler. HSV renk uzayı, RGB
uzayına göre insan görü düzeneğine daha yakın bir yapı oluşturmaktadır [13].
Bu çalışmada deney düzeneği içerisindeki yeşil
zeytinleri algılamak için HSV renk uzayından
yararlanılmıştır. Şekil 3 ve Şekil 4’deki grafik gösteriminden
de anlaşılabileceği gibi, parlaklığı değişse bile renkleri renk
özü (Hue) ve doygunluk (Saturation) değerleri ile belirlemek
mümkündür. Bu nedenle, renk temelli alan belirleme
işlemlerinde, RGB renk uzayı yerine HSV renk uzayı tercih edilmektedir.
Şekil 3: Konik biçimli HSV renk uzayı
Şekil 4: Konik ve silindirik biçimli HSV renk uzayı
Bu çalışma kapsamında gerçekleştirilen görüntü
işleme algoritması, Matlab ortamında gerçekleştirilmiştir.
Geliştirilen görüntü işleme uygulamasında yeşil zeytinleri
belirleme işlemi yapılmıştır. Deney düzeneğini tepeden
görecek şekilde yerleştirilen ve sabitlenen web kameradan
alınan gerçek zamanlı görüntü, USB bağlantısı ile bilgisayara
aktarılmaktadır. Matlab ortamında geliştirilen yazılım ile
yeşil renkli zeytinlerin konum tespiti gerçekleştirilmektedir.
Video görüntüsünden alınan çerçeve (frame)
üzerinde öncelikle, maskeleme yapılarak çalışma alanı
belirlenmektedir, Şekil 6. Alınan görüntü RGB formatında
olduğundan, HSV renk uzayına dönüştürülmüştür.
OPC İstemci
PLC (S7-1200)
OPC Sunucu
Renk Ayırma Uygulaması (Matlab)
KAMERA
Deney Düzeneği
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
467
Ayarlanabilir bir eşik değerden geçirilerek, görüntüde yeşile
yakın değerlere sahip bölgeler tespit edilmiş olur.
Eşiklendirme sonucu elde edilen görüntü Şekil 7’de
gösterilmektedir. Işıklılık, parlaklık gibi nedenlerden ötürü
oluşan gürültü etkilerini gidermek için morfolojik görüntü
işleme algoritmaları kullanılmıştır. Matematiksel morfoloji,
temel küme işlemlerine dayanan, imgedeki sınırlar, iskelet
gibi yapıların tanımlanması ve çıkartılması, gürültü giderimi,
bölütleme gibi uygulamalar için gereklidir. İmge işlemede
genellikle morfolojik süzgeçleme, inceltme (thinning),
budama (pruning) gibi ön/son işlem olarak da sıkça
kullanılmaktadır. Gri tonlu imgeler üzerinde
uygulanabileceği gibi, genellikle ikili imgeler üzerinde
yapılan işlemlerdir. Matematiksel morfolojide kullanılan
temel işlemler; aşındırma (erosion), yayma (dilation), açma
(opening) ve kapama (closing) işlemleridir. Aşındırma işlemi,
görüntünün sınır bölgelerinin aşındırılmasında
kullanılmaktadır. Yayma işlemi ise görüntüyü kenarlarından
genişletmektedir. Aşındırmaişlemi, birbirine ince bir gürültü
ile bağlanmış iki veya daha fazla nesneyi birbirinden ayırmak
için kullanılırken, yayma işlemi ise aynı nesnenin bir gürültü
ile ince bir şekilde bölünerek ayrı iki nesne gibi görünmesini
engellemek için kullanılır [14]. Özellikle plaka tanıma, harf
tanıma, parmak izi tanıma gibi işlemlerde kullanılarak
gürültülerin etkisi azaltılır. Bu çalışma ilk aşamada aşındırma
işlemi uygulanarak gerçekleştirilmiştir. Fakat oluşan
gürültülerin hepsinin giderilmesinde etkili bir sonuç
alınamadığı için, aşındırma işlemi yerine morfolojik açma
işlemi uygulanmıştır. Açma işlemi, görüntü üzerinde
aşındırma ve yayma işlemlerinin ardışıl olarak uygulanması
temeline dayanmaktadır. Açma işlemi ile ışıklılık etkisinden
ötürü oluşan gürültüler tamamen giderilebilmiştir. Bu
işlemler sonucunda yeşil zeytinler tespit edilmiş olmaktadır.
Şekil 5 :Kameradan alınan görüntü
Şekil 6 : Maskeleme uygulanan görümtü
Şekil 7 : Eşiklendirme uygulanmış görüntü
Şekil 8 : Tespit edilen yeşil zeytinler
4. OPC ile Haberleşme
OPC sunucu (server); bir ya da daha fazla OPC özelliğiyle
uyumlu çalışmak amacıyla tasarlanmış bir yazılım
uygulamasıdır. OPC sunucular cihazların yerel haberleşme
protokolleriyle veya arayüzleriyle OPC ortamını bağlayan
tercümanlar gibi görev yapmaktadır. OPC sunucunun görevi,
OPC istemcinin komutlarına göre cihazdan bilgi almak veya
cihaza bilgi göndermektir. OPC istemci ise; herhangi bir
uyumlu OPC sunucuyla haberleşmek için bir uygulama
tarafından kullanılan yazılımlardır. OPC istemciler, OPC
sunucularla haberleşmeyi başlatma ve kontrol etme işlerini
yürüttükleri için bir veri alıcısı olarak görev yapmaktadır.
Şekil 9' da OPC Server blok diyagramı görülmektedir.
Şekil 9 : OPC server blok diyagramı
OPC standartlarına göre tanımlanan OPC sunucu,
Şekil 10’da gösterildiği gibi üç nesneden oluşur. Bunlar;
OPCServer, OPCGroup ve OPCItem nesneleridir. OPCItem
nesnesi, veri okuma ve yazma için OPCServer tarafından
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
468
tanımlanan en küçük mantık birimidir. OPCServer ve
yürütülen sürecin veri kaynağı arasında bağlantı
sağlamaktadır. Bu demek oluyor ki, her OPCItem nesnesi
istemci cihazının bir sinyal değişkeni ile
ilişkilendirilmektedir. OPCItem nesnesi doğrudan
kullanılamaz. OPCItem nesnesine grup nesnesi aracılığıyla
erişebilmektedir [6].
Şekil 10 : OPC nesnelerinin hiyerarşik yapısı
OPC DA (Data Access) standardı, sunucu ve
istemcinin birbirleriyle etkileşimi için ortak bir mekanizma
sağlamaktadır. Matlab – OPC Toolbox, OPC DA istemci
uygulamasıdır ve OPC DA uyumlu herhangi bir sunucuya
bağlanabilir. Bu sayede Matlab ortamında OPC sunucusuna
gidilerek, doğrudan OPC verisi okunabilir veya yazılabilir
[15]. Bu çalışmada uygulanacak olan, Matlab ile PLC
arasında OPC üzerinden kurulacak olan bağlantı Şekil 11’ de
şematik olarak gösterilmektedir.
Şekil 11 : Matlab ve PLC arasında OPC üzerinden kurulan
bağlantı
Matlab’da oluşturulan OPC istemci programında ilk
olarak OPCServer nesnesi oluşturulur. Bu sayede sunucunun
isim alanı ve sunucuda depolanan her bir OPCItem hakkında
bilgi sahibi olunur. Daha sonra OPCGroup nesnesi
oluşturularak bu nesneye eklenecek olan OPCItem’lar için bir
gruplandırma yapılmış olur. Böylelikle OPC Toolbox
üzerinden tüm istemci, group ve item nesnelerinin kontrol ve
yapılandırmaları (konfigürasyonları) sağlanır.
S7-1200 CPU’ da bulunan I, O, DB, M gibi hafıza
alanlarına OPC sunucu üzerinden erişimi sağlamak için
Simatic NET içerisindeki OPC Scout yazılımı
kullanılmaktadır. OPC Scout programında PLC ile
haberleşme “OPC.SimaticNET” üzerinden yapılır. Burada
oluşturulan grup nesnesi altında PLC bilgileri listelenir.
Oluşturulan grup nesnesi içerisinde tanımlanan item nesneleri
ile PLC’de bulunan hafıza alanları OPC sunucuya tanıtılır.
Gerçekleştirilen bu işlemde, eğer PLC ile haberleşme
sağlanmışsa, tanıtılan her bir item nesnesinin kalitesi Şekil 12’ de gösterildiği gibi “Good” durumunda olmalıdır.
Şekil 12: PLC ile haberleşmek için tanımlanan item nesneleri
Şekil 13 : Sistem akış diyagramı
5. Sistemin Çalışma Prensibi
Şekil 13’ de, bu çalışmada gerçekleştirilen sistemin akış
diyagramı verilmiştir. Yapılan çalışmada, sisteme başla
komutunun gelmesi ile uygulama sıralı olarak işlemleri
gerçekleştirmektedir. İlk olarak kameradan bir görüntü
alınarak, nesnelerin renklerine göre ayrıştırılması işlemi
başlamaktadır. Geliştirilen görüntü işleme algoritması ile
nesnelerin renkleri belirlenmektedir. Renkleri belirlenen
nesnelerin yerleri PLC’ye bilgi olarak gönderilmektedir. Bilgi
BİTİR
BAŞLA
H
Nesnenin Görüntüsünü Al
Görüntü İşleme Algoritmasını
Çalıştır
Renkli Nesnelerin Yerlerinin
PLC’ye Gönderilmesi
Renkli Bilgisine Göre PLC
Çıkışlarının Aktif Edilmesi
E
PLC’nin çıkışları
aktif edildi mı?
H
E
Nesne ayrıştırılacak
mı?
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
469
word formatında tamsayı olarak yazılmaktadır. Word format
yapısı denklem 1’de verilmiştir.
∑
(1)
Denklem 1’de k, nesnenin konum bilgisinin word adresi ve
, k. nesnenin rengi bilgisi olup, nesne renk eşik seviyesini
geçerse aksi durumda ise değerini alır.
Örneğin alınan görüntüde 2. ve 6. konumlardaki nesnelerin
renk bilgisi eşik seviyesini geçmiş ise olarak
alınacaktır. Matlab’dan PLC’ye gönderilen word bilgisi
Denklem 1’in sonucu,
∑
olarak Matlab’dan PLC’ye gönderilmektedir. PLC’ye gelen
word bilgisi 0. bitten başlamak üzere bit, bit test edilerek 1
değerine sahip olan bitlere karşılık gelen çıkışlar aktif
edilmektedir. Aktif edilen çıkışlara göre nesneler renklerine
göre ayrıştırılmış olmaktadır. Ayrıştırma işlemi bittikten
sonra sistem tekrar başlangıç konumuna gelerek başla
komutunu beklemektedir.
Yapılan çalışmada, Matlab ortamında geliştirilen
görüntü işleme algoritmasıyla PLC haberleşmesi OPC
aracılığıyla gerçekleştirilmiştir.
6. Sonuçlar
Bu çalışmada, geliştirilen görüntü işleme algoritması
sonucunda elde edilen verilerin OPC Server üzerinden
Siemens S7-1200 PLC’ye gönderilmesi ve deney
düzeneğinin kontrolü gerçek zamanlı olarak sağlanmıştır.
Sistemde kullanılan web kameranın renkli nesnelerin ayırt
edilmesi işleminde başarılı bir şekilde cevap verdiği
belirlenmiştir. Geliştirilen görüntü işleme algoritmasının 5, 6
sn de nesnelerin renklerine göre ayırt edildiği
gözlemlenmiştir. Bu süreyi azaltmak için yüksek özellikteki
endüstriyel bir kamera kullanılmasının daha başarılı sonuçlar
vereceği düşünülmektedir. Bu nedenle, endüstriyel
uygulamalar için yüksek çözünürlükte kameralar ve farklı
lensler kullanılarak, uygulamalara göre daha başarılı ve daha
hızlı cevaplar alınabileceği belirlenmiştir. Geliştirilen görüntü
işleme uygulamasının farklı renk uzaylarında yapılarak başarı
oranlarının karşılaştırılabileceği belirlenmiştir. Ayrıca birçok
endüstri uygulamalarında olmazsa olmaz olan PLC ile
görüntü işleme uygulamasının senkron bir şekilde çalışması
gerçekleştirilmiştir.
Kaynakça
[1] M. Mrosko, E. Miklovičová, “Real-time implementation
of redictive control using programmable logic
controllers”, 2012.
[2] ‘S7-1200 Programmable controller’, System Manual,
04/2012, A5E02486680-06.
[3] ‘S7-200 Programmablecontroller’, System Manual,
C79000-G7076-C230-02.
[4] http://www.bilesim.com.tr/yazdir.php?t=3&id=5040&sn
=0.
[5] Y. Ünlü, “Süreç Kontrolunda Nesnelerin Bağlaşması Ve
İlişkilendirilmesi (Opc) Standardı Ve Uygulaması”,
İstanbul Teknik Üniversitesi Fen Bilimleri Enstitüsü,
Yüksek Lisans Tezi, 2007.
[6] Z. Lieping, Z. Aiqun, Z. Yunsheng, “On Remote Real-
Time Communication between MATLAB and PLC
Based on OPC Technology”, China, 2007.
[7] http://seyfettinvadi.blogcu.com/opc-server-
nedir/10649621.
[8] Frank Iwanitz, JürgenLange, “OPC Fundementals,
Implementationand Application”, Hüthig GmbH&Co.,
Heidelberg, Germany, 2006.
[9] S. Büyük, S. Gök, “Proses Otomasyonunda OPC
Teknolojisi”Mühendis ve Makina Dergisi, Cilt 53,Say1
635 ARALIK 2012, sayfa 13-15.
[10] http://www.aspltd.net/opcturkiye/pdf/asp_opc_makale.p
df.
[11] İ. Yılmaz, “Renk Sistemleri, Renk Uzayları ve
Dönüşümler”, KONYA, 2002, Selçuk Üniversitesi
Jeodezi ve Fotogrametri Mühendisliği 30. Yõl
Sempozyumu,16-18 Ekim 2002, Konya, Bildiri Kitabı
sayfa 340-350.
[12] http://tr.wikipedia.org/wiki/RGB_renk_uzay%C4%B1.
[13] http://tr.wikipedia.org/wiki/HSV_renk_uzay%C4%B1.
[14] R.C. Gonzalez, R.E. Woods, S.L. Eddins, Digital Image
Processing using Matlab, PrenticeHall, USA ,2004. [15] The Matworks, “MATLAB OPC Toolbox User’s
Guide”.
Otomatik Kontrol Ulusal Toplantısı, TOK2013, 26-28 Eylül 2013, Malatya
470
Recommended