Progress Toward a Robotic Bat: Modeling, Design, Dynamics, and Control
Alireza Ramezani, Xichen Shi, Jon Hoff,
Soon-Jo Chung, Seth Hutchinson
Jon Hoff (Ph.D student)
Swartz & Breuer, Co-PIβs at Brown University
Bio-inspired flapping flight
Safe Quiet Energy efficient
Overview
Objectives
Robot Morphology
Reduced-order flight apparatus
Modeling
Trajectory planning
Nonlinear and non-affine-in-control tracking problem
Results
Simultaneous kinematics/trajectory design
Future works & conclusion
Maybe a bit overly optimistic...
B2: Robot Morphology Five Degrees of Actuation:
Wings flapping motion
Wing folding and unfolding
Legs dorsoventral movement
Reduced-order flight apparatus Biologically meaningful DoFs
Retraction-protraction
Flexion-extension
Abduction-adduction
Leg Mechanism: Elevation-depression
Bat Configuration Pose, Actuated and Unactuated Joints
π = (π₯, π¦, π§, π, π, π, ππ, ππ)
Center of Mass Position
Body Frame Orientation
(Euler Angles)
Passive Joints
Active Joints
π = π₯, π¦, π§, π, π, π, πππ
It will be convenient to bundle the unactuated degrees of freedom:
π =πππ
Nonlinear Model Aerodynamic and constraint forces
β³ π π + π π, π π + π’ π = π¬π + π¬β±
π¬β± = Generalized Aerodynamic Forces
π¬π = πππ
ππ
ππ = Constraint Forces (kinematic)
πππ
ππ= Jacobian for actuated joints
= [0 | πΌππΓππ]
Nonlinear Model In unactuated and actuated coordinates
We can now partition the system dynamics into unactuated coordinates π and actuated coordinates ππ:
β³1 β³2
β³3 β³4
π π π
+π1 π2π3 π4
π π π
+π’1π’2
=πππππ
π
π + π¬β±
which can be written as:
π π π
=β³1 β³2
β³3 β³4
β1
βπ1 π2π3 π4
π π π
βπ’1π’2
+πππππ
π
π + π¬β±
Trajectory planning Parametrized manifolds
β’ Define ππ π‘, π½ as the desired trajectory of the actuated joints.
β’ The desired trajectory is parameterized by π½, which includes, e.g., flapping frequency, flapping amplitude, etc.
β’ If the actuated joints follow the desired trajectory, the system state will evolve on the manifold:
π = π, π β π―π¬ | π© = 0 with
π© = ππ β ππ(π‘, π½)
Our design goal is to define the desired trajectory ππ(π‘, π½) so that trajectories in π satisfy appropriate performance criteria.
Trajectory planning Constrained dynamics
Parametric Manifold:
π© = 0 with
π© = ππ β ππ(π‘, π½)
We now have two equations governing the system dynamics.
Lagrangian Dynamics:
π π π
=β³1 β³2
β³3 β³4
β1
βπ1 π2π3 π4
π π π
βπ’1π’2
+πππππ
π
π + π¬ β±
This formulation is prone to numerical difficulties due to computations of derivatives...
Trajectory planning Constraint manifold revisited
β’ To ameliorate numerical issues, we consider position, velocity and acceleration constraints:
π© + π 1π© + π 2π© = 0
β’ Computing derivatives (applying the chain rule w.r.t. ππ), we obtain:
π π =ππ©
πππ
β1
βπ 1π© β π 2π© βπ2π©
ππ‘2 β
π
πππ
ππ©
ππππ π π π
This gives an expression for the dynamics of ππ in terms of the desired trajectory ππ π‘, π½ .
Trajectory planning Constrained dynamics revisited
Parametric Manifold:
π π =ππ©
πππ
β1
βπ 1π© β π 2π© βπ2π©
ππ‘2 β
π
πππ
ππ©
ππππ π π π
with π© = ππ β ππ(π‘, π½)
We now have two equations governing the system dynamics.
Lagrangian Dynamics:
π π π
=β³1 β³2
β³3 β³4
β1
βπ1 π2π3 π4
π π π
βπ’1π’2
+πππππ
π
π + π¬ β±
Given a parameterized trajectory ππ π‘, π½ , π½, and initial conditions π π‘0 , π (π‘0), we can compute the evolution of the unactuated states π.
Trajectory planning Gradient-based optimization
Given the constrained system dynamics, we use a shooting-based approach to optimize the choice of desired trajectory:
β’ Enforce periodicity in appropriate coordinates of π. β’ Ensure stability. β’ Ensure that the unactuated coordinates π satisfy
constraints on flight performance. β’ Minimize expended energy.
This is achieved by β’ numerically integrating the system dynamics β’ numerically calculating the gradient of the objective
function to find periodic and feasible solutions β Matlabβs fmincon
can be written as
β³1π + π1π = ββ³2π π β π2π π β π’1 + π¬β±,1 since the Jacobian is zero for the unactuated degrees of freedom.
The unactuated system dynamics given by the top row of
β³1 β³2
β³3 β³4
π π π
+π1 π2π3 π4
π π π
+π’1π’2
= 0 πΌ
π +π¬β±,1π¬β±,2
Nonlinear Control The unactuated system dynamics
The trajectory design gives a desired trajectory for both π and ππ. Since ππ concerns the actuated coordinates, we formulate our tracking problem in terms of the unactuated coordinates π.
Nonlinear Control Non-classic tracking problem
When the constraints π© are satisfied, we have
π π = πππππ‘
+πππππ½
π½
π π =π2ππππ‘2
+π
ππ½
πππππ½
π½ π½ +πππππ½
π½
ππ = ππ
We use a calculus of variations approach to update π½, to give the resulting equivalent dynamics:
β³1π + π1π = ββ³2π π β π2π π β π π β π π
with π a positive definite gain matrix, and ππ a defined reference trajectory.
The actuated coordinates in terms of control input π½
Nonlinear Control Contraction theory
These equivalent dynamics converge exponentially to a predefined desired trajectory ππ when
π π = π π β Ξ π β ππ
since the equivalent dynamics can be written as
β³1π + π1π + π π = 0 for
π = π β π π
From trajectory planning optimization
7-DoF Flapping Model Tailless flapping robot
Degrees of Freedom Flapping
Feathering
Parasagital pitch
Vertical Elevation (z)
Horizontal Position (x)
Control Inputs
Right flapping angle
7-DoF Flapping Model Parametric trajectory
Doman, Oppenheimer, Bolender, Sightorsson, βAttitude control of a single degree of freedom flapping wing micro air vehicle,β AIAA GNC Conf. 2009.
π½ β Flapping frequency and amplitude, feathering angle, etc.
Right feathering angle
7-DoF Flapping Model Simulation
Pit
ch a
ngl
e tr
acki
ng
th
e d
esir
ed a
ngl
e
Feat
her
ing
angl
e
Aerodynamic forces Center of pressure velocities
7-DoF Flapping Model Simulation
This approach relies on a parameterized desired trajectory, and fairly simple wing kinematics... Perhaps we could do better
Bio-Inspired Design Simultaneous optimization of kinematic design and wing trajectory
The Challenge: Design a simplified kinematic model that is capable of achieving wing shapes similar to biological bat throughout wingbeat cycle.
The biological bat has many degrees of freedom, but it is not yet completely understood how these degrees of freedom are coupled to effect wing motion.
Motion capture data can be analyzed to obtain a principal component analysis of the wing shape.
This facilitates comparison between robot and biological bat.
P. Chen, S. Joshi, S. Swartz, K. Breuer, J. Bahlman, G. Reich, βBat Inspired Flapping Flight,β AIAA SciTech, 2014.
πRP
πFE
πAA
πDV
π₯s
πFL π
Optimize link lengths and angle offsets
Robot Bat
Hind Limb
Wing Optimize joint trajectories
Kinematic Parameters
πRP
πFE
πAA
πDV
π₯s
πFL
πΎ1 πΎ2
πΎ3
πΎ4
β1
β2
β3
π2
π1
π2
π3
π
π
π
π¦
π¦
Actuated DOF in RED Black are the results of movement Grey are constant angles
Joint Variables: β’ πRP: Retraction-protraction (shoulder angle) β’ πFE: flexion-extension (elbow angle) β’ πAA: abduction-adduction (wrist angle) β’ πFL: flapping angle wrt. xy plane β’ πDV: dorsoventral movement of hind limb β’ π₯: spindle position
Ten Link Parameters: β’ β1: humerus β’ β2: humerus β’ β3: humerus β’ π2: radius β’ π: wrist β’ π1: finger 1 length β’ π2: finger 2 length β’ π3: finger 3 length β’ π: body length β’ π: hind limb length
Four Angle Parameters: β’ πΎ1, πΎ2, πΎ3, πΎ4
Optimization Iterative optimization of flapping parameters and kinematic parameters
Iteratively optimize
flapping angle trajectory
spindle trajectory
link lengths and offset angles
hind limb trajectory
Optimization Criteria:
β’ Minimize Euclidean distance between selected makers on the biological bat and the corresponding locations on the robot bat.
Preliminary Results β’ Solid diamonds are biological bat
data.
β’ Open circles are for the optimized robot bat design.
Future Work: β’ Use wing shape instead of marker
locations β’ Use Principal Components β’ Parametric, periodic shape
descriptors β’ Incorporate into robot design β’ Incorporate into trajectory
planning
Concluding Remarks
Kinematic design β passive and active joints
Nonlinear dynamics β many unactuated degrees of freedom
Actuated degrees of freedom define a manifold on which the system dynamics evolve
Design actuator inputs to define this manifold, which shapes the system dynamics
Design a nonlinear control to track the desired unactuated dynamics
Preliminary results on 7 dof simulation
Simultaneous kinematics/trajectory design