A Complete User Adaptive Antenna Tutorial
Demonstration: a GUI Based Approach Using JAVA and
MATLAB® Interfacing
Subhadeep Sen
Undergraduate Student, B.Tech.
Electronics and Communication Engineering Department
Calcutta Institute of Engineering and Management
Kolkata, India.
Chandrima Biswas
Undergraduate Student, B.Tech.
Electronics and Communication Engineering Department
Calcutta Institute of Engineering and Management
Kolkata, India.
Abstract— This paper is aimed at creation of an easy to use
Antenna Graphical User Interface(GUI) Tutorial Demonstration
using JAVA in BlueJ environment which provides the user with
ample opportunity to feed desired input parameters and to study
the basic antenna patterns and parameters according to the
inputs using MATLAB® interfacing. It also presents three
dimensional physical appearances using the JAVA3D utility.
Keywords-Simulation, virtual antenna laboratory, JAVA
,JAVA 3d, JAVA-MATLAB® interfacing, graphical user
interface, physical appearance, antenna parameters.
I. INTRODUCTION
An antenna may be conceived as a transitional structure
between free-space and the guiding space that forms the basis
of wireless communication. Antennas have become
increasingly important to our society and are now
indispensible. Study of antenna parameters involves laborious
efforts in setting up and tuning antennas inside an anechoic
chamber. Besides, this process happens to be quite expensive.
The most efficient and hassle-free way of doing the same is by
the use of simulation. However, the price of presently available
simulation softwares such as IE3D or Ansoft HFSS being on
the higher side, they remain inaccessible to most academic
institutions. An efficient and cost-effective alternative to such
high-end simulation techniques is presented in this paper.
Though many works have been done in this field using even
MATLAB® and other software to observe parameters such as
gain, radiation pattern, directivity plot and so on, this technique
also provides the user with the 3D physical appearance of the
antenna concerned, consequently giving him a better
perspective of the antenna. The module involves use of a
Graphical User Interface created using JAVA in BlueJ
environment which takes input parameters from the user and
displays desired output parameters and plots created using
MATLAB®. MATLAB® is a numerical computing
environment that contains various mathematical toolboxes
which can be used by engineers for simulation in diverse fields
[1]. Due to this multi-utility feature it is economical for
institutions to purchase MATLAB® instead of simulation
softwares used solely for antenna design. Besides, additional
antenna toolbox is not purchased for designing the given
module. A JAVA-MATLAB® interface has been initiated for
the said purpose thus combining the advantages of both JAVA
3D utility [2], [3] and MATLAB® tools [1]. Figure 1 shows
some designed pages. . The simulation tool proposed in this
paper has been designed keeping in mind the requirements of
most of the under graduate institutions which do not possess
requisite infrastructure for physically studying antenna
parameters. This may also be used as a demonstration tool for
sale of physical antennas in order to give the buyer a perception
of the antenna before sale. This can be effectively used for
implementation of a virtual antenna laboratory for studying
antenna parameters in an easier way. It is also suitable for non-
MATLAB® users as it covers the complex MATLAB®
functions operating underneath.
II. VIRTUAL ANTENNA LABORATORY
The Virtual Laboratory is an interactive and safe
environment for creating and conducting simulated
experiments.
Figure 1. Graphical User Interface pages designed
978-1-4577-1099-5/11/$26.00 ©2011 IEEE
It consists of domain-dependent simulation programs,
experimental units called objects that encompass data fields
and tools that operate on these objects. It allows students more
opportunities to practice experiments, particularly for those
antennas that may not be easily available due to lack of
resources and time, without the need for supervision
A. Physical Appearance
It is not always possible to give a detailed structural view
of an antenna to institutional students, so to give a look at the
physical appearance can be of adequate knowledge to
beginners in quick time. The 3D appearance has been created
using JAVA 3D API [2], [3], [4], [8]. Java 3D is a scene graph-
based 3D application programming interface (API) for the Java
platform [5] which is downloadable from an open source [6],
[7]. Figure 2 shows the physical appearance of two commonly
used antennas.
JAVA3D contains inbuilt classes that can be used in order
to construct various 3D shapes which can eventually be added
to the scenegraph created for the purpose. A brief example has
been shown below: [2], [3]:
SimpleUniverse u= new SimpleUniverse();
BranchGroup bg= new BranchGroup();
TransformGroup tg=new TransformGroup();
This creates the required TransformGroup object ‘tg’ which
is eventually added onto the BranchGroup object ‘bg’ which is
part of a SimpleUniverse object ‘u’. These are utility classes
contained in package com.sun.j3d.utils.universe [2], [3], [8]
which is a part of the said API. A requisite geometric shape
object, ‘shape’ is created using classes contained in package
com.sun.j3d.utils.geometry which is eventually added to ‘tg’ as
shown below:
tg.addChild(shape);
bg.addChild(tg);
u.addBranchGraph(bg);
MouseRotate behavior has been incorporated in order that
the user has the flexibility to observe all possible views of the
created 3D object by clicking and dragging the cursor. Figure
3 shows a mouse driven 3D physical appearance of a dipole
antenna. This class is a part of package
com.sun.j3d.utils.behaviors.mouse [3].
Figure 2. Three dimensional physical appearance of reflector
antenna(left) and rectangular horn(right).
Figure 3. Mouse driven 3D appearance of a dipole
B. Interfacing
An interface is a concept that refers to a point of interaction
between one or more softwares to the effect that one software
can be used to access and modify objects created in the other.
Here an interface has been devised between JAVA and
MATLAB® as mentioned before. The GUI has been designed
using JAVA [8], [9]. It takes user inputs as shown in Figure 4
which are thereby written to files using suitable code [5].
The data from those files are read from MATLAB® and
codes are prepared for the parameters [1]. The codes for
outputs are built as executable files which are then called from
the JAVA [5] code upon click on easy to understand buttons
as shown in Figure 5.
And to run the required executable file from java the class
‘RunTime’ is used whose inbuilt function ‘exec’ serves the
purpose given the file path as shown [5]:
Process <objectname>=run.exec(<filepath>);
Figure 4. Data being taken as inputs for a dipole antenna
Figure 5. Easy to use buttons for observations
Figure 6. Flowchart showing the tasks involved in the module
But all the executable files and the java class should be in
the same package folder. For the numerical data outputs and
for file opening, closing and appending, separate MATLAB®
functions are used [1]. The files are then read from JAVA [5]
and added to a panel window [3], which displays the required
result.
Figure 6 demonstrates the complete process undertaken for
this module using a flowchart [10].
III. OBSERVATION OF PARAMETERS
To briefly explain the patterns and plots the example of half
wavelength dipole antenna is chosen from among the antennas
worked on in this module. It is easy to implement and
commonly used as its radiation resistance is very close to the
commonly used transmission lines’ impedance (75 Ohms) [11],
[12].
The parameters have been theoretically verified. [11], [12],
[13], [14], [18], [19].
The following equation is used to plot the field pattern [11]:
Eθ ≅ −jηLIOe−jkr
cos(π cos θ/2) . (1)
2πr sin θ
In (1), L is the antenna length, I0 is the peak amplitude of
the operating current and k is the wave propagation constant.
The symbol η refers to the free space wave impedance (=120π)
Figure 7. Field Pattern of a dipole antenna working at 250 MHz
[11]. To implement (1) the imaginary part is ignored and
real plot is considered using Euler’s identity [15], [16]. The
equation is in spherical polar plot. It is converted into Cartesian
coordinates using the following instance [17]:
Ex=E.*cos (phi).*sin (theta);
Ey=E.*sin (phi).*sin (theta);
Ez=E.*cos (theta);
MATLAB® provides for three dimensional plots of
Cartesian coordinates in a flexible manner using the function
‘mesh’. To plot the 2d pattern instead the function ‘polar’ is
used [1]. Figure 7 shows both the patterns.
Similarly power pattern, dB field pattern, radiation intensity
plot, and directivity plot, current distribution has been
employed.
The radiation intensity U is plotted using [11]
U ≅ ηIO
2
cos(π cos θ/2) 2
(2)
8π2
sin θ
≅ ηIO
2
sin3
θ . (3)
8π2
The maximum value of U gives the maximum radiation
intensity, Umax.
Figure 8. Directivity Plot of a Half Wavelength Dipole working at 60 MHz
Figure 9. Results showing radiation resistance of a half wavelength dipole
The directivity d is given by [11]:
d=4π U / Prad, (4)
where, Prad is the power radiated found from radiation
resistance Rrad, as follows[11]
Rrad =η Cin(2π) ≅73 Ohms , (5)
4π
Prad = 0.5I0
2
Rrad. (6)
Again the function ‘polar’ has been used to plot the
directivity. The function ‘hold’ allows plot for values
corresponding to two complementary axes at a time [1]. A
directivity plot for a dipole antenna is shown in Figure 8.
Maximum value of d gives the maximum directivity Dmax.
Figure 9 shows the radiation resistance of a half wavelength
dipole shown in a panel window.
The maximum aperture area A is given by [11]
A = λ 2
Dmax. (7)
4π
Another inclusion is the beam area Ω given by [13]:
Ω= 4π/Dmax. (8)
Physical verification of simulated results is outside the
scope of this project. However theoretical verifications of the
said outputs have been done. This analysis has led to the
conclusion that the plots and parameters obtained by use of this
simulation tool bear negligible deviation from desired values.
In addition to its use as a tool for demonstration or tutorial,
the results generated by the present software can be compared
with those obtained on physically testing of the antenna
prototype in order to fine tune the accuracy of the procedure.
This work can be upgraded to the level so that the feed point of
the antenna may be shifted from point to point in order to
determine the change in patterns and parameters on moving the
feed point so as to get the suitable feed point. Finally it may be
inferred that the module presented can be aptly used as a pre-
experimental observation tool for antenna designing.
ACKNOWLEDGMENT
We sincerely thank the Electronics and Communication
Engineering Department, Calcutta Institute of Engineering and
Management, Kolkata, India, for providing necessary guidance
and requisite facilities in this regard.
REFERENCES
[1] (MATLAB® site) http://www.mathworks.com/products/matlab/
[2] Henry A. Sowizral, Kevin Rushforth, Michael Deering, The Java 3D
API specification, Addison-Wesley, 2000
[3] (java 3d tutorial) http://java3d.java.net/binary-builds.html,
http://www.java3d.org/tutorial.html.
[4] (java 3d download) http://java3d.java.net/binary-builds.html
[5] E Balagurusamy,Programming with JAVA:A Primer ,third edition,
Copyright ©2007, Tata McGraw Hill,2007.
[6] (download java containing netbeans)
http://www.oracle.com/technetwork/java/javase/downloads/jdk-
netbeans-jsp-142931.html
[7] (jdk
download)http://www.oracle.com/technetwork/java/javasebusiness/dow
nloads/java-archive-downloads-javase6-419409.html
[8] (java tutorial)http://www.roseindia.net/java/
[9] (java API)http://download.oracle.com/javase/1,5.0/docs/api/
[10] Staff Joiner Associates, Flowcharts :Plain and Simple , Learning and
Application guide,Copyright © 2002,Oriel Incorporated.
[11] Constantine A.Balanis, Antenna Theory: Analysis and Design, second
edition, Copyright © 1982, John Wiley & Sons,Inc. ,pp.1,42,2200-
51,73-34, 1997
[12] Rajeswary Chatterjee, Antenna theory and practice, Second
edition,New Age International,,pp.2,3,2006.
[13] John D.Krauss and Ronald J.Marhefka,(chap name), Antenna For All
Applications,2nd
ed., Tata Mc-Graw Hill,, Copyright © 1988 by McGraw
Hill,pp. 1,14-79,26,221-223,2001.
[14] Vincent F. Fusco, Foundations of Antenna Theory and Techniques,
copyright © 2005,Pearson Education Ltd.,pp.14-25,56-65,2004.
[15] Alan Jeffrey, Advanced Engineering Mathematics, Copyright ©2002
,Harcourt Academic Press,pp. 20, 2002.
[16] Steven T. Karris, Signals and Systems with MATLAB® Computing and
SIMULINK® Modeling, Fourth Edition, Orchard Publications,
Copyright © 2008, pp. A1-A31,C1-C4.
[17] H.K Dass, Advanced Engineering Mathematics, copyright © 1988,
S.Chand & Co.LTD., pp. 466-443, 2009.
[18] R.E. Collin, Antennas and Radiowave Propagation, McGraw Hill,1985.
[19] H.T.Friis and S.K Schelkunoff, Antennas: Theory and Practice, Wiley,
pp. 230-244,351,352, 1952.
[20] John G. Proakis and M. Salehi,Contemporary Communication Systems
using MATLAB®,PWS Publishing Company, Copyright © 1998.

A complete user adaptive antenna tutorial demonstration. a gui based approach using java and matlab interfacin

  • 1.
    A Complete UserAdaptive Antenna Tutorial Demonstration: a GUI Based Approach Using JAVA and MATLAB® Interfacing Subhadeep Sen Undergraduate Student, B.Tech. Electronics and Communication Engineering Department Calcutta Institute of Engineering and Management Kolkata, India. Chandrima Biswas Undergraduate Student, B.Tech. Electronics and Communication Engineering Department Calcutta Institute of Engineering and Management Kolkata, India. Abstract— This paper is aimed at creation of an easy to use Antenna Graphical User Interface(GUI) Tutorial Demonstration using JAVA in BlueJ environment which provides the user with ample opportunity to feed desired input parameters and to study the basic antenna patterns and parameters according to the inputs using MATLAB® interfacing. It also presents three dimensional physical appearances using the JAVA3D utility. Keywords-Simulation, virtual antenna laboratory, JAVA ,JAVA 3d, JAVA-MATLAB® interfacing, graphical user interface, physical appearance, antenna parameters. I. INTRODUCTION An antenna may be conceived as a transitional structure between free-space and the guiding space that forms the basis of wireless communication. Antennas have become increasingly important to our society and are now indispensible. Study of antenna parameters involves laborious efforts in setting up and tuning antennas inside an anechoic chamber. Besides, this process happens to be quite expensive. The most efficient and hassle-free way of doing the same is by the use of simulation. However, the price of presently available simulation softwares such as IE3D or Ansoft HFSS being on the higher side, they remain inaccessible to most academic institutions. An efficient and cost-effective alternative to such high-end simulation techniques is presented in this paper. Though many works have been done in this field using even MATLAB® and other software to observe parameters such as gain, radiation pattern, directivity plot and so on, this technique also provides the user with the 3D physical appearance of the antenna concerned, consequently giving him a better perspective of the antenna. The module involves use of a Graphical User Interface created using JAVA in BlueJ environment which takes input parameters from the user and displays desired output parameters and plots created using MATLAB®. MATLAB® is a numerical computing environment that contains various mathematical toolboxes which can be used by engineers for simulation in diverse fields [1]. Due to this multi-utility feature it is economical for institutions to purchase MATLAB® instead of simulation softwares used solely for antenna design. Besides, additional antenna toolbox is not purchased for designing the given module. A JAVA-MATLAB® interface has been initiated for the said purpose thus combining the advantages of both JAVA 3D utility [2], [3] and MATLAB® tools [1]. Figure 1 shows some designed pages. . The simulation tool proposed in this paper has been designed keeping in mind the requirements of most of the under graduate institutions which do not possess requisite infrastructure for physically studying antenna parameters. This may also be used as a demonstration tool for sale of physical antennas in order to give the buyer a perception of the antenna before sale. This can be effectively used for implementation of a virtual antenna laboratory for studying antenna parameters in an easier way. It is also suitable for non- MATLAB® users as it covers the complex MATLAB® functions operating underneath. II. VIRTUAL ANTENNA LABORATORY The Virtual Laboratory is an interactive and safe environment for creating and conducting simulated experiments. Figure 1. Graphical User Interface pages designed 978-1-4577-1099-5/11/$26.00 ©2011 IEEE
  • 2.
    It consists ofdomain-dependent simulation programs, experimental units called objects that encompass data fields and tools that operate on these objects. It allows students more opportunities to practice experiments, particularly for those antennas that may not be easily available due to lack of resources and time, without the need for supervision A. Physical Appearance It is not always possible to give a detailed structural view of an antenna to institutional students, so to give a look at the physical appearance can be of adequate knowledge to beginners in quick time. The 3D appearance has been created using JAVA 3D API [2], [3], [4], [8]. Java 3D is a scene graph- based 3D application programming interface (API) for the Java platform [5] which is downloadable from an open source [6], [7]. Figure 2 shows the physical appearance of two commonly used antennas. JAVA3D contains inbuilt classes that can be used in order to construct various 3D shapes which can eventually be added to the scenegraph created for the purpose. A brief example has been shown below: [2], [3]: SimpleUniverse u= new SimpleUniverse(); BranchGroup bg= new BranchGroup(); TransformGroup tg=new TransformGroup(); This creates the required TransformGroup object ‘tg’ which is eventually added onto the BranchGroup object ‘bg’ which is part of a SimpleUniverse object ‘u’. These are utility classes contained in package com.sun.j3d.utils.universe [2], [3], [8] which is a part of the said API. A requisite geometric shape object, ‘shape’ is created using classes contained in package com.sun.j3d.utils.geometry which is eventually added to ‘tg’ as shown below: tg.addChild(shape); bg.addChild(tg); u.addBranchGraph(bg); MouseRotate behavior has been incorporated in order that the user has the flexibility to observe all possible views of the created 3D object by clicking and dragging the cursor. Figure 3 shows a mouse driven 3D physical appearance of a dipole antenna. This class is a part of package com.sun.j3d.utils.behaviors.mouse [3]. Figure 2. Three dimensional physical appearance of reflector antenna(left) and rectangular horn(right). Figure 3. Mouse driven 3D appearance of a dipole B. Interfacing An interface is a concept that refers to a point of interaction between one or more softwares to the effect that one software can be used to access and modify objects created in the other. Here an interface has been devised between JAVA and MATLAB® as mentioned before. The GUI has been designed using JAVA [8], [9]. It takes user inputs as shown in Figure 4 which are thereby written to files using suitable code [5]. The data from those files are read from MATLAB® and codes are prepared for the parameters [1]. The codes for outputs are built as executable files which are then called from the JAVA [5] code upon click on easy to understand buttons as shown in Figure 5. And to run the required executable file from java the class ‘RunTime’ is used whose inbuilt function ‘exec’ serves the purpose given the file path as shown [5]: Process <objectname>=run.exec(<filepath>); Figure 4. Data being taken as inputs for a dipole antenna Figure 5. Easy to use buttons for observations
  • 3.
    Figure 6. Flowchartshowing the tasks involved in the module But all the executable files and the java class should be in the same package folder. For the numerical data outputs and for file opening, closing and appending, separate MATLAB® functions are used [1]. The files are then read from JAVA [5] and added to a panel window [3], which displays the required result. Figure 6 demonstrates the complete process undertaken for this module using a flowchart [10]. III. OBSERVATION OF PARAMETERS To briefly explain the patterns and plots the example of half wavelength dipole antenna is chosen from among the antennas worked on in this module. It is easy to implement and commonly used as its radiation resistance is very close to the commonly used transmission lines’ impedance (75 Ohms) [11], [12]. The parameters have been theoretically verified. [11], [12], [13], [14], [18], [19]. The following equation is used to plot the field pattern [11]: Eθ ≅ −jηLIOe−jkr cos(π cos θ/2) . (1) 2πr sin θ In (1), L is the antenna length, I0 is the peak amplitude of the operating current and k is the wave propagation constant. The symbol η refers to the free space wave impedance (=120π) Figure 7. Field Pattern of a dipole antenna working at 250 MHz [11]. To implement (1) the imaginary part is ignored and real plot is considered using Euler’s identity [15], [16]. The equation is in spherical polar plot. It is converted into Cartesian coordinates using the following instance [17]: Ex=E.*cos (phi).*sin (theta); Ey=E.*sin (phi).*sin (theta); Ez=E.*cos (theta); MATLAB® provides for three dimensional plots of Cartesian coordinates in a flexible manner using the function ‘mesh’. To plot the 2d pattern instead the function ‘polar’ is used [1]. Figure 7 shows both the patterns. Similarly power pattern, dB field pattern, radiation intensity plot, and directivity plot, current distribution has been employed. The radiation intensity U is plotted using [11] U ≅ ηIO 2 cos(π cos θ/2) 2 (2) 8π2 sin θ ≅ ηIO 2 sin3 θ . (3) 8π2 The maximum value of U gives the maximum radiation intensity, Umax. Figure 8. Directivity Plot of a Half Wavelength Dipole working at 60 MHz
  • 4.
    Figure 9. Resultsshowing radiation resistance of a half wavelength dipole The directivity d is given by [11]: d=4π U / Prad, (4) where, Prad is the power radiated found from radiation resistance Rrad, as follows[11] Rrad =η Cin(2π) ≅73 Ohms , (5) 4π Prad = 0.5I0 2 Rrad. (6) Again the function ‘polar’ has been used to plot the directivity. The function ‘hold’ allows plot for values corresponding to two complementary axes at a time [1]. A directivity plot for a dipole antenna is shown in Figure 8. Maximum value of d gives the maximum directivity Dmax. Figure 9 shows the radiation resistance of a half wavelength dipole shown in a panel window. The maximum aperture area A is given by [11] A = λ 2 Dmax. (7) 4π Another inclusion is the beam area Ω given by [13]: Ω= 4π/Dmax. (8) Physical verification of simulated results is outside the scope of this project. However theoretical verifications of the said outputs have been done. This analysis has led to the conclusion that the plots and parameters obtained by use of this simulation tool bear negligible deviation from desired values. In addition to its use as a tool for demonstration or tutorial, the results generated by the present software can be compared with those obtained on physically testing of the antenna prototype in order to fine tune the accuracy of the procedure. This work can be upgraded to the level so that the feed point of the antenna may be shifted from point to point in order to determine the change in patterns and parameters on moving the feed point so as to get the suitable feed point. Finally it may be inferred that the module presented can be aptly used as a pre- experimental observation tool for antenna designing. ACKNOWLEDGMENT We sincerely thank the Electronics and Communication Engineering Department, Calcutta Institute of Engineering and Management, Kolkata, India, for providing necessary guidance and requisite facilities in this regard. REFERENCES [1] (MATLAB® site) http://www.mathworks.com/products/matlab/ [2] Henry A. Sowizral, Kevin Rushforth, Michael Deering, The Java 3D API specification, Addison-Wesley, 2000 [3] (java 3d tutorial) http://java3d.java.net/binary-builds.html, http://www.java3d.org/tutorial.html. [4] (java 3d download) http://java3d.java.net/binary-builds.html [5] E Balagurusamy,Programming with JAVA:A Primer ,third edition, Copyright ©2007, Tata McGraw Hill,2007. [6] (download java containing netbeans) http://www.oracle.com/technetwork/java/javase/downloads/jdk- netbeans-jsp-142931.html [7] (jdk download)http://www.oracle.com/technetwork/java/javasebusiness/dow nloads/java-archive-downloads-javase6-419409.html [8] (java tutorial)http://www.roseindia.net/java/ [9] (java API)http://download.oracle.com/javase/1,5.0/docs/api/ [10] Staff Joiner Associates, Flowcharts :Plain and Simple , Learning and Application guide,Copyright © 2002,Oriel Incorporated. [11] Constantine A.Balanis, Antenna Theory: Analysis and Design, second edition, Copyright © 1982, John Wiley & Sons,Inc. ,pp.1,42,2200- 51,73-34, 1997 [12] Rajeswary Chatterjee, Antenna theory and practice, Second edition,New Age International,,pp.2,3,2006. [13] John D.Krauss and Ronald J.Marhefka,(chap name), Antenna For All Applications,2nd ed., Tata Mc-Graw Hill,, Copyright © 1988 by McGraw Hill,pp. 1,14-79,26,221-223,2001. [14] Vincent F. Fusco, Foundations of Antenna Theory and Techniques, copyright © 2005,Pearson Education Ltd.,pp.14-25,56-65,2004. [15] Alan Jeffrey, Advanced Engineering Mathematics, Copyright ©2002 ,Harcourt Academic Press,pp. 20, 2002. [16] Steven T. Karris, Signals and Systems with MATLAB® Computing and SIMULINK® Modeling, Fourth Edition, Orchard Publications, Copyright © 2008, pp. A1-A31,C1-C4. [17] H.K Dass, Advanced Engineering Mathematics, copyright © 1988, S.Chand & Co.LTD., pp. 466-443, 2009. [18] R.E. Collin, Antennas and Radiowave Propagation, McGraw Hill,1985. [19] H.T.Friis and S.K Schelkunoff, Antennas: Theory and Practice, Wiley, pp. 230-244,351,352, 1952. [20] John G. Proakis and M. Salehi,Contemporary Communication Systems using MATLAB®,PWS Publishing Company, Copyright © 1998.