การวัดกระแสไฟฟ้าในวงจรอิเล็กทรอนิกส์เป็นข้อกำหนดทั่วไปสำหรับโครงการที่เกี่ยวข้องกับเซ็นเซอร์มอเตอร์ไฟ LED และส่วนประกอบอื่น ๆ ในขณะที่ Arduino ไม่สามารถวัดกระแสได้โดยตรงคุณสามารถใช้ส่วนประกอบภายนอกเช่นเซ็นเซอร์ปัจจุบันหรือตัวต้านทานแบบแบ่งเพื่อวัดทางอ้อม บทช่วยสอนนี้จะแนะนำคุณตลอดกระบวนการวัดกระแสด้วย Arduino
สิ่งที่คุณต้องการ
- บอร์ด Arduino (เช่น uno, mega, nano)
- เซ็นเซอร์ปัจจุบัน (เช่น ACS712, INA219) หรือ ตัวต้านทาน
- เครื่องหั่นขนมปังและสายจัมเปอร์
- อุปกรณ์โหลด (เช่น LED, มอเตอร์หรือส่วนประกอบใด ๆ ที่คุณต้องการวัดกระแสไฟฟ้า)
- แหล่งจ่ายไฟ (5V หรือ 12V ขึ้นอยู่กับโหลดของคุณ)
- คอมพิวเตอร์ที่ติดตั้ง Arduino IDE
วิธีที่ 1: การใช้เซ็นเซอร์ปัจจุบัน
เซ็นเซอร์ปัจจุบันเช่น ACS712 หรือ INA219 ทำให้การวัดปัจจุบันง่ายขึ้นโดยการให้เอาต์พุตแบบอะนาล็อกหรือดิจิตอลตามสัดส่วนกับกระแส
1. การใช้เซ็นเซอร์ปัจจุบัน ACS712
เซ็นเซอร์ ACS712 วัดทั้งกระแส AC และ DC และส่งสัญญาณสัญญาณอะนาล็อกตามสัดส่วนกับกระแสที่ไหลผ่าน
แผนผังสายไฟ
ACS712 PIN | การเชื่อมต่อ |
---|---|
VCC | Arduino 5V |
gnd | Arduino Gnd |
ออก | Arduino Analog Pin (เช่น A0) |
IP+ | การเชื่อมต่อโหลดบวก |
IP- | การเชื่อมต่อโหลดเชิงลบ |
รหัสตัวอย่าง
#define sensorPin A0
const float sensitivity = 0.185; // Sensitivity for ACS712-05B (mV per A)
const int zeroPoint = 512; // Zero current output in ADC counts
void setup() {
Serial.begin(9600);
}
void loop() {
int sensorValue = analogRead(sensorPin);
float voltage = (sensorValue / 1023.0) * 5.0; // Convert to voltage
float current = (voltage - (zeroPoint / 1023.0) * 5.0) / sensitivity; // Calculate current
Serial.print("Current: ");
Serial.print(current, 3);
Serial.println(" A");
delay(1000);
}
2. การใช้เซ็นเซอร์ปัจจุบัน INA219
INA219 เป็นเซ็นเซอร์ปัจจุบันที่มีความแม่นยำสูงซึ่งสื่อสารกับ Arduino ผ่าน I2C ซึ่งเสนอการวัดทั้งในปัจจุบันและแรงดันไฟฟ้า
แผนผังสายไฟ
INA219 พิน | การเชื่อมต่อ |
---|---|
VCC | Arduino 5V |
gnd | Arduino Gnd |
SDA | Arduino SDA (เช่น A4 บน Uno) |
SCL | Arduino SCL (เช่น A5 บน Uno) |
vin+ | การเชื่อมต่อโหลดบวก |
vin- | การเชื่อมต่อโหลดเชิงลบ |
รหัสตัวอย่าง
ติดตั้ง ห้องสมุด Adafruit Ina219 ผ่านผู้จัดการห้องสมุด Arduino
#include <Wire.h>
#include <Adafruit_INA219.h>
Adafruit_INA219 ina219;
void setup() {
Serial.begin(9600);
if (!ina219.begin()) {
Serial.println("Failed to find INA219 chip");
while (1);
}
}
void loop() {
float current_mA = ina219.getCurrent_mA();
Serial.print("Current: ");
Serial.print(current_mA);
Serial.println(" mA");
delay(1000);
}
วิธีที่ 2: การใช้ตัวต้านทานแบบปัด
ตัวต้านทานแบบแบ่งเป็นตัวต้านทานความต้านทานต่ำที่วางไว้ในอนุกรมพร้อมโหลด ด้วยการวัดแรงดันไฟฟ้าตกผ่านตัวต้านทาน shunt คุณสามารถคำนวณกระแสไฟฟ้าโดยใช้กฎหมายของโอห์ม:
i = v / r
แผนผังสายไฟ
ส่วนประกอบ | การเชื่อมต่อ |
---|---|
ตัวต้านทาน | ในซีรีส์พร้อมโหลด |
หมุดอะนาล็อก Arduino | ข้ามตัวต้านทานปัด |
โหลด | เชื่อมต่อกับแหล่งจ่ายไฟ |
รหัสตัวอย่าง
#define shuntPin A0
const float shuntResistance = 0.1; // Resistance in ohms
void setup() {
Serial.begin(9600);
}
void loop() {
int sensorValue = analogRead(shuntPin);
float voltage = (sensorValue / 1023.0) * 5.0; // Convert to voltage
float current = voltage / shuntResistance; // Calculate current
Serial.print("Current: ");
Serial.print(current, 3);
Serial.println(" A");
delay(1000);
}
แนวทางปฏิบัติที่ดีที่สุดสำหรับการวัดที่แม่นยำ
- เลือกเซ็นเซอร์ที่เหมาะสม: เลือกเซ็นเซอร์ปัจจุบันหรือตัวต้านทานการแบ่งที่เหมาะสำหรับช่วงปัจจุบันที่คุณคาดหวัง
- สอบเทียบการตั้งค่าของคุณ: ปรับรหัสสำหรับเซ็นเซอร์เฉพาะหรือตัวต้านทาน shunt ของคุณเพื่อให้แน่ใจว่าการอ่านที่แม่นยำ
- ลดเสียงรบกวน: ใช้สายไฟสั้นและหนาและหลีกเลี่ยงสภาพแวดล้อมที่มีเสียงดังเพื่อลดข้อผิดพลาดในการวัด
- ตรวจสอบขีด จำกัด พลังงาน: ตรวจสอบให้แน่ใจว่าเซ็นเซอร์หรือตัวต้านทานปัดสามารถจัดการกระแสสูงสุดโดยไม่ต้องมีความร้อนสูงเกินไป
การประยุกต์ใช้การวัดปัจจุบัน
- ตรวจสอบการใช้แบตเตอรี่ในอุปกรณ์ IoT
- การวัดกระแสไฟฟ้าในมอเตอร์
- การทดสอบไฟ LED และส่วนประกอบอื่น ๆ
- การจัดการพลังงานในระบบฝังตัว
การแก้ไขปัญหา
- การอ่านที่ไม่ถูกต้อง: การเดินสายเซ็นเซอร์ตรวจสอบสองครั้งและค่าการสอบเทียบ
- ไม่มีผลลัพธ์: ตรวจสอบให้แน่ใจว่าโหลดเชื่อมต่อและกระแสไหล
- ค่าผันผวน: เพิ่มตัวเก็บประจุในแหล่งจ่ายไฟของเซ็นเซอร์เพื่อทำให้การอ่านมีเสถียรภาพ
บทสรุป
การวัดกระแสไฟฟ้าด้วย Arduino นั้นตรงไปตรงมาเมื่อใช้เครื่องมือที่เหมาะสมเช่นเซ็นเซอร์ปัจจุบันหรือตัวต้านทานปัด โดยทำตามคำแนะนำนี้คุณสามารถตรวจสอบกระแสในวงจรของคุณได้อย่างถูกต้องช่วยให้การจัดการพลังงานและการวินิจฉัยระบบดีขึ้น ทดลองกับเซ็นเซอร์ที่แตกต่างกันเพื่อค้นหาสิ่งที่เหมาะสมที่สุดสำหรับโครงการของคุณ!