Back to Robot Mechanism

5.2.4 Padding

The padding subsystem provides safe, realistic striking targets and embeds impact sensing for training analytics. It must absorb repeated high-velocity strikes without transmitting dangerous forces to internal mechanisms or the user, while allowing embedded IMU sensors to detect each impact.

Requirements & Considerations

This subsystem addresses DO-1 (Performance Analytics) and DO-4 (Adaptive Fight Intelligence). Requirements were derived from the need to absorb repeated punch impacts safely and provide strike-zone discrimination for training analytics.

System Requirements

The following system-level requirement is inherited from the Robot Mechanism (Section 5.2) requirements table and governs all padding design decisions:

ID Requirement Source
RM-6 Absorb repeated strikes without damage; provide impact detection across all three target zones (Head, Celiac Plexus, Liver) DO-1 (Performance Analytics), DO-4 (Adaptive Fight Intelligence), Appendix 6

Subsystem Acceptance Criteria

The following acceptance criteria were derived from design decisions specific to this subsystem that introduce failure modes not captured by the system-level requirement above. PAD-AC-1 arises because RM-6 states "provide impact detection" but does not specify a minimum detection rate: the choice to use an IMU threshold-based algorithm (L2 norm ≥ 2.0 g) introduces a miss-detection failure mode driven by threshold calibration, sensor placement, and padding damping. A 95% true-positive rate is needed to make training analytics meaningful. PAD-AC-2 arises because RM-6 does not specify that the sensing system must differentiate force intensity: the IMU L2 vector norm response must be monotonically ordered (light < medium < heavy) for the analytics layer to provide meaningful skill-level feedback. This is a data-quality failure mode not captured by any RM code.

ID Acceptance Criterion Derives From Verification Test
PAD-AC-1 IMU strike detection rate ≥ 95% true positive across all three zones (60-punch controlled test) IMU threshold algorithm (L2 norm ≥ 2.0 g); detection-rate failure mode not specified in RM-6 20 controlled punches × 3 zones = 60 total; ≥ 57 detected for pass
PAD-AC-2 Impact force differentiation monotonic: mean L2 norm light < medium < heavy (3 users, one-way ANOVA p < 0.05) IMU L2 norm analytics (Section 5.2.4.2); force-differentiation quality not addressed in RM-6 3 users × 30 punches (10 per intensity); ANOVA on L2 norm distributions

Table: Padding Subsystem Requirements and Acceptance Criteria

System Design Narrative

Following the Systems Engineering V-Model introduced in Section 3.2, RM-6, PAD-AC-1, and PAD-AC-2 were fixed before detailed foam selection, sensor placement, or detection algorithm decisions were made. The diagram below applies the V-Model to the Padding subsystem specifically.

BoxBunny Padding — Systems Engineering V-Model V-Model diagram for the BoxBunny boxing robot Padding subsystem. BoxBunny Padding — Systems Engineering V-Model DESIGN DECOMPOSITION VERIFICATION AND VALIDATION 01 System Requirements RM-6 PAD-AC-1, PAD-AC-2 defined 02 Mechanical Design Multi-layer foam Isolation mounts 03 Electrical Integration Quad-IMU I²C topology L2 norm pipeline 04 Padding Assembly 4× IMU wired & confirmed /strike_events active 05 IMU Calibration Threshold 2.0 g Bus-hang HARD STOP 06 Controlled Tests 60-punch detection L2 norm monotonicity 07 Validation RM-6, PAD-AC-1 PAD-AC-2 Design Decomposition Integration Build Verification & Validation Design arm V&V arm

Figure: Systems Engineering V-Model for the BoxBunny Padding subsystem, tracing RM-6, PAD-AC-1, and PAD-AC-2 from design decomposition through integration to verification closure.

Left Side of the V: Design Decomposition

RM-6 (absorb strikes + impact detection) drove the multi-layer padding architecture: polyethylene foam outer layer, anti-vibration isolation mounts to protect the drivetrain, and MPU6050 IMU sensors embedded between the foam surface and the isolation interface. PAD-AC-1 (95% detection rate) drove the IMU threshold calibration (L2 norm ≥ 2.0 g), the dual-bus I²C topology (four sensors across two hardware buses on Teensy 4.0), and the Hard STOP bus-hang recovery protocol. PAD-AC-2 (force differentiation) drove using the L2 norm magnitude as the sensing metric rather than a binary threshold, ensuring graded response across punch intensities.

Base of the V: Integration Build

At integration stage, the foam pads with embedded IMU sensors were mounted to the arm assembly via anti-vibration isolation mounts. Four MPU6050 sensors were wired across two I²C buses on the Teensy 4.0, firmware initialised and confirmed communicating, and the /strike_events ROS 2 topic was verified publishing correctly during initial impact tests.

Right Side of the V: Verification Closure

PAD-AC-1 closes via the 60-punch controlled detection test (≥ 57 punches detected). PAD-AC-2 closes via the L2-norm monotonicity test (3 users × 3 intensities, one-way ANOVA). RM-6 (structural survivability) closes via the 200-punch mechanical endurance test. Full test procedures are in Testing & Evaluation.

Design

Multi-Layer Padding Architecture

A multi-layer construction with anti-vibration isolation mounts separates impact absorption (outer foam) from structural mounting (isolation interface to arm mechanism).

The isolation mount is critical because the Arm Actuation subsystem's 3D-printed gears and Delrin alignment pins are optimised for torsional and compressive loads, not repeated transverse impacts. Without mechanical decoupling, user punches to the padding would transmit impulse forces directly into the gear mesh, accelerating fatigue failure.

Low-Level Control — IMU Sensing Pipeline

Quad-IMU I²C Topology

Up to four MPU6050 6-axis IMUs (3-axis accelerometer + 3-axis gyroscope) are distributed across the padding zones to detect and classify physical strikes. The sensor placement enables spatial discrimination — determining not only whether a punch landed, but where on the robot's body it connected.

The MPU6050 supports only two I²C addresses (0x68 and 0x69, selected by the AD0 pin). To accommodate four sensors, the Teensy 4.0's two independent hardware I²C buses are both utilised:

I²C Bus Teensy Pins Address 0x68 Address 0x69
Wire SDA: Pin 18, SCL: Pin 19 Centre Body Left Body
Wire1 SDA: Pin 17, SCL: Pin 16 Right Body Reserved (Head)

Both buses operate at 400 kHz (I²C Fast Mode). Each MPU6050 read transaction requires approximately 14 bytes, consuming ~280 µs per sensor at 400 kHz.

Strike Detection Pipeline

The raw 3-axis acceleration from each IMU is included in the expanded /motor_feedback payload (21 doubles) published via micro-ROS at 200 Hz. On the application side (the application), the IMU Diagnostics Tab computes the L2 norm of each sensor's acceleration vector:

||a|| = √(ax² + ay² + az²)

When ||a|| exceeds a configurable threshold (default: 2.0 g), the system registers a valid strike event and publishes the event data (sensor ID, peak acceleration, timestamp) to the /strike_events ROS 2 topic.

IMU Timing Budget within 200 Hz Unified Loop

The IMU subsystem was originally validated on a dedicated Teensy as a standalone calibration rig, achieving 500 Hz sampling across four sensors without packet loss. After merging into the main teensy_firmware_V4.ino, the I²C reads share the 5 ms (200 Hz) loop budget with CAN motor commands and micro-ROS publishing:

Task Allocation
CAN Tx/Rx (4 motors) ~0.8 ms
I²C IMU reads (up to 4 sensors) ~1.1 ms
micro-ROS publish ~0.5 ms
Safety checks + logic ~0.4 ms
Headroom ~2.2 ms (44%)

Total worst-case utilisation: ~2.8 ms of the 5.0 ms budget (56%). The 2.2 ms headroom ensures the loop does not overrun even under I²C retry conditions.

Validation

The following table summarises the verification outcome for the padding subsystem, tracing closure back to the Robot Mechanism verification matrix.

ID Requirement Verification Method Measured Result Status
RM-6 Absorb repeated strikes without damage; multi-layer foam survives 200-punch endurance session 200-punch mechanical endurance test; visual inspection post-session Multi-layer foam + isolation mount design confirmed; formal 200-punch endurance test not yet conducted Partial
PAD-AC-1 IMU strike detection rate ≥ 95% true positive (60-punch test across 3 zones) 20 punches × 3 zones; ≥ 57 detected for pass; GUI IMU Diagnostics Tab + video evidence IMU 4-sensor topology confirmed operational; 60-punch controlled test not yet conducted Partial
PAD-AC-2 L2 norm force differentiation monotonic: light < medium < heavy (3 users, ANOVA p < 0.05) 3 users × 30 punches; one-way ANOVA on L2 norm distributions per intensity level L2 norm algorithm implemented and verified in integration; statistical differentiation test not yet conducted Partial

Detailed Documentation

For in-depth technical details, refer to the padding-specific documentation:

Cross-References