Skill for mechanism kinematics, dynamics, and motion analysis
Analyzes and designs mechanical motion systems including linkages, cams, and gears for kinematics and dynamics.
npx claudepluginhub a5c-ai/babysitterThis skill is limited to using the following tools:
The Mechanism Design skill provides capabilities for mechanism kinematics, dynamics, and motion analysis, enabling systematic design and optimization of mechanical motion systems.
Gruebler's Equation (planar):
DOF = 3(n-1) - 2j1 - j2
Where:
n = number of links (including ground)
j1 = number of full joints (pin, slider)
j2 = number of half joints (cam, gear)
DOF = 1: Constrained mechanism
DOF = 0: Structure
DOF < 0: Over-constrained
| Mechanism | Links | Joints | DOF | Application |
|---|---|---|---|---|
| Four-bar | 4 | 4 pins | 1 | Motion generation |
| Slider-crank | 4 | 3 pins + 1 slider | 1 | Reciprocating motion |
| Scotch yoke | 4 | 2 pins + 2 sliders | 1 | Exact sinusoidal |
| Quick return | 4 | 3 pins + 1 slider | 1 | Unequal stroke times |
| Geneva | 2 | Cam joint | Intermittent | Indexing |
Grashof criterion:
s + l <= p + q
Where:
s = shortest link
l = longest link
p, q = intermediate links
If satisfied: At least one link can rotate fully
Types:
- Crank-rocker: Shortest link is crank
- Double-crank: Shortest link is ground
- Double-rocker: No full rotation
Loop closure equation:
r2*e^(i*theta2) + r3*e^(i*theta3) - r4*e^(i*theta4) - r1 = 0
Solve for theta3, theta4 given theta2 (input)
Velocity:
omega3 = omega2 * r2 * sin(theta4-theta2) / (r3 * sin(theta4-theta3))
mu = angle between coupler and output link
Ideal: mu = 90 degrees
Acceptable: 40 < mu < 140 degrees
Poor: mu < 30 or mu > 150 degrees
| Type | Motion | Application |
|---|---|---|
| Plate cam | Translating or oscillating follower | High speed |
| Cylindrical cam | Oscillating follower | Indexing |
| Face cam | Translating follower | Compact |
| Globoidal cam | Oscillating follower | High accuracy |
Common profiles:
1. Parabolic (constant acceleration)
s = (1/2) * a * t^2 for first half
Good: Simple, smooth
Bad: Infinite jerk at transition
2. Simple harmonic
s = (h/2) * (1 - cos(pi*t/T))
Good: Zero velocity at ends
Bad: Finite acceleration at ends
3. Cycloidal
s = h * (t/T - sin(2*pi*t/T)/(2*pi))
Good: Zero acceleration at ends
Bad: Higher peak acceleration
4. Modified trapezoid
Combines constant acceleration with transitions
Good: Low peak acceleration
Bad: More complex
tan(alpha) = (dy/dtheta) / (rb + y)
Where:
alpha = pressure angle
dy/dtheta = slope of displacement curve
rb = base circle radius
y = follower displacement
Limit: alpha < 30 degrees (typically)
| Type | Application | Efficiency |
|---|---|---|
| Spur | Parallel shafts | 98-99% |
| Helical | Parallel shafts, quieter | 97-99% |
| Bevel | Intersecting shafts | 97-98% |
| Worm | High ratio, non-reversing | 50-90% |
| Planetary | Compact, high ratio | 97-98% |
Simple gear train:
i = N2/N1 = omega1/omega2
Compound gear train:
i_total = product of individual ratios
Planetary gear train:
i = 1 + Nring/Nsun (sun fixed)
i = 1/(1 + Nsun/Nring) (ring fixed)
Module: m = d/N
Pitch: p = pi * m
Addendum: a = m
Dedendum: b = 1.25 * m
Center distance: C = m * (N1 + N2) / 2
Contact ratio:
CR = (Arc of action) / (Circular pitch)
Minimum CR > 1.2 recommended
Newton-Euler method:
Sum F = m * a_g (for each link)
Sum M_g = I_g * alpha (about mass center)
D'Alembert approach:
Add inertia forces: -m*a, -I*alpha
Solve as static equilibrium
Shaking force = -Sum(m_i * a_i)
Shaking moment = -Sum(I_i * alpha_i + r_i x m_i * a_i)
Balancing strategies:
1. Add counterweights
2. Optimize mass distribution
3. Use multiple cylinders (phase)
{
"mechanism_type": "linkage|cam|gear|custom",
"motion_requirements": {
"input_motion": "rotation|translation",
"output_motion": "rotation|translation",
"motion_profile": "string or array",
"speed": "number (RPM or m/s)"
},
"constraints": {
"space_envelope": "object",
"force_requirements": "number",
"accuracy": "number"
},
"operating_conditions": {
"load": "number",
"speed_range": "array [min, max]",
"duty_cycle": "string"
}
}
{
"mechanism_design": {
"type": "string",
"configuration": "object",
"link_dimensions": "array"
},
"kinematic_results": {
"position_analysis": "array or function",
"velocity_analysis": "array or function",
"acceleration_analysis": "array or function",
"transmission_angle": "number"
},
"dynamic_results": {
"forces": "array",
"torques": "array",
"shaking_forces": "object"
},
"performance_metrics": {
"pressure_angle": "number (cams)",
"contact_ratio": "number (gears)",
"efficiency": "number"
},
"design_documentation": "reference"
}
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use for discovering, retrieving, and improving prompts.
Search, retrieve, and install Agent Skills from the prompts.chat registry using MCP tools. Use when the user asks to find skills, browse skill catalogs, install a skill for Claude, or extend Claude's capabilities with reusable AI agent components.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.