Obsah:
- Krok 1: Sestavte obvod přijímače IR
- Krok 2: Připojte servo, sloupec a držák telefonu
- Krok 3: Připojte LCD displej pro odečítání serva
- Krok 4: K programování Arduina použijte kód a připojené knihovny
- Krok 5: Připojte požadovaný zdroj napájení k Arduinu a pomocí dálkového ovladače otočte držák
- Krok 6: Přečtěte si toto pro vysvětlení zdrojového kódu
- Krok 7: Nápovědu sledujte mé video na YouTube
Video: Otočný držák telefonu: 7 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Tento instruktážní dokument byl vytvořen v rámci splnění projektového požadavku Makecourse na University of South Florida (www.makecourse.com).
Chcete vytvořit otočný držák telefonu, abyste mohli prohlížet obsah telefonu na výšku nebo na šířku, aniž byste jej museli držet? Pak už nehledejte.
K vytvoření tohoto projektu budete potřebovat:
- Mikrokontrolér Arduino a IDE
- USB kabel pro nahrání kódu
- prkénko
- Propojovací vodiče
- LCD displej
- Servo
- Sloupek, který lze připojit k servu
- IR dálkové ovládání
- IR přijímač
- odpor 10 kOhm
- drak Kenu+ klip na telefon (nebo něco, co drží telefon na místě)
- 9 V baterie pro přenosné napájení nebo jen Arduino napájené USB
Krok 1: Sestavte obvod přijímače IR
Nejprve přeskočte GND a +5V z Arduina na napájecí lišty na vašem prkénku. Poté přeskočte odpor 10 kOhm z napájecí lišty +5 V na výstupní pin fototranzistoru přijímače IR. Dále se propojovacím vodičem připojte ke kolíku 11 na Arduinu z výstupního pinu IR přijímače. Poté pomocí dvou propojovacích vodičů odešlete zem a +5 V na příslušné piny na IR přijímači. RC filtr zobrazený ve schématu výše není nutný. Nakonec jsem v tomto kroku schéma neuvedl a jeho zdroj je na obrázku.
Krok 2: Připojte servo, sloupec a držák telefonu
Nyní pomocí dvou propojovacích vodičů přeskočte ze země a +5 V napájecích lišt na prkénko do hnědého a červeného vodiče serva. Poté pomocí jednoho propojovacího kabelu připojte pin 9 na Arduinu k oranžovému vodiči serva.
Poté připevněte sloupek k hlavě serva, jak ukazuje druhý obrázek.
Nakonec připojte něco, co drží telefon na sloupku, jako je Kenu Airframe+, jak ukazuje třetí obrázek.
Krok 3: Připojte LCD displej pro odečítání serva
Skočte na zem a +5 V z napájecích lišt na prkénko na příslušné kolíky na LCD displeji. Také přeskočte piny SDA a SCL z LCD na Ardiuno. Piny Arduino SDA a SCL lze identifikovat ze zadní strany desky Arduino a jsou to dva piny nad AREF a Ground nad pinem 13. Pin SCL je nejvyšší. To umožňuje LCD displeji číst aktuální polohu serva.
Krok 4: K programování Arduina použijte kód a připojené knihovny
Stáhněte si soubor RotatingMountCode.zip. Nainstalujte Arduino IDE a rozbalte stažený soubor do Documents / Arduino. Ujistěte se, že zkopírujete obsah mé složky skic a knihoven do složky skic a knihoven. Otevřete skicu ServoIRandLCD a nahrajte ji do svého Arduina.
Vysvětlení kódu najdete v dalších krocích.
Krok 5: Připojte požadovaný zdroj napájení k Arduinu a pomocí dálkového ovladače otočte držák
Buď nechte Arduino zapojené do počítače, nebo jej odpojte od počítače a použijte 9V baterii k zajištění stejnosměrného napájení Arduina. Nakonec použijte levné IR dálkové ovládání k servu a tím i orientaci držáku telefonu!
Číslo 1 na dálkovém ovladači by mělo nastavit polohu serva na 0 stupňů, číslo 2 až 90 stupňů a číslo 3 až 180 stupňů. Mezitím by tlačítka + a - na dálkovém ovladači měla zvýšit nebo snížit úhel serva o 1 stupeň.
Poznámka: Pokud používáte jiný IR dálkový ovladač, než je zde zobrazený, je možné, že se IR kódy odpovídající různým tlačítkům změní. Pokud ano, upravte skicu ServoIRandLCD, aby místo toho používala tyto IR kódy.
Krok 6: Přečtěte si toto pro vysvětlení zdrojového kódu
Zdrojový kód skici Arduino najdete níže nebo v dříve připojeném souboru.zip. Požadované knihovny lze nalézt pouze v dříve připojeném souboru.zip v kroku 4.
První věc, kterou kód udělá, je zahrnout potřebné knihovny potřebné ke spuštění všech funkcí v náčrtu. Dále deklaruje pin 9 na Arduinu jako signální pin PWM pro servo. To také dělá pin 11 na Arduinu pin používaný pro IR přijímač. Dále deklaruje celočíselnou proměnnou používanou ke sledování polohy serva ve stupních a zpočátku ji nastaví na 0 stupňů. Potom vytvoří instanci požadovaných objektů pro objekt IRrecv, servo objekt a objekt myDisplay LCD (který je také nakonfigurován na stejném řádku), takže tyto objekty lze použít později.
Dále ve funkci nastavení je sériový port spuštěn rychlostí 9600 bitů/s, takže sériový monitor lze použít ke sledování polohy serva, pokud je to žádoucí. Také připojí objekt myservo na pin 9, spustí IR přijímač a inicializuje LCD displej.
Ve funkci hlavní smyčky, jejíž tělo je prováděno pouze v případě, že je IR přijímač přijímán z IR přijímače, IR přijímač dekóduje signál, který je do něj odeslán z IR dálkového ovládání pomocí funkce dekódování (& results), a pak pokud příkazy určují, co nastavit servo v závislosti na přijaté hodnotě IR. Funkce zápisu se používá k nastavení servo na příslušné stupně a funkce čtení se používá k nalezení aktuálního úhlu serva a podle potřeby jej zvýší nebo sníží.
Nakonec je aktuální úhel serva odeslán na sériový monitor i na LCD displej pomocí funkce myservo.read () a hlavní smyčky iterují na neurčito.
Zdrojový kód:
#include // Arduino standard library #include // IR library #include "Wire.h" //Wire.h for LCD (sometimes needed) #include "LiquidCrystal_I2C.h" // LCD library
#define servopin 9 // toto definuje pin 9 jako pin použitý pro ovládací kabel servo (oranžový)
int RECV_PIN = 11; // IR foto-tranzistor posílá výstup na pin 11
int currentAngle = 0; // deklarujte celočíselnou proměnnou currentAngle a nastavte na 0
IRrecv unbcv (RECV_PIN); // vytvoření instance objektu IR přijímače decode_results results; // vytvoření instance objektu decode_results. Tento objekt je oddělen od IR přijímače.
Servo myservo; // vytvoření instance objektu Servo s názvem 'myservo' // // lze vytvořit maximálně osm objektů typu servo
LiquidCrystal_I2C myDisplay (0x27, 16, 2); // vytvoření instance objektu LCD a nastavení konfigurace
neplatné nastavení () {
Serial.begin (9600); // spuštění sériového portu
myservo.attach (servopin); // připojí servo na pinu 9 k objektu serva
unbcv.enableIRIn (); // spusťte přijímač
myDisplay.init (); // inicializace LCD
myDisplay.backlight (); // zapnout podsvícení LCD
}
prázdná smyčka () {
if (unbcv.decode (& results)) // pokud byl přenos přijat …
{Serial.print ("IR hodnota přijata:");
Serial.println (results.value); // přijatá zobrazená hodnota
// interpretovat přijaté příkazy … if (results.value == 16724175) // 1 {// left myservo.write (0); }
if (results.value == 16718055) // 2 {// střední myservo.write (90); }
if (results.value == 16743045) // 3 {// vpravo myservo.write (180); }
if (results.value == 16754775) //+ {// přírůstek currentAngle = myservo.read (); myservo.write (currentAngle + 1); } if (results.value == 16769055) //- {// decrement currentAngle = myservo.read (); myservo.write (currentAngle - 1); }}
unbcv.resume (); // Získá další hodnotu
// Tisk sériového monitoru Serial.print ("Aktuální poloha serva:");
Serial.println (myservo.read ()); // toto načte polohu serva a odešle ji na sériový monitor
// LCD tisk myDisplay.clear ();
myDisplay.print ("Servo deg.:");
myDisplay.print (myservo.read ());
zpoždění (200); // zpoždění, aby bylo ovládání servo stabilní
}
Krok 7: Nápovědu sledujte mé video na YouTube
Pokud máte nějaké dotazy, podívejte se na mé neveřejné video na YouTube, které plně diskutuje a předvádí projekt!
Doporučuje:
DIY držák telefonu: 7 kroků (s obrázky)
DIY držák telefonu: Jak udělat funkční nepředvídatelný a atraktivní držák telefonu se vším tím náhradním harampádím, které nepotřebujete
Nouzový a velmi jednoduchý držák mobilního telefonu na stativ: 4 kroky (s obrázky)
Nouzový a velmi jednoduchý držák mobilního telefonu na stativ: Nemohl jsem najít držák mobilního telefonu, který jsem předtím vyrobil, a měl jsem jen pár hodin na to, abych se dostal tam, kde jsem chtěl natočit video, a tak jsem přišel na tohle. Materiály jsou jednoduché: Kovový věšák na kabáty nebo poměrně tuhý kovový drát Matice 1/4 "-NC 20 (o
DIY držák baterie mobilního telefonu: 3 kroky
Držák baterie pro mobilní telefon: Baterie pro mobilní telefony jsou nejlepší volbou pro nízkonapěťové DIY projekty, staré baterie pro telefony Nokia jsou k dispozici za nízké ceny, tyto baterie jsou lehké a mají dobrý výkon, díky kterému jsou tyto baterie nejlepší volbou pro projekty pro kutily
Dřevěný držák telefonu do auta Google Home pro bezdrátové nabíjení: 7 kroků (s obrázky)
Google Home Bezdrátové nabíjení Dřevěný držák do auta do auta: Vítejte! Chtěli jste někdy položit Googlu otázku za jízdy, aniž byste museli otevřít telefon? Google Assistant je skvělá aplikace se skvělými funkcemi, ale vyžaduje, abyste měli odemčený telefon a aplikaci otevřenou, nebo drželi doma tlačítko
Zdarma kutilství, IPod, IPhone, PDA, držák mobilního telefonu nebo miniaplikace/dok/stojan: 6 kroků
Zdarma Diy Zune, IPod, IPhone, PDA, držák mobilního telefonu nebo doku/stojanu: Bylo řečeno, že nutnost je matkou vynálezu. Zjistil jsem, že je to často pravda. Minulý týden nebyl výjimkou. Strávil jsem na svém počítači nadměrně mnoho času hledáním zaměstnání. Protože jsem nedávno vyměnil svůj počítač za server