This project contains two programs: multiproductrewrite
and multi_robot
. Both programs are designed to help model and manage tasks in a multi-product, multi-robot electroplating environment.
This project relies on the Hadamard_product_counters
library which should be located in the directory neighboring the current one.
If you do not already have this library, you can clone it from the Git repository:
git clone [email protected]:kreijstal/Hadamard_product_counters.git
Please ensure that the Hadamard_product_counters
directory is located next to the electro_plating_lines
directory.
To clone this repository, use the following command:
git clone [email protected]:kreijstal/electro_plating_lines.git
The project includes an init.sh
script for bash that checks/clones the Hadamard_product_counters
dependency and builds the programs.
To use it, navigate to the project directory and run:
./init.sh
If the Hadamard_product_counters
directory exists and is a Git repository, the script will proceed to build the programs. If the directory exists but is not a Git repository, the script will exit with an error message.
If the Hadamard_product_counters
directory does not exist, the script will attempt to clone the repository from GitHub and then build the programs.
If you prefer to compile manually, use the make
command in the project directory.
To compile all programs, run:
make all
After successfully compiling the project, you can run either of the programs using the following commands:
For multiproductrewrite
:
./multiproductrewrite
For multi_robot
:
./multi_robot
Both programs are interactive and will prompt for user input once started. Please follow the on-screen instructions to provide the necessary input.
-
multiproductrewrite
: This program models and manages tasks for electroplating lines with multiple products. -
multi_robot
: This program extends the capabilities ofmultiproductrewrite
by adding the management of multiple robots.
Info there is a small port of this in rust https://git.tu-berlin.de/kreijstal/rust-etvo-electro-platinglines