{"id":22344953,"url":"https://github.com/ibfleming/digital-twins","last_synced_at":"2025-03-26T10:13:58.005Z","repository":{"id":217770705,"uuid":"744770044","full_name":"ibfleming/digital-twins","owner":"ibfleming","description":"This repository contains the collaborative work of Ian Fleming and Lucien Lee for their CS404 course project on digital twins. Digital twins are virtual representations of physical objects or systems, allowing for real-time monitoring, analysis, and simulation.","archived":false,"fork":false,"pushed_at":"2024-05-02T00:07:39.000Z","size":135442,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-31T11:33:54.407Z","etag":null,"topics":["digitaltwins","game-development","unreal-engine-5"],"latest_commit_sha":null,"homepage":"https://github.com/ibfleming/digital-twins","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ibfleming.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-18T01:00:33.000Z","updated_at":"2024-05-02T00:07:42.000Z","dependencies_parsed_at":"2025-01-31T11:38:41.294Z","dependency_job_id":null,"html_url":"https://github.com/ibfleming/digital-twins","commit_stats":null,"previous_names":["ibfleming/digitaltwinsproject"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibfleming%2Fdigital-twins","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibfleming%2Fdigital-twins/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibfleming%2Fdigital-twins/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibfleming%2Fdigital-twins/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ibfleming","download_url":"https://codeload.github.com/ibfleming/digital-twins/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245632418,"owners_count":20647194,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["digitaltwins","game-development","unreal-engine-5"],"created_at":"2024-12-04T09:15:41.470Z","updated_at":"2025-03-26T10:13:57.964Z","avatar_url":"https://github.com/ibfleming.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://github.com/ibfleming/digital-twins/blob/main/ExternalApps/Media/spaceship.png\" alt=\"spaceship\"/\u003e\n\n# Skeletor in Space - Digital Twins Project\n\n**Authors:** Ian Fleming and Lucien Lee\n\nWelcome to the Skeletor in Space project repository! This is where we've centralized all the code and resources for our Digital Twins endeavor, undertaken as part of the CS404 course instructed by Dr. Conte de Leon at the University of Idaho during the Spring 2024 semester.\n\n## Table of Contents\n- [Overview](#overview)\n- [Video Demonstration](#video-demonstration)\n- [Usage](#usage)\n  - [Cloning the Repository](#cloning-the-repository)\n  - [Opening the Project](#opening-the-project)\n  - [Ensure MQTT is Installed](#ensure-mqtt-is-installed)\n  - [Ensure Python is Installed](#ensure-python-is-installed)\n  - [Testing and Simulating the Environment](#testing-and-simulating-the-environment)\n- [Contact](#contact)\n- [License](#license)\n\n## Overview\n\nWelcome to the Skeletor in Space project repository! This project aims to explore the concept of digital twins in the context of a spaceship in space. Leveraging Unreal Engine 5.3, we utilize both 3D and 2D assets to create immersive visualizations of our digital twin model.\n\nTo enhance our data visualization capabilities, we employ charting plugins such as Kantan Charts within the Unreal Engine environment. These charts help us analyze and interpret complex data sets effectively.\n\nFor networking and real-time data exchange between the server and client, we implement the MQTT (mosquitto) publisher/subscriber model. This allows seamless communication and the transfer of data encoded in JSON format, ensuring efficient data synchronization and interaction.\n\nTo simulate realistic scenarios and generate mock data, we integrate Python scripts into our workflow. These scripts enable us to simulate various environmental conditions and events, providing valuable insights into the behavior of our digital twin.\n\nFurthermore, to manage and store historical data efficiently, we utilize PyArrow parquet to store older data into a database. This ensures that past data remains accessible for analysis and comparison, contributing to the ongoing refinement and improvement of our digital twin model.\n\nIn summary, these are our primary components and resources we utilized in order to achieve a minimal viable product.\n\n## Video Demonstration\n\n[Demo](https://github.com/ibfleming/digital-twins/blob/main/ExternalApps/Media/FinalDemoVideo.mkv)\n\n## Usage\n\nEnsure all the actions under each section have been completed to ensure the project to work.\n\n### Cloning the Repository\n\nTo clone the repository to your local environment, use the following command:\n\n```bash\ngit clone https://github.com/ibfleming/digital-twins.git\n```\n\n### Opening the Project\n\nEnsure you have Unreal Engine 5.3 installed and working on your local machine from the Epic Games Launcher.\nYou can open up the project in Unreal by opening the ```.uproject``` file in the root directory of the repository.\nYou might be required to generate project files beforehand.\n\n### Ensure MQTT is Installed\n\nYour machine will require the background process, ```mosquitto.exe``` to be running in order for all MQTT implementations within the Unreal Engine project\nand scripts to work accordingly. You can download and install the application [here](https://mosquitto.org/download/). \n\n### Ensure Python is Installed\n\nYour machine will require the latest version of Python installed on your local machine to enable the compilation and execution of Python scripts.\nOur scripts also use custom packages that you must download and install over ```pip``` or some other package manager in order for them to compile successfully.\n\nHere are the packages in question (this may not be a complete list, so observe what packages are missing based on the compilation errors):\n- paho-mqtt\n- pyarrow\n- pandas\n\n### Testing and Simulating the Environment\n\nBefore running the simulation in Unreal, ensure the ```SessionManager.py``` script is running in the background located in the ```ExternalApps/Scripts``` directory.\n\nTo execute the script:\n```bash\npython SessionManager.py\n```\n\nNow, feel free to simulate the environment in Unreal testing out the terminals, hologram emitter, and various components of the spaceship.\n\nHave fun and thanks for visiting the repository!\n\n## Contact\n\nFor questions or concerns, use this e-mail: ```ianfleming678@gmail.com```\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibfleming%2Fdigital-twins","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fibfleming%2Fdigital-twins","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibfleming%2Fdigital-twins/lists"}