İnternet erİŞİmlİ deney modÜllerİnİn usb tabanli …tez.sdu.edu.tr/tezler/tf02239.pdf ·...
TRANSCRIPT
T.C.
SÜLEYMAN DEMİREL ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ
İNTERNET ERİŞİMLİ DENEY MODÜLLERİNİN USB TABANLI KONTROLÜ
Osman ÇİMENLİ
Danışman Doç. Dr. Tuncay AYDOĞAN
YÜKSEK LİSANS TEZİ ELEKTRONİK-BİLGİSAYAR EĞİTİMİ ANABİLİM DALI
ISPARTA - 2013
© 2013 [Osman ÇİMENLİ]
TAAHHÜTNAME Bu tezin akademik ve etik kurallara uygun olarak yazıldığını ve kullanılan tüm literatür bilgilerinin referans gösterilerek tezde yer aldığını beyan ederim.
Osman ÇİMENLİ
i
İÇİNDEKİLER
Sayfa İÇİNDEKİLER ......................................................................................................................... i ÖZET ......................................................................................................................................... ii ABSTRACT .............................................................................................................................. iii TEŞEKKÜR .............................................................................................................................. iv ŞEKİLLER DİZİNİ ................................................................................................................. v ÇİZELGELER DİZİNİ ............................................................................................................ vi SİMGELER VE KISALTMALAR DİZİNİ .......................................................................... vii 1. GİRİŞ..................................................................................................................................... 1 2. KAYNAK ÖZETLERİ ........................................................................................................ 3 3. WEB TABANLI UZAKTAN EĞİTİM SİSTEMİ ......................................................... 13
3.1. Uzaktan Eğitim ........................................................................................................ 13 3.1.1. Uzaktan eğitimin tanımı ve tarihçesi .................................................... 13 3.1.2. Web tabanlı uzaktan eğitimin tanımı, yararları ve sınırlılıkları . 16 3.1.3. Uzaktan erişimli laboratuarlar ................................................................ 20
3.2. USB Teknolojisi ....................................................................................................... 21 3.2.1. USB iletişim sistemi ve katmanları ........................................................ 22 3.2.2. USB protokolü ve iletişim modeli ........................................................... 23 3.2.3. USB transfer tipleri ve paketleme .......................................................... 25 3.2.4. USB hublar....................................................................................................... 31
3.3. Geliştirilen Sistemin Mimari Yapısı ................................................................ 33 3.4. Sistemin Donanım ve Yazılım Bileşenleri ..................................................... 34
3.4.1. Donanım bileşenleri .................................................................................... 34 3.4.1.1. Phidget 1019 deney modülü çoklayıcı .................................. 34 3.4.1.2. Phidget 1018 deney modülü ..................................................... 39
3.4.2. Yazılım bileşenleri ........................................................................................ 40 3.4.2.1. Veritabanı araçları......................................................................... 40 3.4.2.2. Adobe flash builder (Flex) .......................................................... 43 3.4.2.3. Adobe flash media server ........................................................... 45 3.4.2.4. Adobe flash media encoder ....................................................... 46
4. ARAŞTIRMA BULGULARI ............................................................................................. 47 4.1. Sistemin Başlatılması İçin Yapılması Gerekenler ...................................... 47 4.2. Kullanıcı ve Yönetici Arayüzlerinin Tasarımı ve Özellikleri ................. 49 4.3. Tak&Çalıştır Özelliğini Aktif Etme Çalışmalarının Sonuçları ................ 55 4.4. USB Sistemi Çoklayabilmek İçin Yapılan Çalışma Sonuçları ................. 57
5. TARTIŞMA VE SONUÇLAR ........................................................................................... 61 KAYNAKLAR .......................................................................................................................... 63 EKLER....................................................................................................................................... 68
EK A. Fotoğraflar ............................................................................................................ 69 ÖZGEÇMİŞ ............................................................................................................................... 70
ii
ÖZET
Yüksek Lisans Tezi
İNTERNET ERİŞİMLİ DENEY MODÜLLERİNİN USB TABANLI KONTROLÜ
Osman ÇİMENLİ
Süleyman Demirel Üniversitesi Fen Bilimleri Enstitüsü
Elektronik-Bilgisayar Eğitimi Anabilim Dalı
Danışman: Doç. Dr. Tuncay AYDOĞAN
Bireylerin yaygın, mesleki ve teknik eğitimlerinin karşılanmasında; zaman ve mekân sınırlamalarını, bireysel farklılıkları ve coğrafi engelleri ortadan kaldıran, fırsat ve imkân eşitliği sağlayan web tabanlı eğitimde, uzak laboratuar teknolojisi bir çözüm olarak karşımıza çıkmaktadır. Bu çalışmada, kullanım kolaylığı, güvenilirlik, hız, düşük güç tüketimi, çoklanabilirlik ve tak&çalıştır özelliklerine sahip USB (Universal Serial Bus) teknolojisi kullanılarak, uzak deney modüllerinin kullanılmasına olanak veren bir uzak laboratuar sistem tasarımının gerçekleştirilmesi amaçlanmıştır. Sistemin donanım altyapısı, phidget 1019 ve 1018 USB modülleri, kameralar ve USB 2.0 haberleşme teknolojilerinden oluşmuştur. Bu donanımların kullanılabilmesi için, Adobe Flash Builder, Phidget web sunucusu, PHP (Personal Home Page) veritabanı dili, FMS (Flash Media Server) ve Media Live Encoder yazılımlarından faydalanılmıştır. Tasarlanan sistem, tak&çalıştır mimarisi ile dinamik bağlantı özelliğinde, 12Mb/s veri iletim hızında ve 127 modül bağlantısına kadar izin verebilen, internet ile uzaktan bağlanılabilen ve yönetilebilen, modüllerin analog ve dijital port özellikleri sayesinde birçok mesleki ve teknik dersin laboratuar uygulamalarına destek verebilen yapıya sahiptir. Kullanıcılar sisteme uzaktan bağlandıktan sonra, sistemdeki kullanıma müsait modülleri kullanabilir, modüller üzerinde gerçekleştirdikleri uygulamaları gözlemleyebilirler. Sistem yöneticisi, sisteme yeni modül ekleyip çıkarabilir ve kullanıcılara ait anlık ve geçmiş bilgileri raporlayabilir. Anahtar Kelimeler: Uzaktan eğitim, web tabanlı eğitim, USB haberleşme, USB arayüz kartı, sanal laboratuar, phidget aygıtları. 2013, 70 sayfa
iii
ABSTRACT
M.Sc. Thesis
USB BASED CONTROL OF INTERNET ACCESSED EXPERIMENT MODULES
Osman ÇİMENLİ
Süleyman Demirel University Graduate School of Applied and Natural Sciences
Department of Electronic and Computer Education
Supervisor: Assoc. Prof. Dr. Tuncay AYDOĞAN
Remote laboratory technology stands for a solution in web based education that removes time and place limitation, personal differences and geographical difficulties, provides possibility and opportunity equality. In this thesis, by using USB technology which has ease of use, reliability, speed, low power consumption, in order to be multiplexed and plug&play features, implementing system design of a remote laboratory was intended. Hardware background of the system, consists of phidget 1019 and 1018 USB modules, webcams and USB 2.0 communication technology. In order to use these modules, it was made use of Adobe Flash Builder, Phidget web service, PHP database language, FMS and Media Live Encoder softwares. Designed system has a structure that supports many professional and technical lessons’ laboratory experiments, has a dynamic feature with plug&play architecture, 12 Mb/s data transfer speed and lets 127 modules connections, can be connected and managed remotely. After users connect to the system remotely, can use the modules which are available for using on the system and observe their experiments on modules. System manager can attach a new module to the system or detach from and also report instant and previous information. Keywords: Distance education, web based education, USB communication, USB interface card, virtual vaboratory, Phidget devices. 2013, 70 pages
iv
TEŞEKKÜR
Bu araştırma için beni yönlendiren, karşılaştığım zorlukları bilgi ve tecrübesi ile aşmamda yardımcı olan değerli Danışman Hocam Sayın Doç. Dr. Tuncay AYDOĞAN’a teşekkürlerimi sunarım. Araştırmalarımda merak ettiğim hususlarda fikirlerini esirgemeyen Sayın Yrd. Doç. Dr. Ecir Uğur KÜÇÜKSİLLE’ye ve Sayın Yrd. Doç. Dr. Kubilay TAŞDELEN’e teşekkür ederim. 2466-YL-10 No’lu Proje ile tezimi maddi olarak destekleyen Süleyman Demirel Üniversitesi Bilimsel Araştırma Projeleri Yönetim Birimi Başkanlığı’na teşekkür ederim. Tezimin her aşamasında beni yalnız bırakmayan aileme sonsuz sevgi ve saygılarımı sunarım.
Osman ÇİMENLİ
ISPARTA, 2013
v
ŞEKİLLER DİZİNİ
Sayfa Şekil 3.1. Bir uzak laboratuarın genel bileşenleri ................................................... 20 Şekil 3.2. USB veri akış modelinin katmanlar üzerinde gösterilişi ................... 22 Şekil 3.3. İletişim modeli ................................................................................................... 24 Şekil 3.4. USB transferi anında katmanlar arasındaki ilişki ................................ 27 Şekil 3.5. USB işlemlerde paketler ................................................................................ 27 Şekil 3.6. Paket biçimi ........................................................................................................ 28 Şekil 3.7. USB hub şeması ................................................................................................. 31 Şekil 3.8. Birincil hub fonksiyonları .............................................................................. 32 Şekil 3.9. Sistemin katmansal görüntüsü .................................................................... 33 Şekil 3.10. Phidget 1019 deney modülü çoklayıcı................................................... 35 Şekil 3.11. Aygıtları bir araya getirme ve kablo bağlantıları .............................. 35 Şekil 3.12. Phidget arayüz kartı kontrol paneli ........................................................ 37 Şekil 3.13. Analog bağlantı uçları .................................................................................. 37 Şekil 3.14. Dijital giriş için switch uygulaması ......................................................... 37 Şekil 3.15. Dijital çıkıştan led kontrolü uygulaması ............................................... 38 Şekil 3.16. Phidget 1019 mekanik çizimi .................................................................... 39 Şekil 3.17. Phidget 1018 deney modülü ..................................................................... 39 Şekil 3.18. Phidget 1018 mekanik çizimi .................................................................... 40 Şekil 3.19. Adobe flash media server arayüzü .......................................................... 45 Şekil 3.20. Adobe flash media encoder arayüzü ...................................................... 46 Şekil 4.1. Flash media encoder ile flash media server’a video startı ............... 47 Şekil 4.2. Flash media server hizmetlerinin başlatılması ..................................... 48 Şekil 4.3. Phidget web servisinin başlatılması ......................................................... 48 Şekil 4.4. Phidget kontrol panelindeki modül listesi.............................................. 49 Şekil 4.5. Kullanıcı giriş sayfası ...................................................................................... 50 Şekil 4.6. Kullanıcı girişi için yazılmış HTTPService .............................................. 50 Şekil 4.7. Giriş formu değerlerinin kontrolü ............................................................. 51 Şekil 4.8. Sunucuya bağlanma ve modülleri listeleme .......................................... 51 Şekil 4.9. Seçilen modüle bağlanma fonksiyonu ...................................................... 52 Şekil 4.10. Deney modülüne erişim, kontrol ve görüntüleme sayfası ............. 52 Şekil 4.11. Logout servisinin yollanması .................................................................... 53 Şekil 4.12. Led grubu kontrolü örnek kodları ........................................................... 53 Şekil 4.13. Yönetici karşılama sayfası .......................................................................... 54 Şekil 4.14. Yönetici verileri grid kodları ..................................................................... 55 Şekil 4.15. Server bağlantısı ve ilgili olayların ilavesi............................................ 56 Şekil 4.16. Aygıt bağlandığında çalışan fonksiyon .................................................. 56 Şekil 4.17. Aygıt ayrıldığında çalışan fonksiyon ...................................................... 57 Şekil 4.18. 1019 ve 1018 modüllerinin bağlanması ............................................... 58 Şekil 4.19. Modül bağlantı durumunun değiştirilmesi .......................................... 59 Şekil A.1. Tasarlanan sistem fotoğrafı ......................................................................... 69
vi
ÇİZELGELER DİZİNİ
Sayfa Çizelge 3.1. Dünyadaki bazı uzaktan eğitim uygulamalarının başlangıç tarihleri ve ilk uygulamalar ..................................................................... 15 Çizelge 3.2. USB gelişim süreci ....................................................................................... 22 Çizelge 3.3. Veri paketinin yönleri ................................................................................ 30 Çizelge 3.4. Phidget sensör ailesi ................................................................................... 36
vii
SİMGELER VE KISALTMALAR DİZİNİ ACK Acknowledge Packet AIR Adobe Integrated Runtime BDOTS Bilgisayar Destekli Otomotiv Test Standı CAN Controller Area Network CRC Cyclic Redundancy Checking CRLT Center for Research on Learning and Technology CSS Cascading Style Sheets DC Direct Current EOP End Of Packet FMS Flash Media Server HCD Host Controller Driver HTML Hyper Text Markup Language HTTP Hyper Text Transfer Protocol I/O Input Output IRP I/O Request Packet İDÖ İnternet Destekli Öğretim LMS Learning Management System MMS Microsoft Media Server NAK No Acknowledge Packet PC Personal Computer PHP Personal Home Page PIC Peripheral Interface Controller PID Packet Identifier RIA Rich Internet Applications SDK Software Development Kit SIE Serial Interface Engine SOF Start Of Frame SQL Structured Query Language STALL Stall Packet SYNC Synchronization URB Universal Robot Bus URL Universal Resource Locator USB Universal Serial Bus XML Extensible Markup Language WTUE Web Tabanlı Uzaktan Eğitim WWW World Wide Web
1
1. GİRİŞ
Eğitimin önemli bir unsuru olan laboratuar çalışmaları, öğrencilerin tecrübe
kazanacağı, herhangi bir eğitim programının tamamlayıcı ve öncelikli bölümünü
oluşturur. Yapılan deneysel çalışmalar öğrencilere pratik beceri kazandırır ve
onları gerçek yaşam durumlarına hazır hale getirmekte yardımcı olur. Bununla
birlikte geleneksel deneylerin bazı kısıtlamaları nedeniyle daha uygun
alternatiflerin aranma zorunluluğu ortaya çıkabilmektedir. Bilgisayarların
maliyet verimliliği ve çok yönlülüğünün yanında ağlar aracılığıyla birbirleriyle
haberleştirilmesi ile tüm dünyada geleneksel laboratuarlara uygun bir alternatif
olarak uzaktan erişim laboratuarlarının oluşturulması yaygınlaşmıştır
(Taşdelen, 2004).
Uzaktan eğitim uygulamaları için sanal laboratuarlar, gerçek laboratuar
ortamının yerini tutmamaktadır. Bu eksikliği gidermek için uzak laboratuar
(Remote Laboratory) ve internet tabanlı laboratuar (Internet Based Laboratory)
kavramı ortaya atılmıştır. Yani öğrenciler internet üzerinden herhangi bir yerde
bulunan laboratuara bağlanarak deneylerini gerçekleştirebilmekte ve deney
sonuçlarını laboratuarda bulunan kameradan eş zamanlı olarak
görebilmektedirler (Delikanlı, 2009). Bu tip çalışmalar, mesleki ve teknik eğitim
veren kurumların uzaktan eğitim uygulamaları için bir çözüm olmaktadır.
WTUE (Web Tabanlı Uzaktan Eğitim) laboratuarlarında, deney düzeneklerinin
bağlı olduğu modül sistemi durdurulmadan yeni modüllerin eklenebilmesi ve
gerektiğinde çıkartılabilmesi işletimsel ve yönetimsel açıdan önemli bir
özelliktir.
USB, bilgisayar ve çevre birimlerinin haberleşmesi ve veri aktarımının
yapılabilmesi için yaygın olarak kullanılan bir seri haberleşme teknolojisidir.
Günümüzde USB arayüz kartları için geliştirilmiş teknolojiler sıklıkla
kullanılmaktadır. Bu arayüz kartlarının bilgisayarla bağlantısı
gerçekleştirildikten sonra giriş ve çıkış ünitelerini kontrol etmek mümkündür.
Farklı bağlantı teknolojilerini kullanan kartlara göre, USB haberleşme
teknolojisini kullanan kartlarda; çoklanabilirlik, tak&çalıştır (plug&play), kolay
2
programlama, düşük güç tüketimi ve hız gibi özelliklerin varlığı,
yaygınlaşmasının temel nedenleridir. Bu tür modüllerde, kontrol işlemi yazılım
aracılığıyla gerçekleştirildiğinden, harici donanımlarda değişiklik yapmaya
gerek kalmadan sadece yazılım değiştirilerek aynı aygıt üzerinde farklı
durumlar kontrol edilebilir.
Bu çalışmada, deney modüllerinin sisteme tak&çalıştır olarak bağlanabildiği bir
WTUE laboratuarı tasarımı ve uygulaması yapmak amaçlanmıştır. Çalışma
sonunda, USB 2.0 haberleşme teknolojisi kullanılarak, esnek ve dinamik bir
yapıya sahip, hızlı, yönetilebilir bir uzak laboratuar altyapısı kurmak
hedeflenmiştir. USB haberleşme teknolojisinin kullanıcıya sunduğu tüm
özelliklerden faydalanılmıştır.
Hazırlanan sistem, yazılım ve donanım olmak üzere iki bölümden oluşmaktadır.
Yazılım tarafında, sunucu ve istemci programları için Adobe Flash Builder
(Flex), FMS, Media Live Encoder yazılımları; veritabanı gereksinimleri içinse
PHP-MySql sistemi kullanılmıştır.
Donanım tarafında ise, Phidget firmasına ait 1019 ve 1018 deney modülleri, bu
modüllerin görüntülenebilmesi amacıyla da kameralar kullanılmıştır. Ayrıca
bilgisayarın tek bir portu üzerinden, yönetim ve kullanıcı arayüzleri ile uzak
laboratuarın kolay, esnek ve başarılı şekilde yönetimi ve kullanımı sağlanmıştır.
Gerçekleştirilen uzak laboratuar başarıyla test edilmiştir.
3
2. KAYNAK ÖZETLERİ
Bu bölümde, araştırmaya katkısı olan diğer akademik çalışmalara yer
verilmiştir. Bu çalışmalar uzaktan eğitim, WTUE, uzaktan eğitim laboratuarları
ve USB kontrol sistemleri şeklinde sıralanmıştır.
Koçer (2001), yüksek lisans tezinde, uzaktan eğitimi kavram olarak ele almış,
uzaktan eğitimin tarihsel gelişimi içinde uygulanan metotlarını incelemiş, bu
metotlarla kullanılan teknolojileri avantaj ve dezavantajlarıyla anlatmıştır.
Kaya (2002), yayınlamış olduğu kitabında, uzaktan eğitimin kavramsal
çerçevesinin ne olduğunu, uzaktan eğitim kurumlarının nasıl yapılandırıldığını,
uzaktan eğitimde öğrenme ortamlarının neler olduğunu, uzaktan eğitim
programlarının değerlendirilmesinin nasıl olması gerektiğini, internet yoluyla
eğitimi, bu eğitim çeşitlerinin yararlarını ve zararlarını açıklamıştır.
Gezer ve Koçer (2008), yayınlamış oldukları makalelerinde, teknolojinin bütün
hızıyla gelişirken, bunun aynı hızla eğitim sistemimize entegre edilmesinin
önemliliği üzerinde durmuşlar; uzaktan eğitimde, sesli ve görüntülü
etkinliklerin kesintisiz olarak yapılabilmesi için sunucunun çalışması esnasında
yayın kaynağının değiştirilmesi tekniği kullanılabileceğini belirterek, sesli ve
görüntülü iletişim protokolleri ile ilgili detayları aktarmışlardır.
Yüksek öğrenim basamağında internet aracılığıyla eğitim, hızla
yaygınlaşmaktadır. Yüksek öğrenimde, WTUE aracılığıyla gerçekleştirilmeye
çalışılan amaçların başlıcaları şunlardır (Kaya, 2005):
• Dünyadaki tüm insanları uzaktan eğitmek
• Belirli bir yerleşkede açılmamış derslere öğrencilerin katılmalarını
sağlamak
• Öğrencilere farklı üniversitelerde açılan dersler için katılma olanağı
sağlamak
• Yerleşkeler arasında gidip gelmeye gerek kalmadan öğrencilerin bir
sınıfa katılmalarını sağlamak ve uygulama örnekleri göstermek
4
• Uluslararası programlarda öğrenim gören öğrencilerin kendi aralarında
ve uzmanlarla toplantılar düzenlemesine olanak sağlayarak
öğrenmelerini desteklemek
• Öğrencilere dünyanın değişik yerlerindeki uzmanlar arasında etkileşim
olanağı sunmak
• Farklı dünya ketlerinde bulunan uzman ve öğrencilerle değişik
konularda toplantılar yapmak
• Öğrencilerin iş başvurusu yapmak istedikleride ilgililerle görüşme
yapmalarını sağlamak.
Karabatak (2002), “Web’e Dayalı Uzaktan Eğitimde Otomasyon” isimli yüksek
lisans çalışmasında, web tabanlı öğretimde otomasyon sistemlerinin sahip
olduğu avantajları ve tasarımlarını incelemiştir. Araştırmada web ortamında
otomasyon sistemlerinden yararlanılarak, ‘Sayısal Analiz’ dersinde hem
eğitimcilerin sınav hazırlayabilmesine hem de öğrencilerin sınav olabilmesine
fırsat veren bir program da geliştirilmiştir.
Kabakçı (2001), “İnternet’le Öğretim Etkinlikleri ve Anadolu Üniversitesi’nde
Bir Uygulama” adındaki yüksek lisans çalışmasında, ‘Temel Bilgi Teknolojisi’
dersine ait ‘Bilgi Teknolojilerine Giriş’ ve ‘Algoritma Kavramı ve Temel
Özellikleri’ ünitelerinde, WebCT yazılımıyla, internetle öğretim etkinliği
oluşturarak öğrencilerin başarısının nasıl değiştiğini ortaya koymayı
amaçlamıştır. WebCT, British Columbia Üniversitesi tarafından, internet
üzerinden eğitsel içeriklerin sunumunu yapmak için hazırlanmış bir yazılımdır.
Araştırmanın öntest-sontest kontrol grup modelinden yararlanılarak
oluşturulan deney bölümünde, verilerin, 22 tanesi birinci deney grubundan, 21
tanesi ikinci deney grubundan ve 28 tanesi de kontrol grubundan olmak üzere
71 öğrenci üzerinden alınmıştır. Öğrencilerin söz konusu üniteleri araştırmacı
gözetiminde ve belirlenen ders saatleri içerisinde internet üzerinden takip
ettikleri öğretim etkinlikleri, birinci deney grubunda, web destekli yapılmıştır.
İkinci deney grubunda ise öğretim etkinlikleri web tabanlı gerçekleştirilmiştir.
Kontrol gurubundaki etkinlikler ve uygulamalar ise geleneksel öğretimle
gerçekleştirilmiştir. Gruplar arasında yapılan istatistiksel mukayeselerde,
5
öğrenci başarısını sağlamak için; web destekli eğitimin web tabanlı eğitime
göre; geleneksel eğitimin ise web tabanlı eğitime göre daha efektif olduğu
saptanmıştır.
Chang (2001), “Değerlendirme ve Web Tabanlı Öğrenme Etkililik Analizi” isimli
bir çalışma yapmıştır. Bu çalışmada, web tabanlı öğrenme sistemine ait öğrenme
ürünlerini ve bu sistemin öğrencilerin kavrama yeteneğini nasıl etkiledğini
anlamak amacıyla bir uygulama yapılmıştır. Çalışma kapsamında dört farklı
görüşü içeren bir anket uygulanmıştır. Bunlar; arayüz, sistem fonksiyonları,
sistem kullanımı ve sistemin öğrenme sürecine etkileridir. Araştırmanın
sonucunda, kullanıcıların yüzde 85.84’ü web tabanlı öğrenme sisteminin uygun
olduğunu, yüzde 80’i sistem arayüzünün kullanımının kolay olduğunu, yüzde
48.3’ ü sistem performansının çok iyi olduğunu ve yüzde 88.84’ü sistemin
onların öğrenmesine katkı sağladığını düşündüğü ortaya çıkmıştır.
Hensrud (2001), “Küçük-Anlaşılır Bir Üniversitede Online Uzaktan Eğitimin
Kalite Ölçütleri” adlı doktora çalışması yapmıştır. Hensrud çevrimiçi uzaktan
eğitim kurslarının geniş bir alana yayıldığını ve sayıca çok arttığını ifade ederek,
bu programların kaliteleri hakkında önemli sorunların bulunduğundan
bahsetmiştir. Bu nedenle kendisine seçtiği bir bağlam ile (Wisconsin’de bir
üniversite) çevrimiçi uzaktan eğitim programlarının kalite kriterlerini
belirlemeye çalışmıştır. Çevrimiçi programlarda çalışan 20 personelden veri
toplama yöntemini seçmiş ve sayı az olduğundan detaylı inceleme fırsatı
bulmuştur. Literatürde mevcut bulunan kalite ölçütlerinin ihtiyaçları
karşılamadığını bu çalışma sonunda ortaya koymuştur. Çevrimiçi eğitim verilen
kurumun yapısı ve kursun konusu gibi etkenlerin kalite kriterlerini etkilediğini
belirtmiş, kursların kendi bağlamı içerisinde değerlendirilmesi gerektiğini
vurgulamıştır.
Ekiz vd. (2003), yayınlamış olduğu makalesinde, ‘mantık devreleri’, ‘lojik
devreler’ veya ‘dijital elektronik’ adıyla okutulan dersin uzaktan, internet
destekli öğretim (İDÖ) ile verilmesine yönelik olarak hazırlanmasındaki
6
kriterleri anlatılmıştır ve internet destekli uzaktan eğitimin değerlendirmesi
yapılmıştır.
Yeniad (2006), “Uzaktan Eğitimde Kullanılmak Üzere Web Tabanlı Portal
Yazılımı Geliştirme” adlı yüksek lisans çalışmasında, WTUE'de kullanılmak
üzere, öğretim kuramları ve pedagojik yaklaşımlar gözetilerek bir portal
yazılımı geliştirmiş ve uzman görüşleri doğrultusunda değerlendirilmesini
amaçlamıştır. Hazırlanan portal yazılımının web tabanlı uzaktan eğitimde
kullanılabilecek nitelikte olup olmadığı; görsellik ve etkileşim özellikleri, sunuş
ve teknik yapı, eğitsel değer gibi öğeler açısından incelenmiş ve portalın
uzmanlar tarafından başarılı bulunduğu görülmüştür. Portal bileşenlerini PHP
programlama dili, MySQL veritabanı yönetim sistemi, Apache web sunucusu ve
Linux işletim sistemi oluşturmuştur. Portalın değerlendirilmesi için örnek
dersler hazırlanmış ve geliştirilen değerlendirme anketi uzmanlara
uygulanmıştır.
Yurdadur vd. (2007), “Web Tabanlı Uzaktan Eğitimde Tasarım Öğelerinin
Öğrenme Üzerindeki Etkileri ve Öğrenci Tercihleri” isimli akademik bilişim
konfrans bildirilerinde, genel olarak WTUE’de sayfa tasarımlarının nasıl olması
gerektiği ve web standartlarında hazırlanacak uzaktan eğitim sayfalarının
tasarımları üzerinde durmuşlardır. Çalışmada iki farklı web sayfası iki farklı
öğrenci grubuna uygulanmıştır. Eğitimin verimliliğini ölçmek ve öğrencilerin
tasarım hakkındaki düşüncelerini almak amacıyla uygulama sonunda anket
sorularının cevaplanması istenmiştir. İki tasarımın karşılaştırılabilmesi
amacıyla öğrenci grupları uygulamadıkları diğer tasarımı uygulamışlar ve bu
sefer her iki tasarım hakkındaki düşüncelerini almak için hazırlanan diğer anket
sorularını cevaplamışlardır. Bu çalışmayla, öğrencilerin her iki tasarımı da
uygulamaları sağlanmış ve tasarımlar hakkındaki düşüncelerinin alınması söz
konusu olmuştur. Çalışmanın sonunda, uzaktan eğitimde kullanılmak üzere,
web standartlarına uygun, öğrenci gereksinimine ve tercihlerine duyarlı,
öğretici ve ilgi çekici sayfalar hazırlayarak, yüksek oranda verim alınabileceği
görülmüştür. Arayüz tasarımı, materyal geliştirme, görsel unsurların kullanımı,
7
öğrencilerin tercihleri ve hareketli animasyonlar ile içeriğin desteklenmesi
uzaktan eğitimin başarısını arttıracaktır.
Lim-Fernandes (2000), “Online Eğitimin Etkililiğinin Değerlendirilmesi” isimli
doktora tez çalışmasında, üniversite mezunlarının aldığı ‘Online Kamu Yönetimi’
dersi programının etkililiğini değerlendirmeyi amaç edinmiştir. Golden Gate
Üniversitesi’nde gerçekleştirilen araştırmada, arşiv bilgileri, öğrenci testleri ve
görüşme yöntemleriyle veri toplanmıştır. Araştırmanın sonucunda ‘Online
Kamu Yönetimi’ programının öğrenci motivasyonu ve tatmini açısından etkili
olduğu saptanmıştır.
Graham vd. (2000), hazırladıkları “Bir Web Tabanlı Uzaktan Öğrenme
Çevresinde Öğretim: Dört Kursa Yönelik Bir Değerlendirme” isimli araştırma
raporunda, web tabanlı öğretim hizmeti sunan kurumların, verdikleri kurs
hizmetlerinin geliştirilmesine yönelik olarak dönüt elde etmeyi amaçlamışlardır.
Araştırma raporu, Indiana Üniversitesi CRLT (Center for Research on Learning
and Technology) tarafından hazırlatılmıştır. CRLT, teknolojik gelişmelerle
birlikte yeni bir eğitim anlayışının gelişmesine yardım etmek, etkileşimli
uzaktan öğrenme çevrelerinde öğrencilerin öğrenmesini değerlendirerek
bunların üzerine araştırmalar yapmak ve öğrencilerin etkileşimi ve işbirliğini
desteklemek için, mevcut ve gelişmekte olan öğrenme stratejileri üzerine
araştırmalar yapmak amacıyla kurulmuştur. Araştırma sırasında, kurs
materyalleri, teknik altyapı ve öğrencilerin forumları incelenmiştir. Araştırma
sonucunda, web tabanlı öğretim uygulamalarındaki etkililiği ve verimliliği
artırmak için, öğrenci-fakülte iletişiminin, öğrencilerin kendi aralarındaki
işbirliğinin ve aktif öğrenmenin desteklenmesi, dönütlerin anında verilmesi,
görevlerin zamanında gerçekleştirilmesi ve farklı öğrenme yöntemlerinin ve
yeteneklerinin açığa çıkarılması yönünde uygulayıcılara tavsiyelerde
bulunulmuştur.
Atıcı (2000a), “Bilgisayar Destekli Asenkron İşbirlikli Öğrenme Yönteminin Sınıf
Yönetimi Dersinde Öğrenci Başarısına Etkisi” isimli yüksek lisans tez
çalışmasında, bilgisayar destekli işbirlikli öğrenme ile geleneksel eğitimi
8
karşılaştırmış ve etkililik derecesini belirlemeyi amaçlamıştır. Araştırmanın
deney bölümü öntest-sontest kontrol grup modelinden yararlanılarak
oluşturulmuştur. Araştırmada veriler, sınıf yönetimi dersi alan 32 tanesi deney
grubu ve 42 tanesi kontrol grubu olmak üzere 74 öğrenci üzerinden elde
edilmiştir. Bilgisayar destekli işbirlikli öğrenme yöntemi deney grubu için web
tabanlı olarak yürütülmüştür. Araştırma sonucunda, bilgisayar destekli işbirlikli
öğrenme yönteminin geleneksel eğitime göre öğrenci başarısı için daha efektif
olduğu ortaya çıkmıştır. Ayrıca, araştırma kapsamında bilgisayar destekli
işbirlikli öğrenme yönteminin olumlu ve olumsuz yönleri öğrenci görüşleri
açısından ele alınmıştır. Elde edilen bulgular değerlendirilerek, öğrencilerin
eğitimde yeni olanakların kullanılması için istekli oldukları ve bilgisayar
destekli işbirlikli öğrenme yönteminin öğrenciler tarafından benimsendiği
sonucu ortaya çıkmıştır.
Elen ve Bayır (2009), yapmış oldukları çalışmalarında, bilgisayar destekli
otomotiv test standının (BDOTS) internet üzerinden gerçek zamanlı denetimini
gerçekleştirmişlerdir. İçten yanmalı motora ait (devir, tork, sıcaklık, debi vb.)
veriler algılayıcılar kullanılarak, veri alış-veriş kartı aracılığı ile bilgisayar
ortamına aktarılmaktadır. BDOTS’a uzaktan erişim ve kontrol işlemleri .NET
platformunda C# dili kullanılarak Server (Sunucu) ve Client (İstemci)
uygulamaları ile gerçekleştirilmiştir.
Delikanlı (2009), “Uzaktan Erişimli Kontrol Laboratuarı” isimli yüksek lisans
tezinde, öğrencilerin istedikleri zamanda, istedikleri mekândan, internet
üzerinden servo motor deney setlerine bağlanarak uygulama yapabilecekleri bir
laboratuar ortamı hazırlamayı amaçlamıştır. Tasarlanan sistem eş zamanlı
olarak deney düzeneklerine erişim imkânı tanır. Böylece öğrenciler laboratuar
çalışmalarını, belirli bir zaman ve mekâna bağlı kalmadan, internet üzerinden
gerçekleştirir. Tez içerisinde internet üzerinden kontrol konusu açıklanarak,
sanal ve internet tabanlı laboratuarlar hakkında bilgiler verilmiştir. Teze ait
uygulama, yazılım ve donanım olarak iki kısımdan oluşmaktadır. Yazılım
kısmında sunucu ve kullanıcı programlarını oluşturmak için C# programlama
dili, kullanıcı bilgilerini tutmak içinse SQL Server programı kullanılmıştır. Bu
9
yazılımlarda Kvaser CANLIB SDK(Software Development Kit) sürücü
dosyalarından yararlanılmıştır. Modüllerde kullanılan mikro denetleyiciye ait
yazılımlar ise C dilinde gerçekleştirilmiştir. Uygulamanın donanım kısmında ise
elektronik devrelerin birbirleriyle ve server ile haberleşmesini sağlamak için
CAN (Contoller Area Network) protokolü kullanılmıştır. CAN, endüstriyel
uygulamalar için geliştirilmiş, seri haberleşme protokolüne sahip bir
endüstriyel ağdır. Donanım kısmı, CAN ağını kontrol etmek için kullanılan
PCICan-D kartı, deney modüllerine mesaj göndermek ve deney sonuçlarını
almak için T89C51CC01 entegresi ile gerçekleştirilen elektronik devre ve bu
elektronik devreye bağlanacak AC servo deney setinden oluşmaktadır.
Irmak (2007), “Uzaktan Eğitim Amaçlı İnternet Tabanlı Laboratuvar
Uygulaması” adlı doktora çalışmasında, genel olarak sunucu/istemci mimarisi
tabanlı bir uzaktan erişimli laboratuar tasarlamıştır. Bütün işlemler sunucu
tarafından yürütülmektedir. İstemci bilgisayar tarafında, internet erişimi ve
tarayıcı program dışında ilave yazılım veya donanım birimlerine ihtiyaç
duyulmamaktadır. Sisteme, internet üzerinden uzaktan erişimli olarak bağlanan
kullanıcılar, elektrik makinaları hakkındaki temel bilgileri etkileşimli konu
anlatım sayfalarından öğrenebilirler. Bununla birlikte, makinanın değişik
parametre değerleri altındaki dinamik tepkilerini, web tabanlı benzetim
modelleri üzerinden inceleyebilirler. Ayrıca, sunucu bilgisayar tarafındaki deney
setlerine internet üzerinden erişmek mümkündür. Bu sayede, web tabanlı ve
gerçek zamanlı deney yapılması sağlanmıştır. İnternet üzerinden gerçek
zamanlı deneyler yürütülürken, deney seti bir ağ kamerası yardımıyla istemci
tarafından görüntülenebilmektedir.
Taşdelen (2004), “Mühendislik Eğitimi İçin İnternete Dayalı, İnteraktif, Sanal
Mikrodenetleyici Laboratuar Tasarımı” adlı yüksek lisans tez çalışmasında,
internet üzerinden gerçek zamanlı bir 8051 tabanlı mikrodenetleyici
laboratuarı tasarlamış ve öğrencilerin istedikleri yerden, istedikleri zaman
internet üzerinden deney setlerine bağlanarak mikrodenetleyici dersi için
uygulama yapabilecekleri bir laboratuar ortamı hazırlamıştır. Bu laboratuar,
sanal bir laboratuar olmayıp internete dayalı gerçek bir laboratuardır. Deneyler
10
internet üzerinden gerçek elektronik devreler kullanılarak yapılmaktadır.
Gerçekleştirilen mikrodenetleyici laboratuarının yazılım kısmında sunucu ve
kullanıcı programlarını oluşturmak için Java ve C# programlama dilleri,
kullanıcı bilgilerini tutmak içinse SQL Server programı kullanılmıştır. Donanım
kısmında ise elektronik devrelerin birbirleriyle ve server ile haberleşmesini
sağlamak için CAN protokolü kullanılmıştır. Sistemde 3 adet deney modülü
mevcuttur.
Hoyer vd. (2004), yayınlamış olduğu makalesinde, uzaktan kontrol edilebilen
bir laboratuar için bir işbirliği ile oluşturulan sanal çevreyi ele almıştır.
Öğrenciler internet aracılığıyla laboratuara giriş yapabilir ve deneyleri ek bir
yazılıma gerek kalmadan, kendi standart web tarayıcıları ile kontrol edebilirler.
Bu laboratuar Java programlama dilinde uygulanmış bir sunucu/istemci mimari
yapısına sahiptir.
Doğan ve Onurhan (2003), hazırlamış oldukları bildirilerinde, mühendislik
eğitiminde gerekli olan laboratuar deneylerinin uzaktan eğitim ortamında nasıl
yapılabileceği araştırılmış, farklı üniversitelerdeki mevcut sistemler incelenmiş
ve Yakın Doğu Üniversitesi’nde bu konuda yapılmış olan bir çalışmadan
bahsedilmiştir. Bu çalışmada istemci – sunucu şeklinde hazırlanmış olan bir
lojik deney seti ele alınmıştır.
Hahn ve Spong (2000), hazırlamış olduğu bildirisinde, İllinois Üniversitesi’ndeki
internet tabanlı kontrol laboratuarının birleştirilmiş ağındaki gelişimin, nasıl
ilerlediğini anlatmıştır. Gerçek deneyler kullanılması, yapılan projenin önemli
özelliğidir. Deneylerin ilk kısmı bir DC (Direct Current) motor, terslenmiş bir
sarkaç, bir eylemsiz teker sarkacı ve iki bağlantılı doğrudan sürücülü robot kolu
içermektedir.
Alhalabi vd. (2000), hazırlamış olduğu bildirisinde, bilgisayar teknolojisinin
gelişimiyle mühendislik eğitiminde kullanılan simülasyon programlarının
gerçek laboratuarların yerini aldığına dikkat çekilmiş, alternatif olarak, internet
erişimiyle uzaktan giriş yapılabilecek gerçek laboratuar olanaklarından
11
bahsedilmiş, makine ve elektrik mühendisliği için hazırlanmış iki laboratuar
tasarımı anlatılmış ve gerçek fiziksel laboratuarların sağladığı gerçek fiziksel
elemanlardan gelen cevapları ve sonuçları simülasyonların sağlayamadığına
vurgu yapılmıştır.
Shen vd. (1999), yayınlamış olduğu makalesinde, otomatik internet ölçme
laboratuarı (AIM-Lab) olarak adlandırılan uzaktan eğitim için tasarlanmış
internet ve WWW (World Wide Web) ile yararlanılabilen bir interaktif çevrimiçi
laboratuarı anlatmıştır. Söz konusu laboratuar, laboratuar ekipmanının
uygulama derslerinde ve uzaktan eğitim çevresinde düzenli ve verimli bir
şekilde kullanılmasına izin vermektedir. Çalışmada örnek olarak, yarı iletken
malzeme karakteristiği, uzaktan yapılmış deney uygulaması olarak anlatılmıştır.
Öztürk (2009), yapmış olduğu yüksek lisans tezinin temel katkısını URB
(Universal Robot Bus) üst bağlantı kanalının evrensel seri veriyolu (USB)
kullanılarak tasarımı ve gerçekleştirimi olarak ifade etmiştir. Çalışmasında,
Linux tabanlı aygıt sürücü ve USB kütüphanesini kullanan bir istemci kontrol
yazılımı, uygulama-sürücü ve sürücü-bellenim arasında yer alan protokollere ait
detayları incelemiştir. USB üst bağlantısının başarımını gidiş-geliş gecikmesi,
band genişliği, ölçeklenebilirlik, dayanıklılık ve güvenilirlik gibi ölçütlere göre
belirlemeye çalışan deneylerin sonuçlarını açıklamıştır.
Kiremitçi (2007), “PIC18F4550 Mikrodenetleyicisi ile USB-PC Veri Aktarım
Arabirimi Gerçeklenmesi” adlı yüksek lisans tezinde, USB protokolünün
avantajlarından faydalanarak, PIC (Peripheral Interface Controller)
mikrodenetleyicilerin diğer mikrodenetleyicilere ve USB iletişimin paralel ve
seri iletişime olan üstünlüklerini bir araya getirmiştir. USB protokolünün
temelleri, kullanılan PIC18F4550 mikrodenetleyicisinin özellikleri ve
uygulamaları ayrıntılıolarak ele alınmıştır. Bu çalışmada, PIC18F4550, USB
destekli üretilmiş bir mikrodenetleyici olup alınan sinyallerin işlenerek USB
aracılığıyla bilgisayara gönderilmesi işlevini yerine getirmesi amacıyla
kullanılmıştır.
12
Buldu (2003), yapmış olduğu doktora çalışmasında, 16C765 PIC kullanarak bir
USB devresi tasarlamıştır. Bu tasarımda 8 biti bilgisayar arayüzü üzerinden,
diğer 8 biti de devre üzerinden kontrol edilen anahtarlar koyulmuştur. Bu
anahtarlar üzerinden, lojik kapı uygulamaları için uygun bir örnek eğitim
simülasyonu gerçekleştirilmiştir.
Sözü edilen araştırmalara göre, uzaktan eğitimin mesleki ve teknik eğitimde çok
önemli bir yerinin olduğu, uzaktan eğitim laboratuarlarında çok farklı
teknolojilerin kullanıldığı görülmektedir. Bu çalışmada da WTUE’ye katkı
verecek bir laboratuar tasarlanmıştır. Ancak kullanılan deney modüllerinin USB
haberleşme teknolojisinin avantajları sayesinde çoklanabilmesi ve tak&çalıştır
şekilde çalıştırılabilmesi gibi özellikleri, çalışmanın diğerlerinden pozitif olarak
ayrışmasını sağlamaktadır.
13
3. WEB TABANLI UZAKTAN EĞİTİM SİSTEMİ
WTUE uygulamaları, geleneksel sınıflarda çoğunlukla yetersiz olan etkileşime
katkı getiren uygulamalardır (Yeniad, 2006). Bu bölümde, uzaktan eğitim
terimine ait tanımlamalar, WTUE’nin yararları ve sınırlılıkları, uzaktan erişimli
laboratuarlar, gerçekleştirilen sistemin haberleşme altyapısını oluşturan USB
teknolojisi ile araştırma sonunda tasarlanarak gerçekleştirilen sistemin
donanım ve yazılım bileşenleri anlatılmıştır.
3.1. Uzaktan Eğitim 3.1.1. Uzaktan Eğitimin Tanımı ve Tarihçesi
Uzaktan Eğitim terimi, ilk olarak Wisconsin Üniversitesi’nin 1892 yılı
kataloğunda geçmiş; yine ilk kez aynı üniversitenin yöneticisi William Lighty
tarafından 1906 yılındaki bir yazıda kullanılmıştır (Verduin ve Clark, 1994).
Uzaktan eğitim, tümüyle özdeş anlam taşımayan değişik kavramlar
içermektedir. Mektupla eğitim, e-öğrenme, uzaktan öğrenme, mobil-öğrenme,
tele-öğrenme, esnek öğrenme, dış çalışma, bağımsız çalışma gibi kavramlar
uzaktan eğitim için kullanılmaktadır ve tümü öğrenci ve öğretmenin fiziksel
olarak ayrı yerlerde oldukları bir eğitim sürecini tanımlamak için kullanılır
(Kolat, 1993).
Uzaktan eğitim, öğretme ve öğrenme öğelerini bir araya getiren bir kavramdır.
Bu iki öğe arasındaki ilişki aşağıdaki gibi gösterilmiştir (Kaya, 2002).
Uzaktan Eğitim = Uzaktan Öğretim + Uzaktan Öğrenme
Başlangıçta yazışmalı olarak başlayan uzaktan eğitim uygulamalarında zamanla
radyo, televizyon, telefon ve bilgisayardan da yararlanılmıştır. Uzaktan eğitimde
sözü edilen araç ve sunu sistemlerinin yanı sıra, elektronik posta, video
konferans ve internet gibi çok ortamlı sunu sistemlerinden de ilerleyen
zamanlarda yararlanılmıştır. Bu araçlar ve sunu sistemleriyle, eğitimciler ile
14
öğrenciler arasında karşılıklı iletişim yazılı veya sözlü olarak sağlanmakta; hatta
video konferans sistemleriyle sesli ve görüntülü etkileşim ortamları kullanılarak
uzaktan eğitim gerçekleştirilmektedir. Böylece, hem araçlar hem de sunu
sistemleri, uzaktan eğitimde rol oynar duruma gelmektedir (Kaya, 1996).
Uzaktan eğitimde çok ortamlı araçların ve sunu sistemlerinin kullanılması,
uzaktan eğitim tanımının yapılmasını güçleştirmektedir. Bu bağlamda pek çok
tanım yapılmıştır. Söz konusu tanımların birkaçı aşağıdaki gibidir:
• Uzaktan Eğitim, öğretmen ve öğrencinin fiziksel olarak aynı kapalı alanda
bulunmasına gerek olmaksızın öğrenme-öğretme etkinliklerinin düzenlenip
yürütülmesidir (Gökdağ, 1986).
• Geleneksel eğitim uygulamalarının öğretim yaşı, zaman, yer, yöntem, amaç
ve benzeri sınırlılıklarına bağlı kalmaksızın; özel olarak hazırlanmış yazılı
gereçler ve kitle iletişim araçlarıyla öğretimin bir sistem bütünlüğü içerisinde
kullanılması ile yürütülen etkinliklerdir (Moore, 1990).
• Birçok öğretim işlevinin, eğitmen ile öğrencinin birbirinden uzakta
oldukları bir ortamda yapıldığı, resmi eğitim biçimidir (Verduin ve Clark, 1994).
• Uzaktan Eğitim, aynı zamanda, aynı mekanda, yüz yüze eğitim ortamı olan
klasik sınıfın yerini alacak bir eğitim yaklaşımıdır (Volery ve Lord, 2000).
• Uzaktan Eğitim, öğretmen ve öğrenciler arasındaki eğitimsel sürecin
desteklenmesi ve yapılandırılması amacıyla öğretmen ve öğrencilerin iki yönlü
iletişiminin teknoloji aracılığı ile uzaktan sağlandığı eğitimdir (Kaya, 2002).
Dünyadaki ilk uzaktan eğitim uygulamasının 1840 yılında, İngiltere’de, Isaac
Pitman tarafından başlatıldığı kabul edilmektedir. Bir stenograf olan Pitman,
İngiltere’deki Bath’da, mektupla steno öğretmeye başlamıştır. 1856 yılına
gelindiğinde, uzaktan eğitim alanında örgütlü girişimlerin başladığı
görülmektedir. Bu yılda Charles Toussaint ve Gustav Langenscheid Almanya’da
Berlin’de, günümüzde de Langenscheid adıyla öğretim malzemeleri yayınlayan
ve o yıllarda uzaktan eğitim uygulayan dil okulunu kurmuştur. Avustralya’da ilk
uzaktan eğitim, 1910 yılında yüksek öğretim basamağında başlatılmıştır.
Queensland Üniversitesi’nde başlatılan bu uygulamada, üniversitenin yüz yüze
eğitim gören öğrencilerine uygulanan standartlar, uzaktan eğitim öğrencileri
15
için de uygulanmıştır (Kaya, 2002). Çizelge 3.1’ de bazı ülkelerin ilk uzaktan
eğitim çalışmalarına değinilmiştir.
Çizelge 3.1. Dünyadaki bazı uzaktan eğitim uygulamalarının başlangıç tarihleri
ve ilk uygulamalar (Kaya, 2002)
Yıl Ülke Açıklama
1840 İngiltere Pittman, Mektupla steno eğitimi
1856 Almanya Langenscheid Dil Okulu
1874 Amerika Illinois Wesleyan Üniversitesi
1898 İsveç Hans Hermod Lisesi
1910 Avustralya Qucesland Üniversitesi
1922 Yeni Zelanda Mektupla öğretim okulu
1956 Türkiye Ankara Ünv. Banka ve Tic. Huk. Arş. Enst
1972 İspanya Ulusal Uzaktan Eğitim Üniversitesi
Türkiye’deki uzaktan eğitim uygulamasını, 1956 yılında Ankara Üniversitesi
Hukuk Fakültesi Banka ve Ticaret Hukuku Araştırma Enstitüsü başlatmıştır. Bu
uygulamada, bankalarda çalışanlar mektupla öğrenim görmüşlerdir. Milli Eğitim
Bakanlığı bünyesinde uzaktan eğitim uygulamaları ilk kez 07.11.1960 tarihinde
“Mektupla Öğretim” adı altında ve deneme öğretimi olarak başlamıştır. Bu
denemeden sonra 26.02.1966 tarihinde Mektupla Öğretim ve Teknik Yayınlar
Genel Müdürlüğü kurulmuştur (Kaya, 2002).
Teknolojideki gelişmeler, uzaktan eğitim süreçlerini de etkilemiştir.
Yalçınkaya’nın (2006), Taylor’dan (2005) aktardığına göre bu süreç beşe ayrılır:
Uzaktan eğitimin birinci kuşak olarak bilinen ilk dönemlerinde kullanılan tek
uzaktan eğitim yöntemi mektupla haberleşme yoluydu. Birinci kuşak mektupla
öğretim yöntemini kullanmaktaydı. Mektupla öğretim yöntemi öğrenciye
dilediği zaman ve dilediği yerde çalışma imkânı sağlıyordu, ancak bu yöntemde
hemen hemen etkileşim yoktu. 1990’lı yıllar ve sonrasında kitle iletişim
araçlarının yaygınlaşmasıyla mektupla öğretim yöntemi önemini yitirmiştir.
16
İkinci kuşak uzaktan öğretim modelinde ise öğrenciye basılı materyalin yanı sıra
çokluortam araçları ulaştırılmıştır. Ses ve görüntü kasetleri dışında bilgisayar
disketleri ile eğitim de bu kuşağa dâhil edilmektedir. İkinci kuşakta eğitim tek
taraflı olarak devam etmektedir.
Üçüncü kuşak uzaktan öğretim modelinde ise TV/Radyo yayınlarının yanı sıra,
video konferans gibi sistemler de kullanılmaktadır. Öğrenci zaman ve mekân
bağımsızlığına sahip değildir. Ancak iletişim etkileşimli olarak
gerçekleştirilebilmektedir.
Dördüncü kuşak uzaktan öğretim modeli esnek modeldir. Eğitim materyalleri
web tabanlıdır. Çoklu ortam destekli eğitim materyalleri kullanılabilmektedir.
Ayrıca e-posta, tartışma forumları ve elektronik belgeler ile eğitim
desteklenmektedir. Öğrenci zaman ve mekân bağımsızlığının yanı sıra
etkileşimli öğrenim gerçekleştirebilmektedir.
Beşinci kuşak model, ileri esnek öğrenme modeli olup; dördüncü kuşaktaki
esnek öğrenme modelinin daha gelişmiş modelleridir. Öğrenciye verilen
hizmetin etkileşimli (senkron) olmasıyla potansiyel olarak öğrenciye daha
bireysel pedagojik deneyim vermek, geleneksel uzaktan eğitime ve yüz yüze
(örgün) eğitime göre ekonomik açıdan daha düşük maliyetli eğitim
amaçlanmaktadır.
Beşinci kuşak modelin özelliği sadece daha ucuz olması değil, aynı zamanda
öğrencinin ödediği öğrenim harcının karşılığında pedagojik ve yönetimsel
destek hizmetini de almış olmasıdır.
3.1.2. Web Tabanlı Uzaktan Eğitimin Tanımı, Yararları ve Sınırlılıkları
WTUE, coğrafi ya da geçici olarak ayrılmış öğrencilere düşünce ve bilgi değişimi,
işbirlikli (kubaşık) çalışma, alternatif yolları keşfetme ve kendi öğrenme
biçimlerini geliştirme olanağı sağlamakta; coğrafi sınırları ortadan kaldırmakta
ve herhangi bir konuya çok kültürlü bir bakış açısı kazandırabilmektedir. Özel
17
ilgi alanları olan gruplar, bu sayede çok uzakta olsalar bile deneyimlerini
paylaşabilmektedir. Farklı yerlerde bulunan eğitmen ve öğrenciler arasında
gereksinim duyulan yazılı, sesli ve görüntülü iletişim internet yoluyla
sağlanabilmektedir. Bu yolla öğrenci, herhangi bir anda istediği bir derse
katılabilmekte ve bu durum zamanın daha etkin kullanılmasını sağlamaktadır
(Yeniad, 2006). Ayrıca, öğrencilerin ve eğitmenlerin sınıf ortamından bağımsız
olması, bina ve personele ihtiyaç duyulmamasına ve öğretim masraflarının da
azalmasına katkı sağlayacaktır.
WTUE, Yıldırım ve Özden’in (1998), Locatis ve arkadaşlarından (1989)
aktardığına göre “bilgiyi düzenlemek ve sunmak için kullanılan bilgisayar
teknolojilerine dayalı bir yaklaşım” olarak; Özdil ve Çelik (2000) ise, “uzaktan
eğitimde internet imkânlarının kullanılmasıyla verilen eğitim” şeklinde
tanımlanmaktadır.
21. yüzyılda bilgi toplumlarına doğru bir yönelimin olması, toplumların yapısını
değiştirmektedir. Bu etkenin yanı sıra, toplumların yeni eğitim
gereksinimlerinin karşılanmasının zorunluluğu, eğitimcileri, yeni olanaklarla
bireysel ve bağımsız öğrenme sağlayarak, kitle eğitimi gerçekleştirecek
uygulamalara yöneltmiştir. Bu çerçevede, eğitim anlayışındaki değişimler ve bu
uygulamanın sunduğu imkânlar göz önünde bulundurulduğunda, WTUE’de
karşılaşılan birçok problemin çözümünde yardımcı olacak gibi görünmektedir.
WTUE’nin, yetişkin eğitimi, çocuk eğitimi, ana-baba eğitimi, kurumlar için
hizmet içi eğitim gibi çok çeşitli ve farklı amaçlarla yapılabileceği göz önüne
alındığında çok geniş uygulama alanına sahip olduğu söylenebilir (Yeniad,
2006).
WTUE’de, öğrenme-öğretme sürecinde öğrenenlerin duyularına en yüksek
derecede hitap eden ve etkileşimi fazlasıyla artıran bir sistem kullanılmaktadır.
WTUE’nin yararları aşağıdaki gibi sıralanabilir (Stacey, 1998; Atıcı, 2000b;
Çabuk ve Erdoğan, 2001; Kerry, 2000; Varol, 2001; Kaya, 2002) :
• Eğitim sürecinde belirli bir dengenin sağlanarak fırsat eşitsizliğinin en
aza indirgenmesi,
18
• Sadece metin tipinde bir sunumdan öte, ses, renk, grafik, animasyon gibi
unsurlarla birlikte görsel ve işitsel duyulara hitap eden ve interaktifliği
sağlayan yapılar dâhil edilerek etkililiğin artırılması,
• Zaman ve mekândan bağımsız bir şekilde öğrenme imkânı tanımasıyla
sınırsız ve süresiz eğitimi ortaya çıkarması,
• İstenilen zamana ve hıza imkân tanıyarak, bireysel öğretimin
gerçekleştirilmesi,
• Eğitimin bir taraftan bireysel, diğer taraftan kitlesel olarak
gerçekleştirebilmesi,
• İçeriğin kolaylıkla güncellenebilmesi nedeniyle sürekli olarak güncel
bilginin sunulmasına fırsat vermesi,
• Bilgiye kaynağından ulaşma imkânı sunması,
• Eğitimin bilgi teknolojilerine dayalı olarak sürdürülmesini sağlaması,
• Öğrenci-eğitimci ve öğrenci-öğrenci arasında çok yönlü bir
haberleşmenin gerçekleşmesi için uygun ortamlar sunması,
• Geleneksel sınıf ortamında soru soramayan veya grup içinde katılım
yetisine sahip olamayan öğrencilerin sanal ortamda özgüven
kazanmasına imkân sağlaması,
• Ders sunumlarını ortamdan, öğrenciden, eğitmenden ve diğer çevre
koşullarından bağımsız kılarak öğretimsel tutarlılık göstermesi,
• Bireysel katılımı ve karşılıklı etkileşimi sağlayarak ilginin artmasını
sağlaması,
• Bireylerin kendi zamanlarını yönetmeleri için uygun ortamlar sunması,
• İletişim ve ulaştırma gibi alanlarda görülen altyapısal farkların yanında,
kültürel ve toplumsal seviye farklarının etkisini en aza indirgeyerek
eğitimi demokratikleştirmesi,
• Seyahat, barınma masraflarının ve kişilerin seyahat süresince oluşan
üretim kaybının ortadan kalkması ve buna bağlı olarak da birey
açısından öğrenim maliyetinin düşmesi,
• Sanal etkileşim ortamları ile mekân olarak ayrı yerlerde bulunan fakat
farklı özelliklere ve imkânlara sahip bireylerin grup çalışmasını
sağlayarak, grup üyelerinin değişik bakış açılarının paylaşımını
sağlaması,
19
• İnternet hizmetleri aracılığıyla grup tartışmasının etkili bir biçimde
gerçekleştirilmesine imkân tanıyarak, kaynakların sanal ortamda
paylaşımının sağlanmasıdır.
WTUE’nin olumsuz yönleri ise aşağıdaki gibidir (Büyükkaragöz ve Çivi, 1994;
Yılmazçoban ve Damkacı, 1999; Özdil ve Çelik, 2000; Kaya, 2002):
• Sürekli gerçekleşen teknolojik gelişmelerden dolayı teknik altyapının son
gelişmeler seviyesinde güncellenmesinin zor olması,
• Öğrencilerin WTUE ortamında başarılı olabilmeleri için bilgisayar ve
internet kullanımı yeterliliğinin (bilgisayar okur-yazarlık, e-okur-
yazarlık) gerekli olması,
• Beceri ve tutuma yönelik davranışların gerçekleşmesinde etkili
olamaması,
• Kendi kendine çalışma alışkanlığı olmayan ve bu yeteneğini
geliştirememiş öğrenciler için sınırlılık oluşturması,
• Uygulamaya dönük derslerden yeterince yararlanılamaması,
• Öğrencilerin sosyalleşmelerini sınırlandırması,
• Öğrencilerin (özellikle de küçük yaştaki öğrencilerin), canlı ile cansız
arasındaki farkı ayırt etmelerini zorlaştırabilmesi, duygusal alanda
körleşmelerine neden olabilmesi ve onları yalnızlığa itebilmesidir.
WTUE’nin etkinliğini belirleyen faktörlerden en önemlileri öğrencinin kişisel
özellikleri, sosyal çevresi ve öğretimsel tasarım olarak belirtilmektedir (Jung ve
Rha, 2000). İlk ikisi değiştirilemeyecek sabitler olarak kabul edildiğinden,
öğretimsel tasarıma odaklanılmıştır. Öğretimsel Tasarım kuramlarında,
öğrenmenin kalbi, anında dönüt içeren öğrenci öğretmen etkileşimidir.
Öğrenmenin en önemli bileşenlerinden olan anında dönüt, öğrenci-öğretmen
arasında yeteri kadar sağlandığında, öğrenci başarısı artmaktadır (Cavanaugh,
2002). Ayrıca öğretmen-öğrenci, öğrenci-içerik, öğrenci-öğrenci arasındaki
etkileşim uzaktan eğitimde çok önemlidir (Shortridge, 2001). Internet
teknolojileri bu etkileşimi sağlamak için önemli olanaklar sunmaktadır. Yüz
yüze eğitimin temelini oluşturan ve uzaktan eğitimin en önemli sorunlarından
20
olan dönüt ve etkileşim sağlandığında, WTUE’nin en az yüz yüze eğitim kadar
etkili olacağı iddia edilmektedir (Cavanaugh, 2001).
3.1.3. Uzaktan Erişimli Laboratuarlar
Uzaktan erişimli laboratuarlar, bir web arayüzü aracılığıyla uzaktan erişilen ve
kullanılan gerçek deney laboratuarlarıdır. Bu laboratuarlar öğrencilerin sınıf
ortamında bulunmalarını gerektirmeyen uzaktan eğitim dersleri için uygundur.
Öğrenciler bir bilgisayar ağıyla gerçek deneylere bağlanabilir ve aygıtı kontrol
edebilirler. Bir kamera aracılığıyla da deney ortamında gerçekleşen olaylar
gerçek zamanlı olarak izlenebilir (Chen, 1999). Şekil 3.1’ de genel olarak bir
uzaktan erişimli laboratuar yapısı görülmektedir.
Şekil 3.1. Bir uzak laboratuarın genel bileşenleri
Uzak laboratuarlarda Şekil 3.1’de gösterildiği gibi, internet aracılığıyla sunucuya
bağlanan istemciler (kullanıcılar) vardır. Sunucuya bağlanan istemciler, sisteme
bağlı deney modüllerine erişerek, uygulamayı gerçekleştirir ve görüntülerler.
Bilişim teknolojilerinin eğitim alanında kullanımının bütününe “elektronik
öğrenme” kısaca e-öğrenme adı da verilir. Genel olarak uzaktan eğitim çatısı
altında yer alan ve birçok eğitim teknolojisi ya da ortamından yararlanılan e-
öğrenme uygulamaları, hızla yaygınlaşmaya başlamıştır (Delikanlı, 2009).
Teknik dersler içermesi ve laboratuar uygulamaları gerektirmesi nedeniyle
mühendislik dallarının, mesleki ve teknik eğitim kapsamında, uzaktan eğitimde
istemciler
İNTERNET sunucu
kamera
deney modülü
21
ayrı bir yeri ve önemi vardır. Burada, uzaktan eğitim laboratuarı öne
çıkmaktadır. Uzaktan eğitim laboratuarları;
Laboratuar yapı ve işleyişinin bilgisayar benzetimi ile gerçekleştirildiği
sanal laboratuarlar,
Laboratuar donanımına uzaktan erişilen laboratuarlar,
olmak üzere iki sınıfa ayrılmaktadır.
Sanal laboratuarlar, laboratuarların yapı ve isleyişinin uygun programlar
yoluyla, bilgisayar ortamında yapay olarak oluşturulmasına dayanan benzetim
uygulamalarıdır. Uzaktan erişimli laboratuarlarda ise kullanıcılar/öğrenciler,
gerçek uygulamalarla uzaktan etkileşim halindedirler ve kontrol edilen sisteme
erişebilmektedirler. Kullanıcılar uygulamayı çalıştırabilmekte, parametreleri
değiştirebilmekte, sonuçları görebilmekte ve verileri bir web arayüzü aracılığı
ile kendi tarafına aktarabilmektedir. Uzaktan erişimli laboratuarlar, internet
aracılığı ile uzak noktalardaki kullanıcıların kontrol laboratuarı uygulamalarını
gerçekleştirmelerini mümkün kılmayı amaçlamaktadır (Delikanlı, 2009).
3.2. USB Teknolojisi
Universal Serial Bus, çoklanabilirlik ve tak&çalıştır gibi çok önemli
avantajlarıyla, bilgisayarlar ve çevre birimleri arasında veri aktarımı ve kaynak
paylaşımını gerçekleştiren, oldukça yaygın bir kullanım alanı olan seri
haberleşme teknolojisidir. Türkçe ifadesiyle ‘evrensel seri yol’ arabirimi yazıcı,
fare, klavye, modem, scanner, joystick, dijital kamera gibi çok sayıda çevrebirim
aygıtı için ortak bir arabirim sunmakta, diğer arabirimlerin neden olduğu kablo
karışıklıklarının da önüne geçmektedir. USB haberleşme teknolojisi, işi
evrenselleştirmek ve geleneksel seri ve paralel portların yerini almak için
geliştirilmiştir.
USB’nin kullanım alanlarının başında ölçme ve kontrol gelmektedir. USB,
kullanıcıya ve tasarımcıya sağladığı avantajları ile günümüz teknolojisinin
vazgeçilmez veri yolu standartlarından biri olmuştur (Kiremitci, 2007). Kasım
1994’de 0.7 sürümü ile başlayan süreç, Kasım 2008’de 3.0 sürümü ile devam
22
etmiştir. USB’nin 1.0 versiyonundan sonra zaman içindeki gelişim süreci Çizelge
3.2’de özet olarak gösterilmiştir.
Çizelge 3.2. USB gelişim süreci
Sürüm Tarih Data Rate Data Transfer
1.0 Ocak 1996 Low Speed 1.5 Mbps ~ 183 KB/s
1.1 Eylül 1998 Full Speed 12 Mbps ~ 1.43 MB/s
2.0 Nisan 2000 High Speed 480 Mbps ~ 57 MB/s
3.0 Kasım 2008 Super Speed 4.8 Gbps ~ 572 MB/s
3.2.1. USB İletişim Sistemi ve Katmanları
USB protokolü, USB’ye bağlı fiziksel aygıtlar ve bir host üzerinden, çalışan
uygulamalar arasında veri akışını destekler (Friesen, 2006). Bu akış, Şekil 3.2’
de gösterilen Bus (Yol), Aygıt ve Fonksiyon olarak adlandırılan üç katmanlı bir
model üzerinden olur.
Şekil 3.2. USB veri akış modelinin katmanlar üzerinde gösterilişi (Friesen, 2006)
Sanal Veri Akışı
Fiziksel Veri Akışı
Uç Noktalar
Uygulama
Yazılımı
Fonksiyon
(Arayüzler)
Mantıksal
Aygıt
Sistem
Yazılımı
Host
Denetleyici
Bus
Arayüzü
Veri Hattı
Kontrol Hattı(Pipe)
Kablolar ve Hublar
Host Bilgisayar Fiziksel Aygıt
Fonksiyon
Katmanı
Aygıt
Katmanı
Bus(Yol)
Katmanı
23
Modelde host bilgisayarda, her katmanın görevini yerine getirmek üzere host
denetleyici, sistem ve uygulama yazılımı; fiziksel aygıt tarafında ise bus arayüzü,
mantıksal aygıt ve fonksiyon (arayüzler) bölümleri bulunur ve karşılıklı sanal
veri akışını sağlarlar. Şekil 3.2’ ye göre Bus(Yol) Katmanı, fiziksel aygıt ile host
denetleyici arasındaki veri transferlerini gerçekleştirir. Bu katman hub’lardan
ve kablolardan oluşur. Veri, fiziksel olarak modelin üzerinde aşağı ve yukarı
yönlü akar. Sanal olarak ise yatay bir veri akışı söz konusudur. ‘Pipe’, host ile
aygıt arasındaki mantıksal ilişkiyi temsil eder. Aygıt katmanı, fiziksel katmanın
mantıksal görünümüdür ve bu katmanın kontrollerini elinde bulundurur. Giriş
ve çıkış konfigürasyonunu sağlamak için ‘Kontrol Hattı’ adı verilen özel bir pipe
mesajını kullanır. Fonksiyon katmanı ise, fiziksel katmanın fonksiyonel
görüntüsünü taşır. Bu katman, transfer için ‘veri hattı’nı kullanır (Friesen,
2006).
3.2.2. USB Protokolü ve İletişim Modeli
USB, host ile aygıtların birbirleri arasında haberleşebilmeleri için bir protokol
sağlar. Host, belirli bir zamanda sadece bir USB aygıtı ile haberleşebilir, yani
aynı anda birden çok aygıtla haberleşme durumu söz konusu değildir. USB
aygıtların hostla olan haberleşmeleri, host üzerindeki yazılım hafıza tamponları
ile aygıtların son uçları arasına kurulan iletim hatlarıyla birebir gerçekleştirilir.
USB yolundaki veri akışı yarı çift-yönlüdür (half duplex), yani belirli bir zaman
zarfında veri sadece bir yönde taşınabilir (Tan, 1997).
USB aygıtlar, sistem kaynaklarını doğrudan tüketmezler. Bir USB sistem
tarafından ihtiyaç duyulan sistem kaynağı, USB sistem yazılımı tarafından
kullanılan hafıza alanlarıdır. Buna göre; USB istemci(client), USB sistem
yazılımını çağırıp transfer isteğinde bulunduğu zaman transferi başlatır. USB
istemci sürücüleri (client drivers), USB aygıta veya aygıttan, transferi yaparken
veri depolamak için tampon bir bellek sağlar. Her transfer, USB sistem
yazılımının aygıt konfigürasyonu sırasında kurduğu bir iletişim kanalı (pipe)
aracılığıyla gerçekleşir. USB sistem yazılımı istemciden gelen transfer isteğini,
aygıtın band genişliği gereksinimine uygun olarak farklı işlemlere ayırır.
24
İstekler, USB HCD (Host Controller Driver-Host Denetleyci Sürücüsü)’ye
geçirilir. Şekil 3.3 USB sistemler tarafından kullanılan sistem kaynaklarını ve
temel iletişim akışını göstermektedir.
Şekil 3.3. İletişim modeli (Anderson, 2001)
Host denetleyici, HCD tarafından oluşturulmuş transfer tanımlayıcısının
içeriğine göre işlemi yerine getirir. Transfer tanımlayıcısı içerisindeki anahtar
bilgi şunları içerir:
Hedef USB aygıtının adresi
Hedef aygıtın hızı
Gerçekleştirilecek transfer tipi
Veri paketinin boyutu
İstemcinin tampon bellek bölgesi
HUB
Aygıt
Aygıt
Aygıt
USB Host
Denetleyici
USB İstemci
USB İstemci
USB İstemci
USB Sürücü
xHCI Sürücü
Veri Transferleri
Host Denetleyici Kayıtçıları
Hafıza Adres Alanı
I/O Adres Alanı
25
Host denetleyici, işlemcinin I/O (Input/Output) veya hafıza adres alanında
konumlanan kayıtçılara sahiptir. Bu kayıtçılar, host denetleyicisinin işleyişini
kontrol eder ve istenen işlemi garanti etmek için HCD tarafından gerekli
değerlerle yüklenmelidir. Örneğin, bir kayıtçı, transfer tanımlayıcılarının
bulunduğu hafıza alanını gösteren adres işaretçisiyle yüklenir. Host denetleyici,
HCD tarafından üretilen transfer tanımlayıcılarını çeker. Her tanımlayıcı, bir
istemcinin transfer talebine cevap vermek için, yapılması gereken işlemi
tanımlar. Denetleyici, her transfer tanımlayıcı tarafından belirtilen USB işlemini
üretir. Transfer tamamlandığı zaman, USB sistem yazılımı durumu istemci
sürücüsüne bildirir (Anderson, 2001).
3.2.3. USB Transfer Tipleri ve Paketleme
Axelson (2005)’a göre, USB aygıt, host üzerindeki hafıza tamponu ile aygıt
üzerindeki son uç arasındaki pipe üzerinden host ile haberleşir. USB
spesifikasyonu, eşzamanlı, yığın, kesme ve kontrol olmak üzere dört veri
transfer tipini desteklemektedir. Belirli bir son uç için veri transfer tipi seçimi
aygıtın ve yazılımın gereksinimlerine göre seçilmektedir. Bu seçim son uç
tanımlayıcıda gerçekleştirilir.
Her USB fonksiyonu, kendi fonksiyonunu gerçekleştirirken istemci sürücüsü
tarafından kullanılan kayıtçılar veya uç noktalarla tasarlanır. Her uç nokta, özel
transfer karakteristiğine sahiptir. Örneğin, bilgiyi bir hoparlöre transfer
ederken, sesin bozulmasını engellemek için veri transferinin sabit bir oranda
devam etmesi gerekir. Diğer uç noktalar farklı karakterisitiklere sahip olabilir,
bu da farklı transfer tiplerini gerektirir (Anderson, 2001). USB tarafından
desteklenen transfer tipleri şöyledir:
Isochronous (Eş Zamanlı) transfer: Büyük miktarlardaki verinin (1023
bayt’a kadar), bilgisayar ile çevrebirim arasında periyodik ve sürekli bir
şekilde iletilmesini sağlayan transfer tipidir. Zaman açısından kritik olan
ama hataya karşı hassas olmayan akan veri (streaming data) iletiminde
kullanılır. Örneğin USB kamera ya da ses kartları gibi. Sabit bir bant
26
genişliği sağlanarak küçük hatalara izin verilirken veri akışının
kesilmemesi sağlanır (Axelson, 2005).
Bulk (Yığın) tipi transfer: Yığın tipi transfer ise büyük miktarlardaki
verinin aktarımı için kullanılan bir veri transfer tipidir. Taşınacak verinin
alıcı kısmında doğru bir biçimde alınması garanti edilirken, verinin iletim
zamanı konusunda garanti verilemez. Tipik olarak, yazıcı ve tarayıcı
haberleşmesinde yığın tipi iletişim kullanılır (Axelson, 2005).
İnterrupt (Kesme) tipi transfer: Ani reaksiyon gerektiren fare ya da
klavye ile iletişimde kullanılır. Diğer veri transferlerine göre daha düşük
miktarlardaki verinin, zaman ve verinin doğruluğu garanti altına alınarak
iletilmesi için kullanılır. Örneğin, bilgisayara bağlı bir fare ile yapılan veri
iletişiminde kullanılabilir. Kesme borusu da eşzamanlı boru gibi tek
yönlü ve periyodik bir borudur (Axelson, 2005).
Control (Kontrol) tipi transfer: PC ile USB arasında kurulum, ilk
değerlerin atanması ve konfigürasyon bilgilerinin taşınmasında
kullanılır. Bu bilgiler önemli olduğundan kontrol kodları eklenir. Kontrol
hattı çift-yönlü bir hat olup, her iki yönde veri akışını desteklemektedir.
Kontrol son uçları için maksimum veri paketi boyutu, düşük hızlı aygıtlar
için 8 bayt, tam hızlı aygıtlar için 16, 32 veya 64 bayt ve yüksek hızlı
aygıtlar için ise sadece 64 bayttır (Axelson, 2005).
İstemci sürücüleri uç noktanın yapısıyla ilişkili olarak transferin tipini
anlayabilir. Bu bilgi aygıttan, tanımlayıcılar okunarak elde edilir. Bir istemci
sürücüsü, transfer işlemi için istekte bulunduğu zaman, transferi başlatmak için
USB sürücüsünü çağırır. İstenen transfer IRP(I/O Request Pack) yani ‘Giriş Çıkış
İstek Paketi’ olarak adlandırılır (Anderson, 2001)
Bazı transferler çok büyük bir veri bloğundan oluşur. USB iletişimi, çerçeve
(frame) adı verilen düzenli veri transferine dayanır. Gerçekleştirilen transferler
bir dizi paketten oluşan bir veya daha fazla işlemden oluşur. İşlemlerse, USB
kablo aracılığıyla gönderilen bir ya da birden fazla paketten oluşmaktadır
(Anderson,2001). Bir transferin gerçekleşmesi esnasında, istemciden gelen
27
isteklerin işlemlere dönüştürülmesi, bu işlemlerin çerçevelere ayrılması ve
çerçevelerdeki yapı katmansal olarak Şekil 3.4’te gösterilmektedir
Şekil 3.4 USB transferi anında katmanlar arasındaki ilişki (Anderson, 2001)
Transferler genel olarak Şekil 3.5’te gösterildiği gibi üç paketten oluşur:
Şekil 3.5 USB işlemlerde paketler (Anderson, 2001)
İşaret paketi: Her işlem, hedef aygıt, uçnokta numarası ve veri
transferinin yönü bilgilerini taşıyan token packet ile başlar. SOF (Start Of
Frame) işareti, o anki frame numarasını içerir.
Bir İşlem
İşaret Paketi Veri Paketi Anlaşma Paketi
28
Veri paketi: Veri, transferle ilgili yükü taşıyan bir veri paketinden oluşur.
Anlaşma paketi: Tüm USB transferleri, veri aktarımını garanti ederek
gerçekleştirilir ve başarılı veri transferini doğrulamak için handshake
paketi içerir. Herhangi bir hata meydana gelirse, handshake paket
döndürülmez.
Şekil 3.6, bir USB paketinin basit bir biçimini göstermektedir. Veriyi
bekletmeden işleme koymak için ilk iş senkronizasyon safhasıdır. Paketin tipi,
PID (packet Identifier) olarak bilinen örnek bir bit ile tanımlanır. PID bilgisinden
sonra adres veya veri gibi özel paket içeriği vardır. Son olarak, her paket, özel
paket içeriğinin hatasız aktarıldığını doğrulamak için kullanılan CRC (Cyclic
Redundancy Checking) bitleriyle son bulur ve paketin sonuna EOP (End Of
Packet) eklenir (Anderson, 2001).
Şekil 3.6 Paket biçimi (Anderson, 2001)
Senkronizasyon (SYNC) bölümü 8 bitten oluşur ve gönderilen bir paket olduğu
konusunda bu paketin başına eklenerek uyarıda bulunur. Paket tanımlayıcılar
transferin amacını ve böylece biçimi ve içeriği ortaya koyarlar. Paketin biçimi ve
uzunluğu türüne bağlıdır. Token paketler 4 bit uzunluğundadır ve işlemin
durumuna ait bilgiyi içerir. PID alanı 4 bitlik tanımlayıcı ve ardından bu bitlerin
tekrarlanmasıyla ile elde edilen kontrol alanından oluşmaktadır. Her paket
gerçekleştireceği iş ile ilgili bilgiyi taşır. Bu bilgi, USB aygıt adresi, bir frame
numarası veya transfer edilecek veri olabilir. Bilgi, işlemin başarısı için kritik
bir önem taşır ve paketin sonunda CRC bitleriyle doğrulanır. USB transferlerde,
ya 5 ya da 16 bitlik CRC kullanılır. Veri paketleri 16 bitlik CRC kullanırken, diğer
tüm paketler 5 bitlik CRC’ yi kullanır. Paket tanımlayıcıların kendine ait kontrol
Senkronizsyon Alanı
Paket Tanımlayıcı
CRC Özel Paket İçeriği
EOP
Paket
29
bitleri olduğundan, CRC yalnızca özel paket içeriği için üretilir ve kontrol edilir.
Her paketin sonu EOP bitleriyle işaretlenir.
‘İşaret Paketleri (Token)’, USB üzerinden yayınlanacak olan işlemin tipini
tanımlar. Bütün işlemler bir işaret paketiyle ile başlar. USB spesifikasyonunda,
işaret paketlerine ait dört tür tanımlıdır:
SOF:Bir sonraki çerçeveyi işaret eder.
IN: Hedef USB aygıttan, transfer edilecek USB işlemini belirtir.
OUT: Sistemden, hedef aygıta transfer edilecek USB işlemini belirtir.
SETUP: Kontrol transferinin başlangıcını gösterir. Kontrol
transferinin ilk safhası olup, sistemden hedef aygıta istek göndermek
için kullanılır.
SOF, hedef aygıtların bir frame’in başlangıcını tanıyabilmelerine olanak sağlar.
Örneğin, eşzamanlı (isochronous) uygulamalar, 1ms’lik özel bir frame’in
başlangıcında, transferi harekete geçirmek ve senkronize etmek için SOF
kullanır. SOF paketi, içerisinde 11 bitlik frame numarası barındırır. Frame
numarası, alıcı tarafından 5 bitlik CRC ile doğrulanır. SOF paket, yalnızca token
paketlerden oluşan işlemleri tanımlar. Veri ve anlaşma paketleri SOF ile ilgili
değildir. Ayrıca, USB hedefler, kontrolleri yerine getirmeli ve uygun işlemi
gerçekleştirmelidir:
PID kontrol hatası — paketi gözardı et
Frame CRC hatası — frame numarasını gözardı et
Yazılım, aygıttan bir bilgiyi okumak istediği zaman, ‘IN Token’ kullanır. ‘In’
paket, hedef aygıta, sistem tarafından veri için istek oluşturulduğunu haber
verir. Sistem yazılımı, hedef aygıta veri transfer edilirken bir ‘OUT’ işlemi oluşur.
‘IN’ işlemlerinde olduğu gibi, ‘OUT’ işlemleri de tüm transfer türleri için
kullanılabilir. Kurulum paketleri (SETUP), yalnızca kontrol transferlerinin
kurulum safhasında kullanılır. Kurulum işlemi, bir ‘OUT’ işleminin formatına
benzerdir. Kurulum paketleri, hedef aygıt tarafından gerçekleştirilecek isteği
transfer eder. Çok çeşitli istekler, USB aygıtlar ve hublar tarafından desteklenir.
İsteğe bağlı olarak, kurulum işleminden sonra, bir veya daha fazla ‘IN’ ya da
‘OUT’ işlemi gelebilir (Anderson, 2001).
30
Veri paketleri, işlemle ilgili veri yükünü taşır. Veri paketinin transfer yönü,
işlemin tipiyle belirtilir ve transfer Çizelge 3.3’te gösterildiği gibi, hem aygıta
doğru hem de aygıttan gerçekleştirilebilir.
Çizelge 3.3 Veri paketinin yönleri (Anderson, 2001)
İşlem Türü Veri Paketinin Yönü
IN işlemi Aygıttan host’a
OUT işlemi Host’tan aygıta
SETUP işlemi Host’tan aygıta
Data0 ve Data1 adındaki iki farklı veri paketi, alıcı ve gönderici arasındaki uzun
transferlerin senkronizasyonunu desteklemek için tanımlanır. Örneğin, host’tan
yazıcıya uzun bir transfer verisi gönderilirse, genellikle çok sayıda frame
kullanılarak, transfer, küçük bloklar halinde gerçekleştirilir. Böylelikle, uzun bir
transfer esnasında oluşacak veri işlemi kaçırılmamış olur.
USB aygıtlar, anlaşma paketlerini, verilen işlemin tamamlandığını raporlamak
için kullanır. Transfer verisinin alıcısı, göndericiye anlaşma paketini
göndermekten sorumludur. Anlaşma paketlerinden üç farlı sonuç ortaya
çıkabilir:
Acknowledge packet (ACK) — Veri paketinin hatasız alındığı bilgisidir.
No Acknowledge packet (NAK) — Aygıtın geçici olarak veri gönderip
alamadığını raporlar. Ayrıca kesinti işlemleri esnasında, host’a
gönderilecek veri olmadığı bilgisini iletir.
Stall packet (STALL) — Aygıt tarafından transferin tamamlanamadığına
dair kullanılan bilgidir ve işlemin devamı için host tarafından yazılım
müdahalesi gereklidir.
Her USB aygıt, çerçeveler esnasında USB band genişliğinin bir bölümünün tahsis
edilmesine ihtiyaç duyar. Band genişliği tahsisatı, diğer aygıtlar tarafından
kullanılmayan erişilebilir USB band genişliğine ve aygıt tanımlayıcılar
tarafından belirtilen işe bağlıdır. Herhangi bir USB aygıt bağlandığı veya
konfigüre edildiği zaman, sistem yazılımı, aygıtın tanımlayıcılarını, ihtiyaç
31
duyulan band genişliği miktarını belirlemek amacıyla çözümler. Yazılım, kalan
band genişliği miktarını ve bunun aygıtın gereksinimlerini ne ölçüde
karşılayabileceğini kontrol eder. Eğer yeterli band genişliği yoksa, band
genişliğinin önceden bağlanan aygıtlar için tahsis edilmesi dolayısıyla aygıt
konfigüre edilemeyecek ve kullanıcı bu durum hakkında bilgilendirilecektir
(Anderson, 2001).
3.2.4. USB Hublar
Bir USB hub, birden çok USB aygıtının tek bir USB kapısı üzüerinden
bağlanmasına izin veren araçtır. Şekil 3.7’de USB hub şeması görülmektedir.
Şekil 3.7. USB hub şeması (Anderson, 2001)
Hub’lar iki önemli fonksiyon içerir:
Hub denetleyici (controller)
Tekrarlayıcı (repeater)
Hub denetleyici, USB arayüzü ve seri arayüz motoru (SIE) içerir. Ayrıca
yazılımın aygıtı tanımak için okuduğu tanımlayıcıları da kapsar. Hub
denetleyicisi, hub ve porta ait durum bilgisini de toplar. Denetleyici aynı
zamanda host yazılımından besleme ve port aktivasyonu gibi hub
USB Host Denetleyici
Kök Hub
Hub Hub
Aygıt Aygıt Aygıt Aygıt
32
operasyonlarını kontrol etmek için komutlar alır (Anderson, 2001). Şekil 3.8
birincil hub fonksiyonlarını göstermektedir.
Şekil 3.8. Birincil hub fonksiyonları (Anderson, 2001)
Hub’a gelen bus trafiği Şekil 3.8’de görüldüğü gibi aşağı ya da yukarı yönlü
olarak ilerletilmelidir. Hub’lar ayrıca, USB aygıtlarının bağlanma veya
çıkarılmalarında pivot rol oynar. Hub’lar, bağlanan ya da çıkarılan aygıtları
tanımalı ve bunu host yazılımına raporlamalıdır. Bir bus powered hub (yoldan
güç beslemeli göbek) host bilgisayarın USB arayüzünden gücünü alan bir
göbektir. Bu nedenle ayrıca bir güç bağlantısına ihtiyacı yoktur. Yine de birçok
araç bu uygulamanın sağlayabileceğinden daha fazla güce ihtiyaç duyar ve bu
çeşit göbek ile çalışmaz. Tam tersine self powered hub (kendinden güç
beslemeli göbek) gücünü harici bir güç desteğinden alan bir göbektir ve bu
sayede tüm kapıları tam güç verebilir. Göbeklerin pek çoğu gerek yoldan güç
beslemeli gerekse kendinden güç beslemeli olarak çalışabilirler (Anderson,
2001).
USB port sayısının yeterli olmadığı yerlerde USB hublar kullanılarak USB giriş
sayısı arttırılabilir. USB standardı, 127 aygıta kadar bağlantıyı desteklemektedir.
Host Tarafı(Yukarı)
Veriyolu Gücü
Aygıt Tarafı(Aşağı)
Veriyolu Gücü
Aygıt Tarafı(Aşağı)
Portları
Host Tarafı(Yukarı)
Hub Portu
33
3.3. Geliştirilen Sistemin Mimari Yapısı
Araştırma sonunda tasarlanarak gerçekleştirilen sistemin mimarisi, Şekil 3.9’
daki katmansal yapıdan meydana gelmektedir.
Şekil 3.9. Sistemin katmansal görüntüsü
Katmansal yapıda görüldüğü gibi, son kullanıcı (istemci), güncel Adobe flash
player versiyonunun yüklü olduğu bir web tarayıcısı ve internet bağlantısı ile
uzaktan erişimli laboratuvara bağlanabilir.
İstemci sisteme erişim için hazırlanmış web arayüzleri aracılığıyla sunucuya
bağlanır. Sunucu tarafındaki web arayüzü yazılım kısmı, Flex ile yazılmıştır. Bu
arayüzlerin modül görüntüleme bölümleri ise, FMS ve Adobe Flash Media
istemci
İNTERNET
veritabanı
34
Encoder yazılımlarının işbirliği içinde çalışmasına ihtiyaç duyar. Kamera
görüntüsünü kaynak olarak alan Media Encoder yazılımı, bu kaynağı Media
Server’a gönderir. Media Server yazılımı da, video kaynağını web arayüzündeki
video oynatıcıya sunar.
Uzaktan erişimli laboratuara bağlanan kullanıcılara ait bilgi ve kayıtlar ise
veritabanında tutulur. Kayıt bilgileri, web arayüzleri aracılığıyla Apache
sunucusu üzerinde çalışan PHP ile veritabanına aktarılır.
Sunucu tarafında, sürekli olarak aktif olması gereken bir diğer birim de, Phidget
Web Servisi’ dir. Bu servis, sisteme bağlı ya da bağlanacak olan aygıtların
durumlarını olay tabanlı olarak denetler. Herhangi bir olay oluştuğunda, bu
durum flex ile yazılan fonksiyonlar yardımıyla kontrol edilir.
3.4. Sistemin Donanım ve Yazılım Bileşenleri
Bu bölümde, gerçekleştirilen WTUE sisteminde kullanılan donanım ve yazılım
araç ve bileşenleri hakkında genel bilgi verilmiştir. Öncelikle, kullanılan deney
modülleri tanıtılmış ve görüntüleme sistemi hakkında bilgi verilmiştir. Daha
sonra, web arayüzlerinin oluşturulmasında ve veri tabanı işlemlerinin
yapılmasında kullanılan Adobe Flash Builder, FMS, Adobe Flash Media Encoder
yazılımları hakkında genel bilgiler sunulmuş ve php-mysql işbirliğinden
bahsedilmiştir.
3.4.1. Donanım Bileşenleri 3.4.1.1. Phidget 1019 Deney Modülü Çoklayıcı
Çalışmada deney modülü çoklayıcı olarak kullanılan Phidget 1019 arayüz kartı,
üzerindeki 8 analog giriş, 8 dijital giriş ve 8 dijital çıkışı sayesinde değişik
aygıtların kontrolünü sağlar. Şekil 3.10’da görüldüğü gibi üzerindeki tümleşik 6
full-speed (12Mbit/s) USB portu, bu modüle diğer phidget ürünlerinin ya da
farklı USB aygıtlarının bağlanmasına imkân tanır. Kartın programlanması için
kullanılabilecek işletim sistemleri, Windows, Windows CE, Linux, and Mac OS X
35
iken, programlamak için VB6, VB.NET, C#.NET, C++, Flash 9, Flex, Java,
LabVIEW, Python, Max/MSP, and Cocoa dilleri kullanılabilir. Phidget 1019’un
bağlantısı, kontrol edecek bilgisayarın direkt olarak USB portu aracılığıyla
gerçekleştirilir.
Şekil 3.10. Phidget 1019 deney modülü çoklayıcı
Phidget 1019 ile uygulama gerçekleştirme ve test işlemleri için modül haricinde;
bir USB kablosu, güç kaynağı, dijital girişlerin testi için bir parça kablo, dijital
çıkışların testi için bir led diyot, analog girişlerin testi için bir analog sensör,
USB portun testi için başka bir Phidget ve ekstra bir USB kablosuna ihtiyaç
vardır. Phidget 1019 arayüz kartıyla diğer aygıtları bir araya getirmek için Şekil
3.11’ deki gibi bağlantılar yapılır.
Şekil 3.11. Aygıtları bir araya getirme ve kablo bağlantıları (Phidgets, 2012)
1) Phidget sensör kablosu kullanılarak, 3 nolu analog giriş portuna analog
sensör bağlanır.
1018 Deney Modülü Bağlantı Portları
Dijital Girişler
Dijital Çıkışlar
Analog Girişler
Güç Bağlantısı
36
2) USB kablosu kullanılarak, arayüz kartı bilgisayara bağlanır.
3) Kablonun bir ucunu sıfırıncı dijital port girişine, diğer ucu da şaseye
bağlanır.
4) Led diyotun uzun bacağı, dijital port çıkışlarından yedincisine, kısa olansa
şaseye takılır.
5) Arayüz kartının güç kaynağı bağlantısı gerçekleştirilir.
6) USB kablo aracılığıyla diğer phidget da bağlanır.
Analog girişler, sıcaklık, nem, pozisyon, basınç vb. gibi sürekli değişen
niceliklerin ölçülmesinde kullanılır. Phidget ailesi çok geniş bir sensör
kullanımına imkân tanır. Phidget ailesi içinde ulaşılabilecek sensör listesinin bir
bölümü Çizelge 3.4’te gösterilmiştir
Çizelge 3.4. Phidget sensör ailesi
Distance Sensor IR Refective Sensor Vibration Sensor Light Sensor
Force Sensor Humidity Sensor Temp. Sensor Magnetic Sensor
Rotation Sensor Voltage Divider Touch Sensor Motion Sensor
Slide Sensor Pressure Sensor Voltage Sensor Current Sensor
Dijital girişler, buton, switch, röle veya mantık seviyeleri kontrolü için
kullanılabilir. Dijital çıkışlar ise, led sürme, röle kontrolü, transistör kontrolü
kısaca CMOS sinyali kabul edecek herhangi bir şey için kullanılabilir. Dijital
çıkışlardan kontrol edilecek aygıtlar için +5V sağlanır.
Arayüz kartının ve bağlı aygıtların Windows işletimi sisteminde test işlemini
gerçekleştirmek için güncel kütüphanelerin kurulu olması gerekir. Eğer yüklü
değilse, phidgets.com/ drivers.php adresinden temin edilmelidir. Bu işlemden
sonra, görev çubuğunun sağ alt köşesinde phidget control panele ait ikon
görünecektir. Görev çubuğundaki simgeye çift tıklayınca kontrol paneli gelir. Bu
panel, yeni phidget ürününün doğru çalışıp çalışmadığını kontrol etmek için
kullanılır. Ayrıca, bağlanan modüle ait aygıt ismi, seri numarası ve versiyon gibi
özellikler de bu panelden izlenebilir. Sisteme bağlı örnek Phidget aygıtları için
37
kontrol paneli görüntüsü Şekil 3.12’de görülmektedir.
Şekil 3.12. Phidget arayüz kartı kontrol paneli
Kontrol panelinde herhangi bir hatayla karşılaşmamak için 1019 arayüz
kartının ve diğer phidget ürünlerinin doğru takılması gerekir. 1019 analog
girişleri, çok farklı türdeki sensörler için kullanılabilir. Phidget arayüz kartı,
sürekli değişen nicelikleri (sıcaklık, nem, pozisyon, basınç vb.) geri dönen voltaj
değerine göre hesaplar ve bunu uygulamaya raporlar. Şekil 3.13’te analog
bağlantı uçları görülmektedir.
Şekil 3.13. Analog bağlantı uçları (Phidgets, 2012)
Şekil 3.14 dijital girişin kullanım mantığını ortaya koymaktadır. Şekildeki
switch’i kapatmak, dijital girişin “1” değeri üretmesini sağlayacaktır.
Şekil 3.14. Dijital giriş için switch uygulaması (Phidgets, 2012)
38
Şekil 3.15 ise dijital bir çıkışın nasıl kontrol edilebileceğini örneklemektedir. Led
diyotun anot ucunu arayüz kartının 0-7 arasındaki dijital girişlerinden herhangi
birine, katot ucunu ise şaseye bağlamak yeterlidir.
Şekil 3.15. Dijital çıkıştan led kontrolü uygulaması (Phidgets, 2012)
6 portlu phidget 1019 arayüz kartı, gücünü USB’den değil, harici bir güç
kaynağından alır. Üzerindeki 6 port dolayısıyla, 1019 deney çoklayıcı
modülüne, diğer modülleri bağlamak son derece kolaydır. Her port maksimum
500mA temin edebilir. Bu USB hub aslında 7 adet porta sahiptir. Ancak bir
tanesi dâhili 1019 kontrolü için kullanılırken, diğerleri bağlanacak aygıtlar için
kullanılır. 1019 üzerindeki kullanılabilir port sayısında azalma olursa, yeni bir
deney çoklayıcı modül ilavesi yapılabilir.
Phidget kullanılmaya başlanmadan önce, kod içinde referans ekleme işlemi
yapılmalıdır.
import com.phidgets.Phidget;
import com.phidgets.events.*;
import com.phidgets.PhidgetInterfaceKit;
Daha sonra “phid = new PhidgetManager( );” ifadesiyle yeni bir phidget arayüz
kartı için nesne oluşturulması sağlanır. Nesne tanımlaması yapıldıktan sonra,
“phid.open(‘sunucuadresi’, portnumarası, ‘şifre’);” ifadesiyle open( ) fonksiyonu
kullanılırak söz konusu karta bağlanılmaya çalışılır ve konrol edilebilir. Lokal
projelerde ‘sunucuadresi’ localhost, ‘portnumarası’ 5001 ve şifre değeri boş
olacaktır.
39
Şekil 3.16’da phidget 1019 arayüz kartına ait mekanik çizim görülmektedir.
Şekil 3.16. Phidget 1019 mekanik çizimi (Phidgets, 2012)
3.4.1.2. Phidget 1018 Deney Modülü
Phidget 1018 arayüz kartı, üzerindeki 8 analog giriş, 8 dijital giriş ve 8 dijital
çıkışı sayesinde değişik aygıtların kontrolünü sağlar. Çalışmada, deney modülü
çoklayıcı olarak kullanılan Phidget 1019 arayüz kartı ile arasındaki fark,
üzerinde 6 tümleşik USB portunun bulunmaması, bunun yerine tek bir usb
bağlantı noktası barındırmasıdır. Bu bağlantı noktası da kendisinin kontrolü için
kullanılır. Phidget 1019 modül çoklayıcıda olduğu gibi, 1018 modülünde de her
analog giriş ve dijital giriş-çıkışlar ayrı ayrı kontrol edilebilir. Şekil 3.17’de
Phidget 1018 deney modülü görülmektedir.
Şekil 3.17. Phidget 1018 deney modülü
Dijital Çıkışlar
Dijital Girişler
Analog Girişler
1019 Bağlantı Noktası
40
Phidget 1018 mekanik çizimi de 1019 arayüz kartıyla Şekil 3.18’deki gibi
farklılık göstermektedir.
Şekil 3.18. Phidget 1018 mekanik çizimi (Phidgets, 2011)
3.4.2. Yazılım Bileşenleri 3.4.2.1. Veritabanı Araçları
Sunucu bilgisayarlar, temel olarak web sayfalarının içeriğini barındırmakta ve
bu sayfalara bağlanmak isteyen istemci bilgisayarların isteklerini
yanıtlamaktadırlar. Bu şekilde ortaya çıkan genel yapıya “istemci/sunucu
mimarisi” denilmektedir. Sunucu kavramı, İnternet hattına bağlı bir bilgisayar
ve bu bilgisayar üzerinde yüklü yazılıma karşılık gelir. İnternet hızı ve
performansın belirlenmesinde, sunucu olarak tercih edilen bilgisayarın
donanım özelliklerinin yanı sıra sunucu yazılımının tercihi de etkilidir (Irmak,
2007).
Bu çalışmada, veritabanı dosyalarını oluşturmak için, sunucu tabanlı ve HTML
(Hyper Text Markup Language) ile bir arada kullanılabilen PHP dili tercih
edilmiştir. PHP kodları metin dosyaları halinde kaydedilir ve kullanılacağı
ortamda bir yorumlayıcı tarafından yorumlanır. PHP scriptlerini çalıştırabilmek
için bu dili bilen bir programa ihtiyaç vardır. Bu programın tek başına (komut
istemci penceresinde veya terminal ekranında) çalışması mümkün olduğu gibi,
web sunucu tarafından da çalıştırılabilir olması gerekir. Web sunucular,
41
ziyaretçinin (internet istemci programının) talep ettiği ".htm" veya ".html"
uzantılı bir dosyayı, kendi sabit disklerinden doğrudan ziyaretçinin
bilgisayarına gönderir. Fakat ".PHP" uzantısı, web sunucusuna bu sayfayı olduğu
gibi ziyaretçinin tarayıcısına göndermek yerine, önce PHP yorumlayıcıyı
çağırarak ona teslim etmesi gerektiğini bildirir. PHP yorumlayıcısı (yani
Windows ortamında PHP.exe veya 4'ncü sürümle gelen PHP4isapi.dll) kendisine
teslim edilen bu belgede önce "<?PHP" ve "?>" ayraçları arasındaki PHP
kodlarını seçerek alır ve gerekli işlemleri yapar. Bu ayraçların içinde kalan
kodlar, yapılması istenen işlemin komutlarıdır. Bu işlem sonunda ortaya çıkan
ürün eğer ziyaretçiye gönderilecekse, HTML etiketleri içinde gönderilir; yani
ziyaretçi PHP kodlarını görmez (Irmak, 2007). Bu çalışmada, veritabanı
işlemlerinini yapılabilmesi için MySQL Server yazılımı tercih edilmiştir.
SQL (Structured Query Language, Yapısal Sorgu Dili) veritabanı endüstrisinin
standart dilidir. MySQL, sunucuda ‘bekletici program’ olarak çalışır ve arzu
eden programa, bildireceği veritabanı dosyasından veri çekerek sunar. Bir
veritabanında farklı sayıda tablolar olabilir. Veritabanı dosyasında yer alan
tablolarda, sütunlar ve satırlar vardır: bunların kesiştikleri yerlere veriler
yazılır. Bir SQL veritabanı dosyasında her bir kutunun ne tür veri kabul edeceği
önceden belirlenir. MySQL, sayısal verilerin türünü INT, belirli bir sınıra kadar
değişen sayıda karakterden oluşacak verilerin türünü VARCHAR komutuyla
belirler (Irmak, 2007).
Oluşturulmuş bir tabloya INSERT INTO komutuyla veri girilebilir: INSERT INTO
uyeler (adsoyad, sifre) VALUES ('user1','1234')
SELECT komutu MySQL veritabanından bilgi edinmek için kullanılır: “SELECT *
FROM yonetici”. Bu komut ile MySQL'e, yonetici adlı tablodaki tüm değerlerin
okunması bildirilir. Bu ifadedeki ‘*’ işareti, "sütunlardaki tüm değerler"
anlamına gelir. Veritabanındaki güncelleme işlemleri için UPDATE komutu
kullanılır. Veritabanı bilgilerini güncelleme zorunluluğunun bulunması,
veritabanı tasarımının çok önemli olduğunu gösterir. Uyeler tablosundaki bütün
42
satırlarda, adsoyad sütunundaki değerleri "deneme" olarak değiştirmek için şu
komut kullanılır: UPDATE uyeler SET adsoyad = "deneme" ;
Çoğu kez MySQL'e hangi kayıtlarda değişiklik yapılacağı daha ayrıntılı bildirilir.
Bunun için veritabanı dosyası oluşturulurken, her kaydın diğer kayıtlarda
olmayan alanı bulunmalıdır (Irmak, 2007). Örneğin;
UPDATE uyeler SET adsoyad= "userdeneme" WHERE uye_no = 1;
MySQL yukarıdaki komutu alınca, sadece üye numarası 1 olan kişinin (yani
uye_no alanındaki değeri 1 olan kaydın) "adsoyad" alanındaki değeri silecek ve
yerine yeni değeri (userdeneme) yazacaktır. Böylece birincil alanı bulunan bir
veritabanından seçim yapmak son derece kolay olmaktadır. Örneğin:
SELECT adsoyad FROM uyeler WHERE uye_no >= 10; deyimi ile üyeler
tablosunda bulunan kayıtlardan sadece üye numarası 10'den büyük ve 10’a eşit
olanlar seçilebilir.
Veritabanındaki bir kaydı silmek için DELETE komutu kullanılır:
DELETE FROM uyeler WHERE uye_no = 10;
Bu kod ile uyeler tablosunda bulunan, uye_no alanı 10 olan kaydın silinmesi
sağlanmaktadır.
PHP ile veritabanına ulaşabilmek için veritabanı dosyası ile bağlantı kurulması
gerekir. Başka bir deyişle, PHP programının veri ile arasında bir yol açması
gerekir. MySQL açısından ise bu bağlantı, veri sunucusunda yeni bir oturum
açılması anlamına gelir. İki program arasındaki bu ilişkiyi PHP'nin
mysql_connect() fonksiyonu yapar. Bu fonksiyonun alabileceği üç parametre
vardır (Irmak, 2007):
$path = mysql_connect ("localhost" , "root" , "parola" );
43
Burada "localhost" yerine sunucunun adı yazılır. "root" açılacak oturumun kimin
adına açılacağını belirler. "root" kelimesi, sunucunun yönetici olarak oturum
açılacağı anlamına gelir. "parola" kelimesinin yerine de MySQL'i kurarken
belirlenen bir kullanıcı parolası varsa, o yazılır. Bu komutta yer alan $path
değişkeni, açılacak veri yolunun, PHP ile MySQL veritabanı sunucusu arasındaki
bağın tanıtıcı işareti olacaktır. Bu bağlantı kurulduktan sonra, açılan veri
yolundan gelecek bilgiler ve veritabanına gidecek bilgiler bu değişken
aracılığıyla gerçekleşecektir. Veri sunucusu ile veri yolu bağlantısı kurulursa, bu
değişken değer tutar hale gelir; bağlantı kurulamazsa bu değişken boş kalır.
mysql_connect() fonksiyonunun başarılı olup olmadığı bu değişkenin durumu
sınanarak anlaşılabilir (Irmak, 2007). Örneğin:
$path =mysql_connect("localhost", "root");
if ( ! $path) die ("Veri bağlantısı kurulamıyor!);
Burada web sunucusunun adının "localhost" olduğuna, ve oturumun "root"
yetkileriyle açıldığına dikkat edilmelidir. İkinci satırdaki if deyimi, $path
değişkeninin değer içerip içermediğine bakar ve değişkende bir değer yoksa,
bağlantı kurma girişini durdurarak, ziyaretçiye hata mesajı gönderir.
3.4.2.2. Adobe Flash Builder (Flex)
Projede kullanılacak USB modülleri için phidget firması ürünleri tercih edildi.
Phidget firmasının resmi web sayfasındaki bilgiler doğrultusunda, donanımsal
ürünlerin programlanmasını destekleyen yazılımlardan Adobe Flash Builder
ürününün kullanılmasına karar verildi.
Flex, macromedia ürünü olup, mxml ile actionscript dillerini kullanan ve flash
player ile internette uygulama geliştirmeyi sağlayan bir yapıdır. Flex, sunucu-
istemci tabanlı çalışır, mxml ve actionscript dilleri ile flex sınıf kütüphanelerinin
bir arada bulunduğu bir teknolojidir. Flex, adobe flash player ve adobe air ile bir
arada çalışır. Tüm tarayıcılarda çalışabilme ve etkileyici web uygulamaları
oluşturmaya imkân tanıyan özellikleri vardır. Flex uygulamaları sadece flex
44
framework ile oluşturulabilir ve adobe firması bu framework üzerinde hızlı kod
yazma ve hata ayıklama olanağı sunan adobe flash builder yazılımını
geliştirmiştir. Web siteleri için flash dosyaları geliştirenler adobe flash builder
yazılımı ile asp, jsp ve php dillerini kullanarak güvenli web tabanlı projeler
geliştirebilirler. Ziyaretçiler sadece swf formatındaki flash dosyaları görürler.
Macromedia studio mx ile yayın hayatına başlayan Ria (rich internet
applications), web uygulamalarının masaüstü uygulamaları kadar işlevsel
olması için geliştirilmiştir. Ria uygulamaları oluşturmak için Adobe flash Builder
en iyi çözümdür. Karmaşık verilerle çalışan geniş çaplı web uygulamalarının,
performans kaybı olmadan ve programcıyı zorlamadan flash player
platformunda gerçekleştirilmesini sağlar.
Adobe Flash Builder yazılımın bazı avantajları şu şekilde sıralanabilir:
MXML, ActionScript ve CSS (Cascading Style Sheets) editörlerinden,
renkli sözdizimi, ifade tamamlama; adım adım hata ayıklama gibi güçlü
kod yazma araçlarına sahiptir.
Kullanıcı arabirimi yerleşim düzenini ve görünümünü zengin bir
kütüphaneyi kullanarak görsel olarak tasarlamayı ve önizlemeyi sağlar.
Charting kütüphanesi aracılığıyla veri panoları ve etkileşimli veri analizi
bileşenleri oluşturulabilir.
Skin ve stil oluşturma avantajı vardır.
Sınıflara, değişkenlere ve metotlara ait referanslar bulunabilir ve yeniden
adlandırılabilir.
Masaüstü bileşenleri ve Adobe AIR (Adobe Integrated Runtime)
geliştirme araçları kullanılarak RIA'larla aynı özelliklere sahip masaüstü
uygulamaları oluşturulabilir.
HTTP aracılığıyla XML (Extensible Markup Language) verileri istenebilir
ya da Web servisi çağırılabilir.
Adobe Flash, Illustrator, Photoshop ve Fireworks yazılımları için
tasarlanan Flex Skin Design eklentileriyle Creative Suit entegre edilerek,
kullanıma hazır bileşenler Flex’e hızlı bir şekilde aktarılabilir.
45
3.4.2.3. Adobe Flash Media Server
Adobe firmasının geliştirmiş olduğu FMS program ailesi; sunucu taraflı
uygulamalarda, sunucu tarafında daima çalışması gerekenleri çalıştırarak
kullanıcılara hizmet vermektedir.
Gerçek zamanlı ses, görüntü yayını sayesinde MMS (Microsoft Media Server)’ ye
alternatiftir. Gerçek zamanlı olarak sesli ve görüntülü iletişim için kullanıcılara
gerekli ortamları sağlayabilir. Kullanıcı sayısı artırılabilir ve anlık olarak yayını
takip edenler denetlenebilir ve görülebilir. Böylelikle, gerçek zamanlı olarak
sohbet, iletişim ve yazışma alanları kurulabilir ve yönetilebilir. Adobe AIR ve
Adobe Flash üzerinde portal, forum veya çeşitli web uygulamaları geliştirilerek
yayınlanabilir. Şekil 3.19’da adobe FMS arayüzü görülmektedir.
Şekil 3.19. Adobe flash media server arayüzü
FMS’ ye doğru kullanıcı adı ve şifre ile giriş yapıldığında Şekil 3.19’ da görülen
arayüz ile karşılaşılır. View applications düğmesiyle, o anki çalışan uygulamalar
görüntülenir. Stream düğmesiyle de, yapılan yayınlara ait bilgilere ulaşılır.
Şekilde 1 numarada gösterilen kısım, yayınların isimlerini ve türlerini; 2 numara
ile gösterilen kısım ise söz konusu yayının saat ve tarih bilgilerini
göstermektedir.
1 2
46
3.4.2.4. Adobe Flash Media Encoder
Adobe Flash Media Encoder, kaliteli bir şekilde görüntü ve ses yakalamak üzere
Adobe tarafından ücretsiz olarak sunulan, gelişmiş bir programdır.
Ses veya video dosyaları oynatılırken Flash media encoder ile aynı anda video
dosyalarından görüntü yakalanabilir ve bilgisayara kaydedilebilir. Webcam,
canlı video görüntüleri gibi pek çok ortamdan görüntü ve sesi yakalayabilen
program, kamera ve mikrofon desteği, eklenti desteği ve Flash Video gibi pekçok
teknoloji ile paralel çalışmaya da izin vermektedir.
Şekil 3.20’ de adobe flash media encoder arayüzü görülmektedir.
Şekil 3.20. Adobe flash media encoder arayüzü
Flash media encoder ilk çalıştırıldığında Şekil 3.20’deki gibi bir arayüz
görüntülenir. 1 numara ile işaretlenmiş alanda, görüntü kaynağından alınan
verinin yayından önceki ve sonraki önizlemeleri vardır. 2 numara ile
işaretlenmiş alanda ise, görüntü kaynağı seçimi yapıldıktan sonra, video ve sese
ait ayarlar düzenlenir. Son olarak connect butonuyla server’a bağlantı
gerçekleştirilir ve start butonuyla da yayın başlatılmış olur.
1
2
47
4. ARAŞTIRMA BULGULARI
Bu bölümde, sistemin başlatılması için yapılması gereken adımların yanı sıra;
sisteme giriş, sunucuya bağlanma, kullanılabilir deney modülleri listesine erişim
ve kamera görüntüleme kullanıcı arayüzleri ile yöneticiye ait raporlama
arayüzlerinin yapıları ve kullanım özellikleri anlatılmaktadır. Ayrıca, sistemin
tak&çalıştır özelliğini aktif etmek ve deney modüllerini çoklayabilmek için
yapılan çalışma sonuçlarına da yer verilmiştir.
4.1. Sistemin Başlatılması İçin Yapılması Gerekenler
Kullanıcıların sisteme erişmesi ve sistemi problemsiz kullanabilmesi için
öncelikle, sistem yöneticisinin aşağıda bahsedilen sunucu tarafındaki
düzenlemeleri tamamlayarak sistemi başlatması gerekir. Sunucu hatası
olmaması için phidget web service hizmetinin çalışıyor olması gereklidir.
Phidget sunucusunun aktif olması sağlandıktan sonra, sisteme bağlı
kullanılabilir deney modüllerinin hazır bulunması, artık kullanıcıların sisteme
doğru bir şekilde erişebileceği anlamına gelir. Sistemin başlatılabilmesi için
sunucu tarafında yapılması gereken işlem adımları şöyledir:
1. Görüntüyü FMS’ ye göndermek amacıyla media encoder’dan Şekil 4.1’de
gösterildiği gibi start butonuna basılması.
Şekil 4.1. Flash media encoder ile flash media server’a video startı
Bu işlemle birlikte, FMS’ nin stream edeceği video transfer edilmiş olur.
48
2. Flash media server hizmetlerinin Şekil 4.2’de gösterildiği gibi başlatılması.
Şekil 4.2. Flash media server hizmetlerinin başlatılması
Denetim masasının, yönetimsel araçlar bölümünde, hizmetler kısmına girerek,
flash media administration server ve flash media server hizmetleri “hizmeti
başlat” linkiyle başlatılır. Böylelikle FMS’ye giriş yapılabilir ve stream işlemi
başlatılabilir.
3. Phidget web servisinin Şekil 4.3’te gösterildiği gibi başlatılması.
Şekil 4.3. Phidget web servisinin başlatılması
Phidget web servisinin başlatılmasıyla, phidget arayüz kartlarının tak çalıştır
kontrolü için ilk işlem gerçekleştirilmiş olur. Phidget web servisinin başlatılması
işlemi, FMS hizmetlerinde olduğu gibi, denetim masasının, yönetimsel araçlar
49
bölümünde, hizmetler kısmından da yapılabilir. Herhangi bir sunucu
probleminde, hizmetin kontrol panelinden veya denetim masasından tekrar
başlatılması gerekebilir. Bu işlemden sonra, kontrol panelinin general
sekmesinde sunucuya bağlı modüllerin listesi de Şekil 4.4’teki gibi görülebilir.
Şekil 4.4. Phidget kontrol panelindeki modül listesi
Phidget kontrol panelindeki modüller, sisteme o anda bağlı phidget aygıtlarının
listesidir. Kontrol panelindeyken, herhangi bir phidget aygıtı seçildikten sonra
gelen ekranda, söz konusu aygıtın testi gerçekleştirilebilir. Sisteme bağlı bir
phidget aygıtının, sistemle bağlantısı kesilirse, o aygıt kontrol paneli listesinden
kaybolacaktır; bağlantının tekrar sağlanması durumunda ise söz konusu aygıt
tekrar kontrol panelindeki yerini alacaktır.
4.2. Kullanıcı ve Yönetici Arayüzlerinin Tasarımı ve Özellikleri
Hazırlanan sistemde, kullanıcıların deney modüllerine erişebilmesi için,
öncelikle sisteme kendilerine ait kullanıcı ad ve şifreleriyle giriş yapmaları
gerekmektedir.
Sisteme giriş yapabilecek olan kullanıcılar yönetici tarafından belirlenmektedir.
Kullanıcı adının veya şifrenin hatalı girilmesi durumunda, kullanıcı hata
50
mesajıyla uyarılmaktadır. Kullanıcılara ait kullanıcı adı, şifre, ad ve soyad
verileri, mysql veritabanında kisiler adlı tabloda tutulmaktadır.
Kullanıcının sisteme giriş yapabilmesi için karşılaştığı giriş sayfası Şekil 4.5’te
görülmektedir.
Şekil 4.5. Kullanıcı giriş sayfası
Kullanıcının sistemi kullanabilmesi için oluşturulmuş olan bu giriş formu için
login_user adında Şekil 4.6’daki gibi bir HTTPService yazılmıştır.
Şekil 4.6. Kullanıcı girişi için yazılmış HTTPService
Kullanıcı girişi için yazılan bu HTTPService ile proje klasörü içinde yer alan
kontrol.php dosyasına, kad ve sifre text alanları içindeki veriler, username ve
password değişken adlarıyla gönderilmektedir.
kontrol.php dosyasında ise, gelen kullanıcı verilerinin doğru olup olmadığı
kontrol edilir. Kullanıcı verileri hatalı ise “Kullanıcı Adı veya Şifre Hatalı” mesajı
51
görüntülenir. kontrol.php dosyasına veriler gönderildikten sonra çalıştırılan
sorgudan dönen değerler Şekil 4.7’deki gibi değerlendirilir ve gerekli
yönlendirmeler yapılır.
Şekil 4.7. Giriş formu değerlerinin kontrolü
Kullanıcı giriş formunu eksiksiz doldurup, giriş butonuna bastıktan sonra,
sunucuya bağlanmak için gerekli sayfaya gelir, aksi takdirde kullanıcı giriş
formuna tekrar döndürülür. Bilgileri doğru olan kullanıcı, Şekil 4.8’deki deney
modülleri bağlantı arayüzü sayfasında ad ve soyad bilgisiyle karşılanır. Bu
arayüzde kullanıcı, bağlanılabilir deney modülleri listesine ulaşmak için,
“Kullanılabilir modülleri görmek için tıklayın” bağlantısına tıklar.
Şekil 4.8. Sunucuya bağlanma ve modülleri listeleme
52
Kullanıcı, karşısına gelen listeden bağlanılabilir durumdaki istediği herhangi bir
modüle, kontrol sütunundaki ”BAĞLAN” linkbutonuyla bağlanır. Deney
modülünün bağlanılabilir olması demek, o anda sunucuya bağlı olması ve başka
bir kimse tarafından kullanılmıyor olması demektir. Bu değerlendirmeler,
hazırlanan sistemde, veritabanı aracılığıyla yapılmaktadır. Kullanıcı erişmek için
herhangi bir devreyi seçtiğinde devre_baglan( ) fonksiyonu çağrılır Şekil
4.9’daki satırlar okunur.
Şekil 4.9. Seçilen modüle bağlanma fonksiyonu
Bu fonksiyon ile çalıştırılan secilen_devreyi_kontrol isimli HttpService söz
konusu devreye ait seri numarasını veritabanı sorgusuna yollar ve kontrol
edilebilirliğini denetler. Eğer kullanıma müsaitse, kullanıcı Şekil 4.10’daki
modül kontrol sayfasına yönlendirilir; değilse “Bu modül kullanılmaktadır,
bağlanılabilir bir modül seçin lütfen” mesajıyla uyarılır. Modül kontrol sayfasına
yönlendirilen kullanıcı, seçtiği modüle bağlı led grubuna ve modülü
görüntüleyen kameraya erişmiş olur. Çalışmada led grubu, deney modülü giriş
çıkış özelliklerine uygun her çeşit deney düzeneğini temsil etmektedir.
Şekil 4.10. Deney modülüne erişim, kontrol ve görüntüleme sayfası
53
Led grubu, phidget 1019 ve 1018 deney modüllerinin dijital çıkışlarına
bağlanmıştır.
Hazırlanan sistemde her modüle farklı bir kamera tahsis edilmiştir. Böylelikle,
kullanıcının yalnızca eriştiği modülü görmesi sağlanmış ve daha efektif bir
etkileşimin gerçekleştirilmesine imkân tanınmıştır. Erişilen video yayını, adobe
flash media encoder tarafından hazırlanarak FMS tarafından stream edilen
yayındır. Bu yayın, Flex ile hazırlanan modül görüntüleme arayüzündeki
videodisplay nesnesi için kaynak oluşturur. Kulanıcı söz konusu modülle
uygulamasını yaptıktan sonra sağ üst köşede bulunan çıkış yap link butonuyla
sistemden logout olur ve kullandığı devreyi serbest bırakır. Bunun için
hazırlanan logout_service isimli HTTPService, Şekil 4.11’deki gibi devre
numarasıyla birlikte yollanır.
Şekil 4.11 Logout servisinin yollanması
Kullanıcı, modül görüntüleme sayfasının sağ üst köşesindeki çıkış yap link
butonuyla, sistemi terk ettiğinde, söz konusu deney modülünün veritabanı
değerleri güncellenerek yeniden erişilebilir konuma getirilir. Hem kontrol hem
de veritabanı işlemleriyle ilgili açıklayıcı kodlara, araştırma bulgularının
ilerleyen bölümlerinde yer verilmiştir. Şekil 4.12’de ise led grubunun
kontrolüne ait örnek kod bulunmaktadır.
Şekil 4.12. Led grubu kontrolü örnek kodları
54
Led grubu kontrolü için hazırlanan arayüzde, her led bir onay kutusu
(checkbox) ile kontrol edilmektedir. Onay kutusunun işaretlenmesi söz konusu
led diyota enerji verileceği anlamına gelir.
Led grubu kontrolü örnek kodları şeklinde gösterildiği gibi, her led için ayrı ayrı
id belirlenmiştir. Fonksiyona gelen id değişkeninin değerine göre, deney
modülünün setOutputState isimli fonksiyonu çağırışır. Onay kutusunun
işaretinin kaldırılması söz konusu led diyotun söndürülmesi demektir.
Sistemde, kullanıcı ekleme ve çıkarma işlemlerini yapan, kullanıcıların ne zaman
hangi devreye eriştiğini gözlemleyebilen bir yönetici vardır. Yönetici kendi
kullanıcı adı ve şifresiyle giriş formunu geçtikten sonra, karşısına Şekil 4.13’teki
sayfa gelir.
Şekil 4.13. Yönetici karşılama sayfası
Yönetici karşılama sayfasında, geçmiş işlemler ve mevcut işlemler başlıklı iki
adet tablo vardır. Birinci tablo, “kullanıcı”, “modül”, “tarih”, “saat” sütunlarından
oluşmaktadır. Hangi modüle bağlanıldığı seri numarası ile tespit edilmektedir.
Kimin bağlandığı ise kullanıcı adı ile tutulmaktadır. Kullanıcı tarafından erişimin
ne zaman gerçekleştirildiği ise tarih ve saat bilgileriyle görüntülenmektedir.
55
Yönetici sisteme giriş yaptıktan sonra, verileri çekmesi için yazılan http servis
çağrılır ve veriler grid içerisine Şekil 4.14’te görülen örnek kodlarla doldurulur.
Şekil 4.14. Yönetici verileri grid kodları
İkinci tabloda ise, yönetici sisteme giriş yaptığı anda aktif olarak deney modülü
kullananların ad soyad ve kullandığı deney modülü bilgisi bulunmaktadır.
4.3. Tak&Çalıştır Özelliğini Aktif Etme Çalışmalarının Sonuçları
Sistemin tak&çalıştır özelliğini gerçekleştirebilmek için çok ayrıntılı bir çalışma
ve araştırma yapıldı. Bu çalışmalar sonunda uygun arayüz kartına phidgets
firmasında rastlandı.
Phidget firmasının 1019 kodlu arayüz kartında 6 adet tümleşik USB port
bulunmaktadır. 1018 kodlu arayüz kartında ise sadece kendisiyle iletişim
kurulmasını sağlayan bir USB bağlantısı vardır. Tak&çalıştır temelli modül
tasarımı için 1018 modüllerinin 1019 modülüne bağlanması düşünülmüş ve bu
düşünce başarıyla sonuçlandırılmıştır.
Phidget ailesindeki tüm aygıtlar birbiriyle tak&çalıştır temelli iletişim kurabilir.
Bunun için gerekli kütüphanelerin doğru kullanılması gerekmektedir.
Sistemimizde, arayüz kartlarının web üzerinden kontrolü adobe flash builder ile
gerçekleştirilmiş ve bunun için de “phidget web service” hizmetinden
faydalanılmıştır.
Phidget aygıtlarının tak&çalıştır özelliğini aktif etmek için kütüphaneden; server
için onconnect( ) ve ondisconnect( ) fonksiyonları ve ardından aygıtlar için
56
onattach( ) ve ondetach( ) fonksiyonlarının doğru kullanılması gereklidir. Şekil
4.15’te sunucuya bağlanmak için bağlan butonuna basıldığında çağrılan
connect( ) fonksiyonunun içeriği görülmektedir.
Şekil 4.15. Server bağlantısı ve ilgili olayların ilavesi
Yazılan connect( ) fonksiyonuyla phidgetManager( ) sınıfından phid ismiyle
örnekleme yapılmış ve bu örneklemeye, CONNECT, DETACH, ATTACH,
DISCONNECT olayları; onConnect, onDetach, onAttach ve onDisconnect
isimleriyle olay listesine eklenmiştir. Son olarak da server adresi ve port
numarası verileriyle “phid” örneği açılmıştır.
Burada, tak&çalıştır sistemi için gerekenler onAttach( ) ve onDetach( )
fonksiyonları ile gerçekleştirilmektedir. Sisteme bir phidget aygıtı
bağlanıldığında onAttach( ) fonksiyonu çağrılır ve bu fonksiyon içinde Şekil
4.16’daki kodlar çalıştırılır.
Şekil 4.16. Aygıt bağlandığında çalışan fonksiyon
Şekil 4.16’da görülen amac_no değişkeni, hazırlanan baglanti_update isimli
HttpService için yollanacak bir veridir. Aynı zamanda d_no yani devrenin seri
numarası da yollanacak bir diğer veridir. Amac_no değişkeninin “1” değerini
alması, veritabanında söz konusu devrenin “baglanti” alanının “evet” yapılacağı
57
anlamına gelmektedir. Sistemden bir phidget aygıtı ayrıldığında ise onDetach( )
fonksiyonu çağrılır ve bu fonksiyon içinde Şekil 4.17’deki kodlar çalıştırılır.
Şekil 4.17. Aygıt ayrıldığında çalışan fonksiyon
onDetach( ) fonksiyonundaki amac_no değişkeninin bu kez “2” değerini alması
baglanti_update HttpService’inin ilkinden farklı bir değer yollayacağı anlamına
gelir. Amac_no değişkeninin “2” değerini alması, veritabanında söz konusu
devrenin “baglanti” alanının “hayir” yapılacağını ifade etmektedir.
4.4. USB Sistemi Çoklayabilmek İçin Yapılan Çalışma Sonuçları
Sistemin tasarım aşamasında, üzerinde iletişim arabirimi olarak USB portu
bulunduran arayüz kartları arandı. Fakat aranan bu arayüz kartının
çoklanabilmesi ve USB protokolünün bu avantajından faydalanılabilmesi için,
kart üzerinde birden fazla USB portu bulunmalıydı. Bu yüzden Kanada merkezli
phidgets firmasının modüllerinde karar kılındı.
Phidget 1019 kodlu deney modülü üzerinde 6 adet tümleşik USB port
bulunmaktadır. Bu portlardan her birine 1018 kodlu bir modül gibi USB arayüz
kartları takılabilir. Takılan bu kartlar, 1019 tarafından hub mantığıyla çalıştırılır
ve sistem tarafından tak&çalıştır olarak kullanılabilir. 1019 modülüne 1018
modüllerinin bağlanmasının yanı sıra 1019 çoklayıcı modülün de
bağlanmasıyla, 6 adet 1018 ve 1 adet 1019 olmak üzere toplamde 7 adet deney
modülünün kontrol edilmesi sağlanabilir. Her bir modülde 8 adet analog giriş, 8
adet dijital giriş ve 8 adet dijital çıkış olduğu düşünülürse elverişli bir model
ortaya çıkar. Ancak, tasarlanan sistemde olması istenen model bu değildir.
Olması istenen modelde, USB modüllerinin, USB chain (zincir) mantığının
müsaade ettiği ölçüde çoğaltılabilmesi söz konusudur. Bunun için, mevcut 1019
modülüne, her seferinde en az bir tane daha 1019 modülünden bağlanmalıdır.
58
Böylelikle, kontrol edilebilir port sayısında çoğalma yapılabilir. Temsili görüntü
Şekil 4.18’de görülebilir.
Şekil 4.18. 1019 ve 1018 modüllerinin bağlanması
Phidget modüllerinin çoklanması, kartların ayrı ayrı kontrol edilebilmesi
sebebiyle ekstra bir programlama güçlüğü oluşturabilir. Ancak bunun önüne
geçmek için kütüphanelerin etkin şekilde kullanılması gerekmektedir.
Hazırlanan sistemde, çoklu kontrol için phidgetManager( ) kütüphanesinden,
eklenen ya da çıkarılan her bir kart içinse PhidgetInterfaceKit( )
kütüphanesinden faydalanılmıştır.
Kullanıcının herhangi bir devreye bağlanmak istemesi durumunda, yapılan ilk
iş, o devrenin kullanıma müsait olup olmadığının belirlenmesidir. İkinci iş ise,
kullanıma müsait olan deney modülüne bağlantı gerçekleştirildiğinde, o
devrenin söz konusu kullanıcı serbest bırakıncaya kadar veritabanındaki
kontrol edilebilme değerinin negatife dönüştürülmesidir. Kullanıcı deney
modülü ile işlemini gerçekleştirdikten sonra, sistemden çıkış yapacak ve
59
kullanmış olduğu modül serbest bırakılacaktır. Bu işlemler veritabanı
aracılığıyla gerçekleştirilmektedir.
Sisteme yeni bir modül eklendiğinde ya da çıkarıldığında “sunucuya bağlanma
ve modülleri listeleme” arayüzü bölümünde detayı verilen ekrandaki listede bir
değişim olmaktadır. Ekleme yapıldığında, onAttach( ) fonksiyonu çağrılır ve yeni
modül erişim listesine otomatik olarak eklenir. Çünkü erişilebilir modüllere ait
veri kaynağı olay güdümlü programlama sayesinde değişecektir.
Herhangi bir modül çıkarıldığında ise, onDetach( ) fonksiyonu çağrılır ve modül
erişim listesinden söz konusu modül çıkartılır. Tüm bu işlemler kütüphanelerin
doğru kullanımıyla ilgilidir.
Deney modüllerine birbirinden bağımsız olarak erişmek, seri numaraları ile
iletişim kurmakla gerçekleşir. Modüllerin ekleme ve çıkarım aşamasında çalışan
örnek veritabanı kodu ekler bölümünde verilecektir.
Bir modül eklendiğinde ya da çıkarıldığında onAttach( ) ve onDetach( )
fonksiyonlarından, bağlantıları güncelleyecek olan veritabanı kodları
çalıştırılmadan önce, modüle ait seri numarası ve yapılacak işlemi belirten
amac_no değişkenleri elde edilir. Bu değişkenler daha sonra yazılan
HTTPService aracılığıyla sunucudaki veritabanı sayfasına yollanır. Bu sayfada
gelen değerler post edilir ve amaç tespit işlemi yapılır. Amac_no değişkeninin
“1” olması durumunda daha önce “hayir” olan baglanti alanı Şekil 4.19’da
görüldüğü gibi “evet” olarak güncellenmektedir.
Şekil 4.19. Modül bağlantı durumunun değiştirilmesi
60
Diğer deney modüllerinin baglanti alanı ise “hayir” olarak kalmakta ve
müdehale edilmemektedir. Çağırılan HTTPService değerleri ile, diğer devrelere
ait durumlar da kullanıma bağlı olarak değişmektedir.
61
5. TARTIŞMA VE SONUÇLAR
İnternet teknolojilerinin gelişmesi, elektronik sistemlerin uzaktan kontrolü,
izlenmesi ve bakımları için yeni imkânlar sunmuş ve uygulama alanlarının hızlı
biçimde genişlemesini sağlamıştır.
Bu yüksek lisans tezinde, elektrik-elektronik ve bilişim teknolojileri
eğitimlerinde kullanılabilecek, analog ve sayısal temelde hazırlanabilecek deney
düzeneklerinin web tabanlı olarak uzaktan erişilmesi ve kontrol edilmesi
amacıyla aşağıdaki özelliklere sahip bir sistem tasarımı gerçekleştirilmiştir.
Uzak laboratuarlarda, sisteme müdahale etmeden, mevcut bağlantı ve
çalışmalar gerçekleştirilirken, sisteme yeni donanımsal deney modüllerinin
eklenmesi veya sistemden çıkartılması sistemin sürdürülebilirliği açısından
önem arz etmektedir. Bu ihtiyaç, çalışmada USB tak&çalıştır özelliği kullanılarak
gerçekleştirilmiştir.
Çalışma ilerlerken, sistemi birbirinden bağımsız kameralarla izlemek için
araştırmalar yapılmış, bunun için görüntüleme ve yayınlama sistemleri
araştırılıp, Adobe Flash Media Server ve Media Live Encoder işbirliğinde karar
kılınmıştır. Her deney modülünün kullanımı sırasında farklı kameralarla
görüntülenerek izlenebilmesi sağlanmıştır.
Çalışma kapsamında yapılan tasarımda, Phidget 1019 ve 1018 USB deney
modülleri kullanılmış ve bu modüllerin özellikleri WTUE ihtiyaçlarına uygun
biçimde programlanarak kontrol edilmiştir. Deney setlerinin tak&çalıştır temelli
çalışabilmesi ve çoklanabilmesi için USB protokolünün avantajlarından
faydalanılmıştır. Sistem için, alınan deney modüllerinden olan phidget 1019,
üzerinde 6 tümleşik USB port bulundurmaktadır. Diğer deney modülü olan
phidget 1018’in ise 1019 üzerindeki portlara bağlanması ve bu şekilde sayının
arttırılması amaçlanmıştır. Portların tümünün kullanılması durumunda ise yeni
bir 1019 modülünün ilavesiyle, 6 yeni USB port kullanıma açılabilmektedir.
62
Böylelikle sistemin çoklanabilirliği sağlanmıştır. Çalışma sonunda, üç modüllü
bir prototip gerçekleştirilmiştir.
1018 deney modüllerinin, analog ve dijital giriş ve çıkışları için tasarlanacak
elektronik devreler ile, bilişim ve elektronik alanındaki birçok ders için çok
sayıda uzaktan erişilebilir deney düzeneklerigeliştirilmesine olanak verilmiştir.
Uzak laboratuarda tasarlanan yönetim ve kullanıcı arayüzleri ile bir öğrenme
yönetimi sisteminin temel özelliklerini sağlamaktadır.
Araştırma sonunda, USB teknolojisi ve özelliklerinin, uzak laboratuarlar için
uygun olduğu anlaşılmıştır. Daha sonraki çalışmalarda, USB 3.0 teknolojisiyle
ayrı bir tasarım yapılması, belirlenecek ders ve uygulamalara yönelik deney
düzenekleri oluşturulması ve daha gelişmiş bir LMS (Learning Management
System) yazılımı bu çalışmayı ileriye taşıyacaktır.
63
KAYNAKLAR
Alhalabi, B., Marcovitz, D., Hamza, K., Hsu, S., 2000. Remote Labs: An Innovative Leap in The World of Distance Education. Proceedings of The 4th World Multiconference on Systemics, Cybernetics and Informatics SCI (2000) and the 6th International Conference On Information Systems, Analysis and Synthesis (ISAS 2000), July 23-26, Orlando.
Anderson D., 2001. USB System Architecture. Addıson-Wesley Developer’s
Press, 506, United States of America. Atıcı, B., 2000a. Bilgisayar Destekli Asenkron İşbirlikli Öğrenme Yönteminin
Sınıf Yönetimi Dersinde Öğrenci Başarısına Etkisi, Fırat Üniversitesi, Sosyal Bilimler Enstitüsü, Yayımlanmamış Yüksek Lisans Tezi, Elazığ.
Atıcı, B., 2000b. Öğretmen Eğitiminde Yeni Bir Olanak: WWW ve Sosyal
Oluşturmacılık. II. Ulusal Öğretmen Yetiştirme Sempozyumu, Çanakkale. Axelson, J., 2005. USB Complete:Everything You Need to Develop Custom USB
Peripherals, 3rd ed., Labview Research, 572 p, Madison, USA. Buldu, A., 2003. Mikrodenetleyicili USB Eğitim Sistemi. Marmara Üniversitesi,
Fen Bilimleri Enstitüsü, Doktora Tezi, 141s, İstanbul. Büyükkaragöz, S., Çivi, C., 1994. Genel Öğretim Metotları, Atlas Kitabevi, Konya. Cavanaugh, C.S., 2001. The Effectiveness Of Interactive Distance Education
Technologies in K-12 Learning: A Meta-Analysis, International Jl. Of Educational Telecommunications, 7(1), 73-88.
Cavanaugh, C. (2002). Distance Education Quality: Success Factors for Resources, Practices and Results. In Discenza, R., Howard, C., Schenk, K.(Eds.), The Design and Management of Effective Distance Learning Programs(171-189. Hershey, PA: Idea Group Press.
Chang, C., 2001. A Study on the Evaluation and Effectiveness Analysis of Web-
Based Learning Portfolio (WBLP), British Journal of Educational Technology, 32 (4), 435-458.
Chen, S. H., Chen, R., Ramakrishnan, V., Hu, S. Y., Zhuang, Y., Ko, C. C., Chen, B. M.,
1999. Development of Remote Laboratory Experimentation Through Internet. Proceedings of the 1999 IEEE Hong Kong Symposium on Robotics and Control, July 1999, Hong Kong, 756-760.
Doğan, İ., Onurhan, E., 2003. Uzaktan Mühendislik Eğitiminde Laboratuar
Kullanımı. Elektrik, Elektronik, Bilgisayar Mühendislikleri Eğitimi 1.Ulusal Sempozyumu ve Sergisi, Mayıs 2003, Ankara, EMO 173-176.
64
Delikanlı, K., 2009. Uzaktan Erişimli Kontrol Laboratuarı. Süleyman Demirel Üniversitesi, Fen Bilimleri Enstitüsü, Yüksek Lisans Tezi, Isparta.
Ekiz, H., Bayam, Y., Ünal, H., 2003. Mantık Devreleri Dersine Yönelik İnternet
Destekli Uzaktan Eğitim Uygulaması. The Turkish Online Journal of Educational Technology (TOJET), 2 (4), 92-99.
Elen, A., Bayır, R., 2009. Bilgisayar Destekli Otomotiv Test Standının İnternet
Üzerinden Uzaktan Eğitim Amaçlı Kullanımı İçin Kullanıcı Arayüzlü Yazılım Tasarımı. 5. Uluslararası İleri Teknolojiler Sempozyumu, 13-15 Mayıs, Karabük.
Friesen, J., 2006. Java and USB. Erişim Tarihi: 20.12.2012.
http://today.java.net/pub/a/today/2006/07/06/java-and-USB.html Gezer, A., Koçer, S., 2008. Uzaktan Eğitimde Sesli ve Görüntülü Yayınların
İnternet Üzerinden Aktarılması. Bilişim Teknolojileri Dergisi, 1(2), 87-92. Gökdağ, D., 1986. Uzaktan Eğitimde Basılı Materyaller (Açıköğretim Fakültesi
Örneği). Anadolu Üniversitesi Açıköğretim Fakültesi Yayınları No:54, Eskişehir.
Graham, C., Cağıltay, K., Craner, J., Lim, B. ve Duffy, T.M., 2000. Teaching in Web
Based Distance Learning Environment: an Evaluation Summary Based on Four Courses, Center for Research on Learning and Technology Technical Report, No. 13-00, 21p.
Hahn, H.H., Spong, M.W., 2000. Remote Laboratories for Control Education.
Proceedings of the 39th IEEE Conference on Decision and Control, Dec. 2000, Sydney, Australia, 895-900.
Hensrud, F.C., 2001. “Quality measures in online distance education at a small
comprehensive university”. Unpublished doctoral dissertation, University of Minnesota, Duluth. (UMI No.3010529)
Hoyer, H., Jochheim, A., Rohrig, C., Bischoff, A., 2004. A Multiuser Virtual-Reality
Environment for a Tele-Operated Laboratory. IEEE Transactions on Education, 47 (1), 121-126.
Irmak, E., 2007. Uzaktan Eğitim Amaçlı İnternet Tabanlı Laboratuvar
Uygulaması. Gazi Üniversitesi, Fen Bilimleri Enstitüsü, Doktora Tezi, 138s, Ankara.
Jung, I., Rha, I., 2000. Effectiveness And Cost Effectiveness Of Online Education:
A Review Of Literature. Educational Technology, 40(4), 57-60. Kabakçı, I., 2001. İnternet’le Öğretim Etkinlikleri ve Anadolu Üniversitesi’nde
Bir Uygulama. Anadolu Üniversitesi, Sosyal Bilimler Enstitüsü, Yayımlanmamış Yüksek Lisans Tezi, Eskişehir.
65
Karabatak, M., 2002. Web’e Dayalı Uzaktan Eğitimde Otomasyon, Fırat Üniversitesi, Fen Bilimleri Enstitüsü, Yüksek Lisans Tezi, 72s, Elazığ.
Kaya, Z., 1996. Uzaktan Eğitimde Ders Kitapları (Açıköğretim Lisesi Örneği).
Gazi Üniversitesi Endüstriyel Sanatlar Eğitim Fakültesi Baskı Atölyesi, Ankara.
Kaya, Z., 2002. Uzaktan Eğitim. Pegem Yayıncılık, 291s, Ankara. Kaya, Z. 2005. Öğretim Teknolojileri ve Materyal Geliştirme. Pegem A Yayıncılık,
476s, Ankara. Kerry, H.B., 2000. The Power of the Internet for Learning: Moving from Promise
to Practise. Report of the Web-Based Education Commission to the President and the Congress of the United States, Washington DC.
Kiremitci, A.F., 2007. PIC18F4550 Mikrodenetleyicisi ile USB-PC Veri Aktarım
Arabirimi Gerçeklenmesi. Atatürk Üniversitesi, Fen Bilimleri Enstitüsü, Yüksek Lisans Tezi, 95s. Erzurum.
Koçer, H. E., 2001. Web Tabanlı Uzaktan Eğitim. Selçuk Üniversitesi, Fen
Bilimleri Enstitüsü, Yüksek Lisans Tezi, 156s. Konya. Kolat, A., 1993. E-öğrenme Kılavuzu. Türkiye Bilişim Vakfı Yayınları, Ankara. Lim-Fernandes, M. A., 2000. Assessing the Effectiveness of Online Education,
Golden Gate University, Ph. Thesis, San Francisco, USA. Locatis, C., Letourneau, G., Banvard, R., 1989. Hypermedia and Instruction.
Educational Technology Research and Development, 37(4), 65-77. Moore, M., 1990. Toward a Theory of Independent Learning and Teaching,
Journal of Higher Education, 44, 661-79. Özdil, B., Çelik, A., 2000. İnternete Dayalı Uzaktan Eğitim. Akademik Bilişim
Konferansları, 10-11 Şubat 2000, Isparta. Öztürk, C., 2009. Robotik Platformlar İçin USB Tabanlı Gerçek zamanlı Bir
İletişim Altyapısı. Bilkent Üniversitesi, Mühendislik ve Fen Bilimleri Enstitüsü, Yüksek Lisans Tezi, 113s, Ankara.
Phidgets, 2011. Erişim Tarihi : 10.02.2013. http://www.phidgets.com/
documentation/Phidgets/1018_0_Product_Manual.pdf
Phidgets, 2012. Erişim Tarihi : 05.02.2013. http://www.phidgets.com/
documentation/Phidgets/1019_0_Product_Manual.pdf
66
Shen, H., Xu, Z., Dalager, B., Kristiansen, V., Strom, O., Shur, M. S., Fjeldly, T. A., Lu, J., Ytterdal, T., 1999. Conducting Laboratory Experiments Over the Internet. IEEE Transaction On Education, 42 (3), 180-185.
Shortridge, A., 2001. Interactive Web-Based Instructıon: What Is It? And How
Can It Be Achieved?. Erişim Tarihi: 09.08.2010. http://ascilite.org.au/ajet/e-jist/docs/vol4no1/shortridge.html
Stacey, E., 1998. Virtual Interaction in Distance Education. Second Distance
Education Symposium, May 1998, Ankara, Turkey, USEV 459-468. Tan, W.M., 1997. Developing USB PC Peripherals Using The Intel 8x930Ax USB
Microcontroller, Annabooks, 176 p, San Diego, USA. Taşdelen, K., 2004. Mühendislik Eğitimi İçin İnternete Dayalı, İnteraktif, Sanal
Mikrodenetleyici Laboratuar Tasarımı. Süleyman Demirel Üniversitesi, Fen Bilimleri Enstitüsü, Yüksek Lisans Tezi, 70s, Isparta.
Taylor, J. C., Flexible learning systems: Opportunities and Strategies for Staff
Dev. in Industry. Erişim Tarihi: 08.05.2006. http://www.usq.edu.au /users/taylorj/readings/aaou.htm
Varol, N., 2001. İnternetin Uzaktan Eğitimdeki Konumu. Akademik Bilişim
Konferansları, 1-2 Şubat 2001, Ondokuz Mayıs Üniversitesi, Samsun. Verduin, J.R., CLARK, Jr.T.A., 1994. Uzaktan Eğitim: Etkin Uygulama Esasları. Çev.
Maviş, İ., Anadolu Üniversitesi Basımevi, Eskişehir. Volery, T., LORD, D., 2000. Critical Success Factors in Online Education. The
International Journal of Educational Management, 14(5), 216-223. Yalçınkaya, S., 2006. Web Tabanlı Uzaktan Eğitim Sistemi ve Çukurova
Üniversitesi Öğretim Elemanlarının Yatkınlıkları. Çukurova Üniversitesi, Sosyal Bilimler Enstitüsü, Yüksek Lisans Tezi, 89s, Adana.
Yeniad, M., 2006. Uzaktan Eğitimde Kullanılmak Üzere Web Tabanlı Portal Bir
Yazılımı Geliştirme. Çukurova Üniversitesi, Sosyal Bilimler Enstitüsü, Yüksek Lisans Tezi, 152s, Adana.
Yıldırım, Z., Özden, Y, 1998. Web Tabanlı Öğretim Materyali Geliştirme Modeli.
Türkiye 2. Uluslararası Uzaktan Eğitim Sempozyumu, Ankara. Yılmazçoban, S., Damkacı, F., 1999. İnternetin Eğitim Amaçlı Kullanılması,
Erişim Tarihi: 10.03.2013. http://www.inet-tr.org.tr/inetconf5/ tammetin/selami-tam.doc
Yurdadur, A., Çini, Ö., Doğan, M., 2007. Web Tabanlı Uzaktan Eğitimde Tasarım
Öğelerinin Öğrenme Üzerindeki Etkileri ve Öğrenci Tercihleri. IX.
67
Akademik Bilişim Konfreansı Bildirileri, 31 Ocak – 02 Şubat 2007, Dumlupınar Üniversitesi, Kütahya, 113-120.
68
EKLER
EK A. Fotoğraflar
69
EK A. Fotoğraflar
Şekil A.1. Tasarlanan sistem fotoğrafı
Sunucu İstemci
70
ÖZGEÇMİŞ Adı Soyadı : Osman ÇİMENLİ Doğum Yeri ve Yılı : Adana, 1985 Medeni Hali : Evli Yabancı Dili : İngilizce E-posta : [email protected] Eğitim Durumu Lise : Eğirdir Anadolu Lisesi, 1999-2002 Lisans : SDÜ, Teknik Eğitim Fakültesi, Bilgisayar Sistemleri
Öğretmenliği Mesleki Deneyim Eğirdir Teknik ve Endüstri Meslek Lisesi 2006- … (halen)