You are on page 1of 192

T.C.

MARMARA NVERSTES FEN BLMLER ENSTTS

KONTROL ETM N MATLAB LE WEB TABANLI UYGULAMA ARALARININ GELTRLMES

Kenan SAVA

YKSEK LSANS TEZ


ELEKTRONK BLGSAYAR ETM ANABLM DALI BLGSAYAR VE KONTROL ETM PROGRAMI

DANIMAN Do. Dr. Hasan ERDAL

STANBUL, 2010

T.C. MARMARA NVERSTES FEN BLMLER ENSTTS

KONTROL ETM N MATLAB LE WEB TABANLI UYGULAMA ARALARININ GELTRLMES

Kenan SAVA
(141100420070101)

YKSEK LSANS TEZ


ELEKTRONK BLGSAYAR ETM ANABLM DALI BLGSAYAR VE KONTROL ETM PROGRAMI

DANIMAN Do. Dr. Hasan ERDAL

STANBUL, 2010

NSZ VE TEEKKR

Literatrde MATLAB Web Server (MWS) ile yaplan almalarn ok olmasna ramen bu alandaki Trke kaynaklarn az olmas nedeniyle bu arac kullanmakta snrllklar yaayan tasarmclara yol gstermek ve fikir vermek zere MATLAB destekli bir alma konsepti bu tez almasnda amalanmtr. zellikle sanal laboratuar destekli zmler sunmak ve kullanabilmek zere bu tez almas kapsamnda gelitirilen Web MWS Sistemi ile farkl niversite veya eitim kurumlarnn kendi sanal laboratuarlarn oluturmalar dnlmtr. Bylece maliyetlerin dmesi, MATLAB destekli uygulamalarn web ortamnda yaynlanmas srecinin basitletirilmesi ve dorudan internet ortam kullanan ve kendi bilgisayarlarna MATLAB yazlmn kurmaya gerek kalmadan tasarm yapabilecekleri bir ortam sunulmutur. Byle deerli bir proje almasnda kendisi ile almama frsat verdii iin Yrd. Do. Dr. Hasan ERDAL hocama, deerli bilgileri ve yardmlarn esirgemeyen Gazi niversitesi retim yesi Yrd. Do Dr. Erdal IRMAK hocama, bu almay yapmamda emei geen ve deerli bilgileri ile beni aydnlatan Yrd. Do Dr. Vedat TOPUZ hocama, tecrbeleriyle makale almas ve bu tez almas kapsamnda katklarn unutamayacam Ar. Gr. Muhammet NAL'a ve zellikle o deerli zamann ayran ve ilgisini bir an olsun esirgemeyen eim Biliim Teknolojileri retmeni Halide SAVA hanma ve de dnem dersleri boyunca katksn her zaman st seviyede tutan ve bana destek olan deerli rencilerime teekkr ederim. Bu almay gerekletirmemde bana yardmc olan ve almalarndan yararlandm ve burada adn anmadm btn herkese ayrca teekkr ederim. u an iinde bulunduum frsatlarn olumasnda en byk pay olan ve hayatm boyunca emeklerini ve yreklerini unutamayacam ve daima hatrlayacam deerli annem ve babama kranlarm sunarm. renim hayatmda bu ana gelmemde emei olan tm hocalarma da can gnlden teekkr ederim. Kenan SAVA

Haziran, 2010

NDEKLER

SAYFA NO NSZ VE TEEKKR .................................................................... III NDEKLER .....................................................................................IV ZET ......................................................................................................IX ABSTRACT ............................................................................................ X SEMBOLLER .......................................................................................XI KISALTMALAR................................................................................. XV EKLLER ......................................................................................... XVI TABLOLAR ....................................................................................... XIX BLM I ................................................................................................. 1
GR ve AMA ................................................................................................. 1

BLM II................................................................................................ 4
MESLEK-KONTROL ETM N WEB TABANLI ZMLER .... 4 II.1. Literatrde Mesleki Eitim ve Web Tabanl Eitim zmleri .............. 5 II.2. Literatrde Kontrol Eitimi, MATLAB ve Uzaktan Laboratuar Sistemleri ........................................................................................................ 12 II.3. Literatrde MATLAB Web Server (MWS) ve Sanal Laboratuar almalar ..................................................................................................... 18

BLM III ............................................................................................ 25


WEB SUNUCU YAZILIMI VE YAPILANDIRMASI.................................. 25 III.1. Windows letim Sisteminde Apache Web Sunucu Servisinin Kurulmas ve Yaplandrlmas ...................................................................... 25 III.2. PHP Konfigrasyonu ............................................................................ 30 III.3. Apache Web Sunucusu iin PHP Desteinin Ayarlanmas Konfigrasyonu .............................................................................................. 33 III.4. Apache iin Alternatif Yazlm Paketlerinin Kullanlmas................... 35 IV

III.5. Kod Hrszlna Kar Apache ve MWS iin Gvenlik nlemleri ..... 36

BLM IV ............................................................................................ 39
MATLAB YAZILIMI....................................................................................... 39 IV.1. Fonksiyon Dosyalar (M Dosyalar, M Files) ....................................... 40 IV.2. Simulink Arabirimi ............................................................................... 42 IV.2.1. Simulink Ortamnda Model Oluturma ........................................... 43 IV.2.2. Simulink Modellerinin MATLAB Komutlar ve Program Kodu ile Ynetilmesi .................................................................................................. 47

BLM V .............................................................................................. 52
MATLAB CONTROL SYSTEM ARA KUTUSU ...................................... 52 V.1. Modellerin Oluturulmas....................................................................... 52 V.2. Model Verilerinin Elde Edilmesi ........................................................... 53 V.3. Modellerin Birbirine Dntrlmesi .................................................... 54 V.4. Modellerin Birbirine Balanmas ........................................................... 55 V.4.1. Seri Balant ...................................................................................... 55 V.4.2. Paralel Balant ................................................................................. 56 V.4.3. Geri Beslemeli Balant .................................................................... 56 V.4.4. klarn Toplanmas ....................................................................... 57 V.4.5. Girilerin Datlmas ........................................................................ 58 V.4.6. Girilerin ve klarn Birletirilmesi .............................................. 58 V.5. Modellerin Cevaplarnn Elde Edilmesi ................................................. 59 V.5.1. Adm Cevab (Step Response) .......................................................... 59 V.5.2. Ani Darbe Cevab (Impulse Response) ............................................. 60 V.5.3. Rampa Cevab (Ramp Response) ..................................................... 62

BLM VI ............................................................................................ 64
MATLAB WEB SERVER (MWS) ARA KUTUSU .................................... 64 VI.1. MWS Ara Kutusu Mimarisi ................................................................ 64 VI.2. MATLAB Web Server (MWS) Ara Kutusu ve WWW likisi .......... 66 V

VI.3. MATLAB Web Servern Kullanlmasnn Avantajlar ....................... 67 VI.4. MATLAB Web Servern Kullanlmasnn Dezavantajlar .................. 68 VI.5. MWS Gereksinimleri ............................................................................ 69 VI.5.1. Web Tarayc Yazlm .................................................................... 69 VI.5.2. Web Sunucu Yazlm...................................................................... 70 VI.6. MWS Kurulum ve Kaldrma Sreci ..................................................... 70 VI.6.1. Windows iin MWS Ykleme Sreci ............................................. 70 VI.6.2. Windows iin MWS Kaldrma Sreci ............................................. 72 VI.7. MATLAB Web Server Uygulamalar Tasarm ................................... 72 VI.8. MWS ile Uygulama Hazrlama Sreci ................................................. 73 VI.8.1. Girdi Dkmanlar Hazrlama (Girdi ablonu) ............................... 74 VI.8.4. Ekstra Uygulama rnekleri ............................................................. 83 VI.8.5. MATLAB Web Server Elemanlar .................................................... 88 VI.8.5.1. MWS Dosya Konumlar ............................................................... 89 VI.8.6. MWS Fonksiyonlar ........................................................................... 94 VI.8.6.1. htmlrep Komutu............................................................................ 94 VI.8.6.2. matweb Komutu ........................................................................... 96 VI.8.6.3. wscleanup Komutu ....................................................................... 96 VI.8.6.4. wsprintjpeg Komutu ..................................................................... 96 VI.8.6.5. wssetfield Komutu ........................................................................ 97 VI.8. MWS Uygulamalar iin Sunucu Gvenlii ......................................... 97

BLM VII ........................................................................................... 98


TASARLANAN WEB MWS SSTEM .......................................................... 98 VII.1. Web MWS Sistemi Tasarm Amac .................................................... 98 VII.2. Web MWS Sistemi Kullanm............................................................. 98 VII.3. Web MWS Sistemi Mimarisi .............................................................. 99 VII.4. Web MWS Sistemi Tasarm ............................................................. 101

VI

VII.5. Web MWS Uygulamas Paket Dosya Yaps .................................... 105 VII.6. Web MWS Web Arayz ................................................................. 107 VII.6.1. Web MWS Sistemine Uygulama Ykleme ................................. 108 VII.6.2. Web MWS Sisteminde Kaytl Uygulamalarn Listelenmesi ...... 111 VII.6.3. Web MWS Uygulamasn Sistemden Kaldrma .......................... 112 VII.7. Web MWS MATLAB Arayz ........................................................ 113 VII.8. Web MWS rnek (Demo) Uygulamalar Destei ............................ 117

BLM VIII ....................................................................................... 119


UYGULAMALAR .......................................................................................... 119 VIII.1. ACSES Uygulamas......................................................................... 120 VIII.1.1. ACSES Mimarisi ........................................................................ 120 VIII.1.2. ACSES Deneyleri ve Uygulama Amac ..................................... 123 VIII.1.3. ACSES Ortam ve Simlasyon Arayz .................................... 126 VIII.1.4. Uygulama Sonucu ...................................................................... 132 VIII.2. WBCA Ara Kutusu Uygulamas .................................................... 133 VIII.2.1. Kmeleme Algoritmalar ............................................................ 133 VIII.2.2. WBCA Ara Kutusu Tasarm ................................................... 135 VIII.2.3. WBCA Ara Kutusu Mimarisi ................................................... 135 VIII.2.4. WBCA Ortam ve Simlasyon Arayz .................................... 136 VIII.2.5. Uygulama Sonucu ...................................................................... 143 VIII.3. WBCSE Uygulamas ....................................................................... 143 VIII.3.1. WBCSE Tasarm ....................................................................... 144 VIII.3.2. WBCSE Donanm ve Yazlm Mimarisi .................................... 146 VIII.3.4. WBCSE Ortam ve Simlasyon Arayz .................................. 147 VIII.3.6. Uygulama Sonucu ...................................................................... 151

BLM IX .......................................................................................... 153


SONULAR VE TARTIMA ....................................................................... 153

VII

BLM X ............................................................................................ 157


DEERLENDRME VE NERLER.......................................................... 157

KAYNAKLAR..................................................................................... 161 EKLER ................................................................................................. 172 ZGEM ......................................................................................... 173

VIII

ZET

KONTROL

ETM

MATLAB

LE

WEB

TABANLI

UYGULAMA ARALARININ GELTRLMES

zellikle teknik eitim ve mhendislik eitiminde rencilere verilecek teorik bilgilerin yan sra uygulama almalar ve deneyler nemli bir yer tutmaktadr. Ancak, her yl artan renci says ve buna paralel olarak uygulama yaplan laboratuar ortamlarnn hem fiziksel, hem donanm, hem de retim eleman says asndan yetersiz hale gelmesi eitim kurumlar iin kaynak yetersizlii ve mevcut kaynaklarnn yeterince kullanlamamas asndan problem olmaya balamtr. Bunun sonucu olarak uygulamal eitim yeterli dzeyde ve kalitede yaplamamaktadr. Bu sorunun zmne ynelik pekok farkl web tabanl uygulamalar gelitirilmektedir. Gelien teknoloji sayesinde gnmzde bilgisayar eitimin ok nemli bir arac haline gelmeye balamtr. Kontrol alan eitiminde bilgisayar tabanl uygulamalar laboratuar ortamndaki almalar ile desteklenmektedir. Bu almalarn pek ounda MATLAB yazlm kullanlmakta ve bylece teorik bilgilerin benzetim ortamnda analizine yardmc olunmaktadr. MATLAB ile yaplacak uygulamalarn web tabanl olarak hazrlanmasnda kullanlan aralardan biri MATLAB Web Server (MWS) ara kutusudur. Bu almada da bu aratan yararlanlm ve kontrol eitimi iin eitli uygulamalar tasarlanmtr. almada Marmara niversitesi Teknik Eitim Fakltesi (M..T.E.F.) rencilerinin kontrol derslerinde grm olduklar teorik bilgileri pekitirmek zere laboratuar deneylerini kendi kendilerine yapabilecekleri, uzun zaman alan ve MATLAB bilgisi gerektiren uygulamalar basit ve kolay ara yzler eliinde ve de hzl ve zahmetsizce kurmasna gerekletirebilmeleri amacyla web tabanl uygulamalar internet zerinden gelitirilmitir. Bylece rencilerin kendi bilgisayarlarna MATLAB arac gerek kalmadan istedikleri bir zamanda alabileceklerdir. Yaplan uygulama ile retim srecinde zaman tasarrufu salanacak ve laboratuar kaynaklarnn daha verimli kullanm mmkn olacaktr. Haziran, 2010 IX Kenan SAVA

ABSTRACT

DESIGNING WEB BASED APPLICATION TOOLS FOR CONTROL EDUCATION WITH MATLAB

Especially in technical education and engineering, training will be given to students with applications of theoretical studies and laboratoary experiments. However, due to the increasing number of students, a few teaching staff and inadequate resources and lack of available resources in terms of the physical laboratory environment, adequate and efficient learning has not been taken place. As a result, practical training and the education quality may not be adequate. To solve this problem many different web-based applications are being developed. Today, the computer in education has become an important tool. Control areas in the computer-based education are supported by studies in the laboratory environment. Most of these studies have been using the MATLAB software so that theoretical knowledge could be supported with simulation analysis. Web-based applications to be made with MATLAB can be achieved via different tools, one of which is the MATLAB Web Server (MWS) tool box. This study has also benefited from this tool and a variety of applications for control education has been designed. In this study, the web-based applications are developed for students which has little or no MATLAB knowledge to perform long time-consuming and MATLABknowledge-required applications at Marmara University, Technical Education

Faculty (M.U.T.E.F.). By using these, they can perform different experiments quickly and effortlessly in control lessons with the support of simply and easily web based interfaces. Therefore, they are able to study with their local PCs at any time through the internet unlike the necessity of installing MATLAB tool to their computers. As a consequence, the teaching process will be provided with saving time and more efficient use will be possible for resources. Kenan SAVA

June, 2010

SEMBOLLER
e V a B C C(s) c(t) Cd Cf CO D d dc dt E(s) e(t) E : zaman sabiti : pi says : zeta, ksi, snm oran. : beta deeri : delta (diferansiyel) : asal hz : histeresiz band snr hata deeri : besleme gerilimi : stel frekans (Hz) : servo motor srtnme katsays : kondansatr eleman veya Celcius (scaklk birimi)

: k sinyali (s uzaynda) : k sinyali (t uzaynda) : trev kondansatr : geri besleme kondansatr : controller output (kontrolr k sinyali) : derivative (trev) : diferansiyel : k sinyali diferansiyeli : zaman diferansiyeli : hata sinyali (s uzaynda) : hata sinyali (t uzaynda) : k gerilimi

XI

Eg F(s) G(s) Gc(s) Gp(s) I IL J K Kc, Ku KD Ki KP L MP P PI PID PV R R(s) r(t) Rd ref

: giri gerilimi : transfer fonksiyon : plant ak evrim transfer fonksiyonu : kontrolr transfer fonksiyonu : plant (sistem) ak evrim transfer fonksiyonu : integral : yk akm : servo motor ataleti : sabit kazan katsays : kritik kazan (Ziegler-Nichols yntemi iin) : trev katsays : integral katsays , servo motor zt emk kazan katsays

: oransal katsay : bobin eleman : maksimum am miktar : proportional (oransal) : oransal-integral etki : oransal-integral-trev etki : proses variable (proses deikeni) : diren eleman : giri sinyali (s uzaynda) : giri sinyali (t uzaynda) : trev direnci : referans

XII

Rf Ri RL s SP SV T t TC, PU Td Tf, TF Ti tp, TP tr, Tr ts, TS U(s) u(t) UD Ui Ui Umax, Ymax UP Vi VO

: geri besleme direnci : servo motor i sarg direnci : yk direnci : kompleks deiken (Laplace deikeni) : set point (referans) : set variable (referans deikeni) : zaman sabiti, tork : zaman : kritik peryot (Ziegler-Nichols yntemi iin) : trev zaman : transfer fonksiyonu : integral zaman : am zaman : ykselme zaman : oturma zaman : kontrolr sinyali (s uzaynda) : kontrolr sinyali (t uzaynda) : trev kontrol sinyali : integral kontrol sinyali : servo motor zt emk gerilimi : maksimum on/off kontrol doyum voltaj deeri : oransal kontrol sinyali : giri gerilimi : k gerilimi

XIII

VPV Vsat VSP Vx Vz Wd Wn Xsd

: proses (sistem) k sinyali : saturation (doyum) voltaj deeri : referans sinyali : on/off histeresiz band snr gerilimi : zener gerilim deeri : doal frekans (titreim) : doal frekans (snmllk) : on/off histeresiz band genilii

XIV

KISALTMALAR

ACSES ADC ANN DAC GA httpd MTEF MWS

Automatic Control Simulation Environment System (Otomatik Kontrol Simulasyon Ortam Sistemi)

: Analog Dijital Converter (Dntrc) : Artificial Neural Networks (Yapay Sinir Alar) : Dijital Analog Converter (Dntrc) : Genetik Algoritma : Hyber Text Transfer Protocol Daemon (Web sunucu yazlm) : Marmara niversitesi Teknik Eitim Fakltesi : MATLAB Web Server

OPAMP : OPerational AMPlifier (lemsel Ykselte) PID URL WAMP WBCA : Proportional Integral Derivative (Oransal ntegral Trev) : Uniform Resource Locator (nternet balant adresi) : Windows-Apache-MySQL-PHP : Web Based Clustering Analysis (Web Tabanl Kmeleme Analizi) Web Based Control Simulations Environment (Web Tabanl Kontrol Simlasyonlar Ortam)

WBCSE : YSA ZN

: Yapay Sinir Alar : Ziegler-Nichols

XV

EKLLER
SAYFA NO
ekil III. 1 Apache web sunucusu kurulumu balang ekran ................................. 26 ekil III. 2 Apache kurulum ve kullanc bilgileri .................................................... 27 ekil III. 3 Apache kurulum yeri ve yardm dosyalar iin dizin yolu seimi .......... 28 ekil III. 4 Windows servis penceresinde Apache web sunucu servisi .................... 30 ekil III. 5 php.ini konfigrasyonu iin extension_dir ayarnn yaplmas ............... 31 ekil III. 6 httpd.conf konfigrasyonu iin register_globals ayarnn yaplmas ...... 32 ekil III. 7 httpd.conf konfigrasyonu iin upload_tmp_dir ayarnn yaplmas ...... 32 ekil III. 8 httpd.conf konfigrasyonu iin session.save_path ayarnn yaplmas ... 33 ekil III. 9 httpd.conf konfigrasyonu iin PHP modlnn tantlmas .................. 34 ekil III. 10 httpd.conf konfigrasyonu iin default index dosyasn belirleme ....... 35 ekil IV. 1 MATLAB ana penceresi ......................................................................... 40 ekil IV. 2 MATLAB Editor uygulamas ekran grnts ....................................... 41 ekil IV. 3 Simulink balang ekran grnts ...................................................... 42 ekil IV. 4 Simulink ortamnda bo alma alan .................................................... 43 ekil IV. 5 rnek bir kontrol sisteminin Simulink ortamnda oluturulmas ............ 44 ekil IV. 6 Sum blounun zellikler penceresi ......................................................... 45 ekil IV. 7 Transfer Fcn blounun zellikler penceresi ............................................ 45 ekil IV. 8 Simulink ortamnda simlasyon sresinin ayarlanmas .......................... 46 ekil IV. 9 Simulink ortamnda rnek verilen bir sistemin adm cevab................... 47 ekil V. 1 Seri bal modellerden tek bir modelin elde edilmesi .............................. 55 ekil V. 2 Paralel bal modellerden tek bir modelin elde edilmesi .......................... 56 ekil V. 3 Geri beslemeli modelin tek bir modele indirgenmesi ............................... 57 ekil V. 4 ki model klarnn toplanmas ile oluan kn elde edilmesi ........... 57 ekil V. 5 ki modele ait klarn datlmas ......................................................... 58 ekil V. 6 ki modele ait girilerin ve klarn birletirilmesi ................................. 59 ekil V. 7 rnek verilen bir sistemin adm cevab grafii ........................................ 60 ekil V. 8 rnek verilen bir sistemin ani darbe cevab grafii .................................. 61 ekil V. 9 rnek verilen bir sistemin rampa cevab grafii ...................................... 63 ekil VI. 1 MWS ara kutusunun MATLAB ve web kullanclar ile balants ...... 65 ekil VI. 2 MWS arac ile web sunucu yazlm (http daemon ayn bilgisayarda)..... 67 ekil VI. 3 MWS arac ile web sunucu yazlm (http daemon) farkl bilgisayarda ... 67 ekil VI. 4 webmagic rnek MWS uygulamas giri sayfas .................................... 77 XVI

ekil VI. 5 webmagic rnek MWS uygulamas k (sonu) sayfas ....................... 83 ekil VI. 6 players rnek MWS uygulamas veritaban dosyas veri listesi .............. 84 ekil VI. 7 players rnek MWS uygulamas k (sonu) sayfas............................ 84 ekil VI. 8 webpeaks rnek MWS uygulamas giri sayfas ..................................... 85 ekil VI. 9 webpeaks rnek MWS uygulamas k (sonu) sayfas ....................... 87 ekil VI. 10 webstock rnek MWS uygulamas giri ve k sayfalar ................... 88 ekil VI. 11 MATLABin MWS ile web zerinden altrlmas ............................ 89 ekil VII. 1 Web MWS Sistemi ile tasarm sreci .................................................... 99 ekil VII. 2 Web kullancsnn MWS ara kutusunu kullanrken izledii admlar 100 ekil VII. 3 Web kullancsnn Web MWS Sistemini kullanrk. izledii admlar . 101 ekil VII. 4 Web MWS sistemi ykleme paket dosyas ierii .............................. 107 ekil VII. 5 Web MWS Sistemi ana sayfas ........................................................... 108 ekil VII. 6 Web MWS Sistemi uygulama ykleme giri sayfas .......................... 109 ekil VII. 7 Web MWS Sistemi uygulama ykleme sonu sayfas ........................ 110 ekil VII. 8 Web MWS Sistemi herhangi bir uygulama bilgileri eriim sayfas .... 111 ekil VII. 9 Web MWS Sistemi ykl uygulamalar listesi sayfas ......................... 112 ekil VII. 10 Web MWS Sistemi uygulama kaldrma sayfas ................................ 113 ekil VII. 11 Web MWS Sistemi gnlk (log) dosyas ierii ............................... 115 ekil VII. 12 Web MWS Sistemi rnek (demo) uygulamalar listesi ...................... 118 ekil VIII. 1 ACSESnin retim srecine katks ................................................. 120 ekil VIII. 2 ACSES mimari yaps ........................................................................ 121 ekil VIII. 3 ACSES tasarmndan rnek bir deneye ait Simulink modeli ............. 122 ekil VIII. 4 ACSES deneyleri tasarm admlar .................................................... 123 ekil VIII. 5 ACSES web kullanc arayz ........................................................... 126 ekil VIII. 6 ACSES deneyi 1.1 ama sayfas ........................................................ 127 ekil VIII. 7 ACSES deneyi 1.1 teorik bilgi sayfas ............................................... 127 ekil VIII. 8 ACSES deneyi 1.1 ilem basamaklar sayfas ................................... 128 ekil VIII. 9 ACSES deneyi 1.1 simlasyon parametreleri sayfas ........................ 129 ekil VIII. 10 ACSES deneyi 1.1 sorular sayfas ................................................... 130 ekil VIII. 11 ACSES deneyi 1.1 simlasyonu grafik kts ................................. 131 ekil VIII. 12 ACSES simlasyonu rnek saysal deer sonu sayfas .................. 131 ekil VIII. 13 WBCA ara kutusunun retim srecine katks ............................. 135 ekil VIII. 14 WBCA ara kutusu mimarisi ........................................................... 136 ekil VIII. 15 WBCA ara kutusu web arayz ..................................................... 137 ekil VIII. 16 WBCA ara kutusu simlasyon arayz giri sayfas ..................... 138 ekil VIII. 17 WBCA web arayz yardm sayfas ................................................ 139 ekil VIII. 18 WBCA ile kullanclarnn kendi veri seti dosyasn upload imkan 140 XVII

ekil VIII. 19 WBCA ile simlasyona ait saysal deer sonu sayfas .................. 141 ekil VIII. 20 WBCA ile simlasyon grafik kts ................................................ 142 ekil VIII. 21 WBCA simlasyonu sonu veri seti dosyasnn download imkn . 142 ekil VIII. 22 RT 532 basn prosesi fiziksel grnts ........................................ 146 ekil VIII. 23 WBCSE web kullanc arayz........................................................ 147 ekil VIII. 24 WBCSE ak evrim simlasyonu giri (parametreler) sayfas ....... 149 ekil VIII. 25 WBCSE ak evrim simlasyonu sonu sayfas............................. 149 ekil VIII. 26 WBCSE kapal evrim on/off denetim simlasyonu giri sayfas ... 150 ekil VIII. 27 WBCSE kapal evrim on/off denetim simlasyonu sonu sayfas . 150 ekil VIII. 28 WBCSE kapal evrim PID denetim simlasyonu giri sayfas ...... 151 ekil VIII. 29 WBCSE kapal evrim PID denetim simlasyonu sonu sayfas .... 151

XVIII

TABLOLAR
SAYFA NO
Tablo V. 1 MATLABte kontrol modellerinin oluturulmas ................................... 52 Tablo V. 2 MATLABte model verilerinin elde edilmesi ......................................... 53 Tablo V. 3 MATLABte modellerin birbirine dntrlmesi ................................. 54 Tablo VI. 1 matlabserver parametreleri .................................................................... 90 Tablo VI. 2 matweb.conf alanlar.............................................................................. 92 Tablo VI. 3 MWS fonksiyonlar listesi ..................................................................... 94

XIX

BLM I

GR ve AMA

Gelien teknoloji sayesinde gnmzde bilgisayar eitimin ok nemli bir arac haline gelmeye balamtr. zellikle uygulamal derslerin bilgisayarlar eliinde simlatrlerle ilenmesi, hem zaman ksaltmakta, hem de konularn daha iyi kavranmasn salamaktadr. Kontrol alan eitiminde bilgisayar tabanl uygulamalar, laboratuar ortamndaki almalar ile desteklenmektedir. Bu almalarn pek ounda, MATLAB yazlm kullanlmakta ve bylece teorik bilgilerin benzetim ortamnda analizine yardmc olunmaktadr. Ayrca, kontrol alandaki ihtiyalara byk oranda cevap vermesi, rencilerin teorik bilgilerini destekleyici almalar kolay bir ekilde ve ksa bir sre ierisinde gelitirebilmeleri nedeniyle bu ara kontrol eitiminde byk oranda tercih edilmektedir [1]. MATLAB MWS arac ile yaplacak internet uygulamalarn zerinden web tabanl olarak hazrlanmasnda ska kullanlan aralardan biri MATLAB Web Server (MWS)dr [1-5]. kullanclarn MATLAB uygulamalarnn altrlmasna imkn veren ve MATLAB ile birlikte alan bir aratr [1]. Bu ara yardmyla kullanclar TCP/IP protokol destei sunan bir a zerinde MATLAB ile etkileime girebilirler. Kontrol alannda da MWS kullanlarak ok farkl alanlarda ve ok eitli almalar yaplmtr. [2] nolu almada MWS arac ile ultrasonik bir motor iin uzaktan eriimli olmak zere hz kontrolne ynelik deneyler yaplm ve ayrca bu almada kullanclarn motorun fiziksel durumunu grebilme imkn sunulmutur. Bir baka kaynakta kontrol alannda sklkla karlalan MIMO (oklu giri oklu k) sistemlerinin k iaretlerinin dorusallatrlmasna ynelik youn ilem gerektiren matematiksel hesaplamalar MWS arac yardmyla uzaktan yaplmtr [3]. A. Pester ve R. Ismailov uzaktan renmede kullanlabilecek web tabanl uygulamalara rnek olabilecek baz uygulamalar tasarlamtr [4]. [5] nolu almada ise kontrol eitiminde kullanlabilecek ve rencilerin kendi bilgisayarlarnda 1

MATLAB yazlmn kurmadan MATLAB uygulamalar altrabilecei bir almada kullanclarn sisteme uzaktan balanmalarnda ve MATLAB arac ile iletiim kurulmasnda MWS aracndan yararlanlmtr. Bu tez almasnda M.. Teknik Eitim Fakltesinde rencilerin kontrol derslerinde grm olduklar teorik bilgileri pekitirmek, kendi kendine renmeyi gerekletirerek ders ile ilgili analiz tabanl, ancak uzun zaman alacak uygulamalar sunulacak basit ve kolay kullanlabilen ara yzler ile hzl ve zahmetsizce gerekletirmeleri amalanmtr. Yaplan alma ile rencilerin internete eriebilecekleri her ortamdan sisteme dahil olarak, kontrol eitimi ile ilgili sunulacak hazr modellerden yararlanmalar ve tasarlayacaklar kendi modellerini test etmeleri mmkn olacaktr. Klasik bir eitim anlay ile sregelen teorik arlkl eitim anlay yerine farkl kullanclarca tasarlanm model, kontrolr ve yntemlerin uzak kullanclarca kullanlmas suretiyle duraan ve srekli ayn sistemlerle almak yerine farkl ve gncel model ve yntemler eliinde analiz yapma ans doacaktr. Bu ekilde kullanclarn srekli olarak gelien sistemleri takip etmesi, tanmas ve kendi alannda nasl ve ne ekilde analiz etmesi gerektii gibi konularda bilgi sahibi olmas imknna kavumu olacaktr. Tasarlanan uygulama ile renciler kontrol derslerine ait laboratuar deneylerinin bir ksmn web tabanl olarak benzetim ortamnda gerekletirilebilecektir. Bylelikle zamann tasarruflu bir ekilde kullanm salanacak ve deneylerin bir paras olan bilgisayar destekli uygulamalarn internet zerinden yaplmas ile laboratuar kaynaklarnn daha verimli kullanm sz konusu olacaktr. Bu tezin amalar u ekildedir: MATLAB/Simulink ortam desteinde alma sunmak, MATLAB ile tmleik alan MATLAB Web Server (MWS) ara kutusundan yararlanmak, 3. 4. Kontrol alanndaki eitim kurumlar iin yardmc bir ara sunmak, Kontrol ve dier alanlarda sanal laboratuar almalarna bir fikir vermek,

1. 2.

5.

Simlasyon tabanl internet zerinden yaplacak web tabanl zmler iin bir MATLAB destekli sistem altyaps sunmak,

6.

MTEF Kontrol Anabilim kapsamnda Otomatik Kontrol dersi laboratuar ders mfredat kapsamnda rencilere web tabanl ve simlasyon desteli bir ortam hazrlamak,

7.

Literatr iin MATLAB destekli sanal bir laboratuar inas iin gerekli tasarm aamalar hakknda katk salamak,

8.

renci ve tasarmclar iin kendi MATLAB uygulamalarn web tabanl olarak yaynlayabilecekleri bir sistem altyaps tesis etmek,

9.

Disiplinleraras almalar kapsamnda yeni konseptlere ak ve dier bilim evrelerince desteklenebilecek web tabanl ve yazlm destekli bir son rn ortaya karmaktr.

BLM II

MESLEK-KONTROL ETM N WEB TABANLI ZMLER

Literatrde, web tabanl eitim amal yaplan pek ok aratrma ve alma mevcuttur. Eitim amal bu almalar ok eitli amalarla gerekletirilmitir. retim srecine olan katks mesleki veya pedagoji ynnde olabilmektedir. Web ve internet tabanl yardmc aralar elektronik ortamlarda retim yeteneini gelitirir. Bu aralar beyaz tahta, yardm odakl ve dierleri ile tmletirildiinde web nemli lde rencilerin retim yaantlarna katk seviyesini arttrr. Web basit bir ara yze bu aralarn ounun tmletirilmesi iin etkili bir mekanizma salar ve ieriin hzl bir ekilde deitirilmesi iin ideal bir aratr. Web baz retim alma alanlarnda yeni bir a aralamaktadr. zellikle renme ve alternatif bilgi formatlar iin frsatlarn arttrlmasn salar. Hedef renme sreci iinde etkileimli, dinamik bir ortamda, eitimci, renci ve online materyal iin iinde olmak zere sanal bir snf oluturmak, tamamyla rencileri renme yaantlarna bizzat katmaktr [1]. Web ve dier internet tabanl ibirlikli aralar dijital ortamda eitim ve renme yeteneini nemli lde arttrmaktadr. Web, sanal laboratuarlar veya yardm odalar gibi aralarla tmletirildii zaman retme sreleri ile rencilerin i ie olma seviyesi artabilmektedir. Bu tip pek ok aracn basit bir arayz ile tmletirilmesi etkili bir malzeme salar ve hzlca deien bilgi iin uygun bir aratr. Web renme frsatlarnn arttrlmas ve bilgi iin alternatif ynlendirmelerin salanmasyla baz alan alanlarda yeniliklere sebep olmaktadr. Bir web dersi bir retmen ve kaytl bir renci grubuyla birbirleriyle kurabilecekleri sanal bir snfta renen bir topluluu bir araya getirir. Ama sresince tamamyla rencileri renme yaantlarnn iine sokan etkileimli, dinamik bir ortamda renci, online materyal ve renmeyi ieren yapya sahip yntemler kullanan bir sanal snf oluturmaktr [6].

Gnmzde uzaktan eitimde en verimli olan teknoloji; ift ynl olmas, daha ucuz olmas, iletiim yollarn ve yazlmlarn desteklemesi ve esnek bir yapya sahip olmas nedeniyle nternettir. nternet zerinden yaplan eitim modeli Web Tabanl Eitim olarak adlandrlmaktadr [7]. Web tabanl eitimde zaman ve uzaklktan bamsz olarak, herhangi bir zamanda, herhangi bir noktada verilen eitimi almak herkes iin mmkndr [8]. II.1. Literatrde Mesleki Eitim ve Web Tabanl Eitim zmleri Mesleki ve teknik eitimin en nemli zelliklerinden biri de derslerde verilen teorik bilgilerin uygulamalarla desteklenmesidir. Ancak, her yl artan renci says ve buna paralel olarak uygulama yaplan laboratuar ortamlarnn hem fiziksel, hem donanm, hem de retim eleman says asndan yetersiz hale gelmesi nemli bir problem olmaya balamtr. Bunun sonucu olarak uygulamal eitim yeterli dzeyde ve kalitede yaplamamaktadr. Bu sorunun zmne yardmc olmaya ynelik olarak, birok alanda uzaktan eriimli laboratuar uygulamalar ve sanal laboratuar (VL, virtual laboratory) uygulamalar gelitirilmektedir. Modern endstrinin yeni bir eit mhendislik yaklamna ihtiya duymas aktr. Bu yaklam ounlukla en azndan baz temel fonksiyonlara gre mekanik olarak altrlr, yani modern endstride Mekatronik Mhendislii ihtiya duyulmaktadr. Bu durum hassas mekatronik, mhendislik, elektriksel kontrol ve retim ve srelerin tasarmnda dnme sistemlerin birlemesiyle oluan bir sinerjidir. Elle yaplan projelere dayanan bir renme metodolojisi ounlukla renim gre ve mezuniyet seviyesindekilerin her birisi iin de mhendislik eitiminde uygun bir yol olarak dnlr [9]. Dier yandan internet servislerinin ortam eriilebilirlii (genelde bilgisayar ve balant maliyetinin dmesi sebebiyle) nedeniyle, gnmzde eitim amal internet kullanmn ieren uluslar aras bir aba vardr. Mekatronik ve Kontrol uygulamalar dnldnde, teorik olarak temel internet tabanl uzaktan dersler ve sanal deiiklikle geniletilebilir [10]. Ayrca, internet gerek fazl uygulama gerekletirmek iin kullanlabilir. Ancak hibir ey gerek sistemle yaplmaktan daha eitici ve yararl deildir. Bu sebepten dolay, internet tabanl gerek zamanl deneysel servislerin gelitirilmesi doal olarak hakl bir sebeptir. Bylece internet tabanl deney almalarnn says artmakta ve bu

almalar youn kontenjan olan ve kalabalk bir dinleyici kitlesi iin daima nem arz etmektedir [11]. Kontrol mhendislii eitimi teori ve uygulamay birletirmelidir. renciler gereklerini karlayacak kontrolrler gelitirmek iin kontrol sistemi modelleme bilgi ve becerilerini baarabilmelidir. Bir kontrolr tasarm ve uygulamasndan sonra, sonulanan dinamiklerin gzlemlenmesi tasarm kavramna nemli bir bak as getirmektedir. renciler yazl materyalle anlatlmas ounlukla zor olan dinamik olguyu gzleyebilirler [12]. Bu nedenle web tabanl ve grsel yn ar olan almalar eitim kalitesinin artmas iin yararl bir ortam sunacaktr. Kontrol eitimine ynelik olarak da literatrde pek ok alma mevcuttur [1320]. Otomatik kontrol pek ok alanda yararl bir aratr ve biyoteknoloji, gda mhendislii ve kimya mhendislii gibi temel alanlarda renciler tarafndan da renilmektedir. Bunlarn yannda otomasyon baz niversitelerdeki temel alanlarla ilikilidir. Technology niversitesi Kimya Mhendislii Blm Malezyadaki proses kontrol laboratuarndaki bilgisayarlar [21] sadece kontrolr veya veri log alc olarak kullanlmaz. Ayn zamanda proses kontrolrn renilmesi ve anlalmasna destek olmaktadrlar. Esnek kontrolr amacyla kullanlmasndan ziyade bilgisayarlar prosesin llen deerlerini grafiksel olarak analiz etmek ve gstermek iin kullanlr. Bu almadaki ama her biri kendi ilevine sahip ak, seviye, stma gibi eitli prosesler rencilere ve kontroln yaparak yaayarak nasl kontrol sistemi deneyimi kazandrmakta salamaktadr. Otomatik kontrol laboratuar kontrol sistem tasarm ve uygulamasn daha derinlemesine ve daha tmyle anlamak zere renciler iin bir ihtiyatr, fakat bu durum yksek maliyet ve ok fazla ders saatini de beraberinde getirir. Maliyeti drmek ve ders saatlerinden tasarruf salamak iini internet tabanl proses sistemlerinin tasarmna ynelik literatrde eitli almalar yaplmakta, bylelikle rencilerin herhangi bir zamanda internete bal ve uzak bir bilgisayar kullanarak kontrol deneylerini gerekletirmelerine imkn verilecektir [22]. Bilgi teknolojilerin ve proses kontrol arasnda iliki yeni bir aa erimitir [23]. Internet zerinde veri ileme ve kontrol yan sra, uzaktan alma, uzaktan tedavi, uzaktan robotik gibi uygulamalarn oluturulmas bu ada desteklenmektedir. Proses kontrol dikkate alndnda bilgi teknolojileri ilk olarak 6 uygulamal altnn anlalmasn

eitim alannda kullanlmtr [24]. Ayn zamanda internet zaman planlamas ve fiziksel ortama ilikin eitsel srete esneklii artrmakta [25] ve uzaktan kontrol uygulamalarna imkan salamaktadr. A teknolojisi alanndaki gelimelerle n tabanl olarak internetin kullanmnn artmasyla, uzaktan renme ve aratrma ortak bir aktivite olmutur. Fakat gerek laboratuar aralarnn sklkla gerek fiziksel verinin elde edilmesinde gerekli olmasna ramen byle aktiviteler iin eriilebilir internet sitelerinin pek ou gerek laboratuar ekipmann iermez (yazlm simlatrleri belki bunun yerine kullanlabilir.) [26]. Bilgisayar ve internet teknolojilerinin eksponansiyel bymesi karmak ve hibrit sistemlerin (uzak laboratuarlar gibi uzaktan eriim, izleme ve kontrol etme gibi) [27-29] geliimine imkn vermektedir. Bu yeni geliim srelerinin deiimi herkese herhangi bir zamanda kii ba deney maliyetini drmek zere laboratuar ile etkileime frsat vermekte ve tm deneysel alma yapsnn yeteneklerini geniletmektedir [30]. Sanal laboratuarlar kullanlarak internetten herhangi bir zaman ve herhangi bir yerden zaman ve maliyet tasarrufu salanabilir. Ayrca, gerek zamanl sistemlerle etkileimli uygulama yapmak rencilerin motivasyonunu arttracak ve gereki problemlerin zmnde uygulanmas gereken mhendislik yaklamn gelitirilecektir. Simlasyon kontrol eitimini tamamlamak iin uygun bir yoldur, fakat gerek sistemlerle uygulama yapmak ile yer deitirilemez. nk simlasyon sadece modellerde iyidir, uygulama simle etmek iin zor veya imknsz olan olgu farkndaln kullancda salama avantajna sahiptir. Uzaktan uygulama ile zel veya pahal ekipmanlar farkl niversiteler arasnda paylatrlabilir ve bu durum rencilerin uygulama eitliliinden seim yapmasna imkn verir. Gerek zamanl internet tabanl olarak lme, izleme ve kontrol iin bir sanal laboratuar sisteminin tasarmnda haberleme, alglayclar, motor elemanlar, enstrmantasyon ve kontroller gibi tm sistem bileenlerinin dikkate alnmas gerekir. Sanal laboratuar sistemi web tarayc zerinden basit bir kullanc ara yz salayacak, cihaz a ve kontrol arabirim modlleri, cihaz alma durumunun izlenmesi ve laboratuar alt sistemlerinin zaman ynetimini yapmay salamak zere btnleik bir yap olarak tasarlanmaldr [31]. Gerek zamanl internet ynlendirmeli laboratuar eitli yararl pedagojik zelliklere sahiptir. retmen ev devi olarak laboratuar altrmalar verebilir. 7

Laboratuar herhangi bir yerden herhangi bir zamanda altrlabilir. Geni bandn yaygnlamasyla gelecek a bant genilii artacak; Bylece laboratuar canl grnt ve ses iletimi salamas ile genileyecek ve yararl bir snf ortam gibi hizmet verecek ve uzaktan renme salanm olacaktr. Buraya kadar, web tabanl eitim gelitirmenin pek ou ders ieriinin uygulanmas ve testi (baknz [32-34]) veya sanal laboratuar nedeniyle kstlanmtr. Greceli olarak ok az sayda gerek zamanl laboratuar vardr (baknz [35]) (Bant genilii, network servis kalitesi, kararl alma, gvenlik (security) ve veri gvenlii (safety) gibi kstlamalar nedeniyle ok az proses kontrol laboratuardr.). Gerek zamanl laboratuarlar ska belirli ve zel zmlere dayanr ve her naslsa esnek olana eilimlidir. [36] nolu almadaki ama bu tip baz sorunlar dikkate almak ve benzer almaklarla i ie olanlar iin yardm etmektir. Pek ok niversite bugn gvenli geni bant balantlarna sahiptir. Bylece gerek zamanl internet ynlendirmeli kontrol almas yapmak mmkndr. Byle bir imkn ayrca pahal fiziksel donanmn farkl ortamlar ve disiplinler arasnda paylalmasna imkn verecek ve ibirlikli retme ve aratrma salayacaktr [37]. A teknolojisindeki ve donanm hzlarndaki yenilikler internet zerinden gerek zamanl kontrol zerine aratrmalarn artmasna yol amaktadr. Kontrol Sistemlerine Giri dersinin amalar arasnda bilgisayar destekli kontrol tasarmnn ve bilgisayar destekli kontrol uygulamasnn renilmesi yer alr. Niin bilgisayar destekli kontrol uygulamas ve tasarm endstriyel uygulamada ve kontrol tasarmnn reniminde arzu edildii sorulduunda pek ok sebep vardr [38]. lk olarak kontrol tasarm srecinin doas dngseldir. Endstriyel uygulamada bir kontrol tasarm iin bir kimse, modelleme, tasarm simlasyon, test etme ve uygulama gibi kendi iinde birok tekrar gerektiren admlar uygulamak zorundadr. Kontrol uygulama alannda daha fazla etkinlik iin arzu edilen talep mmkn olduunca hzl bir ekilde kontrol tasarm ve uygulamas ihtiyac ile ne kmaktadr. Pek ok tasarm ynteminin grafiksel olmas sebebiyle kontrol tasarm sreci elle izim yerine grafiklerin uygun yazlmla bilgisayarlar kullanlarak izilmesiyle hzlanabilir. Bilgiler sistem iin tasarlanan kontrol yntemini ve kontrol sistemi modelini dorulamak iin simlasyon tabanl alma da kullanlabilir. Ayrca hzl kontrol bilgisayar yazlm aralar endstriyel uygulamada, kontrol uygulamas ve test ilemini arttrmada kullanlmaktadr. Tm bu sebepler ve

bahsedilen nedenlerle bilgisayar destekli kontrol tasarm ve uygulamasn rencilerin baarl kontrol eitimi iin bir zorunluluktur [38]. Kontrol teorisini, ilk olarak renen renciler kontrol teorisi ve uygulamas arasnda balantlar kurmada zorluklar ekmektedir. Geleneksel laboratuar kurulumu, kablo balantlarn gerekletirilmesi ve laboratuar ekipmanlarnn kurulum aamalarnda ok zaman harcamas, veri analizi ve derslerde retilen temel kontrol kavramlaryla ilikili deney sonular iin ok az zaman verilmesi gibi kstlamalar nedeniyle verimli, etkili bir renme gerekletirilmemektedir. Ayrca, dnem banda temel kontrol dersinde ok fazla sayda renci nedeniyle (tipik olarak yaklak 60 renci) zaman planlamas bir problem olabilmekte ve renciler teoriyi bilmeden nce bir laboratuar deneyi yapabilmektedirler [39]. Gereki simlasyonlar rencilerin kontrol teorisini renmesinde etkili bir deneyim salamasna ramen, gerek laboratuar deneylerin nemi nceden tahmin edilmez. Gerek zamanl deneyler grlt etkileri, kontrol kstlar, lineer olmayan etkiler ve zaman baml deien parametreler gibi sistem performansna etki eden faktrler iin derste etkili renme ortamlar sunar. Grsel dnt de nemlidir. Faktr eitlilii nedeniyle, fakat bazen geleneksel derste bu deneyimi salamak zordur. [36] nolu alma farkl teslimat yntemleri kullanarak byle bir deneyim salamak zere alternatif bir yol sunar. ki laboratuar lekli deneyler internet zerinde gvenli altrlmak zere gelitirilmi olup, uzaktan proses kontrol sunucu-istemci paradigmas ile ilikilidir. Sunucu bilgisayar; gvenlik, veri gvenlii, veri dorulamas ve oturum ynetimi dikkate alnarak normal veri toplama donanm ile prosese baldr. Laboratuarn esiz bir yetenei rencilerin internet zerinden gerek zamanl olarak kontrol stratejilerini tasarm, test ve dorulamasdr. Gerekli uzak kstlama ve snrlklar birimlerin uzakta gvenli altrlmasn gerektirir. almalar gstermektedir ki a hzlar yava proses dinamikleri nedeniyle bu sistem iin bir sorun tekil etmezler. nternet ynlendirmeli laboratuar modllerinin herhangi bir yerden herhangi bir zamanda eriilebilmesi konsepti etkili laboratuar deneyimi iin snfn byk bir blmne frsat salamaktadr [36]. Bu deneyler internet balantl snflarda dersler esnasnda etkileime gstermek iin de kullanlmaktadr. Web tabanl sanal laboratuarlar bir bilgisayar destekli kontrol renmede bir adm olarak karlalan pek ok problem iin iyi bir zm sunar. Sanal laboratuarlarn kullanlmas zel bir durumun veya renilmesi zor kavramlarnn 9

grsellemesi, ders materyalinin rneklendirilmesi ve ders materyalinde nemli ilikilere odaklanmasna imkn salar [38]. Kontrol tasarm iin sanal laboratuarlar Bode izimi gibi farkl elle izim ihtiyacn en aza indirir ve bylece daha iyi anlama desteklenir ve kontrol tasarm hzl bir ekilde yaplr. Web tabanl sanal laboratuarlar herhangi bir zamanda ve her hangi bir yerden teslimatn kolay olmas niversite tarafndan maliyet verimlilii salanmas ve renci tarafndan herhangi bir maliyet almamas sebebiyle arzu edilir. Eer gerekli ise kontrol tasarm iin sanal laboratuarlar snavlar esnasnda veya dier dev eitleri iin de eriebilir hale getirilebilir [38]. Yeniliki insan makine iletiimi veya belirli zellikteki grsel etkiyi baarmak iin belirli yapda olmayan MATLAB gelitirme ortamyla yer deitirebilir. Hangi parametrelerin hangi arala gre deiecei neyin gzlenilecei veya tasarlanaca, sanal laboratuar ortamnda veya sanal deneyin yapsna gre tanmlanmtr. Bu duruma bal olarak renciler verilen yapnn tesinde sanal deneyler gerekletiremezler. Bu nedenle kendi deneylerini oluturamaz ve tasarlayamazlar [38]. Fakat mhendislik eitiminde u durum garanti edilmek zorundadr ki, gen mhendisler yeni deney eklemek, tasarlamak ve deneyi gerekletirmek, veriyi analiz etmek ve yorumlamak, bir sistem, bileen veya proses tasarlamak ve arzu esilen ihtiyalar karlamak zere eitli yeteneklere sahip olmaldr [40]. Profesyonel kariyerlerinde zmek zorunda kalabilecekleri problemler rencilerin okulda gerekletirmi olduu belirli yapdaki deneylerden birine muhtemelen uymaktadr. Bu nedenle mhendislik eitiminde kalc olan gereksinim daha az yapda ve daha retici kendi deneylerini ina edebilecei, tasarm, veri analizi ve yorumlamada pratik yapabilecei ortamlarn varldr. Mhendislik alannda etkili renme teorik ve pratik altrmalarn karmn gerektirir. Bu nedenle kontrol mhendislii eitiminde laboratuar deneyleri ok nemli rol oynar [41]. Deneysel alma esnasnda renciler gerek dnya zellikleriyle tanr, deneyim ve bilgi sahibi olurlar. Bu durum sadece simlasyonlar kurularak elde edilemez. Klasik elle yaplan laboratuarlar ok yararl ve retici olmalarna ramen ortam, zaman ve personel maliyetleri dikkate alndnda ounlukla tamamyla meguldr ve renciler deneysel alma iin kendilerine verilen zaman aralnda bu laboratuarlar kullanmdadr. Geleneksel klasik laboratuardaki problemler uzaktan deneyler ve uzak laboratuarlar kullanarak zlebilir [42]. Uzak laboratuarlar gerek deneylerle etkileimli olarak simlasyon 10

almalarna gre daha yksek seviyeli deneysel alma ve deneyim sunmaktadr. Deneysel almalar web zerinden paylalabilmekte, datlabilmekte ve bu durum yksek yetenekli uzak laboratuar tasarmlarna yol amaktadr [30]. Kontrol laboratuarlar iin bir yaklam kesinlikle renci merkezlidir. Bu laboratuarlarn amac bir endstriyel prosesin kontrolnde renciye yeterliliini vermektir. Bu kontrol alannda renci iin unlar salar: Kontrol edilen sistemin tanmlanmas, doru bir modelin elde edilmesi, modelin test edilmesi, kapal evrim dinamiklerin test edilmesi, arzu edilen dinamiklere dayanan bir kontrolr gelitirmek, kontrolr test etmek ve kontrolr ayarlarn optimize etmek [43]. Fakat, rencinin laboratuar faaliyetleri iin laboratuar sorumlusu asndan zaman gerektirir, zellikle analog tasarm almalarnda her bir kontrol tasarm laboratuar sorumlusuna gsterilmelidir. renciler ounlukla bu alma iin ok fazla bir yardm talep ederler. Sonuta da bu durum [44] nolu almadaki yaklam destekler. Tm snf niin kontrol altklarn ve bildikleri ile neler yapabileceklerini anlar. ok nemli bir yarar batan sonra bir proje zerinde hibir eyden bir eyler meydana getirmenin heyecannn hissedilmesidir. nemli olan gerekte rencilere donanmsal tasarm yaptrmaktadr. Bu durum onlarn gerek dnya problemleri zm iin tasarmlarn ilerletmelerini zorunlu klar. Ayrca, bir probleme pek ok doru yant ve iletebilecei gibi, pek ok yanl yant da verilebileceini renirler. renciler ounlukla iki kategoriye ayrlrlar. Analog tasarm sevenler ve saysal tasarm sevenler. Her ikisini sevenler ok az saydadr. Digital (Saysal) bilgisayarlarla ok alternatif oluu ve kodlamay kolay klmas nedeniyle rencilerin byk bir ounluu saysal tasarm yntemlerini tercih edebilirler, fakat durum bu deildir. Her eye ramen tm renciler saysal tasarmn hzl ilerletebilmesini ve saysal kontroln daha esnek olmasn isterler [44]. Kontrol eitiminde bilgisayar tabanl uygulamalar laboratuar ortamndaki almalar ile desteklenmektedir. Bu almalarn pek ounda MATLAB arac kullanlmakta [5, 45-49], bu ara ile teorik bilgilerin benzetim ortamnda analizine yardmc olunmaktadr. Ayrca, kontrol alandaki ihtiyalara byk oranda cevap vermesi, rencilerin teorik bilgilerini destekleyici almalar kolay bir ekilde ve ksa bir sre ierisinde gelitirebilmeleri nedeniyle bu ara kontrol eitiminde byk oranda tercih edilmektedir [50]. nternet kontrol laboratuarlar kamps dndan daha nce de rencilere verilmemi herhangi laboratuar eitimini ieren dersler ou iin pek ok yarar 11

salarlar. Yerinde laboratuar retimi ile mkemmel bir deiim olmamasna ramen, uzak laboratuarlar kampse gelemeyecek renciler iin neredeyse gereki bir deneyim salayabilirler [51]. [51] nolu alma kapsamnda tmleik bir uzak kontrol uygulamalar seti gelitirilmektedir. Bu set ile internet zerinde eriim salanacak, laboratuar ann ve deneylerin tamamyla tmlemi olacak, fonksiyonellik artacak ve laboratuar imknlarmn eriim olanaklar genileyecektir. Bu almada bir uzaktan laboratuar tasarm srasndaki hazrlk abalar aklanmaktadr. Gnmz toplumunda, uzaktan eitim sisteminin daha esnek, eriilebilir ve uyarlanm (bo zamanlar, geici veya ekonomik engellemeler olmadan) olmasn talep eden renciler iin uzaktan eitim uygun bir zm sunmaktadr [52]. Ar kalabalk niversitelerde tm rencilere yeterli laboratuar paylatrmak veya onlara zellemi uygulama alanlar vermek mmkn olmamaktadr. Laboratuar zaman cetvelleri normal olarak danmann varl ve onun yetkisiz kullanm olmakszn snrldr. Laboratuar ekipmannn elde edilmesi ve sabit bakm ok ar maliyet demektir ki bu duruma baz kolejlerce g yetirilememektedir [53]. Mhendislik rencileri yksek uygulamal ierie sahiptir. ounlukla kontrol mhendisliinde mfredat tamamlayacak uygulama grubu teorik derslerde elde edilen sonularn gsterilmesini amalamakta ve ayn zamanda renciler gerek durumlarda ekipmanlarla ve cihazlarn ynetimi ile aina olmaktadr [54]. Kontrol mhendisliinde uygulama pratikleri yapmak zere bir sanal laboratuar TCP/IP protokol destekli uzaktan eriebilme ieren kontrol eitim sisteminin varl gerekli bir edir [55]. Bu durum rencilerin daha benzer bir yolla, sanki laboratuarda simlasyon yapyormu gibi uygulama yapmasna ve simlasyonlar gerek sistemleri ile yazlmlar etkileimli ynetmek zere imkn vermektedir [56]. II.2. Literatrde Kontrol Eitimi, MATLAB ve Uzaktan Laboratuar Sistemleri Bugn pek ok teknik niversite vardr ki uzaktan eitimi organize etmektedirler. Dersler ve simlasyon laboratuarlar elektronik destei, sanal laboratuarlar ve e-posta ile datlmaktadr. Fakat laboratuar uygulamalarnda fiziksel ekipman kullanlmaktadr ve bu uygulamalar deitirilemez. Uzak sisteme erimek iin yazlm genelde bir web tarayc ve(baz durumlarda) laboratuar sunucusundan download edebilecek bir uygulamadr [53]. Byle bir laboratuar almasnda 12

sunucu, laboratuarda yerletiren bir bilgisayardr, fiziksel sistemle etkileime girecek bilgisayar temsil ederken, istemci rencinin bilgisayarndadr, uzakta bulunmaktadr. ok genel bir laboratuar yaps unlar iermek zorundadr: -Ekipman (hareket eden nesne, otomatik kontrol laboratuar durumunda) bilgisayar sunucusu ve bir veri toplama kayt (sanal uygulama durumunda, ekipman bir simlasyon yazlm ile yer deitirir). -Bir ara yz program sunucu bilgisayarnda alr. Bu bilgisayar veri toplama katna gelen giden iaretleri retir ve rencinin almas hakknda bilgi tar. -Sunucu yazlm laboratuar ve uzak renciler arasnda haberlemeyi salar. -Bilgisayar ortam (genellikle intranet ve internet) internet zerinde eriim salar veya kamps omurgas, uzak laboratuar sunucu zerinden uygulama birimi iin gereklidir. -Bir istemci yazlm uzak(rencinin) bilgisayarnda alr, grafiksel bir kullanc arabirimi sunar ve bu yazlm sunucu ile haberleir [53]. Uzaktan deney almasnda renciler fiziksel olarak laboratuar da bulunmamalarna ramen gerek sistem ile alrlar. Byle bir zm gnde 24 saat renci iin ak bir laboratuar alarak maliyeti dk bir yol sunar. Uzak kullanclar, ihtiyac olduu zaman ve kendilerince daha rahat uzaktan bir ortamda laboratuara erierek deneylerini yapabilirler. Uzak laboratuarlar genelde snf derslerinin paylalmasnn ve renme srecinin desteklenmesinin, bir uzants olarak genelde akademik alanda kullanlrlar. Var olan zmlerin ounda uzak kullanclar, sistem parametrelerini deitirilebilir, deneyleri gerekletirilebilir, sonular yaz ve grafiksel olarak grlebilir ve deney sonular annda elde edilebilir. Bunlarn yan sra baz uzak laboratuarlar randevu sistemi ierir. Bu sistem ile uzak kullancnn zamann ve aktivitelerini organize etmesi salanr. u an iin literatrde eriilebilir uzaktan deneylerin ve laboratuarlarn byk bir blm uzaktan lme alann kapsarken bunlarn bir blm de Otomatik Kontrol alanndadr. lk uzaktan laboratuarlardan biri 1992 de Standfor Center for Innovations in Learning tarafndan Kontrol Mhendislii eitimi [57-58] ve uzaktan robotik [59-60] alannda uzaktan deneyler veya uzaktan laboratuarlar gelitirmek zere farkl yaklamlar amalanmtr. Pek ok durumda tasarmclar uzaktan deneylerin gerekletirilmesi iin uzak kullanc tarafndan sadece bir web taraycs gereksinimi karlayacak basit bir zm bulmak iin ok fazla aba sarf etmektedir [57, 61]. Baz dier zmlerde uzak kullanclar uzaktan kontrol gerekletirmek 13

iin belirli bir program download etmek zorundadrlar [62-63]. Uzaktan kontrol deneylerinin ounda kullanclar deneyi altrabilirler. Process veya n tanml parametre grubundan parametrelerini ayarlayabilir. ki serbest dereceli bir uzak kullanc, farkl 4 adet kontrolr ierisinden seim yapabilmektedir. Ayrca, Carnegie Mellon niversitesinde devre davrann belirlemek ve motor kontrolne ynelik iki adet elektrik mhendislii deneye eriebilir [64]. Oxford niversitesinde yeri kimya IT merkezi aratrmaclar sanal bir laboratuar gelitirmektedirler [65]. Bylece rencilerin internet zerinden etkileimli kimya deneylerini yapmalarna izin verilecektir. Singapure National niversitesinde gelimi bir elektrik mhendislii laboratuar belli bir zaman dilimi iinde kullanlmtr [66]. Tennessee niversitesinde, Chattanooga, online proses kontrol laboratuar vardr [67]. [36] nolu almada sabit bir istemci ara yznde kontrolr parametreleri deitirilebilmektedir. Bu almada tasarm istemci-sunucu mimarisine dayanr. stemci bir MATLAB/Simulink arayz olup renimin (kstl ntanml kullanc arayz olmakszn) kolaylkla eitli kontrol yaplarn konfigure etmesi ve gerek zamanl performans izlemesi mmkndr. Bu almada Simulink srkle brak ara yz ile kontrol sistem tasarm ve testi gerekletirilmitir. Byle bir uygulamann pedagojik yararlar detayl olarak [68] ve [69]de tartlmtr. Illinois niversitesi, The College of Engineering de retim iin kolej seviyesinde kontrol ve ilikili konular iin gelitirilen internet tabanl laboratuar a [51] ile laboratuar retimini blm seviyesinden kolej seviyesine tanm, ayn imknlarn oalmas ve blmler arasnda laboratuarlarn ortak kullanm gibi problemlere zm getirilmitir. Ayrca retim iin bu laboratuar on sekiz meslek dalna uygun ekipman desteinde geri beslemeli kontrol sistemleri ve birka uydu sistemleri ile robotik ve otomasyon laboratuar, mekatronik laboratuar ve ak g sistemleri laboratuarnn dahil edildii laboratuar a neredeyse Elektrik, Mekanik Uzay Havacl ve Genel Mhendislik blmlerini ieren bir dzine ders iin her yl 600n zerinde renciye servis vermektedir. Farkl bir konsept ile gelitirilmi bir uzaktan laboratuar Siena niversitesi yeleri tarafndan sunulmutur. Automatic Control Telelab (ACT) rencilerinin kontrol trn semesi, kontrol parametrelerini online olarak deitirilebilmesi ve hatta MATLAB/Simuling ortam zerinden kendi kontrolrlerini tasarlamalarna imkn vermektedir. ACT kullanlarak uzak kullanclar kiisel bilgisayarlarnda referans iareti veya zellemi bir kontroller tasarlayabilmekte ve ACT sunucuya 14

upload edilen baarl simlasyonlarda gerek zamanl prosese kar kendi almasn dorulaya bilmektedir [70]. Bu almada kullanc bir tarayc zerinden Java applet teknolojisi kullanarak grafiksel bir arayz zerinden deneye ilikin parametreleri seebilmekte ve gerek zamanl deney esnasnda an ve an deneyin grafik ktsn e zamanl olarak gzlemleyebilmektedir. Deney sonunda ise kullanc deneye ilikin verileri kendi bilgisayarna download etme imknna sahiptir. [51] nolu almada Java tabanl bir grafiksel kullanc ara yz (GUI) ne dayal bir alma yaplm ve bu alma gerek zamanl olarak bir DC-motor deneyi, bir ters pendulum ve iki eklemli dorudan srmeli robot kontroln gerekletirmektedir. Bu almada laboratuar uygulamalar MATLAB/Simulink simlasyon kodunun ve OpenGL animasyon kodunun uzak kullanc tarafndan download edilmesine izin veren bir ikon tabanl ara yze sahiptir. Kullanclarn kendi kontrol tasarmn test, simlasyon ve animasyon olarak bir laboratuarda gerek donanm zerinde uygulama yapmadan nce kullanmas nemlidir. Ayrca, Java GUI laboratuar sistemi arayz sunum iin video, ayn zamanda uzak kullanc tarafndan izim ve analiz iin MATLAB datasnn alnabilmesine ve download edilebilmesine imkn veren bir kontrol modl iermektedir. [56] nolu almada Kontrol Mhendislii seviyesindeki renciler iin bir sv seviye prosesi seilmitir. Bu almada MATLAB/Simulink ortam desteindeki fiziksel ekipman Java Applet teknolojisi ile web tabanl olarak tarayc penceresi zerinden kontrol edilmektedir. [11] nolu almada uzaktan internet tabanl otomatik kontrol laboratuar almasn ieren bir proje gelitirilmitir. Bu almann amac internet topluluuna deneysel imknlar salamak zere uzak bir laboratuar uygulamas ve de Mekatronik ve Otomatik Kontrol alanlarnda temel ve gelimi aratrmadr. Programn gelitirilmesi iin izlenen strateji ounlukla mhendislik eitimi odakldr. Baz uzaktan laboratuarlar kullananlarn zel bir yazlm aralarn veya bir gerek sistemi kullanmakszn gerek prosesin kontrolne izin vermelerine ramen laboratuara eriim her hangi bir zamanda sadece bir kullanc tarafndan snrlandrlr. Bu kstlama sanal prosesleri kullanarak alabilir [71]. Sanal bir proses gerek prosesin cevabn simle eden bir yazlm fonksiyonlar ve gerek prosedrleri olarak tanmlanr. movetoavi, avitomove, avi5, addframe veya getframe gibi MATLAB komutlar standart video avi dosyalarnn retilmesine ve her hangi bir PCde gsterilmesine izin verir. Bylece renciler yeniliki bir yol olarak 15

retilen video ortamn download edilebilir. AVI dosyasn oynatmak suretiyle sistemin kararll ve kalc hal hatas gibi zelliklerini analiz edilebilirler [58]. Karma kark maliyet ve internet gecikmelerden kaynaklanan sorunlar [23] uzaktan kontrol sistemin uygulanmas yeteneini kstlamaktadr. [58] nolu almada bu tip problemlere ve zellikle standart bir kontrol tasarm arac olan MATLABin kullanld kurumlar iin zellikle bir zm amalanmtr. Amalanan zm prosesleri ve uzaktan kontrol simle eden video animasyonlarna izin veren sanal bir proses kullanan MATLABi destekler. Odaklanan zm iki temel amaca sahiptir: servis salayclar (reticiler) iin basitlik, uzaktan kullanclar (renciler) iin dk maliyet. Uzaktan deneyler ok yararl ve eitici grnmelerine ramen, kurulmalar iin ok fazla zaman gerektirmektedir. Tasarmclar web sunucunun altrlmas, Java programlar Common Gate Interface (CGI) yazm kurallar ve internet haberlemesi gibi farkl aralar ve teknelojileri bilmek zorundadr. Fakat bu ok fazla gerekli bilgi nedeniyle, retim verilen derslerde uzaktan deneyler ok nadir olarak yardmc bir materyal olarak sunulur. [42] nolu almada Otomatik Kontrol alannda uzaktan deneylerin hzl uygulanabilmesi bir mimari sunulmutur. Sunulan bu zm kullanarak uzaktan deneyler hzl, kolay ve etkili bir ekilde gerekletirilmektedir. [30] nolu almada donanm destei ile gerek zamanl laboratuar deneylerinin anlk uzaktan eriimine imkn veren tmleik uzaktan laboratuarn temel yaps ve zellikleri sunulmutur. RMCLab isimli bu platform elektrik mhendislii deneylerinin gerek zamanl olarak ve ok sayda renciye salanmasna imkn vermektedir. Ayrca bu durum dk donanm uzak yap maliyeti ve konfigre edilebilirlik imkan ile Mart 2004ten itibaren Patras niversitesi (Yunanistan) Elektrik ve Bilgisayar Mhendislii blmnde, gelitirilmi ve uygulanmaktadr. RMCLab platformun kullanclara sunaca ana hizmet laboratuar deney konularnn herhangi bir zamanda ve e zamanl bir ekilde gerek zamanl laboratuar deneylerinin herhangi bir potansiyel kullanc tarafndan eriilebilir olmasdr. RMCLab rencilerin laboratuar yeteneklerini deerlendirmeye ynelik farkl deerlendirme kriterleri (lme deerleri, cihaz ayarlar ve oktan semeli sorular ) gibi ok eitli fonksiyonlar da sunmaktadr. Second Best to Be There (S.B.B.T.) uygulamas bir uzaktan renme uygulamas olup Oregon Eyalet niversitesinde Kontrol Mhendislii laboratuarndaki deneylerin uzak kullanclar tarafndan gerekletirilmesine izin 16

verir [72-73]. Uzaktan eriim bilgisayar a zerinden sanki ayn laboratuar ortamndaym ve Kontrol ortamnda bulunuyormu gibi bir zm sunar ve renciye gerekte laboratuarda fiziksel olarak olmasa bile laboratuarda olma imkn salar. [74] nolu alma ile bir nceki bahsedilen alma Java programlama dili ile yeniden tasarlanm olup, almada amalanan bir modem zerinden veya laboratuardaki bir istemci bilgisayardan rencilerin kolaylkla sisteme ulaabilmesini salamak, danmanlar iin derslerini oklu snf ortamnda gerekletiren gsterimlerle tamamlamak ve uzak bir ehirden, bir niversiteden, uzaktan eitim rencileri iin imkan salamaktr. Veri gvenlii ve kullanc onaylama, veri gvenlii sorunlarnn zm iin web eriimli bu tasarmda yer almtr. Uzak kullanc java runtime destekli web taraycya sahip herhangi bir bilgisayar zerinden alabilir. Burada gsterim amal kullanlabilir proses Erik isimli 3 serbest al robot koludur. Bu ekipman bir C dili program ve laboratuardaki bir PC zerindeki veri dosyalar tarafndan kontrol edilir. C program ve veri dosyalar yetkili uzak kullanclar tarafndan upload edilebilir ve deitirilebilir. Deneyin grntlenmesi iin canl bir video yayn uzak kullancya laboratuarda olduunu hissetmesine yardmc olur. almada sadece bir uzaktan laboratuar deneyi ulaabildii iin sadece bir kii deney kontrolne sahip olabilir. Bu durum laboratuarda deney elemanndan ne olup bittiinden sorumlu sadece bir kiinin olmasn salar. Deneyi kontrol eden kii sunucuya dosyalar gnderebilir, derleme yapabilir, deneyi altrabilir, laboratuardaki deney ekipmann kontrol edebilir. Dierleri laboratuardan canl video ve ses yayn zerinden gerekleen deneyi gzlemleyebilir. u anda kullanc kontrol oturumu bana zaman 29 dakika ile snrl tutulmutur. Bir oturum iin gerekletirilen ilemlere ait detayl log alnmas otomatik olarak sistem tarafndan yaplr. Endstride mikrobilgisayar kontroll bir laboratuar istasyonu Technology niversitesi Kontrol Blm, Malezya (V.T.M)'da gerekletirilmitir. Bu laboratuar Automatic Control Laboratory Station (Otomatik Kontrol Laboratuar stasyonu) veya A.C.L.S olarak bilinir [75]. A.C.L.Snin gelitirilme amac laboratuar deneylerini yeniliki bir anlayla gerekletirilerek yaparak, yaayarak renme deneyimini salamak, modern ve etkileyici saysal donanm ve yazlm kullanarak pratik mhendislik yetenekleri elde etme frsat vermek, rencilerin ilgisini ekmek, etkili laboratuar retim imkn salamak ve kontrol teorisi reniminde etkin ekilde aktarmak zere tasarlanmtr. [39]. A.C.L.S. geleneksel laboratuar 17

kurulumu, kablo balantlarn gerekletirilmesi ve laboratuar ekipmanlarnn kurulum aamalarnda ok zaman harcamas, veri analizi ve derslerde retilen temel kontrol kavramlaryla ilikili deney sonular iin ok az zaman verilmesi gibi kstlamalar nedeniyle verimli ve etkili bir renme gerekletirilememesi ve youn renci kontenjan gibi problemlere zm olmak zere ve laboratuar altrmalarn daha etkili ekilde gerekletirmek zere tasarlanmtr. Bu laboratuar istasyonu kurulum, lmlerin alnmas ve laboratuar admlarnn otomatik gerekletirilmesiyle ilgili sreci tamamyla otomatik yapmaktadr [39] ki bu durum zellikle renciler asndan kolaylk ve esneklik sunmaktadr. Ayrca, online modifikasyona izin vermek ve gerek zamanl alma yetenei salamak, geniletilebilir seenekler ktphanesi imkan ile yeni modl ve yeni algoritmalarn eklenmesine izin vermek, deney verisi ve analiz sonular ile kontrolr tasarm parametrelerin depolanmas ve geri getirilebilme imkn gibi eitli yeteneklere sahiptir. A.C.L.S.nin tasarmndaki asl yenilik, kullanlan kiisel bilgisayarn sadece, veri depolama veri izlemek iin deil, ayn zamanda laboratuar ayarlamasnda, deney sonularnn dorulanmasna kadar tm admlarn otomatikletirilmesini salamaktr. II.3. Literatrde MATLAB Web Server (MWS) ve Sanal Laboratuar almalar ou internet kullanan yazlm sistemleri simlasyon ve sanal ortaml destei ile web [76-77] zerinden grlebilmektedir. Bu yazlm sistemleri genellikle kullanc tarafna ynelik deney dokmantasyonu, iletiim destei ve kullanclar arasnda birlikte alma gibi zellikler iermektedir. nternete dayanarak hem sanal bir renme laboratuar, hem de uzaktan bir renme laboratuar renme ortamnda bir laboratuar inas iin kullanlabilmektedir. Bir sanal laboratuar, bir bilgisayardaki simle edilen bir prosese srekli erime izin verir. Uzaktan laboratuarlar geleneksel ve sanal laboratuarlar arasnda gerek deneyler yaplmasna imkn veren bir yapya sahiptir. Modern simlasyonlar doru bir ekilde devre performansn tahmini gerek zamanl uygulamalarn tasarm ve kullanlmas iin doru bir ekilde tahmin edilmektedir [78]. Bylelikle uzak laboratuarlarn eitim deeri artmaktadr. Uzak laboratuarlar gerek zamanl laboratuar deneyleri sz konusudur, ancak ok geni kullanclar iin kaynaklar paylalamamaktadr. Bylelikle yzlerce renciden 18

oluan geni snflara destek ve hizmet gerekleememektedir [30]. ok fazla artan kaynak talebi ile oluan kstlamalar iin sanal laboratuarlar bir alternatiftir. [58] nolu almada sanal ve uzaktan laboratuarlar gerekletirmek iin iki adet MATLAB ile tmleik yazlm paketleri, MATLAB Web Server (by MathWorks) ve WinCon (by Quansel & Culsanting) kullanlmtr. MATLAB arac ile yaplacak uygulamalarn web tabanl olarak hazrlanmasnda ska kullanlan aralardan biri MATLAB Web Server (MWS)dr [4, 79-82]. MWS kullanclarn internet zerinden MATLAB uygulamalarnn altrlmasna imkn veren ve MATLAB ile birlikte alan bir ara olup; MWS, MATLAB programlarnn altrlmas, hesaplama ve elde edilen sonularn Web taraycsnda gstermek zere MATLABe veri gndererek WWWnin yeteneklerini kullanmak zere uygulamalar oluturmaya imkn veren tmleik bir yazlm paketidir [83]. MWS istemcilere internet zerinden uzaktan MATLAB uygulamalarn altrmaya izin verir. stemciler TCP/IP protokol ile bir a zerinden MATLAB ile etkileime girerler. Bu etkileim uygulama iin grafiksel ara yzlerin sunularak HTML formlarnn oluturulmasyla gerekleir. Bu sadece MATLAB tabanl aralar kullanrken herhangi bir MATLAB programlama bilgisi bilinmesine gerek brakmaz, ayn zamanda kaynak koda yetkisiz kullanc eriimlerini de engeller [84]. MWSnin temel zelliklerinin kapsaml aklamas ve uygulama gelitirmede kullanlan komutlar iin [83]e baklabilir. Fakat Mathworks tarafndan salanan MWS yazlm dk seviyede donanm online eriime izin vermez veya bu tarz yaplan almalar TCP/IP protokolndeki zamana bal kstlamalar nedeniyle ok ksa sreli gerek zamanl almalar iin bir alternatiftir. Bu nedenle uzaktan laboratuarlarn ve endstriyel proseslerin kontrol amac ile kullanlamaz. Gerek sistemlerin uzaktan kontrol ve uzaktan laboratuarlara izin vermek iin eitli veri toplama kartlarna ilikin ilave konfigrasyon gereklidir ve buna bal olarak MATLAB ortamnda bu kartlara erimek iin yeni rutinler programlanmak zorundadr. Bu rutinler A/D ve D/A dnm salamak kodlayc iaret yntemini salamak, D/A giri k eriimi salamak ve zamanlayc programlanmasn ieren aamalar kapsar. MATLAB altrabilir fonksiyonlar mex komutu ile DLL dosyalar formatnda elde edilirler, mex komutu ile Visual C++ 6.0 derleyicisi kullanlr. MATLAB ve MWSye gerek bir alternatif WinCon kullanmaktr. Bu ara uzak bir PCde gerek zamanl olarak bir Simlink diyagram tarafndan retilen kodu altrr [85]. WinCon gerek zamanl 19

kod kullanarak verinin online izilmesine imkan salar ve WinCon Control Panels veya Simlink vastasyla model parametrelerinin alma zamannda deitirilmesine izin verir. Aslnda WinCon Client (WCC) ve WinCon Server (WCS)dan oluur. Bu aralar TCP/IP protokol kullanarak iletiimi kurar. [58]. Ancak simlasyona dayal ve MATLABin M-dosyalarn kullanarak sanal laboratuarlarn inas iin MWS, dorudan tasarmna izin veren bir yaklam sunar. Sanal uygulamalar iin M-dosyas (M-file) standart bir MATLAB fonksiyonu olup; HTML giri dkmanlarn kabul eder ve HTML k dkmanlarn geri dndrr. Bu M-dosyas MWS formatna uyumlu olabilmelidir ki bylece internet zerinden eriilebilir olsun. Ayrca sanal uygulamalar Simulink modelleri kullanarak gelitirilebilir. Bu durumda MDL-File ve M-File gerekebilir. MDL-File tm simlasyon bloklaryla beraber standart bir Simlink modeli iken M-File model parametrelerini gnceller ve simlasyonu balatr [58] ve sonular uygun formatta elde ederek web kullancsna sunulmak zere sonu web sayfasnda sunar. IIR Dijital Fitre tasarm ve kontrol tasarm gibi eitli sanal laboratuarlar [86] nolu kaynak zerinden ulaabilir. Bu almada sanal laboratuara eriim sadece spanya ile snrldr. Dersi alan her hangi bir renci sanal laboratuara eriebilir ve almasn online olarak gerekletirebilir. Tek gereksinim, internete bal bir PC ve bir web taraycs yazlmdr. Maliyet renciler iin dk tutulmutur. nk uzak bilgisayarlarda bir MATLAB versiyonunun yklenmesine gerek yoktur [58]. Fizik, matematik, mhendislik ve klinik bilimi, tbbi grntleme eitimi ieren disiplinler aras bir alma Biyomedikal Mhendislik alannda gelecein profesyonelleri olmak adna renciler iin ok nemli ve popler bir konuda internet eriimli renme materyalleri yllarca gelitirilmitir. Fakat bu materyallerin ierii temelde aklayc olup, biyomedikal rencilerin ihtiyalarna uymamaktadr. Bu amala [87] nolu almada tbbi grntleme konularn biyomedikal mhendislik rencilerinin daha iyi anlamasna yardmc olmak iin gnmzde kullanlan tbbi grntleme modelleri zerinde oklu multimedya modlleri gelitirilmi ve burada MWS aracndan yararlanlmtr. [88] nolu almada XploRe istatistik paketi [89] kullanlarak bir istatistik sistemi gelitirilmitir. Bu almada MATLABin hesaplama ve grafiksel ortam olarak kullanlmasna karar verilmitir. MATLABin internet ile balants MATLAB Web Server vastasyla yaplmtr. MATLABin avantaj kullanclarn kendi algoritmalarn hazrlayabilmek ve bunlar MATLAB ktphanesinin bir 20

paras olarak kullanabilme imknnn olmasdr ve hazr fonksiyonlar kullanarak programlama yapmak kolaydr. Bylece MATLAB rencilerce hazrlanan canl formlasyon algoritmalar iin uygundur. Kontrol alannda MWS kullanlarak ok farkl alanlarda ve ok eitli almalar da yaplmtr. [2] nolu kaynakta MWS arac ile ultrasonik bir motor iin uzaktan eriimli olmak zere hz kontrolne ynelik deneyler yaplm ve ayrca bu almada kullanclarn motorun fiziksel durumunu grebilmektedir. Bir baka kaynakta kontrol alannda sklkla karlalan MIMO (oklu giri oklu k) sistemlerinin k iaretlerinin dorusallatrlmasna ynelik youn ilem gerektiren matematiksel hesaplamalar MWS arac yardmyla uzaktan yaplmtr [3]. A. Pester ve R. Ismailov uzaktan renmede kullanlabilecek web tabanl uygulamalara rnek olabilecek baz uygulamalar tasarlamtr [4]. [5, 38] nolu almalarda kontrol eitiminde kullanlabilecek ve rencilerin kendi bilgisayarlarnda MATLAB yazlmn kurmadan MATLAB uygulamalar altrabilecei bir almada kullanclarn sisteme uzaktan balanmalarnda ve MATLAB arac ile iletiim kurulmasnda MWS aracndan yararlanlmtr. [58] nolu almada rnek bir sanal proses (DC servo motor, SFT 154 DC motor, Feedback Instruments Limited) kontrol MWS arac kullanlarak gerekletirilmitir. Bu almada motor konumu ve kontrol hareketini ezamanl ieren motor imleci destekli iaretler izlenebilir. Kullanclar sistemin srmsz veya ar snml sahip olup olmadn, ayn zamanda cevabndaki maksimum am ve cevabn oturma zaman gibi durumlar analiz edebilirler. nternetteki [90] almas kontrol teorisi (Sistemler ve Modeller, Sistemler ve Kontrol) arka plana odaklanm ve iki temel dersin retimini desteklemek zere Kontrol Mhendislii Blm, Elektrik Mhendislii Fakltesi, CTU Praguede gelitirilmitir. Bu almadaki baz etkileimli rneklerle btnletirme abas yaplmtr. Bu etkileimli rnekler (daha genel olarak, etkileimli rnek yerine sunum deyimiyle) yaz ieriini sadece alarak yerine tartmal problemler iin gerekten aktif bir renci olmasn okuyucuya izin vermektedir. Bu sunumlar MWS ile glendirilebilir. Ancak, bu sunumlarn hazrlanmas MATLAB m-dosyalarna dayanaca iin MWS kullanmnda baz snrllklar olduu grlmtr [91]. Temel snrllklar ve problemler unlardr:

21

1.

Bir seferde bir uygulamann hazrlan zaman almaktadr. nk prensipte giri ve k HTML sayfalar zel bir ablon olarak hazrlanmak zorundadr. MWS kurulmu ile birlikte verilen rnek m-dosyalara ait kodlar uzun bir ekilde deitirilmeli, bu da gncelleme problemlerine sebep olmaktadr. Uygulama tasarm iin program kodlama ve internet teknolojisi (HTML, CSS, HTTP protokol gibi) bilinmek zorundadr. Bir gvenlik problemi vardr ki kullancdan tm giriler dikkatli ekilde kontrol edilmek zorundadr. nk web sayfalarnda gelen giri verisi string tipinde olup, say, matris gibi bir formata dntrlmek zorundadr. Fakat eval fonksiyonu kullanlamaz. nk kullanc giri ve . enter, del, *,! gibi zel sembollerin girmesine izin verilmektedir. Kullanclar sunucu konfigrasyon sreci ile aina olmak zorundadr. (Her yeni uygulama iin konfigre etmek zorunluluu vardr.) MATLAB komut satrnda k veren srece sahip m-dosyalar MATLAB Web Server zerinde altrlmaz.

2.

3.

4.

5.

6.

Bu problemler Agmaweb sisteminin gelitirmesine yol amtr. Bu sistemle problemlerin tm zlmekte ve ayrca baz ilave zellikler uygulamaktadr [91]. Benzer problemlerin zmne ynelik bir baka alma da [92-94] nolu kaynaklarda yaplmtr. Bu almada kullanlan Web MWS Sistemi zerinden MATLAB/Simulink uygulamalarnn web zerinden altrlmasna ve kolaylkla Internet kullanclarnn bu ortam kullanan uygulamalar gelitirmesine imkn vermek zere bir web ortam tasarlanmtr. Yukarda bahsedilen snrllklara bir alternatif olmak zere gelitirilmi olan bu sistem, Mart 2009'dan itibaren Marmara niversitesi, Teknik Eitim Fakltesi, Elektronik-Bilgisayar Eitimi Blmnde rencilere Otomatik Kontrol dersi kapsamnda simlasyona dayal ve laboratuar deneylerin internet ortamnda gerekletirilmesine imkan vermek zere gelitirilen A.C.S.E.S. (Otomatik Kontrol Simlasyon Ortam) almasna servis vermektedir. Web MWS Sistemi ile kolaylkla web tabanl bir MATLAB uygulamas gelitirmek ve dorudan internet ortamnda yaynlamak mmkn olabilmektedir. Ayrca Web MWS Sistemi'ni kullanan [95-96] ve [97] nolu hem kmeleme, hem de kontrol olmak zere farkl alanlarda almalar da yaplmtr.

22

Bilgisayar destekli kontrol tasarmnn renilmesinde bir adm olarak ilave maliyetler kanlmazdr [38]. Bilgisayar destekli kontrol tasarmnn retilmesi karar verilmise bilgisayar ve uygun yazlm herhangi bir yeden ev devi ve renme iin evden ve niversiteden eriebilir olmak zorundadr. Bilgisayar ve yazlm zellikle dier tip altrma ve snavlar esnasnda kullanlmak zorundadr. MATLAB yazlm zellikle kontrol eitimi alannda maliyetler konusunda bir rnek olarak alnabilir. renciler ve niversiteler arasnda MATLAB faaliyetlerinin paylalmas ve bunun akabinde maliyetler dnldnde rencilerin ayr ayr lisans satn almas, niversitenin bir akademik snf lisans satn almas, yazlm gncellemesi gerektiinde renci ve niversite arasnda yazlm senkronizasyonu ve bu durumdaki eitli sorunlar, niversitenin o andaki bir a lisans satn almas ve MATLABi evden veya niversitesi yerlekesinden uzak bir ilemci konfigrasyonu kullanarak rencilere teslim etmesi gibi ok farkl olaslnlar vardr. Ayrca niversite iin bir baka olaslk da MWS ve buna elik eden lisansn kullanlmasdr. MWS, MATLAB 6.5 srmne elik eden bir ara kutusudur. Bir MWS lisans satn almak sadece bir lisans talep edildiinde lisanslama MWS tabanl uygulamalarn yaynlanmas web uygulama kstlar da dahil olmak zere snrsz sayda web tarayc ilemcileri olmak zere 3. Parti kullanclar (renciler gibi.) tarafndan kullanlmas maliyet gerektirmez. Yeni MATLAB srmleri dnldnde MWS lisans asndan o andaki a MATLAB lisans veya tasarm iin kullanlan bilgisayar MATLAB lisans ([98]da gelitirme ilave eki 8 nolu blmnde) durumlarna baklrsa MATLAB maliyetlerinin paylalmas iin son iki zm maliyet/performans ile ilikilidir. O andaki a lisans etkileim ilave olmak zere tm MATLAB performansn verir. Fakat ayn zamanda bu durum MWS versiyonundan daha pahaldr. MWS kullanarak web tabanl bir sanal laboratuar ina edilebilir ve web zerinden kullanlabilir [38]. MATLAB GUI yerine web tabanl kullanc arayz herhangi bir MATLAB uygulamas iin gelitirilebilir ve bu zm iin MWS arac kullanlabilir. Web teknolojisi ok hzl gelimektedir ve renme materyelinin salanmas iin ok uygundur. Baarl web tabanl sanal laboratuar uygulama almalar [99-100] gstermitir ki, applet tabanna dayanan yeniliki insan makine iletiimi destekli web uygulamalar gelitirilebilir. [43] nolu almada amalar gerekletirmek zere MATLAB temel ara olarak kullanlmtr. Bu almada vurgulanan udur ki almaya katlan rencilerin ou MATLAB ile aina deilken bile alma kapsamnda ve bir ucu 23

ak olarak ders ierii ile ilintili olarak analiz yapmak amal gelitirilen etkileimli bilgisayar dosyalar ile rencilere retim srecinde destek olunmu, rencinin teorik bilgilerini kendilerine verilen dosyalar kullanmak suretiyle gerek zamanl hidrolik ve stma sistemi zerinde deneme imkan salanmtr.

24

BLM III

WEB SUNUCU YAZILIMI VE YAPILANDIRMASI

Web sunucusu ya da a sunucusu, internet zerinde bir web sitesinin yaynndan sorumlu olan bilgisayardr. HTTP bata olmak zere HTTPS, FTP, SMTP, POP3, DNS ve hatta gerek zamanl veri ak (streaming media) gibi farkl hizmetler verebilir [101]. Hizmet sunucular ilevini grecek bilgisayarlar iki alt grupta toplanabilir. Birincisi Internet eriimini salayan dier bir deyile Internet balant hizmetini verecek olan bilgisayar, dieri ise hizmet sunucu bilgisayar buna da web servislerinin verildii bilgisayar olarak tanmlayabiliriz. Deiik firmalarn rettii eitli web sunucu yazlmlar bulunmaktadr. Dnyadaki web servislerinin yarsndan fazlasn Apache web sunucular vermektedir. Bu sunucular gvenli eriim ve web zerinde ynetim salayan CGI (Common Gateway Interface) yapsnda web arayzlerini de salamaktadr [102-103]. Apache web sunucusu hakknda detayl bilgi ve belgelere ulamak iin [104] nolu kaynaa baklabilir. III.1. Windows letim Sisteminde Apache Web Sunucu Servisinin Kurulmas ve Yaplandrlmas Apache web sunucusu iin internet zerinden gncel srmler temin edilebilir. [105] nolu kaynakta verilen web balants kullanlarak Apache web sunucu yazlmn kurmak zere altrlabilir kod uzantl (.exe), derlenmi Windows dosyas (.msi) veya sktrlm (.zip) formatl gibi eitli ykleme paketlerinden uygun olan web sunucu bilgisayarna yklenmelidir. Kurulumun Microsoft Windows versiyonu kurulumu srasnda bir Windows bilgisayar programnn kurulumu gibidir. Apache web sunucusunun kurulumu srasnda sunulan seeneklerden yararlanlarak kolayca kurulabilmektedir. Kurulum baladktan sonra ilk gelen pencere ekil III.1deki gibidir. Bu pencereden web sunucusunun srm

25

ile ilgili bilgiler gelir. Next dmesi iaretlenerek kurulumun bir sonraki aamaya gemesi salanr [106].

ekil III. 1 Apache web sunucusu kurulumu balang ekran ekil III.2de grld zere Apache web sunucusu ve kullanc ile ilgili bilgilerin girilmesi ekran Apache kurulumu iin nemlidir. Network Domain kutusu Apache web sunucusunun alaca bilgisayar ann blge a ad verilir. Burada kiisel bir bilgisayar yklenmesi durumunda localhost olarak girilmesi istenir. Eer bir DNS kayd olan bir a kullanlyor ise rnein bizimsirket.com gibi a kayd yaplm ise buraya kayd bulunan bu a adnn girilmesi beklenir.

26

ekil III. 2 Apache kurulum ve kullanc bilgileri Server Name kutusuna Apache web sunucusunun alaca a kayd yaplm olan bilgisayarn ad tamam ile girilir. rnek olarak bilgisayarn ismi www ise bu alana girilecek olan adres www.bizimsirket.com eklindedir. Bu adres Internet zerinden eriilecek olan bilgisayarlarn bu adresi yazdnda ulamasn ve a zerinde tanml olmasn salar. En alt kutucukta Administrators E-mail Adress ksmnda Apache web sunucunun cevap bekleyen kullancya hata mesaj vermesi durumunda iletiimde bulunaca ynetici e-posta adresidir. En altta bulunan "Install Apache HTTP Server programs and shortcuts to" seimlik dme ise bilgisayarmzn alt iletim sisteminin zelliinden kaynaklanan bir duruma gre yaplandrma yaplmasn salar. Microsoft Windows XP, NT ve 2000 zeri iletim sistemlerinde kullanclar ayr olarak almas salandndan her kullanc sisteme kendi ad ile al salar. Bu durumda kullanclar ayn bilgisayar kullansalar bile kendilerine ait olan hesaplara ait haklar ile ilem yapabilirler. Bu durumda ynetici olmayan birisi bu bilgisayar amas durumunda Apache web sunucusunu altramayacaktr. Eer bu bilgisayar kullanan tm kullanclarn web sunucusunu altrmas isteniyor ise ilk seenek olan Run as a service for All Users seenein iaretlenmesi istenir. Bu kutucuun iaretlenmesi durumunda Apache web sunucusu bir Windows iletim sistemin servisi gibi alacaktr . Dier seenek olan Run when started manually, only for me (kii) iaretlenmesi 27

durumunda Apache web sunucusu sadece bilgisayar kullancs olan kii tarafndan altrlabilir. "Next" tuu ile devam edildiinde Custom seenei ile kurulum yapan kullanc kurulum srasnda Apache web sunucusuna ait dokmanlar veya Runtime olarak bahsedilen Apache web sunucusunun altrma dosyalarn semesi beklenir. Apache web sunucusu Runtime dosyalar programn almas iin gerekli olan tm dosyalar ierdiinden, eer bu dosyalarn kurulum srasnda yklenmesi iptal edilirse web sunucusu hi almayacaktr. Bir sonraki admda Custom seenei ile kuruluma devam edilir ve ekil III.3deki gibi bir ekran ile karlalr. Bu pencereden Apache sunucusunun kurulum yolu deitirilmek istenirse Change dmesi yeni bir kurulum dizin yolu seilebilir.

ekil III. 3 Apache kurulum yeri ve yardm dosyalar iin dizin yolu seimi Kurulum yerinin seimi web sunucusunun kullanaca dosyalarnn

yerleiminin belirlenmesi amacyla dzenlenmektedir. Genellikle kurulum yeri C:\Program Files\Apache2 Group dizini ierisindedir. Eer nceki kurulum aamalarnda kurulum seenei Complete olarak seilirse kurulum dizini belirtilen yol olarak kalr. Eer farkl bir kurulum yeri belirlenecek ise Change dmesine baslarak kurulum dizin yolu ve dolaysyla Apache (web sunucusu) dizin yolu deitirilebilir. Kurulum ayarlar tamamlandktan sonra artk bilgisayara web 28

sunucusunun kurulmas ilemi balayacaktr. Bir sonraki ekranda Install dmesine baslarak kurulum aamasna geilir. Kurulum ilemi baladktan sonra disk alanna kurulum iin gerekli dosyalar kopyalanmaya balar ve son olarak Finish dmesine baslarak kurulum ileminin bitirilmesi salanr. Kurulum ilemi bittikten sonra Windows gezgini ile C:\Program Files\Apache2 Group dizinine gidilerek Apache web sunucusu kontrol paneli

altrlarak web sunucusunun durumu kontrol edilebilir. Bu kontrol paneline daha sonradan ihtiya duyulur ise web sunucusu stop dmesi ile durdurulur ve kontrol panelinde bulunan start dmesi kullanlarak daha nceden durdurulmu olan web sunucu hizmeti yeniden balatlr. Kontrol paneli bize web sunucusunun durumu hakknda bilgi verir. Eer web sunucusu herhangi bir nedenden dolay durmu veya almyor ise yeniden altrmak iin veya dier aralar yardmyla durma nedenini aratrmamza yardmc olmaktadr. Windows 2000 veya Windows XP iletim sistemleri Windows NT ekirdei zerinde altndan services Windows ynetim modlnden servis olarak kontrol edilebilir. Windows 2000 veya Windows XP iletim sistemlerinde ynetimsel aralar veya bilgisayarmdan ynet mnsne girilerek Services (Hizmetler) aralarnn bulunduu mnye ulalr (ekil III.4). Burada Windows iletim sistemi servisi olarak grnen Apache servisi ile web sunucusunun almas kontrol edilebilir. Eer istenirse Windows bilgisayar programlama aralar ile servislere ek yazlmlar gelitirilerek web sunucunun kontrol edilmesi salanr. Byle bir durum zellikle sistem yneticisinin sunucu bilgisayar sisteminin yannda bizzat bulunmad durumlarda baka bir ortama GSM mesaj gnderilmesini veya ar braklmasn salayan mekanizmalarn almasn salar. Yksek bulunurluluk gerektiren alma durumlarnda bu programlama aralar sistem yneticilerinin ilerini olduka kolaylatrmaktadr.

29

ekil III. 4 Windows servis penceresinde Apache web sunucu servisi Apache web sunucusu ayarlarnn yaplmas ilemi kurulum ileminin hemen ardndan yaplmas beklenir. Genellikle Windows iletim sisteminde kurulum sonras ayarlamalara gerek duyulmamaktadr. Bir betik dili destei verilecek ise bu kurulum yaplan dizindeki conf dizini ierisinde bulunan httpd.conf dosyas bir kelime ilemci ile alarak gerekli dzeltmelerin yaplmas gerekir. Bu dzeltmeler ncelikle sunucunun alaca port numaras sunucu ismi ve balant kurulacak e-posta adresleri gibidir. Windows iletim sisteminde olduu gibi httpd.conf dosyas bir kelime ilemci ile alarak gerekli dzeltmelerin yaplmas gerekir. Bu yaplandrma dosyasnn bir ok ayar Windows iletim sisteminin aynsdr. Farklar sadece dizin yaplarnda deimektedir. Dizin yaps Windows iletim sisteminde C:\Program Files\Apache2 Group eklindedir. Linux veya unix iletim sisteminde dizin yaps ise /usr/var/www veya /home/www eklindedir. Daha sonra betik dili veya veritaban destei gibi verilecek desteklere gre yaplandrma ayarlar oluturulur. III.2. PHP Konfigrasyonu PHP betik dili kurulumu iin gerekli dosyalar [107] kaynandan download edilebilir. Bu web adresinde bulunan zip uzantl dosya bilgisayarn kk dizininde alacak olan C:\PHP dizinine kopyalanarak sktrlm dosya alr. Bu dizin ierisine alan dosyalar ierisinde bulunan php.ini-dist isimli dosyay php.ini 30

eklinde yeniden isimlendirilerek Windows iletim sisteminizin bulunduu dizine kopyalanmaldr. Bu dosya ierisinde kullanmak istenilen satrlar aktif hale getirmek iin satr balarnda bulunan ; (noktal virgl) iaretini kaldrmak yeterlidir. Bu dizin kullanmakta olduunuz iletim sisteminin zelliine gre deimektedir. Windows iletim sisteminin kurulu olduu kk dizin C:\Windows veya C:\Winnt eklinde olabilir [103]. php.ini dosyas herhangi bir metin editr (Notepad, Wordpad gibi) program ile alarak, extension_dir ile balayan satr ekil III.5te de grld extension_dir direktifinin ayar C:\PHP\extensions olarak deitirilir (Bu ayar PHP dosyalarnn kurulum srasnda karld dizin iinde php_ ile balayan .dll uzantl dosyalarn tam yoludur.). Bu direktifin doru olarak ayarlanmas, PHP eklentilerini salkl bir ekilde ykleyebilmeniz ve kullanabilmeniz iin gereklidir.

ekil III. 5 php.ini konfigrasyonu iin extension_dir ayarnn yaplmas Kullanmak istenilen eklentiler php.ini dosyas ierisinde bulunan extension direktifini kullanarak yklenebilir. rnek olarak imaj fonksiyonlarn aktif hale getirmek iin extension=php_gd.dll gibi bir kullanm yeterlidir. Tm eklentilere ait ykleme direktifleri php.ini dosyas ierisinde yazl halde gelmektedir. Yklenmesi istenilen eklentiye ait direktifin olduu satrn bandaki ; (noktal virgl) karakteri kaldrlarak yklenmesi salanabilir. php.ini dosyas iinde bulunan register_globals ile balayan satrdaki register_globals direktifinin ayarn ekil III.6'da grld zere On olarak deitirilmelidir. Bu direktifin grevi ksaca, HTML forumlarndan veya parametre olarak gnderilen deerlerin ve isimlerinin otomatik olarak PHP ierisinde tanmlanm deiken biiminde kullanlabilmesini veya kullanlamamasn

31

salamaktr. rnein test.php?sayfa=1 gibi arlan PHP betiinin iinde, sayfa isimli deeri $sayfa deikeni olarak kullanabilmek iin bu direktifin ayar On olmaldr. register_globals direktifi PHP 4.1.0 srmlerinden nce On olarak ayarlanm gelir. PHP 4.1.0 ve daha sonraki srmlerde gvenlik nedeniyle Off olarak ayarl gelmektedir.

ekil III. 6 httpd.conf konfigrasyonu iin register_globals ayarnn yaplmas Dosya ykleme esnasnda problem yaamamak iin yine php.ini dosyas ierisinde ekil III.7de de gsterildii gibi upload_tmp_dir ile balayan satr bulun. Bu satrda bulunan upload_tmp_dir direktifinin ayarn Windows zerinde tm kullanclarn (Everybody) yazma hakk olan bir dizinin tam yoluna (src ve dizin ad) ayarlayn. Standart Windows kurulumlarnda C:\WINNT\Temp olarak ayarlanabilir. Bu ayar doru olarak ayarlanmaz ise dosya ykleme ile ilgili problemler yaanabilir.

ekil III. 7 httpd.conf konfigrasyonu iin upload_tmp_dir ayarnn yaplmas php.ini dosyas ayarlarndan ekil III.8'de grld zere session.save_path ile balayan satrda bulunan session.save_path direktifinin ayar Windows zerinde 32

tm kullanclarn (Everbody) yazma hakk olan bir dizinin tam yoluna (src ve dizin ad) ayarlanmaldr. Standart Windows kurulumlarnda C:\WINNT\Temp olarak ayarlanabilir. session.save_path direktifinin doru olarak ayarlanmas, PHP oturum fonksiyonlarnn alabilmesini iin gereklidir.

ekil III. 8 httpd.conf konfigrasyonu iin session.save_path ayarnn yaplmas III.3. Apache Web Sunucusu iin PHP Desteinin Ayarlanmas Konfigrasyonu Apache Web Sunucusu zerine PHP destei iki yolla verilebilir. Birincisi PHP'yi modl olarak tantmak, dieri ise CGI olarak tantmaktr. Genelde en salkl zm olan modl olarak tantlmas olup, tez almasnda da bu yntem tercih edilmitir. CGI eklentisi ile ilgili ayarlarn yaplmadan nce web sunucu hizmetinin durdurulmas nerilir. CGI eklenti ayarlar iin ncelikle PHP dosyalarnn kurulduu klasr (C:\PHP gibi) ierisinde yer alan php4ts.dll isimli dosya C:\WINNT\System32 (Bu dizin yolu Windows kurulumu yaplan srcye gre deiebilir.) dizini ierisine kopyalanmaldr. Apache web sunucu hizmetinin kurulduu dizin (Apache kurulumunda yolu deitirilmemise C:\Program Files\Apache Group\Apache dizini) iindeki conf isimli klasr iinde bulunan httpd.conf dosyas herhangi bir metin editr (Notepad, Wordpad gibi) uygulamas ile alarak, AddModule ile balayan satrlardan sonra aadaki satrlar eklenmelidir.

LoadModule php4_module c:/php/sapi/php4apache.dll AddType application/x-httpd-php .php veya 33

LoadModule php4_module c:/php/sapi/php4apache2.dll (Apache vers. 2 ise) AddType application/x-httpd-php .php PHP dosyalarnn kurulduu olduu varsaylarak

dizinin

C:\PHP

C:\PHP\sapi\php4apache.dll yazlmtr (ekil III.9). PHP dosyalar baka bir dizine kurulmu ise C:\PHP yerine o dizin yolu yazlmaldr.

ekil III. 9 httpd.conf konfigrasyonu iin PHP modlnn tantlmas Bu iki tanmlama yolunda da .php uzants dnda baka dosya uzantlarn da PHP olarak yorumlanmas isteniyorsa (.php3, .phtml gibi), AddType application/xhttpd-php .php satrnn altna aadaki satrlar eklenebilir.

AddType application/x-httpd-php .php3 AddType application/x-httpd-php .phtml Ayrca, <IfModule mod_dir.c> satrnn altndaki DirectoryIndex ile balayan satrn sonuna index.php yazlarak httpd.conf dosyas kaydeilmelidir (ekil III.10). Bylece web dizini istemci tarafndan talep edildiinde o dizindeki bulunan index dosyas ierii web kullanc ekrannda grntlenecektir. Burada sra nemlidir. Ayrca .php dnda uzantl index dosyalar da PHP derleyici ile yorumlatmak isteniyorsa bu dosyalar da (index.php3, index.phtml gibi) ayn satr sonuna eklenebilir.

34

ekil III. 10 httpd.conf konfigrasyonu iin default index dosyasn belirleme Bu durumun daha detayl aklanrsa web tarayc yazlm adres ubuuna girilen adresi DNS kaydn arayarak bulur ve 80 numaral porttan eriim kurmaya alr. Bu srada sunucu istein sralanaca sayfa ekline gre sunucudaki dokman dizininden ilgili dosyay arr. Bu dosyalar index.html, index.htm veya index.php olabilir. ste bu sralarn hangisinin balant esnasnda geerli ve ncelikli olduunun belirlenmesi ileminde aadaki satrlardaki sralama kullanlr. Aadaki sralamada bir tarayc bu sunucuya ulamaya altnda sunucunun dokman dizininde bulunan dosyalardan index.phpyi ncelikle istemci yani tarayc tarafna gndermeye alacaktr. Sralama ilk olarak index.php, sonra index.html eklindedir. Yani web taraycs adres ubuuna http://www.bizimsirket.com yazldnda Apache web sunucu hizmeti taraycya ilk olarak index.php dosyasn gndermeye alacaktr. Yaplacak ayarlamalar iinde dikkat edilmelidir ki bu ilemler srasnda Apache Web Sunucusu alyor ise yaptnz dzenlemelerin aktif hale gelmesi iin sunucu durdurulup tekrar altrlmaldr. III.4. Apache iin Alternatif Yazlm Paketlerinin Kullanlmas Gnmzde WAMP veya XAMPP isimli pek ok ayr sunucu yazlmlar bulunmaktadr. Bunlar zellikle Apache, MySQL ve PHP uygulamalarn bir arada sunan ve kullanmn kolaylatran bir yazlm paketidir. Apache web sunucu yazlmn kullanmak zere zmler iin ok kullanl olup, ayr ayr kurulum gerektiren Apache veya benzeri yazlmlar iin pek ok kurulum aamasndaki adm kolaylkla yapmak ve problmelerle uramamak zere zellikle kullanlmas nerilir. Bu tez almasnda da Apache yazlm WAMP yazlm desteinde kullanlmtr. WAMP yazlm hakknda daha detayl bilgi almak iin [108] nolu kaynaa

35

baklabilir. Temelde WAMP yazlmnn sunucu ayarlar Apache ile ayndr, fakat tek bir noktadan Apache, MySQL veya PHP modl ve aralar kontrol edilebilir. III.5. Kod Hrszlna Kar Apache ve MWS iin Gvenlik nlemleri Bir sunucu hizmeti her ne kadar kaliteli ve son srmle altrlyor olsa bile eer gerekli nlemler alnmam ise kt amal kiilerce yaplabilecek saldrlara kar sunucu bilgisayarmz byk bir tehlike iinde olacaktr. Apache web sunucu hizmeti tercih edilen bu almada gvenlik amal olarak .htaccess dosyas kullanlarak bir takm gvenlik stratejileri gelitirilmitir. Bu dosya hakknda ve bu dosya ile yaplabilecek nlemler ve gvenlik stratejileri hakknda daha detayl bilgi almak iin [104] nolu kaynaa baklabilir. Ayrca web sunucu hizmetinin alias yolu tanm yaplarak da her bir alias dizini iin ayr ayr web sunucu hizmet politikalar belirlenebilir. Bu tez almasnda gvenlik amal izlenen yntem ve stratejiler u ekildedir: 1. Web sunucu root dizini dahil her bir web klasr ierisine bir .htaccess dosyas oluturulmutur. 2. Kullanclarn yklemi olduklar uygulamalara ait 32 bit MD5 hash koduna sahip rastgele dizin yolundaki .htaccess dosyasnn amac herhangi bir ekilde dizin dosyalarnn internet kullanclar tarafndan her web sunucunun salad gibi sunucuda yer alan dosyalarn listelenmesi engellenmitir. Bu ilem iin bu dosya ierisinde aadaki kod satrlar kullanlmaldr. IndexIgnore * 3. Kullanlan .htaccess dosyalarnda stten aaya bir hiyerarik gvenlik olmas durumu dikkate alnmtr. Bu destek Apache yazlm tarafndan salanmaktadr. 4. Web sunucu hizmeti iin root web dizini iinde bulunan .htaccess dosyas kullanlarak bir "genel web sunucu politikas" belirlenmitir. Bu politikaya gre u durumlar salanmaktadr: a.Sunucu zerindeki tm m veya M harfi ile balayan, ancak veri seti MATLAB dosyas niteliinde deerlendirilen *.mat trndeki dosyalar hari tm dosyalara eriim web kullanclarna yasaklanmtr (Bu duruma *m, *.mdl, *.mex, 36

*.mexw32 gibi m ile balayan pek ok farkl tipteki dosyalar girmektedir. ). b.Sunucu bilgisayarnda yer alan kullanclara ait uygulamalar ile ilgili gvenlik konfigrasyonu ieren *.ssf trndeki dosyalara tarayc zerinden eriim yasaklanmtr. c.Sunucu bilgisayarnda yer alan ve *.ht* dosyalarna eriim web kullanclarna yasaklanmtr (.htaccess dosyalarnn bu duruma girdiine dikkat edilmelidir.). d.Sunucu bilgisayarnda yer alan ve *.log dosyalarna eriim web kullanclarna yasaklanmtr (.htaccess dosyalarnn bu duruma girdiine dikkat edilmelidir.). Yukardaki durumlar gerekletirmek zere .htaccess dosyas ierisinde yer alan u kodlar zellikle gz gezdirilmelidir: <Files ~ "^.*\.([Mm])"> Order allow,deny Deny from all Satisfy All </Files>

<Files ~ "^.*\.([Ss][Ss][Ff])"> Order allow,deny Deny from all Satisfy All </Files>

<Files ~ "^.*\.([Mm][Aa][Tt])"> Order allow,deny Allow from all Satisfy All </Files>

<Files ~ "^\.ht"> Order allow,deny Deny from all 37

Satisfy All </Files>

<Files ~ "^.*\.([Ll][Oo][Gg])"> Order allow,deny Deny from all Satisfy All </Files> htaccess dosyas ile ilgili dikkat edilmesi gereken nokta eer web sunucu hizmetinde alias ayarlar tanml ise her alias diizni iin ayr bir .htaccess dosyas zerinden gvenlik salanaca unutulmamaldr. Yani web sunucu root dizini (www, home gibi) iindeki .htaccess ayarlarndan bu dizin yolu altnda dahi olsa o alias dizinin bulunduu fiziksel web klasr (alias fiziksel klasr) ierisinde ayrca .htaccess dosyas zerinden web sunucu gvenliine dair konfigrasyon ayarlar yapmak gereklidir. 5. Her bir kullancnn yklemi olduu kullanc dizini her trl dizin iindeki dosyalar listeleme ve izinsiz dosyalarn sistemden indirilme ihtimaline karlk index.php veya index.html gibi varsaylan index web sunucu dokman ile korunmutur. Bu ekilde web sunucu hizmeti varsaylan dizin dosya listesi yerine index dosyasn kullancya gnderecektir. 6. Web sunucu hizmeti tarafndan CGI yapdaki uygulamalarn altrlmas iin kullanlan cgi-bin dizininde yer alan ve sunucu bilgisayarndaki tm MWS uygulamalarn fiziksel diskteki yerleri ile ilgili listeyi tutan matweb.conf dosyas iin hem genel sunucu politikas erevesinde koruma nlemi salanm (4 nolu maddeye baklabilir.), hem de matweb.conf dosyas u bilgiyi iermektedir: <../matweb> Bu kullanm iin MWS ara kutusu ierisinde bir destek sz konusudur. Yani byle bir kullanm iin salanan gvenlik hibir suretle kullanclarn matweb.conf dosyasna (herhangi bir bilgisayar dosya-dizin hiyerarisine trojan benzeri yazlmlarla ulaabilme ihtimali olmadnda) cgi-bin dizinin iinde bulunduu bir st dizine yerletirilen "matweb" isimli dosya normal MWS matweb.conf bilgilerini tutmaktadr. 38

BLM IV

MATLAB YAZILIMI

MATLAB kelime itibari ile MATrix LABoratory kelimelerinin ksaltlmas ile olumutur. Bu program ilk gelitirildiinde ama matris ilemlerinin kullanclar tarafndan kolaylkla yaplmasn salamaktr. MATLAB, gelitirilmesi sonucu gnmzde basit matematiksel hesaplamalardan karmak analizlere varan ok eitli alanlarda kullanlabilir hale gelmitir. Bu nedenle son zamanlarda MATLAB zellikle bilimsel aratrmalar iin tercih edilen ve popler olarak kullanlan bir ortam haline gelmitir [109]. MATLABin bu denli popler oluunun altnda sunduu ok eitli komutlarn yansra, grafiksel arabirime sahip oluu, kolay allabilir ve kullanl bir ortam etkileimi sunmas, ok eitli alanlara (Kontrol Bilimi, naat Mhendisliigibi) hizmet eden farkl ve zengin ktphanesinin olmas yatmaktadr. Bu proje almasnda MATLABin 7.2 (R2006a) versiyonu kullanlmtr. Ayrca, yaplan almada MATLAB aracnn Simulink arabirimi kullanlarak da tasarm dahilinde uygulamalar yaplmtr. MATLAB altrldnda ekil IV.1deki gibi bir pencere gelir.

39

ekil IV. 1 MATLAB ana penceresi IV.1. Fonksiyon Dosyalar (M Dosyalar, M Files) Kullanclar MATLAB iinde kendilerine ait fonksiyonlar yazabilir ve kullanabilirler. Bir fonksiyon yazmak iin Windowsun Notepad program kullanlabilecei gibi MATLABin kendisine ait Editor uygulamas da kullanlabilir. Bu uygulamaya ait m-dosyasn MATLAB'in kendi yaz editrnde amak iin komut satrndan edit komutu verilir. Kullanc ekil IV.2deki gibi bir ekran ile karlaacaktr.

40

ekil IV. 2 MATLAB Editor uygulamas ekran grnts rnek olarak kare_al isminde bir fonksiyon yazlm olsun ve bu fonksiyon kendisine parametere olarak gnderilen saylarn karesini hesaplasn. Bunun iin Editor uygulamasnda aadaki komutlar yazlr.

function sonuc=kare_al(sayi) sonuc=sayi.^2; end Daha sonra bu dosya MATLABin kurulu olduu dizin altnda yer alan work klasrne kaydedilir. Dosyann kaydedilme esnasnda isminin fonksiyon ismi ile ayn olmasna dikkat edilmelidir. Yani kare_al ismi ile kaydedilir. Bylelikle work dizini altnda kare_al.m isminde bir m dosyas oluacaktr. Daha sonra komut satrndan aadaki komutlar girdiimizde hazrladmz fonksiyon kullanlarak girilen saynn karesi hesaplanacaktr.

41

x=5; kare_al(x) veya kare_al(5)

IV.2. Simulink Arabirimi MATLAB ile pek ok ilemi komut kullanarak yapabiliriz. Ancak, bazen bu durum gerekletirilen iin amacna bal olarak uzun zaman alabilir. Bu nedenle MATLAB kullanclara Simulink ad verilen bir ara sunmutur. Bu ara yardm ile komut ezberlemeksizin ve komut yazmak iin harcanan uzun zamanlar yerine ok ksa srede sadece gerekli bloklar Simulink alma alanna ekleyerek ok deiik alanlara ynelik ilemleri gerekletirebiliriz. Simulink ekrann amak iin simulink komutu kullanlabilir. Kullanc bu ara altnda ekil IV.3teki ekran grnts ile karlar.

ekil IV. 3 Simulink balang ekran grnts

42

IV.2.1. Simulink Ortamnda Model Oluturma Simulink arac ile model oluturmak iin ncelikle Simulink Library Browser penceresinden ara ubuunda yer alan New simgesi tklanr. ekil IV.4te grlen bo bir alma alan gelir.

ekil IV. 4 Simulink ortamnda bo alma alan

rnek olarak bir ak evrim transfer fonksiyonu

1 s
3

6s 2

5s

olan bir

sistemin adm cevabna Simulink ortamnda baklsn. Bunun iin Simulink Library Browser penceresinden ilgili aa dallarnn altnda yer alan ve ekil IV.3teki ekranda gsterilen herhangi bir blok diyagram seilerek farenin sol tuu basl halde Library penceresinden ekil IV.4te gsterilen bo alma alanna srklenir. alma alan zerinde istenilen noktaya gelince farenin sol tuu braklr. alma alanna yanl bir blok konulmu ise o blok zerinde farenin sol tuu ile bir kere tklanlarak seilir. Daha sonra klavyeden Del tuuna baslr. Bloklar arasndaki hatlar eklemek iin hatt eklenecek bir uta fare sol tuu tklanr ve basl tutulur. Daha sonra fare iaretisi hattn eklenecei uca gtrlr ve braklr. Bu ekilde hattn eklenmesi tamamlanm olur. Ayrca, giriten ka olmak zere nce giri 43

bloklar fare sol tuu ile seilir. Sonra Ctrl klavye tuu basl tutulur. k hangi bloa balanacak zere o blok farenin sol tuu ile tklanr. Bylelikle otomatik olarak giri bloklarnn k ucu bir sonraki bloun giri ucu ile balanm olur.

ekil IV. 5 rnek bir kontrol sisteminin Simulink ortamnda oluturulmas ekil IV.5deki blok diyagram tasarm srasnda Sum blounun zerinde farenin sol tuu ile ift tklanarak zellikler penceresi alr. Gelen pencerede List of Sign ksmnn iaretleri ekil IV.6daki gibi deitirilir.

44

ekil IV. 6 Sum blounun zellikler penceresi Ayrca, alma alanna eklenen Transfer Fcn blounun da benzer ekilde zellikler penceresi alr ve buradaki ayarlar ekil IV.7deki gibi deitirilir.

ekil IV. 7 Transfer Fcn blounun zellikler penceresi Yukarda anlatlan tm ilemler tamamlandktan sonra ekil IV.8de gsterilen simlasyon biti sresi 25 olarak deitirilir ve yine ayn pencerede gsterilmi olan start Simulation butonuna baslarak oluturulmu olan sistem altrlr (Blok 45

diyagram hazrlanan sistem hzl bir ekilde alacak, bu esnada nce Start butonunun ekli Stop halini alacak, ancak tekrar eski haline (Start durumuna) dnecektir. Yani simlasyon ok ksa srede alp duracaktr. Burada 25 sn denilmesine ramen Simulink kendi iinde ksada olsa bu sreyi sisteme uygular ve sistemin cevabn bulur.).

ekil IV. 8 Simulink ortamnda simlasyon sresinin ayarlanmas ve simlasyonun altrlmas Sistemin cevabna bakmak iin alma alanndaki Scope blou zerinde farenin sol tuu ile ift tklanr. Daha sonra ekil IV.9daki gibi bir pencere gelir. Bu pencerenin st tarafnda yer alan ikonlardan drbn zerine tklanr. Bu ekilde grafik izimi otomatik olarak leklenmi ve mevcut ekrana sar bir hale getirilmi olunur.

46

ekil IV. 9 Simulink ortamnda rnek verilen bir sistemin adm cevab stenirse alma alan penceresinde yer alan ara ubuu kullanlarak Save ikonu tklanmak suretiyle hazrlanan bu Simulink modeli (blok diyagram) bilgisayara *.mdl uzants ile kaydedilebilir. zetle rnek olarak verilen sistemin adm cevab blok diyagramlar ve Simulink ortamnda bulunmu olmaktadr. IV.2.2. Simulink Modellerinin MATLAB Komutlar ve Program Kodu ile Ynetilmesi MATLAB komut satrndan Simulink modelleri amak, parametrelerini deitirmek ya da altrmak, durdurmak gibi ilemler yaplabilir. Bu ilemlerin nasl yaplaca ile ilgili detayl bilgiler aadaki alt balklarda anlatlmtr. IV.2.2.1. Bir Simulink Model Dosyasnn Almas ve Kapatlmas Bir simulink model penceresini amak iin open_system ve kapatmak iin close_system komutlar kullanlr. Bu komutlarn nasl kullanlaca aada verilmitir. open_system('deneme_model.mdl'); % deneme_model dosyasn ve Simulink penceresini aar. close_system('deneme_model.mdl',0);% 0 parametresi simulink penceresini deneme_model isimli mdl dosyaya deiiklikleri kaydetmeden kapatr. 47

close_system('deneme_model.mdl',1);% kaydetmeden kapatr, 1 ise kaydeder ve kapatr. Ayrca, herhangi bir dizin altnda bulunan model dosyas iin kullanm ekli aadaki gibidir: open_system('c:\models\deneme_model.mdl'); close_system('deneme_model.mdl',0); IV.2.2.2. Bir Simulink Modelinin altrlmas Bir simulink modelinin altrlmas iin sim komutu kullanlr. Bu komutun rnek kullanm aada verilmitir. sim('deneme_model'); % deneme_model isimli Simulink modeline ait simlasyonun altrlmas IV.2.2.3. Bir Simulink Modeline Ait Parametrelerinin Deitirilmesi Bir Simulink modeline ait pek ok farkl zelik vardr. Bu zellikler ve nasl kullanlaca ile ilgili rnek kullanm ekilleri aada listelenmitir. set_param(deneme_model','SimulationCommand','Start'); balatlmas set_param('deneme_model','StartTime','5','StopTime','100'); % simlasyona ait balang ve biti srelerinin saniye cinsinden ayarlanmas set_param('deneme_model','Solver','ode15s','MaxOrder','3'); % simlasyon denklem zm yntemi olarak 3. mertebeden ode15s ynteminin ayarlanmas set_param('deneme_model','SaveFcn','my_save_cb'); % simulink modeline ait save callback (kaydetme olay) olarak my_save_cb isimli fonksiyonun atanmas set_param('deneme_model','SimulationCommand','start'); % % Simulink simlasyonun simlasyonunu iin eitli komutlarnn gnderilmesi (simlasyonun balatlmas) set_param('deneme_model','SimulationCommand','stop'); durdurulmas, sonlandrlmas set_param('deneme_model','SimulationCommand','pause'); % simlasyonun geici olarak durdurulmas set_param('deneme_model','SimulationCommand','continue'); % pause edilmi simlasyonun almaya devam ettirilmesi 48 % simlasyonun

set_param('deneme_model','SimulationCommand','step'); adm adm altrlmas

simlasyonun

set_param('deneme_model','SimulationCommand','update'); % simlasyonun kulland deiken ve parametrelerin gncellenmesi set_param('deneme_model','Solver','VariableStepDiscrete','ode45'); simlasyon iin eitli denklem zm yntemlerinin ayarlanmas set_param('deneme_model','Solver','VariableStepDiscrete','ode23'); set_param('deneme_model','Solver','VariableStepDiscrete','ode113'); set_param('deneme_model','Solver','VariableStepDiscrete','ode15s'); set_param('deneme_model','Solver','VariableStepDiscrete','ode23s'); set_param('deneme_model','Solver','VariableStepDiscrete','ode23t'); set_param('deneme_model','Solver','VariableStepDiscrete','ode23tb'); set_param('deneme_model','Solver','FixedStepDiscrete','ode5'); set_param('deneme_model','Solver','FixedStepDiscrete','ode4'); set_param('deneme_model','Solver','FixedStepDiscrete','ode3'); set_param('deneme_model','Solver','FixedStepDiscrete','ode2'); set_param('deneme_model','Solver','FixedStepDiscrete','ode1'); set_param('deneme_model','Solver','FixedStepDiscrete','ode14x'); IV.2.2.4. Bir Simulink Modeline Ait Bloklarn zelliklerinin Deitirilmesi ve Okunmas Bir Simulink modelinde ok farkl bloklar olabilir. Bu bloklaron zellikleri de komut satrndan deitirilebilir. Bloktan bloa deiik ve ok farkl zellikler bulunmaktadr. Ancak, burada temel zelliklerin nasl deitirilecei ile ilgili kullanm ekli verilmitir. Bir Simulink model blou zelliinin deitirilmesi iin set_param ve zelliklerinin okunmas iinde benzere ekilde kullanma sahip olan get_param komutlar kullanlr. rnek kullanm ekilleri aada verilmitir: set_param('deneme_model/transfer_function_block','Numerator',[ 1 ]); % transfer_function_block isimli bloa ait (transfer fcn tipinde bir blok) Numerator parametresinin (pay katsay deerlerinin) deitirilmesi set_param('deneme_model/transfer_function_block','Denominator', [ 1 6 5 0 ]); % Denumerator parametresinin (payda katsay deerlerinin) deitirilmesi 49 %

set_param('deneme_model/constant_blok','Value', 5); % constant_blok isimli bloa ait (constant tipinde bir blok) Value parametresinin 5 olarak deitirilmesi set_param('deneme_model/relay_blok','OnSwitchValue',0.4); % relay_blok isimli bloa ait (relay tipinde bir blok) OnSwitchValue parametresinin 0.4 olarak deitirilmesi set_param('deneme_model/relay_blok','OffSwitchValue',0.2); OffSwitchValue parametresinin 0.2 olarak deitirilmesi Ancak, eer zellii deitirilecek blok bir Subsystem blou ise bu takdirde zellikler deitirilmesi iin nce bilgiler stun vektr halinde bir hcre matris deikenine atanr ve daha sonra bu deerler deiken iin MaskValues zelliine atanmaldr. Bu deerlerin atanabilmesi iin subsystem (alt sistem) iin Subsystem Parameters tanmnn yaplm olmas gerekir. pid_values_cell = { Kp , Ki , Kd } ; set_param('pid_by_kenan_return_mdl/PID_Controller','MaskValues', pid_values_cell ); IV.2.2.5. Bir Simulink Modeline Ait Verilerin MATLAB Komut Satrndan Eriilmesi Simulink modelinden verilerin alnmas iin Simulink bloklarndan To Workspace kullanlmaldr. Eer, zaman bilgisi atanacaksa blok zelliklerin Structure with Time seenei seilmelidir. ok nemli bir nokta udur ki Simulink penceresi kapatlmadan nce mutlaka deerler save komutu kullanlarak bir .mat tr dosyaya kaydedilmelidir. Bu deerler daha sonra load komutu kullanlarak nceden kaydedilen .mat dosyasndan geri Workspace alanna yklenebilir. rnek kullanm ekli iin aadaki komut yapsna baklmaldr. Simulink model k bilgilerini kaydetmek iin komut satrlar unlardr: sim('pid_controller_model')% mutlaka modelin iinde To Workspace blou olmaldr. %

50

save('pid_results');% pid_output

To

Workspace

zelliklerinden

deiken

ismi

close_system('pid_controller_model ',0); % yazld kabul edilmi olsun. Kaydedilen bilgileri kullanmak ve bir grafik izdirmek iin komut satrlar unlardr: load('pid_results'); zaman_araligi = pid_output.time; kontrolor_cikis_degerleri = pid_output.signals.values; plot (zaman_araligi, kontrolor_cikis_degerleri); Eer k deerleri birden fazla ise bu takdirde satr vektr yapsnda bilgiler elde edilmelidir. rnek komut satrlar aada verilmitir. zaman_araligi = pid_output.time; kontrolor1_cikisi = pid_output.signals.values( : , 1 ); kontrolor2_cikisi = pid_output.signals.values( : , 2 ); plot (zaman_araligi, kontrolor1_cikisi, zaman_araligi, kontrolor2_cikisi);

51

BLM V

MATLAB CONTROL SYSTEM ARA KUTUSU

MATLAB kullanlarak kontrol sistemlerinin eitli modelleri "Kontrol Sistem Ara Kutusu (Control System Toolbox)" kullanlarak bulunabilir. Ayrca, var olan sistemler birbirleri ile seri veya paralel balanabilir veya geri beslemeli hale getirilebilir. Bunun yannda var olan modeller zerinden MATLAB ile eitli girilere (adm, rampa, impulse gibi) sistem cevab incelenebilir ve sistemler ok eitli ekillerde analiz edilebilir. MATLAB ile bulunabilecek model trleri unlardr:

Transfer Fonksiyonu Modeli Sfr-Kutup-Kazan Modeli Durum Denklemi Modeli Tanmlayc Durum Denklemi Modeli Frekans Cevab Verileri Modeli Ayrk Zaman Modeli V.1. Modellerin Oluturulmas Her bir kontrol modelinin oluturulmas iin gerekli komutlar Tablo V.1de verilmitir. Tablo V. 1 MATLABte kontrol modellerinin oluturulmas Model smi Transfer Fonksiyonu Modeli Sfr-KutupKazan zpk tf lgili Komut Giri Parametreleri pay matrisi payda matrisi sfrlar matrisi kutuplar matrisi 52 pay=[1]; payda=[1 6 5 0]; sys=tf(pay,payda) sys = ss([-2 -1 1],[1 3 -5],1) rnek Kullanm

Modeli Durum Denklemi Modeli Tanmlayc Durum Denklemi Modeli Frekans Cevab Verileri Modeli tf, zpk, ss, dss, Ayrk Zaman Modeli frd (rnekleme zaman eklenmeli, son parametre) frd dss ss

kazan katsays a matrisi b matrisi c matrisi d matrisi a matrisi b matrisi c matrisi d matrisi e matrisi freq=[1000;2000;3000]; frekans matrisi cevap matrisi resp=[-0.81126-0.0003i;-0.17510.0016i;-0.0926-0.4630i]; H=frd(resp,freq,'Units','Hz') sys = dss[0 1;-5 -2], [0;3], [0 1],0, [1 2;3 4]) sys = ss([-2 -1;1 -2],[1 1;2 -1],[1 0],[0 1])

seilen modele gre giri parametreleri

pay=[1];payda=[1 6 5 0]; sampling_time=0.1;%saniye sys=tf(pay,payda,sampling_time )

V.2. Model Verilerinin Elde Edilmesi Her bir kontrol modeline ait verilerin elde edilmesi iin gerekli komutlar Tablo V.2de verilmitir. Tablo V. 2 MATLABte model verilerinin elde edilmesi Model smi Transfer Fonksiyonu Modeli Sfr-Kutupzpkdata zpk sistem tfdata tf sistem lgili Komut Giri k rnek Kullanm [num,den] = tfdata(sys,v)

Parametreleri Parametreleri pay matrisi payda matrisi

sfrlar matrisi [z,p,k] = zpkdata(sys,v) 53

Kazan Modeli

kuutplar matrisi kazan katsays

Durum Denklemi Modeli Tanmlayc Durum Denklemi Modeli Frekans Cevab Verileri Modeli frdata fr sistem dssdata dss sistem ssdata ss sistem

a matrisi b matrisi c matrisi d matrisi a matrisi b matrisi c matrisi d matrisi e matrisi [response,frequency]= frdata(sysfr,v) [a,b,c,d,e]= dssdata(sys,v) [a,b,c,d] = ssdata(sys,v)

frekans matrisi cevap matrisi

[num,den,Ts] = tfdata(sys,v) tfdata, Ayrk Zaman Modeli zpkdata, ssdata, dssdata, frddata seilen modele gre sistem seilen modele gre k parametreleri ve rnekleme zaman [z,p,k,Ts] = zpkdata(sys,v) [a,b,c,d,Ts] = ssdata(sys,v) [a,b,c,d,e,Ts]= dssdata(sys,v) [response,frequency,Ts]= frdata(sysfr,v) V.3. Modellerin Birbirine Dntrlmesi Kontrol modellerinin birbirlerine dntrlmesi iin gerekli komutlar Tablo V.3te verilmitir. Tablo V. 3 MATLABte modellerin birbirine dntrlmesi 54

Giri Modeli Transfer Fonksiyonu Modeli Transfer Fonksiyonu Modeli Sfr-

k Modeli SfrKutup-Kazan Modeli Durum Denklemi Modeli Transfer

lgili Komut

rnek Kullanm

tf2zp

[z,p,k] = tf2zp(a,b)

tf2ss

[A,B,C,D] = tf2ss(a,b)

Kutup-Kazan Fonksiyonu Modeli SfrKutup-Kazan Modeli Durum Denklemi Modeli Durum Denklemi Modeli Modeli Durum Denklemi Modeli Transfer Fonksiyonu Modeli SfrKutup-Kazan Modeli

zp2tf

[a,b] = zp2tf(z,p,k)

zp2ss

[A,B,C,D] = zp2ss(z,p,k)

ss2tf

ss2tf(A,B,C,D,iu) iu : sistemin giri says [z,p,k] =

ss2zp

ss2zp(A,B,C,D,i) iu : sistemin giri says

V.4. Modellerin Birbirine Balanmas V.4.1. Seri Balant rnek olarak ekil V.1de grlen sistemi ele alalm.

ekil V. 1 Seri bal modellerden tek bir modelin elde edilmesi

55

Bu sistemi seri balantl hale getirmek iin yazlmas gereken komut satrlar aadaki gibi olacaktr:

H1=tf(pay1,payda1); H2=tf(pay2,payda2); H=series(H1,H2)% veya arpma ilemi ile zm;H=H1*H2; V.4.2. Paralel Balant rnek olarak ekil V.2de grlen sistemi ele alalm.

ekil V. 2 Paralel bal modellerden tek bir modelin elde edilmesi Bu sistemi paralel balantl hale getirmek iin yazlmas gereken komut satrlar aadaki gibi olacaktr:

H1=tf(pay1,payda1); H2=tf(pay2,payda2); H=parallel(H1,H2)% veya toplama ilemi ile zm;H=H1+H2; V.4.3. Geri Beslemeli Balant rnek olarak ekil V.3te grlen sistemi ele alalm.

56

ekil V. 3 Geri beslemeli modelin tek bir modele indirgenmesi Bu sistemin geri beslemeli toplam sistem modelini bulmak iin yazlmas gereken komut satrlar aadaki gibi olacaktr:

H1=tf(pay1,payda1); H2=tf(pay2,payda2); H=feedback(H1,H2,-1) Burada negatif geri beslemeli bir sistem iin zm istenirse feedback komutunun 3. parametresi -1 olur. Ancak, bu parametre yazlmazsa da feedback komutu iin varsaylan deer -1dir, yani negatif geri besleme seeneidir. ndirgenen sistem pozitif geri beslemeli olursa bu parametre 1 deerini alr. V.4.4. klarn Toplanmas rnek olarak ekil V.4te grlen sistemi ele alalm.

ekil V. 4 ki model klarnn toplanmas ile oluan kn elde edilmesi

57

ki modele ait klarn toplanmas ile oluacak toplam kn yazlmas iin gerekli komut satrlar aadaki gibi olacaktr:

H1=tf(pay1,payda1); H2=tf(pay2,payda2); H=[H1,H2] V.4.5. Girilerin Datlmas rnek olarak ekil V.5te grlen sistemi ele alalm.

ekil V. 5 ki modele ait klarn datlmas ki modele ait klarn datlmas sonucu oluacak klarn yazlmas iin gerekli komut satrlar aadaki gibi olacaktr:

H1=tf(pay1,payda1); H2=tf(pay2,payda2); H=[H1;H2] V.4.6. Girilerin ve klarn Birletirilmesi rnek olarak ekil V.6da grlen sistemi ele alalm.

58

ekil V. 6 ki modele ait girilerin ve klarn birletirilmesi ki modele ait girilerin ve klarn birletirilmesi sonucu elde edilecek klarn yazlmas iin gerekli komut satrlar aadaki gibi olacaktr:

H1=tf(pay1,payda1); H2=tf(pay2,payda2); H= append(H1,H2) V.5. Modellerin Cevaplarnn Elde Edilmesi Kontrol sistemi modellerinin cevaplar MATLABin kullancya sunduu hazr fonksiyonlarla elde edilebilir ve grafii izilebilir. V.5.1. Adm Cevab (Step Response) Bir kontrol sisteminin adm cevabnn gzlenmesi ve grafiinin izilebilmesi amacyla step komutu kullanlr. Bu komuta gnderilen parametre bilgisi oluturulan bir modelin sistem deikenidir. (Model oluturma ile ilgili ayrntl bilgi iin 2.2 konu balna baknz.)
C (s) rnek olarak R ( s ) s s
2

4 3s 7 sisteminin adm cevab grafii bulunsun. Bu

ilem iin yazlacak komut satrlar aada gsterilmitir:

pay = [1 4]; payda = [1 3 7]; sistem = tf(pay,payda); step(sistem) rnek alnan sistemin adm cevab grafii ekil V.7de gsterilmitir.

59

Step Response 0.7

0.6

0.5

Amplitude

0.4

0.3

0.2

0.1

0.5

1.5

2 Time (sec)

2.5

3.5

ekil V. 7 rnek verilen bir sistemin adm cevab grafii Ayrca, bir sistemin adm cevab grafii istenilen zaman aralnda izilebilir. Bunun iin step komutuna verilecek 2. parametreye bir zaman aral matrisi deikeninin atanmas yeterlidir. Bu durum iin rnek bir kullanm aada gerekletirilmitir:

pay = [1 4]; payda = [1 3 7]; sistem = tf(pay,payda); zaman_araligi = 0:0.1:25;% 0.1 artmla 0-25 sn arasnda zaman aralnn tanmlanmas step(sistem,zaman_araligi) V.5.2. Ani Darbe Cevab (Impulse Response) Bir kontrol sisteminin ani darbe cevabnn gzlenmesi ve grafiinin izilebilmesi amacyla impulse komutu kullanlr. Bu komuta gnderilen parametre bilgisi oluturulan bir modelin sistem deikenidir. (Model oluturma ile ilgili ayrntl bilgi iin 2.2 konu balna baknz.) 60

rnek olarak

C (s) R(s)

s s
2

4 3s 7

sisteminin ani darbe cevab grafii bulunsun. Bu

ilem iin yazlacak komut satrlar aada gsterilmitir:

pay = [1 4]; payda = [1 3 7]; sistem = tf(pay,payda); impulse(sistem) rnek olarak verilen sistemin ani darbe cevab grafii ekil V.8de gsterilmitir.
Impulse Response 1.2

0.8

Amplitude

0.6

0.4

0.2

-0.2

0.5

1.5

2 Time (sec)

2.5

3.5

ekil V. 8 rnek verilen bir sistemin ani darbe cevab grafii Ayrca, bir sistemin adm cevab grafii istenilen zaman aralnda izilebilir. Bunun iin impulse komutuna verilecek 2. parametreye bir zaman aral matrisi deikeninin atanmas yeterlidir. Bu durum iin rnek bir kullanm aada gerekletirilmitir:

pay = [1 4]; payda = [1 3 7]; 61

sistem = tf(pay,payda); zaman_araligi = 0:0.1:25;% 0.1 artmla 0-25 sn arasnda zaman aralnn tanmlanmas impulse(sistem,zaman_araligi) V.5.3. Rampa Cevab (Ramp Response) Bir kontrol sisteminin rampa cevabnn gzlenmesi ve grafiinin izilebilmesi amacyla MATLABin sahip olduu hazr bir komut yoktur. Ancak, sisteme uygulanan rampa giriine karlk elde edilen kn adm cevabnn izdirilmesi suretiyle bir sistemin rampa cevab grafii izdirilebilir. rnek olarak
C (s) R(s) s s
2

4 3s 7

sisteminin rampa cevab grafii bulunsun. Bu

ilem iin yazlacak komut satrlar aada gsterilmitir:

pay = [1 4]; payda = [1 3 7]; sistem = tf(pay,payda); giris_pay = [1]; giris_payda = [1 0]; giris_sistem = tf(giris_pay,giris_payda); toplam_sistem_cikisi=series(giris_sistem,sistem); % sistem ncelikle 1/s ile arplmakta ve arpm toplam_sistem_cikisi deikenine atanmakta step(toplam_sistem_cikisi); % sistemin rampa cevab 1/s arpanndan sonra sisteme step uygulanarak gzlenmektedir. Bu komutlarn altrlmas sonucu elde edilen sistem rampa cevab grafii ekil V.9da gsterilmitir.

62

Step Response 14

12

10

Amplitude

Time (sec)

ekil V. 9 rnek verilen bir sistemin rampa cevab grafii

63

BLM VI

MATLAB WEB SERVER (MWS) ARA KUTUSU

MATLAB Web Server (MWS), Mathworks firmasna ait tannm bir yazlm olan MATLAB iin bir ara kutusu (toolbox) dur. Bu ara istemci ve sunucu arasnda MATLAB altrmak iin balant kuran bir web n ara yzdr. Bylelikle istemci bir bilgisayardan balatabilecek ve grntlenecek ekilde bir sunucu zerinde alacak MATLAB simlasyonlar tasarlamak mmkn olacaktr [87]. VI.1. MWS Ara Kutusu Mimarisi Bir MWS uygulamasna ait simlasyonun kts web taraycsndan gsterilen HTML dokmanlardr. MWS ile bir istemci uyuglamas web zerinden sunucu bilgisayarda ykl olan MATLAB uygulamalarn altrabilecektir. stemci uygulama ve MATLAB arasndaki iliki ekil VI.1de gsterilmitir. stemci uygulama, genellikle bir web taraycs olmak zere, balang HTML dokmanlarn Hypertext Transfer Protocol Daemon (HTTPD) sunucusundan ykler [83, 88]. Bu dokman simlasyon giri/k verisi iin bir ara yz sunar. Parametre girii tamamlandktan sonra istemci HTTPD zerinden verileri gnderir ve HTTPD sunucusu bu parametreleri matwebe ykler. matweb, MATLABe veri dahil etme/veri alma salayan bir fonksiyondur. matweb i protokol vastasyla MATLAB Web Servera balanr. MATLAB Web Server talep edilen m-dosyasn (MATLAB programn) oklu kullanc altrmaya imkn salamak zere ayr bir kopya olarak ykler. Her altrma tamamlandktan sonra, MATLAB Web Server kty matwebe ounlukla bir HTML dosya olarak verir. matweb, HTTPD zerinden istemciye bu kty geri dndrr. Bu durum ekil VI.1de grlmektedir.

64

ekil VI. 1 MWS ara kutusunun MATLAB ve web kullanclar ile balants MWS uygulamalar MATLAB m-dosyalar, grafikler ve HTML yaz ierii benzer ekilde PHP ve JavaScript gibi bileenleri bir araya getirir. MATLAB Web Server (MWS) hesaplama iin MATLABe web zerinde veri gndermeye ve sonularn web taraycsnda gsterilmesine imkan vermek zere MATLAB uygulamalarn dorudan deil, tanmlanan bir format dahilinde bu uygulamalarn web zerinden altrlmalarna izin verir. MWS, istemci ve MATLAB arasnda veri iletiimi iin TCP/IP protokoln kullanr. Kullanlan konfigrasyonda istemci bir bilgisayarda (workstation, i istasyonu) bir web taraycs alrken MATLAB, MATLAB Web Server ve web sunucu yazlm ayn sunucu bilgisayar zerinde alr (ekil VI.2). Ancak, istenilirse MWS matweb giri noktas CGI teknolojisini destekleyen bir web sunucu (httpd, http daemon) yazlm ykl baka bir bilgisayarda eksta lisans sorunu olmadan yklenebilir (ekil VI.3). Girileri gndermek ve klar MWSde almak iin bir tarayc yazlm gereklidir. Ayrca, web sunucu yazlm Common Gateway Interface (CGI) uygulamalarn altrabilecek yetenekte olmaldr. MWS iin bir uygulama gelitirme sreci az sayda basit admlar gerektirir [83]. Bu admlar yledir:

65

1.

Kullancdan giri verileri topluluunu almak ve k gstermek zere HTMS dokmanlarn oluturulmas. Giri HTML sayfalarn oluturmak iin doruda bir yaz editr kullanlabilir veya ticari amal HTML tasarm aralarndan (Dreamwear, Frontpage gibi) biri kullanlabilir. Uygulama isminin ve konfigrasyon bilgisinin matweb.conf dosyasnda listelenmesi gerekir. MATLAB m-dosyasnn aadaki admlar gereince yazlmaldr. Bir MWS uygulamasnda MATLAB m-dosyas hazrlarken unlara dikkat edilmelidir: a. b. c. d. Giri HTML form bilgilerinin alnmas Verinin analiz edilmesi ve talep edilen grafiklerin oluturulmas k verisinin bir MATLAB yap deikeni olarak tutulmas k datasnn HTML k dokman ablonunda yerletirilmesi zerine htmlrep komutunun arlmas. MATLABden alnacak maksimum veri miktar 256 KBtr.

2.

3.

VI.2. MATLAB Web Server (MWS) Ara Kutusu ve WWW likisi MATLAB Web Server, bir web tarayc ekrannda sonular grntlemek ve hesaplama iin MATLABe veri gndermek zere World Wide Webin zelliklerini kullanan MATLAB uygulamalar oluturmay salar. En basit konfigrasyonda MATLAB, MATLAB Web Server (MWS) ve Web Server Daemon (httpd) baka makine zerinde almakta iken, bir tarayc istemci bilgisayar zerinde almaktadr [83].

66

ekil VI. 2 MWS arac ile web sunucu yazlm (http daemon ayn bilgisayarda) ok kark bir networkte, Web Server daemon baka makinelerin bir paras olan bir makine zerinde alabilir (ekil VI.3).

ekil VI. 3 MWS arac ile web sunucu yazlm (http daemon) farkl bilgisayarda MATLAB Web Server, istemci sistem ile MATLAB arasnda veri aktarm iin TCP/IP networking sistemini temel almaktadr. Gerekli networking yazlm ve donanm, MATLAB Web Server kullanmna bal olarak sisteminize yklenmi olmaldr. VI.3. MATLAB Web Servern Kullanlmasnn Avantajlar MATLAB Web Server (MWS) ile online simlasyonlar yaplabilir. Bunlar pek ok teknik derslerde ve belirli sanal laboratuar ortamlarnda gereklidir. Ayrca, bunlar matematik dersleri iin laboratuarlarda da yararldr [4]. Simlasyon ara yznn girii saysal ve alfa saysal ve ktlar saysal, alfa saysal veya grafiksel olabilir. 67

MATLABin doal bir zellii olarak saysal giri deerleri gerek veya kompleks olabilir. Eer alfa saysal ktlar gerekli ise stringlerle MATLAB programlama bilgisi gereklidir. MATLAB Web Servern mhendislik ve elektronik derslerinde en etkin kullanm 2D grafiklerdir [4]. Bunun yannda bu aracn nemli bir avantaj kullanclarn kendi istemci makinelerinden MATLAB yazlmn yklemeden MATLAB uygulamalarn kullanabilir olmasdr. Bylece yazlm ykleme ve lisans maliyetleri dm olacak ve sistem kaynaklar paylalarak daha ekonomik kaynak kullanm doacaktr. VI.4. MATLAB Web Servern Kullanlmasnn Dezavantajlar MATLAB Web Server (MWS) ara kutusu, MATLAB destekli web zmleri iin simlasyona dayal uygulamalarda kullanlan gelitirme aralarndan biridir [87]. Fakat, bu arac kullanmann baz dezavantajlar da vardr. lk olarak MWS uygulamalarnda kullanclar giri deerlerini sadece deitirebilirler. Bir baka dezavantaj ise yksek performansl CPU ve simlasyon zamann ksaltmak iin dikkate alnan lde RAM kapasitesi gerektirir. MATLAB komut satrnda k veren srece sahip m-dosyalar MATLAB Web Server zerinde altrlabilmesi iin eksta programlama ve zaman gerektirir. Java programlama dili ile geleneksel daha fazla kod yazlacak yukardaki problemler ortadan kaldrlabilir [87]. Ayrca, MWS uygulamalar gelitirmek uygulama kayd gerektirmekte ve bu da uygulama gelitirme zamann arttrmaktadr. Eer web sunucu hizmeti gvenlii tam olarak tesis edilememi ise kod hrszl da MWS uygulamalar iin ciddi problem tekil etmektedir. bu konuda ayrntl bilgi almak iin VI.8 konu balna baklabilir. Bunlarn yannda MWS aracnn dezavantajl ynleri [91] nolu kaynakta da ayrca yle listelenmektedir: Bir seferde bir uygulamann hazrlan zaman almaktadr. nk prensipte giri ve k HTML sayfalar zel bir ablon olarak hazrlanmak zorundadr. 8. MWS kurulumu ile birlikte verilen rnek m-dosyalara ait kodlar uzun bir ekilde deitirilmeli, bu da gncelleme problemlerine sebep olmaktadr. 9. Uygulama tasarm iin program kodlama ve internet teknolojisi (HTML, CSS, HTTP protokol gibi) bilinmek zorundadr.

7.

68

10.

Bir gvenlik problemi vardr ki kullancdan tm giriler dikkatli ekilde kontrol edilmek zorundadr. nk web sayfalarnda gelen giri verisi string tipinde olup, say, matris gibi bir formata dntrlmek zorundadr. Fakat eval fonksiyonu kullanlamaz. nk kullanc giri ve . enter, del, *,! gibi zel sembollerin girmesine izin verilmektedir. Kullanclar sunucu konfigrasyon sreci ile aina olmak zorundadr. (Her yeni uygulama iin konfigre etmek zorunluluu vardr.) MATLAB komut satrnda k veren srece sahip m-dosyalar MATLAB Web Server zerinde altrlmaz.

11.

12.

Yukarda bahsedilen sorunlar nedeniyle MWS arac direk olarak bu almada kullanlmas uygun grlmemitir. Bu nedenle bahsedilen problemlere de byk lde zm olmas asndan bu tez almas kapsamnda Web MWS sistemi tasarlanmtr. Web MWS Sistemi hakknda detayl bilgi almak iin Blm 6.'ya baklabilir.

VI.5. MWS Gereksinimleri MATLAB WEB Server, bellek ihtiyac hari, MATLAB 5 gibi yazlm

gereksinimlerine ve ayn desteklenen donanma sahiptir. MATLAB donanm ve yazlm gereksinimleri bilgisayarnzdaki MATLAB kurulum klavuzu ierisinde bulunmaktadr [83]. MATLAB Web Server altrrken bellek gereksinimleri, konfigre edilmi MATLABlerin saysna gre deiiklik gsterir. MATLAB Web Server altnda alan her MATLAB 256MB bellek tketir. MATLAB Web Server, bilgisayarnzda ykl olan TCP/IP networking yazlmna ihtiya duyar [83]. MWS ara kutusunun web arayz asndan gereksinimler web tarayc yazlm ve web sunucu yazlmdr. Bunlar bir sonraki balklarda aklanmtr. VI.5.1. Web Tarayc Yazlm MATLAB Web Serverdan output almak, input girmek iin, platformunuza uygun bir Web Tarayc yklenmelidir. MATLAB Web Servern var olan versiyonlar (Bu almada kullanlan versiyonu MATLAB Web Server 1.2.4 (R2006a)tr.) Microsoft Internet Explorer 3.0 ve Netscape Navigator Release 3.0 ile test edilmitir [83].

69

VI.5.2. Web Sunucu Yazlm MATLABin alt sistem zerinde veya MATLAB alan makineye MWS arac ve network giriine sahip olan makine zerinde de Web Server (Web Sunucu) yazlm (httpd veya benzeri) yklenmelidir. Bu yazlm bulmak iin ok sayda kaynak vardr. rnek olarak aadaki liste verilebilir: Bilgisayarnz zerinde nceden ykl Microsoft Peer Networking Servisleri 2. Netscape Communications, Inc.dan satn alabilinen Netscape Enterprise Server 3. Internet zerinde cretsiz datm (Apache Web Server, [104]) yazlm, Genel Gateway Arayz (CGI) programlar

1.

Web

sunucu

altrabilmelidir. nk MATLAB Web Server yazlm CGI teknolojisini kullanmaktadr. VI.6. MWS Kurulum ve Kaldrma Sreci MATLAB Web Server, UNIX (Solaris) Workstationlar zerinde ve Microsoft Windows NT ekirdei alan (Windows 2000, XP gibi) alan IBM bilgisayarlar zerinde kurmak mmkndr. Burada tez almasnda kullanld iin zellikle Windows platformu ile ilgili aklamalar verilecektir. VI.6.1. Windows iin MWS Ykleme Sreci MATLAB Web Server kurmak iin, platformunuz iin normal MATLAB kurulum prosedr (MATLAB kurulum rehberi iindeki) takip edilmeli, kurulum ekranlarndan ileme devam edildiinde, seilebilecek MATLAB Web Server kurulum seenekleri ekrana gelir. Bu yazlm kurabilmek iin MATLABin en son desteklenen srm MATLAB R2006a (MATLAB 7.2) bilgisayarda ykl olmaldr. MATLAB ve MATLAB Web Server kurulduktan sonra MATLAB ve web tarayc yazlm arasndaki iletiimi dzenlemeyi salayacak olan admlar aada verilmitir. Ayrca bu konuda yardm almak iin MATLAB ve MWS kurulumuna ait <matlab>toolbox/webserver/webserver dizin yolu altndaki readme dosyasna da baklabilir. 70

MWS kurulumu aamasnda zellikle unlara dikkat edilmelidir [83]: Bu blmde anlatlan rnek (demo) programlarn almak iin <matlab>/toolbox/webserver/wsdemos dizininde bir matweb.conf dosyas oluturmak gerekir. 3. 4. Readme dosyas matweb.confun formatn gsterir. <MATLABROOT> notasyonunu (iareti) MATLABin kurulduu root dizinin ismiyle deitirilmelidir. 5. Bu dizini belirlemek iin matlabroot komutu kullanlmaldr. Ayn zamanda, MATLABSERVER_HOST_NAMEi makinenin TCP/IP hostnameismiyle deitirilmelidir. 6. Kurulum ilemi <matlab>/webserver dizininde matlabserver.conf dosyasn oluturur. Bu dosya m 1 notasyonunu ierir. Bu numara ayn anda alacak MATLABlern saysn gsterir. Hereyin dzgn alt test edildikten sonra bu deer daha uygun baak bir deerler deitirilebilir. UNIXte bu numaray ayarlamak iin webconf script kullanlmaldr. 7. Windows NTde matlabserver.conf dosyas bir metin editr uygulamas ile dzeltilmelidir. 8. Gerekli alias (takma ad)lar oluturmak iin Web server (httpd) tarafndan verilen ynlendirmelere uyulmaldr. a. b. c. The home veya default klasr (root web dizin yolu) /cgi-bin /icons (/images)

1. 2.

Demo programlarn altrmak iin yukarda belirtilen alias adlar web sunucu hizmeti ayarlarndan iin <matlab>/toolbox/webserver/wsdemos dosya yolunda gsterilmelidir. d. Eer uygulamanz grafik (jpeg) dosyalar oluturursa MATLABin bunlar httpd access iin yazmasn salayacak bir konum belirtmeniz gerekir. Eer bu alias (takma adlar) ayarlayacak ya da deitirecek izniniz yoksa httpdnin bulabilecei yerlere dosyalarnn bazlarnn kopyalanmas gerekir. 9. Windows NTde <matlab>/webserver/bin/sol2 on UNIX or <matlab>/webserver/bin konumunda bulunan matweb (Windows NTde

71

matweb.exe)i kopyalanmaldr. 10.

/cgi-bin veya bir dengi tarafndan isim verilen dizine

<matlab>/toolbox/webserver/wsdemos konumundaki matweb.confu /cgibin veya bir dengi tarafndan isim verilen dizine kopyalayn <matlab>/toolbox/webserver/wsdemos konumunda tm demo HTML dosyalar httpdnin (web server daemon, web sunucu hizmeti) tm HTML dosyalarn tuttuu dizin (genellikle home veya default isimlerini alr.) ierisine kopyalanmaldr. Eer verilen isimler (alias) demo HTML dosyalarnda verilenden farklysa HTML dosyalarndan bunlara karlk gelen deiikliklerin yaplmas unutulmamaldr.

11.

12.

VI.6.2. Windows iin MWS Kaldrma Sreci MWS aracn kaldrmak iin uygulanacak admlar unlardr: Windows NT Registryden matlabserveri kaldrmak iin bir Command Prompt (MS-DOS) penceresi almaldr. 2. 3. Bu pencerede <matlab>/webserver/bin dizin yoluna (path) geilmelidir. Daha sonra bu path altndan matlabserver remove komutu girilmelidir.

1.

Bu ilemden sonra gerekli uyar mesajlar ve MWS'nin baar ile kaldrldna ilikin bilgilendirme grntlenecektir. VI.7. MATLAB Web Server Uygulamalar Tasarm MATLAB Web Server uygulamalar M-dosyalarnn, HTML ve grafiklerin toplu bir rndr. Sadece, MATLAB programlama bilgisi ve temel HTML bilgisi gereklidir. Uygulama geliim ilemi kk sayda basit bir ka adm gerektirmektedir [83]. Bu admlar aada verilmitir: Kullanclarn giri (input) verisini alan ve k (output) verisini grntleyen HTML dokmanlar MWS iin kabul edilebilecek standart bir yapda oluturulmaldr (Bu konuda ilerleyen balklarda daha detayl aklamalar verilmitir). Bunun iin herhangi bir metin editr uygulamas 72

1.

kullanarak HTML formatta ve form bilgileri ieren dokmanlar kod ile dorudan yazlabilecei gibi ayn zamanda byle bir tasarm iin herhangi bir web sayfas tasarm arac (Microsoft Front Page, Adobe Dreamweaver gibi) da kullanlabilir. 2. MWS iin geerli olan standart bir formatta bir MATLAB M-fonksiyonu yazlmaldr (Bu konuda ilerleyen balklarda daha detayl aklamalar verilmitir). 3. Tasarlanan MATLAB m uygulama ismi ile ilgili konfigrasyon bilgileri matweb.conf dosyasna kaydedilmelidir. 4. Bir HTML output dkman ablonu ierisine output verilerini yerletirmek zere htmlrep" komutu arlmaldr. HTML verisinin maksimum miktar, MATLABten alnabilecek miktar, yani 256kb kadardr. Yukardaki admlarda belirtilen MATLAB m uygulamas u ilemleri gerekletirmelidir: HTML giri (input) formu ierisine girilmi verileri almak, Veriyi analiz etmek ve istenilen grafikleri veya veri seti deerlerini dosya eklinde oluturmak, 3. Bir MATLAB yaps ierisindeki deerleri output verisi eklinde vermektir.

1. 2.

VI.8. MWS ile Uygulama Hazrlama Sreci Bir MATLAB Web Server uygulamas hazrlama sreci u aamalar ierir [83]: MATLABe bilgi aktarm salayan bir HTML dokman hazrlama, MATLABin ilemlerine ait bir HTML sonu dokmann hazrlama, Girilen bilgileri ileyip sonular veren bir MATLAB M-file (M-dosyas) hazrlama, 4. Uygulamay internette yaynlamadan nce kodun geerliliini test etmeye yarayan bir dosya hazrlama (Eer test ilemi web tarayc penceresinde grlmek isteniyorsa byle bir dosya hazrlamaya gerek yoktur.).

1. 2. 3.

73

Bu sreci olabildiince basitletirmek iin MWS ara kutusu iinde demo olarak MATLAB Web Server kurulumu ile birlikte 4 adet ablon uygulama sunulmaktadr [83]. <matlab>/toolbox/webserver/wsdemos dizin yoluna baklrsa u dosyalar grlecektir: 1. 2. 3. 4. input_template.html output_template.html mfile_template.m tmfile_template.m

Her bir ablon kodu ierisinde gerektiinde nasl deitirilebilecei konusundaki bilgilere ek olarak uygulamaya eklenebilecek gerek kodlar bulunmaktadr. Bu ablonlardaki ynlendirmeler kullanlarak ve gereken aba sarf ederek MATLAB Web Server uygulamalar hazrlanabilir. rnek olarak MWS aracnn kurlumu ile birlikte verilen

<matlab>/toolbox/webserver/wsdemos ve dizin yolunda bulunan "magic squares (sihirli kare matris)" gsteri uygulamasdr. Bir sihirli kare matris herhangi bir satrn, stunun veya iki ana matris apraznn herhangi birindeki toplam birbirine eit olan matris demektir. Webmagicle ilgili 4 adet dosya vardr. Bu dosyalar aada listelenmitir: 1. 2. 3. 4. webmagic1.html: webmagic giri dokman webmagic2.html: webmagic k dokman webmagic.m: webmagic MATLAB M dosyas twebmagic.m: webmagic test dosyas

Bu drt ablonun webmagic uygulamasnn hazrlanmas iin nasl modifiye edildiini renmek zere ablonlar ilerleyen balklar altnda anlatlm vezel olarak yaplan deiiklikler vurgulanmtr. Eer bu ablonlarla hazrlanm baka uygulamalara gz atmak istenirse [83] nolu kaynan Ekstra Uygulama rnekleri blmne baklabilir. VI.8.1. Girdi Dkmanlar Hazrlama (Girdi ablonu) MATLAB Web Server uygulamalarnda M-dosyas uygulamasna gnderilecek parametre deerleri iin HTML form elemanlar ieren web sayfa tasarmlarnn yaplmas gerekmektedir. Bu balk altnda aada daha detayl bilgiler verilmitir.

74

VI.8.1.1. input_template.html Girdisi MATLAB Web Server uygulamas hazrlamak iin gerekli girdi dokman hazrlanmasn salar. Ksaltlm bir versiyonu yledir: <!1. adm matweb mteri programnn hangi platformda alacana bal olarak form etiketi Windows versiyonundan veya Unix versiyonundan hangisi kullanlan platforma uygun ise ilgili olan seilmelidir --> <!-- NT version: --> <form action="/cgi-bin/matweb.exe" method="POST"> <!-- Unix version: --> <form action="/cgi-bin/matweb" method="POST"> <!2. adm M-dosyasna bir isim vererek gizli bir alan oluturulmaldr. MY_M_FILE uygulamann ana MATLAB fonksiyonunun ismiyle deitirilmelidir (Deikenleri web sunucuya girmek iin genellikle Gizli bir HTML girdi alan kullanlr. Bu tarayc tarafndan grntlenmez. --> <input type="hidden" name="mlmfile" value="my_m_file"> <!3. adm Dier yaplacak uygulamaya ait btn HTML etiketleri buradan itibaren eklenmelidir. MY_INPUT_VARIABLE_1 deikeni yaplan uygulamadaki baka bir girdi deiken ismi ile deitirilmelidir. --> <p>My input variable 1: <input type="text" name="my_input_variable_1"> <!-Ekstra girdi deikenleri burada oluturulmaldr. --> <!4. adm

75

Kullancnn tklayarak girdiyi deerleri MWS uygulamanza yollamas iin bir Submit (Gnder) butonuda web sayfa tasarmna eklenmelidir. --> <p><input type="submit" name="Submit" value="Submit"></p> <!5. adm Ana uygulaman ismi matweb.conf dosyasna eklenmelidir. (Bu konuda hazr bir ablon grmek zere wsdemos dizininde yer alan matweb.conf dosyasna baklabilir.) -->

VI.8.1.2. webmagic Girdisi

Burada <form action="/cgi-bin/matweb.exe" method="POST"> satr, MATLAB Web Serverna giri noktas olan matwebi altrr. matweb.exe MATLAB Web Servern HTML formlardan bilgi karmak iin kulland programn Microsoft Windows NTdeki ismidir. Unixte bu programn ismi sadece matwebdir. Bu admdan sonraki aklamalarda bu uygulamaya ksaca matweb ismi verilecektir. matweb bir sonraki konuda daha ayrntl olarak aklanmtr. Bir sonraki satr olan <input type="hidden" name="mlmfile" value="webmagic"> ile altrlacak olan MATLAB M-dosyasnn ismi verilir. Bu uygulamada M-dosyas webmagic olarak adlandrlr. Son olarak, <input type="text" size="2" maxlength="2" name="msize"></p> satr msize olarak adlandrlan iki karakterli webmagic.m alanna geer. Bu alan ilenecek olan sihirli kare matrisinin boyutu kullancdan almak iin kullanlmtr. Girdi dkmann gstermek ve sihirli kare matrisi sonucunu taryc penceresind grntlemek iin adres ubuununa http://<your_domain>/webmagic1.html.

76

satrn girilmelidir. Sihirli kare matrisi girdi dkman olan webmagic1.html tarayc penceresinde gsterilecektir (ekil VI.4). Bu sayfada MATLAB tarafndan ilenecek sihirli kare matris (magic square) iin boyut bilgisi girilmelidir.

ekil VI. 4 webmagic rnek MWS uygulamas giri sayfas Daha sonra form bilgilerini gndermek zere bu sayfa submit edilmeli ve sunucuya form bilgileri gnderilmelidir. VI.8.2. MATLAB Web Server M-dosyalar Oluturma (M-dosyas ablonu) MWS uygulamalar iin MATLAB uygulama kaynak kodu MWS uygulama ismi ile ayn isme sahip bir M fonksiyon doyas olarak yazlr. Bu balk altnda aada daha detayl bilgilendirme yaplmtr. M-dosyas ablonu MATLAB uygulamasn kodlamak iin kullanlr. ablon HTML girdi dokmanndan girdileri alp sonular HTML kt dkmanna gndermeyi salayan ekstra kodu bu uygulama salayacaktr. Ksa bir versiyonu u ekildedir:

VI.8.2.1. output_template html Dosyas function retstr = mfile_template(instruct, outfile) % 1. adm % Geri dn deikeni varsaylan deerine ayarlanmaldr. 77

retstr = char(''); % 2. adm % MWS uygulamasnn alaca dizin yolu ayarlanmaldr. % INSTRUCT.MLDIR ve INSTRUCT.MLID deikenleri btn MWS uygulamalarnda otomatik olarak verilir. cd(instruct.mldir); % 3. adm % Girdi deikenlerinden HTML form bilgisi alnr. my_input_variable_1 = instruct.my_input_variable_1; % 4. adm % Grafiksel veya veri seti dosyas eklinde sonu dosyas hazrlanmak zere MATLAB ilemleri (ksaca hesaplama ve analiz sreci programlamas) bu alanda yaplmaldr. % 5. adm % HTML sonu dokmanna gnderilmek istenilen deikenler kt formunda girilmelidir. Aadaki ypy kullanmak zere bir OUTPUT_TEMPLATE.HTML kt dkman VI.8.3. konu balnda anlatlan formatta hazrlanmaldr. outstruct.my_output_variable_1 = my_input_variable_1 Bu alanda kt HTML sayfas iin daha fazla kt deikeni (saysallar, matrixler, hcre dizileri, grafik dosyalar gibi) outstruct yaps ierisine atanabilir. % 6. adm % HTMLREP fonksiyonu yukarda belirtilmi olan kt formundaki HTML dosyasn altrmaldr. Buradaki rnekte OUTPUT_TEMPLATE.HTML dokman altrlmaktadr. % <OUTPUT_TEMPLATE.HTML>n ismi kullanarak oluturulan dosya ismi ile deitirilmelidir. % HTMLREP komutu RETSTR deikenini GER dndrr ve opsiyonel olarak, eer mevcut fonksiyona geerli bir dosya ismi bamsz bir deiken olarak verilmise kty diskte bir dosyaya yazar. Aada verilen satrlarda bu durum gsterilmitir. OUTPUT_TEMPLATE.HTMLi

78

VI.8.2.2. webmagic M-dosyas webmagic1.html girdi dokmanna girilen bilgi otomatik olarak MATLABe aktarlr. Daha sonra MATLAB webmagic fonksiyonu altrlr. (Burada kaln olarak yazlan uyarlar M-dosyas ablonunun basamaklarn belirtir.) % Geri dn deikeni ilk deeri set edilir. (1. adm) retstr = char(''); (2. Adm kullanlmasna gerek yoktur. nk bu uygulama gelimi grafik uygulamas iermez.) % m-dosyas (dizin) deikeni alnmal ve say formatna evirilmelidir. (3. adm) % aralk kontrol edilmelidir.

% Boyut OUTSTRUCT formatnda bir karakter deikeni olarak kaydedilmelidir. (4. ve 5. adm)

% OUTSTRUCT kt formunda sihirli kare matris (magic square) oluturulur.

% Stun, satr ve and apraz zetlerini aln. OUTSTRUCTa eklenmelidir.

79

% Sonular alnmal ve opsiyonel olarak eer dosya ismi WEBMAGICe ikinci bir deiken olarak yazlmsa bir dosya olarak yazlmaldr. (6. adm)

VI.8.3. kt Dkmanlar Hazrlama (kt ablonu) MWS uygulamalar iin MATLAB uygulamasnn web ortamnda yaynlanmas ve altrma sonucu retilen ktlarn (gerek grafiksel, gerek yazsal ya da saysal formatta olabilir.) gsterilebilmesi iin HTML yapdaki web sayfasnn tasarlanmas gerekmektedir. Bu balk altnda aada daha detayl ve gerekli bilgiler verilmitir. output_template.html dosyas bir MATLAB Web Server dosyas hazrlamak iin gereken kodu salar. Ksa bir versiyonu yledir: <!-Kendi HTML dkmannz oluturmak iin dosyas deitirin ve <MY_OUTPUT>.html olarak kaydedilmelidir. Burada <MY_OUTPUT> uygulamann ieriiyle ilgili bir isimle deitirilmelidir. --> <!1. adm Bir MATLAB saysal veya karakter deiken gsterilmelidir. <MY_OUTPUT_VARIABLE_1> bir sonraki satrda gstermek istediiniz MATLAB deikeninin ismiyle deitirilmelidir. ieriiyle ilgili eylerle deitirilmelidir. --> 1. kt deikeni yle ilenir (Burada $ iaretleri arasna deiken ad belirtildiine dikkat edilmelidir): $<my_output_variable_1>$ <!2. adm Dier btn HTML etiketleri bu alana konulmaldr. --> 80 Komut metni uygulamanzn

VI.8.3.1. webmagic kts Bu dokman webmagic uygulamas iin kt web sayfasn ierir. Bu dosya ierisinde bulunan deikenler yledir:

$msquare$ -- tamamlanan sihirli kare matris (magic square) $msize$ -- magic square (sihirli kare matris)in boyutu $msum$ -- Stun, satr ve aprazlama olarak tm hcre deerleri toplam eit olan matris (sihirli kare matrisi (magic square)) gsterir. fonksiyonu olan htmlrepi deikenleri

Bir

webmagic

kullanmak

bu

webmagic1.htmlnin girdilerini kullanarak gerek deerleriyle deitirmeyi salar. webmagic2.html ablon dkman iin dokman kaynak kodu u ekilde grnr: <! webmagic.m tarafndan HTMLREP fonksiyonu komutu iin kullanlan HTML kt ablonu. (HTMLREP $ (dolar) iaretiyle belirtilen deiken isimlerini mesela: $msquare$- gerek deerleriyle deitirir. Ayn zamanda HTML tablolar ve matrixlerden, hcre dizilerinden ve vektrlerden dinamik seim listeleri oluturur. --> <html> <head> <title>Magic Square in an HTML Table</title> </head> <div align="center"> <strong>Magic Square in an HTML Table</strong></p> <!-MATLAB uygulamsndan web sayfasnda matris deikenlerini tablo halinde gstermek zere "AUTOGENERATE" anahtar kelimesi kullanlr. rnein sihirli kare matris uygulamasndaki "msquare" deikeninden matris deerlerini ieren dinamik bir tablo oluturmak iin bu anahtar kelimesi kullanlmaldr. Aadaki kullanma dikkat edilmelidir. -->

81

<!-MWS uygulamasnn altrlmas sonucunda $msize$ ve $msum$ srasyla "msize" ve "msum" olarak webmagic.mde ilenmi olan MATLAB deikenlerinin ieriiyle deitirilir. --> <p> Size: $msize$<br> Stun, satr ve aprazlama btn hcre deerleri toplam: $msum$ </div> webmagic uygulamas giri sayfasndan submit edilmesi sonucu kt sayfas ablonu olan webmagic2.html dokman ekil VI.5teki gibi grlecektir. Burada webmagic uygulamasnn altrlmas sonucu webmagic2.html ablon dokmannn htmlrep komutu ile $ iaretleri ile formatlanan sonu deikenleri ile deitirilerek taraycya gnderildiine zellikle dikkat edilmelidir.

82

ekil VI. 5 webmagic rnek MWS uygulamas k (sonu) sayfas VI.8.4. Ekstra Uygulama rnekleri Internette bilgi alma ve gndermeyi salayan MATLAB uygulamalar oluturmann en kolay yolu MATLAB Web Serverdaki rnek uygulamalar analiz etmektir. Bu rnek uygulamalara girmek iin an. taraycnzda Bu rnekleri <matlab>/toolbox/webserver/wsdemos/index.html dosyasn

oluturmak iin kullanlan kodu analiz ederek, daha kompleks MATLAB Web Server uygulamalar oluturulabilir [83]. Bu uygulamalar aada anlatlmtr. VI.8.4.1. Bilgi Gsterimi ile Uygulama (players) Players (Oyuncu) demo uygulamas MATLAB Web Serverin temel

fonksiyonlarndan biri olan internet zerinde bilgi datmann nasl olabileceini gsterir. players.txt dosyas sekmelerle snrlandrlm ekil VI.6da grld zere MathWorks Softball dosyas okuyabilmek, bilgiyi HTML dosyasna takmyla ilgili bir veritaban ierir. Bu demo uygulamasnda oyuncu listesini ieren dntrebilmek ve kty bir internet taraycsnda gsterebilmek iin baz MATLAB komutlar kullanlr. Bu uygulama iin bir girdi formuna gerek yoktur, sadece URL yeterlidir [83]. Bu ynyle dier pek ok uygulamadan ayrlr. URL direkt olarak tarayc penceresinden veya baka bir sayfadan kullanlabilir bir link olarak girilmelidir. Oyuncu (players) rnei iin

83

http://<your_domain>/cgibin/matweb.exe?mlmfile=players adresi girilmelidir. (Bu adres bilgisi Windows platformlar iindir. UNIXte matweb.exe yerine matweb kullanlmaldr.).

ekil VI. 6 players rnek MWS uygulamas veritaban dosyas veri listesi Bu uygulamann altrlmas sonucu ekran kts ekil VI.7deki gibi olacaktr.

ekil VI. 7 players rnek MWS uygulamas k (sonu) sayfas Bu uygulamann altrlmas iin matweb.conf dosyasna da gerekli

konfigrasyon kaydedilmeli ve uygulamann ismi seilen herhangi bir baka deerler (keli parantezler iinde yazlarak) deitirilmelidir [83].

84

VI.8.4.2. MATLAB Grafikleri ile Uygulama (webpeaks) Bir gsterim uygulamas olarak bulunan webpeaks fonksiyonu peaks plot (tepe noktalar izimleri) oluturur ve ktlar internet taraycsna gnderir. Webpeaks kodunun blmleri incelenirken MATLAB grafiklerinin MATLAB Web Server uygulamas olarak nasl kullanld anlatlacaktr [83]. Webpeaks gsterimine balamak iin tarayc penceresinden http://<your_domain>/webpeaks1.html adres bilgisi girilmelidir. Bu sayfa grnts ekil VI.8de verilmitir.

ekil VI. 8 webpeaks rnek MWS uygulamas giri sayfas Bu girdi dkman oluturmak istenilen peaks plotn zelliklerini ayarlamay salar. Bu tasarm grafik sonucu gsterdii iin webmagic uygulamas ile yaplan almaya ait girdi dokmanlarndan daha karktr. Kaynak dosyadaki

<form action="/cgibin/matweb.exe" method="POST" target="outputwindow"> <input type="hidden" name="mlmfile" value="webpeaks"> kodu webpeaks fonksiyonunu altrmak zere kullanlm olup, kty girdi dokmannn outputwindow ismi le belirtilen HTML tasarm iindeki bir erevenin ierisinde grntlenmesini salar. 85

Peaks fonksiyonunu altrmak ve gstermek iin gerekli olan kodun yan sra webpeaks.m dosyas web zerinden grafik bilgilerinin iletimini salayan ekstra kod ierir. webpeaks.m kodu olan

mlid = getfield(h,'mlid') ile oluturulan MWS tarafndan her MWS uygulamas almas srasnda otomatik olarak ve her alma ile srayla artan bir saya prensibine gre retilen saysal deeri ieren mlid deiken ierii elde edilir. mlid, matlabserver tarafndan sunulan tek tanmlaycdr. Mlid kullanmak dosya isimlerinin benzersiz olmasn salamaya yeter. Ayn zamanda bir uygulamadaki farkl balantlar aras balamlar srdrmeyi salar. Bu durumu bir jpeg dosyas iin isim oluturan u kodda grebilirsiniz:

s.GraphFileName = sprintf('%speaks.jpeg',mlid) Mesela eer mlid ml00277If deerine sahip olsayd jpeg dosyas ml00277peaks.jpeg ismini alrd. Htmlrep fonksiyonu HTML kt ablonu dosyas olan webpeaks2.htmlde bulduu deiken isimlerinin girdi yaplanmasnda bulduu deerlerle deitirir [83]. bu durum iin aadaki satra dikkat edilmelidir.

rs = htmlrep(s,'webpeaks2.html') webpeaks2.html dosyas iinde grafik ktsn belirten $GraphFileName$ deikenin bulunduu satr u ekildedir:

<img border=0 src="$GraphFileName$"> Son kt dokman uygulamann altrlmas sonucu hem girdi, hem kt taslaklar da dahil olarak ekil VI.9daki gibi grlecektir.

86

ekil VI. 9 webpeaks rnek MWS uygulamas k (sonu) sayfas Not: Girdi formu <type = "image" name = "mymap"> formundan tklanabilir bir imaj <input> etiketi ierdiinde, x ve y koordinatlar iin deiken isimleri programa mymap.x ve mymap.y olarak geer. MATLAB Web Server bunlar mymap_x ve mymap_y olarak deitirir. Mesela, <input type = image src = "mymap.jpeg" name = "mymap"> girdisi x ve y koordinatlarnn MWS uygulamasna ait MATLAB m uygulamasndan ilenmesi durumunda programda bulunan yapda mymap_x ve mymap_y olarak girdi yap deikeni ierinde depolanmasn salar [83]. VI.8.4.3. Mevcut Deer Simulasyonu ile Uygulama (webstock) MATLAB Web Server iin kullanclardan deer girilmesi senaryolarn simle eden webstock rneine baklabilir [83]. nternet taraycsna simulasyonu balatmak zere http://<your_domain>/webstock1.html linki girilmelidir. Bu rnek uygulamada (webstock1.html) girdi kaynan, (webstock2.html) kt dokmanlarn, (webstockrnd.m) MATLAB M-dosyasn ve twebstockrnd.m test amal M-dosyas uygulamasn iermektedir. Bu uygulamann altrlmas sonucu oluan simlasyon sonu sayfas ekil VI.10daki gibi grlecektir. 87

ekil VI. 10 webstock rnek MWS uygulamas giri ve k sayfalar VI.8.5. MATLAB Web Server Elemanlar MATLAB Web Server, MATLAB programclarnn MATLAB uygulamalar hazrlamalarn ve bunlar internette yaynlamay salayan bir dizi program ierir [83]. Bunlar yledir: matlabserver: MATLAB ve Web uygulamas arasndaki iletiimi salar. matlabserver komut zincirlerinden oluan bir TCP/IP sunucusudur. HTML dkmannda bulunan mlmfile adndaki gizli dosyaya konumlandrlm olan MATLAB programn (M-dosyas) altrr. matlabserver bunun karlnda M-dosyasn altran matweb.mi harekete geirir. matlabserver: Windows NTdeki matlabserver.conf dosyasn veya UNIXteki webconfu dzenleyerek herhangi bir yasal TCP/IP portunu dinleyecek ekilde yaplandrlabilir. Ayn anda alacak MATLABlerin says da bu dosyada belirtilir. matweb: matlabservera ait bir TCP/IP istemcisidir. Bu program HTML dokmanlarndan bilgi kartp matlabservera transfer etmek iin Common Gateway Interface (CGI) kullanr. 88

matweb.m: MWS uygulamasnda altrmak istenilen M-dosyasn getirir. matweb.conf: matweb tarafndan matlabservera balanmak iin kullanlan yaplandrma dosyasdr. Uygulamalar matweb.conf tasarmdan sonra bu dosyaya eklenerek MWS aracna kayt edilmesi salanmaldr. MATLABin MATLAB Web Server desteinde web zerinden nasl alt ekil VI.11de gsterilmitir.

ekil VI. 11 MATLABin MWS ile web zerinden altrlmas VI.8.5.1. MWS Dosya Konumlar matweb.m de dahil olmak zere, Web uygulamalaryla balantl bir ekilde kullanan her M-dosyas, MATLAB path (yol) ayarlarnda grlmelidir. matweb ve matweb.conf dosyalar /cgibin ad altnda grnmelidir. Oluturulan her garfik Web Serverin bulabilecei ve programlarn yazabilecei konumlarda bulunmaldr [83]. matlabserver bir Windows NT servisi veya UNIX arka ilemi olarak srekli arka planda almas iin tasarlanmtr. (matlabserveri altrmak iin ynetici ayrcalklarnn bulunmas gerekir). Deneme iin matlabserveri altrrken Windows 89

NTde matlabserver t UNIX'te webstart t komutunu kullanarak terminal penceresinden (srekli, sonsuz) giri yaplabilir (Bu durum hakknda daha detayl bilgi almak iin [83] nolu kaynaktan Ek Bye baknz.).

VI.8.5.1.1. matlabserver.conf matlabserver almaya balarken ilk kurulum bilgisi iin matlabserver.conf dosyasna bakar [83]. Windows NTde kurulum ilemi bu dosyay MATLAB Web Server kurulumu yaparken u dizinde yapar: <matlab>/webserver. UNIX sistemlerinde MATLAB Web Server altrmadan nce ncelikle dosyadaki baz deikenler iin deer belirlemek zere webconf scriptin altrlmas gerekir. Yaplandrma ayarlar matlabserver.conf dosyasnn ilk dizininde grlmelidir. matlabserver.confdaki bilgiler tarafndan ayarlanan paramtereler unlardr: Port number (port numaras): p Threads (ayn anda alacak maksimum MATLAB says): m matlabserver.conf dosyasnn varsaylan ayarlar yledir: m 1 matlabserver geerli port numaras 8888 ile MATLABin bir kopyasnn altrmak istenildii anlamna gelir. Eer opsiyonlarn bazlarn deitirmek istiyorsanz Windows NTdeki matlabserver.conf geerli versiyonu dzeltilmeli veya UNIXte webconf script altrlmaldr. Bu uygulamann alabilecei parametreler Tablo VI.1de de listelenmitir. Flagla (p veya m sembolleri ile) saysal deer arasnda bir bolua gerek olduu unutulmamaldr [83].

Tablo VI. 1 matlabserver parametreleri Parametre p [n] m [n] olandr. altrlacak MATLAB says. Geerli olan 1dir. h UNIXte webconf listesi h yazarsanz Eer Aklama matlabserverin 8888den dinledii port geerli

Windows dzenlenebilecek

NTde

matlabserver

matlabserver.conf

opsiyonlarnn

bulunabilir.

90

matlabserver

bir

matlabserver.conf dosyas konumlandramyorsa geerli olanlar

kullanamyor demektir. Yukarda anlatld zere webmagic1.htmlnin kayna grntlendiinde u HTML kodu anlatlmt:

<FORM ACTION="/cgibin/matweb.exe" METHOD="POST"> Yukardaki kod ile web zerinden kullanclarn MWS ara kutusuna ile iletiime gemesi salanmaktadr. matweb, http serverinde bulunan matlabserverla iletiim halinde olan bir programdr. matweb matlabserver (baka bir bilgisayarda da alyor olabilir) konumlandrmak iin matweb.confda bulunan bilgiye ihtiya duyar [83]. VI.8.5.1.2. matweb Program matweb HTML formlarndan bilgi almak iin Common Gateway Interface (CGI)i kullanan matlabservern bir istemcisidir [83]. matlabservera bilgiyi aktarr daha sonra matlabserver sonular retmek iin M-dosyalarna yazlm uygulamalar altrr. MATLAB Web Server kurulduunda matweb UNIX iin <matlab>/webserver/bin/arch konumunda Windows NT iin <matlab>/webserver/bin konumunda bulunur. HTTP sunucuya giri iin /cgi-bin tarafndan verilen dizinde matwebin bir kopyasnn da bulundurulmas gerekir [83]. MWS kurulumu sonrasnda rnek uygulamalar altrmak zere bu programn bir kopyas da

<matlab>/toolbox/webserver/wsdemos konumuna koyulur.

VI.8.5.1.3. matweb.conf matlabservera balanmak iin matweb, matweb.conf yaplandrma dosyasndaki bilgiye ihtiya duyar [83]. /cgi-bin tarafndan verilen dizinde bu dosya matweb programyla birlikte oluturulmaldr. <matlab>/toolbox/webserver/wsdemos konumundaki kopya rnek olarak kullanlabilir. Bir matweb.conf rnei yledir:

91

eitli uygulama yaplandrmalar ayn dosyada grnmelidir. Her bir deiken tek bir satrda yanna eklenmi bir = iareti ve ondan sonra yazlm bir deerle birlikte bulunmaldr (mlserver=parrot gibi). Uygulamalar keli parantez iindeki ana uygulama giri noktas isimleri (m-dosyas) tarafndan betimlenir [83]. rnek olarak [webmagic] btn deikenleri ve ona karlk gelen deerleriyle yazlm bir satrdr. matweb.confde bulunabilecek btn alanlar Tablo VI.2de aklanmtr. Tablo VI. 2 matweb.conf alanlar Deiken [uygulama] (gerekli) Aklama altrlacak MATLAB uygulamasnn ismi Dosyalar mldir (opsiyonel) okumak ve yazmak iin rnek deeri webmagic

kullanlan dizin. Eer belirlenmise bu <matlab>/toolbox/webse dizin otomatik olarak MATLAB pathe rver/wsdemos eklenir. Uygulama ve MATLAB oluturur. arasndaki Logging rver/ alverii kaydeden bir uyugulama zel <matlab>/toolbox/webse bir log dosyas yapmak performans drecei iin wsdemos/webmagic.log program yaparken kullanmayn. Sunucu olarak alan hostun ismi veya IP numaras olup, bu makinede parrot matlabserver hizmeti almaldr. matlabservern dinledii port. Bu deer matlabserver.conf dosyasnda veya

mllog (opsiyonel)

mlserver (gerekli)

mlport (opsiyonel)

komut dizini (p deikeni)ndeki port numarasna karlk gelmelidir Zaman amndan nce matlab serverin 92

8888 (varsaylan)

mltimeout

180 (varsaylan)

(opsiyonel)

Beklemesi gereken saniye 180 (geerli olan)

Yeni bir MATLAB Web Server

uygulamas oluturduktan ve yaplandrma

bilgisini matweb.confa girdikten sonra uygulamann yeniden kullanabilmesi iin matlabserverin yeniden balatlmas gerekir.

VI.8.5.1.4. matweb M-dosyas Aadaki rnekte altrlan MWS uygulamas ismine yukarda da bahsedildii zere yeniden webmagic isminin verildii dikkat edilmelidir.

<input type="hidden" name="mlmfile" value="webmagic"> Buradaki kullanmda HTML sayfas iinde gizli deiken olarak webmagic deerinin mlmfile deikenine verildiine dikkat edilmelidir. mlmfile deikeni altrlacak MATLAB m-dosyasnn ismini ierir. matlabserver MATLAB uygulamasn altrmak iin M-dosyas ve matweb.m (bu rnekte webmagic)ten alnm mlmfilen deerini kullanr. Webmagic, webmagic1.htmlden girdi bilgisini alr, gerekli blmlerin sihirli kare matris hesaplamalarn yapar, webmagic2.htmli ablon olarak kullanarak sonu ktlarn verir. VI.8.5.2. Web yoluyla sonular verme MATLAB Web Server datm arac bir HTML kt dokman ablon rnei olarak alan webmagic2.html dosyasn ierir. webmagic fonksiyonu

str = htmlrep(s,'webmagic2.html'); kodunu kullanarak webmagic2.htmlye ilenmi deerleri konumlandrmak iin htmlrep komutunu kullanr [83]. Bu rnekte s deikeni, webmagic sihirli kare matris ilemlerinin sonularn ieren bir form rneidir. htmlrep sden bilgi karr ve Webmagic2.htmldeki deiken alanlaryla MATLAB ilemlerinin sonularyla yer

93

deitirir. Tamamlanan webmagic2.html formu daha sonra kullancnn tarayc uygulamasna aktarlr ve sonular tarayc penceresinde grntlenir. VI.8.6. MWS Fonksiyonlar MATLAB Web Server tarafndan kullanlan fonksiyonlarn listesi Tablo VI.3te verilmitir. Tablo VI. 3 MWS fonksiyonlar listesi Fonksiyon htmlrep matweb wscleanup wsprintjpeg wssetfield Amac Deiken isimlerini HTML dokmanndaki deerlerle deitirir. MATLAB Web Server ana giri noktas. Dizinden kullanlmayan dosyalar siler. JPEG dosyas oluturur. Veri seti deikeni iin yeni alan ekler ya da mevcut alana ekleme yapar.

VI.8.6.1. htmlrep Komutu Ama HTML dkmanndaki deiken isimleri iin deerler belirler. Sz dizimi outstring = htmlrep(instruct,infile) outstring = htmlrep(instruct,infile,outfile) outstring = htmlrep(instruct,infile,outfile,'noheader') Aklama htmlrep(instruct,infile) bir HTML dkman infiledaki MATLAB btn deikenlerini instructtaki ayn isimli deikenlerin deerlerine karlk gelecek ekilde deitirir. Deikenler karakter deikenleri matrisler, seriler veya saysal ifadeleri ieren hcre dizeleri olabilir. Deikenler ve saysal deikenler ard arda yer deitirilir. kt outstringe verilir. Infiledaki deiken isimleri dolar iaretleri arasna alnmaldr. Mesela $varname$. Instruct deiken isimleri (alan isimleri) ve karlk gelen deerleri ieren bir MATLAB formudur. infile dolar iaretleri arasnda buluna MATLAB deiken isimlerini ieren bir HTML ablon dosyasdr. outstring = htmlrep(instruct,infile,outfile) Ekstra olarak sonucu HTML outfile dkmanna yazar (test amal) outstring = htmlrep(instruct,infile,outfile,'noheader') Ekstra olarak geerli HTTP bal 'Content-type: text/html\n\n' 94

nn ktsn outfile ve outstringde tutar. HTML tablolar ve seim listesi deikenlerini ve saysal ifadeleri kapsayan matrislerden ya da hcre dizilerinden oluabilir. Tablolar zel MATLAB AUTOGENERATE HTML tablo yorumunu matrix veya hcre dizini ismini deer olarak kullanmak suretiyle oluturulabilir. rnek olarak aadaki kod bir HTML tablosunda btn matrix olan msquare gstermek iin gerekli btn HTMLi otomatik olarak oluturur.

Yukarda listelenen etiketlerden (tag) her birinden en az 1 tane gereklidir. htmlrep btn tabloyu oluturmay salayacak bir ablon olarak <TABLE> etiketinden </TABLE> etiketine HTML kodunu kullanr. Eer farkl stun yorumlamalar gerekirse matrix ve hcre dizini says kadar V(<TD> and </TD>) ekstra hcre etiketi ifti eklenebilir. rnein

etiketlerini </TD> etiketinden sonra ikinci stunun center-justified (merkezden hizal) olmas durumunda eklemek gerekir. Eer <TD> </TD> iftlerinden baka matrix ve hcre dizininde baka stunlar varsa son ift son stunlar iin kullanlr. SELECT (seim) listeleri MATLAB AUTOGENERATE HTML kullanlarak oluturulur. Vektr, matrix veya hcre dizini SELECT (seim) yorumlamas (attribute) deer olarak isimlenir. rnek olarak aadaki kod otomatik olarak btn vektr ve mylisti bir HTML SELECT listesinde gstermek iin gerekli btn HTMLi oluturur. (SELECT bulunmaldr.) listesi HTML <FORM> and </FORM> etiketlerinin iinde

htmlrep btn bir SELECT listesi oluturmak iin <SELECT>

etiketinden

</SELECT> etiketine ablon olarak HTML kodunu kullanr. Yukarda gsterilen etiketlerin herbiri gereklidir. Eer mylist bir matrix veya hcre diziniyse, htmlrep select listesini oluturmak iin sadece birinci stun vektrn kullanr. 95

VI.8.6.2. matweb Komutu Ama MATLAB Web Server main ana giri noktas Sz dizimi matweb (instruct) Aklama matweb MATLAB structure instruct (yap talimat)ta bulunan mlmfile iindeki MATLAB uygulamas M-dosyasn altrr. Ayrca uygulamaya talimatlar geirir. matweb fonksiyonu (M-dosyas) matlabserver tarafndan harekete geirilir. Talimat u alanlar ierir: HTML girdi dkmanndaki btn bilgi mlmfile, altrlacak btn m-dosyalarnn ismini ierir mldir, matweb.confda bulunan alan dizin mlid, dosya isimleri oluturma ve ierikleri srdrme iin tek belirleyici Eer bir MATLAB hata uyarsyla karlalrsa metin kullancnn taraycsnda gsterilir. stenilirse bu uyarlar devre d braklabilir. Bu konuda daha detayl bilgi almak amacyla MATLAB uygulamalar srasnda karlalan hata ve uyarlar ile ilgili eval, lasterr, lastwarn ve online gibi dier MATLAB fonksiyonlarna [110] kaynandan baklabilir.

VI.8.6.3. wscleanup Komutu Ama Dizinden l dosyalar karmak Sz dizimi deletecount = wscleanup(filespec,timewindow,direc) deletecount = wscleanup(filespec,timewindow) Aklama deletecount = wscleanup(filespec,timewindow,direc) zaman penceresindeki zamandan daha fazla olan, dizindeki filespece denk gelen dosyalar siler. Deletecount silinen dosyalarn saysdr. deletecount = wscleanup (filespec, timewindow) zaman penceresindeki zamandan daha fazla olan, o an geerli olan dizindeki filespece denk gelen dosyalar siler.

VI.8.6.4. wsprintjpeg Komutu Ama JPEG dosyas oluturmak

96

Sz dizimi status = wsprintjpeg(fig, jpegfilename) Aklama status = wsprintjpeg(fig, jpegfilename) jpegfilename isimli bir JPEG dosyas oluturur. wsprintjpeg MATLAB bask komutunu djpeg deikeniyle birlikte kullanarak bir JPEG dosyas oluturur. Eer baarsz olursa geici bir PCX dosyas oluturur ve JPEG kts iin imread ve imwrite altrr. Ayrca imread, imwrite ve print MATLAB fonksiyonlarna da [110] kaynandan baklabilir.

VI.8.6.5. wssetfield Komutu Ama Yeni dosya ekleme veya mevcut alan geniletme Sz dizimi s = wssetfield(s,name1,value1,...) Aklama s = wssetfield(s,name1,value1,...) dosya ismi1i deer1e ayarlar ve sonular deitirilmi s yapsna aktarr. Tek bir deer bir karakter dizisi olarak saklanr. eitli deerle sahip birimler deikenlerin hcre yaplarnda bulunan deerlere sahiptir. eitli komutlar mevcut bir dosyaya deer eklemeyi salar. Ya deerlere ulamak iin MATLAB getfield fonksiyonu kullanlmal ya da direkt olarak yap deikeni kullanmna bavurulmaldr. Bu konuda bilgi almak iin [110] kaynana baklabilir. VI.8. MWS Uygulamalar iin Sunucu Gvenlii Bu konuda bilgi almak iin ltfen III.5. konu balna baknz.

97

BLM VII

TASARLANAN WEB MWS SSTEM

Bu sistem MATLAB/Simulink uygulamalarnn web zerinden altrlmasna ve kolaylkla Internet kullanclarnn bu ortam kullanan uygulamalar gelitirmesine imkn vermek zere tasarlanm ve bu almada kullanlmtr. Web MWS Sistemi ile kolaylkla web tabanl bir MATLAB uygulamas gelitirmek mmkn olabilmektedir. Sistem kendi iinde zerinde MATLAB ykl bir sunucu bilgisayar zerinden web kullanclarnn tasarlam olduklar MATLAB uygulamalarn altrmasn salamaktadr [111]. Bu sistem hakknda detayl bilgi iin aadaki balklara baklabilir. VII.1. Web MWS Sistemi Tasarm Amac Web MATLAB Web Server sistemi rencilerin kendi bilgisayarlarna ekstra MATLAB yazlmn kurmalarna gerek brakmadan Internet ortam kullanlarak web zerinde kolay bir ekilde MATLAB uygulamalar gelitirmek iin tasarlanmtr. Bu sistem ile kolay bir ekilde ve zorluk ekmeden ve birka saniye ierisinde daha nceden hazrlanm bir MATLAB/Simulink uygulamas web ortamna tanabilir [93, 95, 97]. VII.2. Web MWS Sistemi Kullanm Bu sistem Internet zerinden herhangi bir zamanda eriilebilir [111]. Web kullanclar herhangi bir uygulama ekleyebilir, var olan uygulamalar listeleyebilir ya da var olan uygulamalarn kaynak kodunu grntleyebilir (ekil VII.1). Bunlarn yannda Web MWS sistemine daha nce yklenmi herhangi bir MATLAB uygulamasn kolaylkla altrabilirler. Ayrca, MATLABin almas sonucu elde edilen sonular web kullanclarnca kendi bilgisayarlarna download edilebilir. Sistem tarafndan ua n iin pek ok farkl veri format (MS Excel dosyas (*.xls), virglle ayrlm deerler dosyas (*.csv), dz metin dosyas (*.txt) gibi) sonularn 98

listelenmesi iin desteklenmektedir. [111]e baklabilir.

Kullanm hakknda daha detayl bilgi iin

ekil VII. 1 Web MWS Sistemi ile tasarm sreci VII.3. Web MWS Sistemi Mimarisi MATLABin avantaj kullanclarn kendi algoritmalarn hazrlayabilmek ve bunlar MATLAB ktphanesinin bir paras olarak kullanabilme imknnn olmasdr. MATLAB ile programlama yapmak kolaydr [88]. Dolaysyla Web MWS sistemi ile hedeflenen kullanclarn kolaylkla ve web zerinden MATLAB uygulamalar gelitirebilmesine imkn vermektir. MATLAB yazlmn kendisi zerinde tmleik olarak alan MATLAB Web Server ara kutusunu [83] kullanr. Bir karlatrma ve farkllklarn grlmesi asndan ekil VII.2'de MWS ara kutusu ile tasarm sreci aamalar gsterilirken ekil VII.3'te Web MWS Sistemi ile uygulama tasarm sreci ematik olarak gsterilmitir.

99

ekil VII. 2 Web kullancsnn MWS ara kutusunu kullanrken izledii admlar Her iki durumu karlatrldmzda sylenebilir ki Web MWS sistemi MWS ara kutusunu kullanarak ilem yapmakta ve Web MWS ile amalanan uzak kullanclarn kendi bilgisayarlarna MATLAB yazlmn kurmalarna gerek brakmaszn MATLAB ortamnda uygulama gelitirebilmeleri ve MATLAB uygulamalarna web tabanl zmler retilebilmesidir. Ayrca, pek tasarlanan MATLAB uygulamalarnn MWS ara kutusu ile entegre almas srecindeki kayt ve kopyalama ilemleri ile web sunucu dizin hiyerari ierisindeki yaplandrma ayarlar Web MWS Sistemi ile kolaylkla ve ekstra bir aba olmakszn gerekletirilmektedir.

100

ekil VII. 3 Web kullancsnn Web MWS Sistemini kullanrken izledii admlar VII.4. Web MWS Sistemi Tasarm Web MWS Sistemi tasarmnda hem web ara yz, hem de analiz ve hesaplama amal olmak zere MATLAB ara yz kullanlmtr. Her ikisi birbirinden kodlama ynnden ve yapt ilev ynyle farkldr. Temelde Web MWS sistemi ile hedeflenen web kullanclarnca sisteme uygulamalarn eklenmesi, var olan uygulamalarn listelenmesi ve eklenmi uygulamalarnn altrlabilmesi desteidir. Bu ilevler iin Web MWS kayt bilgilerini MATLAB'i web zerinden kullanmak zere kendisinin entegre olarak alm olduu MATLAB Web Server ara kutusu tarafndan MWS uygulama kaytlarnn tutulduu matweb.conf dosyas ierisinde tutulmaktadr. Varsaylan olarak herhangi bir Web MWS uygulamasna ait bilgiler bu dosyada yle saklanmaktadr:

[players] mlserver=localhost mldir=http://localhost/mws_apps/demos/players 101

[webmagic] mlserver=localhost mldir=http://localhost/mws_apps/demos/webmagic Grld zere yukardaki ierie gre sistemde players ve webmagic uygulamalarna ait uygulama ayarlar mlserver ve mldir deikenlerinde saklanmtr. matweb.conf dosyas ve bu dosya ierii hakknda detayl bilgi almak iin Blm 5.'e baklabilir. Bu dosya MWS ara kutusunun Web MWS sistemi ile entegre edilebilmesi amacyla aadaki gibi dzenlenmitir.

[app_categories] category_1=Demo category_2=Eitim Bilimleri category_3=BH-Elektronik Eitimi category_4=BH-Haberleme Eitimi category_5=BK-Bilgisayar Eitimi category_6=BK-Kontrol Eitimi category_7=Elektrik-Elektrik Makinalar Tekn. category_8=Elektrik-Enerji Tesisleri Tekn. category_9=Elektrik-lme ve Enstr. category_10=Makine-Enerji Teknolojisi category_11=Makine-Otomotiv Tekn. category_12=Makine-Plastik Kalp Tekn. category_13=Makine-Talal retim Tekn. category_14=Makine-Tasarm ve Konst. Tekn. category_15=Matbaa-Bask Teknolojisi category_16=Matbaa-Dizgi Teknolojisi category_17=Matbaa-Reprodksiyon Tekn. category_18=Mekatronik Eitimi category_19=Metal-Metal Teknolojisi category_20=Metal-Plastik Teknolojisi category_21=Tekstil-Hazr Giyim Tekn. 102

category_22=Tekstil-Tekstil Teknolojisi category_23=Tekstil-Tekstil Terbiye Tekn.

[players] mlserver=controlserver02 mldir=c:\wamp\www\web_mws_files\ae8b8c77b1070d5047c8f4bf15034d3b app_code=ae8b8c77b1070d5047c8f4bf15034a74 ssf_code=1b29c33103157964be5077bc6665995c

[webmagic] mlserver=controlserver02 mldir=c:\wamp\www\web_mws_files\599a71294771c1030513783c423b84f6 app_code=599a71294771c1030513783c423b821b ssf_code=f3cb3443c0ca17c3de869e38bb39796d Yukardaki ierikte grld zere matweb.conf yaps zerinde eitli deiiklikler yaplmtr. (Bundan sonra MWS uygulamalarna Web MWS ile entegre alan uygulama olduklar ve dorudan MWS ara kutusu zerinden altrlmayacaklar iin Web MWS uygulamas tabiri kullanlacaktr.) Bu deiikler yle listelenebilir: [app_categories] blm herhangi bir uygulamaya ait verileri deil, Web MWS sistemi iin kullanclarnn eklemi olduu veya ekleyecei uygulamaya bir kategori tahsis edilmesi iin kullanlmaktadr (Bu alandaki mevcut kategori bilgileri Marmara niversitesi Teknik Eitim Fakltesinde ileriki disiplinler aras alma yaplabilirlii dnlerek seilmitir.). Her uygulamaya ait yeni eklenen konfigrasyon bilgileri Web MWS Sistemi iin gvenlik amal gelitirilmitir. Bu erevede uygulamalara ait eklenen "app_code" deikeni 32 bitlik olarak her uygulamann uygulama_kodunu gstermektedir. Sistemde kaytl olan bu kod uygulamalara erimek amal ve her uygulamann dizin/dosya hiyerarisinde kullanlmak amal gelitirilmitir. Her uygulamaya ait "ssf_code" deikeni ise her uygulama iin 32 bitlik uygulama *.ssf (security signature file) uzantl dosya ismini tutmaktadr. Bu dosya ile her Web MWS uygulamas iin matweb.conf dosyas vastasyla tutulan "mldir" deikeni tarafndan gsterilen dizin yolunda tutulur. 103

Herhangi bir Web MWS uygulamas tarafndan kullanlan. ssf uzantl bir dosyann hedeflenen Web MWS sistemine yklenen uygulamalarn kullanclar tarafndan sistemden kaldrlmak istenmesi durumunda kullanclar tarafndan girilecek dier uygulama gvenlik bilgilerinin tutulmas amalanmtr. rnein d1300b4b3c13b1a9273de9656df1c74e.ssf isimli ve "auto_cntrl_exprmnt_03_03" isimli bir Web MWS uygulamas tarafndan tutulan bu dosya ierii yledir:

[35f1277ef71091192bb9b53c7a2d5290] app_name=auto_cntrl_exprmnt_03_03 user_name=Ar. Gr. Kenan SAVA app_category=BK-Kontrol Eitimi app_description=Otomatik Kontrol Dersi Deney 3.3: PID (Oransal-ntegralTrev) Kontrolr sec_code=658a22f7f94236ad0ab71f863a520dca date_time=15:02:12, 01.09.2009 source_file_exist=yes source_file_code=5ed14260855cef0e78487481532fda67

Burada

35f1277ef71091192bb9b53c7a2d5290

nosu

ile

belirtilen

"auto_cntrl_exprmnt_03_03" uygulamas iin uygulama kodunu gstermektedir. Bu dosya ieriinin tutmu olduu dier parametrelerin ne amala kullanlm olduu u ekilde listelenebilir: 1. 2. app_name deikeni uygulama ismini, user_name deikeni uygulamay sisteme ykleyen kullancnn web sayfasnda belirtmi olduu kullanc adn, 3. app_category deikeni uygulamann hangi kategori altnda sisteme yklendiini, 4. app_description deikeni kullanc tarafndan uygulama iin girilen ksa bir aklama bilgisini, 5. sec_code deikeni Web MWS tarafndan dinamik oluturulan 32 bitlik bir uygulama kaldrma kodunu, (Kullanclar uygulama kodunu kullanarak sisteme ykledikleri uygulamay en ge ykleme zamanndan itibaren 45 dakika iinde sistemden kaldrabilmektedir ki bu durum Web

104

MWS sistemine ykl uygulamalarn srdrlebilirlii temin etmek amal dnlmtr.), 6. date_time deikeni uygulamann sisteme yklenme tarih ve zaman bilgilerini, 7. source_file_exist deikeni yes (evet) veya no (hayr) olmak zere iki farkl deer alr ve sisteme yklenilen uygulamann kaynak kodunun baka web kullanclar tarafndan grlp grlemeyecei (yani Web MWS sistemine yklenilen herhangi bir uygulamann ak (public) bir kaynak kodu mu yoksa gizli (private) ve bakalar tarafndan grntlenmesi engellenen bir ierie mi sahip olduu) durumunu, 8. source_file_code deikeni sistem tarafndan dinamik olarak oluturulan 32 bitlik bir no olup, bu bilgi ile her Web MWS uygulamas "mldir" deikeni tarafndan gsterilen dizin yolunda saklanan uygulama kaynak kodu .txt uzantl dosya bilgisini (rnek olarak yukarda rnek verilen "" uygulamas iin web kullanclar web sayfasndan uygulama kaynak kodunu talep ettiinde bu uygulamann kaynak kodu (m fonksiyon dosyas ierii) 5ed14260855cef0e78487481532fda67.txt isimli dosyay ve uygulamaya ait tm MATLAB dosyalarn (*.m, *.mat, *.mdl ve dierleri) talep ettiinde 5ed14260855cef0e78487481532fda67.zip isimli bir ariv dosyasn download edecektir.) gstermektedir. VII.5. Web MWS Uygulamas Paket Dosya Yaps Web MWS (MATLAB Web Server) Sistemi internet zerinden kullanclarn kendi MATLAB uygulamalarn dinamik olarak bir web sunucusuna yklemesi ve bu sunucuda kendi makinelerinde MATLAB yazlmn yklemelerine gerek kalmadan kendi gelitirmi olduklar uygulamalar bir sunucu bilgisayarda altrmalarna imkn veren bir kolaylk salamaktadr [111]. Web MWS ile internet kullanclar kendi tasarmlarn baka internet kullanclar ile paylaabilmektedir. Bunun iin tek yapmalar gereken MWS uygulamas ykleme (upload) sayfasndan "MWS uygulamas kaynak kodunu bakalar grntleyebilsin." seeneini iaretlemeleri yeterli olmaktadr (ekil VII.4). 105

Web MWS sistemi kullanm ok kolay bir arabirime sahiptir. Uzak kullanclarn kendi tasarmlarn bu sisteme yklemeleri ok kolay bir ekilde gerekletirilebilmektedir. Byle bir sistemde kullancnn yapmas gereken bir m dosyas hazrlamak ve bunu web tabanl hale getirmek iin biri input (giri) dosyas (ki bu dosyadan m fonksiyonunun parametre bilgileri html form yapsndan alnacak) ve dieri de bilgilerin grntlenecei output (k) dosyas (ki bu dosyada m fonksiyonunun geri dn deerlerini alarak web sayfas zerinde gstermek iindir.) hazrlamaktan ibarettir. Web MWS sisteminde ayrca iki adet html yapda dosyaya daha ihtiya duyulmaktadr. Bu dosyalar da biri hakknda sayfas olup, web kullancsnn tasarlam olduu MATLAB uygulamasna ait versiyon, kendi kiisel bilgileri, tasarm zaman, renci bilgileri (renci, no, isim-soyisim, snf, ube, blm, ders ismi gibi) gibi verileri kullanclara gstermek ve dier sayfada hazrlanan MATLAB uygulamas hakknda dier kullanclarn bilgi sahibi olmalarna imkan verecek olan aklama sayfasdr [111]. Web MWS sisteminin ihtiya duyduu dosyalar ekil VII.4'te gsterilmitir.

106

ekil VII. 4 Web MWS sistemi ykleme paket dosyas ierii VII.6. Web MWS Web Arayz Web MWS web sayfas dokmanlar MATLAB uygulamalarnn sistemde varl sebebiyle temelde Web MWS uygulamas ykleme, sistemden Web MWS uygulamas kaldrma, Web MWS Sisteminde ykl uygulamalar listelemek amal web sayfalarndan olumaktadr. Sistemin ana sayfa grnts ekil VII.5'te grlmektedir.

107

ekil VII. 5 Web MWS Sistemi ana sayfas VII.6.1. Web MWS Sistemine Uygulama Ykleme Bir uygulamay Web MWS sistemine kaydetmek iin uygulama ykleme sayfasna en stte yer alan linklerden gelinir. Gelinen sayfada uygulamay gnderen kiinin isim bilgisi, uygulama hakknda ksa bir aklama bilgisi, uygulama kategori bilgisi gibi gerekli bilgiler doldurulur. Uygulamaya ait yklenecek zip formatndaki ariv dosyasnn bulunduu dosya konumu da gsterilir. rnek olarak ekil VII.6'da bir uygulamann ykleme bilgilerinin doldurulmas grlmektedir [111].

108

ekil VII. 6 Web MWS Sistemi uygulama ykleme giri sayfas Daha sonra "Gnder" butonu tklanlarak gnderme ilemi tamamlanr. Ykleme ilemi baarl bir ekilde gerekletirildiinde ekil VII.7'dekine benzer bir pencere grnts ile karlalacaktr.

109

ekil VII. 7 Web MWS Sistemi uygulama ykleme sonu sayfas Yklenen bir Web MWS uygulamas ile ilgili tm bilgiler bu sayfada grntlenmektedir. Yklenilen bir uygulamay uygulama silme linkinden kaldrabilirsiniz. Ayrca, uygulama sayfasna gidilerek toplu olarak uygulama ile ilgili linklere ve hakknda gerekli bilgilere ulalabilir. Yklenilen rnek uygulama iin uygulama sayfas aada gsterilmitir [111-112]. Ayrca burada gsterilen rnek uygulamann kaynak kodlar da Web MWS Sistemi zerinden download edilebilir (ekil VII.8). Yklenen zip dosyas ierisine istenilen baka dosyalar (resim dosyalar, klasrler gibi) eklenebilir. nk web sayfalarnda dosya hiyerarisine bu durum uygundur. Bu dosyalar html yapdaki dosyalarn kullanabilecei css tipinde ya da resim dosyalar olabilir. Ancak, Web MWS Sistemi gvenlik nedeniyle php trndeki dosyalarn yklenmesine izin vermemektedir [111].

110

ekil VII. 8 Web MWS Sistemi herhangi bir uygulama bilgileri eriim sayfas VII.6.2. Web MWS Sisteminde Kaytl Uygulamalarn Listelenmesi Web MWS sisteminde kaytl tm uygulamalarn listesini grebilmek iin en stte yer alan link butonlarndan "Uygulama Listesi" ne tklanr. Bylece sistemdeki tm uygulamalar grntlenebilir [111]. stenilirse gelen sayfada kategori seimi yaplarak seilen kategori ile ilgili sistemde yer alan uygulamalar listelenebilir. Uygulamalarn listelendii rnek bir pencere grnts ekil VII.9'da verilmitir.

111

ekil VII. 9 Web MWS Sistemi ykl uygulamalar listesi sayfas Ekran grntsnde de grld uygulama listesi sayfasndan her uygulamann kendi ana sayfasna gidilebilir. Bunun yannda her uygulamaya ait kaynak kod (ki eer yklenen uygulama iin gnderen kii uygulamann kaynak kod grnrln aktif etmise) dosya ieriinin grntlenme ve de kaynak kodlarn tmnn zip bir paket olarak indirebilme imkn da vardr [92-94, 111]. VII.6.3. Web MWS Uygulamasn Sistemden Kaldrma 112

Web MWS sisteminde kaytl bir uygulamay sistemden kaldrmak iin yukarda yer alan linklerden "Uygulama Kaldrma" tklandnda ekil VII.10'daki gibi bir pencere ile karlalacaktr. Bu ekran grntsnde de grld zere uygulamaya ait isim, uygulama kodu ve gvenlik kodu bilgileri girildiinde uygulama sistemden kaldrlm olacaktr.

ekil VII. 10 Web MWS Sistemi uygulama kaldrma sayfas Uygulama kaldrldnda kullancya sistemden kaldrld ile ilgili bir geri bildirim salanr. Eer silme srasnda bir hata olumusa kullanc oluan hata ile ilgili olarak bilgilendirilir. VII.7. Web MWS MATLAB Arayz Web MWS uygulamalar temelde MWS ara kutusu yapsn kullanr (MWS ara kutusu tarafndan kullanlan dosya yaps hakknda bilgi almak iin Blm 5.'e baklabilir.). Ancak, Web MWS ile entegre edilebilmesi amal olmak zere ve Web MWS sistemine yklenilen uygulamalarn internet ortamnda annda yaynlanmas amacyla herhangi bir MWS uygulama program kaynak kodlama yaps iinde eitli deiiklikler yaplmtr. Herhangi bir MWS uygulamas kaynak kodu Web MWS Sisteminden download edildiinde kaynak kodu ierisinde u program kodlar grlecektir: chdir(h.mldir); % program kodu banda (uygulamann aktif dizin yolunun deitirilmesi iin) 113

s.web_url=return_current_web_url_path(chdir,h); % program kodu banda rs = web_mws_system_state_exit(s,templatefile); % program kodu sonunda Burada her Web MWS uygulamas temelde Web MWS sistemi tarafndan kendisine bir web url tahsis edilmesini ve web url link bilgisi zerinden web sayfas dokmanlarndaki resim, veri dosyas, grafik gibi ktlar iin web balantsnn oluturulmasna ihtiya duyar. Bunun iin return_current_web_url_path isimli bir MATLAB m-fonksiyonu gelitirilmitir. Web MWS Sistemi iin gelitirilen "return_current_web_url_path" uygulamas ok eitli ilevlere sahiptir. Bunlar yle sralayabiliriz: MATLAB ortamnda gelitirilmi olup, almas iin MATLAB tarafndan kullanlan work dizini altnda bulunmaktadr. 2. Web MWS sistemi zerinden uzak kullanclarca altrlan her uygulamaya ait uygulama ismi, altrma zaman, herhangi bir hata olumu ise hata kaytlarnn tutulmas gibi eitli verilerin gnlk dosyasna kaydna yaplmasn salamaktr (Sistemde gnlk dosyas logging_file.csv ismiyle kayt altna alnmaktadr). Bu gnlk dosyasnn ierii ekil VII.11'de gsterilmitir.

1.

114

ekil VII. 11 Web MWS Sistemi gnlk (log) dosyas ierii Her Web MWS uygulamas altrma annda sistemdeki online alan uygulama sayacnn arttrlmasn salamaktr (Varsaylan olarak bu deer her kullanc iin 1 art olarak belirlenmitir.). 4. Her uygulama almas srasnda Web MWS tarafndan o an online kullanc says belirli limitten fazla ise kullancnn beklemesini uygulama altran dier aktif kullanclarn uygulamalarnn almasnn tamamlamasn salamaktr (Varsaylan olarak online kullanc limiti 1 olarak belirlenmi olup, bu deer arttrlabilir de. Ancak sisteminin verimli almas iin bu deer sisteme tahsis edilmitir.). 5. 4 farkl istee bal parametre bilgisi almaktr Bunlar path_degeri, h, varsayilan_control_state, web_url_return gibi parametrelerdir. Bu parametre bilgileri sistem tasarmcs tarafndan baz zel ileve sahip uygulamalar iin gelitirilmitir. Bu parametre amalarn yle sralayabilir: 6. path_degeri parametresi ile Web MWS uygulamas tarafndan chdir komutu ile uygulama iin aktif dizin yolunun deitirilmesi sonucu yeni aktif dizin yolunu gstermek iin kullanlmtr.

3.

115

7.

h deeri ile uygulamaya ait eer matweb.conf dosyasnda veya daha esnek olmak zere web ortamndan ekstra bilgi gnderilerek Web MWS'nin daha ilerideki versiyonlarnda eitli grevlerde kullanlmak amal (rnek olarak ip adresi izlenmesi, zel amal ilevler amacyla) dnlmtr. varsayilan_control_state parametresinin true deeri iin sistem online kullanc saya deerini arttrmaz ve bu durum sistemde sayacn srekli artmasna ve dier kullanclar iin snrl online kullanc says limitinin dolmasna sebep olacaktr. Ancak, baz zel amal Web MWS uygulamalar MATLAB uygulamas ktsn Command Window (Komut Penceresi) kts amal kullanr ki bu durumda Web MWS uygulamasnn saya verisini artrmasna gerek yoktur. nk bu duurmda Web MWS uygulamas output.html dosyas uygulama k sayfas olarak kullanlmaz ve buna da gerek yoktur (rnek olarak Web MWS sistemi zerinde kaytl Web_TFZPK_Cevabi isimli rnek (demo, ablon) uygulamas kaynak koduna baklabilir). Ancak, false deeri iin online kullanc sayac varsaylan olarak arttrlacaktr. Bu parametrenin kullanlmamas durumunda d varsaylan olarak sistem false tipinde ileve sahiptir. web_url_return parametresi ile isterse Web MWS uygulama tasarmcs return_current_web_url_path m-fonksiyonu tarafndan geri dn deeri iin herhangi bir web url bilgisi (kendi uygulamasnda kullanaca) belirtebilir. Normal kullanm itibari ile bu fonksiyon kullanlmadan bu durum salanabilir. Ancak, Web MWS Sistemi tarafndan nerilen kullanm dosyalarn return_current_web_url_path retmekte, hem de m-fonksiyonun online kullanc kullanm kaydn eklindedir (nk, sistem bu ekilde hem ilgili verilen gnlk gerekletirilmektedir. Zaten bir sisteme yklenen uygulama sistem tarafndan dinamik olarak alma zamannda oluturulan bir 32 bitlik dizin yolu zerinden ulalmaktadr ki bu durumu Web MWS uygulama tasarmcs uygulamasna entegre edebilmesi iin return_current_web_url_path fonksiyonunu kullanmas gerekir).

8.

9.

Web MWS Sistemi iin gelitirilen "web_mws_system_state_exit" uygulamas da Web MWS uygulamalarnn altrlmas kontroll ve baarl bir ekilde 116

uygulama almasnn tamamlanmas ve uygulama sonu sayfasnn web kullanc tarayc yazlmna gnderilmesi ile ilgili fonksiyonlara sahiptir. Gelitirilen web_mws_system_state_exit uygulamas u ilevlere sahiptir: 1. Alm olduu s ve templatefile parametreleri ile temelde htmlrep MWS ara kutusu fonksiyonunu altrmak ve alan MWS uygulamas k sayfasnn uzak kullanc tarayc yazlmna sonu deerleri ile birlikte gnderilmesini salamaktr. Burada s uygulamaya ait k yap deikeni parametresini templatefile ise uygulamann output (sonu) web sayfas olarak html yapdaki hangi web sayfas dokmann kullanacan ve analiz ve hesaplama srasnda sonular hangi httml dokman iindeki formatl alanlara yazdrlacan gsterir. s ve templatefile parametreleri dorudan MWS ara kutusu tarafndan htmlrep komutu ile desteklenir ve kullanlr. htmlrep komutu hakknda daha detayl bilgi iin Blm 5.'e baklabilir. 2. Web MWS uygulamasnn altrlmas sonucu kaytl olan ve saya deeri arttrlan aktif kullanc saya deerinin azaltlmasn salamaktr (Her kullanc iin bu deer varsaylan olarak 1 olarak belirlenmitir.). 3. Eer istenilirse web_mws_system_state_exit uygulamasnn bir 3. parametre alarak "varsayilan_control_state" parametresinin durumuna gre kullancnn aktif kullanc sayacn azaltmamas da salanabilir (bu durm zel amal kullanm iindir ve yukarda belirtilmitir.). Bu parametre true deeri alrsa aktif kullanc sayac azaltlmaz, ancak false deeri alrsa aktif kullanc sayac varsaylan deerle azaltlr. Ayrca, bu parametre belirtilmezse de varsaylan azaltma miktar ile kullanc sayac azaltlr. 4. Web MWS uygulama almasnn tamamlanmas sonucundaki gnlk bilgilerinin gnlk dosyasna kaydedilmesini salamaktr. VII.8. Web MWS rnek (Demo) Uygulamalar Destei Web MWS ile hedeflenen web kullanclarnca herhangi bir MATLAB uygulamasnn kolay bir ekilde sisteme yklenebilmesini salamak ve web ortamna yklenen uygulamalarn annda internet ortamnda yaynlanmasn temin etmektir. Bu nedenle Web MWS Sistem kullanclar iin sistem ile tmleik 24 tane olan ve 117

gelecekte daha da arttrlmas dnlen rnek ve demo niteliinde Web MWS uygulamalar da sisteme dahil edilmitir. rnek uygulamalarn listelendii ve ekil VII.12'de de grld zere herhangi bir Web MWS uygulamasna ait tm MATLAB dosyalar ile uygulamaya ait web tasarmna ait html yapdaki web sayfas dokmanlar web sayfasndan uygulama ismi zerine tklanmak suretiyle zip paketi ariv dosyas olarak indirilebilir [111].

ekil VII. 12 Web MWS Sistemi rnek (demo) uygulamalar listesi Herhangi bir demo uygulamas Web MWS Sisteminden kolaylkla indirilebilir ve kaynak kodlarna ayrntl bir ekilde baklabilir [111-112]. Bunun iin uygulama ismi zerindeki linke tklanr. Bu durum kullancy Web MWS uygulamasnn ilgilerinin ve eer izin verilmi ise kaynak kodunun indirilebilecei bir arayze ynlendirir. rnek uygulama bilgileri listesi iin ekil VII.6'ya baklabilir.

118

BLM VIII

UYGULAMALAR

Modern eitim teknolojilerinin anahtar uygulamas web tabanl bir yaklam kullanlarak yaplan bir e-renmedir. rnek olarak MATLAB Web Server (MWS) arac web tabanl uygulama gelitirmeye imkn veren bir yapya sahiptir ve bu durum bu almann temel konseptini oluturmaktadr. Bu yazlm paketi kullanlarak MATLAB web tabanl zm sunar bir hale gelmitir ve bu kapsamda tez almas dahilinde gelitirilen Web MWS Sistem [111] de bu durumun bir uzants niteliindedir. Web MWS Sistemi ile MATLAB/Simulink uygulamalarnn web zerinden altrlmasna ve kolaylkla Internet kullanclarnn bu ortam kullanan uygulamalar gelitirmesine imkn vermek zere tasarlanm [111] ve bu almada pek ok uygulama iin bir ara nitelii tamakta ve MATLAB uygulamasn web ortamnda yaynlamak isteyenler kullanclar iin kolay ve kullanl bir yntem sunmutur. Web MWS Sistem ile kolaylkla web tabanl bir MATLAB uygulamas gelitirmek mmkn olabilmektedir. Bu tez almas ve gelitirme sreci erevesinde akademik anlamda eitli uygulamalar yaplmtr. Dier disiplinler ibirlii gerekletirilmi ve sonuta bilim evrelerince kabul edilen yaynlar da yaplmtr. Yaplan almalar u ekilde zetlenebilir: 1. Otomatik Kontrol Simlasyon Deneyleri Ortam Sistemi ( Automatic Control Simulation Environment System (ACSES) ) [92-93] 2. Web Tabanl Kmeleme Analizi Ara Kutusu ( A Web Based Clustering Analysis Toolbox (WBCA) Design Using MATLAB ) [95, 113] 3. Web Tabanl Kontrol Simlasyonlar Ortam ( Web Based Control Simulations Environment (WBCSE) ) [97, 114] Bu uygulamalar hakknda daha detayl bilgilere aadaki konu balklarndan ulalabilir. Ayrca, her uygulama ile ilgili kaynaktan da detayl bilgi alnabilir.

119

VIII.1. ACSES Uygulamas Otomatik Kontrol Simlasyon Deneyleri Sistemi (Automatic Control Simulation Experiments System, ACSES) laboratuar derslerinin teorik bilgilerle desteklenmesini ama alr. Ayn zamanda renciler veya web kullanclar laboratuar deneylerine ilikin ilem basamaklarn ve her bir deney ile ilgili deney soru ve altrmalar ACSES zerinden takip edebileceklerdir [93]. ACSES web tabanl almak zere tasarlanmtr. Bylece her hangi bir zamanda Internet zerinden kullanclar laboratuar deneyleri hakknda bilgi sahibi olabilecek ve fiziksel ortamda yaplmas gereken ilem basamaklarn renebilecek ve deneye ilikin simlasyonu gerekletirebilecektir. Bu alma kapsamnda ACSES ile kontrol eitimi derslerinin simlasyonlar ile desteklenmesi, youn kontenjana sahip bu program rencilerinin uygulamal eitimlerine destek olunmas ve deneyler ncesinde ve sonrasnda deneye ilikin soru ve problemlere zm olmas amalanmtr [93]. ekil VIII.1'de grld gibi ACSES, Otomatik Kontrol dersi retim ortamlar srecine srekli olarak bir katk salamaktadr.

ekil VIII. 1 ACSESnin retim srecine katks

VIII.1.1. ACSES Mimarisi Web tabanl bir tasarma sahip olan ACSES, web dokmanlarn kullanr ve birka web sunucu sisteminin birlikte almasyla web zerinden kullanclara cevap verir. ACSES ortam MATLAB uygulamalar ierdii iin tasarm ounlukla web tabanl dokmanlar, MATLAB kaynak kodlar ve Simulink model dosyalar 120

iermektedir. Sistem bir web sunucu ortamnda almaktadr. Bu sistemde Apache Web Server v.2.2.8 sunucu yazlm [104] kullanlmtr. Modelleme dosyalar tasarm iin MATLAB/Simulink v.2006a ortam da bu tasarma dahil edilmitir. Bylece modellenen her bir laboratuar deneyi iin ACSES Web MWS zerinden deneylere ait simlasyonlar web kullanclarna sunmaktadr. Deneylere ait gerekletirilen modellerin her biri web tabanl tasarma izin veren Web MWS sistemi desteinde MATLAB/Simulink ortamn kullanmaktadr. ACSESnin mimari yaps ekil VIII.2.de gsterilmitir.

ekil VIII. 2 ACSES mimari yaps

121

ACSES tasarmnda ama Otomatik Kontrol dersi laboratuar deneylerinin sanal ortamda simlasyonunun gerekletirilmesidir. Bu nedenle deneyler MATLAB ortamnda modele dayal olarak tasarlanm ve web arayz iin Web MWS Sistemi desteinde web ortam ile entegre edilmitir. ACSES tasarm iin ele alnan deneylerin her biri MATLAB/Simulink ortamnda hazrlanmtr. rnek bir deneye ait Simulink modeli ekil VIII.3'te gsterilmitir. Ayrca, ACSES dahilinde gelitirilen MATLAB kodlar ile Simulink model dosyalarnn tm de web kullanclar tarafndan [111] nolu kaynaa ait URL zerinden "Uygulama Listesi" balants kullanlarak download edilebilir. ACSES tarafndan kullanlan tm MATLAB kodlar ve dosyalar tm kullanclar iin tm herkese ak (public) hale getirilmitir.

ekil VIII. 3 ACSES tasarmndan rnek bir deneye ait Simulink modeli MATLAB ortamnda modellenen her bir deney daha sonra Web MWS Sistemi ile uyum salamak zere m-dosyas eklinde tasarlanmtr. Her bir deneye ait tasarm admlar ekil VIII.4'te gsterilmitir.

122

ekil VIII. 4 ACSES deneyleri tasarm admlar VIII.1.2. ACSES Deneyleri ve Uygulama Amac Bu almada Marmara niversitesi Teknik Eitim Fakltesi ElektronikBilgisayar Eitimi Blm Kontrol Anabilim altnda lisans eitiminde programda yer alan Otomatik Kontrol dersi laboratuar program temel alnmtr. Bu program kapsamnda ACSES ile modellenen ve tasarma dahil olan deneyler unlardr:

123

1. 2. 3. 4. 5. 6. 7. 8. 9.

OPAMP'n Ak evrim Davran OPAMP'n Eviren Ykselte Olarak Kullanlmas OPAMP'n Evirmeyen Ykselte Olarak Kullanlmas OPAMP'n Toplama Devresinde Kullanlmas OPAMP'n karma Devresinde Kullanlmas OPAMP'n Gerilim zleyici Olarak Kullanlmas OPAMP ile Trev Alc Devrenin Gerekletirilmesi OPAMP ile ntegral Alc Devrenin Gerekletirilmesi OPAMP ile Gerilim-Akm Dntrcnn (Topraklanmam-Yzer Yk iin) Gerekletirilmesi OPAMP ile Gerilim-Akm Dntrcnn (Topraklanm Yk iin) Gerekletirilmesi Orant Eleman Tipindeki Zaman Sabiti Eleman Tipindeki Sistemin Davran Titreim Eleman Tipindeki Sistemin Davran On-Off (A-Kapa) Tipi Kontrolrn Davrannn ncelenmesi PI Kontrolrn Davrannn ncelenmesi PID Kontrolrn Davrannn ncelenmesi DC Servo Sistem ve PID Kontrolr ile Denetlenmesi

10.

11. 12. 13. 14. 15. 16. 17.

Her bir deney hakknda teorik bilgi ve daha detayl aklamalar ACSES uygulamas URLsinde [92] ve her bir deney iin MATLAB ile Simulink aralar kaynak kodu ve model dosyalar Web MWS Sistemi'ne ait Uygulama Listesi [111] URL'sinde yer almaktadr. ACSES ile tasarlanan simlasyon tabanl sanal deney uygulamalar ve ACSES almas ile hedeflenen amalar u ekildedir: 1. OPAMP elemann tanmak ve temel dzeyde kullanma becerisi kazanmak, 2. OPAMP eleman ile oluturulan devrelerin analiz edilebilmesine katk salamak, 3. Kontrol sistemleri denetiminde kullanlan temel kontrolr yaplarnn OPAMP eleman ile nasl gerekletirilecei hakknda bilgi vermek, 4. Otomatik Kontrol laboratuar program kapsamnda mevcut deneyler ve kontrol sistemleri ile ilikisi dnlerek rencilere teorik bilgi vermek, 124

5.

Otomatik Kontrol laboratuar program kapsamnda her bir laboratuar deneyi iin yaplacak ilem basamaklarn aklamak, rencilere Otomatik Kontrol laboratuar deneylerinin herhangi bir zamanda ve herhangi bir yerden simlasyon tabanl yaplabilme imkan vermek, Laboratuar deneyleri hakknda laboratuara gelmeden nce renciye bir nbilgi vermek ve bu ekilde laboratuardaki uygulamalar ile konularn rencilerce pekitirilmesini salamak, Laboratuar deneylerine ilikin rencilere ilgili deney iin altrma niteliinde problemler sormak, problemlere ilikin zmlerin simlasyon eliinde yaplmasn tevik etmek ve deney hakkndaki teorik bilgilerin pekimesine katk salamak. ACSES ile teorik derslerin desteklenerek retim sreci ile olan simlasyon tabanl katk rencilere ile bizzat yerinde ve zamannda ilgili rneklerin sunulmas ve analize ilikin veri seti eklinde veya grafiksel sonularn sunulmas, Gerekletirilen deneye ilikin simlasyon sonrasnda elde edilen lm deerleri ve veri seti dosyalarn rencilerce indirilebilmesini ve kendi bilgisayarlarnda yaplan deneye ait verilerin dorulanmasn salamak, renci ve ilgili program kapsamnda tasarlanan bu sanal ortam ile her ne kadar renciler iin de olsa tm dnya zerinden bu konuda bilgi almak ve simlasyon yapmak isteyen uzak kullanclarn da sistemi kullanmasn tevik etmek, nternet zerinden her an eriilebilir, yerel ada olan sistemler yerine kullanclarn ev veya iyerlerinden, herhangi bir zamanda eriebilecekleri bir ortam sunmak,

6.

7.

8.

9.

10.

11.

12.

13.

rencilerin MATLAB yazlmn kullanmadan ve kendi bilgisayarlarna kurmadan onlara uygulama yapabilecei bir web tabanl bir arabirim salamak, Web MWS Sistemi destei ile gerekletirilen almann simlasyona dayal ve ayn zamanda MATLAB kullanan sanal laboratuar veya benzeri almalar iin akademik literatre bir katk salamak ve bu tr almalarn Web MWS System ile entegre tasarlanarak yaplmasn tevik etmek. 125

14.

VIII.1.3. ACSES Ortam ve Simlasyon Arayz ACSES zerinden renciler veya web kullanclar Otomatik Kontrol dersi laboratuarna ait deney ile ilgili her trl bilgiye ulaabilir. Ancak, gelitirilen bu ara gerek zamanl olmayp, modellenen bir sistem olarak altrlmamaktadr. Dolaysyla ayn anda pek ok kullanc sistemde online olma imknna sahip olacaktr [93]. ACSESnin kullanm arayz ekil VIII.5'te gsterilmitir. Kullanclar herhangi bir deney ile ilgili simlasyon sayfasna erimek iin ACSES zerinden her deney iin sunulan Deney Uygulamas alann kullanmaktadr. Bu alandan kullanc ilgili deney ait parametreleri deitirilebilecei bir arayz ile karlaacaktr.

ekil VIII. 5 ACSES web kullanc arayz ACSES web arayz ile uzak kullanclar Otomatik Kontrol laboratuar deneyleri ile ilgili pek ok farkl ilemi yapabilirler. Kullanclar ACSES web arayzden herhangi bir deney amacn renebilir (ekil VIII.6), Ayrca, herhangi bir deney hakknda teorik bilgi alabilir (ekil VIII.7) veya deney ilem basamaklarn takip edebilir (ekil VIII.8).

126

ekil VIII. 6 ACSES deneyi 1.1 ama sayfas

ekil VIII. 7 ACSES deneyi 1.1 teorik bilgi sayfas

127

ekil VIII. 8 ACSES deneyi 1.1 ilem basamaklar sayfas

128

Bunlarn yannda ACSES'nin tasarmndaki temel ama olan simlasyon destei de kullanclara sunulmaktadr. ekil VIII.9'da grld zere kullanclar herhangi bir deneye ait simlasyon ekranna ulaabilir. Bu ekrandan kullanclar ilgili deney parametrelerini girerek simlasyonu altrabilir ve sonular gerek grafiksel, gerekse kendi bilgisayarlarna download etmelerine imkn vermek zere veri seti dosyas (*.xls, *.mat gibi) eklinde elde edebilirler (ekil VIII.11 ve ekil VIII.12).

ekil VIII. 9 ACSES deneyi 1.1 simlasyon parametreleri sayfas Ayrca, renciler deney ile ilgili aratrma ve deney ile ilgili rendiklerini pekitirmek zere ve de dev olarak da verilen deneye ait sorular online olarak grebilirler (ekil VIII.10).

129

ekil VIII. 10 ACSES deneyi 1.1 sorular sayfas renciler deneyleri ile ilgili parametrelerin deerlerini deitirdikten sonra form bilgilerini gndermek zere Gnder butonuna tklarlar. Daha sonra ayr bir pencere olarak alan web sayfasnda o deneyle ilgili sonular grafiksel ve yazl olarak gzlemleyebilirler [93].

130

ekil VIII. 11 ACSES deneyi 1.1 simlasyonu grafik kts

ekil VIII. 12 ACSES simlasyonu rnek saysal deer sonu sayfas

131

Ayrca, kullanclar simlasyonunu gerekletirmi olduklar deneye ait MATLAB tarafndan retilen deerleri kendi lokal bilgisayarlarna download edebilir ve kullanabilirler [93] (ekil VIII.12).

VIII.1.4. Uygulama Sonucu Bu almada tasarlanan ACSES platformunun kullanclara sunaca ana hizmet rencilerin laboratuar deney konularn herhangi bir zamanda ve herhangi bir yerden internet zerinden gerekletirebilmeleridir [43]. Bu almada Marmara niversitesi Teknik Eitim Fakltesi Elektronik-Bilgisayar Blm Kontrol Anabilim dal altnda lisans eitiminde programda yer alan Otomatik Kontrol dersi laboratuar program baz alnmtr. Bu alma ile Otomatik Kontrol dersini alan her hangi bir renci bir sanal laboratuar imknna kavuacak ve kendi bilgisayarna MATLAB yazlmn yklemesine gerek kalmadan simlasyon almalar gerekletirebilecektir. Tek gereksinim, internete bal bir PC ve web taraycsdr. zellikle renciler ve niversiteler arasnda MATLAB faaliyetlerinin paylalmas ve lisans durumu dnldnde [38] ACSES ile maliyetler nemli lde azalm olacaktr. ACSES kapsamnda renciler farkl kontrol deneylerini web zerinden altrabilecei gibi sistemin Web MWS Sistemi ile tmleik olarak gelitirilmesi ile kullanclar pek ok avantaja sahiptir. ACSES kullanclar isterse web zerinden deneylere ait MATLAB ve Simulink model ve dier dosyalar kendi bilgisayarlarna download etme imknna sahiptir. Bu ekilde kullanclar kendi bilgisayarlarnda da ilgili kontrol analizi ve deneylerini gerekletirebilirler. Ayrca, bu durum MATLAB ile aina olmayan renciler iin zellikle bir n bilgi ve fikir vermekte ve MATLAB ortamn kullanma konusunda onlara yardmc olmaktadr. Web MWS Sistemi web tabanl MATLAB uygulamalar tasarmna izin vermektedir. ACSES deneyleri ve kaynak kodlar ile renciler isterlerse kendi MATLAB uygulamalarn oluturabilir, kendi Simulink model dosyalarn hazrlayarak Web MWS sistemine entegre edebilirler. Bu ekilde hem dier kullanclar ile bilgi paylam sz konusu olacak, hem de web tabanl farkl MATLAB uygulamalar ile mevcut sanal deneyler ve sanal laboratuar fonksiyonlar hem ACSES, hem de gelitirilebilecek fakl uygulama almalar iin zellikle de akademik dzeyde bir katk salayacaktr.

132

VIII.2. WBCA Ara Kutusu Uygulamas Kmeleme analizi veriyi anlaml, yararl ya da hem anlaml hem de yararl gruplara (kmelere) ayrr. Eer ama anlaml gruplar ise, bu durumda kmeler verinin doal yapsn yakalamaldr. Bununla birlikte baz durumlarda, kmeleme analizi baka amalar iin yalnzca bir balang noktasdr (verinin zetlenmesi gibi). ster anamla isterse de fayda iin olsun, kmeleme analizi birok alanda (psikoloji ve dier sosyal bilimler, biyoloji, istatistik, patern tanma, bilgi karma, makine renmesi ve veri madencilii) uzun bir sre iin nemli bir rol oynamtr. Gnmzde de kmeleme analizi sklkla kullanlmaktadr. Veri madenciliinde kmeleme analizi sklkla kullanlan bir metottur. Kmeleme analizi ile heterojen bir veri grubu kendi iinde anlaml alt gruplara ayrlabilmektedir [115]. Kmeleme analizinde eitli kmeleme algoritmalar kullanlmaktadr. Bunlardan en yaygn olarak kullanlanlar ve bu almann konusu olanlar K-Means [116], AGNES [117] ve Fuzzy C-Means [118] tir. Bu almada hedeflenen kmeleme analizinin web tabanl hale getirerek kullanclarn internet zerinden veri setleri zerinde ilem yapmas, renmelerin kullanm kolay bir arayz zerinden etkin bir ekilde gereklemesini salamaktr. Bu amala MATLAB ortam desteinde Web Tabanl Kmeleme Ara Kutusu (Web Based Clustering Analysis (WBCA) Toolbox) uygulamas gelitirilmitir. Bu almada MATLAB Web Server (MWS) arac desteinde MATLAB ortam kullanlarak hesaplama ve analiz gerekletirilmi ve simlasyonlar web ortamnda yaynlanmtr. Tasarlanan MWS uygulamas ile MWS'nin yeteneklerini kullanarak kmeleme analizi simlasyon sonular grafik, saysal deer veya bir veri dosyas olarak web kullancsna sunulmaktadr. VIII.2.1. Kmeleme Algoritmalar Kmeleme; heterojen bir veri grubunun, kme ad verilen homojen alt gruplara blmlenmesi olarak aklanabilir [115]. Bir kme birbirine benzeyen ama dier kmenin elemanlarna benzemeyen verilerden oluan koleksiyondur [119]. Bu almada geleneksel kmeleme algoritmalarndan K-Means, AGNES ve Fuzzy CMeans kullanlmtr. Bu algoritmalar hakknda bilgi almak iin VIII.2.1.1., VIII.2.1.2. ve VIII.2.1.3. nolu balklara baklabilir. 133

VIII.2.1.1. K-Means Algoritmas En eski kmeleme algoritmalarndan olan K-means 1967 ylnda J.B. MacQueen tarafndan gelitirilmitir [120]. En yaygn kullanlan gzetimsiz renme yntemlerinden biridir. K-meansin atama mekanizmas her verinin sadece bir kmeye ait olabilmesine izin verir. Eit byklkte kresel kmeleri bulmaya eilimlidir [116]. K-means algoritmas n tane nesneyi k tane kmeye bler. ncelikle giri parametresi olarak k deerinin verilmesi gerekmektedir. Kme ii benzerliin yksek fakat kmeler aras benzerliin dk olmas amalanr. Kme benzerlii bir kmedeki nesnelerin ortalama deeri ile llmektedir, merkezidir [121]. VIII.2.1.2. AGNES Algoritmas AGNES (AGglomerative NEsting) algoritmas, Kaufman ve Rousseeuw tarafndan 1990 ylnda sunulmutur [117, 122]. Aadan yukar doru alan bir ina yaps izler. Balangta her nesne ayr bir kme olarak kabul edilir. Algoritmann sonraki her admnda bu atomik kmelerden benzer zellik gsterenler birletirilir. Her birletirme ileminden sonra toplam kme says bir azalr. stenen sayda kme elde edildiinde veya en yakn iki kme arasndaki uzaklk verilen eik deere ulatnda birletirme ilemi sona erer. Herhangi bir sonlanma koulu verilmezse kmeleme ilemi tamamlandnda btn nesneler tek bir kmede toplanr [121, 123-124]. VIII.2.1.3. Fuzzy C-Means Algoritmas Fuzzy C-means (FCM) algoritmas, bulank blnmeli kmeleme bu da kmenin arlk

tekniklerinden en iyi bilinen ve yaygn kullanlan yntemdir. Fuzzy C-means metodu nesnelerin iki veya daha fazla kmeye ait olabilmesine izin verir [125]. Bulank mantk prensibi gerei her veri, kmelerin her birine (0,1) arasnda deien birer yelik deeri ile aittir. Bir verinin tm snflara olan yelik deerleri toplam 1 olmaldr. Nesne hangi kme merkezine yakn ise o kmeye ait olma yelii dier kmelere ait olma yeliinden daha byk olacaktr. Fuzzy C-means algoritmasnn en nemli zellii olan yelik matrisinin kmeleme zerinde olumlu etkileri vardr. Bu matris belirsiz durumlarn tanmlanmasn kolaylatrr [118]. Ayrca yelik 134

dereceleri dk olduundan sra d verilerin etkisi azdr. Esnek bir yapya sahiptir. rten kmeleri bulma kabiliyeti dier blnmeli algoritmalara gre daha fazladr. VIII.2.2. WBCA Ara Kutusu Tasarm Kmeleme alannda eitime katk salamas dnlen bu almada, kmeleme algoritmalarnn daha kolay ve etkin bir ekilde kullanlmas, rencilerin programlama yapmakta kaybettikleri zaman engellemek amacyla ksa srede sahip olduu veri setlerini kullanarak, kullanc arayz yardmyla kmelemeden elde edilen sonu verilerinin grafiksel elerle desteklenip kmeleme analizinin daha kolay ve etkili yaplmas iin tasarlanmtr [95]. WBCA ara kutusunun eitimretim ilikisi ekil VIII.13'te gsterilmitir.

ekil VIII. 13 WBCA ara kutusunun retim srecine katks VIII.2.3. WBCA Ara Kutusu Mimarisi Web tabanl bir tasarma sahip olan WBCA ara kutusu, web dokmanlarn kullanr ve birka web sunucu sisteminin birlikte almasyla web zerinden kullanclara cevap verir. WBCA ara kutusu ortam MATLAB uygulamalar ierdii iin tasarm ounlukla web tabanl dokmanlar ve MATLAB kaynak kodlar iermektedir [95]. Sistem bir web sunucu ortamnda almaktadr. Bu sistemde Apache Web Server v.2.2.8 sunucu yazlm kullanlmtr. Sistemin mimari yaps ekil VIII.14'de gsterilmitir.

135

ekil VIII. 14 WBCA ara kutusu mimarisi MATLAB Web Server (MWS) ile online simlasyonlar yaplabilir. Bunlar pek ok teknik derslerde ve belirli sanal laboratuar ortamlarnda gereklidir. Ayrca, bunlar matematik dersleri iin laboratuarlarda da yararldr. Simlasyon ara yznn girii saysal ve alfa saysal ve ktlar saysal, alfa saysal veya grafiksel olabilir. Fakat, bu arac kullanmann baz dezavantajlar da vardr. rnein kullanclar giri deerlerini sadece deitirebilirler. Bir baka dezavantaj ise yksek performansl CPU ve simlasyon zamann ksaltmak iin dikkate alnan lde RAM kapasitesi gerektirir. Ayrca, MWS uygulamalar gelitirmek iin uygulama kayd gerekmekte ve bu da uygulama gelitirme zamann arttrmaktadr. Bu almada bu sorunlara zm bulmak zere Web MWS sistemini kullanr [111]. VIII.2.4. WBCA Ortam ve Simlasyon Arayz WBCA zerinden renciler veya web kullanclar kmeleme analizi ile ilgili her trl bilgiye ulaabilir. Dolaysyla ayn anda pek ok kullanc sistemde online olma imknna sahip olacaktr [95]. WBCAnin kullanm arayz ekil VIII.14te gsterilmitir. Kullanclar herhangi bir veri seti ile ilgili simlasyon sayfasna erimek iin WBCA zerinden her analiz iin sunulan Kmeleme Analizi alann kullanmaktadr. Bu alandan kullanc ilgili deney ait parametreleri deitirilebilecei ekil VIII.15'te grlen arayz ile karlaacaktr.

136

ekil VIII. 15 WBCA ara kutusu web arayz Kullanclar web arayznden kullanacaklar veri seti grubuna gre ilgili linke tkladklarnda ekil VIII.16'da grld gibi ilgili simlasyon ait parametre sayfas alacaktr. Bu sayfada farkl kmeleme algoritmalarna ait eitli parametreler

137

ekil VIII. 16 WBCA ara kutusu simlasyon arayz giri sayfas grlmektedir. Herhangi bir parametre hakknda bilgi almak iin parametrenin yanndaki soru iareti (?) simgesine tklanmas yeterlidir. Bu durumda kullanclar ekil VIII.17'daki gibi bir yardm penceresi ile karlaacaklardr.

138

ekil VIII. 17 WBCA web arayz yardm sayfas renciler kmeleme analizi iin parametreleri deitirmek zere deerleri girdikten sonra web sayfas form bilgisini sunucuya gndermek zere Gnder butonuna tklarlar. Ayrca, WBCA uygulamasn farkl klan dier bir zellik de uzak kullanc tarafndan kendisine ait veri seti dosyas ile bu sistem ile tmleik olarak alabilmesidir. Bunun iin kullanclarn ekil VIII.15'deki ana web arayz sayfasndan "Kendi veri seti dosyam kullanarak ilem yapmak istiyorum." balantsn tklamas gerekir. Bu admdan sonra ekil VIII.18'deki gibi bir ekran grnts ile karlaacaklardr. Bu sayfada kullanclar hem daha nce yklenmi veri setlerini tekrar kullanabilecekler, hem de kendi veri setlerini sisteme upload edebileceklerdir.

139

ekil VIII. 18 WBCA ile kullanclarnn kendi veri seti dosyasn upload imkan Uzak kullanclar analiz sonularn grntlemek zere Gnder butonuna tklarlar ve form bilgilerini sunucu bilgisayara gnderirler. Daha sonra kullanclar ekil VIII.19 ve ekil VIII.20'da ayr ayr gsterilen grafik sonu penceresine ait olarak analiz sonularn saysal deer veya grafiksel olarak gzlemleyebilirler.

140

ekil VIII. 19 WBCA ile simlasyona ait saysal deer sonu sayfas ekil VIII.19'daki grafik ktsna dikkat edilirse WBCA ile analiz ilemi sonucu kmelenen veri setleri farkl renklerde web kullancsna gsterilmitir. Buradaki rnekte analiz iin ekil VIII.16'da grld zere parametre giri sayfasndan deeri verilerek, WBCA ile "bak" veri setinin adet kmeleme sonucunun grafikte gsterildiine dikkat edilmelidir. .

141

ekil VIII. 20 WBCA ile simlasyon grafik kts Ayrca, kullanclar simlasyonunu gerekletirmi olduklar kmeleme sonularna ait MATLAB tarafndan retilen deerleri kendi lokal bilgisayarlarna

ekil VIII. 21 WBCA simlasyonu sonu veri seti dosyasnn download imkn

142

download edebilir ve farkl bir yazlm ile veya MATLAB ile yerel sistem zerinde kullanabilirler (ekil VIII.21).

VIII.2.5. Uygulama Sonucu Bu almada MATLAB ortamnda kullanlmak zere Web Tabanl Kmeleme Analizi (WBCA) ara kutusu tasarlanmtr. Bu alma ile kmeleme analizi iin retim ortamlarnda kullanm kolay bir yardmc ortam sunulmas amalanmtr. Ayrca, WBCA arac ile kullanclar kendi veri seti dosyalarn kullanmak suretiyle de sadece statik ve rnek yapdaki veri setlerini kullanma imkn olacaktr. Bu durum farkl kmeleme sonucu analizlerini karlatrma yolu ile rencilerin ve kullanclarn kmeleme yntemini daha rahat ve kolay anlamasna yardmc olacaktr. Ayrca, WBCA arac ile getirilen bir baka yenilik sisteme yklenen farkl veri seti dosyalarnn dier kullanclar tarafndan download edilebilmesi olup, bu ekilde kullanclar eitli veri seti deerleri ile kendi yerel bilgisayarlarnda da alma imknna sahip olacaktr. Bu ara tasarmnda Web MWS sistemi kullanlmtr. Bylece tasarlanan WBCA ara kutusu web tabanl olarak tm kullanclarca herhangi bir zamanda ve herhangi bir yerden eriilebilecek ve kullanclara kendi makinelerinde MATLAB yazlmn kurmalarna gerek brakmayacaktr. Tek gereksinim, internete bal bir PC ve web taraycsdr. zellikle renciler ve niversiteler arasnda MATLAB faaliyetlerinin paylalmas ve lisans durumu dnldnde [38] Web MWS Sistem desteinde WBCA ile maliyetler hem renciler asndan, hem de eitim kurumlar asndan nemli lde azalm olacaktr. VIII.3. WBCSE Uygulamas Proses kontrol dikkate alndnda bilgi teknolojileri ilk olarak eitim alannda kullanlmtr [24]. Bunun yannda eitsel sreteki internet kullanlarak yaplan yenilikler eitime ynelik kontrol uygulamalarnn uzaktan gerekletirilmesine imkn salamaktadr. Kontrol sistemlerine giri derslerinin amalar arasnda bilgisayar destekli kontrol tasarmnn ve bilgisayar destekli kontrol uygulamasnn renilmesi yer alr. Endstriyel uygulamada bir kontrol tasarm iin bir kimse, modelleme, tasarm simlasyon, test etme ve uygulama gibi kendi ierisinde birok tekrar gerektiren 143

admlar uygulamak zorundadr. Kontrol uygulama alannda daha fazla etkinlik iin gnmzn ticari rekabet talebi mmkn olduunca hzl bir ekilde kontrol tasarm ve uygulamas ihtiyac ile ne kmaktadr [38]. nternete dayanarak hem sanal bir renme laboratuar, hem de uzaktan bir renme laboratuar renme ortamnda bir laboratuar inas iin kullanlabilmektedir. Bir sanal laboratuar, bir bilgisayardaki simle edilen bir prosese srekli eriime izin verir. Burada kullanclarn birbirlerini beklemesi ya da ayn anda sadece bir kullanc kullanm gibi herhangi bir kstlama sz konusu deildir [58]. Bu almada kullanclar iin kullanm kolay, basit bir arayz sunmas yannda, maliyeti de dk bir sistem tasarm hedef alnmtr. Ayrca, web kullanclarn ayn anda simlasyonu gerekletirebilme imkan da gz nnde bulundurulmutur. Bilgisayar destekli kontrol tasarmnn renilmesinde bir adm olarak ilave maliyetler kanlmazdr. Bilgisayar destekli kontrol tasarmnn retilmesi karar verilmise bilgisayar ve uygun yazlm herhangi bir yerden (evden, niversiteden v.s.) eriebilir olmak zorundadr. Gnmzde ounlukla tm rencilerin bir bilgisayar ve internet eriimi vardr. Bu durum dikkate alndnda zellikle kontrol alan ile ilgili pek ok analiz srelerinde sklkla tercih edilen yazlm paketi MATLABin kullanlmas iin maliyetlerin dikkate alnmas nemli olmaktadr ve renciler ve niversiteler arasnda MATLAB faaliyetlerinin paylalmas ve lisans durumu sz konusu olmaktadr [38]. Yukarda anlatlan eitli problemlere zm bulunmas amacyla Kontrol eitimi alannda eitim veren kurumlar iin maliyetlerin drlmesi, eitim-retim srelerindeki renci motivasyonunun ve retim etkinliklerinin verimliliinin arttrlmas ve kullanm kolay ve basit bir arayz sunulmas hedeflenmek zere Web Tabanl Kontrol Simlasyonlar Ortam (Web Based Control Simulations Environment System, WBCSE) uygulamas gelitirilmitir. Bu uygulama ile renciler internet zerinden herhangi bir zamanda ve herhangi bir yerden kontrol alanna ynelik eitli simlasyonlar web tabanl grme imkn olacaktr. VIII.3.1. WBCSE Tasarm WBCSE ile hedeflenen teorik bilgilerin simlasyon sreci ile desteklenmesidir. WBCSE tasarmnda kontrol alan ile ilgili dersler ile entegre olunmas, bylelikle rencilerin yaparak ve yaayarak retim ortam faaliyetlerine katlmas ve simlasyon sonularn yorumlamas dnlmtr. Ayn zamanda renciler veya 144

web kullanclar WBCSE zerinden farkl kontrolr yaplar ile alabilecek ve bylelikle farkl trde denetim sonularn da gzlemleme imkan olacaktr. WBCSE tm dnya zerinden uzak kullanclara simlasyon imkan sunan bir arabirime sahiptir. WBCSE web tabanl almak zere tasarlanmtr. Bylece kullanclar fiziksel ortamda uzun zaman alan ilemler yerine ksa zamanda ilgili sistem denetimini web tabanl yapabilecek ve analiz sonularna grafiksel bir arabirim eliinde eriebilecektir. Bu alma kapsamnda WBCSE'nin kontrol alan ile ilgili derslerde faaliyet gsteren eitim kurumlarnn zellikle youn kontenjana sahip programlar nedeniyle uygulama sonularndan yoksun olan rencilerin retim ortamlarna katlmas ve bu eksikliin giderilmesi amalanmtr. Ayrca, WBCSE ile amalanan yazlm maliyetlerin ve lisans sorunlarnn stsnden gelinmesidir. MATLAB yazlm paketine sahip olmak ekstra bir masraf getirecek ve bu hem eitim kurumu iindeki her bir alan bilgisayar, hem de her bir renci iin dnldnde maliyet giderleri son derece yksek olacaktr. Ancak WBCSE ile hedeflenen kullanm hazr ve kolay bir arabirim ile uzak kullanclarn web zerinden kendi bilgisayarlarna ekstra herhangi bir yazlm kurmasna gerek kalmadan analizi yapp, sonular gzlemleyebilmesidir. WBCSE web dokmanlarn kullanr ve birka web sunucu sisteminin birlikte almasyla web zerinden kullanclara cevap verir. MATLAB saysal hesaplama yapmaya imkn veren ve fiziksel sistemlerin modellenmesinde Simulink tmleik arabirimini sunan bir yazlm aracdr [38]. zellikle Kontrol alannda teorik derslerde yaygn bir ekilde kullanlmakta ve kontrol alan ile ilgili modelleme ve kontrol srelerinde eitli niversitelerde de popler bir kullanma sahiptir. Kontrol alan ile ilgili uygulamalarda MATLAB uygulamalarnn popler olmas nedeniyle gerekletirilen WBCSE ortam iin bu durum dikkate alnarak tasarm zellikle MATLAB destekli bir altyap tasarm erevesinde gelitirilmitir. Bu nedenle bu almada tasarm web tabanl dokmanlar, MATLAB kaynak kodlar ve Simulink model dosyalar iermektedir. WBCSE iinde kullanlan model dosyalar MATLAB/Simulink ortam [2] kullanlarak tasarlanmtr. Sistem bir web sunucu ortamnda almaktadr. Bu sistemde Apache Web Server sunucu yazlm [104] kurulu bir sunucu bilgisayar zerinde ayn zamanda MATLAB/Simulink uygulamas da almaktadr. Bu almada kullanlan RT 532 prosese ait model MATLAB/Simulink ortamnda gelitirilmi olup [97], MATLAB 145 uygulamas kullanld ve

simlasyonlarn web tabanl entegre edilmesi iin bu almada Web MWS Sytem kullanlmtr. Web MWS Sytem MATLAB/Simulink uygulamalarnn web zerinden altrlmasna ve kolaylkla Internet kullanclarnn bu ortam kullanan uygulamalar gelitirmesine imkn vermek zere tasarlanm bir ortam sunar [111]. VIII.3.2. WBCSE Donanm ve Yazlm Mimarisi Gerekletirilen sistemin teme amac Marmara niversitesi Teknik Eitim Fakltesi Kontrol Anabilimde renim gren rencilerimize proses kontrol sistemlerinin denetiminin deneysel olarak retilmesidir. Bu almada GUNT RT 532 basn kontrol prosesi kullanlmtr (ekil VIII.22). Bu kontrol prosesinde istenilen ama sistem tankndaki basn dzeyinin istenilen seviyede dengede tutulmas ve bunun iin sistem kndaki deimeye ramen tanka giren hava akn ayarlamaktr. Tank giri ve k aklar srasyla pnmatik ve elle ayarl valfler tarafndan kontrol edilmektedir. Sistem kontrolnde ve kontrolr yaplarnn gelitirilmesi ve sistem modelleme ilemleri MATLAB yazlm desteinde gerekletirilmitir.

ekil VIII. 22 RT 532 basn prosesi fiziksel grnts Tasarlanan sisteme ait yazlm mimarisi ksaca aada zetlenmitir. MATLAB yazlm kendi bana saysal hesaplama, analiz ve sonularn grselliini salayan ara kullanmna imkn veren bir ortam sunar [110]. Simulink, MATLAB yazlmna entegre bir ara olup, modelleme ve PC tabanl simlasyon ilemlerini blok diyagram tabanl olarak gereklemeyi salayan kullanm kolay bir arabirime sahiptir. Bu tasarmda MATLAB/Simulink ortam ve ANN (Artificial Neural Networks) ara kutusu modelleme ve tasarlanan sistemin kontrol aamalarnda 146

kullanlmtr [126]. Sistem tasarmnda kullanlan kontrolr yaplar Simulink blok diyagramlar kullanlarak tasarma dahil edilmitir. VIII.3.4. WBCSE Ortam ve Simlasyon Arayz WBCSE kullanlarak web kullanclar model tabanl RT 532 sistemi zerinden simlasyon sonularn gzleyebilirler [114]. Burada fiziksel bir sistem deil, simlasyon tabanl bir ortam sunduu iin WBCSE ile ayn anda pek ok kullanc sistemde online olarak erime imknna sahip olacak ve e zamanl olarak simlasyonlar altrabilecektir. WBCSE'nin kullanc arayz ana sayfa grnm ekil VIII.23'te gsterilmitir. Bu sayfa kullanlarak kullanclar WBCSE ortam tasarmc bilgilerine eriebilir. Ayrca, bu alan kullanarak simlasyon tabanl alma sonucu gsterilen RT 532 prosesine ait bilgi alabilir ve WBCSE ile ilgili bilgi alma sayfasna ulaabilir.

ekil VIII. 23 WBCSE web kullanc arayz WBCSE kullanarak kontrol alanndaki derslerin desteklenmesi amacyla uzak kullanclar ak veya kapal evrim denetim simlasyonlarn gerekletirebilir.

147

Ayrca, web kullanclar kapal evrim denetim ile RT 532 prosesini On/Off veya PID olmak zere iki farkl kontrolr ile kontrol edebilir ve sonular gzlemleyebilir. RT 532 sistemi ile ak evrim denetim yapmak mmkndr. ekil VIII.24'te gsterildii zere simlasyon ile ilgili gerekli parametreler girilir. Simlasyon parametre giri sayfasndan simlasyon sresi, rnekleme zaman, referans deeri gibi pek ok farkl konfigrasyon web kullanclarna sunulmaktadr. Ayrca, WBCSE ortamnda referans sinyal tipi de farkl seilebilir. Sabit bir referans deeri, basamak giri ve yrnge takibi bu almada kullanlan referans eitleridir. Simlasyonun altrlmas sonucu RT 532 prosesi ak evrim alma grafiksel sonu sayfas ekil VIII.25teki gibi grlecektir.

148

ekil VIII. 24 WBCSE ak evrim simlasyonu giri (parametreler) sayfas

ekil VIII. 25 WBCSE ak evrim simlasyonu sonu sayfas RT 532 sistemi ile kapal evrim denetim yapmak mmkndr (ekil VIII.26VIII.29). WBCSE ortamnda kapal evrim denetim trlerinden On/Off alma ve PID kontrol tipi bu almada kullanlmtr. RT 532 prosesi On/Off kontrolr kullanarak denetlenebilir. ekil VIII.26'da grld zere ilgili On/Off kontrolr parametreleri seilir. Simlasyon kts ise ekil VIII.27'de gsterilmitir.

149

ekil VIII. 26 WBCSE kapal evrim on/off denetim simlasyonu giri sayfas

ekil VIII. 27 WBCSE kapal evrim on/off denetim simlasyonu sonu sayfas WBCSE ile PID denetimli simlasyonlar gerekletirmek de mmkndr. ekil VIII.28'de PID denetim iin gerekli konfigrasyon ayarlar grlmektedir. Uzak kullanc bu sayfadan ilgili ayarlamalar yaptktan sonra Gnder tuuna basarak PID simlasyonunu gerekletirebilir. Simlasyon sonu sayfasndan sistemin referans giri iaretine gre nasl bir davran gsterdii grafiksel olarak gzlenebilir (ekil VIII.29). 150

ekil VIII. 28 WBCSE kapal evrim PID denetim simlasyonu giri sayfas

ekil VIII. 29 WBCSE kapal evrim PID denetim simlasyonu sonu sayfas

VIII.3.6. Uygulama Sonucu Bu uygulamada kontrol eitimi derslerinde kullanlmak zere tasarlanan WBCSE ortam ile renciler iin kullanm kolay ve hzl bir ekilde ders konular ile senkron kullanabilmeleri ve bizzat yaparak ve yaayarak uygulama sonularn bir simlasyon ortamnda grme imkan salayabilmeleri amalanmtr. Gelitirilen WBCSE iin model tabanl bir uygulama MATLAB/Simulink ortam kullanlarak tasarlanmtr. Bylece daha ksa srede ve daha az aba ile (kendileri MATLAB 151

ortamn direk kullanmadan, model retmeden ya da MATLAB programlamas bilmeye gerek kalmadan) kontrol derslerine yardmc bir kaynak ortam sunulmutur. WBCSE ile rencilerin teori ve kontrol pratii arasnda balant kurmasna izin verilmi olacaktr. Bylece, WBCSE kullanan renciler iin kontrol teorisi dersleri ve kontrol uygulamalarnda retim srelerine bizzat yaparak ve yaayarak katlacak ve retim ortam verimlilii ykselmi olacaktr. WBCSE ortam kullanlarak renci ve retim yesi arasnda cereyan eden ve dinamik bir sre olan renme-retme ortamna grsel bir kaynak hazrlanmtr. Bu sistem son bir rn olarak gsterilemeyecei gibi kontrol retmek iin en iyi yol olarak da iddia edilemez. Fakat bu tarz simlasyon tabanl rnek uygulamalar daha ileri yenilikle ve yeni sanal ve simlasyon tabanl grsel eitim materyali tasarmlarna yol gstermek zere bir balang noktas olarak fikir verecektir. almada Web MWS Sistemi kullanlm olup, bylece web kullanclar ve rencilerin kendi yerel bilgisayarlarnda MATLAB uygulamas yklemesine gerek kalmayacaktr. Bu durum renciler asndan maliyetleri drecek ve sistem kaynaklarnn daha ekonomik kullanmna bir katk salam olacaktr [38]. Ayrca, kullanclar WWW iin ekstra kaynak gerekmeden ve MATLAB destekli uygulama projelerini ek web sunucu hizmet maliyetleri olmakszn ve zamandan tasarruf salayarak kullanm kolay bir arayz zerinden web tabanl olarak yaynlayabileceklerdir [93, 111]. Bu alma kapsamnda da zellikle bu durumun varl sebebiyle Web MWS Sistemi alma kapsamna dahil edilmitir.

152

BLM IX

SONULAR VE TARTIMA

MATLAB Web Server kullanarak uygulamalar gelitirmek teknik anlamda talep edilmekte ve zaman almaktadr [43]. Programlama yetenei iin aba gerektirmektedir. Ama yine de, MWS uygulamalar pek ok avantaj sunmakta, en gerekli olan ise bir web taraycs zerinden MATLAB eriimi gerekletirilmektedir. Bu almada tasarlanan web MWS sistemi bu problemleri ortadan kaldrmay ya da azaltmay amalar. Bylece web kullanclar lisans sorunu olmadan ve ksa srede MATLAB uygulamalar gelitirebileceklerdir. Ayrca, kullanclar MATLAB tabanl projelerini ekstra web sunucu kaynaklar ve ilave zaman israf nlenmek suretiyle kullanm kolay ve hzl bir arayz zerinden WWWde yaynlayabileceklerdir. Bu tez almasnda kontrol eitimi derslerinde kullanlmak zere tasarlanan ACSES sistemi Web MWS [111] alt yapsn kullanarak gelitirilmi olup, renciler iin kullanm kolay ve hzl bir ekilde laboratuar dersin uygulama sonularn bir simlasyon verisi ile dorulama imkan salamasn amalar. Deneyler rencilere hazr modellenmi sistemler zerinden sunulmaktadr. Byle daha ksa srede ve daha az aba ile (kendileri MATLAB ortamn direk kullanmadan, model retmeden ya da MATLAB programlamas bilmeye gerek kalmadan) kontrol derslerine yardmc bir kaynak ortam sunulmutur. Bu deneyler rencilerin teori ve kontrol pratii arasnda balant kurmasna izin verir. nternet tabanl etkileimli eitim geleneksel eitimle karlatrldnda potansiyel avantajlara sahiptir. nk daha az pahal, eriimi kolay, gncellemesi kolay ve platform bamszdr. Bu alma da Internet tabanl eitim uygulamasnn potansiyelini kefetmek zere Otomatik Kontrol laboratuar dersi programnda uygulanan deney iin MATLAB/Simulink ortamnda modellemeye dayal online destekleyici bir simlasyon sistemi olan ACSES sunulmutur. ACSES, renciler ve kontrol eitimi alan web kullanclar iin online bilgi salamakta, parametre 153

ayarlamal simlasyonlar ve daha ayrntl alma iin ok sayda balantlar sunmaktadr. Bu online tasarm kontrol eitimi rencilerine daha grsel bir yardmc ara olarak kolay kullanlabilir ve MATLAB gibi gl bir yazlm desteinde olan bir ortam sunmaktadr. ACSES sistemi kendi iinde bu alma kapsamnda Otomatik Kontrol dersi mfredat programna gre dzenlenen ve dikkate alnan toplam 17 farkl laboratuar deneyi MATLAB/Simulink ortamnda modellenmi ve Web MWS sistemi desteinde [111-112] web kullanclarnn web zerinden simlasyonlar gerekletirmesine imkn salamaktadr. Bu platformunun kullanclara sunaca ana hizmet rencilerin laboratuar deney konularn herhangi bir zamanda ve herhangi bir yerden internet zerinden gerekletirebilmeleridir. Bu almada Marmara niversitesi Teknik Eitim Fakltesi Elektronik-Bilgisayar Blm Kontrol Anabilim dal altnda lisans eitiminde programda yer alan Otomatik Kontrol dersi laboratuar program baz alnmtr. Bu deneyler toplama, karma, ak evrim, entegral, trev, akm-gerilim ve gerilim-akm gibi OPAMP deneyleri, orant tipinde, zaman sabiti (birinci mertebeden) tipinde ve titreim eleman (ikinci mertebeden), DC servo sistem gibi modeller ile On-Off, PI, PID kontrolr konularna dayal deneyleri kapsamaktadr. ACSES ortam ile kontrol alannda ders alan her hangi bir renci bir sanal laboratuar imknna kavuacak ve kendi bilgisayarna MATLAB yazlmn yklemesine gerek kalmadan simlasyon almalar gerekletirebilecektir. Tek gereksinim, internete bal bir PC ve web taraycsdr. zellikle renciler ve niversiteler arasnda MATLAB faaliyetlerinin paylalmas ve lisans durumu dnldnde [38] ACSES ile maliyetler nemli lde azalm olacaktr. retme renme sreci renci ve profesrle arasnda dinamik bir sretir. Bu sistem son bir rn olarak gsterilemeyecei gibi kontrol retmek iin en iyi yol olarak da iddia edilemez. Fakat bu laboratuar daha ileri yenilikle ve yeni deneylere yol gstermek zere bir balang noktas olarak fikir verir. Laboratuar yenilii danmann rencilerin sorularn ve kullanm klavuzu ve metodolojiyi dzenlemek iin gzlemleri kullanlmasna bal olacaktr. Gnlk teorik eitim sreleri ile bu alma ileri vadede gerek zamanl zmler ve modelleme destei sunan alternatifler ile gncel bir hale gelebilir. Bu almann uygulamalarndan biri de MATLAB ortamnda desteinde gelitirilen zere Web Tabanl Kmeleme Analizi (WBCA) ara kutusu tasarmdr. 154

Bu alma ile kmeleme analizi iin retim ortamlarnda kullanm kolay bir yardmc ortam sunulmas amalanmtr. Bu ara tasarmnda Web MWS sistemi kullanlmtr. Bylece tasarlanan WBCA ara kutusu web tabanl olarak tm kullanclarca herhangi bir zamanda ve herhangi bir yerden eriilebilecek ve kullanclara kendi makinelerinde MATLAB yazlmn kurmalarna gerek brakmayacaktr. Tek gereksinim, internete bal bir PC ve web taraycsdr. zellikle renciler ve niversiteler arasnda MATLAB faaliyetlerinin paylalmas ve lisans durumu dnldnde [38] Web MWS Sistem desteinde WBCA ile maliyetler nemli lde azalm olacaktr. Ayrca, bu alma benzeri disiplinler aras akademik almalar iin bir rnek tekil etmektedir. Kontrol eitimi derslerinde kullanlmak zere tasarlanan bir baka uygulama da WBCSE ortam olup, bu uygulama ile renciler iin kullanm kolay ve hzl bir ekilde ders konular ile senkron kullanabilmeleri ve bizzat yaparak ve yaayarak uygulama sonularn bir simlasyon ortamnda grme imkan salayabilmeleri amac ile gelitirilen WBCSE iin model tabanl bir uygulama MATLAB/Simulink ortam kullanlarak tasarlanmtr. Bylece daha ksa srede ve daha az aba ile (kendileri MATLAB ortamn direk kullanmadan, model retmeden ya da MATLAB programlamas bilmeye gerek kalmadan) kontrol derslerine yardmc bir kaynak ortam sunulmutur. WBCSE ile rencilerin teori ve kontrol pratii arasnda balant kurmasna izin verilmi olacaktr. Bylece, WBCSE kullanan renciler iin kontrol teorisi dersleri ve kontrol uygulamalarnda retim srelerine bizzat yaparak ve yaayarak katlacak ve retim ortam verimlilii ykselmi olacaktr. WBCSE ortam kullanlarak renci ve retim yesi arasnda cereyan eden ve dinamik bir sre olan renme-retme ortamna grsel bir kaynak hazrlanmtr. Bu sistem son bir rn olarak gsterilemeyecei gibi kontrol retmek iin en iyi yol olarak da iddia edilemez. Fakat bu tarz simlasyon tabanl rnek uygulamalar daha ileri yenilikle ve yeni sanal ve simlasyon tabanl grsel eitim materyali tasarmlarna yol gstermek zere bir balang noktas olarak fikir verecektir. Yukarda anlatlan almalarda Web MWS Sistemi kullanlm olup, bylece web kullanclar ve rencilerin kendi yerel bilgisayarlarnda MATLAB uygulamas yklemesine gerek kalmayacaktr. Bu da renciler asndan maliyetleri drecek ve sistem kaynaklarnn daha ekonomik kullanmna bir katk salam olacaktr [38]. Ayrca, kullanclar WWW iin ekstra kaynak gerekmeden ve MATLAB destekli uygulama projelerini ek web sunucu hizmet maliyetleri olmakszn ve zamandan 155

tasarruf salayarak kullanm kolay bir arayz zerinden web tabanl olarak yaynlayabileceklerdir [93, 111]. Bu alma kapsamnda da zellikle bu durumun varl sebebiyle Web MWS Sistemi alma kapsamna dahil edilmitir. Bu sistem desteinde web tabanl simlasyonlar tasarlanabilir. zellikle MATLAB destekli uygulamalar ii,n bu durum gelien web teknolojileri ve internet a hizmetlerinin iyiletirilmesi dnldnde byk bir nem tar. Ayrca, sanal laboratuar tasarlamak isteyen akademik evrelere de bir n fikir ve onlar iin de kendi almalaryla entegre kullanabilecekleri bir hazr ara sunar.

156

BLM X

DEERLENDRME VE NERLER

Bu almada kontrol eitimi derslerinde kullanlmak zere tasarlanan ACSES sistemi temelde MATLAB iin gelitirilen MATLAB Web Server ara kutusu desteinde gerekletirildi. Bu ara kutusu ilevi ynyle kullanclara ok byk kolaylklar sunmaktadr. Ancak, her ne kadar avantajl gibi grnmesine ramen dezavantajlar da sz konusudur. MATLAB Web Server (MWS) ile online simlasyonlar yaplabilir. Bunlar pek ok teknik derslerde ve belirli sanal laboratuar ortamlarnda ok eitli ekillerde kullanlabilir. Ayrca, bunlar matematik dersleri iin sanal laboratuarlarn tasarm [4] ve zellikle MATLAB destekli zmlerin web ortamnda yaynlanmasnda ok kayda deer bir yarar salamaktadr. Simlasyon ara yznn girii saysal ve alfa saysal ve ktlar saysal, alfa saysal veya grafiksel ya da resim formatnda olabilir. Bu alma kapsamnda gelitirilen ve kullanlan Web MWS Sistemi [111] bnyesinde varolan uygulamalarda da gzlenecei zere MWS uygulamas girii daha fazla programlama ve PHP tasarma dayal zmler ile bir dosya girdisi olabilir [95]. ktlar youn programlama abas ile geniletilerek download edilebilir medya (deiken verileri seti ieren veri dosyalar, movie ieren grnt dosyalar gibi) da sunulabilir. MATLABin doal bir zellii olarak saysal giri deerleri gerek veya kompleks olabilir [112] ki bu durum ok eitli analizler ve hesaplamalar iin gereklidir. Eer alfa saysal ktlar gerekli ise stringlerle MATLAB programlama bilgisi gereklidir. MATLAB Web Servern mhendislik ve elektronik derslerinde en etkin kullanm 2D grafiklerdir [4]. Bunun yannda bu aracn nemli bir avantaj kullanclarn kendi istemci makinelerinden MATLAB yazlmn yklemeden MATLAB uygulamalarn kullanabilir olmasdr. Bylece yazlm ykleme ve lisans maliyetleri dm olacak [38] ve sistem kaynaklar paylalarak daha ekonomik kaynak kullanm doacaktr. Ayrca, .NET gibi youn sistem kaynaklar gerektiren ve .NET programlama deneyimi gerektiren ya da Java applet teknolojisi destekli daha youn tasarm abas gerektiren ve ayr bir 157

programlama dili bilme becerisinin olmasn zorunlu klan faktrler, sadece html yapdaki web sayfalarn veya daha da ciddi ve st dzey bir tasarm gerekli ise PHP ile pek ok web destekli MATLAB uygulama tasarmlar yaplabilir. MATLAB Web Server (MWS) ara kutusu her ne kadar ciddi ve nemli yararlar salasa da pratikte tasarmc iin problemler ok ciddidir ve nemli oranda teknik destek ve aba gerektirmektedir. MWS aracn kullanmann eitli dezavantajlar vardr. ncelikle MWS aracnn sistem ile entegre edilmesi ve var olan farkl MWS uygulamalarnn sisteme kayt edilmesi srecinde teknik destek gerektirmektedir. Tasarmclar iin bu durumun arka plannda ortak bir arayz zerinden alma sz konusu deildir ve herhangi bir hata sonucunda tm varolan uygulama kaytlarnda hatalarn olumas sz konusu olabilir ve bu durum zellikle bilgi ielm sorumlulular iin ciddi bir klfeti beraberinde getirecektir. nk mevcut MWS kullanm yntemi ve mimarisi, sistem zerinde oluacak hatalardan veya problemlerden dorudan herhangibir kullancy sorumlu tutmak zere tasarlanmamtr. Mevcut MWS uygulamalarn sistemde hangi kullanclarn neler yapt olduu bilenemez veya gzlenemez. Byle bir problemin zm ancak eksta aba ve alma ile tez alma kapsamnda da yapld zere PHP veya benzeri dinamik sunucu tabanl web sayfa destei veren web tasarm almalar ile bir derece giderilebilir, ancak tamamyla byle bir yaklam bahsedilen sorun iin bir zm tekil etmeyecektir. Bu durum mevcut kullanc potansiyelinin de deerlendirilememesine neden olacaktr. Sistem zerinde ters veya yanl giden baz aksaklklar nedneiyle sistemin tm almaz hale gelebilir. Ayrca, sistemi yerel a (intranet) ortamndan WWW ortamna tamak baz teknik bilgiler ve eer sistem yerli yerinde zellikle belli standartta tasarlanmamsa ekstra ilem zaman ve aba gerektirecektir. Mevcut MWS altyaps gvenlik asndan ok byk sorunlar da beraberinde getirir. Her ne kadar CGI arabirimin MWS ortamnda kullanm gvenli gibi gzkyor gibi olsa da almann MWS zerinde var olan uygulamalara ait kodlarn alnmas, istenmeyen verilerin sistemden izinsiz alnmas ve veri hrszl gibi durumlar web sunucu (Apache, IIS gibi) sistemine bal olarak ortaya kacaktr. Ayrca, sistemdeki kilitlenmeler ve sistemin yeniden batan balatlmas, elektrik kesintilerinin neden olduu veri kayplar, dzenli olmayan sunucu tahsisi ve tek bir noktada youn trafik yaanmas gibi pek ok sknt da sz konusudur. Bu durumlar iin bu alma kapsamnda ortak bir arabirim sunan ve alma boyunca 158

uygulamalarn bu sistem zerinden tasarland Web MWS Sistemi pek ok zm beraberinde sunmaktadr. Ayrca kullanclar herhangi bir MWS uygulamasna ait parametre giri deerlerini sadece deitirebilirler, yani giri herhangi bir program paras veya dosya olamaz ve de html veri kabul ettii iin MWS uygulamas giri verileri ierisinde zel karakterlerin kullanlmas (%, ?, # v.b. gibi) srasnda da kstlamalar vardr. Bu durum ancak tasarm ve programlama abas ile ve zaman gerektiren almalar ile telafi edilebilir. MWS ara kutusu kullanmann bir baka dezavantajl yan ise yksek performansl CPU gerektirmesi ve simlasyon zamann ksaltmak iin dikkate alnan lde RAM kapasitesi gerektirmesidir. MATLAB'in burada ciddi manada sistem kaynaklarn tkettii ve zellikle alma annda (bu alma Windows XP platformu kullanarak yaplmtr.) sistem kaynaklarn ar derecede zorlamaktadr. Ayrca, Java programlama dili ile daha fazla kod yazlarak yukardaki problemler byk lde ortadan kaldrlabilir [87]. Ayrca, MWS uygulamalar gelitirmek uygulama kayd gerektirmekte ve bu da uygulama gelitirme zamann arttrmaktadr. Bunlarn yannda internet ortam ve yerel adan kaynaklanan web sayfas gecikmeleri dnda MWS mimarisinde istemci ve sunucu arasnda lisans sorunlarn aza indirmek ve kullanm srasnda tasarmc tarafndan salanan matlabserver uygulamasnn [83] dnda farkl sunucularda alma yaps sunabilmek iin MWS altyapsna ayr bir matweb giri noktas [83] konulmu ve bu durum mevcut uygulamalar ile yaplan tasarmlarda (hatta MWS uygulamas ile matweb giri noktas ayn sunucu bilgisayar zerinde olsa bile) simlasyon ktlar ok ge cevap vermektedir. Literatrde yer alan sanal laboratuarlar ile karlatrldnda gerekten ciddi manada bir gecikme sz konusudur. Ancak sunucu sistem kaynaklarnn iyiletirilmesi ve MWS tarafndan kullanlan matweb ile matlabserver aralarnn ayn sunucu bilgisayar zerinde yklenmesi ile bu problem belli bir lde alabilmektedir. MWS aracnn destei MATLAB tasarmcs Mathworks firmas tarafndan MATLAB'in 2006a (v.7.2.0) versiyonundan sonraki srmlerinde desteklememe karar almtr. retici bu konuda MATLAB Builder for .NET ve dier MATLAB Builder aralarnn kullanlmasn nermektedir. Bu noktada her nekadar desteklenemyen bir srm olduu gibi dezavantajl gibi grnmesine ramen MWS arac destekli tasarm zellikle kendi alanna ait aralar kullanan ve web tasarm bilgisi snrl olan veya .NET gibi ekstra programlama bilgisi ve yetenei gerektiren kullanclar iin olduka ok kolay bir arayz ve kullanm sunmaktadr. Ayrca, tez 159

almas kapsamnda gelitirilen Web MWS Sistemi ile hedeflenen potansiyel web tasarm destei kullanmak zere MATLAB kullanacak tasarmclar ve akademi,syeneleri kullanm kolay ve rahat, internet zerinde yaynlama iin yormayacak ve eksta sunucu bakm maliyeti gerektirmeyecek, web tasarm ynnden ok fazla programlama bilgisi bilmeye gerek brakmayacak bir ortam sunmaktr.

160

KAYNAKLAR

[1]

Bogdanova, I., Khan, R., and Kunt, M.: Graphical User Interface and MATLAB Web Server for Multimedia Teaching on WWW, Signal Processing Laboratory, Swiss Federal Institute of Technology (EPFL), CH1015 Lausanne, Ecublens, Switzerland, (2001). Irmak, E., Bayindir, R., Colak, I., Sagiroglu, S., and Bal, G.: A web based real time speed control experiment on ultrasonic motor for educational purposes. Power Electronics, Electrical Drives, Automation and Motion, 2008. SPEEDAM 2008. International Symposium on, (2008) 1451-1454. Ondera, M., and Huba, M.: Web-Based Tools for Exact Linearization Control Design. Control and Automation, 2006. MED '06. 14th Mediterranean Conference, (2006) 1-6. Pester, A., and Ismailov, R.: Interactive Applications in Teaching with the MATLAB Web Server, Carinthia Tech Institute, School of Electronics, Austria, (2009). Uran, S., and Jezernik, K.: MATLAB Web Server and M-file Application. Power Electronics and Motion Control Conference, 2006. EPE-PEMC 2006. 12th International, (2006) 2088-2092. Bogdanova, I., Vandergheynst, P., and Kunt, M.: Virtual classroom for multimedia teaching on WWW. Frontiers in Education, 2002. FIE 2002. 32nd Annual, (2002) vol.2, F3E-7-F3E-11. Erdemir, G.: Kaskat Bal Sv Seviye Ak Sisteminin Web Tabanl Gerek Zamanda Zeki Kontrol, Yksek Lisans Tezi, Marmara niversitesi, Fen Bilimleri Enstits, stanbul, (2006). Doan, B.: Web zerinden Sistem Kontrol Ve Uzaktan Eriimli Laboratuvar Uygulamas , Yksek Lisans Tezi, Marmara niversitesi, Fen Bilimleri Enstits, stanbul, (2007). Ramasubramanian, M.K.: Teaching mechatronics design at North Carolina State University. Proceedings of Mechatronics 96, Cal. Poly, (June 13-15, 1996).

[2]

[3]

[4]

[5]

[6]

[7]

[8]

[9]

161

[10] Salazar-Silva, G., Martinez-Garcia, J.C., and Garrido-Moctezuma, R.: Enhancing basic robotics education on the Web . Proceedings of the American Control Conference (Acc'99), San Diego, CA, (1999). [11] Martinez-Garcia, J.C., and Garrido, R.: Mechatronics hands-on training through the development of an Internet-based automatic control laboratory. Control Applications, 2001. (CCA '01). Proceedings of the 2001, IEEE International Conference, (2001) 131-134. [12] Rohrig, C., and Jochheim, A.: The Virtual Lab for controlling real experiments via Internet. Computer Aided Control System Design, 1999. Proceedings of the 1999 IEEE International Symposium on, (1999) 279-284. [13] Overstreet, J.W., and Tzes, A.: Internet-based client/server virtual instrument designs for real-time remote-access control engineering laboratory. American Control Conference, 1999. Proceedings of the 1999, (1999) vol.2, 1472-1476. [14] Amadou, M.M.D., Saad, M., Kenne, J.P., and Nerguizian, V.: Virtual and remote laboratories. E-Learning in Industrial Electronics, 2006 1ST IEEE International Conference, (2006) 173-176. [15] Chiculita, C., and Frangu, L.: A Web Based Remote Control Laboratory. The 6th World Multiconference on Systemics, Cybernetics and Informatics, Orlando, Florida, (2002). [16] Saad, M., Saliah-Hassane, H., Hassan, H., El-Guetioui, Z., and Cheriet, M.: A Synchronous Remote Accessing Control Laboratory on the Internet. International Conference on Engineering Education, Oslo, (2001). [17] Lazar, C., and Carari, S.: A Remote-Control Engineering Laboratory, Industrial Electronics, IEEE Transactions on, (2008) vol.55, 6, 2368-2375. [18] Hiroshi, K., and Shintaro, I.: Web tools for distance learning. Systems, Man, and Cybernetics, 1999. IEEE SMC '99 Conference Proceedings. 1999 IEEE International Conference, (1999) vol.2, 235-238. [19] Sana, F., and Khoja, S.A.: A Low Cost Interactive Distance Learning Solution. Computer and Information Science, 2007. ICIS 2007. 6th IEEE/ACIS International Conference, (2007) 1025-1029. [20] Taylor, K.D., Honchell, J.W., and DeWitt, W.E.: Distance learning in courses with a laboratory. Frontiers in Education Conference, 1996. FIE '96. 26th Annual Conference., Proceedings of, (1996) vol.1, 44-46.

162

[21] Yusof, K.M., Liong, T.K., and Baderon, A.K.: Computer-aided process control laboratory systems. Multi-Media Engineering Education Proceedings, 1994., IEEE First International Conference on, (1994) 276-280. [22] Ling, G., and Jianqun, L.: Labview and Internet Based Remote Water Level Control Laboratory. Information Technologies and Applications in Education, ISITAE '07, (2007) 187-188. [23] Yang, S.H., Chen, X., and Alty, J.L.: Design issues and implementation of internet-based process control systems, Control Engineering Practice, (2003) vol.11, 6, 709-720. [24] Johansson, M., Gafvert, M., and Astrom, K.J.: Interactive tools for education in automatic control, Control Systems Magazine, IEEE, (1998) vol.18, 3, 3340. [25] Poindexter, S.E., and Heck, B.S.: Using the Web in your courses: what can you do? what should you do?, Control Systems Magazine, IEEE, (1999) vol.19, 1, 83-92. [26] Wagner, B., and Tuttas, J.: Team learning in an online lab. Frontiers in Education Conference, 2001. 31st Annual, (2001) vol.1, TIF-18-22. [27] Didaktisches Design medialer Lernangebote im

Umfeldingenieurwissenschaftlicher Laborpraktika: Didactical Design of media learning offers in the surrounding field of engineer-scientific laboratory practical courses, University Duisburg-Essen, Campus Duisburg, (2005). [28] Sebastian, J.M., Garcia, D., and Sanchez, F.M.: Remote-access education based on image acquisition and processing through the Internet, Education, IEEE Transactions on, (2003) vol.46, 1, 142-148. [29] Mason, G.: A handheld data acquisition system for use in an undergraduate data acquisition course, Education, IEEE Transactions on, (2002) vol.45, 4, 388-393. [30] Efstathiou, K., Karadimas, D., and Zafeiropoulos, K.: A Remote Electrical Engineering Laboratory based on Re-Configurable Hardware. Instrumentation and Measurement Technology Conference Proceedings, 2007. IMTC 2007. IEEE, (2007) 1-6. [31] I-Hai Lin, P., and Lin, M.: Design and implementation of an Internet-based virtual lab system for elearning support. Advanced Learning Technologies, 2005. ICALT 2005. Fifth IEEE International Conference, (2005) 295-296. 163

[32] Hough, M., and Marlin, T.: Web-based interactive learning modules for process control, Comput. Chem. Eng., (2000) vol.24, 2-7, 1485-1490. [33] WebAssign: Homework and Grading, http://www.webassign.net/, (ubat 2003). [34] Copinga, G.J.C., Verhaegen, M.H.G., and van de Ven, M.J.J.M.: Toward a Web-based study support environment for teaching automatic control, Control Systems Magazine, IEEE, (2000) vol.20, 4, 8-19. [35] Gillet, D., Latchman, H.A., Salzmann, C., and Crisalle, O.D.: Hands-on laboratory experiments inflexible and distance learning, J. Eng. Ed., (2001) vol.90, 2, 187-191. [36] Srinivasagupta, D., and Joseph, B.: An Internet-mediated process control laboratory, Control Systems Magazine, IEEE, (2003) vol.23, 1, 11-18. [37] Keating, K.A., Myers, J.D., Pelton, J.G., Bair, R.A., Wemmer, D.E., and Ellis, P.D.: Development and use of a virtual NMR facility, J. Magn. Reson., (2000) vol.143, 172-183. [38] Uran, S., and Jezernik, K.: Virtual Laboratory for Creative Control Design Experiments, Education, IEEE Transactions on, (2008) vol.51, 1, 69-75. [39] Ali, M.M., Baba, R., and Ching Jin, H.: An automated control laboratory station. Multi-Media Engineering Education Proceedings, 1994., IEEE First International Conference, (1994) 408-412. [40] Creighton, S.D., and etal.: A comprehensive system for student and program assessment: Lessons learned, Int. J. Eng. Education, (2001) vol.17, 1, 81-88. [41] Horcek, P.: Laboratory experiments for control theory courses: A survey, Annual Reviews in Control, (2000) vol.24, 151-162. [42] Hercog, D., Gergic, B., Uran, S., and Jezernik, K.: A DSP-Based Remote Control Laboratory, Industrial Electronics, IEEE Transactions on, (2007) vol.54, 6, 3057-3068. [43] Chinchilla, R., and Nurre, J.H.: Design of an industrial controls laboratory. System Theory, 1994., Proceedings of the 26th Southeastern Symposium on, (1994) 618-622. [44] Cone, M.L.: Design in an undergraduate controls laboratory. Frontiers in Education Conference, 1998. FIE '98. 28th Annual, (1998) vol.3, 1068-1072.

164

[45] Junge, T.F., and Schmid, C.: Web-based remote experimentation using a laboratory-scale optical tracker. American Control Conference, 2000. Proceedings of the 2000, (2000) vol.4, 2951-2954. [46] de Magistris, M.: A MATLAB-based virtual laboratory for teaching introductory quasi-stationary electromagnetics, Education, IEEE Transactions on, (2005) vol.48, 1, 81-88. [47] Jimenez, L.M., Puerto, R., Reinoso, O., Neco, R.P., and Fernandez, C.: Remote Control Laboratory Using Matlab and Simulink. Industrial Electronics, 2007. ISIE 2007. IEEE International Symposium on, (2007) 29632967. [48] Dixon, W.E., Dawson, D.M., Costic, B.T., and de Queiroz, M.S.: A MATLAB-based control systems laboratory experience for undergraduate students: toward standardization and shared resources, Education, IEEE Transactions on, (2002) vol.45, 3, 218-226. [49] Doitsidis, L., Nelson, A.L., Valavanis, K.P., Long, M.T., and Murphy, R.R.: Experimental validation of a MATLAB based control architecture for multiple robot outdoor navigation. Intelligent Control, Proceedings of the 2005 IEEE International Symposium on, Mediterrean Conference on Control and Automation, (2005) 1499-1505. [50] Exel, M., Gentil, S., Michau, F., and Rey, D.: Simulation workshop and remote laboratory: two Web-based training approaches for control. American Control Conference, 2000. Proceedings of the 2000, (2000) vol.5, 3468-3472. [51] Hahn, H.H., and Spong, M.W.: Remote laboratories for control education. Decision and Control, 2000. Proceedings of the 39th IEEE Conference, (2000) vol.1, 895-900. [52] Departamento de Informtica y Automtica, http://www.dia.uned.es/dia/ proyectos/DPI2001012/des.html, (2007). [53] Candelas, F.A., and Snchez, J.: Recursos didcticos basados en Internet para el apoyo a la enseanza de materiales del rea de ingeniera de sistemas y automtica, Revista Iberoamericana de Automtica e Informtica Industrial, (2005) vol.2, 2. [54] Candelas, F.A., Torres, F., Gil, P., Ortiz, F., Puente, S., and Pomares, J.: Laboratorio virtual remoto para robtica y evaluacin de su impacto en la

165

docencia, Revista Iberoamericana de Automtica e Informtica Industrial, (2004) vol.1, 1, 49-57. [55] Grau, A., and Bolea, Y.: Virtual Laboratories for Ecological Systems Modeling. International Workshop for Computer Education, SIIE, Len, Spain, (2006). [56] Grau, A., and Bolea, Y.: Remote laboratory for control engineering degree. Emerging Technologies and Factory Automation, ETFA, IEEE Conference, (2007) 1188-1193. [57] Ko, C.C., Chen, B.M., Chen, J.P., Zhang, J., and Tan, K.C.: A Web-based Laboratory on Control of a Two-Degrees of Freedom Helicopter, Int. J. Eng. Educ., (2005) vol.21, 6, 10171030. [58] Valera, A., Diez, J.L., Valles, M., and Albertos, P.: Virtual and remote control laboratory development, Control Systems Magazine, IEEE, (2005) vol.25, 1, 35-39. [59] Safaric, R., Debevc, M., Parkin, R.M., and Uran, S.: Telerobotics experiments via Internet, Industrial Electronics, IEEE Transactions on, (2001) vol.48, 2, 424-431. [60] Tzafestas, C.S., Palaiologou, N., and Alifragis, M.: Virtual and remote robotic laboratory: comparative experimental evaluation, Education, IEEE

Transactions on, (2006) vol.49, 3, 360-369. [61] Duan, B., Ling, K.-V., Mir, H., Hosseini, M., and Gay, R.K.L.: An Online Laboratory Framework for Control Engineering Courses, Int. J. Eng. Educ., (2005) vol.21, 6, 10681075. [62] Henry, J., and Knight, C.: Modern Engineering Laboratories at a Distance, Int. J. Eng. Educ., (2003) vol.19, 3, 403408. [63] Kikuchi, T., Fukuda, S., Fukuzaki, A., Nagaoka, K., Tanaka, K., Kenjo, T., and Harris, D.A.: DVTS-based remote laboratory across the Pacific over the gigabit network, Education, IEEE Transactions on, (2004) vol.47, 1, 26-32. [64] Smith, K.A., and Wallcr, A.A.: New Paradigms for Engineering Education. FIE Conference, Pittsburgh, Pcnnsylvania, (1997). [65] Kirkpatrick, D.L.: Evaluating Training Programs: The Four Levels. BerrettKochler, San Francisco, (1994).

166

[66] Latchman, H.A., Salzmann, C., Gillet, D., and Bouzekri, H.: Information technology enhanced learning in distance and conventional education, Education, IEEE Transactions on, (1999) vol.42, 4, 247-254. [67] Lab, U.E.: Web Resource Center, http://chem.engr.utc.edu, (ubat 2003). [68] Joseph, B., Ying, C., and Srinivasagupta, D.: A laboratory to supplement courses in process control, Chem. Eng. Ed., (2002) vol.36, 1, 20-25. [69] Ricker, N.L.: Using MATLAB/Simulink for data acquisition and control, Chem.Eng.Ed., (2001) vol.35, 4, 286-289. [70] Casini, M., Prattichizzo, D., and Vicino, A.: The automatic control telelab, Control Systems Magazine, IEEE, (2004) vol.24, 3, 36-44. [71] Diez, J.L., Valles, M., and Valera, A.: A global approach for the remote process simulation and control. Proceedings of the 15th IFAC World Congress, Barcelona, Spain, (2002) vol.15. [72] Aktan, B., Bohus, C.A., Crowl, L.A., and Shor, M.H.: Distance learning applied to control engineering laboratories, Education, IEEE Transactions on, (1996) vol.39, 3, 320-326. [73] Bohus, C., Crowl, L., Aktan, B., and Shor, M.H.: Running engineering experiments over the internet. Proceedings IFAC control World

Congress, San Francisco, California, (1996) vol.G, 25-33. [74] Bhandari, A., and Shor, M.H.: Access to an instructional control laboratory experiment through the World Wide Web. American Control Conference, 1998. Proceedings of the 1998, (1998) vol.2, 1319-1325. [75] How, C.J.: Automated Control Laboratory Station (A.C.L.S.), BSc Thesis, Universiti Teknologi Malaysia, (1993). [76] Palop, J.M.G., and Teruel, J.M.A.: Virtual work bench for electronic instrumentation teaching, Education, IEEE Transactions on, (2000) vol.43, 1, 15-18. [77] Daly, C., and Horgan, J.M.: An automated learning system for Java programming, Education, IEEE Transactions on, (2004) vol.47, 1, 10-17. [78] Karadimas, D., and Efstathiou, K.: Design, Implementation and Evaluation of a Remote Laboratory System for Electrical Engineering Courses. Advanced Learning Technologies, 2006. Sixth International Conference, (2006) 408-412. [79] Yeung, K., and Huang, J.: Development of a remote-access laboratory: a dc motor control experiment, Computers in Industry, (2003) vol.52, 3, 305-311. 167

[80] Yan,

P.,

Valkama,

M.,

and

Renfors,

M.:

Distance

Learning

in

Communications Signal Processing Using Matlab Web Server . Proceedings of the 6th Nordic Signal Processing Symposium-NORSIG 2004, Espoo, Finland, (2004). [81] Uran, S., Hercog, D., and Jezernik, K.: MATLAB Web Server and Web-based Control Design Learning. IEEE Industrial Electronics, IECON 2006 - 32nd Annual Conference on, (2006) 5420-5425. [82] Pavelka, A., and Prochzka, A.: Interactive Programming in MATLAB Using MATLAB Web Server. Proc. Sbornk 11. konference-MATLAB 2003, (2003). [83] MATLAB Web Server Users Guide, The MathWorks Inc., (2003). [84] Musoko, V., and Prochzka, A.: Implementation of a MATLAB Web Server for Internet-Based Processing of Biomedical Images. Proceedings of MATLAB Conference, Nordic, (2003). [85] WinCon 4.1 Users Guide: Hard Real-time Performance at your Fingertips, Quanser Consulting, (2003). [86] GlobeLab: Plataforma para la Docencia de Ingenier de Sistemas y Autom tica no-presencial y semi-presencial, Research Project (PID1208C), (2002). [87] Dawei, W., Dikshit, A., and Weizhao, Z.: Medical imaging curriculum development: an interactive simulation system for different modalities. Engineering in Medicine and Biology Society, 2004. IEMBS '04. 26th Annual International Conference of the IEEE, (2004) vol.2, 5172-5175. [88] Linka, A., and Volf, P.: Statistical Data Analysis Course Via The MATLAB Web Server. Record 2nd International Conference on the Teaching of Mathematics, Melbourne, Australia, (2002). [89] XploRe: XploRe Statistics Package, http://www.md-stat.com/, (2002). [90] John, J., and Kutil, M.: Internet Textbook SARI, http://dce.felk.cvut.cz/sari/i, (2004). [91] Lska, R., and Kutil, M.: AGMAWEB - Automatically Generated MATLAB Web Server Presentations. 15th International Conference on Process Control 05, Bratislava, (2005). [92] Sava, K.: Automatic Control Simulation Environment System (ACSES), http://www.controlworld.tk/control/experiments/auto_control/, 2009). 168 (09 Aralk

[93] Sava, K., and Erdal, H.: Automatic Control Simulation Environment System (ACSES) Designed As A Virtual Tool For Control Education, Procedia Social and Behaviour Sciences, (2010) vol.2, 52335237. [94] Sava, K., and Erdal, H.: Automatic Control Simulation Environment System (ACSES) Designed As A Virtual Tool For Control Education. World Conference on Educational Sciences Baheehir niversitesi, Istanbul, Turkey, (2010). [95] Sava, K., and Yldz, K.: A Web Based Clustering Analysis Toolbox (WBCA) Design Using MATLAB, Procedia Social and Behaviour Sciences, (2010) vol.2, 52765280. [96] Sava, K., and Yldz, K.: A Web Based Clustering Analysis Toolbox (WBCA) Design Using MATLAB. World Conference on Educational Sciences Baheehir niversitesi, Istanbul, Turkey, (2010). [97] nal, M., Sava, K., Topuz, V., and Erdal, H.: Web Based Control Simulations Environment (WBCSE) for Control Education with MATLAB. International Educational Technology Conference (IETC), Boazii niversitesi, Istanbul, Turkey, (2010). [98] Software License Agreement for MATLAB 2006b, The MathWorks Inc., (2006). [99] Crutchfield, S.G., and Rugh, W.J.: Interactive learning for signals, systems, and control, Control Systems Magazine, IEEE, (1998) vol.18, 4, 88-91. [100] Lee, J.S., and Yang, D.R.: Chemical engineering education using Internet. Proc. 8th APCCHE Congress, Seoul, Korea, (1999) 10331036. [101] Wikipedia: Wikipedia, The Free Encyclopedia, http://www.wikipedia.org/, (10 Mays 2010). [102] Macit, .: Apache Web Sunucusu, http://hpss.endustri.cu.edu.tr/ders/ ENM424/Bolum4-Apache.pdf, (18 Mart 2010). [103] Doan, H.: PHP Dkmanlar, http://www.php.web.tr/, (18 Mart 2007). [104] Apache.org: Apache Web Server, http://www.apache.org/, (2009). [105] Apache.org: Apache Installation Packages, http://www.apache.org/dist/ httpd/binaries/win32/, (18 Mart 2010). [106] Tfekilerli, H.: Apache Kurulumu, http://huseyint.com/projeler/apachephp-mysql/Apache-Kurulumu.html, (18 Mart 2010).

169

[107] PHP.net: PHP: Hypertext Preprocessor, http://www.php.net/, (03 Nisan 2010). [108] Anaska: WAMP Server, http://www.wampserver.com/en/, (Mart 2009). [109] Irmak, E., Bayindir, R., Colak, I., and Soysal, M.: A remote laboratory experiment for 4-quadrant control of a DC motor, Computer Applications in Engineering Education, (2009) vol.9999, 9999, n/a. [110] MathWorks: MATLAB Help, (2006). [111] Sava, K.: Web MWS Sistemi, http://www.controlworld.tk/web_mws/, (05 Kasm 2009). [112] Sava, K.: webmagic, Web MWS Demo Uygulamas,

http://www.controlworld.tk/web_mws_files/599a71294771c1030513783c423b 84f6/webmagic_input.html, (16 Kasm 2009). [113] Sava, K., and Yldz, K.: clustering_app_01, Web MWS Uygulamas, http://www.controlworld.tk/web_mws_files/51e1c67ef018fca53583dc66512736 12/clustering_app_01_input.html, (09 Aralk 2009). [114] nal, M., and Sava, K.: gunt_rt532_control, Web MWS Uygulamas, http://www.controlworld.tk/web_mws_files/fc2da5bf65bc8d7c8c65e411060171 a3/gunt_rt532_control_input.html, (06 Nisan 2010). [115] Berry, M.J.A., and Linoff, G.S.: Data Mining Techniques: For Marketing, Sales, and Customer Support, Wiley Publishing, Indiana, (2004). [116] Davidson, I.Y.: Understanding K-means Non-hierarchical Clustering, Computer Science Department of State University of New York (SUNY), Albany, (2002). [117] Kaufman, L., and Rousseeuw, P.J.: Finding Groups in Data: an Introduction to Cluster Analysis, John Wiley & Sons, (1990). [118] Azem, Z.: A Comprehensive Cluster Validity Framework For Clustering Algorithms, MSc Thesis, The University of Guelph, Canada, (2003). [119] Larose, D.T.: Discovering knowledge in data: an introduction to data mining, John Wiley & Sons, (2005). [120] Mucha, J.M., and Sofyan, H.: Nonhierarchical Clustering, (29

http://www.quantlet.com/mdstat/scripts/xag/html/xaghtmlframe149.htm, Kasm 2009).

[121] Han, J., and Kamber, M.: Data Mining Concepts and Techniques, Morgan Kauffmann Publishers Inc., (2001). 170

[122] Bilgin, T.T.: Veri Madenciliinde Kmeleme Analizi Yntemi Uygulamas, Yksek Lisans Tezi, Marmara niversitesi, Fen Bilimleri Enstits, stanbul, (2003). [123] Karypis, G., Han, E.H., and Kumar, V.: CHAMELEON: A Hierarchical Clustering Algorithm Using Dynamic Modeling, IEEE Computer 32, (1999) vol.8, 68-75. [124] Jain, A.K., and Dubes, R.C.: Algorithms for Clustering Data, Prentice Hall, Englewood Cliffs, New Jersey, 07632, (1988). [125] The Algorithm of c-Means, http://www.elet.polimi.it/upload/matteucc/ Clustering/tutorial_html/cmeans.htm, (15 Kasm 2009). [126] nal, M.: PID Kontrolrn Karnca Kolonisi/Genetik Algoritma Tabanl Optimizasyonu ve GUNT RT 532 Basn Prosesinin Kontrol, Yksek Lisans Tezi, Marmara niversitesi, Fen Bilimleri Enstits, stanbul, (2008).

171

EKLER

Tez almas kapsamndaki MATLAB programlar kaynak kodlarna [92] ve [111] nolu kaynaklardan eriilebilir.

172

ZGEM

1983 ylnda stanbulda dodu. lkrenimini Gebzede tamamlad. 2000 ylnda Darca Lafarge Aslan imento Endstri Meslek Lisesi Bilgisayar Blmnde orta renimini tamamlad. 2002 ylnda Marmara niversitesi Bilgisayar Programcl nlisans programndan blm birincilii derecesi ile mezun oldu. 2003 ylnda Marmara niversitesi Bilgisayar ve Kontrol retmenlii lisans programna dikey gei yapt. Bu programdan 2007 ylnda mezun oldu. 20072008 Eitimretim ylnda Marmara niversitesi Fen Bilimleri Enstits Bilgisayar-Kontrol Eitimi Anabilim dalnda yksek lisans renime balad. Ayn yl Marmara niversitesi Teknik Eitim Fakltesi Elektronik-Bilgisayar Blm Kontrol Anabilim dalnda Aratrma Grevlisi olarak atand ve halen ayn blmde almakta ve akademik almalara devam etmektedir.

173

You might also like