Sadržaj:

Sat: 7 koraka
Sat: 7 koraka

Video: Sat: 7 koraka

Video: Sat: 7 koraka
Video: Sedam koraka - decije pesme | pesmice za decu | decije pesmice | pjesma za vježbanje za malu djecu 2024, Lipanj
Anonim
Satni mehanizam
Satni mehanizam

Ova instrukcija nastala je u skladu s projektnim zahtjevima Makecoursea na Sveučilištu Južne Floride (www.makecourse.com).

Korak 1: Koncept

Pokušavajući razmišljati o ideji za ovaj projekt, odlučio sam napraviti nešto što će biti upotrebljivo i korisno za moj svakodnevni život. Nema mnogo takvih stvari koje mogu imati zahtjev za dva stupnja slobode pa sam odlučio napraviti jednostavan sat koji će udovoljiti zahtjevu, kao i postaviti ga na radni stol kako bi pokazivao vrijeme. U početku je ideja bila napraviti ručni sat, no 3D ispisani dio bio bi premalen, a motori koji pokreću sat i dalje bi bili preveliki za ručni sat.

Stoga sam ovaj projekt pronašao rezervne dijelove po stanu i odlučio poraditi na ovome.

Korak 2: Dijelovi

- 3D ispisani dijelovi

- 2 28BYJ-48 5V DC koračni motor

- 2 ULN2003 ploča upravljačkog programa koračnog motora

- Arduino Uno

- HC-05 Bluetooth modul

Sve ove dijelove sam napravio osim kazaljki na satu. Nisam baš kreativan. Dolje je veza do njezinog tvorca.

www.thingiverse.com/thing:1441809

Korak 3: Montaža dijelova

Sklapanje dijelova
Sklapanje dijelova

(1)- Morate staviti Gear_1 i 2 na koračne motore. Bit će tijesno pripijeni pa im je potrebno malo sile da ostanu na mjestu.

(2)- Baza_0 će ostati na dnu sklopa.

(3)- Baza_1 bit će postavljena na vrh SpurGear_1, ovo je glavna komponenta za minutu. Ove dvije komponente možete zalijepiti zajedno, pazeći da je baza na vrhu zupčanika.

(4)- Baza_2 bit će postavljena na SpurGears_2, ovo je glavna komponenta kazaljke sata. Isto vrijedi i za ovaj dio kao korak (3)

(5)- Kazaljke na satovima mogu biti zalijepljene na bazi Base_1 i Base_2, ili možete izbušiti malu rupu kako bi ih postavili na mjesto.

(6)- Da bi se zupčanik minutne kazaljke uskladio s zupčanikom, potrebna vam je platforma od 1 cm za postavljanje cijelog sklopa na vrh s jednim od koračnih motora.

Razlog tome je što glavna baza ne može biti visoka jer drugi koračni motor ne bi mogao doseći visoki stupanj prijenosa. U svakom slučaju, platforma je potrebna za jedan od koračnih motora.

Korak 4: Knjižnica za Arduino IDE

Kôd za ovaj projekt temelji se na knjižnici tvrtke Tyhenry pod nazivom CheapStepper.h

github.com/tyhenry/CheapStepper

Za instaliranje ove biblioteke na vaš arduino. Kliknite kloniraj ili preuzmi na gornjoj vezi i preuzmi je kao zip datoteku.

U Arduino IDE -u. Skica -> Uključi knjižnicu -> Dodaj. ZIP knjižnicu

Od svih knjižnica koje rade, ova je najbolje i iznimno jednostavna za korištenje imala koračni motor.

Korak 5: Postavljanje Breadboard -a

Postavljanje Breadboard -a
Postavljanje Breadboard -a
Postavljanje Breadboard -a
Postavljanje Breadboard -a

Koristio sam Arduino štit za svoj Arduino UNO. Izgleda čistije, ali umjesto toga možete nabaviti malu ploču i postaviti je na Arduino UNO. Slijedite boju na shemi jer su neke žice jedna iznad druge. Igle 4-7 su za jedan steper, a pinovi 8-11 za drugi steper.

Bluetooth modul mora biti ožičen RX -> TX i TX -> RX na Arduino ploču.

Plave žice su veze između upravljačkih programa i Arduino UNO -a

Zelene žice su RX i TX veze

Crne žice su uzemljene.

Crvene žice su 5V.

Korak 6: Kodiranje

Ispod je kôd za ovaj projekt.

Objašnjenje koda bit će ovdje.

Steap koraka CheapStepper (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 pun = 4096;

int pola = puno/2; // 2048

float full_time = 6412; // 1 sat

float half_time = full_time/2; // 30 min 3026

float five_time = half_time/2; // 15 min 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 s 1.78

// možemo raditi 30 minuta svaki zakretanjem motora 3206 i resetiranjem

Ovo je glavni izračun za ovaj projekt. Steperu bi bilo potrebno 4096 koraka da se okrene za punih 360 stupnjeva, ali zato što su zupčanici sa zupčanicima veći od zupčanika pričvršćenih na steper, pa je potrebno više koraka za potpunu rotaciju. Kako je zupčanik glavna komponenta koja vrti ruke. Moram obaviti različita testiranja kako bih provjerio jesu li vrijednosti točne.

full_time je varijabla koju sam dodijelio za potpunu rotaciju ruke. To je sasvim dosljedno, no kako se koraci dijele s 2 kako bi se postiglo specifično kretanje, vrijednost plovka postaje manja, što je vozaču otežavalo obavljanje posla.

MoveClockwise = true; je da se koračni motor pokrene u smjeru kazaljke na satu, ali budući da okreće zupčanik u smjeru suprotnom od kazaljke na satu, moramo postaviti boolean u postavku false. Također ga možete proglasiti lažnim na početku, ali to vam objašnjava kako to radi.

void setup () {Serial.begin (9600);

Serial.println ("Spremni za početak kretanja!");

pos = jedan_put; del = 900; omjer = 60;

moveClockwise = false; }

Ovdje proglašavam moveClockwise boolean false. pos će biti broj koraka, del će biti kašnjenje, a omjer je za minute/sec = 60 ili sat/min = 12

Rukama kontroliramo Bluetooth modul. Prvo vam je potreban serijski Bluetooth terminal s Android uređaja. Povežite se na Hc-05 s PIN-om 0000 ili 1234. Možete upotrijebiti neki primjer koda iz Arduino IDE-a da vidite radi li ispravno. Kad je spojen, trebao bi treptati vrlo sporo, umjesto brzo kada nije spojen.

void loop () {stanje = 0;

if (Serial.available ()> 0) {

stanje = Serijski.čitaj (); }

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

stepper.step (moveClockwise); }

za (float s = 0; s <(pos/ratio); s ++) {

stepper_2.step (premjesti se u smjeru kazaljke na satu); }

odgoda (del);

Serial.available ()> 0 je važno jer znači kako će vaš Bluetooth modul raditi. Ova if izjava bit će točna kada postoji komunikacija između Arduina i vašeg uređaja. Varijabla stanja će odrediti 3 druge varijable koje sam proglasio vrhom setup (), također će ispisati koju operaciju kôd izvodi. Petlja for dva glavna je funkcija koja pokreće koračni motor.

if (stanje == '1') {

pos = jedan_put; del = 0; omjer = 12;

Serial.println ("Operacija 1: Nema odgode"); }

Ovo je jedan primjer korištenja unosa s vašeg Bluetooth uređaja za promjenu načina rada sustava. Ove varijable možete uređivati kako god želite kontrolirati kazaljke.

Korak 7: Demo i zaključak

Image
Image
Demo i zaključak
Demo i zaključak

Ovo je demo sustava koji pokazuje kako radi. Za kućište možete upotrijebiti sve što bi odgovaralo svim komponentama unutra. Ovaj je projekt bio jednostavan i zabavan za izradu jer sam prvi put tiskao 3D. Bluetooth modul bilo je zabavno shvatiti i koristiti. Napravio sam nekoliko pogrešaka koje je bilo prekasno za promjenu, ali konačni proizvod je u redu.

Preporučeni: