A Koepe-style skip winder cycles: load ore at the shaft bottom, hoist to the surface, dump, then descend empty to load again. The drum controller runs an accel-limited (bang-bang) speed profile — accelerate at a fixed rate, cruise at max speed, then start braking exactly one braking-distance out so the skip stops precisely at the target:
brakingDistance = v² / (2·a)
if remaining ≤ brakingDistance: decelerate
elif v < vMax: accelerate
else: cruise
This naturally produces a trapezoidal profile on a deep shaft (reaches vMax) or a triangular one on a shallow shaft (never reaches vMax). Rope tension follows straight from Newton's second law applied to the skip+rope mass along the shaft axis:
T = m·(g − a_y)
a_y = +a while accelerating downward / decelerating upward
a_y = −a while accelerating upward / decelerating downward
Tension rises above the static weight (m·g) whenever the winder is accelerating the load upward or braking it on the way down, and drops below it during the opposite phases — exactly what a real rope-tension trace shows during hoisting. Motor power is P = T·v.