Skip to content

This project involves developing a real-time command control application for a newly established rocket launch station. The application must provide users with an interface to view the current status of rockets in the field in real-time and enable control of selected rockets through provided components.

shtanriverdi/rocket-telemetry-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Rocket Launch Control Application

rocket-system-1080.mp4

Description

This project involves developing a command control application for a newly established rocket launch station. The application must provide users with an interface to view the current status of rockets in the field in real-time and enable control of selected rockets through provided components. Additionally, users should be able to access real-time weather conditions via the interface to inform launch decisions based on environmental parameters.

Notes

  • The application may experience delays in responding to REST API requests due to high electromagnetic interference, typically ranging from 0.4 to 2.3 seconds.
  • The REST API service may return a 503: Service Unavailable error with a 20% likelihood.
  • The rocket telemetry systems have a 10% chance of sending "faulty data."
  • Real-time data from rocket telemetry systems is sent at 100 ms intervals.

User Stories

  • As a user, I should be able to view all rockets in the field with their respective information.
  • As a user, I should be able to monitor the telemetry data and status of rockets in real-time.
  • As a user, I should be able to view the cargo content carried by each rocket.
  • As a user, I should be able to view the connection status of telemetry systems associated with each rocket.
  • As a user, I should be able to launch each rocket through the interface.
  • As a user, I should be able to monitor the current weather conditions in real time.

Development

The application communicates with the provided backend application to fulfill the user stories outlined above. The backend exposes a REST API for retrieving rocket information and weather data. Additionally, each rocket has a telemetry service accessible via TCP for real-time data. The application collects data from these interfaces and presents it to the user through a user-friendly interface.

Tools and Technologies

The application is developed using the following technologies:

  • Redis: Used for caching and queuing telemetry and weather data.
  • Express: Node.js framework utilized for backend development.
  • Socket.IO: Enables real-time communication between the server and client.
  • Docker: Containerization tool used for deployment.
  • React: Added for a more structured and reusable user interface.
  • Postman: Used to check all the endpoints.

Additional Features

  • Reset Button: Added a reset button to reset the application state.
  • Individual Rocket Connections: Enabled individual connections to each rocket, allowing for separate interactions.
  • Used standard deviation techniques to clear the invalid data from the data stream.

Rocket Telemetry System Protocol

image

About

This project involves developing a real-time command control application for a newly established rocket launch station. The application must provide users with an interface to view the current status of rockets in the field in real-time and enable control of selected rockets through provided components.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published