This project contains backend flask api with process models and frontend react app. The following processes were simulated:
Tank Filling Model
to simulate liquid flow in the tank with multiple valves
Substance Concentration Model
to simulate substance concentration in the tank with multiple valves
First you need to have a docker-compose installed.
In the directory with docker-compose.yml run the following commands:
docker-compose build
to install all requirements (only first time)
docker-compose up
to run local server ("localhost:8080/" for backend, "localhost:3000/" for frontend)
Add the library name to the requirements.txt
file. Close the docker-compose if running and then build and run it again.
Install libraries using npm and package.json
.
/
list of available processes {GET}
/process
get default simulation config {GET}
/process/<process-slug>
process config and simulation results for default config {GET}
/process/<process-slug>
process config and simulation results for requested config; takes controller slug and tuner slug as query parameters and controller config and tuner config as request body {POST}
Example: /process/concentration-model?controller=pid&tuner=Ziegler-Nichols
/controllers
list of all available controllers {GET}
/controller
get default controller config {GET}
/tuners
list of available tunning methods {GET}
/tuner
get default tuner config {GET}