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

Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino: 8 βήματα
Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino: 8 βήματα

Βίντεο: Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino: 8 βήματα

Βίντεο: Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino: 8 βήματα
Βίντεο: FLProg7: Ρολόι και θερμοκρασία πραγματικού χρόνου | ESP32 NodeMCU | Visual Embedded Programming 2024, Νοέμβριος
Anonim
Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino
Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino
Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino
Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino
Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino
Μονάδα αισθητήρα τάσης διπλού καναλιού Arduino

Πέρασαν μερικά χρόνια από τότε που έγραψα ένα διδακτικό, σκέφτηκα ότι ήρθε η ώρα να επιστρέψω. Θελα να φτιάξω έναν αισθητήρα τάσης ώστε να μπορώ να συνδεθώ με την τροφοδοσία πάγκου. Έχω μεταβλητή τροφοδοσία δύο καναλιών, δεν έχει οθόνη, οπότε πρέπει να χρησιμοποιήσω βολτόμετρο για να ρυθμίσω την τάση. Δεν είμαι ηλεκτρολόγος μηχανικός ή προγραμματιστής, το κάνω ως χόμπι. Έχοντας πει ότι πρόκειται να περιγράψω τι θα χτίσουμε εδώ και μπορεί να μην είναι ο καλύτερος σχεδιασμός ή η καλύτερη κωδικοποίηση, αλλά θα κάνω ό, τι καλύτερο μπορώ.

Βήμα 1: Σχετικά με το έργο

Σχετικά με το Έργο
Σχετικά με το Έργο
Σχετικά με το Έργο
Σχετικά με το Έργο
Σχετικά με το Έργο
Σχετικά με το Έργο

Πρώτα απ 'όλα αυτό είναι απλώς ένας προκαταρκτικός σχεδιασμός για κάτι πιο σταθερό και αξιόπιστο, μερικά από τα εξαρτήματα δεν θα καταλήξουν στον τελικό σχεδιασμό. Τα περισσότερα από τα εξαρτήματα έχουν επιλεγεί μόνο λόγω διαθεσιμότητας (τα είχα στο σπίτι μου) και όχι λόγω της αξιοπιστίας τους. Αυτός ο σχεδιασμός είναι για τροφοδοτικό 15V, αλλά μπορείτε να αντικαταστήσετε μερικά παθητικά εξαρτήματα και να το κάνετε να λειτουργεί σε οποιεσδήποτε τάσεις ή ρεύμα. Οι αισθητήρες ρεύματος διατίθενται σε 5Α, 20Α και 30Α, μπορείτε απλώς να επιλέξετε το ρεύμα και να τροποποιήσετε τον κωδικό, το ίδιο πράγμα με τον αισθητήρα τάσης μπορείτε να αλλάξετε την τιμή των αντιστάσεων και τον κώδικα για τη μέτρηση υψηλότερων τάσεων.

Το PCB δεν έχει καθορισμένες τιμές επειδή μπορείτε να αντικαταστήσετε παθητικά εξαρτήματα για να καλύψετε τις ανάγκες του τροφοδοτικού σας. Έχει σχεδιαστεί για να προστεθεί σε οποιοδήποτε τροφοδοτικό.

Βήμα 2: Αισθητήρες τάσης

Αισθητήρες τάσης
Αισθητήρες τάσης
Αισθητήρες τάσης
Αισθητήρες τάσης
Αισθητήρες τάσης
Αισθητήρες τάσης
Αισθητήρες τάσης
Αισθητήρες τάσης

Θα ξεκινήσουμε με τους αισθητήρες τάσης και τους αισθητήρες ρεύματος. Χρησιμοποιώ ένα Arduino Mega για να δοκιμάσω τα κυκλώματα και τον κώδικα, οπότε μερικοί αρχάριοι σαν κι εμένα μπορούν να φτιάξουν και να δοκιμάσουν τα δικά τους εν κινήσει αντί να χρειαστεί να χτίσουν ολόκληρη την ενότητα σε ένα breadboard.

Μπορούμε να μετρήσουμε μόνο 0-5 βολτ χρησιμοποιώντας τις αναλογικές εισόδους του Arduino. Για να μπορέσουμε να μετρήσουμε έως και 15 βολτ πρέπει να δημιουργήσουμε ένα διαχωριστή τάσης, τα διαχωριστικά τάσης είναι πολύ απλά και μπορούν να δημιουργηθούν χρησιμοποιώντας μόνο 2 αντιστάσεις σε αυτή την περίπτωση χρησιμοποιούμε 30k και 7,5k που θα μας έδιναν αναλογία 5: 1 ώστε να μπορούμε να μετρήσουμε τιμές 0-25 βολτ.

Λίστα εξαρτημάτων για αισθητήρα τάσης

R1, R3 30k Αντίσταση

R2, R4 7.5k Αντιστάσεις

Βήμα 3: Τρέχοντες αισθητήρες

Τρέχοντες αισθητήρες
Τρέχοντες αισθητήρες
Τρέχοντες αισθητήρες
Τρέχοντες αισθητήρες
Τρέχοντες αισθητήρες
Τρέχοντες αισθητήρες
Τρέχοντες αισθητήρες
Τρέχοντες αισθητήρες

Για τους τρέχοντες αισθητήρες θα χρησιμοποιήσω το ACS712 της Allegro. Τώρα το πρώτο πράγμα που πρέπει να αναφέρω είναι ότι γνωρίζω ότι αυτοί οι αισθητήρες δεν είναι πολύ ακριβείς αλλά είναι αυτό που είχα στο χέρι κατά το σχεδιασμό αυτής της μονάδας. Το ACS712 διατίθεται μόνο σε συσκευασία επιφανειακής τοποθέτησης και είναι ένα από τα ελάχιστα εξαρτήματα SMD που χρησιμοποιούνται σε αυτήν την ενότητα.

Λίστα μερών τρέχοντος αισθητήρα

IC2, IC3 ASC712ELC-05A

Πυκνωτής C1, C3 1nF

Πυκνωτής C2, C4 0.1uF

Βήμα 4: Αισθητήρας θερμοκρασίας & ανεμιστήρας

Αισθητήρας θερμοκρασίας & ανεμιστήρας
Αισθητήρας θερμοκρασίας & ανεμιστήρας
Αισθητήρας θερμοκρασίας & ανεμιστήρας
Αισθητήρας θερμοκρασίας & ανεμιστήρας
Αισθητήρας θερμοκρασίας & ανεμιστήρας
Αισθητήρας θερμοκρασίας & ανεμιστήρας

Αποφάσισα να προσθέσω έλεγχο θερμοκρασίας στη μονάδα, επειδή το μεγαλύτερο μέρος της παροχής ενέργειας παράγει μια καλή ποσότητα θερμότητας και χρειαζόμαστε προστασία από υπερθέρμανση. Για τον αισθητήρα θερμοκρασίας χρησιμοποιώ HDT11 και για τον έλεγχο του ανεμιστήρα θα χρησιμοποιήσουμε ένα 2N7000 N-Channel MOSFET για να οδηγήσουμε έναν ανεμιστήρα CPU 5V. Το κύκλωμα είναι πολύ απλό, πρέπει να εφαρμόσουμε τάση στην αποστράγγιση του τρανζίστορ και εφαρμόζουμε θετική τάση στην πύλη, σε αυτή την περίπτωση χρησιμοποιούμε την ψηφιακή έξοδο του arduino για να παρέχουμε αυτήν την τάση και το τρανζίστορ ανάβει επιτρέποντας στον ανεμιστήρα να είναι ενεργοποιημένος.

Ο κώδικας είναι πολύ απλός λαμβάνουμε μια ένδειξη θερμοκρασίας από τον αισθητήρα DHT11 εάν η θερμοκρασία είναι μεγαλύτερη από την καθορισμένη τιμή, θέτει τον πείρο εξόδου Υ HIGHΗΛΟ και ο ανεμιστήρας ανάβει. Μόλις η θερμοκρασία πέσει κάτω από την καθορισμένη θερμοκρασία, ο ανεμιστήρας απενεργοποιείται. Χτίζω το κύκλωμα στο ψωμί μου για να δοκιμάσω τον κωδικό μου, έβγαλα μερικές γρήγορες φωτογραφίες με το κελί μου, όχι πολύ καλά συγνώμη, αλλά το σχηματικό είναι εύκολο να το καταλάβεις.

Αισθητήρας θερμοκρασίας & Λίστα μερών ανεμιστήρα

Αισθητήρας θερμοκρασίας J2 DHT11

Αντίσταση R8 10K

J1 5V FAN

Q1 2N7000 MOSFET

Δίοδος D1 1N4004

Αντίσταση R6 10K

R7 47K Αντίσταση

Βήμα 5: Κύκλωμα ισχύος

Κύκλωμα ισχύος
Κύκλωμα ισχύος
Κύκλωμα ισχύος
Κύκλωμα ισχύος
Κύκλωμα ισχύος
Κύκλωμα ισχύος

Η μονάδα λειτουργεί σε 5V οπότε χρειαζόμαστε μια σταθερή πηγή ενέργειας. Χρησιμοποιώ έναν ρυθμιστή τάσης L7805 για να παρέχω μια σταθερή τροφοδοσία 5V, δεν έχω να πω πολλά για αυτό το κύκλωμα.

Λίστα εξαρτημάτων κυκλώματος ισχύος

1 ρυθμιστής τάσης L7805

C8 0.33uF Πυκνωτής

C9 πυκνωτής 0.1uF

Βήμα 6: Έξοδοι LCD και σειριακές

LCD & σειριακές έξοδοι
LCD & σειριακές έξοδοι
LCD & σειριακές έξοδοι
LCD & σειριακές έξοδοι
LCD & σειριακές έξοδοι
LCD & σειριακές έξοδοι
LCD & σειριακές έξοδοι
LCD & σειριακές έξοδοι

Σχεδιάζω τη μονάδα που θα χρησιμοποιηθεί έχοντας υπόψη την οθόνη LCD, αλλά στη συνέχεια αποφάσισα να προσθέσω σειριακή έξοδο για σκοπούς εντοπισμού σφαλμάτων. Δεν πρόκειται να αναφερθώ λεπτομερώς στον τρόπο ρύθμισης μιας I2C LCD επειδή την έχω ήδη καλύψει σε μια προηγούμενη διδάσκουσα I2C LCD Ο εύκολος τρόπος που πρόσθεσα LEDS στις γραμμές Tx & Rx για να δείξω δραστηριότητα. Χρησιμοποιώ έναν προσαρμογέα usb σε σειριακό που συνδέω στη μονάδα, ανοίγω τη σειριακή οθόνη στο Arduino IDE και μπορώ να δω όλες τις τιμές, βεβαιωθείτε ότι όλα λειτουργούν όπως πρέπει.

Λίστα LCD & Serial Out Parts

LCD I2C 16x2 I2C (20x4 προαιρετικά)

LED7, LED8 0603 LED SMD

R12, R21 1K R0603 SMD Resistor

Βήμα 7: Προγραμματισμός ISP & ATMega328P

Προγραμματισμός ISP & ATMega328P
Προγραμματισμός ISP & ATMega328P
Προγραμματισμός ISP & ATMega328P
Προγραμματισμός ISP & ATMega328P
Προγραμματισμός ISP & ATMega328P
Προγραμματισμός ISP & ATMega328P

Όπως ανέφερα στην αρχή, αυτή η ενότητα σχεδιάζεται για διαφορετικές διαμορφώσεις, πρέπει να προσθέσουμε έναν τρόπο προγραμματισμού του ATMega328 και να ανεβάσουμε τα σκίτσα μας. Υπάρχουν διάφοροι τρόποι προγραμματισμού της ενότητας, ένας από αυτούς είναι η χρήση ενός Arduino ως προγραμματιστή ISP όπως σε ένα από τα προηγούμενα Instructable Bootloading ATMega με Arduino mega.

Σημειώσεις:

- Δεν χρειάζεστε το Capacitor για να φορτώσετε το σκίτσο του ISP στο Arduino, το χρειάζεστε για να κάψετε το bootloader και να ανεβάσετε το Sketch του tension_sensor.

-Σε νεότερες εκδόσεις του Arduino IDE πρέπει να συνδέσετε το pin 10 με το pin 1 RESET του ATMega328.

Λίστα εξαρτημάτων κυκλωμάτων ISP & ATMega328P

U1 ATMega328P

XTAL1 16MHz HC-49S Crsytal

Πυκνωτές C5, C6 22pf

Κεφαλίδα ISP1 6 ακίδων

Αντίσταση R5 10K

Επαναφορά διακόπτη SMD 3x4x2 Tact

Βήμα 8: Σημειώσεις και αρχεία

Σημειώσεις & αρχεία
Σημειώσεις & αρχεία
Σημειώσεις & αρχεία
Σημειώσεις & αρχεία
Σημειώσεις & αρχεία
Σημειώσεις & αρχεία

Αυτός ήταν απλώς ένας τρόπος για μένα να βάλω κάποιες ιδέες σε μια συσκευή εργασίας, όπως ανέφερα προηγουμένως είναι μόνο μια μικρή προσθήκη για την τροφοδοσία πάγκου Dual Channel. Έχω συμπεριλάβει όλα όσα χρειάζεστε για να δημιουργήσετε τη δική σας ενότητα, όλα τα αρχεία Eagle CAD και τα σχήματα. Έχω συμπεριλάβει το σκίτσο Arduino, είναι πολύ απλό και προσπάθησα να καταστήσω εύκολη την κατανόηση και την τροποποίηση. Εάν έχετε οποιεσδήποτε ερωτήσεις, μη διστάσετε να τις ρωτήσετε, θα προσπαθήσω να τις απαντήσω. Αυτό είναι ένα ανοιχτό έργο, οι προτάσεις είναι ευπρόσδεκτες. Προσπαθώ να βάλω όσες περισσότερες πληροφορίες μπορούσα, αλλά έμαθα για τον διαγωνισμό Arduino αργά και ήθελα να το υποβάλω. Θα γράψω τα υπόλοιπα πολύ σύντομα, αφαιρώ επίσης τα SMD Components (αντιστάσεις και LED) και τα αντικαθιστώ με εξαρτήματα TH, το μόνο SMD Component είναι ο τρέχων αισθητήρας επειδή διατίθεται μόνο σε πακέτο SOIC, το αρχείο ZIP περιέχει αρχεία με τα στοιχεία TH.

Συνιστάται: