Përmbajtje:

OAREE - Shtypur 3D - Roboti që shmang pengesën për edukimin inxhinierik (OAREE) Me Arduino: 5 hapa (me fotografi)
OAREE - Shtypur 3D - Roboti që shmang pengesën për edukimin inxhinierik (OAREE) Me Arduino: 5 hapa (me fotografi)

Video: OAREE - Shtypur 3D - Roboti që shmang pengesën për edukimin inxhinierik (OAREE) Me Arduino: 5 hapa (me fotografi)

Video: OAREE - Shtypur 3D - Roboti që shmang pengesën për edukimin inxhinierik (OAREE) Me Arduino: 5 hapa (me fotografi)
Video: FIFA FOOTBALL GIBLETS KICKER 2024, Qershor
Anonim
Image
Image
OAREE - Shtypur 3D - Roboti që shmang pengesën për edukimin inxhinierik (OAREE) Me Arduino
OAREE - Shtypur 3D - Roboti që shmang pengesën për edukimin inxhinierik (OAREE) Me Arduino
OAREE - Shtypur 3D - Roboti që shmang pengesën për edukimin inxhinierik (OAREE) Me Arduino
OAREE - Shtypur 3D - Roboti që shmang pengesën për edukimin inxhinierik (OAREE) Me Arduino

OAREE (Pengesa Shmangia e Robotit për Arsimin Inxhinierik)

Dizajni: Qëllimi i këtij udhëzuesi ishte të dizajnonte një robot OAR (Pengesë që Shmang Robotin) që ishte i thjeshtë/kompakt, i printueshëm në 3D, i lehtë për tu montuar, përdor servo të vazhdueshëm rrotullimi për lëvizje dhe kishte sa më pak pjesë të blera. Unë besoj se kam pasur sukses në krijimin e këtij roboti të mrekullueshëm dhe e kam quajtur OAREE (Roboti që shmang pengesën për edukimin inxhinierik). Ky robot do të ndiejë pengesa, do të ndalet, do të shikojë majtas dhe djathtas, pastaj do të kthehet në drejtimin e papenguar dhe do të vazhdojë përpara.

Sfondi: Interneti ka pengesa të shumta duke shmangur robotët, por shumica janë të mëdha, të vështira për tu montuar dhe të shtrenjta. Shumë nga këta robotë kanë kodin Arduino të furnizuar, por ishte e vështirë të gjesh një shembull pune të menduar mirë. Doja gjithashtu të përdor servo të rrotullimit të vazhdueshëm për rrotat (në vend të motorëve DC), të cilat nuk ishin bërë ende. Kështu, unë u nisa në një mision për të zhvilluar një robot kompakt, krijues për të ndarë me botën.

Zhvillimi i mëtutjeshëm: Ky robot mund të zhvillohet më tej për saktësi më të mirë të pingingut, duke shtuar sensorë IR për aftësinë e ndjekjes së linjës, ekran LCD për të shfaqur distancën e pengesave dhe shumë më tepër.

Furnizimet

  • 1x Arduino Uno -
  • 1x V5 Sensor Shield -
  • Mbajtës 1x 4xAA i baterisë me ndezës/ndezës -
  • 1x SG90 Servo -
  • 2x shërbime të vazhdueshme të rrotullimit -
  • Kabllo energjie 1x 9V për Arduino (OPSIONALE) -
  • 1x Sensor tejzanor HC -SR04 -
  • 4x Tela Jumper Femra-Femra-https://www.amazon.com/RGBZONE-120pcs-Multicolored…
  • 2 x shirita gome
  • Bateri 1x 9V (OPSIONALE)
  • 4 bateri AA
  • 4x vida të vogla (4 x 1/2 ose diçka e ngjashme)
  • Phillips vidhosës
  • Ngjitës për fiksimin e shiritave të gomës në rrota

Hapi 1: Shtypja 3D: Trupi, Rrota, Rasta Mermeri, Bolt/arrë 6mm dhe Sensor tejzanor

Shtypje 3D: Trupi, Rrota, Rakë mermeri, Bolt/arrë 6 mm dhe Montues me sensor tejzanor
Shtypje 3D: Trupi, Rrota, Rakë mermeri, Bolt/arrë 6 mm dhe Montues me sensor tejzanor
Shtypje 3D: Trupi, Rrota, Rakë mermeri, Bolt/arrë 6 mm dhe Montues me sensor tejzanor
Shtypje 3D: Trupi, Rrota, Rakë mermeri, Bolt/arrë 6 mm dhe Montues me sensor tejzanor
Shtypje 3D: Trupi, Rrota, Rakë mermeri, Bolt/arrë 6 mm dhe Montues me sensor tejzanor
Shtypje 3D: Trupi, Rrota, Rakë mermeri, Bolt/arrë 6 mm dhe Montues me sensor tejzanor

Ka 5 pjesë për printimin 3D.

  1. Trupi
  2. Rrota
  3. Hedhës mermeri
  4. Rrufe/arrë 6 mm (opsionale, një arrë/rrufe metalike mund të zëvendësohet)
  5. Montimi i sensorit tejzanor

Të gjithë skedarët e kërkuar. STL përfshihen në këtë skedar udhëzues si dhe skedarët Sketchup. Rekomandohet mbushja 40%.

Hapi 2: Programoni Arduino

Image
Image
Mblidhni Robotin
Mblidhni Robotin

Dërgoni Kod Arduino UNO: Duke përdorur Arduino IDE, dërgoni kodin (në skedarin e bashkangjitur) në modulin tuaj Arduino. Ju do të duhet të shkarkoni dhe përfshini bibliotekat servo.h dhe newping.h me këtë skicë.

Kodi është komentuar plotësisht, kështu që ju mund të shihni se çfarë bën secila komandë. Ju mund ta ndryshoni me lehtësi distancën e Sensorit tejzanor në një vlerë më të madhe ose më të vogël nëse dëshironi. Ky është një kod fillestar dhe ka për qëllim të zgjerohet dhe përdoret për zhvillimin e mëtejshëm të projektit.

// SHKUQIMI I SHPALLJES I ROBOTIT // [email protected], [email protected], Universiteti i TN -së në Chattanooga, Inxhinieri Elektrike, FALL 2019 // Materialet e kërkuara: // 1) Arduiino UNO, 2) Servo Sensor Shield v5.0, 3) HCSR04 Sensor ultrasonik, 4) FS90 Servo (për Sensorin tejzanor) // 5 & 6) 2X SERVOS ROTIMI VAZHDUES për rrotat // 7) 16mm Mermer për strumbullarin e pasmë të kastorit, 8 & 9) 2 shirita gome për rrota // 10- 15) 1x (4xAA) Mbajtës i baterisë me çelës ndezje/fikje, 16 & 17) bateri 9V me lidhësin në energji Arduino UNO // 3D PRINT: // 18) Trupi ROBOT, 19 & 20) 2x Rrota, 21) Rasti mermeri, 22) Sensor tejzanor Montoni, dhe vidë 6mm (shihni skedarët e bashkangjitur) // ------------------------------------------ ------------------------------------------------------ ----------------------------------------- #përfshi // Përfshi Bibliotekën Servo #përfshi // Përfshi Bibliotekën e Newping // ----------------------------------------------- ------------------------------------------------------ ------------------------------------ #përcaktoni TRIGGER_PIN 1 2 // Nxitësi amerikan për pin 12 në Arduino #define ECHO_PIN 13 // US Echo në pin 13 në Arduino #define MAX_DISTANCE 250 // Distanca në ping (maksimumi është 250) int distanca = 100; // ---------------------------------------------------- ------------------------------------------------------ ------------------------------- Servo US_Servo; // Sensori tejzanor Servo Servo Left_Servo; // Servo Servo i Rrotës së Majtë Right_Servo; // Sonar Servo NewPing me rrota të djathtë (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // Konfigurimi i kunjave NewPing dhe distanca maksimale. // ---------------------------------------------------- ------------------------------------------------------ ------------------------ {pinMode (12, OUTPUT); // Trigger pin i vendosur si dalje pinMode (13, INPUT); // Echo pin i vendosur si hyrje US_Servo.attach (11); // US Servo i vendosur në pin 11 US_Servo.write (90); // SH SRBIMI US SHIKON PARA

Left_Servo.tash (9); // Servo e rrotës së majtë në kunjin 9

Left_Servo.shkruaj (90); // SERVO E MJETIT TE RROKS vendosur në STOP

Right_Servo.tash (10); // Servo e Rrotës së Djathtë të vendosur në pin 10

Right_Servo.write (90); // SERVO E RRETHIT TE RROKS vendosur në STOP vonesë (2000); // Prisni për 2 sekonda distancë = readPing (); // Merrni Ping Distance me vonesë të drejtpërdrejtë të pozicionit përpara (100); // Prisni për 100 ms moveForward (); // ROBOT L MOVIZET PWRPARA} // ------------------------------------------ ------------------------------------------------------ ------------------------------------- lak void () {int distanceRight = 0; // Filloni distancën amerikane në të djathtë në 0 int distanceLeft = 0; // Filloni distancën amerikane në të majtë në 0 //US_Servo.write(90); // Qendra amerikane servo // vonesë (50); // US_Servo.vrite (70); // Shikoni Pak Djathtas // vonesë (250); // US_Servo.vrite (110); // Shikoni pak majtas // vonesë (250); // US_Servo.vrite (90); // Shiko Qendrën

nëse (distanca <= 20) // Roboti LVVIZET PARA {moveStop (); // Roboti NDALON në distancë = distanceLeft) // Vendosni në cilin drejtim të ktheheni {turnRight (); // Ana e djathtë ka distancën më të madhe, ROBOT Kthehet DREJT për 0.3 vonesa (500); // Kjo vonesë përcakton gjatësinë e kthesës moveStop (); // Roboti STOPS} tjetër {turnLeft (); // Distanca më e madhe në anën e majtë, ROBOT Kthehet LAR for për 0,3 sekonda vonesë (500); // Kjo vonesë përcakton gjatësinë e kthesës moveStop (); // Roboti STOPS}} tjetër {moveForward (); // Roboti LVVIZ P FORRPARA} distancë = readPing (); // SHBA LEXON PING të Ri për drejtimin e ri të udhëtimit} // -------------------------------------- ------------------------------------------------------ -------------------------------------------- int lookRight () // Sensori tejzanor SHIKO FUNKSIONIN E DREJT {US_Servo.write (30); // Servo amerikane Lëviz të drejtën në vonesë në kënd (500); int distance = readPing (); // Vendosni vlerën e ping për vonesën e duhur (100); US_Servo.shkruaj (90); // Servo amerikane Lëviz në qendër distanca e kthimit; // Distanca është caktuar} // ---------------------------------------------- ------------------------------------------------------ ------------------------------------- int lookLeft () // Sensori tejzanor SHIKO FUNKSIONIN E LAR {US_Servo.shkruani (150); // Servo amerikane LVVIZET LART në vonesë në kënd (500); int distance = readPing (); // Vendosni vlerën e ping për vonesën e majtë (100); US_Servo.shkruaj (90); // Servo amerikane Lëviz në qendër distanca e kthimit; // Distanca është vendosur} // ---------------------------------------------- ------------------------------------------------------ ------------------------------------- int readPing () // Funksioni Lexo Ping për Sensorin tejzanor. {vonesë (100); // 100ms midis pingave (koha e pingut min = 0.29ms) int cm = sonar.ping_cm (); // Distanca PING mblidhet dhe vendoset në cm nëse (cm == 0) {cm = 250; } cm ktheje; } // -------------------------------------------------- ------------------------------------------------------ ---------------------------------- void moveStop () // STOP ROBOT {Left_Servo.vrite (90); // LeftServo 180 përpara, 0 mbrapa Right_Servo.vrite (90); // RightServo 0 përpara, 180 mbrapa} // ------------------------------------------ ------------------------------------------------------ -------------------------------------------- void moveForward () // ROBOT PARA {Left_Servo.shkruani (180); // LeftServo 180 përpara, 0 mbrapa Right_Servo.vrite (0); // RightServo 0 përpara, 180 mbrapa} // ------------------------------------------ ------------------------------------------------------ ---------------------------------------- void moveBackward () // ROBOT BACKWARD {Left_Servo.shkruani (0); // LeftServo 180 përpara, 0 mbrapa Right_Servo.vrite (180); // RightServo 0 përpara, 180 mbrapa} // ------------------------------------------ ------------------------------------------------------ -------------------------------------------- void turnRight () // ROBOT Djathtas {Left_Servo.shkruani (180); // LeftServo 180 përpara, 0 mbrapa Right_Servo.vrite (90); // RightServo 0 përpara, 180 mbrapa} // ------------------------------------------ ------------------------------------------------------ ---------------------------------------- void turnLeft () // ROBOT LEFT {Left_Servo.shkruani (90); // LeftServo 180 përpara, 0 mbrapa Right_Servo.vrite (0); // RightServo 0 përpara, 180 mbrapa} // ------------------------------------------ ------------------------------------------------------ --------------------------------------------

Hapi 3: Mblidhni Robotin

Image
Image
Mblidhni Robotin
Mblidhni Robotin
Mblidhni Robotin
Mblidhni Robotin

Tani është koha për të bashkuar robotin tuaj. Hapat janë renditur më poshtë.

1) Bashkoni Rrota Servo Disku dhe Shirita gome në rrota: Të gjitha servot vijnë me pajisje plastike për montim dhe vida. Gjeni disqet e rrumbullakët dhe vidhosini në dy vrimat në anën e sheshtë të rrotave. Shiritat e gomës përshtaten rreth timonit për të siguruar shtrëngim. Ju mund të dëshironi të shtoni pak zam për të mbajtur brezat e gomës në vend.

2) Shtojca e mermerit: Përdorni dy vida të vogla për të bashkuar tavën e mermerit në dy trekëndëshat në pjesën e pasme. Rripi i mermerit është një zëvendësim i thjeshtë për një rrotë të pasme dhe siguron një pikë rrotullimi të pasme.

3) Futni Servos në çarë (nuk ka nevojë për vida): Vendoseni FS90 Servo (për Sensorin tejzanor) në folenë e përparme të trupit. Dy servot e rrotullimit të vazhdueshëm rrëshqasin në slotet e majtë dhe të djathtë. Slotet janë krijuar për një përshtatje të ngushtë, në mënyrë që të mos kërkohen vida për të mbajtur servot në vend. Sigurohuni që telat servo të kalojnë nëpër brazdat në vrimat në mënyrë që ato të jenë të drejtuara kah pjesa e pasme e trupit.

4) Vendosja e baterisë 9V (OPSIONALE): Vendoseni baterinë 9V + lidhësin e energjisë Arduino prapa servo -s së përparme.

5) Asambleja e Montimit të Sensorit tejzanor: Përdorni dy vida të vogla për të bashkangjitur njërën prej bashkëveprimeve të servo plastike të bardhë të përfshirë në pjesën e poshtme të pllakës së montimit të Sensorit tejzanor. Tjetra, përdorni rrufe/arrë të printuar 3D me diametër 6 mm (ose zëvendësoni një rrufe/arrë metalike) për të bashkuar kutinë e sensorit tejzanor në pllakën e montimit. Së fundi, vendoseni sensorin në kasë me kunjat drejtuar lart dhe kapeni në pjesën e pasme të kasës.

6) Rasti i baterisë 4x AA: Vendoseni kutinë e baterisë AA në zonën e madhe drejtkëndore, me çelësin e ndezjes/fikjes të kthyer nga ana e pasme.

7) Mburoja e sensorit Arduino Uno + V5: Bashkojeni mburojën në Arduino dhe vendoseni mbi montuesit mbi kutinë e baterisë. Lidhësi i energjisë duhet të jetë i kthyer në të majtë.

Roboti juaj është ndërtuar! Çfarë ka mbetur? Programimi i Arduino dhe Lidhja e Telave të Jumper: Servos, Sensori tejzanor dhe Furnizimi me energji.

Hapi 4: Bashkoni telat e sensorit

Image
Image
Përfundoi !!! Lidhni Furnizimin me energji 9V Arduino, aktivizoni baterinë dhe filloni të shmangni pengesat me OAREE
Përfundoi !!! Lidhni Furnizimin me energji 9V Arduino, aktivizoni baterinë dhe filloni të shmangni pengesat me OAREE

Lidhni telat Servo me V5 Shield:

  1. Servo e Rrotullimit të Vazhdueshëm të Majtas i bashkëngjitet PIN 9
  2. Servo e Rrotullimit të Vazhdueshëm Djathtas i bashkëngjitet PIN 10
  3. Front FS90 Servo i bashkëngjitet PIN 11

Lidhni kunjat e sensorit tejzanor (nëpërmjet 4x Female te Female Jumper Wires) në V5 Shield:

  1. Shkaktoni në PIN 12
  2. Jehona në kodin PIN 13
  3. VCC në cilindo nga kunjat e shënuar me 'V'
  4. Grihet në cilindo nga kunjat e shënuar me 'G'

Lidhni kutinë e baterisë AA me Mburojën V5:

  1. Bashkangjit tela pozitivë të kuq në lidhësin VCC
  2. Bashkangjit tela negative, e zezë në lidhjen e Tokës

Hapi 5: Përfundoi !!! Lidhni Furnizimin me energji 9V Arduino, aktivizoni baterinë dhe filloni të shmangni pengesat me OAREE

Image
Image
Përfundoi !!! Lidhni Furnizimin me energji 9V Arduino, aktivizoni baterinë dhe filloni të shmangni pengesat me OAREE
Përfundoi !!! Lidhni Furnizimin me energji 9V Arduino, aktivizoni baterinë dhe filloni të shmangni pengesat me OAREE

Përfundoi !!

1) Lidhni furnizimin me energji 9V Arduino (Opsionale)

2) Ndizni baterinë

3) Filloni të Shmangni Pengesat me OAREE !!!

Jam i sigurt që do të të pëlqejë shoku yt i ri, OAREE, pasi ta shikosh të ndiejë një pengesë, të mbështetesh dhe të ndryshosh drejtim. OAREE funksionon më së miri me objekte të mëdha nga të cilat Sensori tejzanor mund t'i kapë (si muret). E ka të vështirë të godasë objekte të vogla si këmbët e karriges për shkak të sipërfaqes dhe qosheve të tyre të vogla. Ju lutemi ndani, zhvilloni më tej dhe më tregoni për çdo rregullim ose gabim të nevojshëm. Kjo ka qenë një përvojë e madhe mësimore dhe shpresoj që ju të argëtoheni duke e bërë këtë projekt si unë!

Konkursi i robotikës
Konkursi i robotikës
Konkursi i robotikës
Konkursi i robotikës

Nënkampion në Konkursin e Robotikës

Recommended: