INHOUDSOPGAWE:

Uurwerk: 7 stappe
Uurwerk: 7 stappe

Video: Uurwerk: 7 stappe

Video: Uurwerk: 7 stappe
Video: Uurwerk Online in 7 minuten 2024, Junie
Anonim
Uurwerk
Uurwerk

Hierdie instruksies is geskep ter voldoening aan die projekvereiste van die Makecourse aan die Universiteit van Suid -Florida (www.makecourse.com).

Stap 1: Konsep

Terwyl ek probeer dink oor 'n idee vir hierdie projek, het ek besluit om iets bruikbaar te maak en nuttig te wees vir my daaglikse lewe. Nie baie sulke dinge kan 'n vereiste van twee vryheidsvereistes hê nie, so ek het besluit om 'n eenvoudige horlosie te maak om aan die vereiste te voldoen, sowel as om dit op my lessenaar te laat sien om die tyd te wys. Oorspronklik was die idee om 'n polshorlosie te maak, maar die 3D -gedrukte deel sou te klein wees en die motors wat die horlosie aandryf, sou nog steeds te groot wees vir 'n polshorlosie.

Vandaar hierdie projek, het ek onderdele in my woonstel gevind en besluit om hieraan te werk.

Stap 2: Onderdele

- 3D -gedrukte onderdele

- 2 28BYJ-48 5V DC stapmotor

- 2 ULN2003 Stepper Motor Driver Board

- Arduino Uno

- HC-05 Bluetooth-module

Al hierdie dele word deur my gemaak, behalwe die klok se hande. Ek is nie baie kreatief nie. Hieronder is die skakel na die skepper daarvan.

www.thingiverse.com/thing:1441809

Stap 3: Montering van onderdele

Samestelling van onderdele
Samestelling van onderdele

(1)- U moet Gear_1 en 2 by die stapmotors sit. Hulle pas goed, so 'n bietjie krag is nodig om op hul plek te bly.

(2)- Base_0 bly onderaan die samestelling.

(3)- Base_1 sal bo-op SpurGear_1 geplaas word, dit is die hoofkomponent vir die minuutwyser. U kan hierdie twee komponente aan mekaar plak, maak seker dat die basis bo -op die rat is.

(4)- Base_2 word bo-op SpurGears_2 geplaas, dit is die hoofkomponent vir die uurwyser. Dieselfde geld vir hierdie deel as stap (3)

(5)- Die hande van die horlosies kan gom wees bo-op Base_1 en Base_2, of u kan 'n klein gaatjie boor sodat hulle op hul plek pas.

(6)- Om die tandwiel van die minuut te laat pas by die tandwiel, benodig u 'n platform van 1 cm om die hele eenheid met een van die stepper-motors bo-op te sit.

Die rede hiervoor is omdat die hoofbasis nie hoog kan wees nie, aangesien die ander stapmotor nie die hoë ratkas kan bereik nie. In elk geval is 'n platform nodig vir een van die stepper motors.

Stap 4: Biblioteek vir Arduino IDE

Die kode vir hierdie projek is gebaseer op 'n biblioteek van tyhenry genaamd CheapStepper.h

github.com/tyhenry/CheapStepper

Om hierdie biblioteek vir u arduino te installeer. Klik op kloon of laai op die skakel hierbo af en laai dit af as 'n zip -lêer.

In die Arduino IDE. Skets -> Sluit biblioteek in -> Voeg. ZIP -biblioteek by

Uit al die biblioteke wat werk, gebruik hierdie een die stappermotor die beste en uiters maklik om te gebruik.

Stap 5: Opstel van broodbord

Opstel van broodbord
Opstel van broodbord
Opstel van broodbord
Opstel van broodbord

Ek het 'n Arduino -skild gebruik om saam met my Arduino UNO te gaan. Dit lyk meer skoon, maar jy kan 'n klein broodbord kry en dit bo -op die Arduino UNO plaas. Volg die kleur op die skema, aangesien sommige drade bo -op mekaar is. Spelde 4-7 is vir een stepper en penne 8-11 vir die tweede stepper.

Die Bluetooth -module moet RX -> TX en TX -> RX aan die Arduino -bord gekoppel wees.

Blou drade is verbindings van die bestuurders na die Arduino UNO

Groen drade is die RX- en TX -verbindings

Swart drade word gemaal.

Rooi drade is 5V.

Stap 6: Kode

Hieronder is die kode vir hierdie projek.

Die verduideliking van die kode sal hier verskyn.

CheapStepper 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 vol = 4096;

int half = vol/2; // 2048

float full_time = 6412; // 1 uur

dryf half tyd = voltyd/2; // 30 min 3026

float fif_time = half_time/2; // 15 minute 1603

float one_time = full_time/60; // 1 min 106

float five_time = one_time*5; // 5 min 534,3

float one_sec = one_time/60; // 1 sek 1.78

// ons kan 30 minute elk doen deur die motor 3206 te draai en terug te stel

Dit is die belangrikste berekening vir hierdie projek. Die stepper sou 4096 stappe neem om 'n volle 360 grade te draai, maar omdat die tandwiele groter is as die ratte wat aan die stepper geheg is, neem dit meer stappe vir 'n volledige draai. Aangesien die tandrat die belangrikste komponent is wat die hande draai. Ek moet verskillende toetse doen om seker te maak dat die waardes korrek is.

full_time is die veranderlike wat ek toegewys het vir 'n volledige draai van die hand. Dit is redelik konsekwent, maar namate die stappe gedeel word deur 2 om spesifieke beweging te kry, word die vlotwaarde kleiner, wat dit vir die bestuurder moeiliker gemaak het om sy werk te doen.

Die beweging Kloksgewys = waar; is om die stapmotor met die kloksgewys te laat beweeg, maar omdat dit die tandrat teen die kloksgewys draai, moet ons die booleaanse vals in die opstelling maak. U kan dit ook aan die begin vals verklaar, maar dit is om te verduidelik hoe dit werk.

ongeldige opstelling () {Serial.begin (9600);

Serial.println ("Gereed om te begin beweeg!");

pos = een_tyd; del = 900; verhouding = 60;

moveClockwise = vals; }

Hier verklaar ek die move Boolse kloksgewys as onwaar. pos sal die aantal stappe wees, del sal die vertraging wees, en die verhouding is óf vir minuut/sek = 60 óf uur/min = 12

Ons beheer die hande met die Bluetooth -module. Eerstens benodig u 'n seriële Bluetooth -terminaal vanaf u Android -toestel. Koppel aan die Hc-05 met die PIN 0000 of 1234. U kan 'n voorbeeldkode van Arduino IDE gebruik om te sien of dit korrek werk. As dit gekoppel is, moet dit baie stadig knip in plaas van vinnig as dit nie gekoppel is nie.

leemte lus () {toestand = 0;

as (Serial.available ()> 0) {

staat = Serial.read (); }

vir (float s = 0; s <(pos); s ++) {

stepper.step (beweeg met die kloksgewys); }

vir (float s = 0; s <(pos/verhouding); s ++) {

stepper_2.step (beweeg met die kloksgewys); }

vertraging (del);

Serial.available ()> 0 is belangrik, want dit is hoe u Bluetooth -module gaan werk. Hierdie verklaring is waar as daar kommunikasie tussen die Arduino en u toestel is. Die staatsveranderlike bepaal die drie ander veranderlikes wat ek bo -aan die opstelling () verklaar het, en dit sal ook druk watter operasie die kode uitvoer. Die twee vir lus is die hooffunksie wat die stapmotor beweeg.

as (staat == '1') {

pos = een_tyd; del = 0; verhouding = 12;

Serial.println ("Operasie 1: geen vertraging"); }

Dit is een voorbeeld van die gebruik van die insette van u Bluetooth -toestel om die werking van die stelsel te verander. U kan hierdie veranderlikes wysig soos u die hande wil beheer.

Stap 7: Demo en gevolgtrekking

Image
Image
Demo en gevolgtrekking
Demo en gevolgtrekking

Dit is 'n demo van die stelsel wat wys hoe dit werk. Vir die omhulsel kan u alles gebruik wat by alle komponente pas. Hierdie projek was eenvoudig en lekker om te maak, aangesien dit die eerste keer was dat ek 3D gedruk het. Die Bluetooth -module was lekker om uit te vind en te gebruik. Daar is 'n paar foute wat ek gemaak het, wat te laat was om te verander, maar die finale produk is goed.

Aanbeveel: