S. Trimpe and R. D’Andrea, The Balancing Cube: A Dynamic Sculpture as Test Bed for Distributed Estimation and Control, IEEE Control Systems Magazine, Dec. 2012, pp. 48-75.
Six autonomous modules balance a cubic structure
The Balancing Cube can
balance on any of its edges or corners. It owes this ability to six rotating mechanisms located on each inner face of the cube. When the mechanisms (simply called modules) are actuated, they exert forces on the cube and shift the center of gravity of the overall system. The modules communicate with each other and coordinate their motion to stabilize the system.
The modules respond by using sensory feedback: when a viewer stands the cube on one of its corners and lets it go – or even pushes it – the cube is able to recover and stabilize.
Cube is an example of a distributed system. Each of the modules is a self-contained unit with
onboard power, sensors, a computer, and a motor that can rotate the
module relative to the rigid structure. Each module's computer
solves an estimation problem: the local
sensor data is fused with data communicated from the other units to derive an
estimate for the orientation of the cube. Commands are sent to the module's motor based on this estimate and a control law. Even though each module makes its own computations, through the joint action of all modules the cube is balanced.
The Balancing Cube is an example of a networked control system. The rotating modules - each equipped with local actuation, sensing, and computation - share their data over a network to coordinate themselves and stabilize the cube. We use the Balancing Cube as a testbed to develop and test algorithms for control and estimation over networked systems.
A focus of our research is on distributed and event-based state estimation for networked systems where multiple (dynamically coupled) sensor-actuator-agents share data over a broadcast network. We have developed algorithms that estimate the full state of the dynamic system on each agent and, at the same time, adaptively manage the use of the shared network so that data is exchanged between the agents only when required in order to meet a certain estimation performance. Such an event where data is transmitted could be an error passing a threshold level, for example. The key idea of the approach is to use system knowledge, in the form of dynamics models, to allow the agents in the network to make predictions about their peers’ measurements and, this way, avoid some of the communication of sensor data: measurements are only transmitted when the predictions are not good enough. We implemented and verified these methods on the Balancing Cube where we use them for feedback control.
In , we present an algorithm for distributed and event-based state estimation where the transmit decision is based on the difference of a sensor measurement and its prediction by a Kalman filter (which uses only the data received over the broadcast network and thus captures the common information of all agents). By this measurement-based triggering rule, sensor update rates can adapt to the need for feedback in real-time. In , this approach is extended to a different class of state estimators, which allow for a straightforward performance analysis of the event-based estimator.
In , we present an estimation algorithms where the transmit decision is based on the variance of the estimation error (variance-based triggering). The method is amenable to offline analysis and, in , we prove for a scalar problem that the resulting transmit schedule is periodic (under certain assumptions), which results in a low-complexity implementation of the transmit decision.
 S. Trimpe and R. D'Andrea, An Experimental Demonstration of a Distributed and Event-based State Estimation Algorithm, IFAC World Congress, 2011, pp. 8811–8818.
 S. Trimpe and R. D'Andrea, Reduced Communication State Estimation for Control of an Unstable Networked Control System, 50th IEEE Conference on Decision and Control and European Control Conference, 2011, pp. 2361-2368. (Supplementary material)
 S. Trimpe, Event-Based State Estimation with Switching Static-Gain Observers, 3rd IFAC workshop on Distributed Estimation and Control in Networked Systems, 2012, pp. 91-96.
 S. Trimpe and R. D’Andrea, Event-Based State Estimation with Variance-Based Triggering, 51st IEEE Conference on Decision and Control, 2012, pp. 6583-6590. (Supplementary material)
While the event-based state estimation methods described above make use of a model of the system dynamics, it is also possible to estimate all states of the Balancing Cube without relying on a dynamic system model, provided measurements from multiple inertial sensors are available simultaneously (which means for the cube that all modules need to exchange their sensor data at every time step).
In , we have developed a model-free method for estimating the tilt of any rigid body with only rotational degrees of freedom (such as the cube). The tilt and its rate of change are computed from measurements by multiple inertial sensors (accelerometers and rate gyros) and the knowledge of the sensor locations on the rigid body. Not relying on a dynamic model means that the estimation method is inherently robust to modeling errors or modification of the system dynamics (for example, when changing the mass configuration of the cube), and that it works irrespective of the rigid body dynamics (such as slow or fast motion).
 S. Trimpe and R. D'Andrea, Accelerometer-based Tilt Estimation of a Rigid Body with only Rotational Degrees of Freedom, IEEE International Conference on Robotics and Automation, 2010, pp. 2630-2636.
To stabilize the cube we implemented a cascaded control architecture consisting of fast inner feedback loops and a slow outer loop. The inner loop controller on each module uses local motor encoder data to control the module's angular velocity. This controller receives velocity commands from an outer loop controller that has global state information and stabilizes the system. Through this architecture nonlinear effects in the actuation like friction or backlash are mitigated from the perspective of the outer controller.
In order to design the stabilizing outer loop controller, one needs a model of the cube including all the inner velocity loops. In , we present a systematic approach for obtaining a simplified description of a multi-loop control system at the slow time scale relevant for the outer control loop. The result is based on a limiting property of the matrix exponential, which we prove in .
 S. Trimpe and R. D'Andrea, A Limiting Property of the Matrix Exponential with Application to Multi-loop Control, Joint 48th IEEE Conference on Decision and Control and 28th Chinese Control Conference, 2009, pp. 6419-6425.
A list of current student projects can be found on the IDSC Theses and Projects Page and on SiROP.
Many students have been helping to make the Balancing Cube happen. Below is a list of past projects and participants:
The Balancing Cube project was initiated in the 2007/2008 project class !and yet it moves. The system design was carried out, all components were selected and tested, and a prototype was built during the class.
Diese Website wird in älteren Versionen von Netscape ohne graphische Elemente dargestellt. Die Funktionalität der Website ist aber trotzdem gewährleistet. Wenn Sie diese Website regelmässig benutzen, empfehlen wir Ihnen, auf Ihrem Computer einen aktuellen Browser zu installieren. Weitere Informationen finden Sie auf
The content in this site is accessible to any browser or Internet device, however, some graphics will display correctly only in the newer versions of Netscape. To get the most out of our site we suggest you upgrade to a newer browser.