MATLAB GUI Development For Virtual Lab Activities

1
Software Availability MATLAB GUI Development For Virtual Lab Activities Abstract A MATLAB Graphical User Interface (GUI) software is developed to assist students to participate effectively in online classes and lab activities. This software development was completed by the summer of 2020, and currently, it is available for mechanical engineering students and for all university faculty members. The software program was compiled using MATLAB, and it can simulate important conceptual models such as transfer function and state-space [2]. Besides facilitating remote class activities, this GUI software can also provide interactive plots or graphs of dynamic simulations on a computer without installing MATLAB in it. The mechanical engineering students at Weber State University started to use it in the Fall of 2020 for some of the remote class assignments of the Dynamic system modeling course. References [1] MATLAB Compiler Toolbox 2020. [2] N.Nise, Control Systems Engineering, 8 th Ed. John Wiley & Sons, Incorporated, 2019. Functionalities The developed software, runtime installer, and documentation files can be downloaded from: https://weberstate.app.box.com/s/02mkxcn2225ktflq6q0v1qtfxbz3 yx0r Introduction To facilitate the remote learning experience for the students, this GUI can do a few essential dynamic simulations on a computer without installing MATLAB in it. This software will be a supporting tool for the lab assignments that demonstrate the Transfer Function and State-variable concepts. By using it, students will be able to test their model simulation remotely from their home and share their plots or results with the instructor. Procedure and Methodology The workflow and methodology of this project are given in the following steps: Step 1: Design a layout of the visual components of the GUI software interface that includes user control input-variables such as dropdown menus, push-button, slider bar, and edit boxes for numeric data. Step 2: MATLAB APP Designer (Previously known as GUIDE) to establish dependencies between the operational inputs and outputs. Step 3: Develop MATLAB script that will fetch user input variables such as masses or inertia, spring constants, damping coefficients, and simulation time to create transfer function and state-space matrices. Step 4: Assign buttons and slider bars that are going to trigger the MATLAB callback functions and do dynamic plotting using image handles. Step 5: Test the software by using different inputs. Step 6: MATLAB compiler deploy-tool to package the program and create a standalone executable (.exe) [1]. Final Product Limitations and Conclusion Can’t convert a 4 th order differential equation to a transfer function. Number of the numerator and denominator matrices are limited up to s 3 in a transfer function. Students started to use it for remote assignments and HW in Fall 2020. Further improvements to this GUI will be made for future use. Updated revision of this software will be available in the same location. Please contact [email protected] if you find any bug or mistake in the software. by Dr. Tariq Arif Mechanical Engineering Department Weber State University Purpose of the Project Major goals of this project can be divided into the following three parts: 1. Design and development of a standalone MATLAB GUI to support virtual lab activities. 2. Add visualization capabilities of step or impulse response of a model as the user changes input through dropdown menus, push-button, slider bar, and edit boxes. 3. Upload and share the final executable software. Figure 1. Virtual lab workflow example using GUI software. Figure 2. GUI interface to check the effect of damping ratio and natural frequency of a system Figure 3. GUI interface to transfer function to state-space and to check step and impulse responses. Figure 4. GUI interface to find state-space response to initial condition and to convert differential equation into a transfer function. Funded by: RSPG Experiential Learning Online grant

Transcript of MATLAB GUI Development For Virtual Lab Activities

Page 1: MATLAB GUI Development For Virtual Lab Activities

Software Availability

MATLAB GUI Development For Virtual Lab Activities

AbstractA MATLAB Graphical User Interface (GUI) software is developed to assist students to participate

effectively in online classes and lab activities. This software development was completed by the summer

of 2020, and currently, it is available for mechanical engineering students and for all university faculty

members. The software program was compiled using MATLAB, and it can simulate important conceptual

models such as transfer function and state-space [2]. Besides facilitating remote class activities, this

GUI software can also provide interactive plots or graphs of dynamic simulations on a computer without

installing MATLAB in it. The mechanical engineering students at Weber State University started to use it

in the Fall of 2020 for some of the remote class assignments of the Dynamic system modeling course.

References[1] MATLAB Compiler Toolbox 2020.

[2] N.Nise, Control Systems Engineering, 8th Ed. John Wiley & Sons, Incorporated, 2019.

Functionalities

❑The developed software, runtime installer, and documentation

files can be downloaded from:

https://weberstate.app.box.com/s/02mkxcn2225ktflq6q0v1qtfxbz3

yx0r

Introduction

❑ To facilitate the remote learning experience for the students,

this GUI can do a few essential dynamic simulations on a

computer without installing MATLAB in it.

❑ This software will be a supporting tool for the lab

assignments that demonstrate the Transfer Function and

State-variable concepts.

❑ By using it, students will be able to test their model simulation

remotely from their home and share their plots or results with

the instructor.

Procedure and Methodology

The workflow and methodology of this project are given in the

following steps:

Step 1: Design a layout of the visual components of the GUI

software interface that includes user control input-variables

such as dropdown menus, push-button, slider bar, and edit

boxes for numeric data.

Step 2: MATLAB APP Designer (Previously known as GUIDE)

to establish dependencies between the operational inputs and

outputs.

Step 3: Develop MATLAB script that will fetch user input

variables such as masses or inertia, spring constants, damping

coefficients, and simulation time to create transfer function and

state-space matrices.

Step 4: Assign buttons and slider bars that are going to trigger

the MATLAB callback functions and do dynamic plotting using

image handles.

Step 5: Test the software by using different inputs.

Step 6: MATLAB compiler deploy-tool to package the program

and create a standalone executable (.exe) [1].

Final Product

Limitations and Conclusion

❑Can’t convert a 4th order differential equation to a transfer function.

❑Number of the numerator and denominator matrices are limited up to s3

in a transfer function.

❑Students started to use it for remote assignments and HW in Fall 2020.

❑Further improvements to this GUI will be made for future use.

❑Updated revision of this software will be available in the same location.

❑Please contact [email protected] if you find any bug or mistake in

the software.

byDr. Tariq Arif

Mechanical Engineering DepartmentWeber State University

Purpose of the Project

Major goals of this project can be divided into the following three

parts:

1. Design and development of a standalone MATLAB GUI to

support virtual lab activities.

2. Add visualization capabilities of step or impulse response of

a model as the user changes input through dropdown

menus, push-button, slider bar, and edit boxes.

3. Upload and share the final executable software.

Figure 1. Virtual lab workflow example using GUI software.

Figure 2. GUI interface to check the effect of damping ratio and natural frequency of a system

Figure 3. GUI interface to transfer function to state-space and to check step and impulse responses.

Figure 4. GUI interface to find state-space response to initial condition and to convert differential equation into a transfer function.

Funded by: RSPG Experiential Learning Online grant