470 likes | 667 Views
The Team. Clara Cardoso (Acoustical Engineering) Ian Farmer (Electronic Engineering) Sam Hopper (Electronic Engineering) Julian Seidenberg (Software Engineering). Project Goals.
E N D
The Team • Clara Cardoso (Acoustical Engineering) • Ian Farmer (Electronic Engineering) • Sam Hopper (Electronic Engineering) • Julian Seidenberg (Software Engineering) 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 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
System Architecture • System-Level View • Task breakdown GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Architecture Overview GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Architecture Detail GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Advantages • Platform independence • Scalability & Load Balancing • Redundancy & Recoverability 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Task Breakdown GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Simulink Models • Bouncing Ball model • Radar Tracking • Pendulum • F14 Flight Control • Newton’s Cradle 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Aircraft position RADAR filter Estimated position + + Measurement noise Radar tracking • Matlab demonstration model • Drop in model • Undocumented GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Pendulum • Simple pendulum model • Rotation not translation 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
F14 flight control (2) • Adaptation of controller 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 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 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 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 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 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 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Technology choices • Java 1.1 • not: • PHP • ColdFusion • C/C++ • C# • Matlab GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Technology choices (2) • IBM Java Classbroker • not: • Java RMI • XML-RPC • SOAP GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Matlab/Java Interface GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Process View GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Java Control Applet 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Software Used GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Software Used (2) 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 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. 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. 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 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Integration and Testing • System Integration • Summary of Testing 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 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. 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Summary • Evaluation • Conclusions • Future Work GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Evaluation 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. 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. 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. 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 GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab
Demonstrations GDP: Virtual 3D Control Systems WWW Demonstrator based on Matlab