Dobrý den všem! Tento článek bude věnován milovníkům elektroniky, robotiky a lidem s nestandardním pohledem na okolní věci!
Nyní se pokusím co nejjasněji popsat proces vytváření, sestavování robot s e nádivka, a to na Arduino! Pojďme!
Co potřebujeme:
Třívodičová smyčka (3 kusy). Doporučujeme si vzít více autentických.
Obyčejné dráty
Potenciometry
Odpory (220 ohmů)
Tlačítko
Přihrádka na baterie
Prkénko
No, samozřejmě, já arduinka
A také rozšiřující deska - něco jako MultiservoShieldk ovládání velkého počtu serv
A ještě víc konstruktér, která bude základem našeho robota, proto je vhodné zvolit „silný“
Z nástrojů, které budete potřebovat:
Sada šroubováků, klíčů atd.
Stejně jako páječka, pájka a tavidlo
Pojďme začít!
Krok č. 1. Výroba hlavního rámu
Chcete-li začít, sbírat "dvě písmena H" Vypadá to takto:
Pak nějaká konstrukce, na které naše robot bude stát. Není to vůbec nutné jako na obrázku - podle vašeho uvážení .. Udělal jsem to takto:
Nainstalovali jsme naše „N“ na podporu
Zezdola utáhněte šrouby
Na druhé „H“ opravíme první servo, které je zodpovědné za otáčení hlav našeho budoucího robota
Ukázalo se něco jako následující:
Téměř rám je připraven! Zbývá upevnit tyto dvě struktury kovovými deskami a dát robotovi výšku!
Krok č. 2: Vytvoření rámce pro budoucí uši robotů
K tomu je třeba sestavit dvě podobné struktury a na ně upevnit serva, jak je znázorněno na obrázku:
Poté pomocí šroubů a matic připojte k hlavnímu rámu. Ukáže se následující:
Pohled shora:
Určitý prototyp robota je téměř připraven! Do toho ..
Krok č. 3. Dělat oči a celou hlavu našeho robota!
K tomu jsem použil starý telefon z interkomu. Osobně mi připomíná tvář! Více ..
Vyrobíme dvě díry a připevníme kolébku serva k trubici
Okamžitě přilepíme LED diody na boky a připojíme k nim dráty
Použil jsem tenké:
Krok 4 Vydělávání uší
Použijeme běžné čepice z malých krabic
Také upevněte houpací křesla pro serv
Nyní odvážně připevňujeme části těla robota na servery
Takhle:
Pohled shora:
Zpět:
V zásadě si můžete užít robota nyní, ale úkol zkomplikujeme .. Otočíme oči a uši robota pomocí potenciometrů a naší arduinky
Krok č. 5 Elektronika
V kombinaci s arduino s víceservisním štítem vložíme třívodičovou smyčku z každého serva do kolíků 9, 10, 11 (levé ucho, pravé ucho, Cent, pokud umístíte robota proti sobě)
Pak na prkénko nainstalujeme potenciometr, knoflík, rezistory .. Vypadá to takto, samozřejmě ošklivé, ale hlavní věc funguje)
Více informací!
Jak nainstalovat tlačítko:
Pokud je bílý vodič napájen, červený je digitální vstup mikrokontroléru č. 6 a rezistor jde na kostru (žlutý vodič)
Jak nainstalovat potenciometr:
Červený vodič - napájení, žlutá - země, bílá - analogový vstup mikrokontroléru č. 0 (stejným způsobem připojujeme další potenciometr, pouze analogový vstup regulátoru č. 1)
Na desku také instalujeme odpory pro LED:
proud bude napájen ze 3 a 5 pinů arduina a prochází žlutými a černými dráty a rezistory jdou k zemi (ovladač GND)
V podstatě všechno, jsme hotovi s elektronikou! Zbývá pouze stáhnout další skica a hrát si s robotem !!
#include
#include
Multiservo myservo1;
Multiservo myservo2;
Multiservo myservo3;
int b, kl, pl, p2;
int A = 0;
int i = 0;
nepodepsaný dlouhý m2 = 0;
nepodepsané dlouhé m1 = 0;
int r1 = 70;
int r2 = 110;
int r3 = 70;
int h1 = 0;
int h = 0;
neplatné nastavení ()
{
myservo1.attach (9); // levé ucho
myservo2.attach (10); // pravé ucho
myservo3.attach (11); // oči
pinMode (6, INPUT); // tlačítko
pinMode (3, VÝSTUP); // oči světla PWM
pinMode (5, VÝSTUP);
}
prázdná smyčka ()
{
while (A == 0) // smyčka manuálního ovládání robota
{
b = digitalRead (6);
pokud (! b) k1 = 1;
pokud (b == 1 && k1 == 1)
{
zpoždění (10);
b = digitalRead (6);
pokud (b == 1 && k1 == 1)
{
A je 1;
k1 = 0;
}
}
pl = int (analogRead (A0) / 6);
p2 = int (analogRead (A1) / 6);
myservo1.write (p1);
myservo2.write (p1);
myservo3.write (p2);
analogWrite (3, i);
analogWrite (5, i);
if (millis ()> = m1 + 70 && h1 == 0)
{
i = i + 4;
ml = millis ();
pokud (i> 250) h1 = 1;
}
if (millis ()> = m1 + 70 && h1 == 1)
{
i = i-4;
ml = millis ();
pokud (i == 0) h1 = 0;
}
}
while (A == 1) // samostatný pracovní cyklus robota
{
digitalWrite (13.0);
b = digitalRead (6);
pokud (! b) k1 = 1;
pokud (b == 1 && k1 == 1)
{
zpoždění (10);
b = digitalRead (6);
pokud (b == 1 && k1 == 1)
{
A je 0;
k1 = 0;
}
}
analogWrite (3, i);
analogWrite (5, i);
if (millis ()> = m1 + 70 && h1 == 0)
{
i = i + 4;
ml = millis ();
pokud (i> 250) h1 = 1;
}
if (millis ()> = m1 + 70 && h1 == 1)
{
i = i-4;
ml = millis ();
pokud (i == 0) h1 = 0;
}
if (millis ()> = m2 + 15 && h == 0)
{
myservo1.write (r1);
myservo2.write (r2);
myservo3.write (r3);
r1 = r1 + 1;
r2 = r2-1;
r3 = r3 + 1;
pokud (r1 == 110) h = 1;
m2 = millis ();
}
if (millis ()> = m2 + 15 && h == 1)
{
myservo1.write (r1); // 110
myservo2.write (r2); // 70
myservo3.write (r3); // 110
r1 = r1-1;
r2 = r2 + 1;
r3 = r3-1;
pokud (r1 == 70) h = 0;
m2 = millis ();
}
}
}
Kód je poměrně velký, ale věřte mi, že to stojí za to!
Co tento program dělá:
Máme tlačítko, které je zodpovědné za 2 stavy systému: buď robota ovládáme ručně, nebo provádí pohyby již zaregistrované předem. Po stisknutí tlačítka se pro nás změní stav a v kódu se mezi sebou změní 2 cykly, ve kterých jsou zaregistrovány odpovídající příkazy. Oči našeho robota se postupně rozsvítí, stanou se jasnějšími a jasnějšími a pak se vytrácí. proto jsme dabovali LED na piny podporující PWM - pulzní šířkovou modulaci.
Fotografie robota:
Malý nahrávání videa, jak a co se nakonec točí:
Závěrem chci říci, že na tohoto robota je samozřejmě možné myslet na dlouhou dobu, ale to je chuť každého člověka. Udělej to! Vymysli! Evolve! Hodně štěstí všem!