Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
Ik bezocht howtomechatronics.com en zag daar de bluetooth gestuurde robotarm.
Ik hou er niet van om bluetooth te gebruiken, en ik zag dat we de servo kunnen bedienen met een roterende encoder, dus ik herontwerp het zodat ik de robotarm kan bedienen, gebruik de roterende encoder en neem het op
Benodigdheden
SG90*3
MG996*3
roterende encoder * 6
Arduino mega *1
2-pins drukknop * 2
560 ohm weerstand * 2
M3 schroeven en moeren
3D-printer
Stap 1: Verbind de servo's
Van links naar rechts: basisservo (MG996), lagere tailleservo (MG996), elleboogservo (MG996), laagste handservo (SG90), middelste handservo (SG90), grijpservo (SG90)
We mogen de 5V van de Arduino niet aansluiten op externe 5V (dat is een parallelle weerstand en ze zullen elkaar proberen op te laden) Maar we moeten de aarde als referentie met elkaar verbinden, zodat ze zullen werken., er is geen retourpad voor stroom van uw signaaldraad (gele draad), dus de aarde van de externe voeding moet worden aangesloten op zowel de servo-aardingspin als de Arduino-aardingspin. (Terwijl zwarte en rode draad onafhankelijke voeding zijn)
Merk op dat ik het aansluitschema heb gescheiden van servo, drukknop en roterende encoder omdat het gemakkelijker afzonderlijk te lezen is (ze maken allemaal verbinding met een enkele Arduino Mega met behulp van een pin op elk diagram)
Stap 2: Sluit de drukknop aan
De linker is de resetknop
De afspeelknop is de juiste
De afspeelknop speelt de opgenomen bewegingen af
De weerstand die ik heb gebruikt is twee 560 ohm
Stap 3: Sluit de roterende encoders aan
Aansluitpennen:
// Rotary Encoder 1 Ingangen
#define CLK1 53 #define DT1 51 #define SW1 49
// Roterende encoder 2 ingangen
#define CLK2 45 #define DT2 43 #define SW2 41
// Roterende encoder 3 ingangen
#define CLK3 50 #define DT3 48 #define SW3 46
// Roterende encoder 4 ingangen
#define CLK4 42 #define DT4 40 #define SW4 38
// Roterende encoder 5 ingangen
#define CLK5 34 #define DT5 32 #define SW5 30
// Rotary Encoder 6 Ingangen meest rechts
#define CLK6 26 //26 #define DT6 24 //24 #define SW6 22 //22
Stap 4: De STL-bestanden
De STL-bestanden crediteren howtomechatronics.com
Stap 5: De code
Stappen:
Druk op reset (reset het spel)
Voor servo behalve grijpservo: draai de encoder van elke servo - druk de encoder omlaag (record startpositie) voor elke servo, zoals encoder draaien 1-druk encoder draaien 1-draai encoder 2-druk encoder draaien 2
Nadat we de startposities hebben vastgelegd, kunnen we hetzelfde doen om de eindpositie vast te leggen
Voor grijpservo: (met de andere servo) druk op de encoder (opname grijper open) (nadat we de startpositie van de andere servo hebben geregistreerd en ze zijn op die positie) draaien - opnieuw indrukken (opname grijper dichtbij opnemen om iets te vangen) (nadat we de eindpositie van de andere servo hebben vastgelegd en ze zich op die positie bevinden) roteren-- druk de encoder omlaag (opname grijper open om object vrij te geven)
druk op de startknop (de servo's zullen draaien vanaf de startpositie, naar de eindpositie) // als u het proces wilt herhalen, moet u meerdere keren op de startknop drukken
de afspeelknop is de juiste