ProActRail is a Streamlit application for monitoring and predicting equipment failure in railway systems. It simulates and visualizes real-time data, including sensor readings and GPS coordinates, to detect potential oil leaks and other issues. The application uses a machine learning model to predict equipment failure and sends alerts to help prevent accidents.
- Real-time data simulation and visualization
- Oil leak detection and alerts
- Machine learning model for failure prediction
- Integration with BigQuery for data storage and retrieval
- Integration with Google Cloud Pub/Sub for data streaming
Clone the repository:
git clone https://github.com/9elmo6/ProActRail.git
cd ProActRail
Create a virtual environment and activate it:
python3 -m venv venv
source venv/bin/activate
Install the required packages:
pip install -r requirements.txt
Note: a Big Query database is required due to the big size of the dataset available.
It is recommended to setup a virtual enviroment before installing the python packages to avoid any verison conflicts
python -m venv venv
source venv/bin/activate
- Create a new storage Bucket
- upload the dataset found here - https://zenodo.org/record/7766691#.ZCz3eezMJGM
- Go to the Big Query tab and create a new data from google storage
- Choose "auto-detect" schema.
- Use the project name, dataset name, and table name in the app code to be able to query the required data.
Set up your Google Cloud credentials by following the instructions in the Google Cloud documentation. Export the path to your Google Cloud credentials JSON file:
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your/credentials.json"
Run the Streamlit application:
streamlit run streamlit-app.py
Open the provided URL in your web browser to interact with the application.
- Add Email notification in case of failure detected
- Add Air leak simulation
- Visualize the model predictions on the plot
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
License MIT