MOSS – Přesný senzor pohybu

Symbol blokuPotřebná licence: ADVANCED
Qt SVG Document Exported by REXYGEN Studio tsPulse cntPulse tsSync cntCorr flags R1 pos vel acc status iE MOSS

Popis funkce
Blok MOSS implementuje pokročilý filtr pro inkrementální (kvadraturní) senzory polohy. Blok vyžaduje speciální hardware, neboť pro správnou činnost je nutné znát nejen aktuální hodnotu z čidla, ale také časovou značku posledního pulsu, směr pohybu při posledním pulzu, časovou značku referenčního okamžiku (ze stejného zdroje jako časová značka pulzu). Výstupem bloku je nejen filtrovaná poloha, ale také rychlost a zrychlení. Pro správnou činnost je potřeba vhodně zvolit parametr alpha. Menší hodnota snižuje šum, ale zvětšuje zpoždění signálu.

Pokud není zaznamenán nový pulz po dobu stall, je senzor považován za zastavený a výstupy pos, vel, acc jsou nastaveny na 0. Je-li pos > maxpos, je vnitřní pozice zpracovaná Kalmanovým filtrem dekrementována o celočíselný násobek maxpos a inkrementována zpět pro výstup. To způsobí, že algoritmus filtru vypočítá dostatečně malá čísla a nesníží přesnost kvůli chybám zaokrouhlování. Výchozí hodnota by se normálně neměla měnit. Pokud není po dlouhou dobu přijat žádný impuls, výstup prediktoru začne driftovat. Pro překonání tohoto driftu, pokud není detekován žádný puls po dobu delší než mindivert, je výstupní pozice změněna o ±puls od vstupní (měřené) pozice.

Poznámka 1: Zdánlivě nelze polohu určit přesněji než je kvantizační chyba (±1 pulz) měření, ale znalost rychlosti umožňuje odhadovat polohu přesněji. Dále se může zdát, že nelze určit rychlost přesněji než jako podíl počtu pulzů a rozdílu časových značek, ale vložením obou signálů do grafu je vidět, že MOSS signál zlepšuje. Určování zrychlení diferencí vede na naprosto nepoužitelné hodnoty.

Poznámka 2: Interně blok realizuje Kalmanův filtr pro systém se 2 integrátory (tj. vstup zrychlení, výstup poloha). Filtr je diskretizován v každé periodě znova, přičemž diskretizační perioda je aktuální rozdíl časových značek. Pro odvození filtru je potřeba znát vstupní a výstupní poruchy. Pokud uvažujeme bílý (gaussovský) šum, stačí znát jejich poměr a to je parametr alpha.

Tento blok nepropaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.

Vstup

tsPulse

Časová značka posledního pulsu

DWord (U32)

cntPulse

Poslední stav čítače pulsů

DWord (U32)

tsSync

Časová značka synchronizačního pulsu

DWord (U32)

cntCorr

Odchylka aktuálního pulsu od ideální polohy

Double (F64)

flags

Vstupní stavové příznaky (1: POS, 2: NEG, 4: RUN)

DWord (U32)

R1

Reset bloku

DWord (U32)

Parametr

freq

Frekvence zdroje časové značky [Hz]   0.0 100000000.0

Double (F64)

stall

Čas pro aktivaci zastavení [s]   0.0 0.08

Double (F64)

alpha

Návrhový parametr Kalmanova filtru   0.0  200.0 26.0

Double (F64)

maxpos

Optimalizace zaokrouhlovacích chyb Kalmanova filtru   0.0 1e+10

Double (F64)

mindivert

Čas pro aktivaci omezení odchylky prediktoru [s]   0.0 0.003

Double (F64)

Výstup

pos

Filtrovaná poloha

Double (F64)

vel

Filtrovaná rychlost

Double (F64)

acc

Filtrované zrychlení

Double (F64)

status

Výstupní stavové příznaky (1: POS, 2: NEG, 4: RUN, 8: INIT, 16: PULSE, 32: STALLED, 64: DIVERT)

Long (I32)

iE

Kód chyby

Error

2024 © REX Controls s.r.o., www.rexygen.com