Otázka:
Jak si může motor EV3 „pamatovat“ svou výchozí polohu?
Christopher H
2016-07-17 23:13:09 UTC
view on stackexchange narkive permalink

V současné době pracuji na projektu, který využívá velké motory. Chci, aby se projekt vrátil do „výchozí polohy“ (0,0,0) pouhým stisknutím tlačítka, aby mohl být použit vícekrát (identicky). Jak to mohu udělat s běžným softwarem Mindstorms EV3 (používám vzdělávací verzi)?

Pokusil jsem se na to najít odpověď před rokem. Pokud nevybudujete nějaký synchronizační bod pomocí jiného senzoru, nemůžete.
Jeden odpovědět:
David Lechner
2016-07-18 08:52:31 UTC
view on stackexchange narkive permalink

Nejjednodušší způsob, jak si „zapamatovat“ počáteční pozici, je vytvořit výchozí pozici 0 . To lze provést pomocí odpočinku v bloku otáčení motoru (1). Poté, co se vaše motory pohnou (simulované pomocí (2)), můžete pomocí smyčky (3) spustit motory zpět na nulu.

Základní myšlenka však je, že pokud je poloha motoru záporná, pak musíme motor spustit v pozitivním směru a naopak. Tímto způsobem běžíme zpět na pozici 0 . Jakmile dosáhneme polohy motoru 0 , opustíme smyčku a zastavíme motor (5).

Toto má být příkladem, který vás nasměruje správným směrem a lze je vylepšit. Například můžete použít proporcionální ovladač na (4) ke zpomalení motoru, když se blíží poloze 0 . Ukázkový kód, jak je uveden níže, několikrát osciluje, než se dostane přesně na 0 , což není moc hezké.

Navíc budete muset přidat kód, který čeká na před spuštěním smyčky stiskněte tlačítko a pro každý motor budete potřebovat další smyčky.

sample code



Tyto otázky a odpovědi byly automaticky přeloženy z anglického jazyka.Původní obsah je k dispozici na webu stackexchange, za který děkujeme za licenci cc by-sa 3.0, pod kterou je distribuován.
Loading...