מדידת מתח עם הארדואינו

Measuring Voltage with the Arduino

Arduino הוא בקר מיקרו רב-תכליתי המסוגל למדוד מתח באמצעות הממיר המובנה שלו אנלוגי-דיגיטלי (ADC). יכולת זו חיונית ליישומים כמו ניטור רמות הסוללה, חישת אותות קלט ומדידת תפוקות חיישנים. מדריך זה ינחה אתכם בתהליך מדידת המתח עם ארדואינו.


מה תצטרך

  1. מועצת ארדואינו (למשל, אונו, מגה, ננו)
  2. מחלק מתח (אם מדידת המתח הגבוה מ- 5V)
  3. חוטי לחם וגשר
  4. מקור מתח למדידה (למשל, סוללה, חיישן או אספקת חשמל מתכווננת)
  5. מחשב עם Arduino IDE המותקן

שלב 1: הבנת מדידת מתח על ארדואינו

ADC של Arduino ממירה מתחים אנלוגיים (0V עד 5V ברוב הלוחות) לערך דיגיטלי של 10 סיביות. המשמעות היא ש- ADC מספק ערך בין 0 ל- 1023, כאשר 0 תואם 0V ו- 1023 תואם ל- 5V (או מתח ההתייחסות).

נוסחת מפתח

כדי לחשב את מתח הכניסה:

Voltage = (ADC_Value / 1023.0) * Reference_Voltage

פֶּתֶק: עבור מרבית לוחות Arduino, מתח ההתייחסות המוגדר כברירת מחדל הוא 5V. אם משתמשים בגרסת 3.3V, התאם את הנוסחה בהתאם.


שלב 2: מדידת מתח ישיר

עבור מתחים עד 5V, באפשרותך לחבר את מקור המתח ישירות לסיכה אנלוגית.

תִיוּל

רְכִיב סיכת ארדואינו
מקור מתח (+) A0
מקור מתח (-) GND

קוד דוגמה

#define analogPin A0

void setup() {
  Serial.begin(9600);
}

void loop() {
  int adcValue = analogRead(analogPin); // Read ADC value
  float voltage = (adcValue / 1023.0) * 5.0; // Convert to voltage

  Serial.print("Voltage: ");
  Serial.print(voltage, 2); // Print voltage with 2 decimal places
  Serial.println(" V");

  delay(1000); // Update every second
}

שלב 3: מדידת מתחים גבוהים יותר עם מחלק מתח

כדי למדוד מתחים הגבוהים מ- 5V, השתמש א מחלק מתח כדי לגודל את מתח הכניסה.

פורמולה של מחלקת מתח

מחלק המתח מגדיל את מתח הכניסה באמצעות שני נגדים:

Vout = Vin * (R2 / (R1 + R2))

לדוגמה, למדוד עד 12 וולט:

  • R1 = 10K אוהם
  • R2 = 10K אוהם
  • גורם קנה מידה = 0.5 (vout = vin / 2)

תִיוּל

רְכִיב קֶשֶׁר
מקור מתח (+) כניסת מחלקת מתח R1
מחלק מתח R1/R2 צומת Arduino A0
מקור מתח (-) GND

קוד דוגמה

#define analogPin A0
const float R1 = 10000.0; // Resistor R1 value in ohms
const float R2 = 10000.0; // Resistor R2 value in ohms

void setup() {
  Serial.begin(9600);
}

void loop() {
  int adcValue = analogRead(analogPin); // Read ADC value
  float voltage = (adcValue / 1023.0) * 5.0; // Voltage at A0

  // Scale up to actual input voltage
  float inputVoltage = voltage * ((R1 + R2) / R2);

  Serial.print("Input Voltage: ");
  Serial.print(inputVoltage, 2); // Print with 2 decimal places
  Serial.println(" V");

  delay(1000); // Update every second
}

שלב 4: שימוש במתח התייחסות חיצוני

למדידות מדויקות יותר, באפשרותך להשתמש במתח עזר חיצוני על ידי חיבורו לסיכת AREF.

שלבים להגדרת התייחסות חיצונית

  1. חבר מתח התייחסות יציב (למשל, 3.3 וולט) לסיכת AREF.
  2. בקוד, קבעו את מתח ההתייחסות:
analogReference(EXTERNAL);
  1. התאם את החישובים בקוד למתח ההתייחסות החדש.

שלב 5: שיטות עבודה מומלצות למדידות מדויקות

  1. הימנע מרעש: השתמש בחוטים קצרים והארקה נכונה כדי להפחית את הרעש החשמלי.
  2. כיול את ההתקנה שלך: אמת קריאות עם מולטימטר כדי להבטיח דיוק.
  3. הגן על הארדואינו: השתמש בנגדים או דיודות כדי להגן על סיכת הקלט האנלוגית מפני מתח יתר.
  4. סנן אותות רועשים: הוסף קבלים על פני הכניסה כדי להחליק את תנודות המתח.

יישומים של מדידת מתח

  1. ניטור רמות הסוללה
  2. חישה אותות אנלוגיים מחיישנים
  3. מדידת מתחי אספקת חשמל
  4. פרויקטים מולטימטר DIY

פתרון בעיות

  1. קריאות שגויות:

    • אמת את החיווט והבטיח ערכי נגדים נכונים עבור מחלק המתח.
    • בדוק את מתח ההתייחסות בחישובים.
  2. ערכים משתנים:

    • הוסף קבלים (10μF או 100μF) על פני הכניסה.
  3. הגנה מפני מתח:

    • וודא כי מתח הכניסה אינו עולה על המגבלות המחושבות של מחלק המתח.

מַסְקָנָה

מדידת המתח עם ארדואינו היא פשוטה ושימושית מאוד לפרויקטים רבים של אלקטרוניקה. בין אם אתה עוקב אחר רמות הסוללה או מתממשק לחיישנים, הבנת מדידת המתח פותחת מגוון רחב של אפשרויות. התנסו בהגדרות שונות ושילבו מדידת מתח בפרויקטים שלכם!

השאירו תגובה

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.