+ All Categories
Home > Documents > Tot 15 LTPDA Graphic User Interface summary and status N. Tateo 26/06/2007.

Tot 15 LTPDA Graphic User Interface summary and status N. Tateo 26/06/2007.

Date post: 01-Jan-2016
Category:
Upload: norman-conley
View: 222 times
Download: 0 times
Share this document with a friend
16
tot 15 LTPDA Graphic User Interface summary and status N. Tateo 26/06/2007
Transcript

tot

15

LTPDA Graphic User Interfacesummary and status

N. Tateo26/06/2007

tot

15

now 2

GUI summary

The analysis software is composed by3 different elements:

tot

15

The elements in the GUInow 3

1. The functions library2. The AO array3. The Parameters array4. The Simulink window

tot

15

now 4

1. The functions library

The package consists of many functions,each accepting as input the data to be

analyzedand the proper parameters:Matlab

tot

15

To work in Simulink all these functionsare “converted” into Simulink blocks:

Each block is identified by a (visible) tag, which is the function name, and by a

(invisible) handle, which isan univocal number assigned by Simulink.

now 5

1. The functions library

Matlab Simulink

tot

15

Matlab Workspace

now 6

2. The GUI

When the user starts the GUI, two arrays are created:

These are defined as global variables, so they are

entirely and freely accessible by any function.

tot

15

now 7

The AO Array

Analysis Objects Array

name: AnOb

1

2

3

4

5

tot

15

now 8

The Parameters Array

Parameters Arrayname: Parameters

Block handle

Block handle

Block handle

Block handle

Block handle

tot

15

now 9

Where everything goes

ltpda_pwelch(data, parameters)

ltpda_cohere(data, parameters)

ltpda_pwelch(data, parameters)

1

2

3

4

Block handle

Block handle

Block handle

tot

15

now 10

Parameters setting

When the user select a block, the GUI

retrieves the block handle.

If no paramlist is associated to that

handle, a new list is created and the

panel let the user to compile its

values.

Block handle

tot

15

now 11

function(data,parameters)

When the user starts the analysis, each function retrieves the handle of its own block and by that the proper

paramlist from the Parameters array in

memory. Block handle

This provides each functionwith the correct relative parameters.

tot

15

now 12

function(data,parameters)

Each function similarly retrieves the data from the

AO array in memory, by the pointer which is

sent in the Simulink diagram.AO1

name, provenance, data, history…1

Thus every function retrieves by itselfall its data and parameters.

tot

15

now 13

Consequences

• The entire parameters list is saved and keptoutside Simulink: this makes easier to modify previous analysis and to run

nested loops, ie.multiple analyses varying one parameter at

the time.

• No delay is introduced by Simulink, since no real data are sent inside its

diagram (ie, its workspace). There is only one copy of AOs and parameters saved in memory, and every function can retrieve them using the correct pointer (the AO

ordinal number for data, the block handle for parameters).

tot

15

now 14

Consequences

• The analysis speed is maximized, since everything which could slow it down (such as GUI control cycle) is stopped when the

analysis is started.

• The analysis results can easily be gathered and saved

together, data + parameters + diagram, thus ensuring excellent traceability and a

simple data analysis management.

tot

15

now 15

Future steps

• Convert the GUI into a true operative tool,implementing the ability to save and load

analysis(ie, to import and export data parameters

and diagrams).

• Enable it to deal with multiple analysis at once,

ie. more than a single Simulink window at the time.

• Complete the implementation of functions

in the Simulink library.

• Turn the library into a Simulink toolbox, with a tree structure which will make it

easier and faster to use.

tot

15

now 16

Future steps

• Add the Color Control Panel.

• Implement a validation cycle, to check the consistency

of the parameters set by the user prior to the execution

of the analysis.

• Implement the code to enable nested loops

(do we want some kind of optimization system?).

• Let the people in the labs to use it, and mark down

their feelings.


Recommended