Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
Šioje instrukcijoje sužinosite, kaip sukurti labirintą sprendžiantį robotą, kuris sprendžia žmonių nubrėžtus labirintus.
Nors dauguma robotų sprendžia pirmosios rūšies nubrėžtus labirintus (jūs turite sekti linijas, jie yra keliai), normalūs žmonės linkę piešti antros rūšies labirintus. Robotui juos pamatyti yra daug sunkiau ir išrankiau, bet ne neįmanoma!
1 žingsnis: 1 žingsnis: labirinto sprendimas
Aš iš tikrųjų apsvarstiau daugybę labirinto sprendimo metodų, tačiau dažniausiai naudojamas metodas yra lengvai programuojamas, nors jis vis tiek išsprendžia beveik bet kokį labirintą!
Šiuo metodu robotui sakome:
- Pasukite į dešinę, kai tik galite
- Jei ne, važiuokite į priekį, jei tai įmanoma
- Pasukite į kairę kaip paskutinį sprendimą ir
- Pasukite atgal, jei jis patenka į aklavietę
Paveikslėlyje matote labirintą, kuris išsprendžiamas taip. Šis metodas dažnai vadinamas sienos sekėju. Kol paskirties vieta yra išėjimas išorinėje sienoje, sienos sekėjas jį suras.
2 veiksmas: 2 žingsnis: užsakykite dalis
Šiam robotui mums reikės:
- 1 × „Arduino Uno“
- 1 × 4 AA baterijų laikiklis
- 3 × TCRT5000 jutikliai (QTR-1A)
- 2 × 6 V nuolatinės srovės varikliai
- 13 × vyriškos ir moteriškos duonos lentos viela
- 10 × moteriškos-moteriškos duonos lentos viela
- Smeigtuko antraštė su mažiausiai 29 kaiščiais
- Litavimo įranga
Taip pat atsisiųskite ir įdiekite „Arduino IDE“, kad sukurtumėte „Arduino“, ir įsitikinkite, kad „Arduino“buvo prijungtas prie A/B tipo USB kabelio, kad galėtumėte jį prijungti prie kompiuterio.
3 žingsnis: 3 žingsnis: skaitykite iš jutiklio
TCRT5000 jutikliai yra sukurti iš infraraudonųjų spindulių šviesos diodo (mėlynos spalvos rutulio) ir imtuvo (juodos spalvos).
Kai šviesos diodas skleidžia infraraudonąją šviesą ant balto paviršiaus, jis atsispindės imtuve ir grąžins žemą vertę (40–60 mano atveju). Kai lemputė skleidžia šviesą ant juodo paviršiaus, ji absorbuojama ir vėl didelė vertė (700–1010 mano atveju)
Antrame paveikslėlyje parodyta schema, kurioje nurodoma, kaip prijungti jutiklį prie „Arduino“. Laikykite jutiklį taip, kad matytumėte šviesos diodą ir imtuvą, o kaiščiai būtų nukreipti į schemą, kad įsitikintumėte, jog prijungėte tinkamus kaiščius.
Dabar mums tereikia prijungti „Arduino“prie kompiuterio, įdėti šį kodą į „Arduino IDE“ir jį surinkti:
// Pakeiskite A0 į bet kurį prievadą, prie kurio prijungėte jutiklį, kad#define FRONT_SENSOR A0void start () {Serial.begin (9600); } void loop () {int frontValue = analogRead (FRONT_SENSOR); Serial.println (frontValue);}
Dabar, jei jutiklį labai arti perkeliate per baltus ir juodus paviršius, serijiniame monitoriuje vertės turėtų atitinkamai pasikeisti.