Compute, sensors and perception
Perception answers four questions fast enough to score: where the rover is, what the object in front of it is, what the astronaut just commanded, and whether the view is good enough to drive. Each question has a number attached, and the numbers are smaller than they look. The most useful finding on this page is that the 2027 post tag is a last-five-metres sensor rather than a twenty-metre one, and that the mission design already accounts for it.
Key takeaways
- Pixels, not compute, bound perception. A moving rover needs 5 pixels per module on an ArUco tag, measured across five degradations. That gives 8.3 m on a 20 cm post tag through a 1080p camera at 60°, and 4.6 m through the common 720p wide camera.
- The tag does not have to work at 20 m. Target coordinates are exact, so GNSS carries the rover to the post and the tag closes the final metre. A 4K driving camera bought to see the post from far away solves a problem the rules have removed.
- Depth is a close-range sensor. Stereo error grows with the square of range: ±53 mm at 3 m becomes ±594 mm at 10 m, and a rolling shutter turns motion into 1.3 m of depth error at 3 m.
- The compute is adequate and the cooling is not. 67 TOPS runs every model the missions need at 25 W; a 40 W module in a sealed box at 38 °C sits at about 65 °C before solar gain is counted.
What the subsystem must do
The 2027 rules ask for four capabilities with numbers attached. The rover must stop within 1 m of a route target and within 3 m of the astronaut S-URC27-RULES §1.e.xvii. It must detect a 20 cm post tag, a 2 cm keyboard tag and a 1 cm key tag S-URC27-RULES §1.e.xii. It must recognise five astronaut commands, one of which scores 15 points only as a gesture S-URC27-RULES §1.e.vi. And it must give three of the four missions a driveable view, because those missions are teleoperated S-URC27-RULES §1.d.ii.
Two rules then set the architecture. The team must bring and run its own RTK base, with no correction service and no internet in the field S-URC27-QA RQ11. And the second route target sits behind a hill, out of radio line of sight, so anything score-critical has to run on the rover rather than at the C2 station S-URC27-RULES §1.e.xvi. A base-station computer may help, but it cannot be in the critical path S-URC27-QA AUQ2.
The numbers that size the design
| Quantity | Value | Basis |
|---|---|---|
| Pixel budget, moving rover | 5 px per module, 30 px across a six-module tag; 12 px is the identification-only floor | Measured across five degradations S-P407-ARUCO-TEST |
| Post tag, 1080p at 60° | 8.3 m reliable, 20.8 m for identification only | 1,663 px focal length, 15 cm tag extent |
| Post tag, 720p at 69° | 4.6 m reliable, 11.6 m for identification only | 931 px focal length, the common student camera |
| Post tag, 4K at 60° | 16.6 m reliable | 3,325 px focal length |
| Key tag, any camera | 0.31 to 0.78 m | 1.67 mm per module; sub-metre at 5 px per module |
| Stereo depth, D435i class | ±53 mm at 3 m, ±594 mm at 10 m; ±1.3 m at 3 m while moving | Error model with 0.2 px disparity error, optimistic by 1.6× S-RS-D435 |
| RTK relative and cold fix | better than 1 cm, 35 s | Receiver figures S-ARDUSIMPLE-F9P |
| Base coordinate error | maps one to one into the 1 m stop tolerance | By inference from RTK geometry |
| Perception compute | 67 INT8 TOPS at 7 to 25 W | Orin Nano Super 8 GB S-NV-JETSON-ORIN |
| Uncompressed video | 1080p30 is 186 MB/s; six 720p30 streams are 498 MB/s | More than one USB 3 controller can carry |
| Astronaut size in frame | 84 px at 20 m through 720p at 69°; 150 px through 1080p at 60° | A suited adult at 1.8 m |
Design space, in one table
| Decision | Options | Recommended for a first build |
|---|---|---|
| Perception computer | Orin Nano Super 8 GB · Nano 4 GB · Orin NX · AGX · Pi 5 with an accelerator · x86 | Orin Nano Super 8 GB: enough for detection, pose, ArUco and one stereo stream at 25 W, and no carrier board |
| Camera split | one wide · wide and narrow · stereo · wrist · zoom · thermal | Two or three 1080p global-shutter driving cameras at 60 to 90°, plus a wrist camera fixed at 0.2 to 0.5 m |
| Depth | D435i · D455 or D456 · OAK-D · ZED 2i · GMSL | OAK-D or D455 class, with the two cameras at least 75 mm apart, global shutter |
| LiDAR | Mid-360 · Avia · 2D lidar · none | None in year one; add a 360° unit once GNSS and stereo already reach the 1 m stop |
| GNSS | two F9P and an own base · one F9P and a borrowed base · single band | Two ZED-F9P receivers with multiband antennas; single band cannot meet 1 m |
| Heading | two receivers on a fixed span · calibrated magnetometer | Magnetometer at 2 to 3°, which the rules allow S-URC27-QA RQ3; dual antenna only if the panorama cardinal direction must be exact |
| Mast | carbon tube · glass fibre · aluminium · two masts · isolators | 30 mm carbon tube, 0.8 to 1.2 m, folding, with the GNSS ground plane on top and the camera plate isolated |
| Compute split | one computer · single-board computer and accelerator · single-board computer and MCU | Jetson plus an MCU on CAN; all three documented teams split the load and none runs one computer for everything |
The pixel budget is the subsystem
An ArUco 4x4_50 tag with a one-cell border is six modules across. With the cell fixed at 2.5 cm, the black extent on a 2027 post is 15 cm inside a 20 cm face, inferred from the face and cell dimensions in the rules. If the tag fills the whole face instead, every range below improves by a factor of 4/3, which makes one photograph of the real post worth taking.
Detection was measured rather than assumed. OpenCV 5.0.0 on a synthetic sunlit-sand background, with 24 noise seeds per point, decodes a clean tag at 12 px, needs 24 px under defocus, 40 px with 9 px of motion blur, and manages 18 to 24 px at 25 % contrast S-P407-ARUCO-TEST. That table converts directly into a design budget of 5 px per module.
Two consequences follow, and both are counter-intuitive.
Full sun is not the blur problem. At the roughly 10⁵ lux of a June afternoon the exposure is short: 1 m/s at 1/1000 s through a 1080p camera at 60° blurs 0.17 px at 10 m, which is invisible. The sun problems are contrast, where a shaded tag sits against bright ground, and flare, where the sun is near the field of view and no exposure setting helps. The answer is a hood on every camera and an exposure set so that the bright background is not clipped.
The keyboard is tractable and the key is not. The 2 cm keyboard tags are twice the 1 cm numbers, which is about 1 m through a 1080p wrist camera against the 0.2 to 0.5 m the key needs. That is why teams put a camera on the arm rather than relying on the mast, and it is why the wrist camera is an arm requirement created by a perception number.
The same arithmetic sizes the human tasks. A suited astronaut is 84 px tall at 20 m through 720p and 150 px through 1080p, which is enough for driving to the astronaut and for “Come!”, since both need only a bearing and a range. Pose and gesture models want 150 to 250 px, so the gesture belongs at 3 to 8 m. That is a team decision rather than a rule S-URC27-QA AUQ10, and voice is an explicitly encouraged fallback S-URC27-QA AUQ6. The hammer is a 0.91 kg object about 300 mm long, which makes it a 5 m object for detection and a 3 m object for grasp planning S-URC27-HARDWARE.
Depth is close range, and the base coordinate owns the whole metre
Stereo depth error grows as the square of range divided by focal length and by the distance between the two cameras. With the cameras 50 mm apart that is ±53 mm at 3 m and ±594 mm at 10 m, and the model assumes 0.2 px of disparity error while real hardware needs about 0.32 px, so the real error is roughly 1.6× the table S-P407-STEREO-CALC S-RS-D435. Three design rules follow.
Depth must not be the primary localiser at range. A D455 at 10 m is within ±0.31 m on one measurement, which is a third of the stop tolerance, and the worst case is worse than the tolerance.
Camera separation beats pixels. Moving the two cameras from 50 mm apart to 120 mm apart improves depth at 10 m by 2.4×. Moving from 720p to 1080p at the same field of view improves it by about 1.0×, because the field of view sets the focal length in pixels. A narrow lens and a wide camera spacing are the only route to centimetre depth at 10 m.
Rolling shutter is unusable on a moving stereo pair. At 1.5 m/s with a 15 ms readout the scene moves 22 mm during a frame, which is about 4.9 px of disparity error, which is 1.3 m of depth error at 3 m. Global shutter and hardware sync are not a luxury on a driving pair; they are the difference between depth and noise.
The 1 cm key task never uses stereo. A mono camera with ArUco pose estimation gives range directly from the known tag size, at about 0.3 % of range, or 1 mm at 0.3 m, which is enough for a 2 to 3 mm insertion.
RTK is only as good as the base station’s own coordinate, and a 1 m base error moves every waypoint by 1 m, which is the entire route-target tolerance. The mitigations in order of cost are a 30 to 60 minute survey-in, because 35 s is the time to first fix rather than to a decimetre absolute solution; reusing one base position file all week so the map and the rover share a single error; and letting the visual tag arbitrate at the end, which is what the task design already does.
One coupling matters most. The correction link is line-of-sight limited, so behind the hill the rover loses RTK corrections in the same shadow that blocks the C2 link. The metre at the second route target is bought with dead reckoning, a pre-loaded route and the tag, not with a live fix.
Compute is adequate; heat is the constraint
An Orin Nano Super 8 GB runs 67 INT8 TOPS at 7 to 25 W and needs no carrier board S-NV-JETSON-ORIN. In practice that is enough for person detection at 60 to 120 fps, pose at 30 to 60 fps, ArUco detection at 60 fps or better on the CPU, one stereo stream and a SLAM back-end. It is not enough to add a 4K stream and a second large model at the same time, and 8 GB is the ceiling rather than a margin.
The thermal arithmetic is the failure that goes unnoticed. A 40 W module in a sealed 300 × 250 × 150 mm box, with natural convection at about 5 W/m²K over 0.3 m², sits 27 K above ambient, or about 65 °C at 38 °C. That is before solar gain on the enclosure itself, which the electrical design also has to remove. Nothing crashes; the model simply runs slower, and the team reads the lost frames as a software problem S-URC27-RULES §3.d.iii.
The fixes are the ones the power page already asks for: size the enclosure for the sustained power mode rather than the peak, add a fan with a filtered inlet, which the rules permit S-URC27-QA RQ12, and soak-test at 40 °C for 40 minutes rather than 5.
The mast carries the consequences. It holds the cameras, the GNSS ground plane and often the radio antennas, it must fold inside the 1.2 m cube, and the terrain excites it at 2 to 15 Hz, so its first mode has to sit above 20 Hz to keep the images still. Every joint in a folding mast is a stiffness question and a cable-fatigue question at the same time.
Interfaces that bite
- Autonomy. Perception owes a tag identity, range, bearing, covariance and timestamp at 10 to 30 Hz, never a six-degree-of-freedom pose computed from a 30 px tag. It owes an obstacle map at 5 to 10 Hz with 0.1 to 0.2 m resolution over a 10 m radius.
- Arm. The 1 cm key tag creates the wrist camera, and the wrist camera lands on the arm’s mass and cable life. A cable through every joint is a fatigue item, so the camera’s driver board belongs in the wrist and the service loop has to be designed rather than discovered.
- Power. Compute draws 10 to 40 W with peaks near 60 W, and the kill has to cut it or the safety rule is not met. The classic coupling is motor stall current browning out the shared USB rail and taking the cameras with it.
- Communications. Three to six concurrent 720p30 streams at 100 to 300 ms is the video load, plus RTCM3 corrections at 0.5 to 2 kB/s. The second route target needs zero link, which is why the map and route must be on the rover.
- Structures and environment. The mast, the camera plate and the GNSS ground plane are one assembly, and the camera count is an operator-load decision as much as a perception decision: one documented 2026 rover carries 11 cameras S-WVU-SAR2026, which costs bandwidth and attention as well as mass.
Failure modes
| Mechanism | What happens | Prevention |
|---|---|---|
| Sun glare and backlight | The target is in shadow against bright ground, or the lens flares, and detection stops | A hood on every camera, exposure set for the bright background, and the exposure value logged |
| Dust on the lens | A thin film kills contrast and a single grain becomes a permanent false blob | Recessed lens with a replaceable flat window, a cleaning step in the pre-run check, and a flat-field image each morning |
| Calibration drift | A knock to the camera plate changes an extrinsic by half a degree, which looks like a slow depth drift | Machined mounts with dowel pins, torque marks, and a checkerboard check at the start of each field day |
| USB dropout | A camera disappears mid-run, the node dies, and the stack blocks waiting for a frame | Locking connectors, a powered hub, one camera per controller, and a watchdog with a degraded mode |
| Thermal throttling | Frame rate falls after 10 to 20 minutes in a sealed box and nothing reports an error | Sustained-power enclosure sizing, filtered forced air, and a 40-minute soak at 40 °C |
| GNSS shadow | Position jumps by a metre near a hill face or an AR post and RTK drops from fixed to float | Antenna on a ground plane at the mast top, fix type logged and surfaced, and dead reckoning through the shadow |
| Base coordinate error | Every waypoint is a metre out and the rover stops 1.1 m from the target | A proper survey-in, one base file for the week, and the visual tag as the final arbiter |
| Tag not found at the target | The rover arrives on the exact coordinate and the tag is behind it or edge-on | A slow yaw search at the waypoint; the tags repeat on all three post faces |
| Collision with the post or the astronaut | A wheel catches the post, or the astronaut stops a rover that came too close | A 1.5 m standoff, a low-speed approach mode, and the astronaut in the map as a 1 m obstacle |
Shortlist for a first build
| Item | Choice | Why |
|---|---|---|
| Perception computer | Orin Nano Super 8 GB | 67 TOPS at 25 W, USD 249, and it runs every model the missions need |
| Real-time computer | STM32 or Teensy class MCU on CAN | A deterministic loop for drive, kill state and the status indicator |
| Driving cameras | Two or three 1080p global shutter at 60 to 90° | 8.3 m of post-tag range and a usable input for depth and odometry |
| Depth | One stereo pair with the cameras at least 75 mm apart and global shutter | ±76 mm at 5 m is enough for obstacle avoidance |
| Wrist camera | 1080p at 70°, fixed focus at 0.2 to 0.5 m | The only way to read the 1 cm key tag |
| GNSS | Two ZED-F9P receivers, two multiband antennas, a 900 MHz correction link | The own base is mandatory, and relative accuracy is better than 1 cm |
| Heading | Calibrated magnetometer | Allowed at 2 to 3°, and adequate for a panorama label |
| LiDAR | Optional 360° unit, added later | It buys a terrain map but adds extrinsics, time sync and tuning that a first build cannot absorb early |
| Mast | 30 mm carbon tube, folding, isolated camera plate, ground plane on top | Above 20 Hz keeps the images still and keeps the assembly inside the cube |
Open problems
- Is the post tag 15 cm or 20 cm across? The rule fixes the face and the cell but not the margin. One photograph of a real post at the first practice task settles a 4/3 factor on every range on this page.
- What is the real detection range in Utah sun? The measured numbers are synthetic, with uniform degradations and no glare. A printed 20 cm tag at 5, 10, 15 and 20 m, logged against the time of day and the angle to the sun, replaces them.
- How accurate is the base coordinate? Survey-in for 30, 60 and 120 minutes at a known point, or run two bases and compare. The error maps one to one into the stop tolerance.
- Does the computer throttle in the real enclosure? The thermal figure is a one-dimensional estimate. A 40-minute soak at 40 °C with the real enclosure and the real workload is the test.
- Does gesture recognition work on a baggy suit at 3 to 8 m? No competition data exists. Film 200 gestures from a real suit at four ranges in sun and count the false positives per minute.
- Does a 360° lidar pay for itself? The teams using one also win, which is selection bias rather than proof. The same rover with and without it, on the hill route, measured by the share of runs reaching the 1 m stop, is the comparison.
- How often does a camera drop out? No team publishes a rate. Log every dropout across 20 hours of driving with the arm stalling.
Further reading
- WVU publishes the most detailed perception stack in the record, including a learned marker detector tested to 12 m S-WVU-SAR2023, and Monash shows the wrist-camera and mast arrangement in service. Missouri S&T documents the split between a central computer and motor controllers on CAN.
- Software stack and autonomy consumes every interface this page produces.
- Arm and end-effectors owns the wrist camera mount and the cable route that this page’s 1 cm requirement creates.
- Power, electrical architecture and safety owns the thermal design of the enclosure that the computer sits in.
- Communications and networking sets the video budget that the camera count has to fit.
- Interfaces and couplings follows the mast, camera and compute couplings with numbers.
Sources for this page
- S-URC27-RULESUniversity Rover Challenge 2027 – Requirements and GuidelinesOriginal Archived copy
- S-URC27-QAURC2027 Questions & Answers (updated through 2026-10-11)Original Archived copy
- S-P407-ARUCO-TESTArUco 4x4_50 detection-limit experiment run for this edition (OpenCV 5.0.0, 1280x720 synthetic sunlit background, five degradations, 24 seeds per point)Print copy
- S-RS-D435RealSense D430 series, D435 USD 375, D435i USD 399, D435if 425, D436 425; global-shutter depth; ideal range 0.3–3 m; <2 % depth accuracy at 2 mOriginal
- S-ARDUSIMPLE-F9PArduSimple simpleRTK2B Budget (u-blox ZED-F9P), EUR 172; <1 cm with a base station up to 35 km; first RTK fix 35 s cold; requires a multiband antennaOriginal
- S-NV-JETSON-ORINNVIDIA Jetson Orin family, technical specifications table (Orin Nano 34/67 TOPS, NX 117/157, AGX 200/275; 7–75 W; LPDDR5 bandwidth; module dimensions; CSI/USB/PCIe)Original
- S-URC27-HARDWAREURC 2027 task hardware, identified from the rulebook's own hyperlinks (Redragon K552, Waveshare 4.2" e-paper, KEILEOHO 32 oz rock pick hammer)Print copy
- S-P407-STEREO-CALCStereo depth-error model and figure for six camera rigsPrint copy
- S-WVU-SAR2026Team Mountaineers System Acceptance Review 2026 (rover "Deimos"): tri-modal 2.4 GHz + 5.8 GHz + 70 cm, gimbal camera on antenna mast, 750 m LOS / 164 m NLOS high-noise test, antenna + radio budget linesOriginal
- S-WVU-SAR2023Team Mountaineers System Acceptance Review 2023 (rover "Wanderer"): Cambium PTP 450 900 MHz link, 850 m LOS / 300 m NLOS, 2 m telescoping mast, drone 900 MHz + 2.4 GHzOriginal



