064-0026-00L Introduction to Computational Methods for Digital Fabrication in Architecture
This PhD-level course introduces digital fabrication methods and tools building up on the theoretical and practical knowledge acquired in the prerequisite course. Students learn fundamentals of robotics, robot kinematics and planning, and basics of robot control applied in the domain of architecture and digital fabrication using the COMPAS framework and open source tools.
Lecture | Date | Session content | Session leads |
---|---|---|---|
01 | 23.02. | Introduction Introduction to digital fabrication methods and the COMPAS ecosystem for digital fabrication: core, fab, rrc, slicer. Brief overview of core data structures (network, mesh). Remote procedure calls. ๐Go to lecture |
All |
02 | 02.03. | Robotic fundamentals Introduction to robotics: anatomy of an industrial robot, coordinate systems, transformations. Brief intro to kinematic functions and path planning. ๐Go to lecture |
GKR (RR, GC) |
03 | 09.03. | Robot models Models from URDF, programmatic models. Robot model visualization in Rhino / Grasshopper. Forward kinematics of open chain manipulators. Assignment: model your own robot. ๐Go to lecture |
GKR (RR, GC) |
04 | 16.03. | ROS & MoveIt in the design environment Introduction to ROS, topics, services, actions. Basic interprocess communication via ROS nodes. Reproducible ROS environments with Docker. Robot planning: forward and inverse kinematic functions, cartesian and kinematic planning. MoveIt integration from the parametric design environment. Assignment: Planning with MoveIt ๐Go to lecture |
GKR (RR, GC) |
05 | 30.03. | Path planning Cartesian and kinematic path planning using MoveIt. Planning scene operations. End effectors and discrete build elements. ๐Go to lecture |
GKR (RR, GC) |
06 | 06.04. | Assembly of discrete elements I Brief introduction to directed acyclic graphs. Modelling assembly processes as DAGs. Reachability Maps. ๐Go to lecture |
GKR (RR, GC) |
07 | 13.04. | Assembly of discrete elements II Applied exercise from design to planning fabrication for an assembly of discrete elements and preparation for control exercise. ๐Go to lecture |
GKR (RR, GC) |
08 | 27.04. | Robot control with COMPAS RRC Online non-real time control of industrial robots. Components of an RRC deployment. Communication primitives (blocking, futures, cyclic). Instructions. Multi controller & location coordination. ๐Go to lecture |
GKR (RR, GC) |
09 | 04.05. | Assembly of discrete elements III Continued applied exercise from planning data to robot control for an assembly of discrete elements. |
GKR (RR, GC) |
10 | 11.05. | COMPAS SLICER: Basics Introduction to COMPAS SLICER (presentation). Planar slicing of simple geometry Introducion to scalar field slicing. ๐Go to lecture |
DBT & GKR (IM, JB) |
11 | 18.05. | COMPAS SLICER: Advanced Introduction to non-planar slicing. Non-planar slicing of a geometry. Simulation and planning of robotic motion with COMPAS RRC. ๐Go to lecture |
DBT & GKR (IM, JB) |
12 | 25.05. | Recap: Design to Fabrication Workflows ๐Go to lecture |
GKR (RR, GC) |
13 | 01.06. | Advancing computational research Research reproducibility and Upstreaming research output. ๐Go to lecture |
GKR (RR, GC) |
Links: Course info on ETHZ Catalog | Slack workspace | COMPAS docs
- Understand fundamentals of robotics, coordinate systems, transformations and orientation representations.
- Learn forward and inverse kinematic functions and their application.
- Learn Cartesian and kinematic robot planning methods
- Apply these concepts to design and implement digital fabrication processes.
- Gain an understanding of different robot control methods and their application.
- Learn how to generate fabrication data for a (robotic) 3D printing process using a custom slicing method.
Lectures, tutorials and project-based exercises will focus on:
- Introduction to fundamentals of robotics.
- Introduction to COMPAS framework and core extensions for digital fabrication (fab, rrc, slicer)
- Robot model representations.
- Robot forward and inverse kinematics.
- Robot path planning: Cartesian motion planning and kinematic motion planning, planning scene and collision detection.
- Integration of planning tools into parametric design environment (CAD).
- Overview and usage of ROS (Robot Operating System).
- Design of digital fabrication processes (assembly of discrete elements, 3D printing, etc.).
- Minimum OS: Windows 10 Pro or Mac OS Sierra 10.12
- Anaconda 3
- Docker Desktop After installation on Windows, it is required to enable "Virtualization" on the BIOS of the computer.
- Rhino 6/7 & Grasshopper
- Visual Studio Code: Any python editor works, but we recommend VS Code + extensions as mentioned in our docs
We use conda
to make sure we have clean, isolated environment for dependencies.
First time using conda
?
Make sure you run this at least once:
(base) conda config --add channels conda-forge
(base) conda env create -f https://dfab.link/fs2022.yml
(base) conda activate fs2022
(fs2022) python -m compas_rhino.install -v 7.0
(fs2022) cd Documents
(fs2022) git clone https://github.com/compas-teaching/COMPAS-II-FS2022
(fs2022) python -m compas
Yay! COMPAS is installed correctly!
COMPAS: 1.14.1
Python: 3.8.10 | packaged by conda-forge | (default, May 11 2021, 06:25:23) [MSC v.1916 64 bit (AMD64)]
Extensions: ['compas-fab', 'compas-cgal', 'compas-rrc', 'compas-slicer']
To update your environment:
(fs2022) conda env update -f https://dfab.link/fs2022.yml