1 / 36

Experiment Management System CSE 423

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?

Download Presentation

Experiment Management System CSE 423

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. 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.

  3. Lab Photos

  4. 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. 

  5. Tasks/Problems • Create protocol specification for data to be passed between research collection system and the Experiment Management System (EMS). • Design a Database for housing the experiment information • Install all required support software for the EMS (OS, Web Server, Database). • Produce a web based user interface for the EMS system that allows researchers control over experiments and consolidated research data. • Create EMS server software that that can communicate to the Agents using this protocol and store information into a database

  6. 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.

  7. 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.

  8. 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.

  9. 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.

  10. 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.

  11. Terminals And Devices

  12. Terminals And Devices • Two main problems to contend with: • Retrieve Data a. Devices b. Experiment • Send Command a. Start Experiment b. Stop Experiment

  13. 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

  14. 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

  15. 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

  16. 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 Data Stop Experiment Stop Sending Data

  17. Server/Database

  18. Design Requirements • Central storage system • Network capable • Easy to use

  19. 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

  20. Server Design

  21. Feasibility Test Code

  22. Feasibility Test Code • 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);

  23. 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?

  24. EMS User New User

  25. New User

  26. Create Experiment

  27. Query Builder String CurrentQuery = “SELECT EIDS.ID, EIDS.[Experiment ID], EIDS.Terminal, EIDS.Device, EIDS.Subject, EIDS.[Data Stream], EIDS.Timestamp, EIDS.Created, EIDS.Author FROM EIDS WHERE (((EIDS.Device)="Eye Tracker") AND ((EIDS.Subject)="Roger Nie"));” this.eIDSTableAdapter.Run(this.CurrentQuery);

  28. 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.

  29. Cont of Accomplished Work Data 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.

  30. 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

  31. 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.

  32. Questions

More Related