Sisukord:

Arduino juhitav servorobot (SERB): 7 sammu (piltidega)
Arduino juhitav servorobot (SERB): 7 sammu (piltidega)

Video: Arduino juhitav servorobot (SERB): 7 sammu (piltidega)

Video: Arduino juhitav servorobot (SERB): 7 sammu (piltidega)
Video: Single servo robot 2024, Juuli
Anonim
Arduino juhitav servorobot (SERB)
Arduino juhitav servorobot (SERB)
Arduino juhitav servorobot (SERB)
Arduino juhitav servorobot (SERB)
Arduino juhitav servorobot (SERB)
Arduino juhitav servorobot (SERB)
Arduino juhitav servorobot (SERB)
Arduino juhitav servorobot (SERB)

Mis oleks parem viis alustada avatud lähtekoodiga mikrokontrolleritega (Arduino) katsetamist, ehitades siis oma avatud lähtekoodiga roboti (CC (SA -BY))? Mida teha oma SERB -iga?

  • (siin) - kuidas ühendada oma SERB Internetiga ja juhtida seda Skype'i videokõne kaudu.
  • (siin) - SERB -i juhtimine Wii nunchucki kiirendusmõõturite abil
  • (siin) - kuidas lisada oma robotile takistusi tuvastavaid vurrusid
  • (siin) - Kuidas teha 30 komplekti (avatud tootmine)

Funktsioonid:

  • Täielikult programmeeritav, kasutades Arduino Duemilanove mikrokontrollerit (või mõnda muud teie valitud mikrokontrollerit).
  • Jootma pole vaja.
  • Akrüülitükkide lõikamisvõimaluste valik. (kerimissaag, juurdepääs laserlõikurile, eelnevalt lõigatud tükkide ostmine)
  • Lihtsalt laiendatav ja muudetav lisapoltide aukude ja kaasasoleva leivalauaga.
  • Kahe kuullaagriga tagaratas.
  • Käivitub 1-2 tunni pärast. (komplektist)
  • Avatud lähtekoodiga disain (ehitage nii palju kui soovite)

(Häbematu pistik) Ühendkuningriigis ja nagu Arduino värk? vaadake meie äsja avatud veebipoodi oomlout.co.uk Kiire video valminud Arduino juhitavast servorobotist - (SERB), mis käitab kaasasolevat testprogrammi (6. samm) Märkus. Lähtefailid on saadaval paralleelselt Instructable (Source Files For) - Kuidas teha Arduino juhitavat servorobotit - (SERB)

Samm: osad ja tööriistad

Osad ja tööriistad
Osad ja tööriistad

Kõik poldid leiate kohalikust Home Depotist. Teised osad leiate Internetist (olen lisanud igaühele lingi oma lemmikallikale). Osade loend: Kõiki riistvaraüksusi sisaldava kimbu saab osta oomlout.com poest (siin) (120 dollarit) Mutrid ja poldid:

  • 3mm x 15mm polt (x20)
  • 3 mm x 10 mm polt (x12)
  • 3 mm mutter (x34)
  • 3 mm seib (x12)
  • 8mm x 25mm polt (x2)
  • 8 mm mutter (x2)
  • Rulalaagrid (x2) (VXB) (need on standardsed rulalaagrid, nii et neid saab päästa paarist rull-terast või rulast)

Rehvid

  • Suur O-rõngas (4,5 "ID 3/16" helmeste kriips #349) (x2) (McMaster-Carri toode #9452K407)
  • Väike O-rõngas (3/4 "ID 3/16" helmeste kriips #314) (x1) (McMaster-Carri toode #9452K387)

Elektroonika

  • Arduino Duemilanove (x1) (Maker Shed)
  • Pideva pöörlemise servo (x2) (Parallax)
  • 400 kontaktleiba (x1) (kogu elektroonika))
  • Nelja AA patareikarp (x1) (kogu elektroonika)
  • 9V akuklamber (x1) (kogu elektroonika)
  • 2,1 mm pistik (x1) (kogu elektroonika)
  • 3 -kontaktiline päis (x2) (kogu elektroonika)
  • A -B USB -kaabel - printeristiil (x1) (kogu elektroonika) (ei kuulu komplekti)

Patareid:

  • AA patarei (x4) (ei kuulu komplekti)
  • 9v aku (x1) (ei kuulu komplekti)

Traat: (kogu traat on 22 AWG tahke, ostan oma McMaster-Carri kaudu)

  • 15 cm lilla (x2)
  • 15 cm must (x1)
  • 5 cm must (x2)
  • 5 cm punane (x2)

Tööriistad

  • Kruvikeeraja (x1) (Philips)
  • Nõelatangid (x1)

2. samm: tükkide lõikamine

Tükkide lõikamine
Tükkide lõikamine
Tükkide lõikamine
Tükkide lõikamine
Tükkide lõikamine
Tükkide lõikamine
Tükkide lõikamine
Tükkide lõikamine

Palun valige valitud lõikamisvaliku põhjal, milliseid samme järgida. Valik 1 (Lõigatud osade ostmine)

Ostke eelnevalt lõigatud šassii oomlout.com poest (siit) (60 dollarit, sealhulgas kohaletoimetamine USA-sse ja Kanadasse)

Valik 2 (digitaalne tootmine (st Ponoko) / juurdepääs laserlõikurile)

  • Laadige alla laserlõikuri paigutus ("03 SERB Ponoko Cutting Layout P2.eps" või "03- (SERB) -Ponoko Cutting Layout (P2). Cdr")
  • Lõika failid Ponoko abil või oma laserlõikuriga (kasutades 3 mm,.118 "akrüüli (mõnikord müüakse kui.125"))

Valik 3 (kerimissaag ja puur)

  • Laadige alla ja printige PDF-muster (valige oma paberisuurusele vastav fail) 03- (SERB) -ScrollSaw Muster (täht).pdf 03- (SERB) -ScrollSaw Muster (A4).pdf (oluline on mitte skaleerida joonistamine printimise ajal)
  • Mõõtke väljatrükil olevat joonlauda usaldusväärse joonlaua suhtes, kui need ei vasta mustrile, on skaleeritud ja peate enne kordustrükkimist oma printeri seadeid vaatama. Kui need sobivad, siis edasi.
  • Liimige muster akrüüllehele (3 mm,.118 "(mõnikord müüakse kui.125")).
  • Puurige augud.
  • Lõika tükid kerimissae abil

3. samm: kokkupanek

Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek
Kokkupanek

Õnnitleme teid nii kaugele jõudmise eest, et 90% protsessist on lõpule jõudnud, laadige selle sammu jaoks alla koostamisjuhised (04- (SERB) -Assemble Guide.pdf) ja pärast väikest lego/mechano stiilis kokkupanekut olete valmis juhtmeks. Et teid siin teel lõbustada, on minu koosoleku ajavahemik:

4. samm: juhtmestik

Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik

Kui kõik suured tükid on koos, on aeg lisada väikesed elektrilised sooned, mis võimaldavad meie robotit juhtida. Selleks laadige alla ja printige ühendusskeem (05- (SERB) -juhtmestiku skeem.pdf). Esmapilgul võib see tunduda üsna heidutav, kuid kui teete iga ühenduse järjest ja võtate aega, tuleb see kokku märkimisväärselt kiiresti. Juhtmestik on üsna lihtne ja teie ahelale ei saa kahjustada enne, kui lisate patareisid. Nii et ühendage kõik juhtmed veelkord üle, seejärel lisage toide.

Samm: testimine ja tõrkeotsing

Testimine ja tõrkeotsing
Testimine ja tõrkeotsing

Kui tellisite komplekti, on teie Arduino testprogramm eellaaditud. Lihtsalt pange sisse 4 AA patareid ja ühendage 9v aku Arduinoga. Ja kui kõik on õigesti tehtud, hakkab teie robot liikuma (see pöörleb juhuslikus suunas 0,1–1 sekundiks, enne kui edasi juhuslikult 1–2 sekundit, seejärel pausi 2 sekundit enne uuesti alustamist). Kui te pole komplekti ostnud, on vaja täiendavat sammu. Laadige alla lisatud zip-fail (07- (SERB)-SERB-Test Arduino Program.zip). Seejärel pakkige see lahti oma Arduino visandikataloogist (vaikimisi "minu dokumendid / Arduino \") ja laadige see oma arduino -tahvlile. (kui olete Arduino uus kasutaja, hüpake üks samm edasi, kus on lingid suurepäraste alustamisõpetuste jaoks) Tavalised probleemid: Minu SERB liigub aeglaselt, kui see tuleks peatada. Selle põhjuseks on asjaolu, et teie servosid ei ole õigesti kalibreeritud. Servode kalibreerimiseks oodake, kuni programm on peatunud, seejärel keerake väikese kruvikeerajaga potentsiomeetrit servo sees (servakorvi väike ava, mis asub juhtmete kohal)). Pöörake seda vasakule või paremale, kuni servo on tõeliselt seiskunud. Asjad ei tööta päris korralikult. Saatke meile oma sümptomitega e-kiri ja me proovime teid aidata, kuni ootate vastust, kontrollige uuesti kõik oma juhtmed vastavalt 4. sammu ühendusskeemile. Kui teil tekib probleeme, lisage palun kommentaar sellele Instructable'ile või saatke e-kiri aadressile [email protected] ja me anname endast parima, et aidata teil oma SERB-i tööle saada

6. samm: programmeerimine

Programmeerimine
Programmeerimine

Füüsiline robot on lõpetanud oma aja andmise. Enne kui asume Arduino juhitava servoroboti - (SERB) programmeerimise üksikasjadesse - mõned lingid mõnele suurepärasele Arduino programmeerimisressursile Internetis. mis aitavad teil alustada Arduinosega, alates programmeerimiskeskkonna allalaadimisest kuni esimese programmi kirjutamiseni. Arduino programmeerimisviide - täielik lihtne viide Arduino programmeerimiskeelele. Kuidas servod töötavad - Servo -mootorite tööpõhimõte. Arduino servoteek - Kuidas Arduino Servo raamatukogu töötab (kuidas me oma servosid kontrollime). Olgu, kui teelt välja õppimine võimaldab programmeerimist. Arduino juhitava servoroboti programmeerimiseks on kolm võimalust - (SERB). Valik 1: (SERB_Test.pde muutmine) Mõnikord on programmeerimisel kõige lihtsam teha tööprogramm ja hakata sellele oma koodi lisama. Selleks laadige alla programm SERB_Test zipped (07- (SERB)-SERB-Test Arduino Program.zip). Jätkake selle lahtipakkimist oma Arduino visandikaustas (vaikimisi "Minu dokumendid / Arduino \"). Lõpuks avage Arduino programmeerimiskeskkond ja laadige see oma Arduino alla. Kood on hästi kommenteeritud. (Või kopeerige ja kleepige kood selle sammu lisast uude Arduino visandisse) Valik 2: (SERB-i rutiinide lisamine oma programmi) Lisage oma olemasolevale programmile mõned lihtsad rutiinid (nt goForward (), setSpeed (int) jne). Selleks laadige alla tekstifaili rutiinid (07- (SERB)- Simple Routines Text.txt). 1. Kopeerige ja kleepige preambuli osa oma programmi algusesse.2. Kopeerige ja kleepige rutiinne osa oma programmi põhiosasse. Lisa kõne serbSetup (); seadistamisrutiinile. 3. valik: (oma programmi loomine nullist) See pole liiga keeruline. Kõik, mida vajate, on tutvuda Arduino Servo raamatukoguga. Seejärel ühendatakse parempoolne servo tihvtiga 9 ja vasakpoolne tihvtiga 10. märkus: siia lisatakse täiendavaid programme nende väljatöötamisel; või kui arendate midagi ja soovite, et see esile tuleks, saatke mulle privaatsõnum ja selle saab lisada. Lisa: (SERB_Test.pde kood)

/ * * Arduino juhitav servorobot (SERB) - testiprogramm * Lisateabe saamiseks külastage: https://www.oomlout.com/serb * * Käitumine: lihtne testprogramm, mis paneb SERB * juhuslikult vasakule või paremale pöörama * juhusliku ajavahemiku jooksul 0,1 kuni 1 sekund. * SERB sõidab seejärel juhusliku * ajavahemiku jooksul 1 kuni 2 sekundit. Lõpuks * paus 2 sekundiks enne uuesti alustamist. * * Juhtmestik: parem servosignaal - tihvt 9 * vasakpoolne servosignaal - tihvt 10 * * Litsents: See teos on litsentsitud Creative Commons * Attribution -Share Alike 3.0 Unported License alusel. Selle litsentsi koopia vaatamiseks külastage aadressi * https://creativecommons.org/licenses/by-sa/3.0/ * või saatke kiri aadressile Creative Commons, 171 Second * Street, Suite 300, San Francisco, California 94105, * USA. * */// --------------------------------------------- ----------------------------- // ARDUINO KONTROLLITAVA SERVO ROBOTI (SERB) PRAMBLEERI START #sisaldab #define LEFTSERVOPIN 10 #define RIGHTSERVOPIN 9Servo vasakServo; Servo paremalServo; int kiirus = 100; // määrab roboti kiiruse (mõlemad servod) // protsent vahemikus 0 kuni 100 // ARDUINO JUHTITAVA SERVO ROBOTI (SERB) PRAMBLEHT LÕPP // ---------------- -------------------------------------------------- --------/ * * seab tihvtid vastavatesse olekutesse ja kinnitab servod. Seejärel peatab * 1 sekundi enne programmi käivitamist */ void setup () {serbSetup (); // määrab kõigi vajalike // tihvtide oleku ja lisab teie visandile servod randomSeed (analogRead (0)); // määrab juhusliku arvu seemne // millegi kergelt juhusliku viivitusega (1000);}/ * * pöörab robotit vasakule või paremale (juhuslikult) ajavahemikuks * 0,1 kuni 1 sekund. Enne juhuslikku ajavahemikku * 1 kuni 4 sekundit edasi liikumist. Enne kaheks sekundiks pausi ja seejärel * uuesti käivitamist. */Void loop () {turnRandom (100, 1000); // pöörab juhuslikult vasakule või paremale // juhusliku ajavahemiku vahemikus.1 sekund // kuni üks sekund goForwardRandom (1000, 2000); // Liigub edasi juhusliku ajavahemiku jooksul // vahemikus 1 kuni 2 sekundit goStop (); // Peatab roboti viivituse (2000); // paus 2 sekundiks (peatatud ajal)}/ * * pöörab roboti juhuslikult vasakule või paremale juhusliku ajavahemiku * minTime (millisekundite) ja maxTime (millisekundite) vahel */void turnRandom (int minTime, int maxTime) {int valik = juhuslik (2); // juhuslik arv otsustamiseks // vasakpoolse (1) ja parema (0) vahel int turnTime = juhuslik (minTime, maxTime); // Pausi juhuslik number // aeg, kui (valik == 1) {goLeft ();} // Kui juhuslik arv = 1, siis pööra // vasakule muidu {goRight ();} // Kui juhuslik arv = 0, siis turn // paremale viivitus (turnTime); // viivitus juhuslikule ajale}/ * * liigub edasi juhuslikuks ajavahemikuks minTime (millisekundid) * ja maxTime (millisekundid) */void goForwardRandom (int minTime, int maxTime) {int forwardTime = juhuslik (minTime, maxTime); // määrata juhuslik aeg edasi liikumiseks goForward (); // määrab SERB edasiviimise viivituse (forwardTime); // viivitused juhusliku ajavahemiku jooksul} // ---------------------------------------- ------------------------------ // // ARDUINO KONTROLLITAVA SERVO ROBOTI (SERB) ROUTINES START/ * * seadistab teie arduino teie SERB -i aadressiks, kasutades kaasasolevaid rutiine*/void serbSetup () {setSpeed (kiirus); pinMode (LEFTSERVOPIN, VÄLJUND); // seab vasakpoolse servosignaali tihvti // väljundpinnaleMood (RIGHTSERVOPIN, OUTPUT); // määrab parema servosignaali tihvti // väljundi vasakuleServo.attach (LEFTSERVOPIN); // lisab vasakpoolse servo paremaleServo.attach (RIGHTSERVOPIN); // lisab parema servo goStop ();}/ * * seab roboti kiiruse vahemikku 0- (peatatud) kuni 100- (täiskiirus) * MÄRKUS: kiirus ei muuda praegust kiirust, peate kiirust muutma * seejärel helistage ühele liikumismeetoditest enne muudatuste toimumist.*/void setSpeed (int newSpeed) {if (newSpeed> = 100) {newSpeed = 100;} // kui kiirus on suurem kui 100 // tehke see 100 -ks (newSpeed <= 0) {newSpeed = 0;} // kui kiirus on väiksem kui 0, tehke // see 0 kiirust = newSpeed * 0,9; // skaleerib kiiruse väärtuseks // vahemikus 0 kuni 90}/ * * saadab roboti edasi */void goForward () {leftServo.write (90 + kiirus); rightServo.write (90 - kiirus);}/ * * saadab roboti tagurpidi */void goBackward () {leftServo.write (90 - kiirus); rightServo.write (90 + kiirus);} / * * saadab roboti paremale * /void goRight () {leftServo.write (90 + kiirus); rightServo.write (90 + kiirus);}/ * * saadab roboti vasakule */void goLeft () {leftServo.write (90 - kiirus); rightServo.write (90 - kiirus);}/ * * peatab roboti */void goStop () {leftServo.write (90); rightServo.write (90);} // ARDUINO KONTROLLITUD SERVO ROBOTI (SERB) MÄRKUSTE LÕPP // ---------------------------- -----------------------------------------------

Samm: lõpetatud, teised, kes on lõpetanud ja tulevik

Lõpetanud, teised, kes on lõpetanud ja tulevik
Lõpetanud, teised, kes on lõpetanud ja tulevik
Lõpetanud, teised, kes on lõpetanud ja tulevik
Lõpetanud, teised, kes on lõpetanud ja tulevik
Valmis, teised, kes on lõpetanud ja tulevik
Valmis, teised, kes on lõpetanud ja tulevik
Valmis, teised, kes on lõpetanud ja tulevik
Valmis, teised, kes on lõpetanud ja tulevik

Õnnitleme teid nii kaugele jõudmise eest ja loodan, et teil on lõbus oma Arduino juhitava servorobotiga (SERB). Michael Becki SERB -Michael leidis SERB -i plaanid saidilt Thingiverse.com ja lõikas välja kollase ja punase akrüüli. Ma arvan, et see näeb hea välja. Mike SERB - Mike (St. Louis Area robotiklubist ROBOMO) lasi sõbral laseriga lõigata SERB šassii ja kasutas oma robotiteadmisi selle käivitamiseks. Minu meelest tundub see sinisega tehtud vinge. (vaadake tema ja teiste robotite üksikasju tema veebisaidilt (siit)) See jaotis sisaldab üksikasju tulevaste arengute ja manuste kohta (need kuvatakse siin enne, kui need on korralikult dokumenteeritud). Kuid ma tahaksin ka pilte näidata teiste inimeste SERB -id. Nii et kui olete lõpetanud, saatke mulle privaatsõnum koos foto ja mõne sõnaga (olgu see siis kirjeldus või link teie veebisaidile) ja ma lisan selle siia. (Häbematu pistik) Kui teile meeldis seda juhendatavat vaadake saidilt oomlout.com teiste lõbusate avatud lähtekoodiga projektide jaoks.

Esimene auhind SANYO eneloopi patareitoitega võistlusel

Soovitan: