TrajLab plánování trajektorií
Otevřít interaktivní verzi →

Tohle je statická kopie kapitoly pro vyhledávače. Interaktivní verze má animované obrázky, kontrolní otázky a tlačítka, která příklad načtou do kalkulačky.

7. Napojování segmentů

Dráha přes několik bodů se dá naplánovat jako sled samostatných pohybů — ale pak se v každém mezibodě zastaví. To je pomalé a stroji to nedělá dobře.

Zaoblení rohu

Řešení je nezastavovat a roh projet obloukem. Rychlost přitom zůstane, ale dráha přes zadaný bod už neprojde. Za blend se vektor rychlosti otočí o úhel θ, což je změna o velikosti 2v·sin(θ/2), a při a_max to trvá:

tblend = 2 v sin(θ/2)amax

Odchylka od zadaného bodu pak vyjde:

odchylka = v² sin²(θ/2)2 amax
odchylkazadaný bod
Odchylka 125.0 mm · doba zaoblení 0.71 s · blend začne 354 mm před rohem
Při poloviční rychlosti by odchylka byla jen 31.2 mm — tedy čtvrtina. Roste s druhou mocninou rychlosti, což je důvod, proč se u přesných operací v rozích shazuje posuv. Zkus θ = 175°: skoro otočka, a odchylka se blíží celé brzdné dráze.
Táhni rychlost a dívej se na odchylku: roste s její druhou mocninou. Stroj, který v půlce rychlosti projede roh čistě, mine ho na plné rychlosti čtyřikrát hůř. Přesně proto se u přesných operací rychlost v rozích shazuje.
Otočka o 180° je nejhorší případ. Dosaď θ = π: odchylka vyjde v²/2amax, což je přesně brzdná dráha. Jinými slovy: obrátit směr bez zastavení nejde a plánovač to musí říct, ne to tiše zaokrouhlit.

Vzorce v této kapitole

t_blend — doba zaoblení rohu
t_blend = 2 v sin(θ/2) / a_max [s] derived
δ — odchylka zaobleného rohu od zadaného bodu
δ = v² sin²(θ/2) / (2 a_max); θ = π → δ = v²/2a_max, tedy brzdná dráha [m] derived, verified by integration