ICCC

International Cupadi Control Competition

Instructions: Navigate through the tabs below representing different dynamic systems. In each tab, study the equations, write your custom control law in JavaScript syntax (e.g., u = -K1*theta - K2*thetadot), and hit "Test" to run the simulation. Once you achieve acceptable design metrics, click "Submit" to record your score on the leaderboard.

System Model & Variables

The nonlinear equations of motion for the 2D Inverted Pendulum on a cart are given by:

$$ \ddot{x} = \frac{u + m l \sin(\theta) \dot{\theta}^2 - m g \sin(\theta) \cos(\theta)}{M + m(1 - \cos^2(\theta))} $$
$$ \ddot{\theta} = \frac{(M + m) g \sin(\theta) - \cos(\theta) (u + m l \sin(\theta) \dot{\theta}^2)}{l (M + m(1 - \cos^2(\theta)))} $$

State Variables:

  • x: Cart Position (m)
  • xdot: Cart Velocity (m/s)
  • theta: Pendulum Angle (rad)
  • thetadot: Angular Velocity (rad/s)

Parameters:

  • M = 1.0 kg (Cart Mass)
  • m = 0.1 kg (Pendulum Mass)
  • l = 0.5 m (Length to CoM)
  • g = 9.81 m/s² (Gravity)

Visualization & Charts

Time: 0.00s
Score: 0
Status: Idle

Control Law Design

Define the control law `u`. You have access to `x, xdot, theta, thetadot`.