Arduino autíčko
Zo stránky SensorWiki
Autor: | Meno Priezvisko | |
Študijný odbor: | Aplikovaná informatika | 3. Bc. (2019) |
Opis projektu
Cieľom projektu je vytvoriť arduino autíčko, ktoré bude schopné samostatne jazdiť a obchádzať prekážky.
Prečo?
- Model slúži ako pohybový koncept pre automatické robotické vysávače, schopné samostatne sa pohybovať v priestore.
Ako ?
Autíčko sa skladá z týchto častí:
- Mikrokontrolér Arduino UNO
- 4x Jednosmerný motor
- 3x Ultrazvukový snímač (Sonar)
- Napájanie motorov
- Napájanie mikrokontroléra
Pre vytvorenie kostry autíčka sme pomocou digitálnych technológií výroby vytvorili nasledovné časti :
- 2x plastový podvozok vytvorený laserovým rezaním
- Kryt pre Mikrokontrolér vytvorený 3D tlačou
Analýza
Najprv bolo potrebné vykonať analýzu dostupných možností, dostupných digitálnych výrobných technológií, na základe ktorej sme vytvorili návrh podvozku autíčka a taktiež 3D model puzdra na mikrokontrolér arduino.
Model podvozku autíčka, následne vytvorený technológiou rezania laserom
3D modely pre puzdro na mikrokontrolér, následne vytvorené technológiou 3D tlače
Popis riešenia
Sem opíšete ako konkrétne ste problém vyriešili. Začnite popisom pripojenia k procesoru (nezabudnite na schému zapojenia!) a zdôraznite ktoré jeho periférie ste pritom využili.
Schéma zapojenia snímača Súbor:Schemaauticko.png
Pozn.: Názov obrázku musí byť jedinečný, uvedomte si, že Obr1.jpg už pred vami skúsilo nahrať už aspoň 10 študentov.
Algoritmus a program
Uveďte stručný popis algoritmu, v akom jazyku a verzii vývojového prostredia ste ho vytvorili. Je vhodné nakresliť aspoň hrubú štruktúru programu napríklad vo forme vývojového diagramu. Rozsiahly program pre lepšiu prehľadnosť rozdeľte do viacerých súborov.
Vyberte podstatné časti zdrojového kódu, použite na to prostredie source:
dist=sonar.ping_cm();
distleft=sonarleft.ping_cm();
distright=sonarright.ping_cm();
if(dist>10 && !sleduj_prava && !sleduj_lava && !zastav)
{
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);
digitalWrite(in3, LOW);
digitalWrite(in4, HIGH);
analogWrite(enA, 100);
analogWrite(enB, 100);
}
if(dist<10 && !zastav)
{
digitalWrite(in1, LOW);
digitalWrite(in2, LOW);
digitalWrite(in3, LOW);
digitalWrite(in4, LOW);
delay(500);
if(distleft>25 && distright<25)
{
otoc_dolava=true;
}
if(distright>25 && distleft<25)
{
otoc_doprava1=true;
}
if(distright>25 && distleft>25)
{
otoc_dolava=true;
}
}
Zdrojový kód : program.ino
Výsledok
Nezabudnite zdokumentovať výsledok vašej práce. Určite sem patria fotografie, video a zhodnotenie ako ste spokojní s výsledkom,
Kľúčové slová 'Category', ktoré sú na konci stránky nemeňte.