This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.
A graphical user interface (GUI) is a pictorial interface to a program. A GUI can make it easier to control programs by giving them a good appearance and set of controls like pushbuttons, list boxes, sliders, menus, and so forth. In generally the GUI should be in simple and understandable way. As an example, when pressing a push button the user may see that will perform an action as it described in the label. Each and every component has its own task to execute. And the label is given a short idea what should happen when select, typed or push on the particular component. Here in the WiMAX GUI it includes many components and many functions interact with the WiMAX Simulink model. The WiMAX Simulink model was configured for functioned with the GUI. Also included advanced features for simplify the process and let to know by the user. 
The total system is based on a Matlab script that works as a bridge between GUI and the WiMAX Simulink model. The action which performs on the GUI will go through the Matlab script and according to the particular component's call back it will execute the command and will do the relevant process which is in the WiMAX Simulink model. The Matlab m file script is the heart of the WiMAX GUI interface.
1.2 AIM AND OBJECTIVES
The aim of the project was to 'Implement a GUI (Graphical User Interface) for the IEEE 802.16 WiMAX system'. Main idea was to control the basic parameters of WiMAX system in a graphical manner.
? The final project objective was to implement of GUI for IEEE802.16 WiMAX system using Simulink.
? To create Graphical User Interface using 'Simulink' software, Matlab
? Use a WiMAX Simulink model to link the expected GUI.
? Link the Parameters which include in the WiMAX Simulink block into the GUI
1.3 REPORT STRUCTURE
? Chapter 1 includes the introduction of the project report which gives a brief description about the project and also the aim and the objective of the project.
? Chapter 2 includes the literature search results and the theoretical information about WiMAX and the basic information about the Matlab Simulink and the operation which allows in understanding the basic concepts of the project.
? Chapter 3 includes about the selections at the design and development stage. In here step of building GUI will be given by this chapter.
? Chapter 4 includes information about the Simulink implementation process. A brief description about the used software is done at the beginning of the chapter. Screen shots of the used components and used parameters for the GUI are included by briefly describing about each component.
? Chapter 5 is used to show the obtained results at the testing stage of the Simulink implementation. The screen shots of several outputs of the GUI design are shown under this chapter.
? Chapter 6 includes about the aspects of project management which is used in purpose of describing about time management in the project. Issues occurred due to lack of time and knowledge is described in the chapter and a revised time plan was designed considering the difficulties.
? Chapter 7 includes the conclusion stage of the project. This chapter is used in providing a brief summary of the investigations and the outcomes following with describing about the future works.
CHAPTER 2 - LITERATURE REVIEW
This chapter provides more relevant background information which can be used to understand the aim and the objectives of this project. This chapter allows the reader to obtain more information about WiMAX Signal standards and advantages of having a GUI for the Simulink model. Also include the connection between two major systems, the GUI interface and the WiMAX Simulink model. Block diagrams are used to explain and demonstrate the overall understanding about the project.
2.1 WiMAX Signal, Usage and Standards
Figure 1 - WiMAX Applications and Services 
WiMAX which is known as Worldwide Interoperable Microwave Access is the IEEE 802.16 Point-to-Multipoint broadband wireless access standard defined for systems in the frequency ranges 10 ' 60 GHz which is capable of providing last mile connectivity with QoS. WiMAX is capable of providing 75Mbps per channel for fixed and portable applications and reliable in providing services around 20-30 miles from the Base station. Because of this highly available capacity, one channel is capable of providing services up to hundreds of business applications and thousands of home users with DSL speed connectivity. In improving the performances, designs can be made with WiMAX implementing by synchronising format using Time Division Duplex in the Base station. 
WiMAX supports IEEE 802.16 WiMAX specifications and will continue to developments as the specifications evolve, but other standards have also been produced based on the 802.16 specification. Some of them are extensive enough to get attention by the WiMAX Forum, including HiperMAN and WiBro. WiMAX (802.16) effectively holds all of WiMAX (802.16) standards. 
2.2 Matlab Simulink
Basically a Simulink is an environment for multi domain simulation and model based design for dynamic and embedded systems. It gives a graphical environment and customizable blocks for design technical models. So the Matlab is a programme that enables these tasks for various purposes.
According to build up the GUI, 'GUIDE' tool was used. GUIDE, the MATLAB Graphical User Interface Development Environment, provides a set of tools for creating graphical user interfaces (GUIs). These tools greatly simplify the process of laying out and programming GUIs.
2.2.1 The Relation between WiMAX model and the Matlab GUI
The relation between WiMAX model and the GUI is a set of interconnected functions. The Matlab m file is the main script that between the GUI and the Simulink model. When GUI performs an action according to the user, it will affect the Simulink model instantly. For those functions the Matlab script is the third party between the GUI and the Simulink model. It will execute the particular command or coding which affect to the Simulink model.
CHAPTER 3 ' BUILD THE GUI
3.1 The GUI
3.1.1 What is a GUI?
A GUI can also explain as a graphical display which contains one or more controllers called components within one or more windows. These components perform interactive tasks. When using a GUI, user does not have to type on commands on a command line with a script to perform the particular tasks. Unlike coding programs to accomplish tasks, the user does not need to understand the details how the process performs.
When considering a GUI it may include menus, push buttons, list boxes, toolbars, and sliders...etc. GUIs which created using MATLAB tools can also perform any type of computation, read and write data files, communicate with other GUIs, and display data as tables or as plots. 
Figure 02 ' A Simple GUI 
3.1.2 How does GUI Works?
In the GUI described in 3.1.1, the user selects a data set from the pop-up menu, and then clicks one of the plot type buttons. The mouse click invokes a function that plots the selected data in the axes.
Most of GUIs are waiting for the command of the user to control and it will respond the each action in turn. Those each and every control which is in GUIs has its own user defined functions or routines (executable MATLAB code) known as callbacks. The meaning of the 'callback' is to MATLAB to asking to do things.
The each and every callback is performing an execution which was triggered by the user action like pressing a button, clicking on the mouse button, and selecting drop down menu, typing a string or a numeric value, or passing the cursor over a controlling component. According to the particular event, the GUI will call the m file and it will respond by the WiMAX Simulink model. It may visible or invisible due to the controlled component in the Simulink model.
This kind of programming is often referred to as event-driven programming. In the example, a button click is one such event. In event-driven programming, callback execution is asynchronous, that is, it is triggered by events external to the software. In the case of MATLAB GUIs, most events are user interactions with the GUI, but the GUI can respond to other kinds of events as well, for example, the creation of a file or connecting a device to the computer.
You can code callbacks in two distinct ways:
As MATLAB language functions stored in files
As strings containing MATLAB expressions or commands (such as 'c = sqrt(a*a + b*b);'or 'print')
Using functions stored in code files as callbacks is preferable to using strings, as functions have access to arguments and are more powerful and flexible. MATLAB scripts (sequences of statements stored in code files that do not define functions) cannot be used as callbacks.
Although you can provide a callback with certain data and make it do anything you want, you cannot control when callbacks will execute. That is, when your GUI is being used, you have no control over the sequence of events that trigger particular callbacks or what other callbacks might still be running at those times. This distinguishes event-driven programming from other types of control flow, for example, processing sequential data files.
Figure ' 03 - Designing a Graphical User Interface 
3.1.3 How to Build GUI Using Matlab
A MATLAB GUI is a figure window to which you add user-operated controls. You can select, size, and position these components as you like. Using callbacks you can make the components do what you want when the user clicks or manipulates them with keystrokes.
You can build MATLAB GUIs in two ways:
? Use GUIDE (GUI Development Environment), an interactive GUI construction kit.
? Create code files that generate GUIs as functions or scripts (programmatic GUI construction).
The first approach starts with a figure that you populate with components from within a graphic layout editor. GUIDE creates an associated code file containing callbacks for the GUI and its components. GUIDE saves both the figure (as a FIG-file) and the code file. Opening either one also opens the other to run the GUI.
In the second, programmatic, GUI-building approach, you create a code file that defines all component properties and behaviours; when a user executes the file, it creates a figure, populates it with components, and handles user interactions. The figure is not normally saved between sessions because the code in the file creates a new one each time it runs.
As a result, the code files of the two approaches look different. Programmatic GUI files are generally longer, because they explicitly define every property of the figure and its controls, as well as the callbacks. GUIDE GUIs define most of the properties within the figure itself. They store the definitions in its FIG-file rather than in its code file. The code file contains callbacks and other functions that initialize the GUI when it opens.
MATLAB software also provides functions that simplify the creation of standard dialog boxes, for example to issue warnings or to open and save files. The GUI-building technique you choose depends on your experience, your preferences, and the kind of application you need the GUI to operate. This table outlines some possibilities.
CHAPTER 4 ' WiMAX GUI
In This chapter, it will discuss how the GUI was implementing and connect with the WiMAX Simulink model. Also it will included options which given to the user to control the WiMAX Simulink model and the technical specifications. The whole system will discuss in this chapter and will forward some essential data of the system.
4.1 WiMAX GUI
Before create the GUI, need get an idea about which block parameters should change to affect the WiMAX Simulink model. Major Simulink blocks of the WiMAX Simulink model are channel, modulation technique and the input data. In here the WiMAX Simulink system configured for all modulation techniques and three types of channels. They are BPSK, QPSK, 16QAM and 64QAM modulation techniques and AWGN, Rayleigh Fading and Rician Fading channels. The input is a Bernoulli random integer generator.
Before using the different Modulation techniques it is better to know that it has its own bit rates and coding rates according to the WiMAX standards. The standard bitrates are shown in table 1. According to the table it was used Convolutional Coding (CC) and additionally it was used Block Turbo Coding (BTC) and Convolutional Turbo Coding (CTC).
Table 01 - Mandatory channel coding per modulation
Then the other requirement is to create the GUI using Matlab. It was used Matlab GUIDE (Graphical User Interface Development Environment) tool for that purpose. First it was create a rough sketch of the GUI and finally it modified for the best arrangement. The Figure 04 shows the final GUI model.
Figure 05 - The WiMAX GUI
Number 1 - Model Parameter pane
This shows four options. They are Load Model, View Model, Save Model and Close Model. Load Model is for loading the Simulink Model but it will not appear. All changes which set by the GUI is affect the model. When simulation runs only the scopes will shows. If user wants to see the model simply push on the View Model and it will appear the WiMAX Simulink model. Close Model is to close the currently opened Simulink model. Save Model and the Close Model options will not work properly if the simulation is running. So the user should stop the Simulation to save and close the WiMAX Simulink model.
Number 2 ' Tools pane
By using the tool pane the user allows to set any value of time set by using the edit box. It's simply typed on the edit box and it will automatically set the time parameter in the WiMAX Simulink model system. Make sure load or view the WiMAX Simulink model before set any parameter. Otherwise it will not working properly and will give an error from the Matlab software.
Number 3 ' Modulation Technique pane
In this pane it contains one popup menu and the four types of modulation techniques with check boxes. When user selecting the appropriate bit rate from the drop down menu, it will automatically switch the particular modulation technique in the WiMAX Simulink model and also automatically ticked in the particular modulation technique.
Number 4 ' Input Data Pane
The Input data pane is one of the major sections in the WiMAX GUI. It includes the Bernoulli Binary Generator data input parameters. The pane includes three types of encoding methods and its standard bitrates. When user changes those bitrates it will change on the WiMAX Simulink System as well. Three drop down menu is included Convolution Coding (CC), Block Turbo Coding (BTC) and Convolutional Turbo Coding (CTC) with their particular bit rates. User allowed changing those parameters according to the particular system. The default WiMAX Simulink model was working on Convolution Coding (CC).
Number 5 ' Channel Property Pane
The channel property pane allowed user to change the transmission channel with its own parameters. There are three types of channels are included for the particular pane with their essential parameters. AWGN Channel, Rayleigh Fading channel and Rician Fading channel are the channel types which included in the WiMAX system. The special feature on this pane which effect to the default WiMAX system was the user can change the channels even simulation is running.
Number 6 ' Current Status Pane
This pane will show the user about the status of the WiMAX GUI. When user loads the model it will appear that the model was loaded. When user viewing the model it will appear that the model is viewing. These messages are displaying under the Model type in Status pane. Like that the rest of things will be appearing in the pane like Time, Modulation Technique, bitrate and Channel type.
Number 7 ' View Pane
This pane is for viewing the scope results to the user. User allowed to ON and OFF the scope output by pushing on the Scope On button and Scope OFF buttoning for off the scope output.
Number 8 ' Simulation Run and Exit
After setting the all parameters user need to push on the Run Simulation button to run the simulation. Then the WiMAX Simulink block will start to simulate. To stop the simulation user need to push on the same button once. Then the simulation process will stop. The Exit button is to exit the total system. When pressing the Exit button it will exit from the total system. Before exit from the system the user must save the system, otherwise it will not exit from the system.
CHAPTER 5 ' WiMAX GUI RESULTS AND TESTING
The WiMAX GUI workings and its special options will deeply discuss through this chapter. The result will reflects the actual process which have been there as a visual thing for the user who uses the WiMAX GUI interface.
When user going to use the interface it should Load or View the actual WiMAX Simulink model first. Then set the time parameter and then to the modulation technique. The modulation technique was depending on the specific bit rate which was allowed the WiMAX standard. According to the GUI interface it will shows that there are four types of modulation techniques where integrated with the interface. Those are BPSK, QPSK, 16QAM and 64 QAM modulation techniques. When user selects the bit rate from the drop down menu it will automatically selected the particular modulation technique according to the WiMAX standard. Then it will
http://www.ewh.ieee.org/r8/uae/GUI.pdf - (Accessed 04th April 2011)
http://www.hill2dot0.com/wiki/index.php?title=Image:G2275_WiMAX-Applications-an.jpg (Accessed 04th April 2011)
 Hifn intelligent secure networking, (2005), WiMAX Technology, [online], Available at:http://www.hifn.com.cn/uploadedFiles/Library/Application_Briefs/WiMAX_AB_1.4.pdf,
(Accessed 04th April 2011)
http://www.freewimaxinfo.com/wimax-technology.html (Accessed 04th April 2011)
 http://www.mathworks.com/help/techdoc/creating_guis/f2-998436.html - (Accessed 04th April 2011)
 http://www.mathworks.com/help/techdoc/creating_guis/sg_peaks_surf.gif - (Accessed 04th April 2011)
http://www.mathworks.com/help/techdoc/creating_guis/gui_workflow.gif (Accessed 04th April 2011) By, 1984-2011- The MathWorks, Inc