1 ELEC431 Software Engineering and Programming Coursework 1 – Graphic User Interface (GUI) This assignment is designed for you to gain experience in practical software development which includes specification analysis, programme structure design, coding, testing, programme integration and documentation. It should also help improve your problem-solving skills. Module Coordinator Dr. Xin Tu Coursework name CW1 Component weight 30% Semester 1 HE Level 7 Deliverable Report only Assessment Individual assessment (Report) Submission format Online via VITAL Submission deadline 5 pm on Friday 15th November, 2019 Late submission Standard university penalty applies Resit opportunity August resit period Marking policy Marked and moderated independently Anonymous marking No Feedback via VITAL GradeMark®/Turnitin Feedback Studio Subject of relevance GUI design/software engineering Relevant documents Available in VITAL Introduction You are required to develop a Matlab program to deal with the display and processing of electrical signals. Fig.1 shows the time-resolved electrical signals: high voltage waveform Uapp (via a 1000:1 high voltage probe) is given in the text file called “uapp.txt” and the voltage Uc across the external capacitance C (22 nF) is given in “uc.txt”. Both files have 2 columns and will be available in VITAL. The first column is the time (s), and the second column is the voltage (V). The capacitor accumulates a charge (Q) from the current flowing through the reactor and this can be determined by measuring the voltage on the capacitor Uc: Q = C × Uc (1) 2 Fig.1 User interface and time-resolved electrical signals You can draw a Lissajous figure (Q-Uapp), as shown in Fig. 2. Fig.2 Lissajous figure (Q-U) If we can calculate the area (S) of Lissajous figure (ABCD in Fig. 2), the discharge power (P) can be determined by P = S × f (2) Where f is the frequency (35 kHz) of electrical signals (Uapp and Uc). You are not required to understand the background for this assignment if you do not have sufficient time to do so. You are required to submit a report which should include the following sections: 1. Introduction and Specification Analysis (10%) A brief introduction to the aims and objectives of this coursework. The specification analysis of the design should be included, such as input/output data and major tasks involved in the programme. 3 2. Programme Design (20%) • Major codes for all modules including the main function; • Hierarchy Chart for the whole programme. • Data table for each module including the main function. You will need to indicate in the data table of each module and the role of each variable, whether it is local or input/output. 3. GUI Design and Test (45%) You are asked to design the program using a GUI with all figures displayed in the GUI, you are required to • Sketch the GUI with all controls (buttons, text boxes, etc) on it; • Discuss on what call back functions are needed and what task each call back function performs; • Discuss on the advantages of using such a GUI based program for the given program specification; • Discuss any difficulties you meet and how you find the solutions; • If an input data file (electrical signal) contains a different number of columns, say N columns, what changes in your code need to be made to deal with the new data file? The programme should have the following basic features and functionalities: o Load the input data (electrical signals); o Display the time-resolved two electrical signals (high voltage signal Uapp and charge signal Q); display the properties of the signals: peak-to-peak value, root mean square (RMS) value, minimum value and maximum value; o Display the Q-U Lissajous figure and smooth it; o Calculate and display the discharge power (60 W, measurement error 5%) 4. A User Manual that shows how to use this software (15%), including but not limited to • How to load the input file of electrical signals; • How to display electrical signals and Lissajous figure; • How to display the parameters of electrical signals and discharge power Note that: The quality (presentation and structure) of the report will be awarded a mark in the range of 0 – 10%. The sections in your report should be numbered. All figures, diagrams, equations and tables should be numbered and quoted in the text. The source code should be included as an Appendix. Remember to give sufficient comment in your code so the assessor can understand it easily. The layout of the source code should allow easy reading and recognition of the logic structured.