Digital Casting System (DCS) is a Innosuisse project as well as a new novel approach for Smart Dynamic Casting(SDC). This package works to transition automated digital casting systems from the laboratory to the industry scale by overcoming the challenges addressed by inline mixing. DCS involves identifying optimal values for comprehensive system parameters, including processing and material characteristics, while carefully considering specific system requirements.
This package has three parts, which contain PLC controller for control components, DCS library for middleware, robotic control, and data handling; lastly, DCS application uses for real-time data recording and production simulation.
Operating System and Software.
- Windows 10* or Ubuntu 22.04*
- TwinCAT 3 -- version 3.4
- Docker -- version
- Anaconda 3 # change to uv soon.
CAD/CAM software and simulation.
- ABB RobotStudio -- version 2023/2024
- Rhino and Grasshopper -- version 7
TODO: how to use the app
Note
Don`t have to run the programming only for data recording.
python src/dcs_dev/main.py
# enter the file name
....TBCcd app/
run ....Please find more information here under Connect with TwinCAT section.
Note
Only if we want to run with the robot script
docker
# real controller
# clean the stopped container
docker container prune
# compose up and connect with docker container
# Linux/WSL
docker-compose -f ./external_controllers/robot/docker_compas_rrc/real_controller/docker-compose.yml up# windows
docker-compose -f .\external_controllers\robot\docker_compas_rrc\real_controller\docker-compose.yml updocker
# clean the stopped container
docker container prune
# docker compose up
# virtual controller
# Linux/WSL
docker-compose -f ./external_controllers/robot/docker_compas_rrc/real_controller/docker-compose.yml up# windows
docker-compose -f .\external_controllers\robot\docker_compas_rrc\virtual_controller\docker-compose.yml up...TODO
...TODO
The sub-package external_controllers is a package that provides a set of driver to control the concrete casting machines.
More information can be found in digital casting system controller
git clone https://github.com/USI-FMAA/digital_casting_system.git# Update the submoudles
git submodule init
cd external_controllers
git checkout master # checkout the lastest version
git pull
# Alternately way
git submodule foreach git pull origin master
# Update the submoudles
git pull --recurse-submodulesWith UV package manger (super fast package management build by rust)
# On macOS and Linux.
curl -LsSf https://astral.sh/uv/install.sh | sh
# On Windows.
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
uv --versionUV
uv venv --python 3.10
source .venv/bin/activate
uv pip install -e .
# optional
uv pip install .[dev] # install the development dependencies
uv pip install .[docs] # install the documentation dependencies
Alternately with Anaconda package manager
# Create the environment and activate it
conda create --prefix ./.env python=3.10
# Install dependencies
conda activate ./.env
pip install -r requirements.txt
# Install Compas framework
pip install compas
pip install git+git://github.com/WeiTing1991/compas_rrc.git@mainAuthor: Wei-Ting Chen
This package created by WeiTing Chen at USI-FMAA and ETHZurich DFab
- PLC controller driver package
- DCS library with real-time data recording
- DCS application for graphic real-time data recording application