Neck Specification
Overview
The neck assembly provides head articulation for the Salvius robot, enabling camera tracking, natural head movements, and directional audio. The design balances complexity with functionality, offering options from simple single-axis rotation to advanced multi-axis movement using Stewart platform kinematics.
Movement Requirements
Primary Function: Rotation (Yaw)
- Minimum Range: 180° total (±90° from center)
- Recommended Range: 270° total (±135° from center)
- Speed: 45-90° per second
- Precision: ±2° positioning accuracy
- Load Capacity: Support 2-3 kg head assembly
Secondary Functions (Advanced)
- Tilt (Pitch): ±45° forward/backward nod
- Pan (Roll): ±30° side-to-side tilt
- Combined Motion: Smooth transitions between orientations
Design Option 1: Simple Rotation
Direct Drive Configuration
The simplest and most reliable neck design uses a single servo for yaw rotation:
Components
- Servo Motor: High-torque servo, 25-35 kg-cm minimum (MG996R or similar)
- Mounting Plate: 6-10mm plywood or aluminum plate
- Base Bracket: Attaches servo to torso
- Head Mount: Connects servo horn to head assembly
- Bearing (Optional): Large lazy Susan bearing for lateral support
- Slip Ring (Optional): Allows unlimited rotation without cable tangling
Construction
- Mount servo vertically on top of torso with shaft pointing up
- Attach large servo horn or mounting disc to output shaft
- If using bearing, mount bearing around servo with outer race on torso
- Create head mounting plate that attaches to servo horn/bearing
- Route cables through center of rotation or use slip ring
- Attach head assembly to mounting plate
Advantages
- Simple construction with minimal parts
- Reliable operation, few failure points
- Easy to debug and maintain
- Low cost (single servo plus mounting)
- Direct control with standard servo library
Limitations
- Single axis of motion only
- Cable management challenges at extreme rotations
- No nodding or tilting capability
Cable Management for Rotating Neck
Method 1: Service Loop
- Provide extra cable length in a loop below neck
- Loop allows ±180° rotation before cables bind
- Simple but limits continuous rotation
- Requires periodic "unwinding" to center position
Method 2: Slip Ring
- Electrical rotating connector allows unlimited rotation
- 6-12 conductor slip rings available from hobby suppliers
- Routes power and signals through rotating joint
- More expensive (~$15-30) but enables full 360° rotation
- Small signal degradation, not suitable for high-speed data
Design Option 2: Stewart Platform
For multi-axis head movement, a Stewart platform provides 6 degrees of freedom using six prismatic actuators. This advanced design allows for pitch, roll, yaw, and XYZ positioning.
Stewart Platform Overview
A Stewart platform incorporates six prismatic actuators mounted in pairs to the base, crossing over to three mounting points on a top plate. This configuration enables movement in all six degrees of freedom:
- Linear Movement: X (lateral), Y (longitudinal), Z (vertical)
- Rotational Movement: Pitch (nodding), Roll (tilting), Yaw (turning)
Components for Stewart Platform
- Linear Actuators: 6x servos with rack-and-pinion or screw drive (5-10 cm stroke)
- Universal Joints: 12x ball joints or universal joints (2 per actuator)
- Base Plate: Rigid mounting surface (aluminum or thick plywood)
- Top Plate: Head mounting platform
- Actuator Arms: Connecting rods between base and top plate
- Controller: Arduino or Raspberry Pi running inverse kinematics
Kinematics Considerations
Inverse Kinematics
Converting desired head orientation (pitch, roll, yaw) to individual actuator lengths requires:
- 3D transformation matrices
- Iterative solving algorithms
- Real-time calculation capability
- Collision detection to prevent self-interference
Calibration Requirements
- Precise measurement of mounting point positions
- Actuator length calibration at neutral position
- Software limits to prevent mechanical binding
- Testing of full range of motion envelope
Stewart Platform Advantages
- Full 6-DOF movement capability
- Very expressive, life-like head movements
- Can compensate for body tilt (self-leveling)
- Interesting engineering challenge
- Impressive demonstration of robotic capability
Stewart Platform Challenges
- Complex mathematics for inverse kinematics
- Requires 6 synchronized actuators
- Higher cost (6 servos vs. 1-2)
- More failure points
- Difficult to debug mechanical issues
- Requires custom control software
Design Option 3: Two-Axis Neck
A compromise between simple rotation and full Stewart platform complexity:
Configuration
- Base Servo: Yaw rotation (left/right)
- Tilt Servo(s): Pitch movement (nod up/down)
- Total Servos: 2 servos for 2 degrees of freedom, or 3 if using 2 tilt servos for increased range of motion
Construction Approach
- Mount yaw servo vertically on torso (same as simple rotation)
- Attach pitch servo to top of yaw servo output
- Mount pitch servo perpendicular to yaw axis
- Attach head to pitch servo output
- Balance head weight on pitch servo to reduce torque
Advantages Over Simple Rotation
- Adds nodding capability (more expressive)
- Still relatively simple construction
- Standard servo control, no complex kinematics
- Moderate cost increase (one additional servo)
Considerations
- Pitch servo must support full head weight cantilevered
- Use counterweight or spring assist on pitch axis
- Cable routing more complex with two axes
- Total neck height increases with stacked servos
Servo Selection Guidelines
Torque Requirements
Calculate required servo torque based on head weight and lever arm:
- Minimum Torque: Head weight (kg) × Lever arm (cm) × 1.5 safety factor
- Example: 2.5 kg head × 5 cm offset × 1.5 = 18.75 kg-cm minimum
- Recommended: 25-35 kg-cm for reliable operation with margin
Servo Speed
- Standard Speed: 0.15-0.20 sec/60° (typical for MG996R class)
- Fast Movement: 0.10-0.14 sec/60° (higher voltage or specialized servos)
- Trade-off: Faster servos often have lower torque or higher cost
Servo Model Evaluations
| Model | Torque | Speed | Cost | Notes |
|---|---|---|---|---|
| MG996R | 11 kg-cm @ 6V | 0.17 sec/60° | $ | Budget option, marginal for heavy heads |
| MG995 | 13 kg-cm @ 6V | 0.19 sec/60° | $ | Similar to MG996R, slightly higher torque |
| DS3218 | 20 kg-cm @ 6V | 0.16 sec/60° | $$ | Good balance of torque and speed |
| Hitec HS-805BB | 24 kg-cm @ 6V | 0.14 sec/60° | $$$ | High quality, very reliable |
| Dynamixel MX-28 | 24 kg-cm @ 12V | 0.126 sec/60° | $$$$ | Smart servo with position feedback |
Mechanical Design Details
Mounting Considerations
- Servo Orientation: Output shaft vertical for yaw rotation
- Centering: Align servo shaft with desired rotation center
- Vibration Isolation: Rubber grommets reduce gear noise transmission
- Accessibility: Allow servo removal without major disassembly
Load Support
Without Bearing
- Servo shaft supports head weight and lateral forces
- Works for lighter heads (under 2 kg)
- May cause premature servo wear
- Risk of shaft bending under side loads
With Bearing Support
- Large bearing (40-60mm diameter) surrounds servo
- Bearing handles lateral loads, servo only provides rotation torque
- Dramatically extends servo life
- Recommended for heads over 2 kg
- Lazy Susan bearing or large ball bearing
Safety Stops
- Software Limits: Prevent servo commands beyond safe range
- Mechanical Stops: Physical barriers at rotation limits
- Cable Protection: Limit rotation to prevent cable damage
- Emergency Stop: Kill switch accessible during testing
Electrical Integration
Power Requirements
- Voltage: 6V nominal (4.8-7.4V acceptable for most servos)
- Current: Peak 2-3A per servo during movement
- Continuous: 0.5-1A when holding position
- Recommendation: Dedicated 6V power supply with 5A+ capacity
Control Signals
- PWM Signal: 50Hz, 1-2ms pulse width
- Source: Arduino, Raspberry Pi, or servo controller board
- Wiring: Keep signal wires short and away from motor power lines
- Decoupling: Large capacitor (1000μF+) near servo power input
Sensor Integration (Optional)
- IMU: Detect head orientation for self-leveling
- Encoders: Precise position feedback
- Current Sensing: Detect collisions or binding
- Limit Switches: Hardware end stops for safety
Testing and Calibration
Initial Testing (No Head Attached)
- Verify servo moves smoothly through full range
- Check for binding or unusual sounds
- Test at low power first, gradually increase
- Verify center position aligns with mechanical center
- Map PWM values to actual angles
Load Testing (Head Attached)
- Start with servo at neutral, slowly power on
- Test small movements first (±10°)
- Gradually increase range and speed
- Monitor servo temperature during continuous operation
- Check for vibration or oscillation
- Verify cables don't snag during full rotation
Calibration
- Record PWM values at key positions (0°, 90°, 180°, etc.)
- Create lookup table or interpolation function
- Account for mechanical slop and backlash
- Test repeatability: return to same position multiple times
- Document final calibration values for future reference
Maintenance
Regular Checks
- Weekly: Listen for unusual sounds, verify smooth operation
- Monthly: Check fastener tightness, inspect cables for wear
- Quarterly: Lubricate moving parts (bearing, slip ring if used)
- Annually: Complete inspection, replace worn components
Common Issues
- Jittering: Insufficient power, loose connection, or servo failure
- Slow Response: Low voltage, overloaded servo, or binding mechanism
- Position Drift: Mechanical slop, servo wear, or control signal noise
- Clicking Sounds: Stripped gears, binding, or overload condition