Experiment Management System CSE 423

36
Experiment Management System CSE 423 Aaron Kloc Jordan Harstad Robert Sorensen Robert Trevino Nicolas Tjioe Final Report Presentation Industry Mentor: Jack Harris Group Members

description

Experiment Management System CSE 423. Final Report Presentation. Industry Mentor: Jack Harris. Aaron Kloc Jordan Harstad Robert Sorensen Robert Trevino Nicolas Tjioe. Group Members. Simple Overview. What is our purpose? - PowerPoint PPT Presentation

Transcript of Experiment Management System CSE 423

Page 1: Experiment Management System  CSE 423

Experiment Management System CSE 423

Aaron KlocJordan Harstad

Robert SorensenRobert Trevino

Nicolas Tjioe

Final Report Presentation

Industry Mentor: Jack Harris

Group Members

Page 2: Experiment Management System  CSE 423

Simple Overview

What is our purpose? Create an application that will combine

information from multiple data sources (experiments) into a central location.

Why is this necessary? To provide convenience to the experiment

administrator in accessing and managing the data.

How will this be done? By use of a MySQL database as well as Java

applications.

Page 3: Experiment Management System  CSE 423

Lab Photos

Page 4: Experiment Management System  CSE 423

Project Goal – Diagram Create an extensible network environment for integrating different

hardware data collection systems used in research experiments

To have a centralized information store of significant data collected from the multiple systems that are time synchronized. 

Database

Terminal

Device

Admin

Device

Device

Device

Device

Terminal

Page 5: Experiment Management System  CSE 423

Tasks/Problems

1. Create protocol specification for data to be passed between research collection system and the Experiment Management System (EMS).

2. Design a Database for housing the experiment information 3. Install all required support software for the EMS (OS, Web

Server, Database).4. Produce a web based user interface for the EMS system that

allows researchers control over experiments and consolidated research data.

5. Create EMS server software that that can communicate to the Agents using this protocol and store information into a database

Page 6: Experiment Management System  CSE 423

1) Create protocol specification for data to be passed between research collection system and the Experiment Management System (EMS).

Solution: Using the Java programming language an admin can easily connect to an existing MySQL database by supplying an IP, a port number, a user name, and a password.

Page 7: Experiment Management System  CSE 423

2) Design a Database for housing the experiment information

Solution: A MySQL server will be created that can be connected to from a remote source. A routine within the database will sort incoming data from a port, into a table within the database.

Page 8: Experiment Management System  CSE 423

3) Install all required support software for the EMS

(OS, Web Server, Database).

Solution: The EMS consists of three applications:

1) Server

-MySQL

-Java

2) Terminal

-Java

3) Admin

-Java

Each application will be installed on the appropriate computers. Since Java is easily portable the only requirement will be that the latest version of Java and MySQL be installed on each machine.

Page 9: Experiment Management System  CSE 423

4) Produce a web based user interface for the EMS system that allows researchers control over experiments and consolidated research data.

Solution: Viewable experiment data will only be located on the MySQL server. This will allow an admin to view the data from a remote location and filter the data. The admin will also have the ability to start and stop new experiments.

Page 10: Experiment Management System  CSE 423

5) Create EMS server software that that can communicate to the

Agents using this protocol and store information into a database

Solution: An application will be installed on an admin machine. If the machine is located on the same network as the database then the user can interact with the system, via a GUI, if a valid user name and password are supplied.

Page 11: Experiment Management System  CSE 423

Terminals And Devices

Page 12: Experiment Management System  CSE 423

Terminals And Devices

Two main problems to contend with:- Retrieve Data

a. Devices

b. Experiment- Send Command

a. Start Experiment

b. Stop Experiment

Page 13: Experiment Management System  CSE 423

Terminals and Devices -Retrieving Data

• Generic Code puts data on to network that identifies mouse and keyboard

• Customize code to work for any device added• Identify device by the port number it is on• Timestamp is key

Page 14: Experiment Management System  CSE 423

Devices And Terminals -Retrieving Data

Executable is launched Events on devices

opens ports and sends information on to network Mouse/port 5333

Joystick/port 4500

Eyetracker/port 3700

Page 15: Experiment Management System  CSE 423

Devices And Terminals-Sending Commands

Application allows the computer to accept incoming commands from the server

Current generic code allows the control of mouse and key board at distant end similar to remote desktop

Configure commands to interface with experiments

Page 16: Experiment Management System  CSE 423

Devices And Terminals-Sending Commands

Executable will need to be running on both machines

Commands pertain to experiments

Client Machine will listen on specified port Listening for

commands/port 4800

Start Experiment Begin Sending DataStop ExperimentStop Sending Data

Page 17: Experiment Management System  CSE 423

Server/Database

Database

Terminal

Device

Admin

Device

Device

Device

Device

Terminal

Page 18: Experiment Management System  CSE 423

Design Requirements

Central storage system Network capable Easy to use Server

OS

Database

ManagementAgent

Web Server

Page 19: Experiment Management System  CSE 423

Server Design MySQL Server

Free Easy to use Easy to install Flexible Java compatible

JDBC (Java Database Connectivity) Free Easy to use Easy to install Supports multiple

databases

Page 20: Experiment Management System  CSE 423

Server Design

Page 21: Experiment Management System  CSE 423

Feasibility Test Code

Page 22: Experiment Management System  CSE 423

import java.net.*;

DatagramSocket MyClient;

MyClient = new DatagramSocket(55555);

InetAddress IP1=InetAddress.getByName("LOCALHOST");

packet = new DatagramPacket(sendBuf, sendBuf.length, Dest, DestPort);

MyClient.send(packet);

Feasibility Test Code

Page 23: Experiment Management System  CSE 423

Possible Difficulties

Network Traffic Can the local network handle a large amount of streaming

devices? Socket Congestion

Can a single thread handle a large amount of incoming traffic?

Data Storage Can the database preserve all types of data sent?

Data Querying Can data filters be applied effectively to a wide range of

data types?

Page 24: Experiment Management System  CSE 423

EMS User

Database

Terminal

Device

Admin

Device

Device

Device

Device

Terminal

Page 25: Experiment Management System  CSE 423

New User

Page 26: Experiment Management System  CSE 423
Page 27: Experiment Management System  CSE 423

Create Experiment

Page 28: Experiment Management System  CSE 423
Page 29: Experiment Management System  CSE 423

Query Builder

“SELECT EIDS.ID, EIDS.[Experiment ID], EIDS.Terminal, EIDS.Device, EIDS.Subject, EIDS.[Data Stream], EIDS.Timestamp, EIDS.Created, EIDS.AuthorFROM EIDSWHERE (((EIDS.Device)="Eye Tracker") AND ((EIDS.Subject)="Roger Nie"));”

String CurrentQuery =

this.eIDSTableAdapter.Run(this.CurrentQuery);

Page 30: Experiment Management System  CSE 423
Page 31: Experiment Management System  CSE 423
Page 32: Experiment Management System  CSE 423

Accomplished Work

Feasibility Test : store actual experiment data files into database and retrieve it later. We implement actual Java code to test our model. Skeleton of MySQL database setup.Currently we have the table for Eye tracking device set up.

Programming Language : Java + JDBC driver (Portability).

Network protocol : UDP.UDP offers speed as there is no error correction.

Page 33: Experiment Management System  CSE 423

Cont of Accomplished WorkData format between device and terminal

The terminal will listen to certain ports for the incoming data traffic

to store the data into respected tables in the database.

Design System Use Case diagram

Define the role of the users: researcher, administrators, etc. Different

users will only have specific visibility to the experiment data.

GUI Administration prototype to administer over the experiment.

Start Exp -> Download -> Query

Prototype Model: Actual model of how the whole system will work.

Page 34: Experiment Management System  CSE 423

What we have learned:

Team communication

Time management skills in a time work environment.

Different protocols: UDP, TCP/IP.

The advantage between each protocol and their actual implementation.

Database Experience

Most group members have none or little experience.

Project Presentation

Page 35: Experiment Management System  CSE 423

Future Goals Design GUI interface for the users. (web or application)

Adding more database tables as we will get more devices connected to the terminal.

Testing: - System Testing (with different devices) - Integration Testing

- Unit Testing- Validation Testing

Create User Guide for our final product to be used as a reference by the researcher.

Demo the final product to our industry mentor.

Page 36: Experiment Management System  CSE 423

Questions