Obsah:
- Krok 1: Koncept
- Krok 2: Díly
- Krok 3: Sestavení dílů
- Krok 4: Knihovna pro Arduino IDE
- Krok 5: Nastavení Breadboard
- Krok 6: Kód
- Krok 7: Demo a závěr
Video: Hodinový stroj: 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).
Krok 1: Koncept
Když se snažím přemýšlet o nápadu pro tento projekt, rozhodl jsem se vytvořit něco, co bude použitelné a užitečné pro můj každodenní život. Mnoho takových věcí může mít požadavek na dva stupně volnosti, a tak jsem se rozhodl vyrobit jednoduché hodiny, které splní požadavek, a také je nechat zobrazit na stole, aby ukazovaly čas. Původně byla myšlenka vyrobit náramkové hodinky, ale 3D tištěná část by byla příliš malá a motory pohánějící hodinky by byly na náramkové hodinky stále příliš velké.
Proto tento projekt našel náhradní díly kolem mého bytu a rozhodl se na tom zapracovat.
Krok 2: Díly
- 3D tištěné díly
- 2 28BYJ-48 5V DC krokový motor
- 2 deska ovladače krokového motoru ULN2003
- Arduino Uno
- Modul Bluetooth HC-05
Všechny tyto části jsem vyrobil já kromě ručiček hodin. Nejsem moc kreativní. Níže je odkaz na jeho tvůrce.
www.thingiverse.com/thing:1441809
Krok 3: Sestavení dílů
(1)- K krokovým motorům musíte dát Gear_1 a 2. Budou přiléhat, takže je potřeba trochu síly, aby zůstaly na svém místě.
(2)- Base_0 zůstane ve spodní části sestavy.
(3)- Base_1 bude umístěn na SpurGear_1, což je hlavní komponenta minutové ručičky. Tyto dvě součásti můžete slepit dohromady, ujistěte se, že základna je na horní části zařízení.
(4)- Base_2 bude umístěn na SpurGears_2, což je hlavní komponenta hodinové ručičky. To samé platí pro tuto část jako krok (3)
(5)- Ručičky hodin mohou být nalepeny na základnu Base_1 a Base_2, nebo můžete vyvrtat malý otvor, aby se vešly na místo.
(6)- Aby se výstroj minutové ručičky shodoval s čelním ozubeným kolem, potřebujete platformu o průměru 1 cm, aby byla celá sestava navrch s jedním z krokových motorů.
Důvodem je to, že hlavní základna nemůže být nijak vysoká, protože druhý krokový motor by nebyl schopen dosáhnout vysokého rychlostního stupně. Ať tak či onak, pro jeden z krokových motorů je nutná platforma.
Krok 4: Knihovna pro Arduino IDE
Kód pro tento projekt je založen na knihovně od tyhenry s názvem CheapStepper.h
github.com/tyhenry/CheapStepper
Chcete -li nainstalovat tuto knihovnu pro vaše arduino. Klikněte na klon nebo stáhněte na výše uvedeném odkazu a stáhněte jej jako soubor zip.
V Arduino IDE. Skica -> Zahrnout knihovnu -> Přidat knihovnu. ZIP
Ze všech knihoven, které fungují, využívala tato krokový motor to nejlepší a extrémně snadné použití.
Krok 5: Nastavení Breadboard
Ke svému Arduino UNO jsem použil štít Arduino. Vypadá to čistěji, ale můžete získat malý prkénko a umístit jej místo na Arduino UNO. Postupujte podle barvy na schématu, protože některé vodiče jsou na sobě. Piny 4-7 jsou pro jeden stepper a piny 8-11 jsou pro druhý stepper.
Modul Bluetooth musí být připojen RX -> TX a TX -> RX k desce Arduino.
Modré vodiče jsou připojení z ovladačů k Arduino UNO
Zelené vodiče jsou připojení RX a TX
Černé dráty jsou uzemněny.
Červené vodiče jsou 5V.
Krok 6: Kód
Níže je kód pro tento projekt.
Vysvětlení kódu bude zde.
CheapPteper stepper (8, 9, 10, 11); CheapStepper stepper_2 (4, 5, 6, 7);
boolean moveClockwise = true;
//37,5 min = 4096;
// 1 min = 106,7;
// 5 min = 533,3;
// 15 min = 1603;
// 30 min = 3206;
// 60 min = 6412;
int plný = 4096;
int polovina = plná/2; // 2048
float full_time = 6412; // 1 hodina
float half_time = plný_čas/2; // 30 min 3026
float fif_time = poločas/2; // 15 min 1603
float one_time = plný_čas/60; // 1 min 106
float five_time = one_time*5; // 5 min 534,3
float one_sec = one_time/60; // 1 s 1,78
// každý můžeme udělat 30 minut otočením motoru 3206 a resetem
Toto je hlavní výpočet tohoto projektu. Krokovač by potřeboval 4096 kroků k otočení o celých 360 stupňů, ale protože čelní ozubená kola jsou větší než ozubená kola připojená ke stepperu, pro úplné otočení to vyžaduje více kroků. Protože čelní ozubené kolo je hlavní složkou, která roztáčí ruce. Musím udělat různé testy, abych se ujistil, že hodnoty jsou správné.
full_time je proměnná, kterou jsem přiřadil plnému otočení ruky. To je docela konzistentní, ale jak se kroky dělí 2, aby se dosáhlo konkrétního pohybu, plovoucí hodnota se zmenšuje, což řidiči ztěžovalo práci.
MoveClockwise = true; je, aby se krokový motor pohyboval ve směru hodinových ručiček, ale protože točí čelním kolem proti směru hodinových ručiček, musíme v nastavení udělat booleovský false. Můžete to také prohlásit za nepravdivé na začátku, ale to má vysvětlit, jak to funguje.
neplatné nastavení () {Serial.begin (9600);
Serial.println („Připraveni začít se hýbat!“);
pos = one_time; del = 900; poměr = 60;
moveClockwise = false; }
Zde deklaruji logickou hodnotu moveClockwise. pos bude počet kroků, del bude zpoždění a poměr bude buď pro minutu/s = 60 nebo hodinu/min = 12
Ruce ovládáme pomocí modulu Bluetooth. Nejprve potřebujete ze svého zařízení Android sériový terminál Bluetooth. Připojte se k Hc-05 pomocí PIN 0000 nebo 1234. Chcete-li zjistit, zda funguje správně, můžete použít nějaký ukázkový kód z Arduino IDE. Když je připojen, měl by blikat velmi pomalu místo rychle, když není připojen.
void loop () {stav = 0;
pokud (Serial.available ()> 0) {
state = Serial.read (); }
pro (float s = 0; s <(pos); s ++) {
stepper.step (moveClockwise); }
for (float s = 0; s <(pos/ratio); s ++) {
stepper_2.step (moveClockwise); }
zpoždění (del);
Serial.available ()> 0 je důležitý, protože jak bude fungovat váš modul Bluetooth. Toto prohlášení if bude pravdivé, pokud probíhá komunikace mezi Arduinem a vaším zařízením. Stavová proměnná určí další 3 proměnné, které jsem deklaroval v horní části setup (), a také vytiskne, jakou operaci kód spouští. Smyčka dvě pro je hlavní funkcí, která řídí pohyb krokového motoru.
if (state == '1') {
pos = one_time; del = 0; poměr = 12;
Serial.println ("Operace 1: Žádné zpoždění"); }
Toto je jeden příklad použití vstupu ze zařízení Bluetooth ke změně fungování systému. Tyto proměnné můžete upravovat, jakkoli chcete ruce ovládat.
Krok 7: Demo a závěr
Toto je ukázka systému, která ukazuje, jak funguje. Pro skříň můžete použít cokoli, co by se vešlo do všech součástí uvnitř. Tento projekt byl jednoduchý a zábavný, protože je to poprvé, co jsem 3D tiskl. Modul Bluetooth byl zábavný při hledání a používání. Udělal jsem několik chyb, které bylo příliš pozdě na změnu, ale konečný produkt je v pořádku.
Doporučuje:
Jak jsem vytvořil svůj vlastní boxovací stroj?: 11 kroků (s obrázky)
How I Made My Own Boxing Machine ?: Za tímto projektem není žádný úžasný příběh - vždy se mi líbily boxovací stroje, které byly umístěny na různých oblíbených místech. Rozhodl jsem se postavit svůj
Automatický vstřikovací stroj na recyklaci plastů: 5 kroků
Automatický vstřikovací stroj pro recyklaci plastů: Dobrý den :) Tento návod se týká našeho „automatického vstřikovacího stroje pro recyklaci plastů“. (nazvaný: Smart Injector) Myšlenkou stroje je nabídnout decentralizované řešení pro recyklaci plastů. Recyklace je často omezená
Jak vyrobit bezdotykový ruční dezinfekční stroj: 5 kroků
Jak vyrobit bezdotykový ruční dezinfekční stroj: Ahoj čtenáři, v tomto návodu vám ukážu, jak vyrobit bezkontaktní dávkovací stroj na dezinfekci rukou, protože všichni víme, že je důležité, aby kvůli této pandemii zůstali nedotčeni jinými lidmi
Sedm segmentový hodinový displej Edge-Lit: 16 kroků (s obrázky)
Sedm segmentový hodinový displej Edge-Lit: Sedm segmentových displejů existuje již více než století (https://en.wikipedia.org/wiki/Seven-segment_display) a tvoří známý tvar čísel v digitálních hodinkách, přístrojových panelech a mnoho dalších numerických displejů. Byli znovu
Hodinový a senzorový box: 5 kroků
Clock and Sensor Box: Jedná se o jednoduché víceúčelové zařízení využívající více senzorů. Má hodiny s budíkem, stopkami, časovačem, teplotou, vlhkostí a teplem, ultrazvukovým snímačem vzdálenosti, snímačem IR a hudební klávesnicí Visualiser. Je také přenosný