9
Web-Based Viual Laborat ories for Antenna Arrays, Radiowave Prop ag ation, and Filter Design Cagatay Ulu/�/k and Levent Sev gi Electroni cs and Communi cations Engineering Department Dogu� University Zeamet Sokak 21, AClbadem - Kad l koy, 34722 Istanbul, Turkey E-mail: Isevg [email protected] du.tr Abstract This tu torial exp lains in deta il the creation of a Web-based applicat ion us ing the MA AB Web Seer (MWS) toolbox of MAAB. It aims to enable readers who are familiar with MA AB but don't have Web-programming skills to prepare their own Web-based applications. Three Web-based virtual laboratories, AntenGUI, SSPEGUI, and FilterGUI, created using MWS, are p resented. The AntenGUI ap plicat ion illustrates the array factor of linea r, rectangular, and circular arrays. The SSPEGUI application visual izes rad iowave propagat ion over a non-smooth Eah's surface through a non-homogenous atmosphere. The FterG UI tool designs lumped-element (LC) filters, and obtains the corresponding transmissio n-line a nd microstrip-l ine filters. These Web-based virtual tool s can be accessed on the I nternet. Keywords: MA AB Web Serve r; virtual laborat ory; visualization; simulat ion; d istance learning; engin eering education; plan ar arrays; i sotropic radiators; antenna radiat ion patterns; radiowave p ropagati on; parabolic equati on method; filter design; lumped elements; transmiss ion li nes; microstrip lines 1 . Introduction W eb-based virtual laboratories play an important role in engineering education, due to their low cost s, lack of requirements for physical place s, and easy accessibility. There are many Web-based virtual laboratories that have been created using TLAB. These cover different topics, such as control engineering [1-7], signal processing [8, 9], medical imaging [ 1 0] , electromagnetics [ 1 1 ] , power engineering [12], and teaching basic mathematics [ 1 3] . A few TLAB-based electromagnetic virtual tools have been introduced for the use of the readers in the last couple of years (see, for example, [14-16]). AntenG [ 1 4] was intro- duced to investigate the radiation characteristics of periodic and planar arrays of isotropic radiators [14] . SSPEG [15] simulates wave propagation over non-flat terrai ns, through non-homogenous atmospheres. FilterDesigner [ 1 6] auto- mates the design procedure for lumped-element, transmission- line, and microstrip-line filters. All can be downloaded for ee (http://www3.dogus.edu.tr) . but they require a valid TB license and a proper version, as well as some specific toolboxes. Many users who downloaded these packages have informed us that they encountered problems related to TLAB, and asked for help. We therefore decided to prepare Web-based versions of these packages that can be accessed on the Inteet (http://modsim.dogus.edu.tr) om anywhere in the world, with only Web browser needed. However, introducing these Web-based virtual tools is not the only nor the main objective of this paper. Another aim is to explain how to prepare a Web-based application by using only AB and HT editors. Most people in the antennas and propagation area are likely to be familiar with TLAB, and may have their own TLAB codes, but they usually lack Web-programming skills. The intent is to enable them to cre- ate their own Web-based applications without leing a Web- programming language or interface, such as Java, PHP, ASP, etc. The Web-application developers can also use their own old TLAB codes, with minor changes. Of course, one can create more-attractive and more-effective Web-based applica- tions than the tools introduced i n AntenG, SSPEG, and FilterG by using Java, ASP, PHP, or another advanced Web- programming language. 252 IEEE Antennas and Propagation Magine, Vol. 53, No. 4, August 201 1

06097346

Embed Size (px)

DESCRIPTION

filter design

Citation preview

Page 1: 06097346

Web-Based Vi rtual Laboratories for Anten na Arrays, Rad iowave Propagation , and

F i lter Des ign

Cagatay Ulu/�/k and Levent Sevgi

Electron ics and Commun ications Engineering Department Dogu� U n iversity

Zeamet Sokak 2 1 , AClbadem - Kad l koy, 34722 I stanbu l , Turkey E-mai l : [email protected] .tr

Abstract

This tutorial explains in deta i l the creation of a Web-based appl ication using the MATLAB Web Server (MWS) toolbox of MATLAB. I t a ims to enable readers who are fami l iar with MATLAB but don't have Web-programming ski l ls to prepare their own Web-based appl ications. Three Web-based virtual laboratories, AntenGUI, SSPEGUI, and FilterGUI, created using MWS, are presented . The AntenGUI appl ication i l l ustrates the array factor of l i near, rectangular, and ci rcu lar arrays . The SSPEGUI appl ication visual izes rad iowave propagation over a non-smooth Earth's surface through a non-homogenous atmosphere . The FilterGUI tool designs lumped-element (LC) fi lters , and obtains the corresponding transmission-l ine and microstrip-l ine fi lters . These Web-based virtual tools can be accessed on the I nternet.

Keywords : MATLAB Web Server; virtual laboratory; visual ization ; s imulation ; d istance learn ing ; engineering education ; p lanar arrays ; isotropic rad iators ; antenna rad iation patterns ; rad iowave propagation ; parabol ic equation method ; fi lter design ; l umped elements ; transmission l i nes; m icrostrip l i nes

1 . I ntrod uction

Web-based virtual laboratories play an important role in engineering education, due to their low costs, lack of

requirements for physical places, and easy accessibility. There are many Web-based virtual laboratories that have been created using MATLAB. These cover different topics, such as control engineering [ 1 -7] , signal processing [8, 9] , medical imaging [ 1 0] , electromagnetics [ 1 1 ] , power engineering [ 1 2] , and teaching basic mathematics [ 1 3] .

A few MATLAB-based electromagnetic virtual tools have been introduced for the use of the readers in the last couple of years (see, for example, [ 14- 1 6]) . AntenGUI [ 1 4] was intro­duced to investigate the radiation characteristics of periodic and planar arrays of isotropic radiators [ 1 4] . SSPEGUI [ 1 5] simulates wave propagation over non-flat terrains, through non-homogenous atmospheres . MWFilterDesigner [ 1 6] auto­mates the design procedure for lumped-element, transmission­line, and microstrip-line filters. All can be downloaded for free (http://www3 .dogus.edu.tr). but they require a valid MATLAB license and a proper version, as well as some specific toolboxes.

Many users who downloaded these packages have informed us that they encountered problems related to MATLAB, and asked for help. We therefore decided to prepare Web-based versions of these packages that can be accessed on the Internet (http://modsim.dogus.edu.tr) from anywhere in the world, with only Web browser needed.

However, introducing these Web-based virtual tools is not the only nor the main objective of this paper. Another aim is to explain how to prepare a Web-based application by using only MATLAB and HTML editors. Most people in the antennas and propagation area are likely to be familiar with MATLAB, and may have their own MATLAB codes, but they usually lack Web-programming skills. The intent is to enable them to cre­ate their own Web-based applications without learning a Web­programming language or interface, such as Java, PHP, ASP, etc. The Web-application developers can also use their own old MATLAB codes, with minor changes. Of course, one can create more-attractive and more-effective Web-based applica­tions than the tools introduced in AntenGUI, SSPEGUI, and FilterGUIby using Java, ASP, PHP, or another advanced Web­programming language.

252 IEEE Antennas and Propagation Magazine, Vol. 53, No. 4, August 20 1 1

Page 2: 06097346

2. MATLAB Web-Server Application Des i g n

2 . 1 Web-Server Software Instal lation a n d Configuration

The Web-server software, Hypertext Transfer Protocol Daemon (HTTPD), should be installed on the server com­puter. The most-used Web-server software packages are the Apache HTTP Server [ 1 7] and Internet Iriformation Services (lIS) by Microsoft [ 1 8] . There are a large number of different Web servers. However, it should be taken into account that the selected Web-server software should be capable of executing Common Gateway Interface (CGJ) programs.

The Apache HTTP Server (available for free) was chosen and installed on the server computer for the MATLAR Web­server applications AntenGUI, SSPEGUI, and FilterGUI. The configuration file httpd . c o n f should then be edited. This can be found in the c o n f folder under the main Apache directory. The default main Apache directory is c : \ P rogram Fi l e s \

Apache S o ftware Foundat i on \Ap a c h e 2 . 2 \ . Table 1 lists the fields of the httpd . c o n f file that need to be edited. The Document Root is the directory from which all requests are taken and all documents are served, and the C G I directory is the directory where the CGI program is located.

Using CGI programs is the simplest and most common way to put dynamic content on a Web site. The Apache server should be configured to permit CGI execution in order to properly run the CGI programs. The S c r iptAl i a s directive tells Apache that a particular directory, namely the CGI directory, is set aside for CGI programs. The Apache server assumes that every file in the CGI directory is a CGI program, and attempts to execute it when requested by a client. A sample S c r iptAl i a s directive looks like

S c r iptAl i a s / cg i - b i n / " C : / EMGU I s /MFi l e s / "

This example tells Apache that any request for a resource beginning with / cg i - b i n / should be served from the direc­tory " C : / EMGU I s / MFi l e s /" and should be treated as a CGI program. Apache will return an error message if the file does not exist, or is not executable, or does not return outputs in a particular way.

The Do cument Root and D i r e c t o r y fields of the httpd . co n f file are changed to " C : / EMGU I s " for AntenGUI, SSPEGUI, and FilterGUI. The CGI directory is specified as " C : / EMGU I s /MFi l e s / " and the Opt i o n s directive is set to " +E x e c CG I " instead of " N o n e " as shown in Table 1 .

After the installation of the Apache server, typing http : / /

l o c a l ho s t / or http : / / I Paddre s s / into the address bar of the Web browser will display the index . html file located in the directory specified in the h t tpd . c o n f file as the Do cument

Roo t .

2.2 MATLAB Web Server (MWS) I nstal lation and Confi g u ration

MATLAR Web Server [ 1 9] is a component of the MATLAB product family. It can be installed during the installation procedure of MATLAB by selecting it from a list of different toolboxes . It should be noted that this toolbox is only available with MATLAB Releases 2006a or earlier. Unfortunately, as of MATLAB Release 2006b, MATLAB Web Server was discontinued, and therefore this toolbox is no longer supported and no longer available for purchase.

To create Web-based MATLAB applications, MATLAB Web Server uses the programs mat l ab s e rver . exe, matweb . exe,

and matweb . m. Mat l ab s e rv e r handles the communication between MATLAB and the Web application. Mat l ab s e rv e r is a multithreaded TCP/IP server, and is installed as a Windows NT service. This service starts automatically at every system boot. To check whether the service mat l ab s e rve r is running or not, the list of the services running on the system should be opened. This list of services can be opened by either following the path "Start Menu/Settings/Control Panel/Administrative Tools/ Services" or by right-clicking the "My Computer" icon, then selecting first "Manage," then "Services and Applications," and finally the "Services." In this list, the status of mat l ab s e rve r

should be labeled as "Started," as shown in Figure 1 . If it is not, it can be started by right-clicking it and then selecting "Start" from the opened list.

Ma tweb . exe is a program that uses the Common Gateway Interface (CGJ) to get data from HTML forms, and to transfer these data to rna t l ab s e rv e r . Ma tweb . exe is a TCP/IP client of mat l ab s e rver, and resides on the HTTP server. The program rna tweb . m runs the requested m-file if invoked by the program mat l ab s e rv e r . The programs mat l ab s e rve r . exe

and matweb . exe are located in the <Mat l ab > / web s e rve r /

b i n / w i n 3 2 directory, and matweb . m resides i n the directory <Ma t l ab > / t o o lbox / web s e rve r / web s e rv e r .

MATLAB Web Server uses the configuration files mat l ab s e rve r . con f and matweb . c o n f in conjunction with the above-mentioned programs. The configuration file mat l ab s e rve r . c o n f can be found in the directory <Ma t l ab > /

web s e rv e r , and i s used by the program mat l ab s e rv e r for the initial settings. Possible options of this configuration file with their default values are listed and explained in Table 2. If unedited, mat l ab s e rve r . c o n f consists of only the notation -m 1 , which permits only one MATLAB to run at the same time. Note that mat l ab s e rver should be halted and restarted to see the changes made to mat l ab s e rv e r . c o n f .

The matweb . exe program needs information in the configuration file matweb . c o n f in order to connect to mat l ab s e rv e r . The names of each MATLAB application (m-file) should appear in this configuration file in square brackets, and all of its variables with the corresponding values should follow in separate lines . A sample of a matweb . c o n f

configuration file i s shown in Table 3 .

IEEE Antennas and Propagation Magazine, Vol . 53 , No. 4, August 20 1 1 253

Page 3: 06097346

Table 1. The edited fields of the configuration file httpd . conf.

Default Configuration Edited Configuration

Document Root "Ma i n Apa che D i r e c t o r y / htdoc s / " " C : / EMGU I s "

Directory "Ma i n Apache D i r e c t o r y / h t do c s / " " C : / EMGU I s "

S c r ip tAl i a s / cg i - b i n / "Ma i n Apa che D i r e c t o r y / c g i -b i n / " " C : / EMGU I s /MFi l e s / " Opt i o n s None Opt i o n s +Exe c C G I

Table 2. The content of the configuration file m a t l ab s e rv e r . con f.

Option Default

Description Value

- m 1 Number of MATLABs that can run simultaneously

- p 8888 Port number that mat l ab s e rv e r listens on

- 0 300 The duration in seconds for waiting the mat l a b s e rver to start

- a None Additional MATLAB path

Table 3. The content of the configuration file matweb . c o n f.

[ antengu i J

ml s e rver=F 8 1 3 PC l 1 4 1 5

mldi r=C : / EMGU I s /MFi l e s

r e s di r=C : / EMGU I s /AntenGU I / OutputHTML

figdi r=C : / EMGU I s /AntenGU I / image s

[ s spegu i J

ml s e rve r=F8 1 3 P C l 1 4 1 5

mldi r=C : / EMGU I s /MFi l e s

r e s di r=C : / EMGU I s / S S PE GU I / OutputHTML

figdir=C : / EMGU I s / S S PE GU I / ima g e s

[ fil t e r gu i J

ml s e rver=F8 1 3 P C l 1 4 1 5

mldi r=C : / EMGU I s /MFi l e s

r e s di r=C : / EMGU I s / F I LTERGU I / OutputHTML

figdi r=C : / EMGU I s / F I L TERGU I / image s

There are three MWS applications located in the CGI directory C : / EMGU I s / MF i l e s / . The configurations for all these applications appear in the same file. The variable ml s e rver is the name of the host running mat l ab s e rver,

which can be either a full computer name or an IP address of the host. The variables ml di r and r e s d i r show locations of the working directory and the output HTML document, respectively. The store directory is specified by figdi r , from where the image files are read. A sample ma t web . con f file can be found in the directory <Ma t l ab > / t o o lb o x / web s e rve r /

ws demo s .

2.3 HTML Doc u ments a n d m-F i le Creation

An output HTML document and a MATLAB m-file should be created in order to build a MATLAB Web Server application. The input HTML document is needed to collect the input data from users. The m-file processes received input data, computes the results, and the output HTML document displays the results of computations.

Subdirectories AntenGU I , S S PE GU I , and F I L TERGU I

are created in the main directory C : / EMGU I s / for the three MWS applications. Two of these are shown in Figure 2. Both directories contain three subdirectories named as images, I nputHTML and Output H TML, which are reserved for read­ing/writing images, for the input HTML documents, and for the output HTML documents, respectively. The files matweb .

exe and matweb . c o n f should be copied to the CGI directory c : / EMGU I s /MF i l e s / . This directory also includes the m-files (antengu i . m, s sp e gu i . m, and fil t e r gu i . m) .

HTML documents can be prepared using a basic text edi­tor, such as Notepad, or one of the commercially available HTML editors, such as FrontPage from Microsoft, Dream­weaver from Adobe Systems, etc. Although HTML files created with HTML editors are larger than those produced with a basic text editor, HTML editors are easy to use, and do not require any knowledge of programming languages. Input and output HTML documents for the MWS applications were prepared using FrontPage. Creation of the HTML files using FrontPage is explained below only for the AntenGUI example.

The main input HTML document of the AntenGUI application is the a n t e n gu i . htm file, which is located in the c : / EMGU I s /AntenGU I / l nputHTML / directory. This HTML file is used to collect data from the user, send these data to ma t l ab s e rver, and run the m-file antengui . m. Figure 3 shows the antengu i . htm file opened with the FrontPage editor. As shown in the figure, the page consists of two frames.

254 IEEE Antennas and Propagation Magazine, Vol. 53 , No. 4, August 20 1 1

Page 4: 06097346

00s0bIed loco! System MarooI loco! System

Figure 1. The services installed on the system and their status.

E1 (C :)

El

d Settings

flML HTML

Figure 2 . The file and directory locations.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1

---� - --

ANTENNA AR RAYS 1

DRAW GRAPH

''''

M - fT I';" Plane :J "" Iml - JW' 1heIa I <It Iml - JW' "" IdOgl-Phase (dog) - to r dB $<_ _...:-:::.---...-

1 1 1 1 1 1 1 1 1

30 0 ...... I _ _ _ � _ _ _ _ I

710

Figure 3. The design of the antengui . htm file.

The name of the upper frame is specified as "top" and uses as the source page the file a n t e n f r ame l . htm, while the name of the lower frame is specified as "bottom" and uses as the source page the file a n t e n f rame 2 . htm.

The source file a n t e n f r ame l . htm includes a form ele­ment that is shown with blue dotted lines in Figure 3. The HTML code of the form element is given in Table 4. The first line of this code calls the CGI program rna tweb . exe. Since the target frame is specified as "bottom," the upper frame named "top" will remain unchanged, and all the outputs will be displayed in the lower frame, named "bottom." In the second line, an HTML input field of type "hidden" is created. This field is used to send data to the Webserver and is not displayed by the browser. The name of the m-file to run is specified after the value tag, and in this example, it is an tengui . m.

The source file a n t e n f r ame l . htm includes 10 text boxes, one check box, two drop-down boxes and two push buttons. The names and values of each of these elements should be specified. For example, the name and initial value of the text box next to the string "f [MHz]=" are specified as f r e q and 300, respectively. The names of two pushbuttons are specified as TwoDGraph and Three DGraph, respectively.

The OutputHTML directory consists of only the output HTML document anten f rame 2 . htm. This file differs from the input HTML document a n t e n f rame 2 . htm only in the location of the image source file. In the input HTML docu­ment a n t e n f rame 2 . htm, the image file is specified as <img

s r c = " . . / Image s / C l e a rGraph . j pg ">, while in the output HTML document the image file is specified as <img

s r c= " $ grafi k $ ">. The input file always displays the same image, called C l e a rGraph . j pg, but the output file displays the image specified in the m-file as outputs . grafik.

After creating the input and output HTML files, a MATLAB m-file should be written to process the received input data and compute the results . Table 5 shows a shortened version of the m-file antengui . m. The second line of the MATLAB code changes the directory to the directory specified as figdi r in the mat web . c o n f configuration file. The third line deletes all the j p e g image files in that directory that have names beginning with Graph and that are older than 0 . 1 hours. This prevents the server from being overloaded with a huge number of image files. The fourth line initializes the return string r e s p .

Between the sixth and 1 7th lines, values of the input variables are first converted from strings to numbers and then assigned to variables, which will be used in the computation. Lines 1 8 to 20 check whether or not the specified variables exist. For example, if a user presses the "DRAW GRAPH" push button in the input HTML file, a variable named TwoDGraph is created, and the MATLAB command i sfie l d ( i npu t s , ' TwoDGraph ' ) returns the value one. However, since the "3D GRAPH" push button is not pressed at the same time, a variable named Three DGraph

is not created, and the MATLAB command i sfie l d ( i npu t s ,

' Th r e e DGraph ' ) returns the value O. The MATLAB script can determine which pushbutton is pressed and which type of graph to draw. If the check box is checked, a variable named dB S c a l e

IEEE Antennas and Propagation Magazine, Vol. 53 , No. 4, August 20 1 1 255

Page 5: 06097346

256

Table 4. The HTML code of the form element.

< f o rm a c t i on= " / cgi - b i n /matweb . ex e " me thod= " POS T " t a rget="bottom">

< i nput t yp e = " h i dden " n ame= "mlmfi l e " value= " antengu i " >

. . .

. . .

< / f o rm >

Line

1

2

3

4

5

6

7

8

9

1 0

1 1

1 2

1 3

1 4

1 5

1 6

1 7

1 8

1 9

20

2 1

1 53

1 54

1 55

1 56

1 5 7

1 58

1 5 9

1 60

1 6 1

1 62

1 63

1 64

1 65

Table 5. The MATLAB m-file antengui . m.

MATLAB Code

fun c t i o n r e s p = antengu i ( i nput s )

cd ( i npu t s . figdi r ) ;

w s c l e anup ( ' Graph * . j pg ' , 0 . 1 ) ;

r e s p = char ( ' ' ) ;

N s t r 2 num ( i nput s . N ) ;

M s t r 2 num ( i npu t s . M ) ;

d s t r 2 num ( i np u t s . d ) ;

dx s t r 2 num ( i npu t s . dx ) ;

dy s t r 2 num ( i nput s . dy ) ;

f a z = s t r 2 num ( input s . Pha s e ) ;

f s t r 2 num ( inpu t s . f r e q ) * l e 6 ;

r s t r 2 num ( i npu t s . r ) ;

rmax s t r 2 num ( input s . rma x ) ;

s e c im s t r 2 num ( i nput s . ArrayType ) ;

the t a o rphi = s t r 2 num ( i npu t s . T e t a o r Ph i ) ;

t h e t a_o r_phi = s t r2 num ( i npu t s . Radi a t i on P l ane ) ;

dB = i sfie l d ( i nput s , ' dB S c a l e ' ) ;

ThreeD

TwoD

i sfie l d ( input s , ' ThreeDGraph ' ) ;

i sfie l d ( i npu t s , ' TwoDGraph ' ) ;

% * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

% * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Fi g=figu re ( ' vi s ib l e ' , ' o f f ' ) ;

p o l a r ( angl e r , Arra y )

r e q l d= i np u t s . ml i d ;

F i l ename = s p r i n t f ( ' Graph % s . j pg ' , re q l d ) ;

drawnow ;

w s p r i n t j p e g ( F i g , F i l e n ame ) ;

c l o s e ( F i g ) ;

outpu t s . g rafik= [ , . . /An tenGU I / image s / ' , F i l e n ame ] ;

cd ( i npu t s . re s di r ) ;

temp l at eiil e = wh i ch ( ' an t e n f rame 2 . htm ' ) ;

r e s p = html rep ( output s , temp l a tefil e ) ;

IEEE Antennas and Propagation Magazine, Vol. 53 , No. 4, August 20 1 1

Page 6: 06097346

is created, and the MATLAB command i sfie l d ( i npu t s I

' dB S c a l e ' ) returns the value one, and if not checked, it returns the value zero. Between the 22nd and 1 53rd lines, all the computations are performed. If a two-dimensional (2D) graph is requested, two arrays, called angl e r and Array, are created. Line 1 5 5 creates an empty figure; line 1 56 plots ang l e r as a function of Array into this figure in polar coordinates. In line 1 60, this figure is saved to a file the name of which is specified in the 1 5 8th line. This file is assigned to a variable output s .

g rafik. Line 1 65 calls the function htmlrep with the output structure and with the output HTML file name. The function htmlrep looks in the output file a n t e n f rame 2 . htm for variables with values that are the variable names enclosed in dollar signs, e .g . , " $ g r afik $ " and then replaces values of all these variables with the corresponding values of variables of the same name specified in the output structure.

3 . Web-Based Vi rtual Tools and Examples

3 . 1 The AntenGUI Tool

The Web-based virtual tool AntenGUI, as displayed in Figure 4, allows the user to visualize radiation characteristics of linear, rectangular, and circular periodic arrays of isotropic radiators. The user may choose from a dropdown box to design a linear or rectangular or circular array. The user then specifies the number of elements, operating frequency, inter­element spacings, and fills in the dB-scale check box. Pressing the 3D GRAPH button plots the three-dimensional radiation pattern of the designed array, whereas the DRAW GRAPH button plots a two-dimensional cross section of this graph. The user determines the two-dimensional radiation-pattern plane by selecting Theta- or Phi-Planes from a dropdown box and specifying the ThetalPhi value.

p . . ... . ,.., 4 ' ... . V . ·

"

('1CIUT ll.ll$tK A: Ln� SE\'Gt • • ', ICO'IIo '

Figure 4. The horizontal radiation pattern of a nine-element linear array ( / = 1 50 MHz, d = 0.5 m = A/4 ).

('.,.... l1.l1$1K .t: l�"M SE,OGt r .. . "� 100"110 •

Figure 5. The horizontal radiation pattern of a 4 x 7 rec­tangular, periodic, linearly phased array of isotropic radiators ( / = 300 MHz, dx = dy = 0.25 m = A/4 ).

<;.....,- l1.ll$IK .t: l�""ftII SEYGl

Figure 6. The three-dimensional radiation pattern of a 4 x 7

rectangular, periodic, linearly phased array of isotropic radiators ( / = 300 MHz, dx = dy = 0.25 m = A/4 ).

This Web-based tool is quite similar to the MATLAB­based virtual tool AntenGUI, and directions and explanations on the use of the tool can be found in [ 14] . However, there are slight differences. The MATLAB-based version allows the user to arbitrarily locate the radiators one-by-one, by clicking with the mouse, but this capability is not included in the Web-based version. Also, the Web-based version does not include beam­steering capability, and the coordinates of the radiators cannot be displayed. Finally, some sliding bars have been removed.

IEEE Antennas and Propagation Magazine, Vol. 53 , No. 4, August 20 1 1 257

Page 7: 06097346

to

OftAW GRAPH 3D ORAPH I

..

<:ae-v l1..l1$IK I. l ... -eu. SE\'GI • +� 100"II> •

Figure 7. The vertical radiation pattern (y-z plane) of an ll-element circular array of isotropic radiators ( I = 600

MHz, r = 0.5 m = A. ).

3D ORAPH I .J!!gj

to

p .

Figure 8. The three-dimensional radiation pattern of an ll-element circular array of isotropic radiators ( I = 600

MHz, r = 0.5 m = A. ).

Figure 4 shows the horizontal radiation pattern of a linear array consisting of nine isotropic radiators with an inter-ele­ment spacing of d = 0.5 m. The operating frequency was cho­sen as 1 = 1 50 MHz, and the graph was plotted on the dB scale.

The radiators are also displayed in the figure with small red circles.

The next example belongs to a planar array consisting of N = 7 and M = 4 isotropic radiators in the y and x directions,

respectively. The inter-element spacings along the x and y coordinates were chosen as dx = dy = 0.25 m. The frequency

was 1 = 300 MHz. The inter-element phasing along the x

direction was specified as Phase = 90° , so the phases of the elements in the second line ( M = 2 ) delayed by 90° the phases of the elements in the first line ( M = 1 ), etc. Figure 5 shows horizontal radiation pattern. Figure 6 presents the three­dimensional radiation pattern of this array.

The last example was a circular array, where 1 1 isotropic radiators were located symmetrically on a circle with radius r = 0.5 m. The operating frequency was 1 = 600 MHz. The

vertical radiation pattern in the yz plane is illustrated in Fig­ure 7, and the three-dimensional radiation pattern is given in Figure 8 .

3.2 The SSPEGUI Tool

The Web-based virtual tool SSPEGUI, displayed in Fig­ure 9, allows users to investigate radiowave propagation through a non-homogenous atmosphere over a non-flat Earth's surface. This tool is based on the split-step parabolic-equation (SSPE) method.

The user specifies the operating frequency, the range between the transmitter and receiver, the height of the trans­mitter, the antenna tilt angle, and the beamwidth of the trans­mitted Gaussian signal. Atmospheric refractivity is determined by two height values and the slope values of two linear seg­ments. A terrain profile can be chosen from ten different pre­defined terrains via a dropdown box. The user may choose to plot the figure in high or low resolution, taking into account that high resolution requires more computation time.

Atmolph.rk R.fraetlvity : '-' - ' - .... 1 .. • Flnt Height • 1000 _ ,,""I ' - I .. ' s.cond ...... . """

_ I-HII""'I " rw-_ I-I ' rw-

� INfl! I

C..-.r t1.1..1$JK .l Lt'\ft1C SEVGJ

- • "� IOO'II. •

Figure 9. The web-based SSPEGUI tool with a non-smooth terrain profile.

258 IEEE Antennas and Propagation Magazine. Vol. 53 , No. 4, August 20 1 1

Page 8: 06097346

Lo.d Terra'" I

';'--===---"""� .

Acmospherk: RafractMty : , .... _ . f'Oiil - _ . sto,.. ( ..... , (MnuoJ . sto,.. ( .... II'IbI ·

,...., l1.Ll$tK .t L"'ftll E\'GJ

Figure 10. Propagation over an irregular terrain through a standard atmosphere.

This Web-based tool is very similar to the MATLAB-based virtual tool SSPEGUI, introduced in [ 1 5] . Again, there are some differences between the Web-based and MATLAB-based versions . The main difference is in the determination of the terrain profile. The MATLAB-based version allows the user to design his/her own terrain profile by marking terrain points on the Earth's surface with a mouse click. It also enables saving a generated terrain profile in a file. Pre-generated terrain data can also be loaded from a file. However, the Web-based tool only enables loading the terrain from 1 0 different pre-generated profiles.

Figure 1 0 visualizes propagation over four sequential hills through standard atmosphere. Here, the operating fre­quency was 1 00 MHz, the maximum range was 40 km, and the transmitter was at 400 m. The antenna was not tilted, and the beamwidth was 1 0 downwards. The white line in the fig­ure represents a linearly increasing refractivity with a slope of 1 1 7 M/km, which corresponds to a standard atmosphere including the Earth's curvature. The figure shows the three­dimensional field strength as a function of the range/height.

3.3 The FilterGUI Tool

The Web-based virtual tool FilterGUI, displayed in Fig­ure 1 1 , simplifies and automates the design procedure for fil­ters . The tool designs lumped-element filters with a classical method, and obtains the corresponding transmission-line and microstrip-line filters via systematic transformations. This tool uses the Butterworth approach for designing lumped filters, Kuroda transformations for distributed low-pass filters, and impedance/admittance inverters for distributed bandpass or band-stop filters [ 1 6] .

The filter type (Iow-pass/high-pass/bandpass/band-stop) is first selected from a dropdown box. The user specifies the 3 dB cutoff frequency and the out-of-band attenuation at a user­specified frequency for low-pass or high-pass filters. The center frequency, pass-band, stop-band, and attenuation are supplied for bandpass or band-stop filters. The minimum and maximum plotting frequencies are stated. The thickness and relative permittivity of the dielectric material used in the microstrip-line are specified. Pressing the design button plots the schematics of the lumped, scattered, and microstrip-line filters, and the layout of the microstrip-line filter. The user may switch among these plots by pressing the appropriate radio buttons. The schematics include all element values and dimensions. The frequency response of the filter, i .e . , a graph of the insertion loss as a function of frequency, is shown in a separate plot.

Figure 12 shows the design of a bandpass filter with a 900 MHz center frequency and a 3 dB bandwidth of BW3dB = 300 MHz, which yielded 40 dB attenuation at

300 MHz and 1 200 MHz. The microstrip specifications were chosen to have a relative permittivity of Gr = 9.6 and a thick­

ness of 1 .27 mm. The microstrip-filter schematic, including the

Figure 11. The Web-based FilterGUI tool.

• j; ............ -.....

r�'--" '- rt

r;;:;;- -

"""'1 ]1 _ _ , a _ "'I lI _ ...... ' lI _ 1,.- 12 _ _ \-» _ _ ""m _ _ UOlCI _ _

[--. r t_ "" r _..,-.- . ...

! �. · ,.11·�:�

......

Figure 12. The design of a bandpass filter with 900 MHz center frequency, 300 MHz 3 dB bandwidth, and 40 dB attenuation at 300 MHz and 1500 MHz.

IEEE Antennas and Propagation Magazine, VoL 53 , No. 4, August 20 1 1 259

Page 9: 06097346

calculated dimensions, is shown on the upper right side, while the frequency responses of the lumped and the scattered filter are plotted in the lower right part of the figure. The graphs can be zoomed by clicking on them, and simulation results can be exported by using the export button.

4. Conclusions

The design of a MATLAB Web-server application has been discussed. The installation and configuration of Web­server software and MATLAB Web Server, and the preparation of HTML documents and m-files, were also presented. Three MWS-based virtual laboratories, AntenGUI, SSPEGUI, and FilterGUI, were introduced. The AntenGUI tool visualizes the array factor of periodic, planar arrays. The SSPEGUI tool illustrates radiowave propagation over non-smooth terrains and through various refractivity profiles. The FilterGUI tool designs lumped-element, transmission-line, and microstrip-line filters. All can be accessed remotely on the Internet with only a browser. A MATLAB compiler is not required.

All of these tools can be used in lectures such as "Anten­nas and Propagation," "Radiowave Propagation," "Microwave Filter Design," etc. The lecturer may assign individual home­work, which could be done remotely from a university lab and! or home.

5. References

1 . S. Uran and K. Jezemik, "Virtual Laboratory for Creative Control Design Experiments," IEEE Transactions on Educa­tion, 5 1 , 1 , February 2008, pp. 69-75 .

2 . S . Uran, D. Hercog, and K. Jezernik, "MATLAB Web Server and Web-Based Control Design Learning," IECON 2006 -32nd Annual Conference on IEEE Industrial Electronics, 1-11,

2006, pp. 5347-5352.

3 . S . Uran and K. Jezernik, "MATLAB Web Server and M-File Application," 1 2th International Power Electronics and Motion Control Conference, 1-4, 2006, pp. 495-499.

4 . W. S. Hu, G. P. Liu, D. Rees, and Y. L. Qiao, "Design and Implementation of Web-Based Control Laboratory for Test Rigs in Geographically Diverse Locations," IEEE Transactions on Industrial Electronics, 55, 6, June 2008, pp. 2343-2354.

5. Y. L. Qiao, G. P. Liu, G. Zheng, and W. S. Hu, "NCSLab: A Web-Based Global-Scale Control Laboratory with Rich Interactive Features," IEEE Transactions on Industrial Elec­tronics, 57, 1 0, October 20 1 0, pp. 3253-3265 .

6. C. A. Ramos-Paja, J. M. R. Scarpetta, and L. Martinez­Salamero, "Integrated Learning Platform for Internet-Based Control-Engineering Education," IEEE Transactions on Industrial Electronics, 57, 1 0, October 20 1 0, pp. 3284-3296.

7. A. Valera, J. L . Diez, M. Valles, and P. Albertos, "Virtual and Remote Control Laboratory Development," IEEE Control Systems Magazine, 25, 1 , February 2005, pp. 35-39.

8 . P. Van, M. Valkama, and M. Renfors, "Distance Learning in Communications Signal Processing Using MATLAB Web Server," Norsig 2004 : Proceedings of the 6th Nordic Signal Processing Symposium, 46, 2004, pp. 244-247.

9 . B . L. Sturm and J. D. Gibson, "Signals and Systems Using MATLAB: An Integrated Suite of Applications for Exploring and Teaching Media Signal Processing," Proceedings of the 35th Frontiers in Education Conference, October 2005 , pp. F2E-2 1-F2E-25 .

1 0. D. W. Wu, A. Dikshit, and W. Z. Zhao, "Medical Imaging Curriculum Development: An Interactive Simulation System for Different Modalities," Proceedings of the 26th Annual International Conference of the IEEE Engineering in Medicine and Biology Society, 26, 2004, pp. 5 1 72-5 1 75 .

1 1 . M. deMagistris, "A MATLAB-Based Virtual Laboratory for Teaching Introductory Quasi-Stationary Electromagnetics," IEEE Transactions on Education, 48, 1 , February 2005 , pp. 8 1 -88 .

1 2 . B . Vural, A. Kizil, and M. Uzunoglu, "A Power Quality Monitoring System Based on MATLAB Server Pages," Turkish Journal of Electrical Engineering and Computer Sciences, 18,

pp. 3 1 3-325 .

1 3 . F. Judex, G. Zauner, and F. Breitenecker, "Introducing MATLAB into Basic Mathematic Lectures Using a Custom E-Learning System," Proceedings of the IT! 2008 30th Interna­tional Conference on Information Technology Interfaces, 2008, pp. 209-2 14 .

14 . L . Sevgi and C. Uluisik, "A MATLAB-Based Visualiza­tion Package for Planar Arrays of Isotropic Radiators," IEEE Antennas and Propagation Magazine, 47, 1 , February 2005, pp. 1 56- 1 63 .

1 5 . L. Sevgi, C. Uluisik, and F. Akleman, "A MATLAB-Based Two-Dimensional Parabolic Equation Radiowave Propagation Package," IEEE Antennas and Propagation Magazine, 47, 4, August 2005 , pp. 1 64- 1 75 .

1 6. M. A . Uslu and L. Sevgi, "A MATLAB-Based Filter-Design Program: From Lumped Elements to Microstrip Lines," IEEE Antennas and Propagation Magazine, 53, 1 , February 20 1 1 , pp. 2 1 3-224.

1 7 . The Apache server homepage: http://www.apache.org/ httpd.html.

1 8 . The Official Microsoft lIS Site : http://www.iis.net.

1 9. The MathWorks Inc. , MATLAB Web Server User 's Guide: http ://www.mathworks.com. @)

260 IEEE Antennas and Propagation Magazine, Vol. 53 , No. 4, August 20 1 1