← Design notebook

BUILT BY AUTONOMOUS SYSTEMS · WORK IN PROGRESS

Foam-dart turret and kid safety for Gyropup

Checked 2026-10-25. Parts and prices are in catalog/turret.json (32 items, category turret, plus one sensor). The pan motor recommended below, the Damiao DM-J4310-2EC, is already in catalog/leg_actuators.json.

Gyropup is a Tritium robot: kids play against it outdoors, with a foam-dart turret on its head (requirement R25 in docs/requirements.md). This file covers five things:

  1. Launcher mechanisms
  2. Pan/tilt
  3. Recoil
  4. Kid safety
  5. Outdoor driving

It ends with a recommended turret, its mass, power and cost budget, and a list of safety requirements.

Conventions

Summary


1. Foam-dart launcher mechanisms

1.1 How the options work

1.2 Ammunition

Ammo Mass Size Notes Source
Worker HE short ("half") dart 1.0 g (0.9 g light, 1.2 g heavy) 13 × 36 mm OOD reference dart; fits standard "Talon" magazines OOD
Worker full-length dart 1.28 g 13 × 72 mm "Elite-spec"; fits stock Nerf OOD
Nerf Elite dart n/p (≈1 g: 10 darts ≈ 10 g on a kitchen scale) 7.2 cm × 1.2 cm (retailer) Hasbro does not publish mass Orzel
Rival round (Worker Cheetah) 1.75 g 22.7 mm ball Hasbro Rival is 14+ with eyewear recommended OOD
Accufire / AccuStrike n/p n/p No mass found; not pursued —
DJI S1 gel bead 0.12–0.17 g (soaked) 5.9–6.8 mm Not foam DJI store

Short darts are the right choice for Gyropup:

Rival balls are a poor fit. They are 75 % heavier, so they carry 75 % more energy at the same speed. Hasbro rates the Rival Helios at 100 fps for ages 14+ and recommends eyewear (Hasbro).

1.3 Blasters and launch modules compared

Blaster / module Type Muzzle velocity Rate of fire Mass Motors / power Control Price Licence / CAD
Stock Nerf Elite flywheeler (Stryfe class) brushed flywheel ≈65–73 fps (reviewer chronos; physicist measured 20.9–22.1 m/s) semi n/p 130 motors, 4×AA trigger switch n/p closed
OOD Stryfe Ultimate Mod Kit brushed flywheel mod 155 fps short / 177 fps full semi kit 120 g 2× Kraken/Fang, 2S/3S LiPo microswitch $57.99 closed blaster
Chance Blitz brushed flywheel + solenoid 96 / 100 / 126 fps (22 / 19.5 / 25 mm cages) solenoid 321 g assembled 2× Kraken, 3S microswitches + MOSFET $65.99 kit Printables CC-BY-NC-SA, STL
Flygonial Gryphon brushed flywheel n/p manual pusher kit 142 g 2× Kraken, Daybreak wheels microswitch $44.99 kit Printables CC0
Flygonial Protean (OOD ed.) brushed flywheel + solenoid 102 / 123 / 133 / 141 fps for 42 / 41.5 / 41 / 40 mm cages solenoid 672 g (listing) 4× Kraken, 3S MOSFET $109.99 kit Printables CC-BY-NC-SA
Worker Nightingale 2.0 brushed micro-flywheel 110 (2S) / 127 (3S) / 134 (4S) fps 6 / 11 / 15 rps (full-auto) n/p 132 motors stock board $84.99–94.99 closed
Xtra Atrox brushless flywheel + brushless cam pusher ≈140 fps 12 rps 582 g brushless, own battery OLED, USB-C firmware $139.99 closed
Hare Tech Diana brushless + solenoid ≈140 fps (4S) 16 rps 590 g 2 brushless, 4S fire modes, motor idle $249.99 closed
Hare Tech Vesper brushless 1404 + solenoid presets 48 / 134 / 176 fps (4S) ≈15 rps 990 g (no battery) 2× 1404, 4S velocity + fire-mode presets, 120 ms response $314.99 closed
Eli Wu Momentum 2-stage brushless + Neutron presets 100–200 fps, firmware up to 215 presets 7–26 rps, up to 35 n/p 4× Supernova 1507.5, 4S custom board, fps/ROF/burst presets $649.99, sold out closed
Project FDL-3 flywheel, modular noses/tails n/p (unitless 0–100 "Speed") 0–100 "ROF", burst 1/2/3/auto n/p 3S (12.6 V full) OLED firmware v1.05; MinSpin 120–500 ms n/p CC BY-NC-SA 4.0; CAD + STL folders
Tops76 Dart Turret brushless flywheel turret "max 140 km/h" = 38.9 m/s ≈ 128 fps n/p n/p 2× Armattan 2206 2300 KV, 20–30 A ESCs, 4×18650 ESP32; built-in dart speed sensor; 2× Waveshare SC15 servos DIY Printables CC-BY-NC-SA
Juno (Rival) brushed flywheel, gear-motor pusher 130 fps (Kraken) ≈9 balls/s n/p Krakens, 3S — $89.99 kit Printables CC-BY-NC-SA
Nerf N-Strike Elite TerraScout (B8072, 2016) RC tracked drone with dart launcher n/p n/p ≈11.25 lb (one spec sheet) 9.6 V NiMH RC + 720p camera $200 at launch; discontinued closed (Hasbro instructions)
DJI RoboMaster S1 (gel beads) 2-axis gimbal + gel blaster ≈26 m/s 1–8/s, max 10/s 3.3 kg robot — app discontinued closed

Notes on the table:

1.4 Launch motors, pushers, feed

Part Key specs Price Source
Eli Wu Neutron solenoid 209 g; 26 mm stroke; 20–35 N push; 2.3 Ω coil; up to 25 A; 10 rps on 3S, 18 rps on 4S, up to 40 rps with a 32 V boost circuit and an upgrade spring; STEP $29.99 OOD
Supernova 1507.5 brushless 4200 KV, 1.5 mm T-mount, 19.4 mm OD, 4S recommended; mass n/p $26.99 each OOD
OOD Kraken 130 (brushed) 3S, 35,000 rpm idle, 0.55 A idle, 26 A stall, 740 g·cm stall $8.99 OOD
DJI Snail 2305 + C615 27.8 g; 21,000 rpm at 24 V; 0.4 A no-load; C615 15 A continuous, 26 V max, PWM; STEP linked $40 motor / $100 with C615 aifitlab
BLHeli LittleBee-Spring 30 A ESC 2–6S, 30 A continuous / 35 A burst, DShot; RPM telemetry n/p $12.99 OOD
Worker Nightingale micro-flywheels 18.1 mm OD, 2 mm bore, 3 g each, acetal $8.99 pair OOD
Worker metal cage V3 (Stryfe pattern) 88 g, 43.5 mm spacing $22.00 OOD
Worker 15-round straight Talon mag 105 g, 240 × 36 × 19 mm $9.99 OOD
OOD Koda 23-round mag 115 g, 315 mm long, glass-fibre nylon $19.99 OOD
OOD Infinite Pack (Rival hopper) 1250 g, ≈430 balls, blower-pressurised hose feed, 20 rps continuous / 30+ burst through up to 4 ft of hose $259.99 kit OOD
DJI M2006 P36 (RoboMaster feed dial) 90 g, 36:1, 1 N·m rated $95 aifitlab

Feed options:

For Gyropup: use one 15-round magazine for a capped, game-sized load, then reload. Swapping magazines is a natural "pit stop" in a kids' game.

Power and control in practice:


2. Pan/tilt for a 0.5–1.5 kg head

2.1 Torque and speed needed (est)

Tilt:

Pan:

Speed:

Safety cap on pan speed:

2.2 Actuators compared

Actuator Mass Torque Speed Voltage Interface / encoder Price Source
Feetech STS3215 (12 V) 89 g (Waveshare; others list 55 g) 30 kg·cm ≈ 2.9 N·m stall 45 rpm (270 °/s) no-load 6–12.6 V TTL serial bus to 1 Mbps; 12-bit absolute magnetic, 360° $21.99 Waveshare
ROBOTIS XM430-W350-T 82 g 4.1 N·m stall at 12 V 46 rpm at 12 V 10–14.8 V TTL to 4.5 Mbps; 4096 counts/rev $310.39 e-manual, store
Damiao DM-J4310-2EC (already in catalog) 306 g 3 N·m rated / 7 N·m peak 200 rpm no-load at 24 V 15–32 V (fits the 7S bus) CAN / CAN-FD; dual 14-bit encoders, output absolute $125 leg_actuators.json, GitHub
DJI RoboMaster GM6020 468 g 1.2 N·m rated 320 rpm no-load, 132 rpm at rated torque 24 V rated (maximum n/p) CAN or PWM; 13-bit; 18 mm hollow shaft $225 (aifitlab) RoboMaster, aifitlab
Waveshare SC15 (as used in Tops76 turret) n/p "17 kg" n/p n/p serial bus n/p Tops76 BOM

Gear rings.

2.3 Slip rings for continuous pan

Slip ring Circuits Current Max rpm IP Price Source
Adafruit 1196, 22 mm capsule, 44 mm flange 12 × 28 AWG 2 A each, 240 V 300 n/p $19.95 Adafruit
Ingiant DHK012-12, through-bore 12.7 mm 12 (also 6 / 18 / 24) 2, 5 or 10 A each 300 (600 custom) IP51 (IP54 / IP65 optional) quote Ingiant

Wiring for the Adafruit ring:

2.4 Existing robot turrets and what they teach

DJI RoboMaster S1 (user manual specifications, DJI 2019):

Spec Value
Mass about 3.3 kg
Gimbal pitch range −20° to +35° controllable (−24° to +41° mechanical)
Gimbal yaw range ±250° controllable (±270° mechanical), so not continuous
Gimbal speed 540 °/s max
Vibration control ±0.02° (flat surface, blaster idle)
Blaster ≈ 26 m/s, 1–8 shots/s controllable, 10/s max

The manual also says:

So DJI's own gel-bead robot is not meant to shoot people.

RoboMaster infantry and balancing infantry robots

These are the most relevant precedent: they carry a gimbal and launcher on a wheel-legged balancing chassis.

Hobby Nerf turrets

Many hobby turrets use face tracking, for example brianlevis/nerf-iron-dome (Unlicense, RapidStrike, HS-805BB servos, "track and engage faces") and rohan-bansal/NerfTurret. Gyropup must do the opposite and suppress fire when a face is in the line of fire. The Tops76 Dart Turret is the closest hardware match: brushless flywheels, serial-bus-servo gimbal and an integrated speed sensor.


3. Recoil

Reaction impulse per dart = dart mass × muzzle velocity (calc).

Velocity Short dart 1.0 g: per dart / 10-dart burst / KE Full dart 1.28 g: per dart / 10-dart burst / KE Rival 1.75 g: per round / 10 / KE
70 fps (21.3 m/s) 0.021 N·s / 0.21 N·s / 0.23 J 0.027 / 0.27 N·s / 0.29 J 0.037 / 0.37 N·s / 0.40 J
80 fps (24.4 m/s) 0.024 / 0.24 N·s / 0.30 J 0.031 / 0.31 N·s / 0.38 J 0.043 / 0.43 N·s / 0.52 J
100 fps (30.5 m/s) 0.031 / 0.31 N·s / 0.46 J 0.039 / 0.39 N·s / 0.59 J 0.053 / 0.53 N·s / 0.81 J
130 fps (39.6 m/s) 0.040 / 0.40 N·s / 0.79 J 0.051 / 0.51 N·s / 1.00 J 0.069 / 0.69 N·s / 1.37 J
150 fps (45.7 m/s) 0.046 / 0.46 N·s / 1.05 J 0.058 / 0.59 N·s / 1.34 J 0.080 / 0.80 N·s / 1.83 J
200 fps (61.0 m/s) 0.061 / 0.61 N·s / 1.86 J 0.078 / 0.78 N·s / 2.38 J 0.107 / 1.07 N·s / 3.25 J

For comparison, a DJI S1 gel bead carries 0.003–0.004 N·s (0.12–0.17 g at 26 m/s).

What the balancing robot feels (calc)

Assumptions:

Case Linear Δv Pitch-rate kick Δω = J·h / I Average force at 10 darts/s Equivalent static lean
One short dart at 80 fps (0.024 N·s) 0.0016 m/s 0.006 rad/s — —
10 short darts at 80 fps (0.24 N·s) 0.016 m/s 0.061 rad/s if all at once 0.24 N, so 0.15 N·m 0.14°
10 full darts at 150 fps (0.59 N·s) 0.039 m/s 0.15 rad/s if all at once 0.59 N, so 0.35 N·m 0.34°

What disturbs the robot more than recoil:

Design conclusion:


4. Kid safety

4.1 Toy-projectile rules

Rule Requirement Source
ASTM F963-17 §4.21.2.3 (projectile toys with stored energy) Projectiles with KE > 0.08 J (test 8.14.5) "shall not have a kinetic energy per unit area of contact … (KED) greater than 2500 J/m²" (test 8.14.6) Intertek summary of F963-17; CPSC enforcement letter, 2017
ASTM F963-23 Mandatory US toy standard for toys made on or after 20 Apr 2024. Projectile changes: a revised bow-and-arrow test, the conditioning sequence in 8.14.3 / 8.14.5.4 / 8.14.6.2 reordered, and environmental conditions changed. Whether the 0.08 J / 2500 J/m² values changed was not verified Bureau Veritas
EN 71-1 §4.17.3 (2011+A3:2014 text) Max KE 0.08 J for rigid projectiles without resilient impact surfaces, 0.5 J for resilient projectiles; arrows > 0.08 J need resilient tips ≤ 0.16 J/cm² (1600 J/m²); rigid tip radius ≥ 2 mm; warning if the toy can fire other projectiles > 0.08 J EN 71-1 text
EN 71 (QIMA summary) "projectiles with a kinetic energy greater than 0.08 J must have a kinetic energy per unit area of no more than 2500 J/m²" QIMA
ISO 8124-1:2022 International counterpart; text paywalled, numbers not retrieved ISO via ANSI

Limits applied to darts (calc):

Ammo EN 71 0.5 J limit ASTM 2500 J/m² limit
Short dart 1.0 g ≤ 31.6 m/s (104 fps) ≤ 0.33 J, so ≤ 25.8 m/s (85 fps)
Full dart 1.28 g ≤ 28.0 m/s (92 fps) ≤ 22.8 m/s (75 fps)
Rival 1.75 g, 22.7 mm ≤ 23.9 m/s (78 fps) ≤ 34 m/s (112 fps)

Checks against products:

Toy standards do not directly cover Gyropup. They govern toys sold for children; a robot used to run a game is not a toy. They are still the best published, kid-specific energy limits, so Gyropup adopts them as design targets.

4.2 Field practice: velocities and eyewear

Source FPS cap / velocity Eye protection Other rules
Stock Nerf Elite (measured) ≈ 65–73 fps; ≈ 21–22 m/s Box warning —
Hasbro Rival Helios 100 fps (30 m/s); other Rival 90 fps "Use of eyewear recommended for players and people within range"; "Do not aim at eyes or face"; 14+ Hasbro
Univ. of Waterloo Humans vs Zombies "must fire under 100 FPS"; modded ball blasters banned; hard-tipped darts banned — rulebook
GameSchoolCon "Nerf battles all ages" 150 fps "All players must have eye protection for each round"; full face masks not allowed "NO POINT BLANK SHOTS ABOVE THE NECK!", aim at torso/legs, "Hold" call stops play
Out of Darts (Pacific NW games); Endwar 2022 "commonly have a 150 cap"; Endwar soft cap 130 fps on a 5-shot average — Chronograph each blaster before play
Hobby brushless blasters 140–200+ fps (Diana, Atrox, Vesper high, Momentum) — —

Injuries are real even at stock energies:

4.3 What this means for the turret

  1. Velocity. Default 70 fps; hard cap 80 fps (24.4 m/s) with 1.0 g short darts.
    • That gives 0.30 J, which is under EN 71's 0.5 J. KED is ≈ 2240 J/m² (calc), under ASTM's 2500.
    • Never use Rival balls or full-length darts at the short-dart setting.
    • Enforce the cap in three independent ways:
      • Flywheel RPM (closed loop, brushless).
      • A wide-crush cage that cannot exceed the cap at full motor speed. Verify this on the bench.
      • A muzzle chronograph on every shot. Any shot over 80 fps locks the launcher out until a human resets it.
  2. Rate of fire. At most 3 darts/s and a 5-dart burst limit in the kids' game (a design choice), with a magazine of
    1. The solenoid makes each dart countable.
  3. Elevation. The barrel must never point above horizontal in the world frame.
    • Gyropup balances by leaning, so the body pitch changes all the time. A tilt limit relative to the body is not enough. Measure the limit with the turret's own IMU in the world frame.
    • Add a mechanical hard stop that holds even at the robot's worst-case forward lean.
    • Ballistics (calc, no drag, so these are upper bounds). From a 0.5 m muzzle at 0° and 24 m/s, a dart is at ≤ 0.47 m at 2 m range and ≤ 0.29 m at 5 m. At +10° it reaches 1.17 m at 5 m, which is a child's face height.
    • So also predict the dart's height at every range up to its maximum. Inhibit firing if the predicted path passes through the head zone (≥ 0.9 m) of any detected person, or the leg height changes the muzzle height enough to.
  4. Targeting.
    • Fire only at worn targets: a vest or belt panel with a fiducial or colour patch at belly height or lower.
    • Never fire at a detected face or head.
    • Never fire at animals.
    • Never fire at anyone not wearing a target, which covers bystanders, parents and toddlers.
    • The opposite approach, "track and engage faces" (iron-dome), is explicitly forbidden.
  5. Range. No firing at a person closer than 2 m. The "no point-blank above the neck" rule exists for this reason, and two of the Eye News injuries came from close range.
  6. Eyewear and game rules. Players need eye protection. The robot checks for it where practical (eyewear-detection flag) but does not rely on it. The game master holds the dead-man switch.

4.4 Dead-man switch, e-stop, safe zone

4.5 Speed and contact with a 15 kg robot

ISO/TS 15066 (collaborative robots, adults). The permissible contact speed is v = F / √(μ·k), where μ = (1/m_H + 1/m_R)⁻¹. Values from arXiv 2311.13814, Table 1:

Contact speeds (calc). The whole robot is taken as moving mass, which is conservative.

Contact 15 kg robot 7.5 kg (half, e.g. an effective mass)
Shin (lower leg) 0.15 m/s 0.20 m/s
Thigh / knee 0.28 m/s —
Face, struck by a 1 kg turret 0.26 m/s —

These are adult industrial limits; children are not covered. Play needs faster movement than this, so the robot has to:

Boston Dynamics on Spot (user guide R2.0):

Gyropup is lighter than Spot but has the same hazards: falling, tipping, collisions and leg pinch points.

Sidewalk robots. Iowa's personal-delivery-device law caps them at 6 mph (2.7 m/s) in pedestrian areas and at 550 lb (Iowa Code 321O). That is far heavier and faster than Gyropup. Use it only as an upper bound.

Stopping distance (calc): d = v·t_r + v²/(2a), with a 0.25 s reaction time (est). A balancer must first tilt back before it can brake, so its deceleration a is lower than tyre friction alone would allow; 1.5–3 m/s² is assumed (est).

Speed Kinetic energy (15 kg) Stop at 1.5 m/s² Stop at 3 m/s²
0.5 m/s 1.9 J 0.21 m 0.17 m
1.0 m/s 7.5 J 0.58 m 0.42 m
1.5 m/s 16.9 J 1.12 m 0.75 m
2.0 m/s 30 J 1.83 m 1.17 m

Pinch points.

4.6 Dogs


5. Outdoor driving for a 15 kg two-wheeled balancer

Wheel and motor choice is covered in wheel-motors.md. This section adds terrain.

5.1 Tyres

5.2 Rolling resistance

Rolling resistance coefficients:

Surface Coefficient Source
Short grass, 10 km/h 0.049–0.09 ATV tyres ≥ 480 mm, firm silt loam (Petterson & Gooch, DESIGN 2020)
Short grass, 20 km/h 0.07–0.10 same
Long grass (200–250 mm), 20 km/h 0.08–0.12 same
Hard laneway 0.035–0.09 same
Gravel, loose and worn / medium-hard soil 0.04–0.08 Car tyres (Engineering ToolBox)
Concrete / new asphalt 0.01–0.015 same
Loose sand 0.2–0.4 same

Small robot wheels (150–200 mm) on grass were not measured in any source found. They will sit above the ATV values, because smaller wheels sink and climb more. Take 0.10–0.15 on lawn as a planning figure (est).

Drive force on lawn (calc): 0.12 × 15 kg × 9.81 = 18 N, or about 9 N per wheel. Add slope:

5.3 Slopes in yards

5.4 Ingress protection

IEC 60529 codes, from a vendor summary because the IEC page returned 403:

Source: summary.

What already has a rating:

Gyropup targets:


Concept.

Control.

6.1 Parts list

# Part Qty Unit price Mass each Source / status
1 Supernova 1507.5 4200 KV brushless motor 2 $26.99 n/p (shipping weight 30 g); budget 30 g catalog eli-wu-supernova-1507-5-4200kv
2 Brushless ESC with RPM telemetry (LittleBee 30 A shown; telemetry must be verified) 2 $12.99 n/p; budget 9 g favourite-littlebee-spring-30a-esc
3 Flywheels for 1.5 mm T-mount (printed, or OOD "Helix", whose price was not found) 2 est $5 budget 5 g est
4 Printed cage, barrel and turret structure (PETG/PLA-CF) 1 est $15 filament est 250 g est
5 Neutron solenoid + MOSFET + flyback/Zener 1 $29.99 + est $5 209 g eli-wu-neutron-solenoid
6 Worker 15-round straight Talon magazine 2 $9.99 105 g (+15 g of darts) worker-15rd-straight-talon-short-dart-mag
7 Worker HE 1.0 g short darts, 200-pack 1 $16.99 1.0 g/dart worker-he-short-darts-1-0g-200
8 Tilt: Feetech STS3215 12 V + bus adapter 1 $21.99 + est $10 89 g feetech-sts3215-c018-12v
9 Pan: Damiao DM-J4310-2EC (on the 24 V CAN bus) 1 $125 306 g damiao-dm-j4310-2ec (leg_actuators.json)
10 Slip ring, Adafruit 1196 12-wire 1 $19.95 n/p; budget 30 g adafruit-1196-slip-ring-22mm-12w
11 Pan bearing (thin-section or turntable) 1 est $10 est 60 g est
12 Turret MCU + IMU (for example STM32/RP2040 + 6-axis IMU) 1 est $15 est 15 g est
13 Muzzle chronograph: 2 fast IR gates, photodiode + comparator. The Adafruit 2167 break-beam's "<2 ms" response is too slow at 24 m/s 1 est $10 est 15 g est
14 7S to 12 V buck converter, ≥ 10 A, plus arming contactor/relay 1 est $35 est 80 g est; not yet in catalog
15 Status LED ring + buzzer 1 est $5 est 15 g est
16 Wiring, XT30, connectors — est $15 est 60 g est

6.2 Mass budget

Group Mass
Launcher: motors, ESCs, wheels, cage share, solenoid ≈ 60 + 18 + 10 + 120 + 209 = 417 g
Magazine, loaded 120 g
Structure (rest of the head) 130 g (est)
Tilt servo 89 g
Pan motor + bearing + slip ring 306 + 60 + 30 = 396 g
Electronics: MCU/IMU, chronograph, buck/contactor, LEDs, wiring ≈ 185 g (est)
Total ≈ 1.34 kg (mostly est). The pan motor is the stationary part on the body side, so the moving pitch assembly is ≈ 0.75 kg.

A lighter option is about 1.1 kg: use a second STS3215 on a 3:1 ring gear for pan instead of the DM-J4310. It saves ≈ 217 g and $103, at the cost of pan speed. A 3:1 ring takes 270 °/s down to 90 °/s.

6.3 Power budget

Figures marked † are from comparable parts' published specs: the Snail 2305's 0.4 A at 24 V, and the Kraken's 0.55 A at 11.1 V.

State Draw Basis
Safe (powered, disarmed, holding pose) ≈ 5–8 W est
Armed, flywheels idling at target RPM ≈ 15–30 W est, from comparable no-load currents of 6–10 W per motor†
Spin-up (≈ 0.2 s) up to ≈ 2 × 10 A × 12 V = 240 W if ESC current is limited to 10 A calc on an assumed limit
Solenoid stroke 12 V / 2.3 Ω = 5.2 A peak, ≈ 62 W per stroke calc. At ≤ 3 shots/s the average is ≈ 10–20 W (est)
Pan/tilt slewing DM-J4310 peak 7.5 A × 24 V = 180 W; typically ≪ that sourced peak; typical is est
Game average (50 % armed, 10 % firing) ≈ 20–35 W est. About 10 % of a 252 Wh 7S2P pack per hour (power-electronics.md)

6.4 Cost

6.5 Why this concept


7. Safety requirements

IDs are for traceability in the designer and the simulation.

ID Requirement Enforced in
S1 Muzzle velocity default 70 fps, hard cap 80 fps (24.4 m/s) with 1.0 g short darts; ≤ 0.30 J and ≤ 2500 J/m² (calc) per dart firmware + mechanics
S2 Three independent velocity guards: (a) closed-loop flywheel RPM limit; (b) a cage crush that cannot exceed the cap at full motor speed, bench-verified with 20-shot chronograph tests; (c) every dart timed at the muzzle, and any shot over cap latches a lockout that needs a human reset firmware + mechanics + test
S3 Only approved ammo: Worker HE 1.0 g short darts. Magazine well geometry rejects full-length darts and balls mechanics
S4 Rate of fire ≤ 3 darts/s, burst ≤ 5, one 15-round magazine per round of play firmware
S5 Barrel elevation ≤ 0° in the world frame (turret IMU). Mechanical up-stop holds at the worst-case body lean. Inhibit firing if the predicted dart path crosses ≥ 0.9 m height at any person's range firmware + mechanics + sim
S6 Fire only at worn game targets (belly height or lower). Never fire if a face, head, animal or untagged person is inside the predicted fire cone. Face tracking for aiming is prohibited perception + firmware
S7 No firing at a person closer than 2 m perception + firmware
S8 Barrel settled before firing: pointing error and turret rate below thresholds; flywheels at set RPM (RoboMaster-style spin-up gate) firmware
S9 Hardware wireless e-stop cuts drive and turret power independently of the computer electrical
S10 Turret arming needs a held dead-man / heartbeat from the game master. Release or link loss over ≈ 200 ms (est) opens the 12 V launcher contactor. The robot keeps balancing and drives to a stop electrical + firmware
S11 Visible and audible state: green SAFE, amber ARMED, red FIRING, buzzer when armed; orange muzzle hardware
S12 Safe zones (entry, spectators, reload pit): turret disarmed, drive at crawl firmware (geofence / tags)
S13 Drive speed by distance to the nearest person or dog: > 3 m: ≤ 1.5 m/s; 1–3 m: ≤ 0.5 m/s and no closing motion; < 1 m: ≤ 0.2 m/s, no approach. ISO/TS 15066 adult shin/thigh contact speeds (calc) are 0.15–0.28 m/s firmware + sim
S14 Braking distance at each speed limit is verified in simulation and on hardware against the zone sizes (§4.5 table) sim + test
S15 Pan speed ≤ 100 °/s (calc) when a person is within 1 m of the head; soft or foam-covered turret edges firmware + mechanics
S16 Pinch points guarded: leg shrouds, wheel arch, skirted pan ring, gaps per ISO 13854. Leg joint torque limited when anyone is within 1 m mechanics + firmware
S17 Soft bumpers on the leading surfaces at child-shin height mechanics
S18 Fall behaviour: if balance is lost, disarm the turret and fold the legs to fall low and inward, not onto people firmware + sim
S19 Eye protection required for all players (game rule). Robot shows a reminder; optional eyewear detection does not replace the rule game rules
S20 Count darts out and back in; sweep the field after play (pets eat foam) game rules
S21 Slope limit: play area ≤ 15°; robot refuses > 20° firmware + site rules
S22 No play in rain or on wet grass; electronics at IP54 minimum site rules + mechanics
S23 Log every shot: time, velocity, aim, target ID, and the interlock state at release firmware

8. Open questions