用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/a5c-ai/babysitter --skill mechanism-design命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | mechanism-design |
| description | Skill for mechanism kinematics, dynamics, and motion analysis |
| allowed-tools | ["Read","Write","Glob","Grep","Bash"] |
| metadata | {"specialization":"mechanical-engineering","domain":"science","category":"mechanical-systems","priority":"medium","phase":8,"tools-libraries":["MSC ADAMS","RecurDyn","SolidWorks Motion","MATLAB"]} |
| graph | {"domains":["domain:mechanical-engineering"],"skillAreas":["skill-area:physics-simulation","skill-area:mathematical-reasoning","skill-area:motion-planning"],"roles":["role:systems-integration-engineer","role:research-engineer"]} |
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": {