Προς το περιεχόμενο

Arduino - Ελεγχος pwm με arduino


TheGreco

Προτεινόμενες αναρτήσεις

555.pngΚαλησπέρα, έχω την εξής απορία. Θέλω να οδηγήσω ένα ανεμιστήρα PC με PWM το οποίο θα δημιουργώ με ένα 555 περίπου όπως φαίνεται στην φωτογραφία. Αυτό που θέλω να πετύχω είναι να ελέγχω το Duty Cycle του PWM με κάποια μεταβλητή απο τον Arduino. Έχει κανείς κάποια ιδέα ; Τους ανεμηστήρες θα τους τροφοδοτώ απο εξωτερικό τροφοδοτικό με mosfet και όχι με το PWM του arduino. 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

μήπως θέλει κάποια περίοδο/συχνότητα που δεν μπορει να βγάλε το arduino? 

Αν όχι, όντως είναι αχρείαστη πολυπλοκότητα.. 

Επίσης στην φωτο φαίνετε ένα darlinghton transistor και όχι FET.

 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Σωστά, πιθανώς να θέλει παραπάνω συχνότητα. Μετά όμως το Arduino πως θα ελέγξει το 555 σε astable; Τα 555 ελέγχονται με το χρόνο φόρτισης - εκφόρτισης ενός πυκνωτή, όχι με κάποιο τρόπο (π.χ. παλμό) που να μπορεί να παραχθεί (εύκολα) με Arduino. 

Καταλαβαίνω ότι ο @TheGreco κάπου μπερδεύτηκε. Καλύτερα θα 'ταν να μας περιγράψει τι θέλει να πετύχει, για να τον βοηθήσουμε. 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

Ναι σόρρυ να σας πω ακριβώς τι θέλω να κάνω. Θέλω να οδηγήσω μια συστοιχία απο ανεμιστηράκια όπου θα μπορώ να ελέγχω την ταχύτητα του καθενός ξεχωριστά μέσω του arduino. Ενας τρόπος που σκέφτηκα ήταν να οδηγώ το κάθε φανάκι ξεχωριστά με δικό του ξεχωριστό PWM. Στο παραπάνω κύκλωμα που ανέβασα ο έλεγχος του PWM γίνεται από ένα ποτενσιόμετρο το οποίο μετά απο έρευνα σκέφτηκα να το αντικαταστήσω με ένα ψηφιακό ποτενσιόμετρο το οποίο θα ελέγχω μέσω του arduino. Δηλαδή αυτό είναι το concept. Να έχω 4-5 φανάκια την ταχύτητα των οποίων να μπορώ να ελέγχω ξεχωριστά μέσω κάποιων μεταβλητών μέσα στο πρόγραμμα. Αντιλαμβάνομαι ότι ο arduino έχει δικό του pwm αλλά δεν ξέρω αν είναι αρκετό για να οδηγήσει 4-5 φανάκια (τα οποία θα τροφοδοτούνται απο τροφοδοτικό όχι από τον arduino).

Γενικά οι γνώσεις μου στα ηλεκτρονικά είναι αρκετά περιορισμένες.

Επεξ/σία από TheGreco
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

To Arduino Uno έχει 6 PWM outputs. Τα pins 3, 5, 6, 9, 10, 11

Οπότε για μέχρι 6 fans είσαι ΟΚ.  Αν θες παραπάνω ή αν θα ήθελες να χρησιμοποιήσεις για κάτι περισσότερο το Arduino μπορείς να το συνδιάσεις με έναν εξωτερικό driver PWM πχ https://www.cableworks.gr/ilektronika/arduino-and-microcontrollers/modules/converter/pca9685-16-channel-pwm-servo-motor-driver-i2c-module-for-arduino-robot/

Με τις εξόδους του Arduino (ή του driver) θα ανοιγοκλείνεις τα transistor/fet. Αν είναι transistor μην ξεχάσεις και την αντίσταση στην βάση. Αν είναι ΦΕΤ μην ξεχάσεις την Pull down του Gate.

 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Σε ευχαριστώ πολύ!

@nkarama Στην περίπτωση που θέλω να ελέγξω πιο πολλά φανάκια με έναν driver σαν αυτό που μου έστειλες μπορείς να μου πεις πολύ περιληπτικά με ποιό τρόπο ελέγχετε απο τον arduino ώστε να το ψάξω ; Και πάλι σε ευχαριστώ 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Απο ότι βλέπω, όλα τα "εύκολα" παραδείγματα που υπάρχουν εκεί έξω για αυτό το break out board είναι για έλεγχο Servo και όχι για PWM. 

Πιθανά να σε μπερδέψει παραπάνω... 

Δες εδώ για το hardware. 

https://learn.adafruit.com/16-channel-pwm-servo-driver/hooking-it-up

Η βιβλιοθήκη της adafruit είναι φτιαγμένη με έμφαση στα servo οπότε θα πρέπει να το ψάξεις μόνος σου... Στα γρήγορα κάπου είδα ότι έχουν μια μέθοδο setPWM αλλά δεν κάθησα να το ψάξω...

 

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • 1 μήνα μετά...
Δημοσ. (επεξεργασμένο)

Καλησπερα καινουριος και εγω στο arduino με βασικες γνώσεις.

Εχω συνδεσει το uno με μια i2c οθονη ενα αισθητηρα θερμοκρασιας ολα καλα. 

Εχω βαλει 3 κουμπια στο breadboard που θελω να ειναι up down and select και τα εχω συνδεσει στο ψηφιακο 8 9 10 αντιστοιχα  και στα gnd.

Υπαρχει καποιος ετοιμος κωδικας επειδη δεν θελω να ασχωληθω με το pwm, που να ρυθμιζει τον 4 wire pc fan σε ανα 20 % pwm cycle με τα up down button; ( θα συνδεσω 12 v gnd και το μπλε κικιτρινο καλωδιο σε ψηφιακη εισοδο και εξοδο του arduino uno)

Καθως και να προβαλει τα rpm?

Ευχαριστω !!

simple menu.png

Επεξ/σία από jordanp
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)
Στις 7/2/2022 στις 2:53 ΜΜ, jordanp είπε

Καλησπερα καινουριος και εγω στο arduino με βασικες γνώσεις.

Εχω συνδεσει το uno με μια i2c οθονη ενα αισθητηρα θερμοκρασιας ολα καλα. 

Εχω βαλει 3 κουμπια στο breadboard που θελω να ειναι up down and select και τα εχω συνδεσει στο ψηφιακο 8 9 10 αντιστοιχα  και στα gnd.

Υπαρχει καποιος ετοιμος κωδικας επειδη δεν θελω να ασχωληθω με το pwm, που να ρυθμιζει τον 4 wire pc fan σε ανα 20 % pwm cycle με τα up down button; ( θα συνδεσω 12 v gnd και το μπλε κικιτρινο καλωδιο σε ψηφιακη εισοδο και εξοδο του arduino uno)

Καθως και να προβαλει τα rpm?

Ευχαριστω !!

 

Ετσι πες το φίλε μου... Θέλω να μου το φτιάξετε! 😁

μπαίνεις κομμήτης στο hlektronika βαζεις ένα συφερτό κώδικα, μας βγαίνουν τα ματάκια να τον διαβάσουμε για να σου κάνουμε προτάσεις τι να διορθώσεις και τι να δεις, και εξαφανίζεσαι... 👻

Στο σχεδιάγραμμα δεν δείχνεις i2c οθόνη, αλλά την κανονική.

Δεν χρειάζετε να ασχοληθείς με PWM, το arduino θα το κάνει αυτό για εσένα. Απλά εσύ θα πρέπει να διαβάζεις την ταχύτητα του ανεμιστήρα (απο το καλώδιο sense, το πράσινο) και να στέλνεις το PWM σήμα σου απο το μπλέ. 

Το να διαβάσεις την ταχύτητα ήταν αυτό που έλειπε απο τον κώδικα που ανέβασες στο hlektronika.gr. Συνήθως γίνετε μέσω μια ρουτίνας ISR. Στον κώδικα που ανέβασες είχες attach interupt αλλά δεν είχες ISR.  

Επίσης πρέπει να δεις τι τάσεις επιστρέφει (και δέχετε) στο πράσινο καλώδιο sense (και στο μπλε καλώδιο pwm). Αν σου επιστρέφει πχ 12V θα κάψεις την είσοδο του arduino. Αν στο PWM δεν του φτάνουν τα 5V τότε δεν θα λειτουργεί η ρύθμιση της ταχύτητας. Δεν την μετράς με πολυμετρο!!! βλέπεις το datasheet. 

Τουλάχιστον εδώ πήραμε και παραπάνω πληροφορίες απο ότι στο ηλεκτρονικά :) Αν μπω σε κανα 2 φόρουμ ακόμα, θα καταλάβω πλήρως τι θες να κάνεις 😃

 

Επεξ/σία από nkarama
  • Thanks 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Φιλε ασχολουμε εδω και ενα μηνα με το arduino. 

Στο insomnia ειμαι καιρο και στο ηλεκτρονικα μπηκα γιατι εκει εχετε παραπανω εξιδικευση στο θεμα

Εχω μια i2c οθονη, με την οποια και εχω κανει διαφορα project. 

Στον κωδικα εβαλα απλη οθονη γιατι κανω τα πηραματα πρωτα στο tinkercad και μετα τα περναω στο arduino οποτε και θα  βαλω κωδικα για i2c οθονη.

Ημουν ετοιμος να τα παρατησω αλλα με βοηθησες με τις απαντησεις σου και θα συνεχισω με αυτα που μου ειπες. Απλα ειχα χαθει γιατι δεν υπαρχουν πολλα παραδειγματα χωρις transistor και mosfet για 4pin fan.

Αυτο που θελω για αρχη ειναι μια οθονη που θα εμφανιζει πανω set pwm καθως και την θερμοκρασια και κατω το rpm και οταν το καταφερω θα το κανω με menu ξεχωριστα για το fan1 και fan 2. 

Οποτε θα κανω οτι μου ειπες και θα επανελθω να  πω αν πετυχε. ( και στα 2 site) Ευχαριστω και παλι.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...