SlideShare a Scribd company logo
Prototyping Dynamic Robots:
Lessons from the UCSD
Coordinated Robotics Lab
Nick Morozovsky, PhD

Robotics Consultant

March 17, 2015
1
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Outline
• Introduction

• Tools

• Switchblade

• SkySweeper

• Conclusions
2
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Outline
• Introduction
• Tools

• Switchblade

• SkySweeper

• Conclusions
3
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Introduction
• Hardware revolution is underway

• Robotics is a subset, what is a robot anyway?

• Barriers to entry in developing hardware are
plummeting

• Driven by low-cost, capable components,
software tools, and global communications

• The line between hardware and software is being
blurred.
4
http://makezine.com/projects/make-43/smart-rat-trap/
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Introduction
• Proliferation of low-cost and capable
microprocessors and sensors

• 3D Robotics CEO Chris Anderson’s
“peace dividend of the smartphone war”

• Accelerometers, gyroscopes,
magnetometers, light sensors,
cameras, GPS, WiFi, Bluetooth, etc.

• Additive manufacturing (3D printing) has
dropped two orders of magnitude in price

• Rapid prototyping on your desk
5
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Introduction
6
from Cyril Ebersweiler’s Hardware trends 2015 slideshare

http://www.slideshare.net/haxlr8r/hardware-trends-2015

or search: slideshare hardware trends
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Introduction
Robotics Challenges
7
MobilityPerception
Manipulation
“Go get me a
beer from the
fridge”
Stairs
Opening

a door
Sand

Eggs
Unstructured

terrain
Where to

grasp object
Localization

Mapping
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Outline
• Introduction

• Tools
• Switchblade

• SkySweeper

• Conclusions
8
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Mechanical Engineering
• 3D printing

• Multiple materials are here,
and more are coming

• New generation of CAD tools

• TinkerCAD

• OpenSCAD

• Onshape
9
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Electrical Engineering
• Eagle CAD

• SparkFun library

• Fritzing

• Unique breadboard view

• CircuitMaker

• powered by Altium
10
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Electrical Engineering
• Voxel8 Multi-material 3D printer

• Autodesk Project Wire
11
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Software Engineering
• Explosion of single board computers

• Arduino, Raspberry Pi, BeagleBone,
Spark, etc. communities

• Almost any sensor or actuator you’re
trying to interface has already been
interfaced

• Pay attention to licenses and be a
good community member

• ROS: Robot Operating System
12
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Funding
• Bootstrapping

• Accelerators/Incubators

• Increasing number of
hardware accelerators
13
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Crowdfunding
• Just posting on Kickstarter does not guarantee success!
14
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Crowdfunding
15
from Cyril Ebersweiler’s Hardware trends 2015 slideshare

http://www.slideshare.net/haxlr8r/hardware-trends-2015

or search: slideshare hardware trends
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Complementary Filter
• MEMS accelerometer can measure
absolute angle of gravity vector

• Susceptible to high frequency
noise and body accelerations

• MEMS gyroscope can be
integrated to measure incremental
angle

• Susceptible to thermal drift and
integration error

• Use complementary filter to
combine accelerometer and
gyroscope measurements
16
atan2
1/s
Low
Pass
High
Pass
s
Accelerometer
Gyroscope
Encoder
+
+
++
++ ˙
˙✓
✓
µGHP =
1/!c
1/!c + h
, µALP =
h
1/!c + h
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Encoder Velocity Estimation
• Limited by encoder and clock
resolution

• Quadrature sub-periods are not
equal

• Measure four separate periods

• Average multiple periods when
possible (M ≥ 2)

• Bound low speed by time since
last edge (M < 1)
17
A
ARF
B
AFR
BFR BRF
AR BR BR AF AF BF BF AR
ARR
BFF
M =
2!h CPR
⇡
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Lagrangian Dynamics
• Powerful dynamics
formulation

• Apply constraints with
Lagrange multiplier

• Broadly applicable to a
large class of robotic
systems

• Can be applied
programmatically
18
L = T V
d
dt
✓
L
˙qi
◆
L
qi
= Qi
M(q)¨q + F(q, ˙q) = Q
A(q) ˙q = 0
M(q)¨q + F(q, ˙q) = Q + A(q)T
S(q) = null[A(q)]
S(q)T
M(q)¨q + S(q)T
F(q, ˙q) = S(q)T
Q
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Lagrangian Dynamics
19
˙q = S⌫, ¨q = S ˙⌫, ST
M(q)S ˙⌫ + ST
F(q, ˙q) = ST
Q
˙⌫ = [ST
M(q)S] 1
ST
[Q F(q, ˙q)]
¨q = S[ST
M(q)S] 1
ST
[Q F(q, ˙q)]
Q = B⌧ = B[⌃u Z( ˙q)]
˙qr =
¯
S⌫, ¨qr =
¯
S ˙⌫, x =
✓
qr
˙qr
◆
, ˙x = f(x) + (x)u
f(x) =
✓
˙qr
¯
S[ST
M(q)S] 1
ST
[BZ( ˙q) + F(q, ˙q)]
◆
(x) =
✓
0n⇥nu
¯
S[ST
M(q)S] 1
ST
B⌃
◆
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Equilibrium Manifold
• Solve for (unstable) equilibrium manifold from dynamics by setting
accelerations and velocities to zero













• Equivalent to static analysis, setting Newton’s 2nd Law equal to zero and
setting center of mass over contact point

• u* is a feedforward term when the equilibrium requires non-zero control input
20
˙⌫ = [ST
M(q)S] 1
ST
{B[⌃u Z( ˙q)] F(q, ˙q)} = 0nr⇥1
ST
{B[⌃u⇤
Z(0n⇥1)] F(q⇤
, 0n⇥1)} = 0nr⇥1
˜x = x x⇤
, ˜u = u u⇤
˙˜x = f(˜x + x⇤
) + (˜x + x⇤
)(˜u + u⇤
)
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Tools
Linearization & Integral Control
• Linearize about
reference position

• Integrate regulation error

• Discretize with sample
time h
• State feedback matrix
from LQR

• Can be applied
programmatically
21
˙˜x =A˜x + B(˜u + u⇤
)
A =
f(˜x + x⇤
)
˜x ˜x=0
, B = (˜x + x⇤
)
˜x=0
˙⇠ =C˜x, ¯x =
✓
˜x
⇠
◆
, ˙¯x = A¯x + B(˜u + u⇤
)
A =

A 02n⇥nu
C 0ni⇥nu
, B =

B
0ni⇥nu
¯xk+1 =F ¯xk + G(˜uk + u⇤
)
F =eAh
, G =
Z h
0
eA⌘
Bd⌘
u =K
✓
x x⇤
⇠
◆
+ u⇤
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Outline
• Introduction

• Tools

• Switchblade
• SkySweeper

• Conclusions
22
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Switchblade
• Tread assemblies can pivot
w.r.t. the central chassis

• Significantly changes the 

center of mass

• Different modes of locomotion

• Applications: search & rescue,
border patrol, mine exploration,
toy/entertainment, general
research platform

• Patent pending
23
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Switchblade
Perching Dynamics
• Constraint matrices combine no-slip condition and
different stiction states

• Power function accounts for rate of energy
dissipation due to coulomb friction
24
θ
α
ϕ
LT
LC
rmT
mC
w
mS
X
Yρ
w = r( ↵) ⇢(⇡/2 ↵)
P =
µkmgr
sin ↵
( ˙ ˙↵) cT ( ˙↵ ˙✓)
P
˙q
=
0
B
B
@
0
µkmgr
sin ↵ · sgn( ˙ ˙↵)
µkmgr
sin ↵ · sgn( ˙ ˙↵) cT · sgn( ˙↵ ˙✓)
cT · sgn( ˙↵ ˙✓)
1
C
C
A , q =
0
B
B
@
w
↵
✓
1
C
C
A
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Switchblade
Mechanical Design
• Two degree of freedom hip joint

• Two independent torques
transmitted coaxially

• Continuous rotation

• Motors, sensors, and battery in
chassis–simplifies wiring

• Leverage symmetry to reduce unique
part count

• Sheets of plastic laser cut into parts

• Tabs and slots speed up assembly and
reduce the number of fasteners needed
25
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Switchblade
26
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Switchblade
Perching
• Friction compensator improves
performance

• Oscillation is due to stiction

• Performance limited by mass distribution
and friction
27
0 1 2 3 4 5 6 7 8 9 10
−0.5
0
0.5
1
1.5
2
T im e (sec)
Angle(rad)
φ
α
θ
φ∗
α ∗
θ ∗
0 1 2 3 4 5 6 7 8 9 10
−1.92
−1.9
−1.88
−1.86
−1.84
−1.82
−1.8
−1.78
−1.76
T im e (sec)
φ−α(rad)
0 1 2 3 4 5 6 7 8 9 10
−1
−0.5
0
0.5
1
T im e (sec)
˙φ−˙α(rad/sec)
Ex p erim ental a S = 0
Ex p erim ental a S = 0.06
Sim ulation a S = 0
Sim ulation a S = 0.06
φ∗
− α ∗
θ
α
ϕ
LT
LC
rmT
mC
w
mS
X
Yρ
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Outline
• Introduction

• Tools

• Switchblade

• SkySweeper
• Conclusions
28
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
• 2 identical links pivotally
connected by rotary series
elastic actuator (SEA) hub

• 3 position actuated clamp

(a) Open

(b) Rolling - allows axial
translation

(c) Pivoting

• Presented at IROS 2013 in Tokyo
29
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Inchworm
• One pivoting clamp and one rolling clamp

• SEA actuates to increase the angle between the links

• Switch clamp configuration, decrease the angle between the links, repeat
30
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Swing-Up
• One pivoting clamp and
one open clamp

• Sine sweep control input
to the SEA

• Second clamp closes
once it reaches cable

• Useful for installation on
the cable
31
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Backflip
• One pivoting clamp and one open clamp

• Preload SEA, release one clamp, swing to grab other end, repeat

• Circumvent obstacle on the cable
32
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
𝜃
𝜶
x
y
JL ,mL
JL ,mL
JJ
2L
2L
1
2
SkySweeper
Dynamics
• Dynamic constraints depend on
the configuration of the clamps

• 0, 1, or 2 constraints per clamp

• Holonomic vertical constraint
when clamp is rolling or pivoting

• Additional non-holonomic
horizontal constraint when clamp
is pivoting

• Stack applicable constraint
matrices and find orthonormal
basis for null space
33
y = 0
Ay1(q) = (0 1 0 0 0)
˙x = 0
A˙x1(q) = (1 0 0 0 0)
y 2L(cos ✓ + cos ↵) = 0
Ay2(q) = (0 1 2L sin ✓ 0 2L sin ↵)
˙x + 2L( ˙✓ cos ✓ + ˙↵ cos ↵) = 0
A˙x2(q) = (1 0 2L cos ✓ 0 2L cos ↵)
q = x y ✓ ↵
T
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Finite State Machine Controller
• Actions: clamp positions, SEA

• Transitions defined by sensor
readings: spring deflection,
separation angle, cable
detection

• Implemented in code as a
switch structure

• Simulation performed with
switched system of equations
of motion with different
constraint matrices
𝜃+π-𝜶 > 1.9
𝜃+π-𝜶 < 1.0
State 0: Open
Clamp 1: Pivoting
Clamp 2: Rolling
u = -0.65
State 1: Close
Clamp 1: Rolling
Clamp 2: Pivoting
u = 0.40
State 8: Swing 1
Clamp 1: Pivoting
Clamp 2: Open
u = -0.20
State 9: Charge 2
Clamp 1: Pivoting
Clamp 2: Pivoting
u = 1
Cable in grasp of clamp 2
State 7: Charge 1
Clamp 1: Pivoting
Clamp 2: Pivoting
u = -1
𝜶-γ > 1
State 10: Swing 2
Clamp 1: Open
Clamp 2: Pivoting
u = 0.20
𝜶-γ < -1
Cable in grasp of clamp 1
34
State 5: Swing
Clamp 1: Pivoting
Clamp 2: Open
u = 0.7t*sin(π t)
State 6: Hold
Clamp 1: Pivoting
Clamp 2: Pivoting
u = 0
Cable in grasp of clamp 2
Inchworm
Swing-Up
Backflip
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Design
• 3D printed parts with off the shelf electronics 

• 3 position actuated clamp

• Servo drives symmetrically coupled clamp arms

• Magnets align clamps, teeth prevent rotation in pivoting position

• IR emitter and phototransistor pair detect cable

• Series elastic actuator (SEA) hub

• DC motor and two unidirectional torsion springs

• Energy storage for dynamic maneuvers

• Potentiometers measure spring deflection and angle between links
35
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Inchworm
36
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Inchworm
• Simulation matches
experimental results,
although greater spring
deflection is predicted

• 50ms delay in switching
clamp positions

• Unmodeled effects of
slippage and rope vibration
contribute to the
discrepancy between plots
37
0 0.5 1 1.5 2 2.5 3 3.5
0.5
1
1.5
2
2.5
t(s)
LinkSeparation
θ+π−α(rad)
0 0.5 1 1.5 2 2.5 3 3.5
−0.5
0
0.5
1
1.5
t(s)
SpringDeflection
α−γ(rad)
Simulation
Experimental
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Swing-Up
38
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
SkySweeper
Backflip
39
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Outline
• Introduction

• Tools

• Switchblade

• SkySweeper

• Conclusions
40
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Conclusions
Nick’s Rules of Robotics
41
1. Never disassemble a working robot.

1. Always have a demo ready.

2. Video or it didn’t happen.

2. If it works the first time, you’re testing it wrong.

1. How good is good enough? Have defined metrics.

2. If you can’t measure it, you can’t control it.

3. When in doubt, lubricate.
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Conclusions
Nick’s Rules of Robotics
4. Never underestimate the estimation problem.

1. “but it works in simulation”

5. If specs for a part are listed differently in two places, they’re both wrong.

1. How can you validate it yourself? Or deal with uncertainty?

6. Glue, tape, and zip-ties are not engineering solutions (though they might work in
a pinch).

1. You should be able to open your robot.

2. The component that’s hardest to access will be the first to fail.
42
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Conclusions
Nick’s Rules of Robotics
7. Do not leave lithium polymer batteries charging unattended.

1. It’s not worth the risk.

2. Use a charging sack.

8. Always have a complete CAD model, including screws and fasteners, before
constructing your robot.

1. Plan out order of operations for assembly.

2. Have extra parts on hand.
43
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Conclusions
Nick’s Rules of Robotics
9. Avoid using slip rings if at all possible.

1. Intermittent contact, high/variable resistance

10.Clamping collars are always better than set screws.

1. If you have to use set screws (e.g. for cost reasons), use a driving flat
and an appropriate thread-locking agent.

11.Always check polarity before plugging a component into a power source.

1. Label battery connectors and components.
44
ServoCity.com clamping hub
UCSD Coordinated

Robotics Lab
Nick Morozovsky Mar 17, 2015
Conclusions
Acknowledgments
• Advisor: Professor
Thomas Bewley

• Chris Schmidt-Wetekam,
Andrew Cavender

• Members of the
Coordinated Robotics Lab
at UCSD
45

More Related Content

Similar to Prototyping Dynamic Robots (20)

PDF
Mechanism Design and Some Challenges from Perseverance CL24_6225.pdf
houston3dgraphics
 
PDF
SkySweeper: A High Wire Robot
Nick Morozovsky
 
PPTX
qmms_wines.pptx
DanielWines1
 
PDF
ZJPeng.3DSolderBallReconstruction
Zhejian Peng
 
PDF
From qc circuit to qc hardware
Wen-Sen Lu
 
PPTX
NGA’s Position on “Web-Mercator”
National Geospatial-Intelligence Agency
 
PPTX
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
Codemotion
 
PDF
R, Data Wrangling & Kaggle Data Science Competitions
Krishna Sankar
 
PPTX
ECE462 yashashree
Yashashree Wase
 
PDF
Introduction to Quantum Computer
Sarun Sumriddetchkajorn
 
PPTX
Solar System Processing with LSST: A Status Update
Mario Juric
 
PPTX
Morgan uw maGIV v1.3 dist
ddm314
 
PDF
Automatic reading cr39
MOAYYAD ALSSABBAGH
 
PDF
Spicy schematics facebook post collection 2012 13 (SWAN applications)
Piero Belforte
 
PPTX
Shreya.pptx
ShreyaSrivastava296546
 
PPT
introtomotionplanI_meam620_v9_Maxim Likhachev.ppt
MazinAlsaedi1
 
PDF
Rapid Prototyping of Dynamic Robots
Nick Morozovsky
 
PPT
Trends in cmos digital design
Rajesh Roshan
 
PDF
Gao cong geospatial social media data management and context-aware recommenda...
jins0618
 
PDF
Poscat seminar 11
Hyungyu Shin
 
Mechanism Design and Some Challenges from Perseverance CL24_6225.pdf
houston3dgraphics
 
SkySweeper: A High Wire Robot
Nick Morozovsky
 
qmms_wines.pptx
DanielWines1
 
ZJPeng.3DSolderBallReconstruction
Zhejian Peng
 
From qc circuit to qc hardware
Wen-Sen Lu
 
NGA’s Position on “Web-Mercator”
National Geospatial-Intelligence Agency
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
Codemotion
 
R, Data Wrangling & Kaggle Data Science Competitions
Krishna Sankar
 
ECE462 yashashree
Yashashree Wase
 
Introduction to Quantum Computer
Sarun Sumriddetchkajorn
 
Solar System Processing with LSST: A Status Update
Mario Juric
 
Morgan uw maGIV v1.3 dist
ddm314
 
Automatic reading cr39
MOAYYAD ALSSABBAGH
 
Spicy schematics facebook post collection 2012 13 (SWAN applications)
Piero Belforte
 
introtomotionplanI_meam620_v9_Maxim Likhachev.ppt
MazinAlsaedi1
 
Rapid Prototyping of Dynamic Robots
Nick Morozovsky
 
Trends in cmos digital design
Rajesh Roshan
 
Gao cong geospatial social media data management and context-aware recommenda...
jins0618
 
Poscat seminar 11
Hyungyu Shin
 

Recently uploaded (20)

PDF
Meetup Kickoff & Welcome - Rohit Yadav, CSIUG Chairman
ShapeBlue
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
PDF
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
Empowering Cloud Providers with Apache CloudStack and Stackbill
ShapeBlue
 
PPTX
Darren Mills The Migration Modernization Balancing Act: Navigating Risks and...
AWS Chicago
 
PDF
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
PDF
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
PDF
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
PDF
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PPTX
Building a Production-Ready Barts Health Secure Data Environment Tooling, Acc...
Barts Health
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Meetup Kickoff & Welcome - Rohit Yadav, CSIUG Chairman
ShapeBlue
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Empowering Cloud Providers with Apache CloudStack and Stackbill
ShapeBlue
 
Darren Mills The Migration Modernization Balancing Act: Navigating Risks and...
AWS Chicago
 
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Building a Production-Ready Barts Health Secure Data Environment Tooling, Acc...
Barts Health
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Ad

Prototyping Dynamic Robots

  • 1. Prototyping Dynamic Robots: Lessons from the UCSD Coordinated Robotics Lab Nick Morozovsky, PhD Robotics Consultant March 17, 2015 1
  • 2. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Outline • Introduction • Tools • Switchblade • SkySweeper • Conclusions 2
  • 3. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Outline • Introduction • Tools • Switchblade • SkySweeper • Conclusions 3
  • 4. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Introduction • Hardware revolution is underway • Robotics is a subset, what is a robot anyway? • Barriers to entry in developing hardware are plummeting • Driven by low-cost, capable components, software tools, and global communications • The line between hardware and software is being blurred. 4 http://makezine.com/projects/make-43/smart-rat-trap/
  • 5. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Introduction • Proliferation of low-cost and capable microprocessors and sensors • 3D Robotics CEO Chris Anderson’s “peace dividend of the smartphone war” • Accelerometers, gyroscopes, magnetometers, light sensors, cameras, GPS, WiFi, Bluetooth, etc. • Additive manufacturing (3D printing) has dropped two orders of magnitude in price • Rapid prototyping on your desk 5
  • 6. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Introduction 6 from Cyril Ebersweiler’s Hardware trends 2015 slideshare http://www.slideshare.net/haxlr8r/hardware-trends-2015 or search: slideshare hardware trends
  • 7. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Introduction Robotics Challenges 7 MobilityPerception Manipulation “Go get me a beer from the fridge” Stairs Opening
 a door Sand
 Eggs Unstructured
 terrain Where to
 grasp object Localization
 Mapping
  • 8. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Outline • Introduction • Tools • Switchblade • SkySweeper • Conclusions 8
  • 9. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Mechanical Engineering • 3D printing • Multiple materials are here, and more are coming • New generation of CAD tools • TinkerCAD • OpenSCAD • Onshape 9
  • 10. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Electrical Engineering • Eagle CAD • SparkFun library • Fritzing • Unique breadboard view • CircuitMaker • powered by Altium 10
  • 11. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Electrical Engineering • Voxel8 Multi-material 3D printer • Autodesk Project Wire 11
  • 12. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Software Engineering • Explosion of single board computers • Arduino, Raspberry Pi, BeagleBone, Spark, etc. communities • Almost any sensor or actuator you’re trying to interface has already been interfaced • Pay attention to licenses and be a good community member • ROS: Robot Operating System 12
  • 13. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Funding • Bootstrapping • Accelerators/Incubators • Increasing number of hardware accelerators 13
  • 14. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Crowdfunding • Just posting on Kickstarter does not guarantee success! 14
  • 15. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Crowdfunding 15 from Cyril Ebersweiler’s Hardware trends 2015 slideshare http://www.slideshare.net/haxlr8r/hardware-trends-2015 or search: slideshare hardware trends
  • 16. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Complementary Filter • MEMS accelerometer can measure absolute angle of gravity vector • Susceptible to high frequency noise and body accelerations • MEMS gyroscope can be integrated to measure incremental angle • Susceptible to thermal drift and integration error • Use complementary filter to combine accelerometer and gyroscope measurements 16 atan2 1/s Low Pass High Pass s Accelerometer Gyroscope Encoder + + ++ ++ ˙ ˙✓ ✓ µGHP = 1/!c 1/!c + h , µALP = h 1/!c + h
  • 17. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Encoder Velocity Estimation • Limited by encoder and clock resolution • Quadrature sub-periods are not equal • Measure four separate periods • Average multiple periods when possible (M ≥ 2) • Bound low speed by time since last edge (M < 1) 17 A ARF B AFR BFR BRF AR BR BR AF AF BF BF AR ARR BFF M = 2!h CPR ⇡
  • 18. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Lagrangian Dynamics • Powerful dynamics formulation • Apply constraints with Lagrange multiplier • Broadly applicable to a large class of robotic systems • Can be applied programmatically 18 L = T V d dt ✓ L ˙qi ◆ L qi = Qi M(q)¨q + F(q, ˙q) = Q A(q) ˙q = 0 M(q)¨q + F(q, ˙q) = Q + A(q)T S(q) = null[A(q)] S(q)T M(q)¨q + S(q)T F(q, ˙q) = S(q)T Q
  • 19. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Lagrangian Dynamics 19 ˙q = S⌫, ¨q = S ˙⌫, ST M(q)S ˙⌫ + ST F(q, ˙q) = ST Q ˙⌫ = [ST M(q)S] 1 ST [Q F(q, ˙q)] ¨q = S[ST M(q)S] 1 ST [Q F(q, ˙q)] Q = B⌧ = B[⌃u Z( ˙q)] ˙qr = ¯ S⌫, ¨qr = ¯ S ˙⌫, x = ✓ qr ˙qr ◆ , ˙x = f(x) + (x)u f(x) = ✓ ˙qr ¯ S[ST M(q)S] 1 ST [BZ( ˙q) + F(q, ˙q)] ◆ (x) = ✓ 0n⇥nu ¯ S[ST M(q)S] 1 ST B⌃ ◆
  • 20. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Equilibrium Manifold • Solve for (unstable) equilibrium manifold from dynamics by setting accelerations and velocities to zero
 
 
 
 
 
 
 • Equivalent to static analysis, setting Newton’s 2nd Law equal to zero and setting center of mass over contact point • u* is a feedforward term when the equilibrium requires non-zero control input 20 ˙⌫ = [ST M(q)S] 1 ST {B[⌃u Z( ˙q)] F(q, ˙q)} = 0nr⇥1 ST {B[⌃u⇤ Z(0n⇥1)] F(q⇤ , 0n⇥1)} = 0nr⇥1 ˜x = x x⇤ , ˜u = u u⇤ ˙˜x = f(˜x + x⇤ ) + (˜x + x⇤ )(˜u + u⇤ )
  • 21. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Tools Linearization & Integral Control • Linearize about reference position • Integrate regulation error • Discretize with sample time h • State feedback matrix from LQR • Can be applied programmatically 21 ˙˜x =A˜x + B(˜u + u⇤ ) A = f(˜x + x⇤ ) ˜x ˜x=0 , B = (˜x + x⇤ ) ˜x=0 ˙⇠ =C˜x, ¯x = ✓ ˜x ⇠ ◆ , ˙¯x = A¯x + B(˜u + u⇤ ) A =  A 02n⇥nu C 0ni⇥nu , B =  B 0ni⇥nu ¯xk+1 =F ¯xk + G(˜uk + u⇤ ) F =eAh , G = Z h 0 eA⌘ Bd⌘ u =K ✓ x x⇤ ⇠ ◆ + u⇤
  • 22. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Outline • Introduction • Tools • Switchblade • SkySweeper • Conclusions 22
  • 23. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Switchblade • Tread assemblies can pivot w.r.t. the central chassis • Significantly changes the 
 center of mass • Different modes of locomotion • Applications: search & rescue, border patrol, mine exploration, toy/entertainment, general research platform • Patent pending 23
  • 24. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Switchblade Perching Dynamics • Constraint matrices combine no-slip condition and different stiction states
 • Power function accounts for rate of energy dissipation due to coulomb friction 24 θ α ϕ LT LC rmT mC w mS X Yρ w = r( ↵) ⇢(⇡/2 ↵) P = µkmgr sin ↵ ( ˙ ˙↵) cT ( ˙↵ ˙✓) P ˙q = 0 B B @ 0 µkmgr sin ↵ · sgn( ˙ ˙↵) µkmgr sin ↵ · sgn( ˙ ˙↵) cT · sgn( ˙↵ ˙✓) cT · sgn( ˙↵ ˙✓) 1 C C A , q = 0 B B @ w ↵ ✓ 1 C C A
  • 25. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Switchblade Mechanical Design • Two degree of freedom hip joint • Two independent torques transmitted coaxially • Continuous rotation • Motors, sensors, and battery in chassis–simplifies wiring • Leverage symmetry to reduce unique part count • Sheets of plastic laser cut into parts • Tabs and slots speed up assembly and reduce the number of fasteners needed 25
  • 26. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Switchblade 26
  • 27. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Switchblade Perching • Friction compensator improves performance • Oscillation is due to stiction • Performance limited by mass distribution and friction 27 0 1 2 3 4 5 6 7 8 9 10 −0.5 0 0.5 1 1.5 2 T im e (sec) Angle(rad) φ α θ φ∗ α ∗ θ ∗ 0 1 2 3 4 5 6 7 8 9 10 −1.92 −1.9 −1.88 −1.86 −1.84 −1.82 −1.8 −1.78 −1.76 T im e (sec) φ−α(rad) 0 1 2 3 4 5 6 7 8 9 10 −1 −0.5 0 0.5 1 T im e (sec) ˙φ−˙α(rad/sec) Ex p erim ental a S = 0 Ex p erim ental a S = 0.06 Sim ulation a S = 0 Sim ulation a S = 0.06 φ∗ − α ∗ θ α ϕ LT LC rmT mC w mS X Yρ
  • 28. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Outline • Introduction • Tools • Switchblade • SkySweeper • Conclusions 28
  • 29. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper • 2 identical links pivotally connected by rotary series elastic actuator (SEA) hub • 3 position actuated clamp (a) Open (b) Rolling - allows axial translation (c) Pivoting • Presented at IROS 2013 in Tokyo 29
  • 30. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Inchworm • One pivoting clamp and one rolling clamp • SEA actuates to increase the angle between the links • Switch clamp configuration, decrease the angle between the links, repeat 30
  • 31. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Swing-Up • One pivoting clamp and one open clamp • Sine sweep control input to the SEA • Second clamp closes once it reaches cable • Useful for installation on the cable 31
  • 32. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Backflip • One pivoting clamp and one open clamp • Preload SEA, release one clamp, swing to grab other end, repeat • Circumvent obstacle on the cable 32
  • 33. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 𝜃 𝜶 x y JL ,mL JL ,mL JJ 2L 2L 1 2 SkySweeper Dynamics • Dynamic constraints depend on the configuration of the clamps • 0, 1, or 2 constraints per clamp • Holonomic vertical constraint when clamp is rolling or pivoting • Additional non-holonomic horizontal constraint when clamp is pivoting • Stack applicable constraint matrices and find orthonormal basis for null space 33 y = 0 Ay1(q) = (0 1 0 0 0) ˙x = 0 A˙x1(q) = (1 0 0 0 0) y 2L(cos ✓ + cos ↵) = 0 Ay2(q) = (0 1 2L sin ✓ 0 2L sin ↵) ˙x + 2L( ˙✓ cos ✓ + ˙↵ cos ↵) = 0 A˙x2(q) = (1 0 2L cos ✓ 0 2L cos ↵) q = x y ✓ ↵ T
  • 34. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Finite State Machine Controller • Actions: clamp positions, SEA • Transitions defined by sensor readings: spring deflection, separation angle, cable detection • Implemented in code as a switch structure • Simulation performed with switched system of equations of motion with different constraint matrices 𝜃+π-𝜶 > 1.9 𝜃+π-𝜶 < 1.0 State 0: Open Clamp 1: Pivoting Clamp 2: Rolling u = -0.65 State 1: Close Clamp 1: Rolling Clamp 2: Pivoting u = 0.40 State 8: Swing 1 Clamp 1: Pivoting Clamp 2: Open u = -0.20 State 9: Charge 2 Clamp 1: Pivoting Clamp 2: Pivoting u = 1 Cable in grasp of clamp 2 State 7: Charge 1 Clamp 1: Pivoting Clamp 2: Pivoting u = -1 𝜶-γ > 1 State 10: Swing 2 Clamp 1: Open Clamp 2: Pivoting u = 0.20 𝜶-γ < -1 Cable in grasp of clamp 1 34 State 5: Swing Clamp 1: Pivoting Clamp 2: Open u = 0.7t*sin(π t) State 6: Hold Clamp 1: Pivoting Clamp 2: Pivoting u = 0 Cable in grasp of clamp 2 Inchworm Swing-Up Backflip
  • 35. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Design • 3D printed parts with off the shelf electronics • 3 position actuated clamp • Servo drives symmetrically coupled clamp arms • Magnets align clamps, teeth prevent rotation in pivoting position • IR emitter and phototransistor pair detect cable • Series elastic actuator (SEA) hub • DC motor and two unidirectional torsion springs • Energy storage for dynamic maneuvers • Potentiometers measure spring deflection and angle between links 35
  • 36. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Inchworm 36
  • 37. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Inchworm • Simulation matches experimental results, although greater spring deflection is predicted • 50ms delay in switching clamp positions • Unmodeled effects of slippage and rope vibration contribute to the discrepancy between plots 37 0 0.5 1 1.5 2 2.5 3 3.5 0.5 1 1.5 2 2.5 t(s) LinkSeparation θ+π−α(rad) 0 0.5 1 1.5 2 2.5 3 3.5 −0.5 0 0.5 1 1.5 t(s) SpringDeflection α−γ(rad) Simulation Experimental
  • 38. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Swing-Up 38
  • 39. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 SkySweeper Backflip 39
  • 40. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Outline • Introduction • Tools • Switchblade • SkySweeper • Conclusions 40
  • 41. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Conclusions Nick’s Rules of Robotics 41 1. Never disassemble a working robot. 1. Always have a demo ready. 2. Video or it didn’t happen. 2. If it works the first time, you’re testing it wrong. 1. How good is good enough? Have defined metrics. 2. If you can’t measure it, you can’t control it. 3. When in doubt, lubricate.
  • 42. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Conclusions Nick’s Rules of Robotics 4. Never underestimate the estimation problem. 1. “but it works in simulation” 5. If specs for a part are listed differently in two places, they’re both wrong. 1. How can you validate it yourself? Or deal with uncertainty? 6. Glue, tape, and zip-ties are not engineering solutions (though they might work in a pinch). 1. You should be able to open your robot. 2. The component that’s hardest to access will be the first to fail. 42
  • 43. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Conclusions Nick’s Rules of Robotics 7. Do not leave lithium polymer batteries charging unattended. 1. It’s not worth the risk. 2. Use a charging sack. 8. Always have a complete CAD model, including screws and fasteners, before constructing your robot. 1. Plan out order of operations for assembly. 2. Have extra parts on hand. 43
  • 44. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Conclusions Nick’s Rules of Robotics 9. Avoid using slip rings if at all possible. 1. Intermittent contact, high/variable resistance 10.Clamping collars are always better than set screws. 1. If you have to use set screws (e.g. for cost reasons), use a driving flat and an appropriate thread-locking agent. 11.Always check polarity before plugging a component into a power source. 1. Label battery connectors and components. 44 ServoCity.com clamping hub
  • 45. UCSD Coordinated
 Robotics Lab Nick Morozovsky Mar 17, 2015 Conclusions Acknowledgments • Advisor: Professor Thomas Bewley • Chris Schmidt-Wetekam, Andrew Cavender • Members of the Coordinated Robotics Lab at UCSD 45