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

Τρέχουσα παρακολούθηση μέσω Arduino Nano (I2C): 5 βήματα
Τρέχουσα παρακολούθηση μέσω Arduino Nano (I2C): 5 βήματα

Βίντεο: Τρέχουσα παρακολούθηση μέσω Arduino Nano (I2C): 5 βήματα

Βίντεο: Τρέχουσα παρακολούθηση μέσω Arduino Nano (I2C): 5 βήματα
Βίντεο: Winson WCS1800 WCS2750 WCS1500 Hall Effect Current Sensor with dispaly with over current protection 2024, Ιούλιος
Anonim
Τρέχουσα παρακολούθηση μέσω Arduino Nano (I2C)
Τρέχουσα παρακολούθηση μέσω Arduino Nano (I2C)

Γεια σας, Καλούς χαιρετισμούς.. !!

Εδώ εγώ (Somanshu Choudhary) για λογαριασμό των τεχνολογικών επιχειρήσεων Dcube που παρακολουθούν το ρεύμα χρησιμοποιώντας το Arduino nano, είναι μία από τις εφαρμογές του πρωτοκόλλου I2C για την ανάγνωση αναλογικών δεδομένων του τρέχοντα αισθητήρα TA12-200.

Βήμα 1: Επισκόπηση

ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ
ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ
  1. Ο TA12-200 είναι ένας αισθητήρας ρεύματος AC
  2. Σύνδεσμος DATASHEET:
  3. Αυτό το έργο μετρά τις τρέχουσες τιμές AC

Βήμα 2: Τι χρειάζεστε / Σύνδεσμοι

Τι χρειάζεστε / Σύνδεσμοι
Τι χρειάζεστε / Σύνδεσμοι
  1. Arduino Nano
  2. I²C Shield για Arduino Nano
  3. Καλώδιο USB τύπου A έως Micro Type B 6 πόδια μακριά
  4. Καλώδιο I²C
  5. Αισθητήρας ρεύματος I²C AC μέσω μίνι μονάδας ADC I12C 12-bit ADC121C
  6. CFL ή λαμπτήρας.
  7. Καλώδια PCV.

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

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

Βήμα 4: Προγραμματισμός / Κώδικας

Προγραμματισμός / Κώδικας
Προγραμματισμός / Κώδικας

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

void setup ()

{

// Διεύθυνση I2C του ADC121C021, 0x50 διασυνδεδεμένη με TA12-200

#define ADC_ADDR 0x50

// Εγγραφείτε στο I2c Bus ως κύριο

Wire.begin ();

// Έναρξη σειριακής επικοινωνίας για σειριακή έξοδο κονσόλας

Serial.begin (9600);

}

κενός βρόχος ()

{

// Ξεκινήστε τη μετάδοση με δεδομένη συσκευή στο δίαυλο I2C

Wire.beginTransmission (ADC_ADDR);

// Κλήση μητρώου αποτελεσμάτων μετατροπής, 0x00 (0)

Wire.write (0x00);

// καθυστέρηση (500)

// Αίτημα 2 byte

Wire.requestFrom (ADC_ADDR, 2)?

// Διαβάστε τα byte εάν είναι διαθέσιμα

εάν (Wire.available () == 2)

{

int msb = Wire.read ();

int lsb = Wire.read ();

// Τερματισμός μετάδοσης και απελευθέρωσης διαύλου I2C

Wire.endTransmission ();

// Υπολογισμός αξίας

int rawADC = msb * 256 + lsb;

rawADC = rawADC & 0x0fff;

// Έξοδος στην οθόνη

Serial.print ("ADC Value:");

Serial.println (rawADC);

}

αλλού

{

Serial.println ("Δεν υπάρχουν αρκετά byte διαθέσιμα στο σύρμα.");

}

καθυστέρηση (100)?

}

///////////////////////////////////////////////////////// /////////////////////////ΣΗΜΕΙΩΣΗ//////////////////////// ///////////////////////////////////////////////////////// //////////////////////////

// Αυτές οι τιμές είναι σε ενισχυτές mili

// Μπορείτε επίσης να βρείτε την τιμή rms του ρεύματος βρίσκοντας μέγιστη ανάγνωση και να τη διαιρέσετε με 1,414

Βήμα 5:

Για περαιτέρω απορίες Μη διστάσετε να επισκεφθείτε τον ιστότοπό μας:

www.dcubetechnologies.com

Συνιστάται: