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

Ενότητα DIY Power Measurement για Arduino: 9 βήματα (με εικόνες)
Ενότητα DIY Power Measurement για Arduino: 9 βήματα (με εικόνες)

Βίντεο: Ενότητα DIY Power Measurement για Arduino: 9 βήματα (με εικόνες)

Βίντεο: Ενότητα DIY Power Measurement για Arduino: 9 βήματα (με εικόνες)
Βίντεο: EP20 HW Build - Измерение ВЧ-мощности своими руками 2024, Ιούλιος
Anonim
Ενότητα DIY Power Measurement για Arduino
Ενότητα DIY Power Measurement για Arduino
Ενότητα DIY Power Measurement για Arduino
Ενότητα DIY Power Measurement για Arduino
Ενότητα DIY Power Measurement για Arduino
Ενότητα DIY Power Measurement για Arduino

Γεια σε όλους, ελπίζω να τα πάτε τέλεια! Σε αυτό το διδακτικό θα σας δείξω πώς έφτιαξα αυτήν τη μονάδα μετρητή ισχύος/ Wattmeter για χρήση με έναν πίνακα Arduino. Αυτός ο μετρητής ισχύος μπορεί να υπολογίσει την ισχύ που καταναλώνεται από και φορτίο DC. Μαζί με την ισχύ, αυτή η μονάδα μπορεί επίσης να μας δώσει ακριβείς μετρήσεις τάσης και ρεύματος. Μπορεί εύκολα να μετρήσει χαμηλές τάσεις (γύρω στα 2V) και χαμηλά ρεύματα, έως 50 mA με σφάλμα όχι μεγαλύτερο από 20mA. Η ακρίβεια εξαρτάται από την επιλογή εξαρτημάτων με βάση τις απαιτήσεις σας.

Προμήθειες

  • IC LM358 διπλό OP-AMP
  • Βάση IC 8 ακίδων
  • Αντίσταση διακλάδωσης (8,6 milliOhms στη θήκη μου)
  • Αντιστάσεις: 100K, 10K, 2.2K, 1K (1/2watt)
  • Πυκνωτές: Κεραμικοί πυκνωτές 3 * 0.1uF
  • Veroboard ή μηδενική σανίδα
  • Βιδωτοί ακροδέκτες
  • Συγκολλητικό σίδερο και συγκόλληση
  • Arduino Uno ή οποιαδήποτε άλλη συμβατή πλακέτα
  • Οθόνη OLED
  • Σύνδεση καλωδίων ψωμιού

Βήμα 1: Συγκέντρωση των απαιτούμενων στοιχείων

Συγκέντρωση των απαιτούμενων στοιχείων
Συγκέντρωση των απαιτούμενων στοιχείων

Αυτό το έργο χρησιμοποιεί πολύ απλά και εύκολα στην απόκτηση εξαρτημάτων: περιλαμβάνουν αντιστάσεις, κεραμικούς πυκνωτές, ενισχυτή λειτουργίας και μια πλακέτα veroboard για πρωτότυπο.

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

Βήμα 2: Η αρχή της εργασίας

Η Αρχή Εργασίας
Η Αρχή Εργασίας
Η Αρχή Εργασίας
Η Αρχή Εργασίας
Η Αρχή Εργασίας
Η Αρχή Εργασίας
Η Αρχή Εργασίας
Η Αρχή Εργασίας

Η λειτουργία της μονάδας ισχύος βασίζεται σε δύο έννοιες της θεωρίας κυκλώματος και της βασικής ηλεκτρικής ενέργειας: Η έννοια του διαχωριστή τάσης για τη μέτρηση της τάσης εισόδου και ο νόμος του Ohm για τον υπολογισμό του ρεύματος που ρέει μέσω του κυκλώματος. Χρησιμοποιούμε μια αντίσταση διακλάδωσης για να δημιουργήσουμε μια πολύ μικρή πτώση τάσης σε αυτήν. Αυτή η πτώση τάσης είναι ανάλογη με την ποσότητα ρεύματος που ρέει μέσω της διακλάδωσης. Αυτή η μικρή τάση όταν ενισχυθεί από έναν λειτουργικό ενισχυτή μπορεί να χρησιμοποιηθεί ως είσοδος σε έναν μικροελεγκτή ο οποίος μπορεί να προγραμματιστεί για να μας δώσει την τρέχουσα τιμή. Ο λειτουργικός ενισχυτής χρησιμοποιείται ως ένας μη αναστρέψιμος ενισχυτής όπου το κέρδος καθορίζεται από τις τιμές της ανάδρασης αντίσταση R2 και R1. Η χρήση της μη αναστρέψιμης διαμόρφωσης μας επιτρέπει να έχουμε ένα κοινό σημείο αναφοράς μέτρησης. Για αυτό, το ρεύμα μετράται στη χαμηλή πλευρά του κυκλώματος. Για την εφαρμογή μου επέλεξα κέρδος 46 χρησιμοποιώντας 100K και 2.2K αντίσταση ως δίκτυο ανατροφοδότησης. Η μέτρηση της τάσης γίνεται χρησιμοποιώντας ένα κύκλωμα διαίρεσης τάσης που διαιρεί την τάση εισόδου σε αναλογία με το δίκτυο αντιστάσεων που χρησιμοποιείται.

Τόσο η τρέχουσα τιμή από το OP-Amp όσο και η τιμή τάσης από το διαχωριστικό δίκτυο μπορούν να τροφοδοτηθούν σε δύο αναλογικές εισόδους του arduino, ώστε να μπορούμε να υπολογίσουμε την ισχύ που καταναλώνεται από ένα φορτίο.

Βήμα 3: Φέρνοντας τα μέρη μαζί

Φέρνοντας τα μέρη μαζί
Φέρνοντας τα μέρη μαζί
Φέρνοντας τα μέρη μαζί
Φέρνοντας τα μέρη μαζί
Φέρνοντας τα μέρη μαζί
Φέρνοντας τα μέρη μαζί

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

Βήμα 4: Προσθήκη εξαρτημάτων για το δίκτυο αίσθησης τάσης

Προσθήκη εξαρτημάτων για το δίκτυο αίσθησης τάσης
Προσθήκη εξαρτημάτων για το δίκτυο αίσθησης τάσης
Προσθήκη εξαρτημάτων για το δίκτυο αίσθησης τάσης
Προσθήκη εξαρτημάτων για το δίκτυο αίσθησης τάσης
Προσθήκη εξαρτημάτων για το δίκτυο αίσθησης τάσης
Προσθήκη εξαρτημάτων για το δίκτυο αίσθησης τάσης

Για την ανίχνευση τάσης εισόδου χρησιμοποιώ δίκτυο διαχωριστή τάσης 10Κ και 1Κ. Πρόσθεσα επίσης έναν πυκνωτή 0,1 uF στην αντίσταση 1Κ για να εξομαλύνετε τις τάσεις. Το δίκτυο αίσθησης τάσης συγκολλάται κοντά στον ακροδέκτη εισόδου

Βήμα 5: Προσθήκη εξαρτημάτων για το δίκτυο Current Sense

Προσθήκη εξαρτημάτων για το δίκτυο Current Sense
Προσθήκη εξαρτημάτων για το δίκτυο Current Sense
Προσθήκη εξαρτημάτων για το δίκτυο Current Sense
Προσθήκη εξαρτημάτων για το δίκτυο Current Sense
Προσθήκη εξαρτημάτων για το δίκτυο Current Sense
Προσθήκη εξαρτημάτων για το δίκτυο Current Sense
Προσθήκη εξαρτημάτων για το δίκτυο Current Sense
Προσθήκη εξαρτημάτων για το δίκτυο Current Sense

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

Βήμα 6: Ολοκλήρωση των υπόλοιπων συνδέσεων και ολοκλήρωση της κατασκευής

Ολοκλήρωση των υπολειπόμενων συνδέσεων και ολοκλήρωση της κατασκευής
Ολοκλήρωση των υπολειπόμενων συνδέσεων και ολοκλήρωση της κατασκευής
Ολοκλήρωση των υπολειπόμενων συνδέσεων και ολοκλήρωση της κατασκευής
Ολοκλήρωση των υπολειπόμενων συνδέσεων και ολοκλήρωση της κατασκευής
Ολοκλήρωση των υπολειπόμενων συνδέσεων και ολοκλήρωση της κατασκευής
Ολοκλήρωση των υπολειπόμενων συνδέσεων και ολοκλήρωση της κατασκευής

Με τα δίκτυα αίσθησης τάσης και ρεύματος συνδεδεμένα και συγκολλημένα, ήρθε η ώρα να συγκολλήσουμε τις αρσενικές ακίδες κεφαλίδας και να κάνουμε τις απαραίτητες συνδέσεις εξόδου ισχύος και σήματος. Η μονάδα θα τροφοδοτείται από την τυπική τάση λειτουργίας 5 βολτ την οποία μπορούμε εύκολα να πάρουμε από έναν πίνακα arduino. Οι δύο έξοδοι αίσθησης τάσης θα συνδεθούν με τις αναλογικές εισόδους του arduino.

Βήμα 7: Σύνδεση της μονάδας με το Arduino

Σύνδεση της μονάδας με το Arduino
Σύνδεση της μονάδας με το Arduino
Σύνδεση της μονάδας με το Arduino
Σύνδεση της μονάδας με το Arduino
Σύνδεση της μονάδας με το Arduino
Σύνδεση της μονάδας με το Arduino
Σύνδεση της μονάδας με το Arduino
Σύνδεση της μονάδας με το Arduino

Με το module να είναι ολοκληρωμένο, ήρθε πλέον η ώρα να το συνδέσετε με ένα Arduino και να το χρησιμοποιήσετε. Για να δω τις τιμές, χρησιμοποίησα μια οθόνη OLED που χρησιμοποίησε το πρωτόκολλο I2C για επικοινωνία με το arduino. Οι παράμετροι που εμφανίζονται στην οθόνη είναι Τάση, Τρέχουσα και Ισχύς.

Βήμα 8: Κωδικός έργου και διάγραμμα κυκλώματος

Κωδικός έργου και διάγραμμα κυκλώματος
Κωδικός έργου και διάγραμμα κυκλώματος

Έχω επισυνάψει το διάγραμμα κυκλώματος και τον κωδικό της μονάδας ισχύος σε αυτό το βήμα (Προηγουμένως είχα επισυνάψει το αρχείο.ino και.txt που περιέχει τον κώδικα, αλλά κάποιο σφάλμα διακομιστή προκάλεσε τον κωδικό να είναι απρόσιτος ή μη αναγνώσιμος στους χρήστες, οπότε έγραψα ολόκληρο κωδικός σε αυτό το βήμα. Ξέρω ότι δεν είναι καλός τρόπος για να μοιραστείτε τον κωδικό:(). Μη διστάσετε να τροποποιήσετε αυτόν τον κώδικα σύμφωνα με τις απαιτήσεις σας. Ελπίζω ότι αυτό το έργο ήταν χρήσιμο για εσάς. Μοιραστείτε τα σχόλιά σας στα σχόλια. Ευχές!

#περιλαμβάνω

#περιλαμβάνω

#περιλαμβάνω

#περιλαμβάνω

#define οθόνη OLED_RESET 4 Adafruit_SSD1306 (OLED_RESET);

float val = 0;

float current = 0;

τάση πλωτήρα = 0;

float power = 0;

void setup () {

pinMode (A0, INPUT);

pinMode (A1, INPUT);

display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // αρχικοποίηση με το I2C addr 0x3C (για το 128x32) display.display ();

καθυστέρηση (2000).

// Διαγράψτε το buffer.

display.clearDisplay ();

display.setTextSize (1);

display.setCursor (0, 0);

display.setTextColor (ΛΕΥΚΟ);

Serial.begin (9600); // Για να δείτε τις τιμές στη σειριακή οθόνη

}

void loop () {

// λαμβάνοντας τον μέσο όρο για σταθερές ενδείξεις

για (int i = 0; i <20; i ++) {

current = current + analogRead (A0);

τάση = τάση + analogRead (A1); }

ρεύμα = (ρεύμα/20); ρεύμα = ρεύμα * 0,0123 * 5,0; // τιμή βαθμονόμησης, που πρέπει να αλλάξει ανάλογα με τα χρησιμοποιούμενα στοιχεία

τάση = (τάση/20)? τάση = τάση * 0,0508 * 5,0; // τιμή βαθμονόμησης, που πρέπει να αλλάξει ανάλογα με τα χρησιμοποιούμενα εξαρτήματα

ισχύς = τάση*ρεύμα?

// εκτύπωση των τιμών στη σειριακή οθόνη

Serial.print (τάση);

Serial.print ("");

Serial.print (τρέχον)

Serial.print ("");

Serial.println (ισχύς);

// εκτύπωση των τιμών στην οθόνη OLED

display.setCursor (0, 0);

display.print ("Τάση:");

display.print (τάση)?

display.println ("V");

display.setCursor (0, 10);

display.print ("Current:");

display.print (τρέχον)

display.println ("A");

display.setCursor (0, 20);

display.print ("Ισχύς:");

display.print (power)?

display.println ("W");

display.display ();

καθυστέρηση (500)? // ρυθμός ανανέωσης που καθορίζεται από την καθυστέρηση

display.clearDisplay ();

}

Συνιστάται: