Përmbajtje:

Tank me shaka: 5 hapa
Tank me shaka: 5 hapa

Video: Tank me shaka: 5 hapa

Video: Tank me shaka: 5 hapa
Video: CHIPI CHIPI CHAPA CHAPA LUBI LUBI LABA LABA in 4K - By Kuowon 2024, Korrik
Anonim
Tank me shaka
Tank me shaka

Ky është një projekt që kam bërë në shkollën time HKU, që kërkonte që ne të bënim diçka me një Arduino Uno. Doja të bëja diçka që do të bënte gjënë time të preferuar, do t'i bënte njerëzit të qeshnin. Kështu që vendosët të bëni një kuti shakaje që do t'ju hidhte një shaka, por ajo shaka që ju dha do të varet nga ajo që po matnin disa module sensor në atë moment të caktuar në kohë. Për ta bërë atë më personale, vendosa ta bëj një tank.

Hapi 1: Marrja e pjesëve

Pjesët që do t'ju duheshin për të rikrijuar këtë projekt do të ishin

  • 1x kompjuter i aftë për të ekzekutuar Arduino IDE
  • 1x Arduino Uno
  • 1x kabllo lidhëse usb për Arduino Uno
  • 1x sensor Sonar
  • 1x altoparlant (preferohet me cilësi të mirë (, kam përdorur një që kam nxjerrë nga altoparlanti bluetooth)).
  • 1x modul amplifikator LM386 (është e mundur ta bëni këtë vetë, por unë kam përdorur një modul).
  • Mikrofon 1x LM393
  • 1x LDR
  • 1x LED (çdo ngjyrë do të bëjë, por unë kam përdorur blu).
  • Rezistencë 4x 1kΩ
  • Rezistencë 1x 2, 7kΩ
  • 1x Breadboard
  • 1x kartë mikro SD (mundësisht e vogël (1 ose 2 gb)).
  • 1x stërvitje me fuqi.
  • Kreu i stërvitjes 1x 16mm (preferohet të bëhet për shpimin e metaleve).
  • Koka e stërvitjes 1x 9mm (preferohet gjithashtu të bëhet për shpimin e metaleve).
  • Kreu i shpimit 1x 1 mm (përsëri preferohet të bëhet për shpimin e metaleve).
  • Rezervuar 1x model (kam përdorur një leopard të shkallës 1:35 2, por edhe raste të tjera duhet të jenë mirë).
  • Superglues / hotglue
  • dhe mjaft tela mundësisht në ngjyra të ndryshme.
  • lidhëse kabllo (opsionale).

Hapi 2: Instalimet elektrike

Instalime elektrike
Instalime elektrike

Ne duhet të fillojmë me instalime elektrike, imazhi është një vizatim teknik se si duhet të lidhen të gjitha. Kjo duhet të shërbejë si projekti juaj. Shënim: Të gjitha portet Arduino janë emëruar AP# për secilën port. Pra, porti i 4 -të në Arduino është AP4, porti A0 është APA0 dhe porti 6 ~ është AP6 ~, etj. Të gjitha portet e tjera janë emëruar siç shfaqen në vetë modulet.

Hapi 3: Gjërat Para Kodit

Tani, para se të fillojmë të përdorim kodin, na duhen disa gjëra. Unë ju rekomandoj që tani të ndiqni këtë udhëzues nga hapi 2 deri në 4

www.electronoobs.com/eng_arduino_tut8.php

Sidoqoftë, ne nuk do të përdorim kodin e tij siç do të përdorim tonën. Ju lutemi vini re se disa altoparlantë përdorin frekuenca të ndryshme. Altoparlanti im përdori skedarë audio 16-bit 32kHz. Pra, nëse folja juaj po bën një lloj zhurme, por nuk luan skedarët tuaj, atëherë provoni të luani me frekuencën tuaj.

Hapi 4: Kodi

Tani do të ngarkojmë kodin në arduino. Kopjoni të gjitha këto dhe kalojeni në Arduino IDE dhe ngarkojeni në Arduino -n tuaj.

// përfshin bibliotekën për lexuesin e kartave SD.#përfshijnë "Wtv020sd16p.h" // përfshin bibliotekën e nevojshme për sensorin sonar. #include // Vendos kunjat për Arduino. int resetPin = 4; int clockPin = 5; int dataPin = 6; int i zënëPin = 7; int soundDetectedPin = 12; int lightDetectedPin = A0; // Vendos kunjat për bibliotekën e kartave SD. Wtv020sd16p wtv020sd16p (resetPin, clockPin, dataPin, busyPin); // Vendos kunjat për bibliotekën e sensorit Sonar. Sonar NewPing (11, 10); // Vendos hyrjet e tjera dhe vendos shpejtësinë e bitit të programit. void setup () {wtv020sd16p.reset (); pinMode (lightDetectedPin, INPUT); pinMode (soundDetectedPin, INPUT); Serial.filloj (9600); } // Pjesa kryesore e programit. void loop () {// Vendos intergers int lightDetectedVal = analogRead (lightDetectedPin); int distanceVal = sonar.ping_cm (); int soundDetectedVal = digitalRead (soundDetectedPin); // Vonesa në mënyrë që projekti projekti të mos e mbajë pafundësisht përdorimin e altoparlantit. vonesë (30000); // Linjat serike të printimit dhe printimit në mënyrë që të shihni me lehtësi se cilat vlera merren nga modulet e sensorit. Serial.print ("Vlera e zërit:"); // Deklarata të shumëfishta nëse programi luan skedarë të ndryshëm audio në varësi të vlerave të matura nga modulet e sensorit. if (soundDetectedVal == 0) {Serial.println (soundDetectedVal); Serial.print ("Distanca:"); if (distanceVal == 0) {Serial.println (distanceVal); Serial.print ("Vlera e lehtë:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (1); // Një printim tjetër serik në mënyrë që të shihni se cili skedar audio i saktë është luajtur. Serial.println ("1 --------"); // Një vonesë tjetër për të lejuar që skedari audio të luajë me gjatësi të plotë. vonesa (5000); } tjetër if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (2); Serial.println ("2 --------"); vonesa (5000); } tjetër if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (3); Serial.println ("3 --------"); vonesa (5000); } tjetër if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (4); Serial.println ("4 --------"); vonesa (5000); } tjetër if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (5); Serial.println ("5 --------"); vonesa (5000); } tjetër if (lightDetectedVal> = 500 || lightDetectedVal 0 || distanceVal == NULL) {Serial.println (distanceVal); Serial.print ("Vlera e lehtë:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (7); Serial.println ("7 --------"); vonesa (5000); } tjetër if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (8); Serial.println ("8 --------"); vonesë (8000); } tjetër if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (9); Serial.println ("9 --------"); vonesa (5000); } tjetër if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (10); Serial.println ("10 -------"); vonesë (8000); } tjetër if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (11); Serial.println ("11 -------"); vonesë (6000); } tjetër if (lightDetectedVal> = 500 || lightDetectedVal <= 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (13); Serial.println ("13 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (14); Serial.println ("14 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (15); Serial.println ("15 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (16); Serial.println ("16 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (17); Serial.println ("17 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 500 || lightDetectedVal 0 || distanceVal == NULL || distanceVal> = 150) {Serial.println (distanceVal); Serial.print ("Vlera e lehtë:"); if (lightDetectedVal> = 1000) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (19); Serial.println ("19 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 900) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (20); Serial.println ("20 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 800) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (21); Serial.println ("21 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 700) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (22); Serial.println ("22 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 600) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (23); Serial.println ("23 -------"); vonesa (5000); } tjetër if (lightDetectedVal> = 500 || lightDetectedVal << 500) {Serial.println (lightDetectedVal); wtv020sd16p.playVoice (24); Serial.println ("24 -------"); vonesa (5000); }}}}

Hapi 5: Rasti

Rasti
Rasti
Rasti
Rasti

Tani vjen pjesa aktuale e komplikuar.

Përshtatja e gjithçkaje në kuti mund të jetë pak e ndërlikuar, kjo varet nga mënyra se si i keni përshtatur të gjitha në tryezën tuaj të bukës ose si i lidhni gjërat së bashku. Por ju do të keni nevojë të bëni nja dy vrima që sensorët të ngjiten në të. Unë vendos mikrofonin (nevojitet stërvitje 9 mm) dhe modulin e sonarit (nevojitet stërvitje 6 mm) në pjesën e pasme dhe LDR në pjesën e përparme të rezervuarit, por mund t'i vendosni me efektivitet kudo nëse keni hapësirë.

Sigurohuni që të prisni një vrimë në trupin e modelit për të qenë në gjendje të lidhni arduino -n tuaj me kabllon e lidhësit.

Unë do të rekomandoja vendosjen e altoparlantit në frëngji. pasi aty duhet të ketë mjaft hapësirë.

Imazhi i majtë më sipër është mënyra se si e vendosa arduinon dhe printimin që bashkova brenda modelit Leopard 2. Imazhi i djathtë është ai me shumicën e instalimeve elektrike të pajisura.

Ajo që mund të bëni është të shponi vrima të vogla në pjesën e poshtme të modelit për të siguruar Arduino me lidhje kabllore.

Por nëse nuk gaboj, tani duhet të keni mbaruar.

Recommended: