Πίνακας περιεχομένων:

Robotic Arm - DIY: 5 Βήματα
Robotic Arm - DIY: 5 Βήματα

Βίντεο: Robotic Arm - DIY: 5 Βήματα

Βίντεο: Robotic Arm - DIY: 5 Βήματα
Βίντεο: How to Moonwalk 2024, Ιούλιος
Anonim
Robotic Arm - DIY
Robotic Arm - DIY

Από τότε που ήμουν παιδί, ήθελα πάντα να φτιάξω κάτι πραγματικά υπέροχο. Δυστυχώς για το μικρότερο, δεν είχα αρκετές γνώσεις εκείνη τη στιγμή για να φτιάξω οτιδήποτε. Τώρα, όμως, γνωρίζω λίγα ηλεκτρονικά και ξεκίνησα αυτό το έργο κατά τη διάρκεια της χειμερινής μου διακοπής.

Βασικά έχω δημιουργήσει ένα ρομποτικό βραχίονα χρησιμοποιώντας χαρτόνι, servos και άλλα αντικείμενα με τα οποία τα δάχτυλα θα μπορούσαν να μετακινηθούν χρησιμοποιώντας εύκαμπτους αισθητήρες σύμφωνα με την κίνηση των δικών μας δακτύλων.

Εάν έχετε οποιεσδήποτε προτάσεις, αφήστε τις στα σχόλια.

Βήμα 1: Απαιτούμενα εξαρτήματα:

  1. Servos
  2. Flex αισθητήρες (5)
  3. Χαρτόνι
  4. Ταινία-κασέτα
  5. Χορδές
  6. Arduino
  7. Αντίσταση (5 x 1k ohm)

Βήμα 2: Ευέλικτοι αισθητήρες:

Flex αισθητήρες
Flex αισθητήρες
Flex αισθητήρες
Flex αισθητήρες

Τι είναι?

Οι Flex αισθητήρες είναι αισθητήρες που μεταβάλλουν την αντίσταση εάν είναι λυγισμένοι από την αρχική τους κατάσταση. Βασικά, είναι μια μεταβλητή αντίσταση.

Διασύνδεση με το Arduino:

Το Arduino δεν μπορεί να διαβάσει αντιστάσεις, αλλά μπορεί να διαβάσει τάσεις μέσω του αναλογικού του πείρου. Έτσι, δημιουργούμε ένα κύκλωμα διαίρεσης τάσης.

Ένα πράγμα που πρέπει να έχετε κατά νου είναι ότι αυτοί οι αισθητήρες είναι πολύ εύθραυστοι, οπότε προσπαθήστε να τους κρατήσετε ασφαλείς και μην τους χειρίζεστε χοντρικά.

Συνδέστε τον αισθητήρα κάμψης στο Arduino όπως στην παραπάνω εικόνα. Αφού τα συνδέσετε, συνδέστε το Arduino στον φορητό υπολογιστή και τον υπολογιστή σας και ανοίξτε το Arduino IDE. Χρησιμοποιήστε τον παρακάτω κώδικα για να λάβετε τη μέγιστη και την ελάχιστη τιμή. Στην αρχική του κατάσταση, θα δώσει την ελάχιστη τιμή. Όταν λυγίζετε τον αισθητήρα σε γωνία 90 μοιρών, θα λάβετε τη μέγιστη τιμή. Αφού ανεβάσετε τον κώδικα, ανοίξτε τη σειριακή οθόνη για να βρείτε αυτές τις τιμές. Σημειώστε αυτές τις τιμές.

int flexsensor = A0; int val;

void setup () {

Serial.begin (9600);

}

void loop () {

val = analogRead (flexsensor);

Serial.println (val);

καθυστέρηση (50)?

}

Ευγενική προσφορά εικόνων: Google

Βήμα 3: Servos:

Δεν πρόκειται να μιλήσω για το πώς λειτουργούν τα servos σε αυτό το διδακτικό. Υπάρχουν άλλα σεμινάρια στο διαδίκτυο που θα σας βοηθήσουν σε αυτό.

Τα Servos έχουν τρεις ακροδέκτες GND (καφέ), Vcc (κόκκινο) και σήμα (κίτρινο ή πορτοκαλί). Συνδέστε το Vcc με 5V του Arduino και το GND του servo στο έδαφος του Arduino. Το σήμα πηγαίνει στις ακίδες PWM του Arduino που αντιπροσωπεύονται από το σύμβολο '~' (tilde). Ένα άλλο πράγμα που πρέπει να γνωρίζετε είναι ότι τα servos κινούνται από 0 έως 180 μοίρες. Έτσι, το Arduino IDE διαθέτει μια βιβλιοθήκη για την αποστολή σημάτων που στέλνουν πτυχία στα servos.

Ο αισθητήρας Flex πρόκειται να προσαρτηθεί στα δάχτυλά μας, οπότε όταν μετακινούμε τα δάχτυλά μας κινούνται επίσης οι αισθητήρες Flex και ως εκ τούτου η αντίσταση αλλάζει. Εξαιτίας αυτού, το Arduino διαβάζει διαφορετικές τιμές από τον αναλογικό του pin.

Θυμηθείτε από το τελευταίο βήμα που πήραμε τιμές μέγιστου και ελάχιστου από τον αισθητήρα. Θα χρησιμοποιήσουμε αυτές τις τιμές για να το αντιστοιχίσουμε σε 0 έως 180 μοίρες.

#includeServo x; // καθορισμός αντικειμένου

int flexpin = A0;

int val?

int maxval = 870; // επαναπροσδιορίστε το maxval σύμφωνα με τον αισθητήρα σας

int minval = 750; // επαναπροσδιορίστε το minval σύμφωνα με τον αισθητήρα σας

void setup ()

{

x. προσάρτηση (9); // Servo attache στο pin 9

}

κενός βρόχος ()

{

val = analogRead (flexpin);

val = χάρτης (val, maxval, minval, 180, 0); // Χαρτογραφήστε τις τιμές από 0 έως 180

x.write (val);

καθυστέρηση (10)?

}

Ο παραπάνω κωδικός είναι για 1 σερβο και 1 εύκαμπτο αισθητήρα.

Βήμα 4: Μηχανικά δάχτυλα:

Μηχανικά δάχτυλα
Μηχανικά δάχτυλα

www.dropbox.com/s/m3jh0iiqwm2vx0e/robotic%…

Το πήρα από το Science toymaker

sciencetoymaker.org/

Κατεβάστε την εικόνα και εκτυπώστε την και επικολλήστε την σε ένα λεπτό χαρτόνι.

Κόψτε κατά μήκος των γραμμών (συνεχείς) και κάντε τσακίσεις κατά τις διακεκομμένες γραμμές. Αφού το κάνετε αυτό, θα πάρετε ορθογώνιο κυβικό, το οποίο θα μοιάζει πολύ με ένα δάχτυλο. Υπάρχουν δύο μέρη της εικόνας, το αριστερό είναι το εύκαμπτο και το δεξί είναι για σταθερότητα. Δεν χρησιμοποίησα το σωστό, αλλά μπορείτε να το χρησιμοποιήσετε αν θέλετε.

Επαναλάβετε το ίδιο για τα άλλα τέσσερα δάχτυλα. Μετά από αυτό, τοποθετήστε τα σε μια βάση για να αντιπροσωπεύουν την παλάμη. Συνδέστε μια χορδή από το πάνω μέρος του δακτύλου μέσα από το κοίλο στο εσωτερικό και τέλος στο κάτω μέρος. Εάν όλα γίνονται σωστά, το δάχτυλο πρέπει να κινείται εάν τραβήξετε τη χορδή.

Βήμα 5: Προσάρτηση όλων:

Τοποθετήστε όλα τα servos στη βάση. Μετακινήστε τα servos αρχικά σε 0 μοίρες. Μετά από αυτό, τοποθετήστε το συνημμένο που παίρνετε με τα servos. Συνδέστε τις χορδές στα servos. Επαναλάβετε όλες τις συνδέσεις για τα servos, αισθητήρες Flex για τα άλλα τέσσερα δάχτυλα.

Είχα μόνο έναν flex sensor, οπότε τον χρησιμοποίησα για τον έλεγχο και των 5 servos. Εδώ το έχω τροποποιήσει έτσι ώστε κάθε flex sensor να ελέγχει 5 ανεξάρτητα servos.

#includeServo x;

Servo y;

Servo z;

Servo a?

Servo b;

int flexpin = A0;

int val?

int maxval = 850;

int minval = 700;

void setup ()

{

Serial.begin (9600);

x. προσάρτηση (9);

y. προσάρτηση (10);

z. προσάρτηση (11);

α. προσάρτηση (5)

β. προσάρτηση (6)

}

κενός βρόχος ()

{

val = analogRead (flexpin);

val = χάρτης (val, maxval, minval, 180, 0);

Serial.println (val);

x.write (val);

y.write (val);

z.write (val);

a.write (val);

β. γράψτε (val)

καθυστέρηση (10)?

}

Συνιστάται: