Sadržaj:

MrK Blockvader: 6 koraka (sa slikama)
MrK Blockvader: 6 koraka (sa slikama)

Video: MrK Blockvader: 6 koraka (sa slikama)

Video: MrK Blockvader: 6 koraka (sa slikama)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Novembar
Anonim
Image
Image
3D štampanje
3D štampanje

Tijekom godina vidio sam mnogo zanimljivih projekata robotskih 3D štampanih rovera i sviđa mi se kako je tehnologija 3D ispisa pomogla robotskoj zajednici da poveća raznolikost u dizajnu i odabiru materijala. Želim dodati mali doprinos robotskoj zajednici objavljivanjem MrK_Blockvader na Instructable za zajednicu izrađivača.

MrK_Blockvader je zabavan mali robot sa sićušnim zujalicom, ali ne dozvolite da vas blokirani izgled zavara. Mogao je biti opremljen senzorom boje, senzorom udaljenosti, radio modulom za komunikaciju sa drugim Blocky -ima sa istim mogućnostima, sa bazom ili sa kontrolerom.

MrK_Blockvader će biti dio robotske mreže u kojoj se može dodijeliti kao zapovjednik grupi robota za arhiviranje istog cilja.

Supplies

1 * Arduino Nano

1 * Upravljački program istosmjernog motora

2 * DC motor sa menjačem

1 * 650 mAh Venom LiPo baterija

2 * 1/24 RC kotači za kamione

2 * bijele LED diode

1 * Senzor udaljenosti

1 * Senzor boje

1 * ploča za razbijanje nRF24

1 * radio ploča nRF24

1 * zujalica

1 * Prekidač

1* 26 AUG Crna žica

1* 26 AUG Plava žica

1* 22 AUG Crna žica

1* 22 AUG Crvena žica

Korak 1: 3D štampanje

Koristim CEL Robox 3D štampač štampan ugljeničnim materijalom radi lakše i izdržljivosti. U nastavku ću priložiti STL datoteke. Molimo vas da ostavite komentar ako imate bilo kakvih pitanja u vezi s procesom 3D štampanja i postavkama.

Korak 2: Pripremite Arduino Nano

Pripremite Arduino Nano
Pripremite Arduino Nano
Pripremite Arduino Nano
Pripremite Arduino Nano
Pripremite Arduino Nano
Pripremite Arduino Nano
Pripremite Arduino Nano
Pripremite Arduino Nano

Naučio sam da su pripremni radovi na svim električnim komponentama ključni za čisti projekt.

Ovaj projekt uključuje ožičenje nRF24 ploče za razbijanje, to sam učinio u zasebnom projektu pod nazivom NRF24 Wireless LED Box, ovdje možete pronaći informacije o tome kako spojiti nRF24 probojnu ploču na Arduino.

Napomena: Za napajanje Nano -a koristim deblju žicu 22AWG i tanke plave i crne žice od 26 AWG za sve ostale svrhe signala. Obožavam ovih žica veličine 26 AWG, fleksibilne su, ali ipak jake i pružaju najbolje iz oba svijeta.

Pripremni radovi za Arduino Nano:

  1. Lemite zaglavlje signalnog pina na Arduino Nano.
  2. Navlaženje ovih igala lemljenjem kasnije će znatno olakšati lemljenje.
  3. Lemite grupu plave žice na 5V za napajanje svih senzora i LED dioda.
  4. Lemite grupu crne žice na GND kako biste osigurali uzemljenje svih senzora i LED dioda.

Pripremni radovi na ploči NRF 24:

  1. Lemite 5 žica na nRF24 ploču za razbijanje signala.
  2. Lemite 2 žice na ploču za razbijanje nRF24 za napajanje.
  3. Provjerite vezu kako biste bili sigurni kako spojiti ploču za razbijanje na Arduino.
  4. Lemite signalne žice 5 sa nRF24 na Arduino Nana.

Priprema zujalice:

  1. Lemite crnu žicu na jednu od nogu zujalice za uzemljenje.
  2. lemite plavu žicu na drugu nogu zujalice radi kontrole signala.

Pripremanje fotootpornika: (dostupan dijagram)

  1. Lemite plavu žicu na jednu nogu fotootpornika za 5V.
  2. Lemite 10K otpornik na drugu nogu fotootpornika.
  3. Lemite plavu žicu između 10K otpornika i fotootpornika za signal.
  4. Lemiti crnu žicu na 10K otpornik za masu.

Priprema LED dioda:

  1. Lemite plavu žicu od pozitivne desne LED do pozitivne lijeve LED diode.
  2. Lemiti crnu žicu od negativne desne LED do negativne leve LED.
  3. Lemite plavu žicu na pozitivnu desnu LED diodu za kontrolu signala.
  4. Lemite crnu žicu na negativnu desnu LED diodu za masu.

Korak 3: Pripremite istosmjerni motor, pogon istosmjernog motora i senzore

Pripremite istosmjerni motor, upravljački program istosmjernog motora i senzore
Pripremite istosmjerni motor, upravljački program istosmjernog motora i senzore
Pripremite istosmjerni motor, upravljački program istosmjernog motora i senzore
Pripremite istosmjerni motor, upravljački program istosmjernog motora i senzore

MrK_Blockvador ima nekoliko opcija senzora, a dodatni senzori ne utječu na ukupnu operativnost, međutim, senzor u boji neće se moći instalirati nakon što se istosmjerni motor zalijepi na mjesto.

Priprema istosmjernog motora:

  1. Lemiti crnu i crvenu žicu na DC motor.
  2. Zamotajte kraj motora ljepljivom trakom.
  3. Napunite područje vrućim ljepilom za brtvljenje konektora motora.

Pripremni radovi za pogon istosmjernog motora:

  1. Lemite 6 signalnih žica na upravljačkom programu motora.
  2. Lemite signalnu žicu na odgovarajući pin na Arduino Nano.
  3. Ugradite 12V žice za napajanje upravljačkog programa motora iz baterije. Provjerite imate li žice dovoljno dugačke da ih spustite ispod i van stražnje strane robota.
  4. Instalirajte žice od 5 V za napajanje Arduino Nano iz upravljačkog programa motora.

Priprema senzora boje (opcionalno):

  1. Lemite 2 žice za signal.
  2. Lemite 2 žice za napajanje.
  3. Lemite 1 žicu za kontrolu super svijetle LED diode.

Priprema senzora udaljenosti: (opcionalno)

  1. Lemite plavu žicu za signal.
  2. Lemite još jednu plavu žicu na pozitivnom priključku za pozitivni 3V.
  3. Lemite crnu žicu za negativni priključak za masu.

Korak 4: Sastavite

Image
Image
Sastavite
Sastavite

Nakon svih pripremnih radova, sada je trenutak kada se stvari slažu.

Napomena: Koristim vruće ljepilo za istosmjerni motor i pogon istosmjernog motora jer vruće ljepilo može osigurati manju apsorpciju udara i ako ga trebate ukloniti, malo alkohola će odmah ukloniti vruće ljepilo.

Postupak montaže:

  1. Vruće zalijepite senzor boje na kućište i provucite žicu osjetnika boje kroz kanal. (opcionalno)
  2. Vruće zalijepite istosmjerne motore na šasiju, pazite da istosmjerni motor leži u ravni sa šasijom.
  3. Super ljepilo Blocvader glave na kućištu osigurava da sve žice prođu.
  4. Senzor udaljenosti vrućeg ljepila. (opcionalno)
  5. LED diode za vruće ljepilo za Blockvador oči.
  6. Do kraja umetnite žice istosmjernog motora u pogon istosmjernog motora i čvrsto ga zavrnite.
  7. Provedite žice za napajanje od 12 V od istosmjernog upravljačkog programa dolje i van stražnje strane kućišta za prekidač za uključivanje/isključivanje.
  8. Uvjerite se da su sve žice sa svih senzora čiste prije lijepljenja pogona istosmjernog motora.
  9. Otpremite testni kod i riješite probleme ako ih ima.

Korak 5: Kodirajte

Image
Image
Šta dalje?
Šta dalje?

Osnovni kod:

Robot pomoću fotootpornika detektuje nivo svjetlosti u prostoriji i reagira ako dođe do promjene nivoa svjetlosti tokom vremena

Srce koda:

void loop () {lightLevel = analogRead (Photo_Pin); Serial.print ("Nivo svjetlosti:"); Serial.println (lightLevel); Serial.print ("Trenutno svjetlo:"); Serial.println (Current_Light); if (lightLevel> = 200) {Chill_mode (); analogWrite (eyes_LED, 50); Serial.println ("Chill mode");} if (lightLevel <180) {Active_mode (); analogWrite (eyes_LED, 150); Serial. println ("Aktivni način rada");}}

Robotom se može upravljati pomoću kontrolera i prebacivanjem u djelomično autonomni način rada pomoću kontrolera.

Srce koda:

void loop () {int debug = 0; lightLevel = analogRead (Photo_Pin); Dis = analogRead (Dis_Pin); // Provjeravamo postoje li podaci za prijem if (radio.available ()) {radio.read (& data, sizeof (Data_Package)); if (data. C_mode == 0) {Trim_Value = 10; Direct_drive ();} if (data. C_mode == 1) {Trim_Value = 0; Autonomous_mode ();} if (data. C_mode == 2) {Trim_Value = 0; Chill_mode ();} if (debug> = 1) {if (data. R_SJoy_State == 0) {Serial.print ("R_SJoy_State = HIGH;");} if (data. R_SJoy_State == 1) {Serial.print ("R_SJoy_State = LOW;");} if (data. S_Switch_State == 0) {Serial.print ("S_Switch_State = HIGH;");} if (data. S_Switch_State == 1) {Serial.print ("S_Switch_State = LOW; ");} if (data. M_Switch_State == 0) {Serial.println (" M_Switch_State = HIGH ");} if (data. M_Switch_State == 1) {Serial.println (" M_Switch_State = LOW ");} Serijski.print ("\ n"); Serial.print ("Rover Mode:"); Serial.println (data. C_mode); Serial.print ("L_XJoy_Value ="); Serial.print (data. L_XJoy_Value); Serial.print ("; L_YJoy_Value ="); Serial.print (data. L_YJoy_Value); Serial.print ("; R_YJoy_Value ="); Serial.print (data. R_YJoy_Value); Serial.print ("; Throtle_Value ="); Serial.println (data. Throtle_Value); kašnjenje (otklanjanje grešaka*10); } lastReceiveTime = millis (); // U ovom trenutku smo primili podatke} // Provjeravamo primamo li podatke ili imamo vezu između dva modula currentTime = millis (); if (currentTime - lastReceiveTime> 1000) // Ako je trenutno vrijeme više od 1 sekunde otkako smo primili posljednje podatke, {// to znači da smo izgubili vezu resetData (); // Ako se veza prekine, resetirajte podatke. Sprječava neželjeno ponašanje, na primjer ako bespilotna letjelica podigne gas i izgubimo vezu, može nastaviti letjeti ako ne vratimo vrijednosti}}

Korak 6: Šta je sljedeće?

Ovaj projekt je početak većeg projekta, gdje mreža ovih dječaka zajedno radi na arhiviranju zajedničkog cilja.

Međutim, ti roboti bi morali prijaviti svoj status komunikacijskoj stanici, a zatim bi ta stanica kombinirala sve izvještaje sa svih botova kako bi zatim donijela odluku o sljedećoj neophodnoj radnji.

Iz tog razloga, sljedeća faza projekta bila bi kontroler koji bi djelovao kao komunikacijska stanica. To će pomoći daljnjem razvoju projekta.

Sam kontroler je robot, međutim, pasivniji je od Blokada. Stoga kontrolor napušta vlastiti članak koji se može uputiti, pa se prilagodite budućem projektu; D

Preporučuje se: