Բովանդակություն:

Ockամացույցի մեխանիզմ ՝ 7 քայլ
Ockամացույցի մեխանիզմ ՝ 7 քայլ

Video: Ockամացույցի մեխանիզմ ՝ 7 քայլ

Video: Ockամացույցի մեխանիզմ ՝ 7 քայլ
Video: Եթե երեկոյան օգտագործեք այս դիմակը, առավոտյան զարմանքով կնայեք հայելու մեջ… արդյունքը տպավորիչ է 2024, Հունիսի
Anonim
Clամացույցի մեխանիզմ
Clամացույցի մեխանիզմ

Այս ձեռնարկը ստեղծվել է Հարավային Ֆլորիդայի համալսարանի Makecourse- ի նախագծի պահանջի կատարման համար (www.makecourse.com):

Քայլ 1: Հայեցակարգ

Երբ փորձում էի մտորումներ անել այս նախագծի համար, որոշեցի պատրաստել մի բան, որն օգտագործելի է և օգտակար իմ առօրյա կյանքի համար: Ոչ շատ նման բաներ կարող են ունենալ երկու աստիճանի ազատության պահանջ, ուստի ես որոշեցի պատրաստել պարզ ժամացույց `պահանջը բավարարելու համար, ինչպես նաև այն ցուցադրել իմ գրասեղանին` ժամանակը ցույց տալու համար: Ի սկզբանե գաղափարը ձեռքի ժամացույց պատրաստելն էր, բայց 3D տպված հատվածը չափազանց փոքր կլիներ, իսկ ժամացույցը վարող շարժիչները, այնուամենայնիվ, չափազանց մեծ կլիներ ձեռքի ժամացույցի համար:

Այսպիսով, այս նախագիծը, ես գտա պահեստամասեր իմ բնակարանի շուրջ և որոշեցի աշխատել դրա վրա:

Քայլ 2: Մասեր

- 3D տպագիր մասեր

- 2 28BYJ-48 5V DC արագաչափ շարժիչ

- 2 ULN2003 Stepper Motor Driver Board

- Արդուինո Ունո

- HC-05 Bluetooth մոդուլ

Այս բոլոր մասերը պատրաստված են իմ կողմից, բացի ժամացույցի սլաքներից: Ես այնքան էլ ստեղծագործող չեմ: Ստորև բերված է դրա ստեղծողի հղումը:

www.thingiverse.com/thing:1441809

Քայլ 3. Մասերի հավաքում

Մասերի հավաքում
Մասերի հավաքում

(1)- Դուք պետք է Gear_1 և 2-ը դնեք քայլող շարժիչներին: Նրանք ամուր տեղավորվում են, ուստի մի փոքր ուժ է անհրաժեշտ, որպեսզի նրանք մնան տեղում:

(2)- Base_0- ը կմնա հավաքի ներքևում:

(3)- Base_1- ը կտեղադրվի SpurGear_1- ի գագաթին, սա րոպեապահի հիմնական բաղադրիչն է: Դուք կարող եք սոսնձել այս երկու բաղադրիչները միասին, համոզվեք, որ հիմքը հանդերձի վերևում է:

(4)- Base_2- ը կտեղադրվի SpurGears_2- ի գագաթին, սա ժամացույցի հիմնական բաղադրիչն է: Նույնը վերաբերում է այս հատվածին որպես քայլ (3)

(5)- theամացույցների սլաքները կարող են սոսինձ լինել Base_1- ի և Base_2- ի վերևում, կամ կարող եք մի փոքր անցք հորատել, որպեսզի դրանք տեղավորվեն:

(6)- Որպեսզի րոպեական ձեռքի հանդերձանքը համընկնի խթանիչ հանդերձանքի հետ, ձեզ հարկավոր է 1 սմ հարթակ, որպեսզի ամբողջ հավաքածուն գագաթին դնի տափաստանային շարժիչներից մեկով:

Դրա պատճառն այն է, որ հիմնական հիմքը չի կարող բարձր լինել, քանի որ մյուս քայլող շարժիչը չի կարողանա հասնել բարձր արագության: Ամեն դեպքում, հարթակ է անհրաժեշտ տափաստանային շարժիչներից մեկի համար:

Քայլ 4. Գրադարան Arduino IDE- ի համար

Այս նախագծի ծածկագիրը հիմնված է Tyhenry- ի գրադարանի վրա, որը կոչվում է CheapStepper.h

github.com/tyhenry/CheapStepper

Ձեր arduino- ի համար այս գրադարանը տեղադրելու համար: Կտտացրեք clone կամ ներբեռնեք վերևի հղմանը և ներբեռնեք այն որպես zip ֆայլ:

Arduino IDE- ում: Էսքիզ -> Ներառել գրադարանը -> Ավելացնել. ZIP գրադարան

Բոլոր գրադարանից, որն աշխատում էր, այս մեկն օգտագործում էր սլաքային շարժիչը ամենալավը և չափազանց հեշտ օգտագործման համար:

Քայլ 5: Breadboard- ի կարգավորում

Breadboard Setup
Breadboard Setup
Breadboard Setup
Breadboard Setup

Ես օգտագործեցի Arduino վահան ՝ իմ Arduino UNO- ով գնալու համար: Այն ավելի մաքուր տեսք ունի, բայց դուք կարող եք ձեռք բերել մի փոքրիկ տախտակ և դրա փոխարեն տեղադրել Arduino UNO- ի գագաթին: Հետևեք սխեմատիկ գույնին, քանի որ որոշ լարեր գտնվում են միմյանց վրա: 4-7-րդ կապերը նախատեսված են մեկ աստիճանի համար, իսկ 8-11-ը ՝ երկրորդ աստիճանի համար:

Bluetooth մոդուլը պետք է միացված լինի RX -> TX և TX -> RX Arduino տախտակին:

Կապույտ լարերը Վարորդներից Arduino UNO- ին միացումներ են

Կանաչ լարերը RX և TX միացումներն են

Սև լարերը մանրացված են:

Կարմիր լարերը 5 Վ են:

Քայլ 6: Կոդ

Ստորև բերված է այս ծրագրի ծածկագիրը:

Կոդի բացատրությունը կլինի այստեղ:

CheapStepper stepper (8, 9, 10, 11); CheapStepper stepper_2 (4, 5, 6, 7);

բուլյան moveClockwise = ճշմարիտ;

//37.5 րոպե = 4096;

// 1 րոպե = 106.7;

// 5 րոպե = 533.3;

// 15 րոպե = 1603;

// 30 րոպե = 3206;

// 60 րոպե = 6412;

int լրիվ = 4096;

int կես = լրիվ/2; // 2048 թ

float full_time = 6412; // 1 ժամ

float half_time = full_time/2; // 30 րոպե 3026

float fif_time = half_time/2; // 15 րոպե 1603 թ

float one_time = full_time/60; // 1 րոպե 106

float five_time = one_time*5; // 5 րոպե 534.3

float one_sec = one_time/60; // 1 վրկ 1.78

// մենք կարող ենք յուրաքանչյուրը 30 րոպե տևել ՝ 3206 շարժիչը պտտելով և վերագործարկելով

Սա այս ծրագրի հիմնական հաշվարկն է: Սանդղակը կատարելու է 4096 քայլ ՝ ամբողջ 360 աստիճանով պտտվելու համար, բայց քանի որ խթանիչ շարժիչներն ավելի մեծ են, քան սանդղակին ամրացված, այնպես որ այն լիարժեք պտտման համար ավելի շատ քայլեր է պահանջում: Քանի որ խթանիչ հանդերձանքը հիմնական բաղադրիչն է, որը պտտում է ձեռքերը: Ես պետք է կատարեմ տարբեր թեստեր `համոզվելու համար, որ արժեքները ճիշտ են:

full_time- ը այն փոփոխականն է, որը ես նշանակել եմ ձեռքի ամբողջական պտույտի համար: Սա բավականին հետևողական է, բայց քանի որ քայլերը բաժանվում են 2 -ի ՝ որոշակի շարժում ստանալու համար, բոցի արժեքը փոքրանում է, ինչը դժվարացնում է վարորդի աշխատանքը:

The moveClockwise = ճշմարիտ; պետք է ստիպել, որ հետընթաց շարժիչը շարժվի ժամացույցի սլաքի ուղղությամբ, բայց քանի որ այն պտտվում է պտտվող հանդերձանքը ժամացույցի սլաքի հակառակ ուղղությամբ, մենք պետք է պարիսպը կեղծ դարձնենք կարգաբերման մեջ: Կարող եք նաև սկզբում այն կեղծ հայտարարել, բայց սա բացատրում է, թե ինչպես է այն աշխատում:

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

Serial.println («Պատրաստ է սկսել շարժվել»);

pos = մեկ_ անգամ; դել = 900; հարաբերակցությունը = 60;

moveClockwise = կեղծ; }

Ահա, որտեղ ես հայտարարում եմ moveClockwise- ի բուլյան կեղծ: pos կլինի քայլերի քանակը, del- ը `ուշացում, և հարաբերակցությունը կամ րոպե/վրկ = 60 կամ ժամ/րոպե = 12

Մենք վերահսկում ենք ձեռքերը Bluetooth մոդուլով: Նախ, ձեզ անհրաժեշտ է սերիական Bluetooth տերմինալ ձեր Android սարքից: Միացեք Hc-05- ին PIN 0000 կամ 1234 համարով: Կարող եք օգտագործել Arduino IDE- ի որոշ օրինակային կոդ `տեսնելու, որ այն ճիշտ է աշխատում: Երբ այն միացված է, այն պետք է շատ դանդաղ թարթի արագության փոխարեն, երբ այն կապված չէ:

void loop () {վիճակ = 0;

եթե (Serial.available ()> 0) {

վիճակ = Serial.read (); }

համար (float s = 0; s <(pos); s ++) {

stepper.step (moveCrollwise); }

համար (float s = 0; s <(pos/ratio); s ++) {

stepper_2.step (moveCrollwise); }

ուշացում (դել);

Serial.available ()> 0 -ը կարևոր է, քանի որ կարևոր է, թե ինչպես է աշխատելու ձեր Bluetooth մոդուլը: Սա եթե հայտարարությունը ճիշտ կլինի, երբ հաղորդակցություններ կան Arduino- ի և ձեր սարքի միջև: Պետական փոփոխականը կորոշի ևս 3 փոփոխականներ, որոնք ես հայտարարել եմ setup- ի վերևում (), ինչպես նաև կտպի, թե ինչ գործողություն է աշխատում կոդը: Երկուսի համար օղակը հիմնական գործառույթն է, որն առաջնորդում է, թե ինչպես է շարժիչ քայլը շարժվելու:

եթե (վիճակ == '1') {

pos = մեկ_ անգամ; դել = 0; հարաբերակցությունը = 12;

Serial.println («Գործողություն 1. Առանց հետաձգման»); }

Սա ձեր Bluetooth սարքի մուտքի օգտագործման մեկ օրինակ է `համակարգը աշխատելու եղանակը փոխելու համար: Դուք կարող եք խմբագրել այս փոփոխականները, ինչպես ցանկանում եք վերահսկել ձեռքերը:

Քայլ 7: Դեմո և եզրակացություն

Image
Image
Դեմո և եզրակացություն
Դեմո և եզրակացություն

Սա համակարգի ցուցադրական տարբերակն է, որը ցույց է տալիս, թե ինչպես է այն աշխատում: Պարիսպի համար կարող եք օգտագործել այն ամենը, ինչը կհամապատասխանի ներսի բոլոր բաղադրիչներին: Այս նախագիծը պարզ և զվարճալի էր, քանի որ առաջին անգամ էի 3D տպում: Bluetooth մոդուլը հաճելի էր պարզել և օգտագործել: Կան մի քանի սխալներ, որոնք ես թույլ տվեցի փոխելու համար, բայց վերջնական արտադրանքը լավ է:

Խորհուրդ ենք տալիս: