Skip to content

Strength, torque and failure ​

Will a printed leg break, bend or tear out its screws? This page covers the mechanics behind that question: torque, stress and strain, bending, buckling, joints and safety factors. Each formula is worked through with Strido's own numbers. The same formulas run as an automatic check on every design change.

In Strido

Gate: python -m strido_verify.strength (part of make verify) computes 19 checks from the printed STLs, the leg geometry and the fit report; results in the strength report. Inputs: hardware/strength.yaml (loads, PETG and screw data with sources). Decision: ADR-010: the long link's buckling, once the one known weak point, fixed by the stiff long link (no check needs an exception now). Each part's results appear on its page in the print kit and the shop. The forces in the legs come from statics and dynamics.

Torque: force times lever ​

A torque T (German Drehmoment) is a force F acting at a distance r from an axis. Only the force component at right angles to the lever turns the axis. With α the angle between lever and force:

T=rFsin⁡α[Nm]=[m]⋅[N]

In vector form this is the cross product T=r×F. Servo datasheets give torque in kg·cm: the weight of 1 kg hanging 1 cm from the axis. With g=9.81m/s2:

35kgcm=35⋅9.81N⋅0.01m=3.43Nm(SPT5435LV at 6.0 V, stall)

Read backwards, the same formula gives the force a servo can push through an arm. The knee-drive arm horn is r=24mm:

F=Trsin⁡α=3.43Nm0.024m⋅1.0=143N  (α=90∘),3.430.024⋅0.68=211N  (worst angle within the joint limits)

Small levers and flat angles turn modest torques into large forces. As α→0 the force grows without bound: that is the dead point (toggle) of a linkage. The check sweeps every pose inside the joint limits and keeps the largest force.

Where the loads come from ​

  1. Weight and landings. The robot weighs mg=3.07⋅9.81=30.1N. While it trots, one diagonal pair of feet carries it. A hard landing multiplies the force by an impact factor k. The check assumes k=3 on two feet:
Ffoot=kmg2=3⋅30.12=45.2N

(an assumption; measured trotting dogs peak at about 1–1.2 × their weight per front leg).

  1. The servos themselves. Each servo pushes with at most its stall torque Tstall, and that is the design load for the joints. A landing would need FfootLtibia=45.2⋅0.124=5.6Nm at the knee. The knee servo applies only 3.07Nm there, so the knee gives way and the servo is back-driven. Back-driving a geared servo takes more than its stall torque, though. With forward and reverse gear efficiencies ηf and ηr it takes roughly Tstall/(ηfηr), about 1.5–3 × (an estimate). Hard impacts can therefore exceed the design loads, and the safety factors have to cover that. Pins and bearings carry the full landing force along the leg.

Stress and strain ​

Load on a part is spread over its cross-section. Stress σ is force per area, in N/mm2=MPa. Strain ε is the relative stretch ΔL/L. For small strains most materials are linear-elastic (Hooke's law), with Young's modulus E:

σ=FA,ε=ΔLL,σ=Eε

PETG has E≈1.5GPa and yields at about 47MPa; Hooke's law would put that at ε=47/1500≈3%, the data sheet measures 5% because PETG softens before it yields. Steel has E≈200GPa, so for the same stress it stretches 130 times less. Beyond the yield strength the part deforms permanently. Beyond the tensile strength it breaks.

Real parts carry several stresses at once (tension, bending, shear). The von Mises equivalent stress turns them into one number to compare with the tensile yield strength. For normal stress σ plus shear τ:

σv=σ2+3τ2⇒τallow=σallow3≈0.577σallow

Bending ​

A beam bent by a moment M stretches on one side and compresses on the other. The stress grows linearly from the neutral axis (zero stress) to the outermost fibre at distance c. Euler–Bernoulli beam theory gives:

σ(y)=MyI,σmax=McI=MW,I=∫Ay2dA,W=Ic

I is the second moment of area: it measures how far the material sits from the neutral axis. W is the section modulus. For a solid rectangle of width b and height h, bent across h:

I=bh312,W=bh26

Height counts with its cube: doubling the height makes a link 8 times stiffer and 4 times stronger in bending. That is why I-beams put their material far from the middle.

Printed parts are mostly shells. The slicer profile prints 3 perimeters (1.2 mm) and only 30 % gyroid infill. The check computes I and W for the 1.2 mm walls only and ignores the infill, which is conservative. It takes 41 sections along each link and uses the weakest one. Example: the femur's weakest section has W=236mm3 in the leg plane, and the thigh servo applies M=3430Nmm:

σ=3430Nmm236mm3=14.5MPa,S=4714.5=3.2

Printed plastic is anisotropic ​

An FDM part is a stack of welded layers. Prusament's PETG data sheet gives:

DirectionStrength
Along the layers (printed flat)47MPa tensile yield
Across the layers (layer adhesion)18±4MPa

Printed parts usually fail by pulling layers apart. They tear (German reißen) along a layer line, often at a sharp corner where the stress concentrates. That is why the print list lays the links, femurs and tibias flat. Their bending stress then runs along the layers. The check uses 47MPa when a link lies flat and 18MPa when its long axis points up in its print orientation.

Safety factor ​

S=allowableactual

The check fails below S=1.5 and warns below 2.0. FDM strength scatters from printer to printer and PETG creeps under a standing load. Repeated loading also causes fatigue: millions of steps at a stress well below the static strength can grow a crack. None of that is in a static calculation, so the margin covers it. On the robot the lowest factors are the tibia halves (S=2.2) and the long link's buckling (S=2.5, next section), which was far below everything else until the link was redesigned.

Buckling ​

A slender bar in compression does not crush. It suddenly bows sideways once the force reaches Euler's critical load. The deflected bar is in equilibrium when EIw″+Fw=0. The smallest non-zero solution of this equation gives:

Fcr=π2EI(KL)2

L is the pin spacing and K the effective-length factor of the end conditions: 1.0 for pinned ends, 0.5 for clamped ends, 0.7 for one of each. Below Fcr nothing visible happens. At Fcr the bar loses its stiffness against sideways deflection.

The upstream long knee link is a bar 5mm wide in the leg plane and 8mm across it, 130mm between its pins. In the leg plane its ends turn freely on pins (K=1), and its walls give I≈75mm4:

Fcr=π2⋅1500MPa⋅75mm4(130mm)2≈65NFknee servo, worst pose=192NS≈0.34

That made it the robot's weakest point by far. Standing loads it with about 0.70Nm/(0.024m⋅sin⁡86∘)≈29N (S≈2.2; see statics and dynamics), so it held in normal walking, but a knee pushing at stall against a blocked foot or a hard stop bends it sideways (ADR-010).

Because I∝h3, width in the leg plane is what buys stiffness. Strido therefore prints a stiff long link (stiff_long_link): the same pins and bushing eyes, but a 10×10mm shaft. With 1.2mm walls only, a hollow square gives I=(104−7.64)/12≈555mm4, more than seven times the upstream bar:

Fcr=π2⋅1500MPa⋅555mm4(131mm)2≈480NS≈480192≈2.5

The gate measures the printed STL section by section and reports S=2.53. A wider part also needs room: centred on the pin line, the link came within 0.25mm of the femur at the stretched knee, so its shaft sits 2mm off the pin line, away from the femur. Every neighbour keeps at least 1mm, and the joint limits did not change.

Screws in shear and in printed holes ​

A screw that clamps two parts which try to slide past each other is loaded in shear. The stress is spread over the tensile stress area As (5.03mm2 for M3). When a torque T is carried by n screws on a bolt circle of radius r:

F=Tnr,τ=FAs

The kit's DIN 912 A2-70 stainless screws have a yield strength of Rp0.2=450MPa, so τallow=0.577⋅450=260MPa. The femur is bolted to its horn with 4× M3 on r=7mm:

F=3.434⋅0.007=122N,τ=1225.03=24MPa,S=10.7

The screw is rarely the problem. The plastic around it is. The hole bearing pressure is the force over the projected area of the hole (diameter d, material thickness t):

p=Fdt

For the hip horn screws in the servo mount this is 17.9MPa against 47MPa (S=2.6), the lowest of the screw joints.

Pull-out and tightening torque ​

A thread-forming screw in a printed pilot hole holds by the plastic thread it cuts. Pulled hard enough, it shears out a cylinder of plastic (ausreißen) of diameter d and engaged length Le. The shear strength across the layers is τ=0.577⋅18=10.4MPa:

Fpull=τπdLe

Tightening turns torque into axial preload. Most of the torque goes into friction in the thread and under the head. The nut factor k (about 0.2 for dry stainless threads) lumps all of that into one number:

T=kFd

So every printed pilot has a torque that strips it. Example: the knee axle screws engage Le=4.0mm of the femur:

Fpull=10.4⋅π⋅3⋅4=392N,Tstrip=0.2⋅392N⋅0.003m=0.24Nm

Tighten to at most half of that, about 0.12Nm. That is a gentle two-finger turn on the short arm of a 2.5 mm hex key: snug, not tight. The strength report lists the limit for every printed pilot (0.05–0.35 N·m). For comparison, an M3 A2-70 screw into a steel nut may take up to about 1.26Nm (Bossard, μ=0.2), ten times more.

Bearings ​

Ball bearings have a static load rating C0: the load that dents the races permanently. The static safety factor is S0=C0/Fr. The two knee bearings share the knee force (237 N: landing plus the largest link force). Each 633ZZ therefore sees 118N against C0=490N (Koyo), S0=4.2.

Rotating bearings also wear out by fatigue. Their rating life in millions of revolutions follows from the dynamic rating C and the equivalent load P:

L10=(CP)3[106 revolutions]

90 % of bearings reach this life. The knee joints only oscillate through a small angle, so the static rating matters more here. The kit's unbranded bearings are assumed no better than the branded ratings.

Check yourself ​

  1. A servo is rated 25 kg·cm. What force can it push through a 20 mm arm at right angles?
  2. Why does a printed link lie flat on the bed rather than stand up?
  3. You make a link 1.5 × thicker. How do its bending strength and its buckling load change?
  4. What limits the bending moment in the legs, the landing or the servo?
  5. A pilot hole engages 6 mm of an M3 screw. What is the maximum tightening torque by this page's rule?
Answers
  1. T=25⋅9.81⋅0.01=2.45Nm; F=2.45/0.020=123N.
  2. So that bending stress runs along the layers (47MPa) instead of across them (18MPa layer adhesion).
  3. Bending across that thickness: W∝h2, so 2.25×. Buckling across it: I∝h3, so 3.4×.
  4. The servo's stall torque is the design load: the knee gives way above it. Back-driving a geared servo takes more than its stall torque, so hard impacts can exceed the design load; pins and bearings always see the full landing force.
  5. F=10.4⋅π⋅3⋅6=588N; Tstrip=0.2⋅588⋅0.003=0.35Nm; tighten to at most about 0.18Nm.

Further reading ​

MIT licence. Mechanical design derived from Yertle by Jerome Graves. CAD, simulation and native tests are not hardware evidence — see Verification.