Programování pohonu vpřed a vzad - C++
Nástin aktivit
učitele
Tato studie seznámí studenty se základními způsoby programování, jako je pohyb vpřed, vzad a čekání. Tyto základní dovednosti jim pomohou uspět v další aktivitě a v soutěži Strike Challenge na konci této STEM laboratoře, kde budou soutěžit v bowlingu s využitím Speedbota.
Pomocí šablony projektu V5 Speedbot (pohon se 2 motory, bez gyroskopu) mohou studenti naprogramovat Speedbota tak, aby se pohyboval vpřed pouze pomocí jedné instrukce.
Speedbot je připraven k pohybu!
Tento průzkum vám poskytne nástroje, které vám umožní naprogramovat Speedbota pro jednoduché pohyby. Na konci této aktivity se zapojíte do výzvy Basketball Drills Challenge pomocí chování vpřed, vzad a čekání.
Sada nástrojů pro učitele
Zde je přehled uživatelského rozhraní VEXcode V5. Studenti se s těmito záložkami/tlačítky seznámí během aktivit v této STEM laboratoři Momentum Alley. V celé STEM laboratoři jsou také k dispozici odkazy s dalšími informacemi o těchto kartách/tlačítkách.

- Pokyny VEXcode V5, které budou použity při tomto průzkumu:
- Drivetrain.driveFor(1, palce);
- počkejte(1, sekundy);
-
Chcete-li se dozvědět více informací o pokynech, vyberte Nápověda a poté vyberte ikonu otazníku vedle příkazu pro zobrazení dalších informací.

- Ujistěte se, že máte požadovaný hardware, svůj technický notebook a VEXcode V5 stažený a připravený.
Tipy pro učitele
Pokud student používá VEXcode V5 poprvé, může si tutoriály kdykoli během tohoto zkoumání přečíst.

| Množství | Potřebný materiál |
|---|---|
| 1 |
Speedbot Robot |
| 1 |
Nabitá baterie robota |
| 1 |
VEXkód V5 |
| 1 |
USB kabel (pokud používáte počítač) |
| 1 |
Technický poznámkový blok |
Tipy pro učitele
Předveďte studentům každý krok řešení problémů.
Krok 1: Příprava na průzkum
Než začnete s aktivitou, máte každou z těchto položek připravenou? Zkontrolujte každý z následujících bodů:
-
Jsou inteligentní kabelyzcela zasunutydo všech motorů?
Krok 2: Zahájení nového projektu
Pro zahájení projektu proveďte následující kroky:
-
Otevřete nabídku Soubor a vyberte Otevřít příklady.
-
Vyberte a otevřete projekt šablony Speedbot (Drivetrain 2-motor, No Gyro). Šablona projektu obsahuje konfiguraci motorupro Speedbot. Pokud šablonu nepoužijete, váš robot nebude projekt spouštět správně.

- Protože budete pracovat na pohybu Speedbota vpřed a vzad, pojmenujete svůj projektPohon. Vyberte název projektu, zadejte „Disk“a poté vyberte „Uložit“.

Tipy pro učitele
-
Názvy projektů mohou mít mezery mezi slovy nebo za nimi.

- Můžete studenty požádat, aby k názvu projektu přidali své iniciály nebo název své skupiny. To pomůže rozlišit projekty, pokud požádáte studenty, aby je odevzdali.
- Protože se jedná o první aktivitu s programováním, kterou se vaši studenti mohou pokusit, měli byste jednotlivé kroky namodelovat a poté studenty požádat o provedení stejných akcí. Učitel by pak měl sledovat, zda studenti správně dodržují kroky.
- Ujistěte se, že studenti vybrali v nabídce Soubor možnost Otevřít příklady.
- Ujistěte se, že studenti vybrali šablonu projektu Speedbot (pohon se 2 motory, bez gyroskopu).
- Můžete studentům upozornit, že na stránce s příklady je několik možností, ze kterých si mohou vybrat. Při stavbě a používání jiných robotů budou mít možnost používat různé šablony.
-
Zkontrolujte, zda se název projektuDrivenyní nachází v okně uprostřed panelu nástrojů.

Nástroje pro učitele
projektů
-
Zdůrazněte, že když poprvé otevřeli VEXcode V5, okno bylo označeno jako Projekt VEXcode. Projekt VEXcode je výchozí název projektu při prvním otevření VEXcode V5. Jakmile byl projekt přejmenován Drive a uložen, zobrazení se aktualizovalo a zobrazovalo se nový název projektu. Pomocí tohoto okna v panelu nástrojů je snadné zkontrolovat, zda studenti používají správný projekt.
-
Řekněte studentům, že jsou nyní připraveni začít se svým prvním projektem. Vysvětlete studentům, že pouhým provedením několika jednoduchých kroků budou schopni vytvořit a spustit projekt, který posune Speedbota vpřed.
-
Připomeňte studentům, aby si své projekty během práce ukládali. Sekce C++ z knihovny VEX vysvětlují postupy ukládání ve VEXcode V5.
Sada nástrojů pro učitele
Zastavte
a diskutujte
Toto je dobrý bod k zastavení a k tomu, aby si studenti individuálně nebo ve skupinách zopakovali kroky, které právě dokončili při zahájení nového projektu ve VEXcode V5. Požádejte studenty, aby se nad tím zamysleli individuálně, než se o to podělí ve své skupině nebo s celou třídou.
Krok 3: Jeďte vpřed
Nyní jste připraveni začít programovat robota pro jízdu vpřed!
-
Než začneme programovat, musíme pochopit, co je to instrukce. Pokyny se skládají ze tří částí. Pro více informací o tom, co je instrukce, si přečtěte tento článek.

-
Přidejte instrukce do projektu, aby váš projekt vypadal takto:
int main() { // Inicializace konfigurace robota. NEODSTRAŇUJTE! vexcodeInit(); // Začněte kód projektu Drivetrain.driveFor(vpřed, 100, mm);
Tipy pro učitele
Jakmile začnete psát instrukci, můžete si všimnout funkce automatického dokončování. Pomocí kláves „Nahoru“ a „Dolů“ vyberte požadovaný název a poté stiskněte klávesu „Tab“ nebo (Enter/Return) na klávesnici pro potvrzení výběru. Pro více informací o této funkci si přečtěte článek C++.

-
Vyberte ikonu slotu pro výběr jednoho z osmi dostupných slotů v mozku robota a vyberte slot 1.

-
Připojte robotický mozek V5 k počítači pomocí kabelu micro USB a zapněte robotický mozek V5. Ikona mozku na panelu nástrojůse po úspěšném navázání připojení rozsvítí zeleně.

-
VyberteStáhnoutpro stažení projektu do Brainu.

Sada nástrojů pro učitele
-
Připomeňte studentům, aby odpojili USB kabel od robotického mozku. Pokud je robot během spouštění projektu připojen k počítači, může to způsobit, že bude tahat za připojovací kabel.
Sada nástrojů pro učitele
Zastavte
a diskutujte
Požádejte studenty, aby předpověděli, co si myslí, že se stane, když si tento projekt stáhnou a spustí na Speedbotu. Řekněte studentům, aby si své předpovědi zaznamenali do technických sešitů. Pokud to čas dovolí, požádejte každou skupinu, aby se podělila o svou předpověď.
-
Zkontrolujte na obrazovce robotického mozku, je váš projekt. Název projektu Drive by měl být uveden na slotu 1.

Sada nástrojů pro učitele
Model
-
Předveďte spuštění projektu před třídou, než ho všichni studenti zkusí najednou. Shromážděte studenty na jednom místě a nechte dostatek prostoru pro pohyb Speedbota, pokud je umístěn na podlaze.
-
Řekněte studentům, že nyní je řada na nich, aby spustili svůj projekt. Ujistěte se, že mají volnou cestu a že do sebe žádní Speedboti nenarazí.
-
Spusťte projekt (C++) na robotovi tak, že se ujistíte, že je projekt vybrán, a poté stiskněte tlačítkoSpustitna mozku robota. Gratulujeme k vytvoření prvního projektu!

Krok 4: Zpátečka
Nyní, když jste naprogramovali robota pro jízdu vpřed, dovolte nám, abychom ho naprogramovali pro jízdu vzad.
-
Změňte parametr v instrukci pohonu na reverzní, aby váš projekt vypadal takto:
int main() { // Inicializace konfigurace robota. NEODSTRAŇUJTE! vexcodeInit(); // Začněte kód projektu Drivetrain.driveFor(vpřed, 100, mm); } -
Vyberte název projektu a změňte jej zPohonnaReverzace.

-
Vyberte ikonu Slot pro výběr nového slotu. Vyberte slot 2.

-
Stáhněte si projekt (v jazyceC++).

-
Zkontrolujte, zda se váš projekt stáhl (v jazyceC++), a to pohledem na obrazovku robotického mozku. Název projektuReverseby měl být uveden v položce 2.

-
Spusťte (vC++) projekt na robotovi tak, že se ujistíte, že je projekt vybrán, a poté stiskněte tlačítkoSpustitna robotickém mozku.

Sada nástrojů
kroku 4
-
Chcete-li změnit příkazdriveForzvpřednavzad, jednoduše změňte první parametr na -100. Díky tomu se motory v hnacím ústrojí budou pohybovat v opačném směru.
-
Počet mm lze změnit, ale v tomto příkladu je ponecháme na 100 mm, jak bylo nastaveno v předchozím kroku.
-
Připomeňte jim, aby před spuštěním projektu odpojili USB kabel od robotického mozku.
-
Připomeňte studentům, aby si své projekty během práce ukládali. Knihovna VEX obsahuje sekce pro jazyky C++ , které vysvětlují postupy ukládání ve VEXcode V5.
Krok 5: Počkejte a poté couvejte
Nyní, když jsme naprogramovali robota, aby jel vpřed a pak vzad, můžeme nyní přidat čekací pokyn, aby robot čekal určitou dobu před jízdou vzad.
-
Přidejte příkaz Wait před příkaz Drive for. Ujistěte se, že je Wait odsazen tak, aby odpovídal příkazu Drive for a že všechny příkazy jsou uvnitř kudrnatých závorek. To říká robotu, aby počkal tři sekundy před jízdou dozadu.
počkat(3, sekundy); Hnací ústrojí.driveFor(vpřed, 100, mm); -
Vyberte název projektu a změňte jej z Reverse na WaitReverse.

-
Vyberte ikonu Slot pro výběr nového slotu. Vyberte slot 3.

-
Stáhněte si projekt (v jazyceC++).

-
Zkontrolujte, zda se váš projekt stáhl (v jazyceC++), a to pohledem na obrazovku robotického mozku. Název projektu WaitReverse by měl být uveden ve slotu 3.

-
Spusťte (vC++) projekt na robotu tak, že se ujistíte, že je projekt vybrán, a poté stiskněte tlačítkoSpustit.

Sada nástrojů
kroku 5
-
Použití příkazu wait projekt neukončí, pouze pozastaví pohyb robota.
-
Pokud studenti používají počítač, připomeňte jim, aby před spuštěním projektu odpojili USB kabel od robota Brain.
-
Připomeňte studentům, aby si své projekty během práce ukládali. Knihovna VEX obsahuje sekce pro jazyky C++ , které vysvětlují postupy ukládání ve VEXcode V5.
Krok 6: Dokončete basketbalovou cvičební výzvu!

Rozložení výzvy Basketball Drills Challenge
V Basketball Drills Challenge musí být robot schopen navigovat řadu čar v různých vzdálenostech. Robot pojede dopředu na první čáru, která je 10 cm od výchozí polohy, počká 1 sekundu a poté se vrátí zpět na stejnou čáru. Robot pak opakuje akci tím, že jede dopředu 20 cm na druhou čáru, počká 1 sekundu a pak jede dozadu na původní startovní čáru. Robot pojede dopředu na třetí čáru se vzdáleností 40 cm, počká 1 sekundu a nakonec se vrátí na startovní čáru, aby dokončil úkol.
Před naprogramováním robota naplánujte jeho cestu a chování ve svém technickém notebooku.
Po dokončení basketbalové výzvy budete moci kombinovat pohyby vpřed a vzad s dalším chováním robota a plnit tak ještě pokročilejší výzvy.
Při programování mějte na paměti, že 1 cm = 10 mm.
Sada nástrojů pro učitele
Zastavte
a diskutujte
Požádejte studenty, aby se podělili o svá řešení ve dvojicích, než je budou diskutovat s celou třídou. Usnadněte diskusi tím, že se zeptáte:
-
Setkal/a jste se při programování této výzvy s nějakými obtížemi?
-
Choval se váš robot tak, jak jste na základě vašeho projektu očekávali? Proč ano nebo proč ne?
-
Kdybyste mohli tu výzvu zopakovat, je něco, co byste udělali jinak?
Řešení
–
pro učitele – sada nástrojů
int main() {
// Inicializace konfigurace robota. NEODSTRAŇUJTE!
vexcodeInit();
// Začátek projektu
// Pojezd vpřed o 10 cm
Drivetrain.driveFor(forward, 100, mm);
// Čekání 1 sekunda
wait(1, sekundy);
// Pojezd zpět na startovní čáru
Drivetrain.driveFor(reverse, 100, mm);
// Pojezd vpřed o 20 cm
Drivetrain.driveFor(forward, 200, mm);
// Čekání 1 sekunda
wait(1, sekundy);
// Pojezd zpět na startovní čáru
Drivetrain.driveFor(reverse, 200, mm);
// Pojezd vpřed o 40 cm
Drivetrain.driveFor(forward, 400, mm);
// Čekání 1 sekunda
wait(1, sekundy);
// Pojezd zpět na startovní čáru
Drivetrain.driveFor(reverse, 400, mm);
}