the team

47

Upload: geri

Post on 05-Jan-2016

39 views

Category:

Documents


0 download

DESCRIPTION

The Team. Clara Cardoso (Acoustical Engineering) Ian Farmer (Electronic Engineering) Sam Hopper (Electronic Engineering) Julian Seidenberg (Software Engineering). Project Goals. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The Team
Page 2: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

The Team

Clara Cardoso (Acoustical Engineering)

Ian Farmer (Electronic Engineering) Sam Hopper (Electronic

Engineering) Julian Seidenberg (Software

Engineering)

Page 3: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Project Goals

To build an online virtual laboratory for control systems demonstrations with 3D illustrations of the Simulink models

To develop this system as a cross-platform successor to existing tools such as the Matlab VR Toolbox 2.0

Page 4: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Presentation outline System Architecture Simulink models System timing and control wrapper Java Client/Server system 3D VRML illustrations Integration and testing Conclusions Questions Demonstration

Page 5: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

System Architecture

System-Level View

Task breakdown

Page 6: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Architecture Overview

ClientWrapper

Matlab &Simulink

3DWorld

Workstation

iMac

WorkstationComputer

Laptop

Server

Server

Page 7: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Architecture Detail

Client ComputerClient ComputerMatlab 6.1Matlab 6.1 Web ServerMatlab 6.1 Client Computer

JavaControlApplet

JavaServer

JavaClass

Java DisplayApplet

VRMLWorld

SimulinkWrapper

ControlSimulation

Page 8: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Advantages

Platform independence

Scalability & Load Balancing

Redundancy & Recoverability

Page 9: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Disadvantages

Complexity More complex than a simple single

host-to-host network connection More effort to install and configure

Performance Layer of indirection causes slight

delay

Page 10: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Task Breakdown

JavaClient/ServerSystem

3D Worlds

Timingand

ControlWrapper

MatlabControlModels

ClaraCardoso

IanFarmer

SamHopper

JulianSeidenberg

Page 11: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Simulink Models

Bouncing Ball model Radar Tracking Pendulum F14 Flight Control Newton’s Cradle

Page 12: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Bouncing ball model

Simple system

Adapted from Matlab demo model

Expanded to move three-dimensionally

Page 13: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Radar tracking

Matlab demonstration model

Drop in model

Undocumented

Aircraft position +

+

Measurement noise

RADAR filter

Estimated position

Page 14: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Pendulum

Simple pendulum model

Rotation not translation

dtdtl

gdt

m

k sin

Page 15: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

F14 flight control Matlab

demonstration model

Models elevator control

M-file control of variables

Elevator

Page 16: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

F14 flight control (2)

Adaptation of controller

Page 17: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Newton’s cradle One pendulum

model per sphere Connected via

collision modelling blocks

Pendulum velocity can be set on collision

Page 18: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

System Timing and Control Wrapper

Controls the timing of the control system simulation

Interfaces the simulation with the server

Page 19: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

System Timing

Data sent from Simulink: in fixed-length packets at fixed intervals

Display applet requires a regular data stream

Therefore the accuracy of the timing is important for a smooth simulation

Page 20: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Timing Development First timing test

Used a fixed pause between packets

Caused a gradual time lag

Second timing test Used absolute timing

from system clock Sufficient accuracy is

achieved

Page 21: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Development of Control Wrapper

Implementation of a dataflow delay using an s‑function block

Delay block can halt the execution of the simulation at regular intervals

Page 22: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Final Timing and Control Wrapper

Implemented as a two-block wrapper for a control system model

Datasource: providing the control system’s inputs from the server

Datasink: regulating the execution speed and sending the control system’s outputs to the server

Page 23: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Java Client/Server System

Technology choices

System topology Matlab/Java Interface Process View (Server) Java Control Applet

Page 24: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Technology choices

Java 1.1 not:

PHP ColdFusion C/C++ C# Matlab

Page 25: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Technology choices (2) IBM Java Classbroker

not: Java RMI XML-RPC SOAP

Server Host

Applet HostMatlab Host

ClientProxy

MatlabClient

CBServer

JCBJCB

ClientProxy

AppletClient

JCB

ServerProxy

ServerProxy

Page 26: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Matlab/Java Interface

MatlabConnector 1

MatlabConnector 2

MatlabClient

Matlab

Datasouce

Datasink

Static Variables

Static Variables

SimulinkSimulation

CBServer

JCB

Page 27: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Process View

JCB

Matlab * Server Control & Display Applet *

Monitor User InterfaceAdjust ConstantsReceive Constants

Send ConstantsSend Constants *

Calculate Transform

Pause

Apply Transform to Display Applet

Display Animation

Send Transforms *Send Transforms

Store Transform

Receive Transforms

Queue Transforms Dequeue Single Transform

Receive Transforms

Queue Transforms * Dequeue Transforms *

Package Transforms

JCBJCB

Apply Constant Changes

Receive ConstantsAdjust Constants

JCBJCB

Receive Constants

Page 28: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Java Control AppletControl Applet

AppletConnector

AppletClientAppletConnector

ActionListenerCBServer

monitor eachother's threads

3D Transformation

3DTransformations

3D Transformations arrays

UI Events

“Constants”change

“Constants”change

Blaxxun3DApplet

Connect

Translate, Rotate, Scale

ConnectConnect

Queue

Page 29: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

3D Worlds Why?

To create illustrations of the control systems

To appeal to users Building

Combining and scaling: Created objects Existing objects on the web Modified downloaded objects

Page 30: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Software Used

Software For What? Why?

VRML 97To develop the

worlds

Free, easy, available plug-in-less browser, already used in VR-

Toolbox, many downloadable objects

Blaxxun 3D VRML ViewerFree, plug-in-less,

small file size

3D Exploration File Converter

Converted many different file formats, fast, identification of

objects’ parts

Page 31: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Software Used (2)

Software For What? Why?

BlenderObject creation

and modification

Free, cross-platform many

online resources and tutorials

MilkShape 3DObject creation

and modification

Imports and exports many file formats, easy to

use and learn

Page 32: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Bouncing Ball Ball inside a box

controlled by Simulink Used to learn and

become familiar with VRML

Grass texture in the ground and a textured hemisphere sky

Airplane propellers and windmill sails rotate

Page 33: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Radar World Radar to track an airplane The phantom airplane

shows the radar tracking “Normal” airplane shows

what the radar should track

Radar created in Blender Camera tracking the

planes so that the user is able to follow them whilst they fly around in the world.

Page 34: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

F14 World

F14 flying Camera tracking the plane so that the user is

able to follow it while flying around in the world.

Page 35: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Newton’s Cradle User to interact with

a Newton’s cradle Newton’s cradle

developed in Blender House made from

rectangular planes Window is a

rectangular plane with its transparency material property set to a low value

Page 36: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Pendulum A pendulum swinging

represented by a pendulum clock

Room with old fashioned objects

Pendulum needed to function as a different group to the rest of the object modelled using MilkShape3D

Page 37: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Integration and Testing

System Integration

Summary of Testing

Page 38: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

System Integration Control System models 3D Worlds

Synchronising objects and nodes from the model to the world

Ensuring correct positioning and visualisation Control System Models Interface Wrapper

Incorporating the final model as a sub-system in the interface wrapper

Interface Wrapper Server Using instances of Java objects to connect and transfer

data to and from the server Server Client

Finalising networking code in order to let multiple clients connect to multiple servers

Page 39: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Summary of Testing Simulation timing and execution test

results Performance is dependent on the power of

the host computer Increased sample times need more

processing power Java client/server system test results

Works without major failures under most conditions

However, re-declaration of variables caused stability problems over extended periods of operation until fixed.

Page 40: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Summary of Testing Other areas tested:

Performance/load testing Fail-over Testing Cross platform compatibility

Areas not tested: Usability testing Security testing

Page 41: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Summary

Evaluation

Conclusions

Future Work

Page 42: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

EvaluationGDP: VRC VR-Toolbox 2.0 Viewpoint LabView

Download size 141 KB + VRML 5470 KB + VRML 3200 KB + Wavelet compressed file

200 MB

Installation necessary No Yes Yes Yes

Simultaneous users Thousands Unspecified Thousands 50

Bandwidth requirement

Modem LAN Modem LAN

Platform independent Yes (Java) No (Windows only) Somewhat (Windows + Macintosh)

Somewhat (Windows + Linux)

Quality of image Medium Quality High Quality Very High Quality N/A

Accuracy of simulation

Good Good N/A Very Good

Price Free £1870 Free £3345

Page 43: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Conclusions Platform independence: by the use of a three-

tier system and the Java technology Privacy & Security: isolation of Matlab and Java

applet clients from each other through the server was achieved.

Scalability & Load Balancing: The system continued to run with a load of 3000 simultaneously connected clients.

Analysability & Testability: It is relatively simple to create client applicants to analyse and test the system.

Maintenance & Flexibility: Good maintainability. Encapsulation in objected-oriented programming ensures the system is flexible.

Page 44: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Conclusions (2) Stability & Recoverability: The system is

resistant to clients crashing. Recovery occurs quickly enough in normal use.

Small size & quick download: Average download time of just over a minute for a dial-up user and seven seconds for a broadband user

Ease of use: The web pages are intuitive. Performance: Adequate performance on an up-to-

date computer. Accuracy: Accurate as possible with today’s

technology.

Page 45: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Conclusions (3) The system can be used by clients with a

broad range of skill levels simple accessible diverse selection of examples

Potential application areas: virtual teaching laboratories advertisement on the University web page worldwide conferences.

Page 46: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Future Work Improving security Improving analysability Improving display smoothness Introducing dynamic data stream buffering

Creating an automatic installation system Creating a system that solely uses Matlab and is not

reliant on Simulink

Increasing the amount of control a user has over Matlab Increasing the amount of information provided on the

web pages.

Providing cut down versions of the VRML models for slow Internet connections

Providing a three-dimensional object library

Page 47: The Team

GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab

Demonstrations