Përmbajtje:

MrK Blockvader: 6 hapa (me fotografi)
MrK Blockvader: 6 hapa (me fotografi)

Video: MrK Blockvader: 6 hapa (me fotografi)

Video: MrK Blockvader: 6 hapa (me fotografi)
Video: YEAR IN REVIEW | The WWF in 1996 (Full Year Documentary) 2024, Tetor
Anonim
Image
Image
Shtypje 3D
Shtypje 3D

Me kalimin e viteve, kam parë shumë projekte interesante të robotëve rover të printuar 3D dhe më pëlqen sesi teknologjia e printimit 3D ka ndihmuar komunitetin robotik të rrisë më shumëllojshmërinë në zgjedhjen e dizajnit dhe materialit. Dua të shtoj një kontribut të vogël në komunitetin robotik duke botuar MrK_Blockvader në Instructable for the Maker Community.

MrK_Blockvader është një robot i vogël argëtues me një zile të vogël, por mos lejoni që pamja bllokuese t'ju mashtrojë. Ai mund të jetë i pajisur me sensorin e ngjyrave, sensorin e distancës, një modul radio për të komunikuar me Blocky të tjerë me aftësi të ngjashme, me një bazë ose me një kontrollues.

MrK_Blockvader do të jetë pjesë e një rrjeti robotësh ku dikush mund të caktohet si komandant në një grup robotësh për të arkivuar të njëjtin objektiv.

Furnizimet

1 * Arduino Nano

Shoferi i motorit 1 * DC

Motori 2 * DC me kuti ingranazhi

Bateri 1 * 650 mAh Venom LiPo

2 * 1/24 rrota kamioni RC

2 * LED të bardhë

1 * Sensori i distancës

1 * Sensori i ngjyrave

1 * bordi i thyerjes nRF24

1 * bordi i radios nRF24

1 * Zile

1 * Kaloni

1* 26 Gusht Tela e zezë

1* 26 Gusht Tela blu

1* 22 Gusht Tela e zezë

1* 22 Gusht Teli i kuq

Hapi 1: Shtypja 3D

Unë përdor printerin CEL Robox 3D të printuar me material karboni për peshë të lehtë dhe qëndrueshmëri. Unë do të bashkëngjit skedarët STL më poshtë. Ju lutemi vendosni komentin nëse keni ndonjë pyetje në lidhje me procesin dhe cilësimin e printimit 3D.

Hapi 2: Përgatitni Arduino Nano

Përgatitni Arduino Nano
Përgatitni Arduino Nano
Përgatitni Arduino Nano
Përgatitni Arduino Nano
Përgatitni Arduino Nano
Përgatitni Arduino Nano
Përgatitni Arduino Nano
Përgatitni Arduino Nano

Kam mësuar se kryerja e punës përgatitore për të gjithë përbërësit elektrikë është çelësi për një projekt të pastër.

Ky projekt përfshin instalime elektrike në bordin e thyerjes nRF24, e kam bërë këtë në një projekt të veçantë të quajtur NRF24 Wireless LED Box, këtu mund të gjeni informacionin se si të lidhni bordin e shpërthimit nRF24 në një Arduino.

Shënim: Unë përdor tela më të trashë 22AWG për fuqizimin e telave Nano të hollë blu dhe të zi 26 AWG për të gjitha qëllimet e tjera të sinjalit. Më pëlqejnë këto tela me madhësi 26 AWG, ato janë fleksibël, por ende të forta ofrojnë më të mirën nga të dy botët.

Puna përgatitore e Arduino Nano:

  1. Ngjitni kokën e pinit të sinjalit në Arduino Nano.
  2. I lagur këto kunja me saldim do ta bëjë lidhjen shumë më të lehtë më vonë.
  3. Lidhni një grup teli blu në 5V për të furnizuar me energji të gjithë sensorët dhe LED.
  4. Ngjitni një grup teli të zi në GND për të siguruar terren për të gjithë sensorët dhe LED -të.

Puna përgatitore e bordit të shpërthimit NRF 24:

  1. Bashkoni 5 tela në tabelën e thyerjes nRF24 për sinjalet.
  2. Lidhni 2 tela në tabelën e thyerjes nRF24 për fuqinë.
  3. Kontrolloni lidhjen për t'u siguruar se si ta lidhni bordin e shpërthimit në një Arduino.
  4. Lidhni telat e sinjalit 5 nga nRF24 në Arduino Nana.

Puna përgatitore e zhurmës:

  1. Lidhni një tel të zi në njërën nga këmbët e ziles për tokë.
  2. lidhni një tel blu në këmbën tjetër të ziles për kontrollin e sinjalit.

Puna përgatitore e Photoresistor: (diagrami i disponueshëm)

  1. Lidhni një tel blu në njërën nga këmbët e fotorezistencës për 5V.
  2. Lidhni një rezistencë 10K në këmbën tjetër të fotorezistencës.
  3. Lidhni një tel blu midis rezistencës 10K dhe rezistencës së fotos për sinjalin.
  4. Lidhni një tel të zi në rezistencën 10K për tokë.

Puna përgatitore e LEDs:

  1. Lidhni një tel blu nga LED pozitiv në të djathtë në LED pozitiv të majtë.
  2. Bashkoni një tel të zi nga LED -i negativ i djathtë në LED -in negativ të majtë.
  3. Lidhni një tel blu në LED -in e djathtë pozitiv për kontrollin e sinjalit.
  4. Ngjitni një tel të zi në LED -in e djathtë negativ për tokëzim.

Hapi 3: Përgatitni motorin DC, drejtuesin e motorit DC dhe sensorët

Përgatitni motorin DC, drejtuesin e motorit DC dhe sensorët
Përgatitni motorin DC, drejtuesin e motorit DC dhe sensorët
Përgatitni motorin DC, drejtuesin e motorit DC dhe sensorët
Përgatitni motorin DC, drejtuesin e motorit DC dhe sensorët

MrK_Blockvador ka disa opsione sensori dhe sensorët shtesë nuk ndikojnë në funksionimin e përgjithshëm, megjithatë, sensori i ngjyrave nuk do të jetë në gjendje të instalohet pasi motori DC të jetë ngjitur në vend.

Puna përgatitore e motorit DC:

  1. Lidhni një tel të zi dhe të kuq në motorin DC.
  2. Mbështilleni fundin e motorit me shirit të hollë.
  3. Mbushni zonën me zam të nxehtë për të mbyllur lidhësit e motorit.

Puna përgatitore e drejtuesit të motorit DC:

  1. Ngjitni telat e sinjalit 6 në Shoferin e Motorit.
  2. Lidhni tela sinjali në kunjin e duhur në Arduino Nano.
  3. Instaloni telat 12V për të fuqizuar drejtuesin e motorit nga bateria. Sigurohuni që i keni telat aq gjatë sa t'i kaloni poshtë dhe jashtë pjesës së pasme të robotit.
  4. Instaloni telat 5V për të fuqizuar Arduino Nano nga drejtuesi i motorit.

Puna përgatitore e sensorit të ngjyrave (opsionale):

  1. Lidhni 2 telat për sinjalin.
  2. Lidhni tela 2 për energji.
  3. Bashkoni tela 1 për të kontrolluar LED super të ndritshëm.

Puna përgatitore e sensorit të distancës: (opsionale)

  1. Lidhni një tel blu për sinjalin.
  2. Lidhni një tel tjetër blu në portën pozitive për 3V pozitive.
  3. Lidhni një tel të zi për portën negative për tokë.

Hapi 4: Mblidhni

Image
Image
Mbledh
Mbledh

Pas gjithë punës përgatitore, tani është momenti kur gjërat bashkohen.

Shënim: Unë përdor zam të nxehtë për motorin DC dhe drejtuesin e motorit DC sepse zam i nxehtë mund të sigurojë thithje të vogël të goditjes dhe nëse keni nevojë ta hiqni atë, pak alkool fërkues do të marrë ngjitësin e nxehtë menjëherë.

Procesi i montimit:

  1. Ngjitni nxehtësisht sensorin e ngjyrave në shasi dhe kaloni tela e sensorit të ngjyrave përmes kanalit. (opsionale)
  2. Ngjitni motorët DC në shasi, sigurohuni që motori DC të jetë i barabartë me shasinë.
  3. Super ngjitës kokë Blocvader në shasinë e tij sigurohuni që të gjitha telat të kalojnë.
  4. Sensori i distancës me zam të nxehtë. (opsionale)
  5. LED me zam të nxehtë për sytë e Blockvador.
  6. Futni telat e motorit DC në drejtuesin e motorit DC deri në fund dhe vidhoseni fort.
  7. Drejtoni telat e energjisë 12V nga drejtuesi DC poshtë dhe jashtë pjesës së pasme të shasisë për çelësin e ndezjes/fikjes.
  8. Sigurohuni që të gjitha telat nga të gjithë sensorët të jenë të qartë para se të ngjitni shoferin e motorit DC.
  9. Ngarko kodin e provës dhe zgjidh problemin nëse ka.

Hapi 5: Kodi

Image
Image
Cfare tjeter?
Cfare tjeter?

Kodi bazë:

Roboti duke përdorur rezistencën e tij fotografike dhe zbulon nivelin e dritës së dhomës dhe reagon nëse ka një ndryshim të nivelit të dritës me kalimin e kohës

Zemra e kodit:

lak void () {lightLevel = analogRead (Foto_Pin); Serial.print ("Niveli i dritës:"); Serial.println (lightLevel); Serial.print ("Drita aktuale:"); Serial.println (Current_Light); if (lightLevel> = 200) {Chill_mode (); analogWrite (eyes_LED, 50); Serial.println ("Mënyra e ftohjes");} nëse (lightLevel <180) {Active_mode (); analogWrite (eyes_LED, 150); Serial println ("Mënyra aktive");}}

Roboti mund të kontrollohet duke përdorur një kontrollues dhe duke kaluar në modalitetin e pjesshëm autonom duke përdorur kontrolluesin.

Zemra e kodit:

void loop () {int debug = 0; lightLevel = analogRead (Foto_Pin); Dis = analogRead (Dis_Pin); // Kontrolloni nëse ka të dhëna për t'u marrë nëse (radio.disponueshme ()) {radio.read (& të dhënat, madhësia (Data_Package)); nëse (të dhënat. C_mode == 0) {Trim_Vlera = 10; Direct_drive ();} if (data. C_mode == 1) {Trim_Value = 0; Modaliteti autonome ();} nëse (të dhënat. 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;");} nëse (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 ");} Serial.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); vonesë (debug*10); } lastReceiveTime = milis (); // Në këtë moment ne kemi marrë të dhënat} // Kontrolloni nëse vazhdojmë të marrim të dhëna, apo kemi një lidhje mes dy moduleve CurrentTime = millis (); if (currentTime - lastReceiveTime> 1000) // Nëse koha aktuale është më shumë se 1 sekondë pasi kemi marrë të dhënat e fundit, {// kjo do të thotë se kemi humbur lidhjen resetData (); // Nëse lidhja humbet, rivendosni të dhënat. Ai parandalon sjelljen e padëshiruar, për shembull nëse një dron ka një mbytje dhe ne humbim lidhjen, ai mund të vazhdojë të fluturojë nëse nuk i rivendosim vlerat}}

Hapi 6: Çfarë tjetër?

Ky projekt është fillimi i një projekti më të madh, ku një rrjet i këtyre djemve të vegjël punon së bashku për të arkivuar një qëllim të përbashkët.

Sidoqoftë, këta robotë do të duhet të raportojnë statusin e tyre në një stacion komunikimi, atëherë ky stacion do të kombinojë të gjitha raportet nga të gjithë botët për të marrë më pas një vendim se cili do të jetë veprimi i ardhshëm i nevojshëm.

Për këtë arsye, faza tjetër e projektit do të ishte një kontrollues për të vepruar si një stacion komunikimi. Kjo do të ndihmojë në zhvillimin e mëtejshëm të projektit.

Kontrolluesi në vetvete është një robot, megjithatë, është më pasiv se Blockader. Prandaj kontrolluesi braktis artikullin e tij udhëzues, kështu që sintonizohuni për një projekt të ardhshëm; D

Recommended: