Πίνακας περιεχομένων:
- Βήμα 1: Στοιχεία
- Βήμα 2: Πίνακας διακομιστή
- Βήμα 3: Κωδικοποιητής διακομιστή: Αντιγραφή και επικόλληση
- Βήμα 4: Πίνακας πελατών
- Βήμα 5: Κωδικός πελάτη: Αντιγραφή και επικόλληση
- Βήμα 6: Σημείωση σχετικά με τον κωδικό:
Βίντεο: Ασύρματο σερβο ελέγχου: 6 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Αυτό το έργο ελέγχει την περιστροφή ενός σερβο ασύρματα μέσω ενός ποτενσιόμετρου (κουμπί). Η περιστροφή περιορίζεται σε 180 μοίρες.
Βήμα 1: Στοιχεία
Το έργο αυτό αποτελείται από
- 2 πίνακες ελέγχου Arduino UNO με καλώδιο σύνδεσης USB
- 2 μονάδες πομποδέκτη nRF24L01-2.4GHz (για βοήθεια με αυτές τις ενότητες ανατρέξτε στη διεύθυνση
- 2 πλακέτες προσαρμογέα πρίζας (τσιπ σακιδίων) για το nRF24L01
- 1 προαιρετικό Arduino Compatible 328 ProtoShield Prototype Expansion Board
- 1 σερβο
- 1 αναλογικό ποτενσιόμετρο
- συγκόλληση και συγκόλληση
- σύρμα
- πένσα με μύτη βελόνας
- μονωτικό περιτύλιγμα, χρησιμοποίησα ηλεκτρική ταινία
Βήμα 2: Πίνακας διακομιστή
Ο πίνακας διακομιστή αποτελείται από μια μονάδα πομποδέκτη, την πλακέτα ασπίδας (η οποία συνδέεται απευθείας με την πλακέτα Arduino μόνο με έναν τρόπο) και το σερβο. Αποφάσισα να συμπεριλάβω τον πίνακα ασπίδων για να αποφύγω την αδέξια πλάκα ψωμιού και να δώσω το έργο και το συνολικό πιο καθαρό φινίρισμα.
Ο κώδικας και ο πόρος ιστού που περιλαμβάνονται στη λίστα των στοιχείων περιγράφουν λεπτομερώς τις συνδέσεις της μονάδας πομποδέκτη. Αποφάσισα να κολλήσω τις συνδέσεις αντί να χρησιμοποιήσω προσωρινές συνδέσεις όπως σε προηγούμενα έργα. Δεδομένου ότι είμαι αρχάριος, μονώθηκα κάθε σύνδεσμο συγκόλλησης με ηλεκτρική ταινία (δεν ήταν όμορφα).
Οι πείροι του πίνακα ασπίδων αντιστοιχούν απευθείας στους πείρους Arduino. Πριν συνδέσω τον πίνακα θωράκισης, ένωσα τη γείωση και τους πείρους 5Volt στις ράγες του σκάφους με σύρμα και συγκόλληση. Συγκόλλησα επίσης τα καλώδια 5Volt και γείωσης των εξαρτημάτων στις ράγες του πίνακα ασπίδας, και στη συνέχεια συνδέσα το Arduino με τον πίνακα ασπίδας.
Το σερβο είναι συνδεδεμένο στον πείρο 3Volt για τροφοδοσία και τον ψηφιακό ακροδέκτη 2 για επικοινωνία.
** Σημείωση: μόνο μετά την ολοκλήρωση αυτής της κατασκευής παρατήρησα ότι οι πίνακες Arduino μου δεν είναι ίδιοι. Ο πομποδέκτης του διακομιστή μου τροφοδοτείται από τη ράγα 5Volt στην πλακέτα ασπίδας, ενώ ο πομποδέκτης πελάτη τροφοδοτείται από τον ακροδέκτη 3volt, αν και πιστεύω ότι η λειτουργία του τσιπ προσαρμογέα στον πομποδέκτη είναι να παρέχει την κατάλληλη τάση. Το μόνο που μπορώ να πω με βεβαιότητα είναι ότι ο παρεχόμενος κώδικας που ταιριάζει με τη διαμόρφωση που εμφανίζεται στις εικόνες παράγει το περιγραφόμενο αποτέλεσμα.
Βήμα 3: Κωδικοποιητής διακομιστή: Αντιγραφή και επικόλληση
// SERVER CODE/ * NRF24L01 Arduino CE> D8 CSN> D10 SCK> D13 MO> D11 MI> D12 RO> Δεν χρησιμοποιείται GND> GND VCC> 5V */// καλωδίωση πομποδέκτη
#περιλαμβάνω
// σερβο βιβλιοθήκη
#περιλαμβάνω
// βιβλιοθήκη πομποδέκτη
#define Servopin 2
// καρφίτσα σερβο εξόδου δήλωσης
ServoTimer2 σερβ.
// δήλωση ονόματος servo
RH_NRF24 nrf24;
// δήλωση ονόματος πομποδέκτη
int timeOUT = 0;
// μεταβλητή για servo
int παλμοί = 90;
// μεταβλητή για αποθήκευση παλμών
void setup ()
{serv.attach (Servopin); // σερβο υλικό
Serial.begin (9600); // υλικό πομποδέκτη
εάν (! nrf24.init ())
Serial.println ("η αποτυχία του init"); // σειριακό υλικό παρακολούθησης εάν (! nrf24.setChannel (12)) // ορίσετε το κανάλι σε 125 Serial.println ("setChannel απέτυχε"); εάν (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF απέτυχε"); // σειριακά στοιχεία παρακολούθησης}
κενός βρόχος ()
{if (nrf24.available ()) {uint8_t buf [RH_NRF24_MAX_MESSAGE_LEN]; uint8_t len = sizeof (buf); if (nrf24.recv (buf, & len)) // σειριακά στοιχεία παρακολούθησης {Serial.print ("πήρα αίτημα:"); παλμοί = strtol ((const char*) buf, NULL, 10); // αλλαγή τύπων δεδομένων
int prin = χάρτης (παλμοί, 750, 2250, 0, 180); // αλλαγή τύπων δεδομένων
Serial.println (prin); serv.write (παλμοί); // κάνει κίνηση σερβο}}
}
Βήμα 4: Πίνακας πελατών
Η πλακέτα πελάτη αποτελείται από μια μονάδα πομποδέκτη και το ποτενσιόμετρο. Η μονάδα πομποδέκτη είναι συνδεδεμένη με τον ίδιο τρόπο ** με την πλακέτα διακομιστή, με την εξαίρεση ότι χωρίς την πλακέτα ασπίδας, συνδέεται απευθείας στις καρφίτσες της πλακέτας Arduino.
Το ποτενσιόμετρο παίρνει 5v, γειώνεται και συνδέεται με την αναλογική ακίδα 2.
** Σημείωση: όπως αναφέρεται στο βήμα της πλακέτας διακομιστή, οι πίνακες Arduino μου δεν είναι ίδιοι. Σε αυτήν την περίπτωση, ο πομποδέκτης συνδέεται με τον πείρο με την ένδειξη 3.3V, ακριβώς δίπλα στον πείρο των 5V, αλλά και πάλι, όλα δείχνουν να λειτουργούν καλά.
Βήμα 5: Κωδικός πελάτη: Αντιγραφή και επικόλληση
// ΚΩΔΙΚΟΣ ΠΕΛΑΤΗ/ * NRF24L01 Arduino CE> D8 CSN> D10 SCK> D13 MO> D11 MI> D12 RO> Δεν χρησιμοποιείται GND> GND VCC> 5V */// καλωδίωση πομποδέκτη
#περιλαμβάνω
// βιβλιοθήκη πομποδέκτη
int potpin = A2; // παραβίαση ποτενσιόμετρου
int val?
char tempChar [5];
String valString = ""; // αλλαγή τύπων δεδομένων
RH_NRF24 nrf24; // υλικό πομποδέκτη
void setup ()
{Serial.begin (9600); εάν (! nrf24.init ()) Serial.println ("η αποτυχία του init"); // Οι προεπιλογές μετά το init είναι 2,402 GHz (κανάλι 2), 2Mbps, 0dBm if (! Nrf24.setChannel (12)) Serial.println ("setChannel απέτυχε"); εάν (! nrf24.setRF (RH_NRF24:: DataRate2Mbps, RH_NRF24:: TransmitPower0dBm)) Serial.println ("setRF απέτυχε"); } // υλικό πομποδέκτη
void loop () {
val = analogRead (κατσαρόλα); // υλικό ποτενσιόμετρου
val = χάρτης (val, 0, 1023, 750, 2250);
valString = val; String str = (valString); str.toCharArray (tempChar, 5); // αλλαγή δεδομένων τύπου nrf24.send (tempChar, sizeof (tempChar));
}
Βήμα 6: Σημείωση σχετικά με τον κωδικό:
Ο Κώδικας περιέχει ορισμένες περιορισμένες λειτουργίες αντιμετώπισης προβλημάτων με τη μορφή ανατροφοδότησης από τη σειριακή οθόνη στη διεπαφή λογισμικού Arduino. Κατά την προβολή της σειριακής οθόνης από τον κωδικό SERVER (ctrl + shift + M), θα πρέπει να μπορείτε να δείτε την κατάσταση του ποτενσιόμετρου με τη μορφή ενός αριθμού μεταξύ 1 και 180.
Επίσης, εδώ είναι η βιβλιοθήκη για το ασύρματο και το σερβο:
www.airspayce.com/mikem/arduino/RadioHead/
github.com/nabontra/ServoTimer2
Συνιστάται:
Κλειδαριά ανάρτησης σερβο κουμπιού ενός κουμπιού: 3 βήματα
Κλειδαριά ανάρτησης ενός κουμπιού σερβο: Τα ποδήλατα βουνού πλήρους ανάρτησης παρέχουν ομαλή οδήγηση, αλλά συχνά απαιτούν το κλείδωμα της ανάρτησης όταν κάνετε πετάλι σε ανηφόρα. Διαφορετικά, η ανάρτηση συμπιέζεται καθώς στέκεστε στα πεντάλ, χάνοντας αυτήν την προσπάθεια. Οι κατασκευαστές ποδηλάτων το γνωρίζουν αυτό και παρέχουν
Πώς να τροποποιήσετε ένα σερβο για να λάβετε σχόλια κλειστού βρόχου: 7 βήματα
Πώς να τροποποιήσετε ένα σερβο για να λάβετε ανατροφοδότηση κλειστού βρόχου: ► Ενώ οδηγείτε ένα σερβο με έναν μικροελεγκτή (ως Arduino), μπορείτε να του δώσετε μόνο εντολές για τη θέση προορισμού (σε σήμα PPM). Με αυτήν την παραγγελία, το σερβο θα μετακινηθεί σε αυτόν τον στόχο τοποθεσία. Αλλά δεν είναι στιγμιαίο! Δεν ξέρεις πότε ακριβώς
Τοίχος τοίχου για IPad ως πίνακας ελέγχου οικιακού αυτοματισμού, με χρήση μαγνήτη με σερβο για ενεργοποίηση της οθόνης: 4 βήματα (με εικόνες)
Wall Mount for IPad As Home Automation Control Panel, Using Servo Controlled Magnet to Activation Screen: Τον τελευταίο καιρό αφιερώνω αρκετό χρόνο αυτοματοποιώντας πράγματα μέσα και γύρω από το σπίτι μου. Χρησιμοποιώ το Domoticz ως εφαρμογή οικιακού αυτοματισμού, ανατρέξτε στη διεύθυνση www.domoticz.com για λεπτομέρειες. Στην αναζήτησή μου για μια εφαρμογή ταμπλό που εμφανίζει όλες τις πληροφορίες Domoticz tog
ΕΝΑΛΛΑΚΤΙΚΟ ΕΛΕΓΧΟΥ ΣΗΜΑΤΟΣ ΓΕΝΝΗΤΡΙΑΣ ΕΛΕΓΧΟΥ ΓΙΑ ΕΛΕΓΧΟ ΗΛΕΚΤΡΟΝΙΚΗΣ ΤΑΧΥΤΗΤΑΣ (ESC): 7 Βήματα
ΕΝΑΛΛΑΚΤΙΚΟ ΕΛΕΓΧΟΥ ΕΓΧΕΙΡΙΔΙΟΥ ΣΗΜΑΤΟΣ ΓΕΝΙΚΟΥ ΓΙΑ ΤΗΝ ΗΛΕΚΤΡΟΝΙΚΗ ΤΑΧΥΤΗΤΑ (ESC): Πριν από λίγο καιρό δημοσίευσα ένα βίντεο (https://www.youtube.com/watch?v=-4sblF1GY1E) στο κανάλι μου στο YouTube όπου έδειξα πώς να φτιάχνω ανεμογεννήτρια από κινητήρα DC χωρίς ψήκτρες. Έκανα το βίντεο στα Ισπανικά και εξηγούσε ότι αυτός ο κινητήρας είχε δοθεί σε
Ασύρματο σημείο πρόσβασης πενήντα μέτρων με ασύρματο προσαρμογέα TP Link WN7200ND USB στο Raspbian Stretch: 6 βήματα
Ασύρματο σημείο πρόσβασης πενήντα μέτρων με ασύρματο προσαρμογέα TP Link WN7200ND USB στο Raspbian Stretch: Το Raspberry Pi είναι εξαιρετικό για τη δημιουργία ασφαλούς ασύρματων σημείων πρόσβασης, αλλά δεν έχει καλή εμβέλεια, χρησιμοποίησα ασύρματο προσαρμογέα USB TP Link WN7200ND για επέκταση. Θέλω να μοιραστώ πώς να το κάνωΓιατί θέλω να χρησιμοποιήσω raspberry pi αντί για δρομολογητή; T