Η διαμόρφωση πλάτους παλμού (PWM) είναι ένας περίτεχνος όρος για έναν τύπο ψηφιακού σήματος. Τα PWM χρησιμοποιούνται σε μια ποικιλία εφαρμογών, συμπεριλαμβανομένων σύνθετων κυκλωμάτων ελέγχου. Ένας συνηθισμένος τρόπος με τον οποίο τα χρησιμοποιούμε στο SparkFun είναι για να μειώσουμε τη φωτεινότητα ενός LED RGB ή να ελέγξουμε την κατεύθυνση ενός σερβοκινητήρα. Μπορούμε να επιτύχουμε μια σειρά αποτελεσμάτων και στις δύο αυτές εφαρμογές, επειδή το PWM μας επιτρέπει να μεταβάλλουμε το χρονικό διάστημα που ένα σήμα είναι υψηλό με αναλογικό τρόπο. Ενώ ένα σήμα μπορεί να είναι μόνο υψηλό (συνήθως 5V) ή χαμηλό (γείωση) σε οποιαδήποτε δεδομένη στιγμή, μπορούμε να μεταβάλλουμε το ποσοστό του χρόνου που το σήμα είναι υψηλό σε σύγκριση με το χαμηλό σε ένα σταθερό χρονικό διάστημα.
Όταν ένα σήμα είναι υψηλό, το ονομάζουμε «έγκαιρο». Για να περιγράψουμε το ποσοστό του «εγγράφου», χρησιμοποιούμε την έννοια του κύκλου λειτουργίας. Ο κύκλος λειτουργίας μετριέται σε ποσοστά. Το ποσοστό κύκλου λειτουργίας περιγράφει συγκεκριμένα το ποσοστό του χρόνου που ένα ψηφιακό σήμα είναι ενεργοποιημένο μέσα σε ένα διάστημα ή περίοδο. Η περίοδος είναι το αντίστροφο της συχνότητας της κυματομορφής. Εάν ένα ψηφιακό σήμα είναι ενεργοποιημένο το μισό του χρόνου και απενεργοποιημένο το άλλο μισό, λέμε ότι το ψηφιακό σήμα έχει κύκλο λειτουργίας 50%, παρόμοιο με ένα ιδανικό τετραγωνικό κύμα. Εάν το ποσοστό είναι υψηλότερο από 50%, το ψηφιακό σήμα περνάει περισσότερο χρόνο στην υψηλή κατάσταση από ό,τι στη χαμηλή κατάσταση, και αντίστροφα εάν ο κύκλος λειτουργίας είναι μικρότερος από 50%. Το ακόλουθο διάγραμμα απεικονίζει αυτές τις τρεις περιπτώσεις:

Ένας κύκλος λειτουργίας 100% είναι ο ίδιος με τη ρύθμιση της τάσης στα 5 βολτ (υψηλή). Ένας κύκλος λειτουργίας 0% είναι ο ίδιος με τη σύνδεση του σήματος στη γείωση.
παράδειγμα
Μπορείτε να ελέγξετε τη φωτεινότητα της λυχνίας LED ρυθμίζοντας τον κύκλο λειτουργίας.

Με τα LED RGB (κόκκινο, πράσινο και μπλε), μπορείτε να ελέγξετε την ποσότητα καθενός από τα τρία χρώματα που αναμειγνύονται, μειώνοντάς τα σε διαφορετικές ποσότητες.

Αν και τα τρία ενεργοποιηθούν σε ίσες ποσότητες, το αποτέλεσμα θα είναι ποικίλες αποχρώσεις λευκού φωτός. Η ίδια ανάμειξη μπλε και πράσινου θα δημιουργήσει ένα μπλε-πράσινο χρώμα. Για ένα ελαφρώς πιο σύνθετο παράδειγμα, δοκιμάστε να ενεργοποιήσετε πλήρως το κόκκινο, να ενεργοποιήσετε πλήρως το πράσινο στο 50% του κύκλου λειτουργίας και να απενεργοποιήσετε πλήρως το μπλε για να δημιουργήσετε ένα πορτοκαλί χρώμα.

Κατά τον έλεγχο των LED, η συχνότητα του τετραγωνικού κύματος πρέπει να είναι αρκετά υψηλή για να επιτευχθεί ένα σωστό εφέ μείωσης φωτεινότητας. Ένα κύμα κύκλου λειτουργίας 20% στο 1 Hz θα δείξει ξεκάθαρα ότι ενεργοποιείται και απενεργοποιείται στο μάτι σας, ενώ ένας κύκλος λειτουργίας 100% στα 20 Hz ή υψηλότερος θα φαίνεται πιο αμυδρός από ό,τι όταν είναι πλήρως αναμμένος. Ουσιαστικά, εάν ο στόχος σας είναι να επιτύχετε ένα εφέ μείωσης φωτεινότητας με LED, η περίοδος δεν μπορεί να είναι πολύ μεγάλη. Μπορείτε επίσης να χρησιμοποιήσετε διαμόρφωση πλάτους παλμού για να ελέγξετε τη γωνία ενός σερβοκινητήρα που είναι συνδεδεμένος σε μια μηχανική συσκευή όπως ένας ρομποτικός βραχίονας. Ένας σερβοκινητήρας έχει έναν άξονα που περιστρέφεται σε μια συγκεκριμένη θέση με βάση τη γραμμή ελέγχου του. Οι σερβοκινητήρες μας έχουν εύρος περίπου 180 μοιρών.
Η συχνότητα/περίοδος είναι συγκεκριμένη για τον έλεγχο ενός συγκεκριμένου σερβοκινητήρα. Ένας τυπικός σερβοκινητήρας αναμένει μια ενημέρωση κάθε 20 ms, με παλμό μεταξύ 1 ms και 2 ms - με άλλα λόγια, έναν κύκλο λειτουργίας μεταξύ 5% και 10% σε κυματομορφή 50 Hz. Με παλμό 1,5 ms, ο σερβοκινητήρας θα βρίσκεται στη φυσική του θέση των 90 μοιρών. Σε παλμό 1 ms, ο σερβοκινητήρας θα βρίσκεται στις 0 μοίρες και σε παλμό 2 ms, ο σερβοκινητήρας θα βρίσκεται στις 180 μοίρες. Μπορείτε να αποκτήσετε το πλήρες εύρος κίνησης ενημερώνοντας τον σερβοκινητήρα σε ενδιάμεσες τιμές.
Η διαμόρφωση πλάτους παλμού χρησιμοποιείται σε μια ποικιλία εφαρμογών, ειδικά στον έλεγχο. Τώρα που γνωρίζετε ότι μπορεί να χρησιμοποιηθεί για τη μείωση της φωτεινότητας των LED και τον έλεγχο της γωνίας των σερβοκινητήρων, μπορείτε να ξεκινήσετε να εξερευνάτε άλλες πιθανές χρήσεις. Αν νιώθετε χαμένοι, μη διστάσετε να δείτε το SparkFun Inventor's Kit, το οποίο περιλαμβάνει παραδείγματα χρήσης διαμόρφωσης πλάτους παλμού. Αν είστε έτοιμοι να ξεκινήσετε αμέσως τον προγραμματισμό και έχετε ένα Arduino, δείτε τα παραδείγματα κωδικοποίησης PWM εδώ.
Ώρα δημοσίευσης: 31 Ιουλίου 2025


