4. tēma: Manipulatoru mehānika un objektu pārvietošana

Tavs šīs stundas izaicinājums: Izveidot mehānisku satvērēju, izmantojot trešo motoru, un ieprogrammēt robotu autonomi piebraukt pie objekta, satvert to un nogādāt citā laukuma vietā.

Datorika 7. klase (D.7.1.1., D.7.4.2., D.7.5.1.)

Teorija: Neatkarīgu motoru vadība un zobrati

Līdz šim mēs izmantojām tikai rozā "Movement" blokus, kas darbina divus motorus vienlaicīgi kā automašīnas riteņus. Bet lai kustinātu robota roku, pacēlāju vai satvērēju, mums nepieciešams vadīt vienu konkrētu motoru neatkarīgi no pārējiem.

[Ievietot attēlu šeit: Ekrānuzņēmums no SPIKE lietotnes ar zilajiem "run motor [C] for [90] degrees" un "go to shortest path to position [0]" blokiem]

1. uzdevums: Satvērēja (Spīļu) konstruēšana

Pievienojiet robota bāzei trešo motoru un uzbūvējiet vienkāršu mehānismu objektu satveršanai vai stumšanai.

Izpildes soļi:

  1. Atrodiet brīvu motoru (vēlams vidējo, Medium Motor) un pievienojiet to Hubam (piemēram, portā C).
  2. Izmantojot pieejamos LEGO klučus, izveidojiet roku vai spīles, kas var satvert nelielu objektu (piemēram, riepu vai LEGO klucīti). Pievienojiet šo mehānismu motoram.
  3. Pirms rakstāt kodu, portu skatā manuāli pagrieziet motoru un piefiksējiet grādu rādījumus "Atvērts" un "Aizvērts" pozīcijās.

2. uzdevums: "Pacel un Nolaid" (Zilo bloku testēšana)

Ieprogrammējiet tikko uzbūvēto manipulatoru atvērties un aizvērties, nospiežot Hub pogas, nepārvietojot pašu robotu.

Izpildes soļi:

  1. Izveidojiet jaunu programmu un atrodiet "Events" (Dzeltenie) blokus, piemēram, when [Left Button] pressed.
  2. Zem "Kreisās pogas" pievienojiet zilo bloku run motor [C] for [90] [degrees]. Pārbaudiet, vai spīles aizveras.
  3. Zem "Labās pogas" bloka pievienojiet zilo komandu, lai atvērtu spīles (piemēram, run motor [C] for [-90] [degrees] vai izmantojiet absolūto pozīciju go to position [0]).
  4. Pārbaudiet, vai mehānisms neiesprūst. Ja spīles nevar aizvērties pilnībā objekta dēļ, izmantojiet bloku set motor [C] power to [30]%, lai nesabojātu motoru ar pārslodzi.

3. uzdevums: Autonomā piegādes misija

Savienojiet braukšanas (rozā) un manipulatora (zilos) blokus! Robotam jāaizbrauc līdz objektam (piemēram, 30 cm attālumā), jāsatver tas un jāatved atpakaļ starta pozīcijā.

Izpildes soļi:

  1. Sāciet programmu, atverot satvērēju (zilais bloks).
  2. Pievienojiet rozā move [forward] for [30] cm bloku. Pārliecinieties, ka robots apstājas tieši pie objekta.
  3. Pievienojiet zilo bloku satvērēja aizvēršanai, lai cieši satvertu priekšmetu.
  4. Pievienojiet rozā bloku move [backward] vai pagriezieties par 180 grādiem un aizbrauciet atpakaļ ar objektu.
  5. Beigās pievienojiet zilo bloku satvērēja atvēršanai, lai noliktu kravu.

4. uzdevums (Zvaigznītes izaicinājums): "Sargātāja" režīms ar diviem sensoriem

Ātrākajām komandām – savienojiet šīs stundas satvērēju ar iepriekšējo stundu sensoriem.

Izpildes soļi:

  1. Pievienojiet robotam gan distances, gan krāsu sensoru.
  2. Ieprogrammējiet robotu stāvēt uz vietas ar atvērtu satvērēju.
  3. Kad distances sensors pamana objektu tuvāk par 5 cm, satvērējs zibenīgi aizveras.
  4. Pēc tam robots griežas ap savu asi, kamēr krāsu sensors ierauga noteiktu krāsu (piemēram, Zaļu). Kad redz zaļu – satvērējs atveras un "izspļauj" objektu.

Biežākās kļūdas (un kā tās labot):

Koda piemērs (Misijas algoritms)


# SPIKE Word Blocks vizuālā koda tekstuālā reprezentācija

when program starts
set movement motors to [A] and [B]

# 1. Atver satvērēju
run motor [C] to position [0] degrees at [50]% speed

# 2. Brauc pie mērķa
move [Straight] for [30] [cm]

# 3. Satver objektu (izmantojot laiku, lai neiesprūstu)
start motor [C] at [50]% speed
wait [1] seconds
stop motor [C]

# 4. Atgriežas un noliek
move [Backward] for [30] [cm]
run motor [C] to position [0] degrees
        
Robots sagatavo spīles atvērtā pozīcijā, aizbrauc norādīto distanci, saspiež spīles uz 1 sekundi (pietiekami, lai satvertu objektu bez motora iestrēgšanas), atbrauc atpakaļ un noliek objektu.
⬅ Iepriekšējā stunda Nākamā stunda ➡