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

Cat Ball Shooter: 9 քայլ (նկարներով)
Cat Ball Shooter: 9 քայլ (նկարներով)

Video: Cat Ball Shooter: 9 քայլ (նկարներով)

Video: Cat Ball Shooter: 9 քայլ (նկարներով)
Video: Պապն ու տատիկն իրական կյանքում: Ինչո՞ւ են տունս քանդել։ ՊԱՊԻ ՏԱՏԻ Գլուխ երկրորդ 2024, Նոյեմբեր
Anonim
Կատուների գնդակի հրաձիգ
Կատուների գնդակի հրաձիգ

Անհրաժեշտ նյութեր

1 x RFID տվիչ/ հեռակառավարիչ

1 x Arduino uno

2 x DC շարժիչներ

1 x 180 սերվո

1 x 360 սերվո

բազմաթիվ լարեր

Տուփ/կոնտեյներ `նախագիծը կառուցելու համար

խողովակ ՝ գնդակը կերակրելու համար

Քայլ 1: Ստեղծեք շարժիչը և հեռակառավարիչը միացնելու միացում

Ստեղծեք շարժիչը և հեռակառավարիչը միացնելու շրջան
Ստեղծեք շարժիչը և հեռակառավարիչը միացնելու շրջան
Ստեղծեք շարժիչը և հեռակառավարիչը միացնելու շրջան
Ստեղծեք շարժիչը և հեռակառավարիչը միացնելու շրջան

Շղթայի կառուցում

կառուցեք վերևի սխեման և միացեք նույն կապումներին ՝ նույն կոդն օգտագործելու համար

Քայլ 2: Ստեղծեք բազա երկու շարժիչների համար

Ստեղծեք բազա երկու շարժիչների համար
Ստեղծեք բազա երկու շարժիչների համար

դուք պետք է օգտագործեք փրփուրի տախտակը ՝ կողմերի համար 4,5 դյույմ 2 դյույմ ուղղանկյուն կտրելու համար: ապա կտրեք 2, 5 x 5 դյույմ քառակուսիներ ՝ որպես վերև և ներքև օգտագործելու համար: Հաջորդը, շարժիչներին անհրաժեշտ կլինի նստելու տեղ, այնպես որ կտրեք 23 մմ տրամագծով և միմյանցից 39 մմ հեռավորության վրա գտնվող 2 անցք, որպեսզի գնդակը կրակելու տեղ լինի: ապա ստորին քառակուսու վրա մի բիծ կամ մի քանի անցք կատարեք, որպեսզի թույլ տաք, որ շարժիչներից հաղորդվող լարերը միանան շրջագծին:

Քայլ 3. Servo- ն ավելացրեք շարժիչների ստորին հատվածին

Ավելացրեք Servo- ն Motors- ի հատակին
Ավելացրեք Servo- ն Motors- ի հատակին

զգուշորեն սոսնձեք 180 կամ 360 servo- ն քառակուսու ներքևի մասում (մեջտեղում): մենք դա անում ենք, որպեսզի կարողանանք ուղղությունը ձեռքով փոխել հեռակառավարման վահանակի միջոցով կամ պատահականորեն, այնպես որ գնդակը կրակի տարբեր ուղղություններով

Քայլ 4: Կտրեք անցքերը մեծ տարայի մեջ

Կտրեք անցքեր մեծ տարայի մեջ
Կտրեք անցքեր մեծ տարայի մեջ
Կտրեք անցքեր մեծ տարայի մեջ
Կտրեք անցքեր մեծ տարայի մեջ
Կտրեք անցքեր մեծ տարայի մեջ
Կտրեք անցքեր մեծ տարայի մեջ

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

Քայլ 5: Խողովակ

Խողովակը
Խողովակը

պատրաստել կամ գնել PVC խողովակ, որն ունի 1 ոտնաչափ երկարություն, գերադասելի է կորով, որպեսզի գնդակը գլորվի, այնուհետև կտրեք 1,5 դյույմ շերտ, որպեսզի գնդակը ներս մտնի

Քայլ 6: The Hopper

The Hopper
The Hopper
The Hopper
The Hopper
The Hopper
The Hopper

կտրեց 4 հավասար trapezoid, որոնք կարող են ընտրվել, բայց իմը 5 դյույմ բարձր էին և խողովակին դնելիս մի փոքր թեքվեցին, այնուհետև ներքևի փրփուրի կտորը կտրեց այնքան մեծ անցք, որ պինգպոնգի գնդակը կարող էր անցնել: Հաջորդը կպցրեք դրանք միասին ՝ ձևավորելով ցատկ, որպեսզի բոլոր գնդակները նստեն: հետագայում մենք դա կպչենք խողովակի վերևին, որտեղ անցքը կտրված է

Քայլ 7: Հոպերի, խողովակների և շարժիչների տեղադրում

Հոպերի, խողովակների և շարժիչների տեղադրում
Հոպերի, խողովակների և շարժիչների տեղադրում

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

Քայլ 8: Վերջին ծառայությունը

Վերջնական ծառայություն
Վերջնական ծառայություն
Վերջնական ծառայություն
Վերջնական ծառայություն

այս servo- ն սոսնձված է վազքի ներքևի մասում/ որտեղ ես կտրել եմ խողովակը, որպեսզի այն բավականաչափ դուրս գա այնտեղ, որտեղ պինգ -գնդիկները չեն ընկնի, մինչև կոճակը սեղմվի և սերվոն շարժվի

Քայլ 9. Ավելացրեք ծածկագիր `աշխատանքային մասերը փորձարկելու համար

Աշխատանքային մասերը փորձարկելու համար ավելացրեք ծածկագիր
Աշխատանքային մասերը փորձարկելու համար ավելացրեք ծածկագիր

// Կատու ամրագրող

// գրադարաններ ներմուծել ՝ կոդի ողջ ընթացքում հրամաններ օգտագործելու համար, օրինակ ՝ կապերը որպես սերվոներ հայտարարելը և IR հեռակառավարման վայրի տեղադրումը #ներառել #ներառել

// փոփոխականների ստեղծում ՝ DC շարժիչների արագությունները սահմանելու համար int onspeed = 255; int ցածր արագություն = 100; int offspeed = 0;

// infared reciever pin- ի և երկու շարժիչի կապերի տեղադրում int IR_Recv = 2; int շարժիչ 1 = 10; int շարժիչ 2 = 11;

// փոփոխականները որպես servos հռչակելը, որպեսզի ծրագիրը իմանա, որ սերվո է օգտագործել հատուկ հրամաններ Servo flap; Սերվո անկյուն;

// հեռակառավարման վահանակից մուտքեր ստանալու համար IR քորոց հայտարարելը // ստանում է արդյունքները հեռավոր IRrecv irrecv (IR_Recv) - ից; decode_results results;

void setup () {

Serial.begin (9600); // սկսում է սերիական հաղորդակցությունը irrecv.enableIRIn (); // Գործարկում է ընդունիչը

փեղկ. կցել (7); // կցում է servo flap- ին 7 -րդ կապին, որպեսզի այն հետագայում օգտագործենք ծրագրի անկյունում: կցել (4); // ամրացնում է servo անկյունը 4 -րդ կապում, որպեսզի մենք այն հետագայում օգտագործենք ծրագրի pinMode- ում (motor1, OUTPUT); // սահմանել motor1 ելքի վրա, որպեսզի մենք կարողանանք արագություն ուղարկել ներս, երբ կոճակը սեղմվում է pinMode (motor2, OUTPUT); // սահմանել motor2 ելքի վրա, որպեսզի մենք կարողանանք արագություն ուղարկել ներս, երբ կոճակը սեղմվում է

}

դատարկ շրջան () {

flap.write (0); // սահմանեք սերվերը, որը վերահսկում է գնդակը սնուցողը 0 աստիճանի, որպեսզի որևէ գնդակ չթողնի

if (irrecv.decode (& results)) {{long int decCode = results.value; Serial.println (decCode); irrecv.resume ();

անջատիչ (results.value) {

պատյան 0xFFA25D: // power analogWrite (շարժիչ 1, արագություն); analogWrite (motor2, արագընթաց); ուշացում (7000); flap.write (90); ուշացում (500); flap.write (0); ուշացում (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed); ընդմիջում;

գործ 0xFFE01F: // EQ

analogWrite (motor1, արագընթաց); analogWrite (motor2, ցածր արագություն); ուշացում (7000); flap.write (90); ուշացում (500); flap.write (0); ուշացում (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed);

ընդմիջում;

գործ 0xFF629D: // ռեժիմ

analogWrite (motor1, ցածր արագություն); analogWrite (motor2, արագընթաց); ուշացում (7000); flap.write (90); ուշացում (500); flap.write (0); ուշացում (2000); analogWrite (motor1, offspeed); analogWrite (motor2, offspeed);

ընդմիջում;

գործ 0xFF30CF: // կարգավորում 1, 90 աստիճան

անկյուն. գրել (30);

ընդմիջում;

գործ 0xFF18E7: // պարամետր 2, 0 աստիճան

անկյուն. գրել (90);

ընդմիջում;

գործ 0xFF7A85: // կարգավորումը 3, 180 աստիճան

անկյուն. գրել (150);

ընդմիջում;

} } }

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