Programování robotického ramene - Python
Nástin aktivit
učitele
- Tato ukázka seznámí studenty se základním programováním motoru paže robota V5 Clawbot.
- Naučení se programovat motor paže umožňuje studentům správně ovládat pohyby paží robota V5 Clawbot. Více informací o instrukcích používaných v projektu Python naleznete v k VEXcode V5.
Tipy
učitele
Používání automatického doplňování
Automatické doplňování je funkce ve VEXcode V5, která předpovídá zbytek příkazu, který píšete. Během práce s VEXcode V5 je povzbuďte k používání funkce automatického doplňování, která jim pomůže se syntaxí Pythonu. 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 o Pythonu z 
Clawbot V5 je připraven k dosažení!
Tento průzkum vám poskytne nástroje, abyste mohli začít vytvářet skvělé projekty, které využívají paži V5 Clawbota.
- Instrukce VEXcode V5 Python, které budou použity v tomto průzkumu:
- arm_motor.spin_for(VPŘED, 90, STUPNĚ)
- arm_motor.set_position(0, DEGREES)
- čekat (2, SECONDS)
-
Chcete-li zjistit další informace o pokynu, vyberte ikonu otazníku vedle příkazu a zobrazí se další informace.

- Ujistěte se, že máte stažený a připravený potřebný hardware, svůj technický notebook a VEXcode V5.
| Množství | Potřebné materiály |
|---|---|
| 1 |
VEX V5 Classroom Starter Kit (s aktuálním firmwarem) |
| 1 |
VEXkód V5 |
| 1 |
Inženýrský zápisník |
| 1 |
Příklad projektu s Clawbotem a Advanced TrainingBot (pohon 2 motory, bez gyroskopu) |
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ždou z následujících možností:
-
Jsou motory zapojeny do správných portů?
-
Jsou inteligentní kabelyzcela zasunutydo všech motorů?
Tipy pro učitele
Předveďte studentům každý krok řešení problémů.
Krok 2: Zahájení nového projektu
Před zahájením projektu vyberte správnou šablonu projektu. Ukázkový projekt Clawbota a Advanced TrainingBot (pohon 2 motory, bez gyroskopu) obsahuje konfiguraci motorů Clawbota. Pokud šablonu nepoužijete, váš robot nespustí projekt správně.
Proveďte následující kroky:
- Otevřete nabídku Soubor.
- VyberteOtevřítPříklady.
- Vyberte a otevřete ukázkový projekt Clawbot a Advanced TrainingBot (pohon se 2 motory, bez gyroskopu).
- Protože budeme programovat pro ovládání ramene, přejmenujte svůj projektArmControl.
- Uložtesvůj projekt.
- Zkontrolujte, zda je název projektu ArmControl nyní v okně uprostřed panelu nástrojů.

Tipy pro učitele
- Protože se jedná o úvodní aktivitu s programováním, měl by učitel nejprve namodelovat jednotlivé kroky a poté požádat studenty, aby provedli stejné akce. 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 si studenti vybrali vzorový projekt Clawbot a Advanced TrainingBot (pohon se 2 motory, bez gyroskopu).
Můžete studentům upozornit, že na stránce Příklady je k dispozici 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.
- 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.
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 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ý bude zvedat a spouštět paži Clawbota.
- Připomeňte studentům, aby si své projekty během práce ukládali. Články v sekci Python v knihovně 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 studentské skupiny zopakovaly kroky, které byly právě dokončeny při zahájení nového projektu ve VEXcode V5.
Krok 3: Zvedněte paži
Nyní začneme naprogramováním paže, aby se zvedla!
# Import knihovny
z importu vex *
# Zahájení kódu projektu
arm_motor.set_position(0, DEGREES)- Napište příkaz arm_motor.set_position(), jak je uvedeno výše, do programovací oblasti pro nastavení počáteční polohy ramene.
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)- Přidejte příkaz arm_motor.spin_for()pod příkaz arm_motor.set_position() , jak je znázorněno výše, pro pohyb ramene nahoru.
- Vyberte ikonu Slot. Svůj projekt si můžete stáhnout do jednoho z dostupných slotů v Robot Brain. Vyberte Slot 1.
- Připojte robota k počítači nebo tabletu. Ikona mozku v panelu nástrojůse po úspěšném navázání připojení rozsvítí zeleně.
- Klikněte na tlačítkoStáhnoutna panelu nástrojů pro stažení projektu ArmControl do robotického mozku.
Sada nástrojů pro učitele
Pokud studenti používají počítač, požádejte je, aby nyní 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.

- Zkontrolujte, zda se projekt ArmControl stáhl do mozku ve vámi zvoleném slotu.
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, aby Clawbot mohl pohybovat svou paží. Ukažte, jak ukončit projekt a vrátit paži Clawbota do klidové polohy.
Řekněte studentům, že nyní je řada na nich, aby vypracovali své projekty. Ujistěte se, že mají dostatek prostoru pro bezpečné zvednutí paže Clawbota.
- Spusťte projekt na Clawbotu tak, že se ujistíte, že je projekt vybrán, a poté stisknete tlačítko Spustit. Gratulujeme k vytvoření vašeho prvního projektu Claw Arm!
Krok 4: Vyzkoušejte toto: Naprogramujte paži dolů
Nyní, když jste naprogramovali rameno, aby se pohybovalo nahoru, budete nyní naprogramovat rameno pro spouštění nebo pohyb dolů.

- Přidejte do projektu ArmControl druhý příkaz arm_motor.spin_for(), aby se rameno zvedlo o 90 stupňů, počkalo 2 sekundy a poté se spustilo zpět.
- Nápověda:Budete muset změnit směr v rámci příkazu.
- Všimněte si, že rameno drží svou pozici, zatímco je spuštěn příkazwait. Motor čerpá energii z baterie, aby držel rameno proti gravitační síle. Je to proto, že výchozí nastavení pro zastavení motoru je nastaveníhold. Pro zastavení existují dvě další nastavení -brzdaavolný doběh. O těch se dozvíte v jiné laboratoři.
Řešení
–
pro učitele – sada nástrojů
Řešení problému je uvedeno níže. studenti mohli rameno spustit dolů, museli v příkazu arm_motor.spin_for) změnit parametr „VPŘED“ na „ZADÁNÍ.
# Začátek projektu kód
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
wait(2, SECONDS)
arm_motor.spin_for(REVERSE, 90, DEGREES)
Krok 5: Dokončete výzvu řídícího letového provozu

Ve výzvě Flight Traffic Controller Challenge musí Clawbot pohnout paží nahoru a dolů jednou o 90 stupňů, počkat 3 sekundy, pohnout paží dvakrát nahoru a dolů o 45 stupňů, počkat 5 sekund a poté posunout paži nahoru a dolů o tři sekundy. krát pro 90 stupňů.
Zde je seznam chování Clawbota:
- Pohybujte paží nahoru a poté dolů o 90 stupňů.
- Počkejte 3 sekundy.
- Pohybujte paží nahoru a poté dolů o 45 stupňů.
- Pohybujte paží nahoru a poté dolů o 45 stupňů.
- Počkejte 5 sekund.
- Pohybujte paží nahoru a poté dolů o 90 stupňů.
- Pohybujte paží nahoru a poté dolů o 90 stupňů.
- Pohybujte paží nahoru a poté dolů o 90 stupňů.
Řešení
–
pro učitele – sada nástrojů
Většina příkazů v této výzvě je arm_motor.spin_for(). Po přidání příkazu pro pohyb ramene nahoru a jednoho pro pohyb ramene dolů můžete oba příkazy označit, kliknout pravým tlačítkem myši a poté je zkopírovat a vložit tolikrát, kolikrát je potřeba. Pak lze parametry změnit tak, aby splňovaly daný požadavek, a mezi ně lze přidat příkazy wait.
- Prohlédněte si příklad řešení úkolu pro řídícího letového provozu zde:
# Začátek projektu
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)
wait(3, SECONDS)
arm_motor.spin_for(FORWARD, 45, DEGREES)
arm_motor.spin_for(REVERSE, 45, DEGREES)
arm_motor.spin_for(FORWARD, 45, DEGREES)
arm_motor.spin_for(REVERSE, 45, DEGREES)
wait(5, SECONDS)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(ZPĚT, 90, STUPŇŮ)
arm_motor.spin_for(VPŘED, 90, STUPŇŮ)
arm_motor.spin_for(ZPĚT, 90, STUPŇŮ)Pokročilejší studenti mohou pro zjednodušení řešení použít smyčky.
# Začátek projektu
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)
wait(3, SECONDS)
for repeat_count in range(2):
arm_motor.spin_for(FORWARD, 45, DEGREES)
arm_motor.spin_for(REVERSE, 45, DEGREES)
wait(5, SECONDS)
for repeat_count in range(3):
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)- Programovací rubrika(Dokumentace Google / .docx / .pdf)