Obsah:

EMOCIONÁLNÍ PŘEKÁŽKA, KTERÁ ROBOTU ROBOTUJE: 11 kroků
EMOCIONÁLNÍ PŘEKÁŽKA, KTERÁ ROBOTU ROBOTUJE: 11 kroků

Video: EMOCIONÁLNÍ PŘEKÁŽKA, KTERÁ ROBOTU ROBOTUJE: 11 kroků

Video: EMOCIONÁLNÍ PŘEKÁŽKA, KTERÁ ROBOTU ROBOTUJE: 11 kroků
Video: TAKY JSI ROBOT??? ZBAV SE SYNDROMU ROBOTA! 2024, Listopad
Anonim
EMOCIONÁLNÍ PŘEKÁŽKA, KTERÁ SE ROBOTU VYHÝBÁ
EMOCIONÁLNÍ PŘEKÁŽKA, KTERÁ SE ROBOTU VYHÝBÁ

Emocionální robot. Tento robot zobrazuje emoce pomocí neopixelů (RGB LED), jako je smutek, štěstí, vztek a strach, dokáže se také vyhýbat překážkám a během určitých emocí provádět určité pohyby. Mozek tohoto robota je Arduino mega. mějte na paměti, že toto je můj první naprogramovaný robot, který jsem kdy postavil, a přiměl mě zamilovat se do programování, samotný kód je velmi začátečník a s největší pravděpodobností by se dal zjednodušit.

Krok 1: DÍLY

DÍLY
DÍLY

-3,2 stop pásu neopixelů

-HC-SR04 Ultrazvukový senzor (nebo jakýkoli jiný ultrazvukový senzor)

-přepínač naklonění

-3 3,7 V lithium -iontová baterie (18650)

-boost převodník (vysvětleno v kroku napájení)

-fotografický odpor (libovolná hodnota)

-analogový zvukový senzor

-2 stejnosměrné motory 6v

-l293d (ovladač motoru)

-plastová folie

-lepenka

-kolečko

Krok 2: Neopixely

Neopixely
Neopixely
Neopixely
Neopixely

Vzhledem k tomu, jak jsem měl omezený rozpočet, jsou nejjednodušším a nejlevnějším způsobem, jak oživit emoce mých robotů, neopixely, které mají pouze 3 vstupy a výstupy. tři piny na vstupu jsou označeny 5v, DIN (data in) a GND (zem); výstup je označen stejně jako vstup, ale místo dat v jeho DO (data out). Způsob připojení těchto LED je spojit je paralelně navzájem, takže 5v se připojí k 5v na druhé LED a GND je připojeno k druhé LED GND, DO první LED je připojeno k DIN druhé LED a poté tento proces pokračuje, dokud nenarazíte na požadovanou délku LED pásku. Celý pás neopixelů vyžaduje pouze jeden digitální výstupní pin ze vstupu, protože DO a DIN jsou spojeny v dlouhém řetězci, takže všichni navzájem sdílejí data. Je to nutné, protože musíme v určitých časech zapínat a vypínat konkrétní LED diody. Užitečným návodem k tomu je NEOPIXEL HELP

Krok 3: Schéma

Schéma
Schéma

Obvod je velmi jednoduchý, protože většina robota je právě naprogramována, motory běží na téměř 7 V pomocí ovladače motoru l293d, aby bylo možné řídit motory tak, aby se pohybovaly dopředu a dozadu. Další připojení jsou senzory k Arduinu. A to je vše!

Krok 4: Kód

První věc, kterou jsem udělal, bylo stažení požadovaných knihoven, aby bylo kódování trochu jednodušší, knihovny, které jsem použil, jsou „FastLED.h“a „NewPing.h“. Rychlá LED je pro LED diody a nová ping je pro ultrazvukové senzory. Další věc, kterou jsem udělal, bylo udělat všechny definice pro piny, které jsem použil, poté, co bylo neplatné nastavení, zde jsem nastavil režimy pinů a neostrip "FastLED.addLeds (leds, NUM_LEDS);" Definoval jsem NUM_LEDS jako 56, protože jsem použil 56 LED, konfigurace LED budou vysvětleny v čelním kroku. Pak jsem vytvořil spoustu funkcí pro svého robota, aby se pohyboval dopředu a dozadu a měl také své určité emoce, poté se dostanu do prázdné smyčky, zde volám všechny své funkce v určitém pořadí, které chci, například kdybych chtěl, aby se můj robot usmál, dal bych úsměv ();. Pokud bych chtěl zapnout jistou LED, dal bych, leds [45] = CRGB:: Green;, toto nastaví LED 45 na zelenou. Když dám barvu na černou, znamená to jen vypnout. Nyní mějte na paměti, že toto je jeden z mých prvních programů, takže zjevně není dokonalý, ale stále fungoval.

KÓD

Krok 5: Tvář

Obličej
Obličej

Na obličej jsem použil 56 diod, což je téměř plný 3,2 stopový neopixelový pás. Pruh jsem nastříhal na 7 proužků po 8 ledkách, první 3 proužky jsem použil na oči a poslední 4 na ústa. Spojil jsem proužky hadím způsobem spojení, s diagramem snad lépe porozumíte. Když jsem dokončil obličej, položil jsem tenkou plastovou fólii (asi 2 mm tlustou) na LED pásky.

Krok 6: Šťastná funkce

Šťastná funkce
Šťastná funkce

Tato funkce je ze všech nejjednodušší, protože nepoužívá žádné senzory, místo toho, jakmile bota zapnete, okamžitě se na vás usměje. Ale nejen úsměv; když se usmívá, je také v režimu vyhýbání se překážkám. Režim vyhýbání se překážkám je v mém kódu zastoupen jako funkce roamingu. Režim vyhýbání se překážkám nebo roaming funguje pomocí dvou ultrazvukových senzorů na straně robotů, když senzor dosáhne 30 cm na cokoli, co by zálohoval a buď šel doprava nebo doleva v závislosti na senzoru, který je nejblíže objektu.

Krok 7: Smutná funkce

Smutná funkce
Smutná funkce
Smutná funkce
Smutná funkce

Aby byl robot smutný, musel jsem přemýšlet o osobnostním rysu tohoto robota, a tak jsem se rozhodl ho zarmoutit, když je v temném prostředí. K tomu jsem použil fotorezistor ke snímání světla. Čím tmavší prostředí, tím vyšší odpor a čím světlejší prostředí, tím nižší odpor. Obvod funguje jako dělič napětí, což je obvod se dvěma odpory zapojenými v sérii na +5 V a GND, ve středu připojení odporu leží napětí, které lze určit podle této rovnice: vstupní napětí*(R2/R1 +R2). když Arduino Analog Pin čte tuto hodnotu, převádí napětí na rozsah od 0 do 1023.

Krok 8: Rozzlobená funkce

Rozzlobená funkce
Rozzlobená funkce
Rozzlobená funkce
Rozzlobená funkce

Aby byl robot naštvaný, rozhodl jsem se jej převrátit/převrhnout. Funguje to pomocí přepínače naklápění a přepínač naklonění je v podstatě normální spínač, ale místo tlačítka nebo kolébky máte rtuťovou kouli, která při naklonění pod určitým úhlem spojí dva kontakty a zapne se; takže hodnota z toho je buď 0 nebo 1, 0 pro vypnuto a 1 pro zapnuto. Když je robot naštvaný, ignoruje také režim vyhýbání se překážkám a kvůli svému hněvu vrazí cokoli v dohledu dopředu.

Krok 9: Vyděšená funkce

Vyděšená funkce
Vyděšená funkce
Vyděšená funkce
Vyděšená funkce

Konečnou funkcí robota je funkce scared, která využívá zvukový senzor, který je umístěn přímo nahoře na robotu. Kdykoli robot uslyší hluk zátěže, začne se bát a třást se při návratu. Zvukový senzor funguje tak, že používá kondenzátorový mikrofon, kterým je mikrofon, když snímá zvuky nebo vibrace, vytvoří malé napětí, obvykle asi 100 mv, toto napětí se pak zesílí a přečte se přes analogový pin Arduina, čím vyšší napětí nebo hlasitější zvuk, tím vyšší je analogová hodnota a naopak.

Krok 10: Napájení

Napájení
Napájení
Napájení
Napájení

Nyní, když jste postavili vše, co potřebujete k napájení, jsem se původně pokusil napájet 8 AA bateriemi, ale byl příliš objemný a nepraktický. Pak jsem použil 3 lithium -iontové baterie, z nichž každá má asi 3,5 V, jednu baterii jsem připojil k zesilovači, což je zesilovač napětí, což zvýšilo moji 3,5 V na 5 V pro napájení Arduina, poté jsem použil dvě baterie a přímo připojil k motorům a diodám LED, to není tak dobrý nápad, protože napětí nebylo regulováno, ale neměl jsem kolem sebe regulátor napětí, pokud to zkusíte a postavíte, doporučuji použít regulátor napětí, než dokáže 5v přibližně 2–3 ampéry, příkladem je LM78S05. Nebo můžete použít LM7805 k napájení Arduina a místo toho získat krokový převodník nebo převodník buck pro snížení napětí a napájení LED a motorů.

Krok 11: Bavte se !

Doufám, že postavíte tohoto robota a pobavíte se, také doufám, že se na tohoto robota vrhnete a vytvoříte vlastní emoce, aby byl naživu !!!

Doporučuje: