Autonomous
Gondola
Carriage System

Arduino Control Dual-Wheel Friction Drive IR Sensing Siemens NX 3D Printed PLA

A self-driving, open-air rope-climbing gondola that carries six Playmobil passengers up a 30° incline, pauses at two intermediate tape markers, holds at the top, and returns to the start on its own — built around a dual-wheel friction drive and an Arduino IR control system, all under a 1 lb weight limit.

3D render of the open-air gondola carriage system
62s
Full round trip (120 s limit)
6
Passengers carried, zero lost
30°
Inclined rope track
<1 lb
Total system weight (0.454 kg)
Mechanical Drive
Drive TypeDual-wheel friction drive
Motors2 × N20 DC gear motors
Wheel Diameter20 mm (r = 0.025 m)
Travel Speed~0.20 m/s @ 75 rpm
Friction Coeff.μ ≈ 0.289 required
Structure3D-printed PLA chassis
Control & Electronics
ControllerArduino + motor shield
Sensors3 × IR reflectance (front/back/side)
Stop DetectionBlack-tape markers
Power2 × 9V batteries
Stop Timing2 × 3 s intermediate, 7 s at top
OperationFully autonomous round trip

Design Overview

The goal was to replicate a full-scale ropeway in miniature: an open-air carriage that climbs an inclined rope, carries six passengers, makes timed stops, and returns to its start — entirely on its own and within a strict 1 lb weight budget.

After scoring five drive concepts in a weighted Pugh matrix, a dual-wheel friction drive was selected. The two motor-driven wheels rest on top of the rope so the carriage's own weight supplies the normal force for traction, removing the need for a separate clamping mechanism and keeping the design light and simple. The chassis was modelled in Siemens NX as a three-tier stack and 3D printed in PLA.

Design Goals

  • Climb a 30° rope without slipping, up and down
  • Carry six passengers safely with no losses
  • Complete the autonomous round trip under 120 seconds
  • Stay within the 0.454 kg (1 lb) system weight limit
Exploded CAD assembly drawing of the gondola

Free body diagram of the carriage on the inclined rope

Drive & Traction Analysis

A free-body analysis of the carriage on the 30° incline set the traction targets. The climbing force needed is mg·sin(30°), while each wheel's grip depends on the normal reaction mg·cos(30°)/2. Setting friction equal to the climbing demand gives a required coefficient of μ ≈ tan(30°)/2 ≈ 0.289 — comfortably within reach of the wheel-on-rope interface.

Speed and timing followed from the 75 rpm motors and 25 mm wheel radius, giving roughly 0.20 m/s along the 3.66 m round-trip path. Centre-of-mass and sensor-placement studies kept the masses low and symmetric for stability, and positioned the IR sensors clear of the rope to avoid false readings.

Key Analyses

  • Climbing force and required friction coefficient (μ ≈ 0.289)
  • Motor torque from wheel radius and normal load
  • Speed, trip time, and stop-time budgeting
  • Stability via low, symmetric centre of mass

Control System

The system breaks into three subsystems — power, control, and mechanical drive. An Arduino paired with a motor shield reads three IR reflectance sensors and runs a state machine that drives the carriage forward, pauses at each detected tape marker, holds 7 seconds at the top, then reverses home.

A 50 ms debounce filter on the side sensor rejects false positives and caps intermediate stops at two, while front and back sensors define the top and home limits. A Safety FMEA flagged battery voltage drop, missed tape detection, and wheel slip as the highest-priority risks, each addressed during testing.

Control Features

  • State machine: forward run → timed stops → top hold → reverse → home
  • Debounce filtering to reject false IR triggers
  • Three-sensor layout for stop, top, and return detection
  • FMEA-driven mitigation of top failure modes
Functional decomposition diagram of the gondola system

The built gondola prototype on the demo bench

From CAD to Hardware

The final build closely follows the CAD model: a three-tier 3D-printed PLA chassis, with the drive wheels wrapped in friction tape to grip the rope, an N20 gear motor on the printed pillar mount, and an IR reflectance sensor set into the upper tier. The Arduino, motor shield, and 9V batteries sit in the lower tiers, with the wiring routed between levels.

On the demo rig it completed the full autonomous round trip — climbing the incline, pausing at the tape markers, holding at the top, and returning home — without losing traction or dropping a passenger.

Build Highlights

  • Three-tier 3D-printed PLA chassis matching the CAD design
  • Friction-taped drive wheels for reliable rope grip
  • N20 gear motor and IR sensor mounted on the top tier
  • Arduino, motor shield, and batteries housed in the lower tiers

Autonomous Demo Run