Κύκλωμα DC Voltmeter με βάση το Arduino - Λεπτομέρειες κατασκευής και δοκιμές

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





Σε αυτήν την ανάρτηση, πρόκειται να κατασκευάσουμε ένα βολτόμετρο DC χρησιμοποιώντας το Arduino όπου οι μετρήσεις εμφανίζονται σε LCD 16x2.



Ο προτεινόμενος σχεδιασμός βολτόμετρου μπορεί να διαβάσει έως και 30V με ανοχή +/- 0,5 volt. Θα δούμε πώς λειτουργεί αυτή η ρύθμιση και θα διερευνήσουμε άλλες δυνατότητες που μπορούμε να πετύχουμε εκτός από τη μέτρηση της τάσης.



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

Αφήστε την προειδοποίηση να είναι πλευρά, ας εξερευνήσουμε πώς λειτουργεί.



Εδώ, χρησιμοποιούμε αναλογική σε ψηφιακή διαδικασία μετατροπής. Η τάση από οποιαδήποτε πηγή είναι αναλογική λειτουργία, οι ενδείξεις που εμφανίζονται σε οθόνη 16x2 LCD είναι μια ψηφιακή λειτουργία.

Η πρόκληση είναι η μετατροπή αυτών των αναλογικών λειτουργιών σε ψηφιακή λειτουργία. Ευτυχώς, το Arduino έχει λειτουργικότητα να διαβάζει αναλογικές συναρτήσεις και να τις μετατρέπει σε διακριτή λειτουργία.

Μικροελεγκτής Arduino εξοπλισμένος με αναλογικό σε ψηφιακό μετατροπέα 10 bit (ADC). Αυτό σημαίνει ότι το Arduino μπορεί να διαβάσει 2 ^ 10 = 1024 διακριτά επίπεδα τάσης.

Με άλλα λόγια, η τάση που εφαρμόζεται στον αναλογικό πείρο του Arduino λαμβάνεται ως δείγμα 1024 διακριτά επίπεδα τάσης σε σχέση με την τάση αναφοράς, η τιμή του δείγματος εμφανίζεται στην οθόνη LCD. Αυτή είναι η αρχή πίσω από αυτό το βολτόμετρο ή σχεδόν οποιοδήποτε ψηφιακό βολτόμετρο.

Ωστόσο, η εφαρμοζόμενη εξωτερική τάση δεν μετράται άμεσα από το Arduino. Η τάση μειώνεται με τη βοήθεια των διαχωριστών τάσης και κάποια μαθηματικά γίνονται στο πρόγραμμα για να γίνει η πραγματική ανάγνωση τάσης.

Πως δουλεύει

Το κύκλωμα αποτελείται από δύο αντιστάσεις, μία οθόνη LCD και ένα Arduino που είναι ο εγκέφαλος του ψηφιακού βολτόμετρου. Οι δύο αντιστάσεις λειτουργούν ως διαχωριστής τάσης, ο κόμβος του διαχωριστή συνδέεται με τον αναλογικό πείρο # Α0 του Arduino, ο οποίος διαβάζει την τάση εισόδου. Η γείωση συνδέεται μεταξύ του Arduino και της εξωτερικής πηγής τάσης.

Η ελάχιστη τάση που μπορεί να μετρηθεί με αυτό το βολτόμετρο είναι 0,1V, αυτό το κατώτατο όριο έχει ρυθμιστεί στο πρόγραμμα, έτσι ώστε να διαβάζει 0,00 volt μετά την αποσύνδεση της πηγής τάσης και δεν εμφανίζει ενδείξεις λόγω στατικής φόρτισης γύρω από τον αισθητήρα μέτρησης.

Πρωτότυπο συγγραφέα:

Αποτελέσματα δοκιμής DC Voltmeter με βάση το Arduino

Μην αντιστρέψετε την πολικότητα κατά τη μέτρηση της τάσης, δεν θα βλάψει το κύκλωμα, αλλά, δεν διαβάζει καμία τάση και εμφανίζει 0,00 V, έως ότου διορθώσετε την πολικότητα. Ρυθμίστε την αντίθεση της οθόνης LCD στο βέλτιστο επίπεδο περιστρέφοντας το ποτενσιόμετρο.

Βεβαιωθείτε ότι δεν εφαρμόζετε πηγή τάσης που θα μπορούσε να φτάσει πάνω από 30V, μπορεί να προκαλέσει ζημιά στην πλακέτα Arduino. Τεχνικά μπορείτε να αυξήσετε τη μέγιστη τάση μέτρησης αυτού του κυκλώματος αλλάζοντας τις τιμές της αντίστασης και τροποποιώντας το πρόγραμμα, αλλά για την απεικονιζόμενη ρύθμιση το 30V είναι περιορισμένο.

Για ακριβή ανάγνωση, επιλέξτε σταθερές αντιστάσεις με ελάχιστη τιμή ανοχής, οι αντιστάσεις παίζουν σημαντικό ρόλο στη βαθμονόμηση της έντασης τάσης.

Διάγραμμα κυκλώματος:

Κύκλωμα DC Voltmeter με βάση το Arduino

Η άλλη πιθανότητα αυτού του βολτόμετρου είναι ότι μπορούμε να τροποποιήσουμε το πρόγραμμα για να αυτοματοποιήσουμε ορισμένες εργασίες.

Για παράδειγμα, εντοπίστε την πλήρη τάση της μπαταρίας και αποσυνδέστε την μπαταρία από το φορτιστή της ή αποσυνδέστε την μπαταρία εάν η τάση πέσει κάτω από το προκαθορισμένο επίπεδο τάσης και ούτω καθεξής, αυτές οι εργασίες μπορούν να επιτευχθούν ακόμη και χωρίς οθόνη LCD. Ωστόσο, αυτό αποτελεί αντικείμενο άλλου άρθρου.

Πρόγραμμα:

//--------Program developed by R.Girish---------//
#include
LiquidCrystal lcd(12,11,5,4,3,2)
int analogInput = 0
float vout = 0.0
float vin = 0.0
float R1 = 100000
float R2 = 10000
int value = 0
void setup()
{
pinMode(analogInput, INPUT)
lcd.begin(16, 2)
lcd.print('DC VOLTMETER')
Serial.begin(9600)
}
void loop()
{
value = analogRead(analogInput)
vout = (value * 5.0) / 1024
vin = vout / (R2/(R1+R2))
if (vin<0.10) {
vin=0.0
}
lcd.setCursor(0, 1)
lcd.print('INPUT V= ')
lcd.print(vin)
delay(500)
}
//--------Program developed by R.Girish---------//

Ελέγξτε τις μετρήσεις με καλό βολτόμετρο / πολύμετρο.




Προηγούμενο: Κύκλωμα κλειδώματος ανάφλεξης αυτοκινήτου Bluetooth - Προστασία αυτοκινήτου χωρίς κλειδί Επόμενο: Κύκλωμα συναγερμού μαγνητικής πόρτας για ειδοποίηση εάν άνοιξε η πόρτα