Numerical Dynamics

The moro.dynamics module evaluates the symbolic dynamic model of a moro.core.Robot numerically and provides time-domain simulation.

Numerical dynamics evaluation and time-domain simulation for Moro.

class moro.dynamics.DynamicsSolution(t: ndarray, q: ndarray, qd: ndarray, qdd: ndarray, success: bool, message: str, method: str)[source]

Bases: object

Time-major numerical solution of the robot equations of motion.

property dof
property duration
message: str
method: str
q: ndarray
qd: ndarray
qdd: ndarray
property samples
success: bool
t: ndarray
moro.dynamics.forward_dynamics(robot, q, qd, tau, *, parameters=None)[source]

Evaluate numerical forward dynamics at one robot state.

moro.dynamics.inverse_dynamics(robot, q, qd, qdd, *, parameters=None)[source]

Evaluate numerical inverse dynamics at one robot state.

moro.dynamics.simulate(robot, t_span, q0, qd0=None, *, tau=None, parameters=None, t_eval=None, method='RK45', rtol=None, atol=None, max_step=None)[source]

Integrate the robot equations of motion with SciPy solve_ivp.

moro.dynamics.state_derivative(robot, t, state, tau=None, *, parameters=None)[source]

Return [qd, qdd] for a state ordered as [q, qd].