Πίνακας περιεχομένων:
- Βήμα 1: Απαιτούνται εξαρτήματα
- Βήμα 2: Ηλεκτρικές συνδέσεις
- Βήμα 3: Πρόγραμμα ελέγχου της ταχύτητας ανεμιστήρα
- Βήμα 4: Εκτελέστε το πρόγραμμα κατά την εκκίνηση
Βίντεο: Ρυθμιζόμενος ανεμιστήρας PWM βάσει θερμοκρασίας CPU για Raspberry Pi: 4 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
Πολλές θήκες για το Raspberry Pi συνοδεύονται από μικρό ανεμιστήρα 5V για να βοηθήσουν στην ψύξη της CPU. Ωστόσο, αυτοί οι ανεμιστήρες είναι συνήθως αρκετά θορυβώδεις και πολλοί άνθρωποι το συνδέουν στην ακίδα 3V3 για να μειώσουν τον θόρυβο. Αυτοί οι ανεμιστήρες βαθμολογούνται συνήθως για 200mA, το οποίο είναι αρκετά υψηλό για τον ρυθμιστή 3V3 στο RPi. Αυτό το έργο θα σας διδάξει πώς να ρυθμίζετε την ταχύτητα του ανεμιστήρα με βάση τη θερμοκρασία της CPU. Σε αντίθεση με τα περισσότερα σεμινάρια που καλύπτουν αυτό το θέμα, δεν θα ενεργοποιήσουμε ή θα απενεργοποιήσουμε μόνο τον ανεμιστήρα, αλλά θα ελέγξουμε την ταχύτητά του όπως συμβαίνει με τον κύριο υπολογιστή, χρησιμοποιώντας Python.
Βήμα 1: Απαιτούνται εξαρτήματα
Για αυτό το έργο, θα χρησιμοποιήσουμε μόνο μερικά εξαρτήματα που συνήθως περιλαμβάνονται στα κιτ ηλεκτρονικών ειδών για χομπίστες που μπορείτε να βρείτε στο Amazon, όπως αυτό.
- Το Raspberry Pi τρέχει το Raspbian (αλλά πρέπει να λειτουργεί με άλλες διανομές).
- Ανεμιστήρας 5V (αλλά ένας ανεμιστήρας 12V θα μπορούσε να χρησιμοποιηθεί με προσαρμοσμένο τρανζίστορ και τροφοδοτικό 12V).
- NPN τρανζίστορ που υποστηρίζει τουλάχιστον 300mA, όπως ένα 2N2222A.
- Αντίσταση 1Κ.
- 1 δίοδος.
Προαιρετικά, για να τοποθετήσετε τα εξαρτήματα μέσα στη θήκη (αλλά δεν έχει γίνει ακόμα):
- Ένα μικρό κομμάτι protoboard, για συγκόλληση των εξαρτημάτων.
- Μεγάλη συρρίκνωση θερμότητας, για την προστασία της σανίδας.
Βήμα 2: Ηλεκτρικές συνδέσεις
Η αντίσταση μπορεί να συνδεθεί με οποιονδήποτε τρόπο, αλλά προσέξτε την κατεύθυνση του τρανζίστορ και της διόδου. Η κάθοδος της διόδου πρέπει να είναι συνδεδεμένη με το καλώδιο +5V (κόκκινο) και η άνοδος πρέπει να είναι συνδεδεμένη με το καλώδιο GND (μαύρο). Ελέγξτε το έγγραφο τρανζίστορ για ακίδες Emitter, Base και Collector. Η γείωση του ανεμιστήρα πρέπει να είναι συνδεδεμένη με τον Συλλέκτη και η γείωση του Rpi πρέπει να είναι συνδεδεμένη με τον πομπό
Για να ελέγξουμε τον ανεμιστήρα, πρέπει να χρησιμοποιήσουμε ένα τρανζίστορ που θα χρησιμοποιηθεί όταν ανοίξει η διαμόρφωση του συλλέκτη. Με αυτόν τον τρόπο, έχουμε έναν διακόπτη που θα συνδέει ή θα αποσυνδέει το καλώδιο γείωσης από τον ανεμιστήρα στη γείωση του raspberry pi.
Ένα τρανζίστορ NPN BJT διεξάγεται ανάλογα με το ρεύμα που ρέει στην πύλη του. Το ρεύμα που θα επιτραπεί να ρέει από τον συλλέκτη (Γ) στον εκπομπό (Ε) είναι:
Ic = B * Ib
Το Ic είναι το ρεύμα που ρέει μέσω του συλλέκτη του πομπού, το Ib είναι το ρεύμα που ρέει μέσω της βάσης στον εκπομπό και το Β (βήτα) είναι μια τιμή ανάλογα με το κάθε τρανζίστορ. Υπολογίζουμε περίπου B = 100.
Καθώς ο ανεμιστήρας μας έχει βαθμολογία 200mA, χρειαζόμαστε τουλάχιστον 2mA μέσω της βάσης του τρανζίστορ. Η τάση μεταξύ της βάσης και του εκπομπού (Vbe) θεωρείται σταθερή και Vbe = 0, 7V. Αυτό σημαίνει ότι όταν είναι ενεργοποιημένο το GPIO, έχουμε 3,3 - 0,7 = 2,6V στην αντίσταση. Για να έχουμε 2mA μέσω αυτής της αντίστασης, χρειαζόμαστε μια αντίσταση, μέγιστη, 2,6 / 0,002 = 1300 ohm. Χρησιμοποιούμε αντίσταση 1000 ohm για να απλοποιήσουμε και να διατηρήσουμε ένα περιθώριο σφάλματος. Θα έχουμε 2,6mA μέσω του pin GPIO που είναι απολύτως ασφαλές.
Καθώς ο ανεμιστήρας είναι βασικά ένας ηλεκτροκινητήρας, είναι ένα επαγωγικό φορτίο. Αυτό σημαίνει ότι όταν το τρανζίστορ σταματήσει να αγωγεί, το ρεύμα στον ανεμιστήρα θα συνεχίσει να ρέει καθώς ένα επαγωγικό φορτίο προσπαθεί να διατηρήσει το ρεύμα σταθερό. Αυτό θα είχε ως αποτέλεσμα υψηλή τάση στον πείρο γείωσης του ανεμιστήρα και θα μπορούσε να προκαλέσει ζημιά στο τρανζίστορ. Γι 'αυτό χρειαζόμαστε μια δίοδο παράλληλα με τον ανεμιστήρα που θα κάνει το ρεύμα να ρέει συνεχώς μέσω του κινητήρα. Αυτός ο τύπος ρύθμισης διόδου ονομάζεται δίοδος Flywheel
Βήμα 3: Πρόγραμμα ελέγχου της ταχύτητας ανεμιστήρα
Για τον έλεγχο της ταχύτητας του ανεμιστήρα, χρησιμοποιούμε ένα σήμα PWM λογισμικού από τη βιβλιοθήκη RPi. GPIO. Ένα σήμα PWM είναι καλά προσαρμοσμένο για να κινεί ηλεκτρικούς κινητήρες, καθώς ο χρόνος αντίδρασής τους είναι πολύ υψηλός σε σύγκριση με τη συχνότητα PWM.
Χρησιμοποιήστε το πρόγραμμα calib_fan.py για να βρείτε την τιμή FAN_MIN τρέχοντας στο τερματικό:
python calib_fan.py
Ελέγξτε διάφορες τιμές μεταξύ 0 και 100% (θα πρέπει να είναι περίπου 20%) και δείτε ποια είναι η ελάχιστη τιμή για να ενεργοποιηθεί ο ανεμιστήρας σας.
Μπορείτε να αλλάξετε την αντιστοιχία μεταξύ θερμοκρασίας και ταχύτητας ανεμιστήρα στην αρχή του κώδικα. Πρέπει να υπάρχουν τόσες τιμές tempSteps όσες και οι τιμές speedSteps. Αυτή είναι η μέθοδος που χρησιμοποιείται γενικά σε μητρικές πλακέτες PC, μετακινώντας σημεία σε γράφημα 2 αξόνων Temp / Speed.
Βήμα 4: Εκτελέστε το πρόγραμμα κατά την εκκίνηση
Για να εκτελέσω αυτόματα το πρόγραμμα κατά την εκκίνηση, έκανα ένα σενάριο bash όπου έβαλα όλα τα προγράμματα που θέλω να ξεκινήσουν και, στη συνέχεια, ξεκινάω αυτό το σενάριο bash κατά την εκκίνηση με rc.locale
- Δημιουργήστε έναν κατάλογο/home/pi/Scripts/και τοποθετήστε το αρχείο fan_ctrl.py μέσα σε αυτόν τον κατάλογο.
- Στον ίδιο κατάλογο, δημιουργήστε ένα αρχείο με το όνομα launcher.sh και αντιγράψτε το παρακάτω σενάριο.
- Επεξεργαστείτε το αρχείο /etc/rc.locale και προσθέστε μια νέα γραμμή πριν από την "έξοδο 0": sudo sh '/home/pi/Scripts/launcher.sh'
σενάριο launcher.sh:
#!/bin/sh #launcher.sh #πλοήγηση στον αρχικό κατάλογο, στη συνέχεια σε αυτόν τον κατάλογο, στη συνέχεια εκτέλεση σεναρίου python, μετά επιστροφή homelocalecd/cd/home/pi/Scripts/sudo python3./fan_ctrl.py & cd/
Εάν θέλετε να το χρησιμοποιήσετε με OSMC για παράδειγμα, πρέπει να το ξεκινήσετε ως υπηρεσία με το systemd.
- Κατεβάστε το αρχείο fanctrl.service.
- Ελέγξτε τη διαδρομή προς το αρχείο python.
- Τοποθετήστε την υπηρεσία fanctrl.service στο/lib/systemd/system.
- Τέλος, ενεργοποιήστε την υπηρεσία με sudo systemctl enable fanctrl.service.
Αυτή η μέθοδος είναι ασφαλέστερη, καθώς το πρόγραμμα θα επανεκκινηθεί αυτόματα εάν σκοτωθεί από τον χρήστη ή το σύστημα.
Συνιστάται:
Αυτόματος ανεμιστήρας ψύξης με αισθητήρα θερμοκρασίας και υγρασίας Servo και DHT11 με Arduino: 8 βήματα
Αυτόματος ανεμιστήρας ψύξης χρησιμοποιώντας αισθητήρα θερμοκρασίας και υγρασίας Servo και DHT11 με Arduino: Σε αυτό το σεμινάριο θα μάθουμε πώς να ξεκινάμε & περιστρέψτε έναν ανεμιστήρα όταν η θερμοκρασία ανέβει πάνω από ένα ορισμένο επίπεδο
Αισθητήρας θερμοκρασίας για Arduino Εφαρμόστηκε για βήματα COVID 19: 12 (με εικόνες)
Αισθητήρας θερμοκρασίας για Arduino Εφαρμόστηκε για COVID 19: Ο αισθητήρας θερμοκρασίας για το Arduino είναι ένα θεμελιώδες στοιχείο όταν θέλουμε να μετρήσουμε τη θερμοκρασία ενός επεξεργαστή του ανθρώπινου σώματος. Ο αισθητήρας θερμοκρασίας με το Arduino πρέπει να είναι σε επαφή ή κοντά για να λάβει και να μετρήσει το επίπεδο θερμότητας. Έτσι
Έλεγχος θερμοκρασίας δωματίου βάσει IOT: 5 βήματα
Έλεγχος θερμοκρασίας δωματίου βασισμένο σε IOT: Αυτό είναι διδακτικό στο έργο ελέγχου θερμοκρασίας δωματίου με βάση IOT. Χαρακτηριστικά: -1. Αυτόματη ενεργοποίηση ανεμιστήρα πάνω από την καθορισμένη θερμοκρασία δωματίου. Σβήστε αυτόματα τον ανεμιστήρα κάτω από την καθορισμένη θερμοκρασία δωματίου. Χειροκίνητος έλεγχος ανά πάσα στιγμή
ESP32 NTP Θερμόμετρο μαγειρέματος θερμοκρασίας ανιχνευτή θερμοκρασίας με διόρθωση και συναγερμό θερμοκρασίας Steinhart-Hart .: 7 βήματα (με εικόνες)
ESP32 NTP Θερμόμετρο Θερμόμετρο μαγειρέματος με διόρθωση και συναγερμό θερμοκρασίας Steinhart-Hart .: Ακόμα στο ταξίδι για να ολοκληρώσετε ένα «επερχόμενο έργο», ", ESP32 NTP Temperature Probe Cooking Thermometer With Steinhart-Hart Correction and Temperature Alarm " είναι ένας οδηγός που δείχνει πώς προσθέτω έναν αισθητήρα θερμοκρασίας NTP, piezo b
Laptop Cooling Pad DIY - Φοβερά Life Hacks With CPU Fan - Δημιουργικές ιδέες - Ανεμιστήρας υπολογιστή: 12 βήματα (με εικόνες)
Laptop Cooling Pad DIY | Φοβερά Life Hacks With CPU Fan | Δημιουργικές ιδέες | Computer Fan: Πρέπει να παρακολουθήσετε αυτό το βίντεο μέχρι το τέλος του. για την κατανόηση του βίντεο