Cuprins:
- Pasul 1: Obținerea pieselor
- Pasul 2: Cablare
- Pasul 3: Pre-codul lucrurilor
- Pasul 4: Cod
- Pasul 5: Cazul
Video: Joker Tank: 5 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Acesta este un proiect pe care l-am făcut la școala mea HKU, care ne-a cerut să facem ceva cu un Arduino Uno. Am vrut să fac ceva care să-mi facă lucrul preferat, să-i facă pe oameni să râdă. Așa că am decis să fac o cutie de glume care să-ți arunce o glumă, dar ce glumă ți-a dat ar depinde de ceea ce măsurau câteva module de senzori în acel moment. Pentru a-l face mai personal, am decis să-l fac un tanc.
Pasul 1: Obținerea pieselor
Părțile de care ar fi nevoie pentru a recrea acest proiect ar fi
- 1x computer capabil să ruleze Arduino IDE
- 1x Arduino Uno
- 1x cablu conector USB pentru Arduino Uno
- 1x senzor sonar
- 1x difuzor (de preferat unul de calitate decentă (, am folosit unul pe care l-am scos dintr-un difuzor bluetooth)).
- 1x modul amplificator LM386 (este posibil să faceți acest lucru singur, dar am folosit un modul).
- 1x microfon LM393
- 1x LDR
- 1x LED (orice culoare va face, dar am folosit albastru).
- 4x rezistor 1kΩ
- Rezistor 1x 2, 7kΩ
- 1x placă de pâine
- 1x card micro SD (de preferință mic (1 sau 2 gb)).
- 1x burghiu electric.
- 1x cap de foraj de 16 mm (de preferință pentru găurirea metalului).
- 1x cap de foraj de 9 mm (de asemenea, de preferință, realizat pentru găurirea metalului).
- 1x cap de foraj de 1 mm (din nou, de preferință, realizat pentru găurirea metalului).
- 1x Model rezervor (am folosit un leopard la scara 1:35 2, dar și alte cazuri ar trebui să fie fine).
- Superglue / hotglue
- și destul de multe fire preferabil în culori diferite.
- legături pentru cablu (opțional).
Pasul 2: Cablare
Trebuie să începem cu cablarea, imaginea este un desen tehnic al modului în care ar trebui să fie conectat toate acestea. Acest lucru ar trebui să vă servească drept plan. Notă: Toate porturile Arduino sunt numite AP # pentru fiecare port. Arduino este AP4, portul A0 este APA0 și portul 6 ~ este AP6 ~, etc. Toate celelalte porturi sunt denumite așa cum apar pe module.
Pasul 3: Pre-codul lucrurilor
Acum, înainte de a începe să folosim codul, avem nevoie de ceva stuf. Vă recomandăm să urmați acum acest tutorial de la pasul 2 până la 4
www.electronoobs.com/eng_arduino_tut8.php
Cu toate acestea, nu vom folosi codul său, deoarece vom folosi propriul nostru Vă rugăm să rețineți că unele difuzoare folosesc frecvențe diferite. Difuzorul meu a folosit fișiere audio pe 16 biți de 32 kHz. Deci, dacă vorbirea ta face un fel de zgomot, dar nu redă fișierele, încearcă să te joci cu frecvența ta.
Pasul 4: Cod
Acum vom încărca codul pe arduino. Copiați toate acestea și treceți-le în IDE-ul Arduino și încărcați-le pe Arduino.
// include biblioteca pentru cititorul de card SD. # include "Wtv020sd16p.h" // include biblioteca necesară pentru senzorul sonar. #include // Setează pinii pentru Arduino. int resetPin = 4; int clockPin = 5; int dataPin = 6; int busyPin = 7; int soundDetectedPin = 12; int lightDetectedPin = A0; // Setează pinii pentru biblioteca de carduri SD. Wtv020sd16p wtv020sd16p (resetPin, clockPin, dataPin, busyPin); // Setează pinii pentru biblioteca de senzori Sonar. Sonar NewPing (11, 10); // Setează celelalte intrări și setează rata de biți a programului. void setup () {wtv020sd16p.reset (); pinMode (lightDetectedPin, INPUT); pinMode (soundDetectedPin, INPUT); Serial.begin (9600); } // Partea principală a programului. void loop () {// Setează intergerele în lightDetectedVal = analogRead (lightDetectedPin); int distanceVal = sonar.ping_cm (); int soundDetectedVal = digitalRead (soundDetectedPin); // Întârziere, astfel încât proiectul să nu folosească infinit difuzorul. întârziere (30000); // Imprimare în serie și linii de imprimare, astfel încât să puteți vedea cu ușurință ce valori iau modulele senzorilor. Serial.print ("Valoarea sunetului"); // Mai multe instrucțiuni if, astfel încât programul să redea diferite fișiere audio, în funcție de valori, sunt măsurate de modulele senzorului. if (soundDetectedVal == 0) {Serial.println (soundDetectedVal); Serial.print ("Distanță:"); if (distanceVal == 0) {Serial.println (distanceVal); Serial.print ("Valoarea luminii:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (1); // O altă imprimare în serie, astfel încât să puteți vedea ce fișier audio exact a fost redat. Serial.println ("1 --------"); // O altă întârziere pentru a lăsa fișierul audio să fie redat pe toată lungimea. întârziere (5000); } else if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (2); Serial.println ("2 --------"); întârziere (5000); } else if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (3); Serial.println ("3 --------"); întârziere (5000); } else if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (4); Serial.println ("4 --------"); întârziere (5000); } else if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (5); Serial.println ("5 --------"); întârziere (5000); } else if (lightDetectedVal> = 500 || lightDetectedVal 0 || distanceVal == NULL) {Serial.println (distanceVal); Serial.print ("Valoarea luminii:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (7); Serial.println ("7 --------"); întârziere (5000); } else if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (8); Serial.println ("8 --------"); întârziere (8000); } else if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (9); Serial.println ("9 --------"); întârziere (5000); } else if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (10); Serial.println ("10 -------"); întârziere (8000); } else if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (11); Serial.println ("11 -------"); întârziere (6000); } else if (lightDetectedVal> = 500 || lightDetectedVal <= 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (13); Serial.println ("13 -------"); întârziere (5000); } else if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (14); Serial.println ("14 -------"); întârziere (5000); } else if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (15); Serial.println ("15 -------"); întârziere (5000); } else if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (16); Serial.println ("16 -------"); întârziere (5000); } else if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (17); Serial.println ("17 -------"); întârziere (5000); } else if (lightDetectedVal> = 500 || lightDetectedVal 0 || distanceVal == NULL || distanceVal> = 150) {Serial.println (distanceVal); Serial.print ("Valoarea luminii:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (19); Serial.println ("19 -------"); întârziere (5000); } else if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (20); Serial.println ("20 -------"); întârziere (5000); } else if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (21); Serial.println ("21 -------"); întârziere (5000); } else if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (22); Serial.println ("22 -------"); întârziere (5000); } else if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (23); Serial.println ("23 -------"); întârziere (5000); } else if (lightDetectedVal> = 500 || lightDetectedVal << 500) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (24); Serial.println ("24 -------"); întârziere (5000); }}}}
Pasul 5: Cazul
Acum vine partea reală complicată.
Montarea tuturor în cazul poate fi un pic dificil, acest lucru depinde de modul în care ați montat totul pe panoul dvs. sau de modul în care ați vândut lucrurile împreună. Dar va trebui să faceți câteva găuri pentru ca senzorii să se lipească. Am pus microfonul (este nevoie de un burghiu de 9 mm) și modulul sonar (este necesar un burghiu de 6 mm) în spate și LDR în partea din față a rezervorului, dar le puteți pune efectiv oricând, dacă aveți spațiu.
Asigurați-vă că tăiați o gaură în corpul modelului pentru a vă putea conecta arduino-ul cu cablul conectorului.
Aș recomanda să puneți difuzorul în turelă. deoarece ar trebui să rămână mult spațiu acolo.
Imaginea din stânga de mai sus este modul în care am montat arduino și imprimarea pe care am lipit-o în interiorul modelului Leopard 2. Imaginea din dreapta este una cu cea mai mare parte a cablajului montat.
Ce puteți face este să găuriți mici găuri în partea de jos a modelului pentru a fixa Arduino cu legături de cablu.
Dar dacă nu mă înșel, acum ar trebui să fi terminat.
Recomandat:
Cum să construiți robotul SMARS - Arduino Smart Robot Tank Bluetooth: 16 pași (cu imagini)
Cum să construiți robotul SMARS - Arduino Smart Robot Tank Bluetooth: Acest articol este sponsorizat cu mândrie de PCBWAY. Încercați-o pentru dvs. și obțineți 10 PCB-uri la doar 5 USD la PCBWAY cu o calitate foarte bună, mulțumesc PCBWAY. Ecranul motorului pentru Arduino Uno
Fish Tank LED Bonanza !: 8 pași
Fish Tank LED Bonanza !: CITITORUL RĂUIE! Acest pește mic a murit, RIP. Era bine hrănit și i se schimba apa de două ori pe săptămână. Din moment ce mulți oameni au întrebat prin comentariile pe care le fac după avertisment. LED-urile luminoase și un rezervor mic ar putea să-ți omoare peștii. (Vezi imaginea bel
ESP32-CAM FPV Arduino Wifi Control Tank cu controler WebApp_p1_introducere: 3 pași
ESP32-CAM FPV Arduino Wifi Control Tank Cu WebApp Controller_p1_introduction: Bună, sunt Tony Phạm. În prezent, sunt profesor vietnamez STEAM și, de asemenea, amator. Îmi pare rău dinainte despre engleza mea. Am scris înainte o instrucțiune pentru a crea un rezervor controlat Bluetooth Arduino, dar este în vietnameză. Link de referință: P1. ARDUINO B
Halo Scorpion Tank: 5 pași
Halo Scorpion Tank: Acest instructable a fost creat pentru a îndeplini cerințele proiectului Makecourse de la Universitatea din Florida de Sud (www.makecourse.com). Acesta este procesul meu pas cu pas pentru proiectarea și realizarea unui tanc Halo Scorpion complet funcțional. Link-ul
Cum să construiești un robot puternic din metal Rc Tank V2.0: 4 pași
Cum să construiești un bricolaj puternic Metal Rc Robot Tank V2.0: Un alt proiect de construire a unui robot pe șenile, dar de data aceasta mi-am făcut bine temele. Spre deosebire de robotul anterior, întregul corp este fabricat din aluminiu, deci acest robot cântărește cu aproximativ 2 kilograme mai puțin decât robotul anterior care cântărește peste 6 kilograme. Un alt imp