top of page

Robot Dynamics and Analysis 

Course Description: 

This course covers the dynamics of robotic systems with a focus on the mathematical structure of the dynamics and numerical analysis. Topics will start by reintroducing basic kinematics and dynamics in a more formal mathematical framework before moving on to contact conditions, friction, hybrid dynamical systems, time stepping simulation, and contact invariant optimization. After the course students will be able to write simulation and optimization methods for analyzing robotic systems. Students should have taken a prior course in dynamics, and be comfortable with linear algebra, multivariable calculus, and programming in Matlab.

COMPLEMENTARITY OF PARTICLE MASS

​

​

 

 

 

​

​

​

 

 

 

 

There are two types of complementarity:

1) impact (IV complementarity)

2) liftoff (FA complementarity)

​

Equation of motion used to model system

H = (J , Γ, D, F, G, R)

​

Used MATLAB ode45 simulation. The simulation used continuous dynamics and used guard checks (for ground impacts). At touchdown the guard condition changed. Based on guard condition direction changed and new governing dynamic equations were shifted

​

TIME STEPPING OF PARTICLE MASS

​

​

 

 

 

​

 

​

​

​

Very similar to complementarity problem in terms of dynamic modeling. However the principle to check guard status is completely different. Complementarity uses dynamic checks whereas in this assignment I used time stepping. Time stepping uses an increment like h = 0.01 and will check at ever increment if the mass violates constraints. A problem with this method is if the h is too large a mass can violate a constraint for a critical period of time. Another issue that exists when simulating is zeno (below is a plot demonstrating a failure related to zeno). If this particle mass represented the foot of a direct drive quadruped the foot could be on the ground for a non-negligible period of time and damage the components like small leg motors. Complementarity in this instance is optimal. 

​

​

​

 

 

​

 

 

 

​

​

​

​

​

​

​

 

 

 

DOUBLE INVERTED PENDULUM OPTIMIZATION

​

​

​

​

​

​

​

​

 

 

 

 

Simulated collocation trajectory optimization  for inverted pendulum swing-up. Used fmincon in MATLAB to solve the optimization problem, with an objective function to minimize the thermal cost of actuation. Required external constraints to avoid collisions. The inverted pendulum is a great way to model a robotic arm without added complexity. The number of decision variables when modeling the arm was reduced by adding constraints -- this speeds up computation.

​

Screen%20Shot%202021-03-09%20at%204.52_e
Screen%20Shot%202021-03-09%20at%204.52_e

Guard Constrains:

a1(x, y) = y

a2(x,y)=x+y+1

a3(x,y)=(x−2)2 +(y−1)2 −2

Screen Shot 2021-03-09 at 5.33.38 PM.png

Timeout failure in

simulation due to Zeno

Screen Shot 2021-03-09 at 5.33.34 PM.png

Successful Simulation

Screen%20Shot%202021-03-09%20at%204.48_e
bottom of page