Բովանդակություն:
- Քայլ 1: Մասերի ձեռքբերում:
- Քայլ 2: Լարերի տեղադրում
- Քայլ 3: Նախնական ծածկագիր
- Քայլ 4: Կոդ
- Քայլ 5: Գործը
Video: Կատակի տանկ. 5 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Սա նախագիծ է, որը ես արել եմ իմ դպրոցում `HKU- ով, որը պահանջում էր, որ մենք ինչ -որ բան պատրաստենք Arduino Uno- ով: Ես ուզում էի պատրաստել մի բան, որն աներ իմ ամենասիրածը, ծիծաղեցնել մարդկանց: Այսպիսով, որոշեց կատակ տուփ պատրաստել, որը ձեզ կատակ կթափեր, բայց այն, ինչ դա ձեզ տվեց, կախված կլիներ այն բանից, թե ինչ չափիչ սենսորային մոդուլներ էին չափում տվյալ պահին: Ավելի անհատական դարձնելու համար ես որոշեցի այն տանկ դարձնել:
Քայլ 1: Մասերի ձեռքբերում:
Այն մասերը, որոնք ձեզ անհրաժեշտ կլինեն այս նախագիծը վերստեղծելու համար, կլինեն
- 1x համակարգիչ, որն ունակ է աշխատելու Arduino IDE- ով
- 1x Arduino Uno
- 1x USB միակցիչ մալուխ Arduino Uno- ի համար
- 1x Sonar սենսոր
- 1x բարձրախոս (նախընտրելի է արժանապատիվ որակի (ես օգտագործել եմ այն, որը հանեցի bluetooth բարձրախոսից)):
- 1x LM386 ուժեղացուցիչի մոդուլ (հնարավոր է դա ինքներդ պատրաստել, բայց ես օգտագործել եմ մոդուլ):
- 1x LM393 խոսափող
- 1x LDR
- 1x LED (ցանկացած գույն կանի, բայց ես օգտագործում էի կապույտը):
- 4x 1kΩ դիմադրություն
- 1x 2, 7kΩ դիմադրություն
- 1x Breadboard
- 1x միկրո SD քարտ (ցանկալի է փոքր (1 կամ 2 գբ)):
- 1x ուժային փորվածք:
- 1x 16 մմ տրամագծով հորատիչ (նախընտրելի է պատրաստել մետաղի հորատման համար):
- 1x 9 մմ տրամագծով հորատիչ (նաև գերադասելի է պատրաստել մետաղի հորատման համար):
- 1x 1 մմ տրամագծով հորատիչ (կրկին գերադասելի է պատրաստել մետաղի հորատման համար):
- 1x մոդելային տանկ (ես օգտագործել եմ 1:35 մասշտաբի ընձառյուծ 2, բայց մյուս դեպքերը նույնպես պետք է լավ լինեն):
- Superglue / hotglue
- և բավականին լարեր, նախընտրելի է տարբեր գույներով:
- մալուխային կապեր (ըստ ցանկության):
Քայլ 2: Լարերի տեղադրում
Մենք պետք է սկսենք էլեկտրագծից, պատկերը տեխնիկական նկար է, թե ինչպես պետք է ամեն ինչ միացված լինի: Սա պետք է ծառայի որպես ձեր նախագիծը: Նշում. Arduino- ի բոլոր նավահանգիստները յուրաքանչյուր նավահանգստի համար անվանվում են AP#: Այսպիսով, 4 -րդ նավահանգիստը Arduino- ն AP4 է, A0 նավահանգիստը `APA0 և նավահանգիստ 6 -ը` AP6 ~ և այլն: Մնացած բոլոր նավահանգիստներն անվանված են այնպես, ինչպես իրենք են հայտնվում մոդուլներում:
Քայլ 3: Նախնական ծածկագիր
Այժմ, նախքան մենք կսկսենք օգտագործել կոդը, մեզ պետք է որոշակի stuf: Ես խորհուրդ եմ տալիս, որ այժմ հետևեք այս ձեռնարկի ձեռնարկին 2 -ից 4 -րդ քայլից
www.electronoobs.com/eng_arduino_tut8.php
Այնուամենայնիվ, մենք չենք օգտագործի նրա ծածկագիրը, քանի որ մենք օգտագործելու ենք մեր սեփականը: Խնդրում ենք նկատի ունենալ, որ որոշ բարձրախոսներ օգտագործում են տարբեր հաճախականություններ: Իմ խոսնակը օգտագործել է 16 բիթանոց 32 կՀց հաճախականությամբ աուդիո ֆայլեր: Այսպիսով, եթե ձեր խոսքը ինչ -որ տեսակի աղմուկ է բարձրացնում, բայց չի խաղում ձեր ֆայլերը, ապա փորձեք խաղալ ձեր հաճախականությամբ:
Քայլ 4: Կոդ
Այժմ մենք կբեռնենք կոդը arduino- ում: Պատճենեք այս ամենը և տեղադրեք Arduino IDE- ում և վերբեռնեք ձեր Arduino- ում:
// ներառում է գրադարան SD քարտի ընթերցողի համար: #include // Կարգավորում է Arduino- ի կապում: int resetPin = 4; int clockPin = 5; int dataPin = 6; int զբաղվածPin = 7; int soundDetectedPin = 12; int lightDetectedPin = A0; // Տեղադրում է SD քարտերի գրադարանի կապում: Wtv020sd16p wtv020sd16p (resetPin, clockPin, dataPin, busyPin); // Սահմանում է Sonar սենսորների գրադարանի կապում: NewPing սոնար (11, 10); // Կարգավորում է մյուս մուտքերը և սահմանում ծրագրի բիթ -արագությունը: void setup () {wtv020sd16p.reset (); pinMode (lightDetectedPin, INPUT); pinMode (soundDetectedPin, INPUT); Serial.begin (9600); } // Mainրագրի հիմնական մասը: void loop () {// Կարգավորում է intergers int lightDetectedVal = analogRead (lightDetectedPin); int distanceVal = sonar.ping_cm (); int soundDetectedVal = digitalRead (soundDetectedPin); // Հետաձգեք այնպես, որ նախագիծը նախագիծը անվերջ չշարունակի օգտագործել բարձրախոսը: ուշացում (30000); // Սերիական տպման և տպման տողեր, որպեսզի հեշտությամբ տեսնեք, թե ինչ արժեքներ են ընդունվում սենսորային մոդուլներով: Serial.print ("Ձայնի արժեքը."); // Բազմաթիվ if հայտարարություններ այնպես, որ ծրագիրը նվագի տարբեր աուդիո ֆայլեր `կախված արժեքներից, չափվում են սենսորային մոդուլներով: if (soundDetectedVal == 0) {Serial.println (soundDetectedVal); Serial.print ("Հեռավորություն"); if (distanceVal == 0) {Serial.println (distanceVal); Serial.print ("Light Value:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (1); // Մեկ այլ սերիական տպում, որպեսզի տեսնեք, թե ինչ ճշգրիտ աուդիո ֆայլ է նվագարկվել: Serial.println ("1 --------"); // Մեկ այլ ուշացում, որը թույլ է տալիս աուդիո ֆայլին խաղալ ամբողջ երկարությամբ: ուշացում (5000); } else if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (2); Serial.println ("2 --------"); ուշացում (5000); } else if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (3); Serial.println ("3 --------"); ուշացում (5000); } else if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (4); Serial.println ("4 --------"); ուշացում (5000); } else if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (5); Serial.println ("5 --------"); ուշացում (5000); } else if (lightDetectedVal> = 500 || lightDetectedVal 0 || distanceVal == NULL) {Serial.println (distanceVal); Serial.print ("Light Value:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (7); Serial.println ("7 --------"); ուշացում (5000); } else if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (8); Serial.println ("8 --------"); ուշացում (8000); } else if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (9); Serial.println ("9 --------"); ուշացում (5000); } else if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (10); Serial.println ("10 -------"); ուշացում (8000); } else if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (11); Serial.println ("11 -------"); ուշացում (6000); } else if (lightDetectedVal> = 500 || lightDetectedVal <= 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (13); Serial.println ("13 -------"); ուշացում (5000); } else if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (14); Serial.println ("14 -------"); ուշացում (5000); } else if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (15); Serial.println ("15 -------"); ուշացում (5000); } else if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (16); Serial.println ("16 -------"); ուշացում (5000); } else if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (17); Serial.println ("17 -------"); ուշացում (5000); } else if (lightDetectedVal> = 500 || lightDetectedVal 0 || distanceVal == NULL || distanceVal> = 150) {Serial.println (distanceVal); Serial.print ("Light Value:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (19); Serial.println ("19 -------"); ուշացում (5000); } else if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (20); Serial.println ("20 -------"); ուշացում (5000); } else if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (21); Serial.println ("21 -------"); ուշացում (5000); } else if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (22); Serial.println ("22 -------"); ուշացում (5000); } else if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (23); Serial.println ("23 -------"); ուշացում (5000); } else if (lightDetectedVal> = 500 || lightDetectedVal << 500) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (24); Serial.println ("24 -------"); ուշացում (5000); }}}}
Քայլ 5: Գործը
Այժմ գալիս է իրական բարդ մասը:
Գործի մեջ ամեն ինչ տեղավորելը կարող է մի փոքր բարդ լինել: Դա կախված է նրանից, թե ինչպես եք ամեն ինչ տեղավորել ձեր տախտակի վրա կամ ինչպես եք իրերը միասին զոդում: Բայց դուք պետք է մի երկու անցք կատարեք, որպեսզի սենսորները սոսնձվեն: Ես դնում եմ միկրոֆոնը (անհրաժեշտ է 9 մմ փորվածք) և սոնարային մոդուլը (անհրաժեշտ է 6 մմ փորվածք) հետևի մասում և LDR տանկի առջևում, բայց դրանք կարող են ամենուրեք տեղադրել, եթե ունեք ազատ տարածք:
Համոզվեք, որ մոդելի մարմնում փոս եք կտրում, որպեսզի կարողանաք ձեր arduino- ն միացնել մալուխի հետ:
Ես խորհուրդ կտայի բարձրախոսին դնել պտուտահաստոցում: քանի որ այնտեղ պետք է շատ տեղ մնա:
Վերևի ձախ պատկերն այն է, թե ինչպես ես տեղադրեցի arduino- ն և տպած տպիչը, որը ես զոդեցի Leopard 2 մոդելի ներսում: Աջ պատկերն այն է, որտեղ տեղադրված են էլեկտրագծերի մեծ մասը:
Այն, ինչ դուք կարող եք անել, մոդելի ներքևում փոքր անցքեր են հորատում ՝ Arduino- ն մալուխային կապերով ամրացնելու համար:
Բայց եթե չեմ սխալվում, դուք այժմ պետք է ավարտված լինեք:
Խորհուրդ ենք տալիս:
3D տպագիր RC վերահսկվող տանկ !!: 8 քայլ (նկարներով)
3D տպագիր RC վերահսկվող տանկ !! Տանկի հետքերը թույլ են տալիս հիանալի բռնել հողում, ինչպես կեղտը և
Անլար Arduino վերահսկվող տանկ (nRF24L01). 6 քայլ (նկարներով)
Անլար Arduino վերահսկվող տանկ (nRF24L01). Բարև, այսօր ես ձեզ ցույց կտամ, թե ինչպես կարելի է կառուցել Arduino- ի միջոցով կառավարվող տանկ և հեռակառավարման վահանակ: Տանկի 3D տպագիր մասերը (բացառությամբ հսկիչի, ուղու ուղեցույցի և տանկի ծածկույթի) նախագծված են timmiclark- ի կողմից և կարող եք գտնել այստեղ
Կառուցեք 15 դոլար արժողությամբ հեռակառավարվող ESP8266 ռոբոտ -սպասավոր / մեքենա / տանկ Ios- ի և Android- ի համար. 4 քայլ
Կառուցեք 15 դոլար արժողությամբ հեռակառավարվող ESP8266 ռոբոտ -բութլեր / մեքենա / տանկ Ios- ի և Android- ի համար. Ատու՞մ եք խոհանոց քայլել ՝ խորտիկ ձեռք բերելու համար: Թե՞ նոր խմիչք խմել: Այս ամենը կարելի է շտկել 15 դոլար արժողությամբ այս պարզ հեռակառավարվող բաթլերի օգնությամբ: Մինչև որևէ առաջ գնալը ես այժմ Kickstarter նախագիծ եմ վարում ձայնային վերահսկվող RGB լուսանցքի համար
Halo Scorpion տանկ ՝ 5 քայլ
Halo Scorpion Tank. Այս հրահանգը ստեղծվել է Հարավային Ֆլորիդայի համալսարանի Makecourse- ի նախագծի պահանջի կատարման համար (www.makecourse.com): Սա իմ քայլ առ քայլ գործընթացն է ՝ Halo Scorpion տանկը լիովին ֆունկցիոնալ նախագծելու և պատրաստելու համար: Հղումը
Ինչպես կառուցել DIY հզոր մետաղական Rc ռոբոտային տանկ V2.0: 4 քայլ
Ինչպես կառուցել DIY հզոր մետաղական Rc ռոբոտային տանկ V2.0. Ռոբոտ -սողուն կառուցելու ևս մեկ նախագիծ, բայց այս անգամ ես տնային աշխատանքս լավ կատարեցի: Ի տարբերություն նախորդ ռոբոտի, ամբողջ մարմինը պատրաստված է ալյումինից, ուստի այս ռոբոտը կշռում է մոտ 2 ֆունտ պակաս, քան նախորդ ռոբոտը, որը կշռում է ավելի քան 6 ֆունտ: Եվս մեկ խայտառակություն