Sisukord:

[Arduino robot] Kuidas teha liikumisvõtte robotit - Pöidlarobot - Servomootor - Lähtekood: 26 sammu (koos piltidega)
[Arduino robot] Kuidas teha liikumisvõtte robotit - Pöidlarobot - Servomootor - Lähtekood: 26 sammu (koos piltidega)

Video: [Arduino robot] Kuidas teha liikumisvõtte robotit - Pöidlarobot - Servomootor - Lähtekood: 26 sammu (koos piltidega)

Video: [Arduino robot] Kuidas teha liikumisvõtte robotit - Pöidlarobot - Servomootor - Lähtekood: 26 sammu (koos piltidega)
Video: Diy self balancing robot arduino based. 2024, November
Anonim
Image
Image
[Arduino robot] Kuidas teha liikumisvõtte robotit | Pöidlarobot | Servomootor | Lähtekood
[Arduino robot] Kuidas teha liikumisvõtte robotit | Pöidlarobot | Servomootor | Lähtekood

Pöidla robot. Kasutati MG90S servomootori potentsiomeetrit. See on väga lõbus ja lihtne! Kood on väga lihtne. See on ainult umbes 30 rida. See näeb välja nagu liikumise jäädvustamine.

Palun jätke kõik küsimused või tagasiside!

[Juhend]

  • Lähtekood
  • 3D -printimise failid

[Tegija kohta]

Youtube

Samm: ARDUINO OSAD

ARDUINO OSAD
ARDUINO OSAD
ARDUINO OSAD
ARDUINO OSAD
ARDUINO OSAD
ARDUINO OSAD

Installige Arduino IDE

https://www.arduino.cc/en/Main/Software

Installige CH340 draiver (hiina versiooni jaoks)

https://www.wch.cn/download/CH341SER_ZIP.html

DOWNLOAD - lähtekood

  • https://github.com/happythingsmaker/ThumbsRobot
  • Nagu näete, on olemas zip -fail. Ekstraktige kõik failid ja topeltklõpsake lähtekoodi faili.

Valige plaat / protsessor / Com port

  • Arduino Nano
  • ATmega328P (vana alglaadur)

Ühendage oma arduino nano

Ühendage USB -kaabel ja ilmub uus port

Otsige / valige arenev komport

  • Klõpsake ilmunud porti ja klõpsake üleslaadimisnuppu
  • Vajutage üleslaadimisnuppu

2. samm: 3D -PRINTIDE OSAD

3D -PRINTIDE OSAD
3D -PRINTIDE OSAD

Laadige 3D -modelleerimisfailid alla Thingiversest

https://www.thingiverse.com/thing:2844993

Printige kõik osad ükshaaval välja

3. samm: vooluahela osa

Vooluahela osa
Vooluahela osa

Kasutage Arduino Nano laiendusplaati. Kuna Arduino Nanol endal pole palju tihvte, peate kasutama laiendusplaati.

Kui vaatate mootoriga ühendatud juhtmestikku, näete kolme värvi. Kollane, punane ja pruun. Pruun peab olema ühendatud G -ga (maandus).

Järgmistes sammudes vaatame seda uuesti tähelepanelikult.

4. samm: riistvaraosa - valmistage kõik osad ette

RIISTVARAOSA - Valmistage kõik osad ette
RIISTVARAOSA - Valmistage kõik osad ette

[Osad]

  • 1 x Arduino Nano
  • 1 x Arduino Nano laiendusplaat
  • 6 x servomootorid
  • 2 x mänguasja silmapallid
  • 12 x kruvipoldid (2 * 6mm)

[Tööriistad]

  • 3D -printer (Anet A8)
  • Hõõgniit 3D printimiseks (PLA 1,75 mm)
  • Traadi nippel
  • Wire Stipper
  • Kuumsulamliimipüstol
  • Kruvikeeraja (+)
  • Elektrooniline lint
  • Jootetööriistad (Hakko)
  • Jootekäsi
  • Elektriline kruvikeeraja

Samm: muutke 3 servomootorit asendianduriks

Järgmised sammud näitavad teile, kuidas servomootorit asendianduriks muuta. põhimõtteliselt on enamikul servomootoritel nurga väärtuse saamiseks potentsiomeeter või kodeerija.

Me kasutame seda potentsiomeetrit ise. peame korpuse avama, tahvli lahti võtma ja uuesti juhtme ühendama.

6. samm: keerake tagaküljel olev 4 polti lahti ja avage esikaas

Keerake tagaküljel lahti 4 polti ja avage esikarp
Keerake tagaküljel lahti 4 polti ja avage esikarp
Keerake tagaküljel lahti 4 polti ja avage esikaas
Keerake tagaküljel lahti 4 polti ja avage esikaas

Teil on vaja väikest kruvikeerajat, kuna need on liiga väikesed. Mootoril on 3 osa - ees, kere ja taga.

Esikülje avamisel näete hammasrattaid. Tegelikult me ei kasuta seda mootorit "mootorina". Niisiis, käigud pole teoreetiliselt enam vajalikud. Kuid me kasutame mõnda neist, nii et toimingunurgal on endiselt pöörlemispiirang.

Samm: eemaldage kolmas käik

Eemaldage kolmas käik
Eemaldage kolmas käik
Eemaldage kolmas käik
Eemaldage kolmas käik
Eemaldage kolmas käik
Eemaldage kolmas käik

Servomootori potentsiomeetril on nurgapiirang, mis on umbes 180 kraadi. Potentsiomeetril on oma piiramismehhanism, kuid see on nii nõrk. See puruneb sageli kergesti. Selle kaitsmiseks annab käik teise mehhanismi. Esimesel käigul on plastikust kaitseraud, mis puutub kokku teise käiguga.

Kindlasti vajame esimest raami üldraami jaoks, teist käiku on vaja piirangu jaoks. Niisiis, me ei saa neist lahti. Nende asemel saame eemaldada kolmanda käigu.

Teil võib tekkida küsimus, miks peame hammasratta eemaldama. Neid kolme servomootorit kasutatakse nurgainfo saamiseks. Kui neis on hammasrattaid, on liikumine jäik. Seega peame neist ühe käigust lahti saama.

8. samm: juhtmete uuesti ühendamine / jootmine

Uuesti juhtmestik / jootmine
Uuesti juhtmestik / jootmine

Katkestage mootoritega ühendatud juhtmed.

Samm: kasutage jootetööriista ja eemaldage plaat

Kasutage jootetööriista ja eemaldage plaat
Kasutage jootetööriista ja eemaldage plaat
Kasutage jootetööriista ja eemaldage plaat
Kasutage jootetööriista ja eemaldage plaat

Samm: lõigake traat ja valmistuge jootmiseks ette

Lõigake traat ja valmistuge jootmiseks ette
Lõigake traat ja valmistuge jootmiseks ette
Lõigake traat ja valmistuge jootmiseks ette
Lõigake traat ja valmistuge jootmiseks ette

ja pane pasta ja kaablile plii

Samm: jootke see

Jootke see
Jootke see
Jootke see
Jootke see
Jootke see
Jootke see
Jootke see
Jootke see

vasakult küljelt punane kollane ja pruun

12. samm: pange sellele liim

Pange sellele liim
Pange sellele liim
Pange sellele liim
Pange sellele liim

ja taastada selle tagumine külg

Vajame veel 2 potentsiomeetrit. tehke sama tööd kahe teise mootoriga

13. samm: tehke esimene ühine kelder

Tehke esimene ühine kelder
Tehke esimene ühine kelder
Tehke esimene ühine kelder
Tehke esimene ühine kelder
Tehke esimene ühine kelder
Tehke esimene ühine kelder

Selle projekti tegemiseks kasutasin küpsetusplaati. seda on odav ja kindel kasutada. Raami kinnitamiseks tahvlile peate kasutama terava otsaga kruvisid. See teeb korraga augu ja niidi.

Mootoreid on 6. 3 mootorit vasakul küljel on originaalmootorid. teisest küljest on 3 mootorit, mida on enne sammu muudetud.

14. samm: tehke pöördliigend

Tehke pöördliigend
Tehke pöördliigend
Tehke pöördliigend
Tehke pöördliigend

Peate kasutama kruvi M2 * 6 mm.

Samm 15: Pange pöördemootor kokku esimese mootoriga

Pange pöördemootor kokku esimese mootoriga
Pange pöördemootor kokku esimese mootoriga
Pange pöördemootor kokku esimese mootoriga
Pange pöördemootor kokku esimese mootoriga

Nagu näete viimast pilti, peate vuugi horisontaalsuunas asetama. Ja asukoht peaks olema nii mootori kui ka potentsiomeetri 90 kraadi.

Teisisõnu saate neid pöördekohti pöörata sellest kohast 90 kraadi päripäeva ja vastupäeva.

Samm: pange Arduino Nano kokku Arduino Nano laiendusplaadiga

Pange Arduino Nano kokku Arduino Nano laiendusplaadiga
Pange Arduino Nano kokku Arduino Nano laiendusplaadiga
Pange Arduino Nano kokku Arduino Nano laiendusplaadiga
Pange Arduino Nano kokku Arduino Nano laiendusplaadiga

Veenduge suunas. USB -port on DC -pistikuga samal poolel.

17. samm: esimese kihi ühendus

Esimese kihi ühendus
Esimese kihi ühendus
Esimese kihi ühendus
Esimese kihi ühendus

Potentsiomeeter on ühendatud Arduino analoog 0 kontaktiga. Peate selle õigesti ühendama. Sellel Arduino Nanol on 8 kanaliga ADC (analoogne digitaalne muundur). Põhimõtteliselt annab potentsiomeeter analoogtaseme või volatiilsuse. Selle voltiväärtuse saate lugeda ADC tihvtide abil

Teisest küljest on servomootor ühendatud Arduino Digital 9 -ga. Servomootoreid saab juhtida PWM (impulsi laiuse modulatsioon) abil. Arduino Nanol on 6 kanaliga PWM tihvt (tihvtid 9, 10, 11, 3, 5 ja 6). Seega saame kasutada kuni 6 servomootorit.

Selles etapis näeb lähtekood välja selline

#kaasake

Servo servo [6]; void setup () {pinMode (A0, INPUT); servo [0].attach (9);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (kaart (tempADC [0], 0, 1023, 0, 180));}

18. samm: pange teine kiht kokku

Pange teine kiht kokku
Pange teine kiht kokku
Pange teine kiht kokku
Pange teine kiht kokku
Pange teine kiht kokku
Pange teine kiht kokku
Pange teine kiht kokku
Pange teine kiht kokku

Teine kiht on samuti lihtne valmistada. Peate olema ettevaatlik, kui asetate selle õigesse kohta, kui ühendate kaabli Arduinoga.

  • Vasak servomootor on ühendatud tihvtiga 10
  • Õige potentsiomeeter on ühendatud A1 -ga

#kaasake

Servo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, INPUT); servo [0].kinnitus (9); servo [1].kinnitus (10);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (kaart (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].write (kaart (tempADC [1], 0, 1023, 0, 180));}

19. samm: pange kokku kolmekihilised raamid

Pange kokku kolmekihilised raamid
Pange kokku kolmekihilised raamid

Samm: raami kokkupanek teise mootori / potentsiomeetriga

Pange raam kokku teise mootori / potentsiomeetriga
Pange raam kokku teise mootori / potentsiomeetriga
Pange raam kokku teise mootori / potentsiomeetriga
Pange raam kokku teise mootori / potentsiomeetriga
Pange raam kokku teise mootori / potentsiomeetriga
Pange raam kokku teise mootori / potentsiomeetriga
Pange raam kokku teise mootori / potentsiomeetriga
Pange raam kokku teise mootori / potentsiomeetriga

Samm: ühendage kolmas mootor liigendraami külge

Pange kolmas mootor liigendraami sisse
Pange kolmas mootor liigendraami sisse
Pange kolmas mootor liigendraami sisse
Pange kolmas mootor liigendraami sisse

Samm: ühendage kaabel Arduino külge

Ühendage kaabel Arduinoga
Ühendage kaabel Arduinoga
Ühendage kaabel Arduinoga
Ühendage kaabel Arduinoga
  • Kolmas mootor on ühendatud tihvtiga 11
  • Kolmas potentsiomeeter on ühendatud A2 -ga

kood näeb välja selline

#include Servo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, INPUT); pinMode (A2, INPUT); servo [0].kinnitus (9); servo [1].kinnitus (10); servo [2].kinnitus (11);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (kaart (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].write (kaart (tempADC [1], 0, 1023, 0, 180)); tempADC [2] = analogRead (A2); servo [2].write (kaart (tempADC [2], 0, 1023, 0, 180));}

Samm: pange pöidlaraam kokku

Pange pöidlaraam kokku
Pange pöidlaraam kokku
Pange pöidlaraam kokku
Pange pöidlaraam kokku

Samm: katsetage ja reguleerige nurka

Katsetage ja reguleerige nurka
Katsetage ja reguleerige nurka
Katsetage ja reguleerige nurka
Katsetage ja reguleerige nurka
Katsetage ja reguleerige nurka
Katsetage ja reguleerige nurka

Sisestage USB -kaabel mis tahes toiteallikasse ja robot lülitatakse peagi sisse. Nurk võib veidi erineda. Reguleerige nurka ükshaaval.

25. samm: veel üks robot?

Veel üks robot?
Veel üks robot?
Veel üks robot?
Veel üks robot?

Kui soovite teha veel ühe roboti, saate selle teha. Ühendage servod 3, 5 ja 6 külge.

#kaasaservo servo [6]; void setup () {pinMode (A0, INPUT); pinMode (A1, INPUT); pinMode (A2, INPUT); servo [0].kinnitus (9); servo [1].kinnitus (10); servo [2].kinnitus (11); servo [3].kinnitus (3); servo [4].kinnitus (5); servo [5].kinnitus (6);} int tempADC [3] = {0}; void loop () {tempADC [0] = analogRead (A0); servo [0].write (kaart (tempADC [0], 0, 1023, 0, 180)); servo [3].write (kaart (tempADC [0], 0, 1023, 0, 180)); tempADC [1] = analogRead (A1); servo [1].write (kaart (tempADC [1], 0, 1023, 0, 180)); servo [4].kirjutamine (kaart (tempADC [1], 0, 1023, 0, 180)); tempADC [2] = analogRead (A2); servo [2].kirjutamine (kaart (tempADC [2], 0, 1023, 0, 180)); servo [5].write (kaart (tempADC [2], 0, 1023, 0, 180));}

26. samm: valmis

Valmis!
Valmis!
Valmis!
Valmis!
Valmis!
Valmis!

Kui teil on küsimusi, jätke need julgelt:)

Mikrokontrollerite võistlus
Mikrokontrollerite võistlus
Mikrokontrollerite võistlus
Mikrokontrollerite võistlus

Mikrokontrollerite võistluse teine koht

Soovitan: