Indholdsfortegnelse:
- Trin 1: Ting du skal bruge:-
- Trin 2: Fremstilling af armen:-
- Trin 3: Opret forbindelser:-
- Trin 4: Kodning:-
- Trin 5: Testning:-
![Enkel og smart robotarm ved hjælp af Arduino !!!: 5 trin (med billeder) Enkel og smart robotarm ved hjælp af Arduino !!!: 5 trin (med billeder)](https://i.howwhatproduce.com/images/006/image-15831-11-j.webp)
Video: Enkel og smart robotarm ved hjælp af Arduino !!!: 5 trin (med billeder)
![Video: Enkel og smart robotarm ved hjælp af Arduino !!!: 5 trin (med billeder) Video: Enkel og smart robotarm ved hjælp af Arduino !!!: 5 trin (med billeder)](https://i.ytimg.com/vi/CUg8VheNyoU/hqdefault.jpg)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
![Image Image](https://i.howwhatproduce.com/images/006/image-15831-13-j.webp)
![](https://i.ytimg.com/vi/Ma79CQSiT_A/hqdefault.jpg)
![Ting du skal bruge Ting du skal bruge](https://i.howwhatproduce.com/images/006/image-15831-14-j.webp)
I denne instruktive vil jeg lave en simpel robotarm. Det kontrolleres ved hjælp af en masterarm. Armen vil huske træk og spille i rækkefølge. Konceptet er ikke nyt. Jeg fik ideen fra "mini robotarm -ved Stoerpeak". Jeg ville lave dette i lang tid, men dengang var jeg totalt noob og havde ingen viden om programmering. Nu er jeg endelig ved at bygge en, holde den enkel, billig og dele den med jer alle.
Så lad os komme i gang….
Trin 1: Ting du skal bruge:-
![Ting du skal bruge Ting du skal bruge](https://i.howwhatproduce.com/images/006/image-15831-15-j.webp)
![Ting du skal bruge Ting du skal bruge](https://i.howwhatproduce.com/images/006/image-15831-16-j.webp)
Her er en liste over ting, du skal bruge:-
1. Servomotorer x 5 Link til USA:- https://amzn.to/2OxbSH7Link for Europe:-
2. Potentiometre x 5 (jeg har brugt 100k.) Link til USA:- https://amzn.to/2ROjhDMLink for Europe:-
3. Arduino UNO. (Du kan også bruge Arduino Nano) Link til USA:- https://amzn.to/2DBbENWLink for Europe:-
4. Brødbræt. (Jeg foreslår dette kit) Link til USA:- https://amzn.to/2Dy86w4Link for Europe:-
5. Batteri. (valgfrit, jeg bruger en 5v adapter)
6. Pap/træ/solbræt/akryl hvad der nogensinde er tilgængeligt eller let at finde.
Og du skal også installere Arduino IDE.
Trin 2: Fremstilling af armen:-
![At lave armen At lave armen](https://i.howwhatproduce.com/images/006/image-15831-17-j.webp)
![At lave armen At lave armen](https://i.howwhatproduce.com/images/006/image-15831-18-j.webp)
Her har jeg brugt Popsicle sticks til at lave armen. Du kan bruge ethvert materiale, der er tilgængeligt for dig. Og du kan prøve forskellige mekaniske designs for at lave en endnu bedre arm. mit design er ikke særlig stabilt.
Jeg har lige brugt dobbeltsidet tape til at klæbe servoerne til Popsicle -pinden og fastgøre dem med skruer.
Til Master -armen limede jeg potentiometre til popsicle sticks og lavede arm.
Henvisning til billederne giver dig en bedre idé.
Jeg har monteret alt på et lærredstavle i A4 -størrelse, der bruges som bund.
Trin 3: Opret forbindelser:-
![Oprettelse af forbindelser Oprettelse af forbindelser](https://i.howwhatproduce.com/images/006/image-15831-19-j.webp)
![Oprettelse af forbindelser Oprettelse af forbindelser](https://i.howwhatproduce.com/images/006/image-15831-20-j.webp)
![Oprettelse af forbindelser Oprettelse af forbindelser](https://i.howwhatproduce.com/images/006/image-15831-21-j.webp)
I dette trin foretager vi alle de nødvendige forbindelser, se billederne ovenfor.
- Tilslut først alle servoer parallelt med strømforsyningen (Den røde ledning til +ve og sort eller brun ledning til Gnd)
- Tilslut derefter signaltrådene, dvs. gul eller orange ledning til PWM -pin af arduino.
- Tilslut nu potentiometrene til +5v og Gnd for arduino parallelt.
- Tilslut den midterste terminal til den analoge pin af ardunio.
Her bruges Digital Pins 3, 5, 6, 9 & 10 til styring af servoerne
Analoge ben A0 til A4 bruges til input fra potentiometre.
Servoen tilsluttet pin 3 styres af et potentiometer tilsluttet A0
Servo forbundet til pin 5 styres af pot på A1, og så videre ….
Bemærk:- Selvom servoer ikke drives af arduino, skal du sørge for at slutte servoenes Gnd til arduino, ellers fungerer armen ikke.
Trin 4: Kodning:-
![Kodning Kodning](https://i.howwhatproduce.com/images/006/image-15831-22-j.webp)
Logikken i denne kode er ret simpel, værdierne for potentiometre gemmes i en matrix, hvor posterne derefter krydses ved hjælp af en for loop, og servoerne udfører trinene i henhold til værdierne. Du kan tjekke denne vejledning, jeg brugte til reference "Arduino Potentiometer Servo Control & Memory"
Kode:- (Filen kan downloades vedhæftet nedenfor).
Først vil vi erklære alle de nødvendige variabler globalt, så vi kan bruge dem i hele programmet. Der kræves ingen særlig forklaring på dette
#omfatte
// Servoobjekter Servo Servo_0; Servo Servo_1; Servo Servo_2; Servo Servo_3; Servo Servo_4; // Potentiometer Objekter int Pot_0; int Pot_1; int Pot_2; int Pot_3; int Pot_4; // Variabel til at gemme Servo Position int Servo_0_Pos; int Servo_1_Pos; int Servo_2_Pos; int Servo_3_Pos; int Servo_4_Pos; // Variabel til lagring Tidligere positionsværdier int Prev_0_Pos; int Prev_1_Pos; int Prev_2_Pos; int Prev_3_Pos; int Prev_4_Pos; // Variabel til lagring Aktuelle positionsværdier int Current_0_Pos; int Current_1_Pos; int Current_2_Pos; int Current_3_Pos; int Current_4_Pos; int Servo_Position; // Gemmer vinklen int Servo_Number; // Lagrer ikke noget servo int Storage [600]; // Array til lagring af data (Forøgelse af arraystørrelse vil forbruge mere hukommelse) int Index = 0; // Arrayindeks starter fra 0. position char data = 0; // variabel til lagring af data fra seriel input.
Nu vil vi skrive en opsætningsfunktion, hvor vi sætter stifter og deres funktioner. Dette er hovedfunktionen, der først udføres
ugyldig opsætning ()
{Serial.begin (9600); // Til seriel kommunikation mellem arduino og IDE. // Servo -objekter er fastgjort til PWM -ben. Servo_0. vedhæfte (3); Servo_1.attach (5); Servo_2.fastgør (6); Servo_3.attach (9); Servo_4. vedhæfte (10); // Servoer indstilles til 100 positioner ved initialisering. Servo_0.write (100); Servo_1.write (100); Servo_2.skrive (100); Servo_3.write (100); Servo_4.write (100); Serial.println ("Tryk på 'R' for at optage og 'P' for at afspille"); }
Nu er vi nødt til at læse værdierne for potentiometre ved hjælp af analoge indgangsstifter og kortlægge dem til at styre servoer. Til dette vil vi definere en funktion og navngive den Map_Pot ();, du kan navngive det, hvad du vil, det er en brugerdefineret funktion
ugyldig Map_Pot ()
{ / * Servoerne roterer 180 grader, men at bruge det til grænser er ikke en god idé, da det får servoerne til at bruse kontinuerligt, hvilket er irriterende, så vi begrænser servoen til at bevæge sig mellem: 1-179 * / Pot_0 = analogRead (A0); // Læs input fra potten og gem den i Variable Pot_0. Servo_0_Pos = kort (Pot_0, 0, 1023, 1, 179); // Kort servoer i henhold til værdien mellem 0 til 1023 Servo_0.write (Servo_0_Pos); // Flyt servoen til den position. Pot_1 = analogRead (A1); Servo_1_Pos = kort (Pot_1, 0, 1023, 1, 179); Servo_1.write (Servo_1_Pos); Pot_2 = analogRead (A2); Servo_2_Pos = kort (Pot_2, 0, 1023, 1, 179); Servo_2.write (Servo_2_Pos); Pot_3 = analogRead (A3); Servo_3_Pos = kort (Pot_3, 0, 1023, 1, 179); Servo_3.write (Servo_3_Pos); Pot_4 = analogRead (A4); Servo_4_Pos = kort (Pot_4, 0, 1023, 1, 179); Servo_4.write (Servo_4_Pos); }
Nu skriver vi loop -funktion:
hulrum ()
{Map_Pot (); // Funktionsopkald for at læse pot -værdier mens (Serial.available ()> 0) {data = Serial.read (); if (data == 'R') Serial.println ("Optagelse bevæger sig …"); if (data == 'P') Serial.println ("Afspilning af optagede bevægelser …"); } hvis (data == 'R') // Hvis 'R' er indtastet, start optagelsen. {// Gem værdierne i en variabel Prev_0_Pos = Servo_0_Pos; Prev_1_Pos = Servo_1_Pos; Prev_2_Pos = Servo_2_Pos; Prev_3_Pos = Servo_3_Pos; Prev_4_Pos = Servo_4_Pos; Map_Pot (); // Kortfunktionen tilbagekaldes til sammenligning, hvis (abs (Prev_0_Pos == Servo_0_Pos)) // absolut værdi opnås ved at sammenligne {Servo_0.write (Servo_0_Pos); // Hvis værdier, der matcher servo, genpositioneres, hvis (Current_0_Pos! = Servo_0_Pos) // Hvis værdier ikke matcher {Storage [Index] = Servo_0_Pos + 0; // Værdi tilføjes til matrixindeks ++; // Indeksværdi øget med 1} Current_0_Pos = Servo_0_Pos; } /* På samme måde foretages værdisammenligningen for alle servoer, +100 tilføjes hver for indtastning som en differentialværdi. */ if (abs (Prev_1_Pos == Servo_1_Pos)) {Servo_1.write (Servo_1_Pos); hvis (Current_1_Pos! = Servo_1_Pos) {Storage [Index] = Servo_1_Pos + 100; Indeks ++; } Current_1_Pos = Servo_1_Pos; } hvis (abs (Prev_2_Pos == Servo_2_Pos)) {Servo_2.write (Servo_2_Pos); hvis (Current_2_Pos! = Servo_2_Pos) {Storage [Index] = Servo_2_Pos + 200; Indeks ++; } Current_2_Pos = Servo_2_Pos; } hvis (abs (Prev_3_Pos == Servo_3_Pos)) {Servo_3.write (Servo_3_Pos); hvis (Current_3_Pos! = Servo_3_Pos) {Storage [Index] = Servo_3_Pos + 300; Indeks ++; } Current_3_Pos = Servo_3_Pos; } hvis (abs (Prev_4_Pos == Servo_4_Pos)) {Servo_4.write (Servo_4_Pos); hvis (Current_4_Pos! = Servo_4_Pos) {Storage [Index] = Servo_4_Pos + 400; Indeks ++; } Current_4_Pos = Servo_4_Pos; } / * Værdier udskrives på seriel skærm, '\ t' er til visning af værdier i tabelformat * / Serial.print (Servo_0_Pos); Serial.print ("\ t"); Serial.print (Servo_1_Pos); Serial.print ("\ t"); Serial.print (Servo_2_Pos); Serial.print ("\ t"); Serial.print (Servo_3_Pos); Serial.print ("\ t"); Serial.println (Servo_4_Pos); Serial.print ("Indeks ="); Serial.println (indeks); forsinkelse (50); } hvis (data == 'P') // HVIS 'P' er indtastet, Start afspilning af optagede træk. {for (int i = 0; i <Index; i ++) // Gennemgå arrayet ved hjælp af loop {Servo_Number = Storage /100; // Finder antal servo Servo_Position = Lagring % 100; // Finder position for servo switch (Servo_Number) {case 0: Servo_0.write (Servo_Position); pause; sag 1: Servo_1.write (Servo_Position); pause; sag 2: Servo_2.write (Servo_Position); pause; sag 3: Servo_3.write (Servo_Position); pause; sag 4: Servo_4.write (Servo_Position); pause; } forsinkelse (50); }}}
Når koden er klar, skal du nu uploade den til arduino -kortet
Smart -armen er klar til at fungere. Funktionen er endnu ikke så glat som den, der er lavet af Stoerpeak.
Hvis du kan gøre koden bedre eller har forslag til mig, så lad mig det vide i kommentarfeltet.
Når det er sagt, lad os gå videre til test ….
Trin 5: Testning:-
Efter at have uploadet koden til bestyrelsen med succes, skal du åbne 'Serial Monitor', du kan finde den i indstillingen Værktøjer. Når seriel skærm starter, nulstilles arduinoen. Nu kan du styre robotarmen ved hjælp af masterarmen. Men der registreres ikke noget.
For at starte optagelsen skal du indtaste 'R' på skærmen, nu kan du udføre de træk, du vil optage.
Når bevægelserne er udført, skal du indtaste 'P' for at afspille de indspillede træk. Servoerne vil fortsætte med at udføre bevægelserne, så længe brættet ikke nulstilles.
Anbefalede:
DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin
![DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin DIY -- Sådan laver du en edderkoprobot, der kan kontrolleres ved hjælp af smartphone ved hjælp af Arduino Uno: 6 trin](https://i.howwhatproduce.com/images/001/image-1099-j.webp)
DIY || Sådan laver du en edderkoprobot, der kan styres ved hjælp af smartphone Brug af Arduino Uno: Mens du laver en edderkoprobot, kan man lære så mange ting om robotik. Ligesom at lave robotter er underholdende såvel som udfordrende. I denne video vil vi vise dig, hvordan du laver en Spider -robot, som vi kan betjene ved hjælp af vores smartphone (Androi
Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)
![Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder) Sådan laver du en drone ved hjælp af Arduino UNO - Lav en quadcopter ved hjælp af mikrokontroller: 8 trin (med billeder)](https://i.howwhatproduce.com/images/001/image-210-31-j.webp)
Sådan laver du en drone ved hjælp af Arduino UNO | Lav en Quadcopter ved hjælp af mikrokontroller: Introduktion Besøg min Youtube -kanal En Drone er en meget dyr gadget (produkt) at købe. I dette indlæg vil jeg diskutere, hvordan jeg gør det billigt ?? Og hvordan kan du lave din egen sådan til en billig pris … Nå i Indien alle materialer (motorer, ESC'er
RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin
![RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin RF 433MHZ radiostyring ved hjælp af HT12D HT12E - Lav en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: 5 trin](https://i.howwhatproduce.com/images/001/image-2937-16-j.webp)
RF 433MHZ radiostyring ved hjælp af HT12D HT12E | Oprettelse af en RF -fjernbetjening ved hjælp af HT12E & HT12D med 433mhz: I denne instruktør vil jeg vise dig, hvordan du laver en RADIO -fjernbetjening ved hjælp af 433mhz sendermodtagermodul med HT12E -kode & HT12D -dekoder IC.I denne instruktive kan du sende og modtage data ved hjælp af meget meget billige KOMPONENTER SOM: HT
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)
![Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder) Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)](https://i.howwhatproduce.com/images/003/image-7044-j.webp)
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter | Rc Helikopter | Rc -fly ved hjælp af Arduino: At betjene en Rc -bil | Quadcopter | Drone | RC -fly | RC -båd, vi har altid brug for en modtager og sender, antag at vi til RC QUADCOPTER har brug for en 6 -kanals sender og modtager, og den type TX og RX er for dyr, så vi laver en på vores
Sådan laver du en enkel vejrstation ved hjælp af Arduino: 6 trin (med billeder)
![Sådan laver du en enkel vejrstation ved hjælp af Arduino: 6 trin (med billeder) Sådan laver du en enkel vejrstation ved hjælp af Arduino: 6 trin (med billeder)](https://i.howwhatproduce.com/images/001/image-542-77-j.webp)
Sådan laver du en enkel vejrstation ved hjælp af Arduino: Hej fyre, I denne instruktionsbog vil jeg forklare, hvordan du får en simpel vejrstation til at registrere temperatur og fugtighed ved hjælp af DHT11 -sensor og Arduino, de registrerede data vises på LCD -display. Inden du starter denne instruktive skal du vide det