Kinetic Art Series — Suspended Spheres (WIP)
Challenge
Develop a robust and silent kinetic sculpture system suitable for permanent architectural installations. The system needed to provide precise, fluid motion, integrate advanced motion control, and incorporate robust safety protocols for continuous, unattended operation.
Work in Progress
Multi-Layered Control Architecture
- A sophisticated, multi-layered control pipeline was designed to decouple creative logic from hardware control. TouchDesigner generates high-level artistic motion data, which is transmitted via OSC over Ethernet to a Raspberry Pi 4.
Intelligent Translator & Safety Watchdog
- A custom Python middleware on the Raspberry Pi acts as a translator, converting normalized TouchDesigner data into G-Code commands for Klipper firmware. This layer also implements a critical “Watchdog” timer, ensuring that if the network connection is lost, the sculpture automatically decelerates to a safe, pre-defined “Home” position.
Precision Motion Control
- Klipper firmware was integrated to handle real-time kinematic planning, trapezoidal velocity ramping, and sub-millimeter precision for the stepper motors. This ensures smooth acceleration, deceleration, and highly accurate positioning of the suspended spheres.
Silent Operation
- The system utilizes a BigTreeTech Octopus v1.1 control board with TMC2209 drivers operating in StealthChop mode, achieving near-silent operation crucial for high-end environments.
Real-Time Digital Twin
- Implemented a 3D visualizer using custom GLSL vertex shaders that share the exact mathematical shaping functions as the motor controller. This provides an accurate, real-time preview of the physical motion, allowing users to visualize complex algorithms before engaging the hardware.
Ambient Control Interface
- Designed a touch-driven control surface that defaults to an “Ambient Mode” displaying live weather and time data when idle. The interface utilizes Python-based state management to handle smooth, interpolated transitions between the active control menus and the passive information display.