Mạch nối tiếp, song song, định luật Kirchhoff và cầu phân áp (đo bằng ESP32)
Mạch nối tiếp và song song, cách tính điện trở tương đương, định luật Kirchhoff về dòng và áp, cầu phân áp và ảnh hưởng của tải, thí nghiệm đo chuỗi ba điện trở bằng ADC của ESP32.
Mạch điện thật hiếm khi chỉ có một điện trở. Các linh kiện được nối tiếp nhau, song song với nhau, hoặc kết hợp cả hai. Chỉ cần nắm vững hai cách nối này cùng hai định luật Kirchhoff là tính được dòng và áp ở mọi điểm của phần lớn mạch căn bản. Bài viết giải thích mạch nối tiếp, mạch song song, cách tính điện trở tương đương, định luật nút và định luật vòng, cầu phân áp và ảnh hưởng của tải, rồi làm thí nghiệm đo một chuỗi ba điện trở bằng ESP32 để thấy các định luật này đúng tới đâu trên mạch thật.
1. Mạch nối tiếp

- Các linh kiện nối tiếp nằm trên cùng một đường, nối đuôi nhau. Chỉ có một đường cho dòng đi nên dòng điện qua mọi linh kiện bằng nhau.
- Điện áp nguồn chia cho các linh kiện: U = U1 + U2 + …, và chia theo tỉ lệ điện trở: điện trở nào lớn gấp đôi thì "ăn" điện áp gấp đôi. Trong ví dụ, R2 = 2 kΩ nhận 6 V, R1 = 1 kΩ nhận 3 V.
- Điện trở tương đương cộng lại: Rtđ = R1 + R2 + …, luôn lớn hơn điện trở lớn nhất trong chuỗi.
- Hở một linh kiện là mất dòng cả chuỗi, giống dây đèn trang trí đời cũ: cháy một bóng tắt cả dây. Điện trở hạn dòng cho LED, điện trở mẫu trong mạch đo dòng đều là ứng dụng của mạch nối tiếp.
2. Mạch song song
- Các linh kiện song song được nối giữa cùng hai điểm, nên điện áp trên mọi nhánh bằng nhau. Ổ cắm trong nhà là song song: mọi thiết bị đều nhận 220 V và bật tắt độc lập.
- Dòng tổng chia cho các nhánh: I = I1 + I2 + …; nhánh có điện trở nhỏ nhận dòng lớn.
- Điện trở tương đương: 1/Rtđ = 1/R1 + 1/R2 + …. Với hai điện trở: Rtđ = R1 × R2 / (R1 + R2), luôn nhỏ hơn điện trở nhỏ nhất. Hai điện trở bằng nhau ghép song song cho một nửa giá trị; n điện trở bằng nhau cho R / n.
- Mẹo khi không có đúng giá trị: ghép hai điện trở 10 kΩ song song được 5 kΩ; ghép nối tiếp được 20 kΩ. Ghép song song còn chia đều công suất cho hai điện trở.
3. Hai định luật Kirchhoff

- Định luật nút (Kirchhoff 1): tổng dòng đi vào một nút bằng tổng dòng đi ra. Điện tích không tự sinh ra hay mất đi ở chỗ nối dây, giống nước ở ngã ba ống.
- Định luật vòng (Kirchhoff 2): đi hết một vòng kín, tổng các điện áp tăng (qua nguồn) bằng tổng các điện áp rơi (qua tải). Trong ví dụ, nguồn 5 V chia cho điện trở 3 V và LED 2 V.
- Hai định luật này cùng định luật Ohm đủ để giải mọi mạch điện trở. Mạch nối tiếp và song song ở trên chỉ là trường hợp đặc biệt: nối tiếp suy ra từ định luật nút (một đường, một dòng), song song suy ra từ định luật vòng (cùng hai điểm, cùng điện áp).
4. Cầu phân áp và ảnh hưởng của tải

Cầu phân áp là hai điện trở nối tiếp, lấy điện áp ở điểm giữa: Uout = Uin × R2 / (R1 + R2). Đây là mạch dùng nhiều nhất trong điện tử căn bản.
- Hạ tín hiệu 5 V xuống mức an toàn cho ESP32: R1 = 1 kΩ, R2 = 2 kΩ cho 5 × 2 / 3 ≈ 3,33 V.
- Đo điện áp lớn hơn 3,3 V bằng ADC: muốn đo ắc quy 12 V, dùng R1 = 30 kΩ, R2 = 7,5 kΩ cho 12 × 7,5 / 37,5 = 2,4 V ở chân ADC; chương trình nhân ngược lại hệ số 5.
- Đọc cảm biến kiểu điện trở (quang trở, nhiệt điện trở): thay một điện trở của cầu bằng cảm biến, điện áp giữa cầu đổi theo ánh sáng hay nhiệt độ (bài 10 của loạt bài).
Công thức chỉ đúng khi tải nối vào điểm giữa lấy rất ít dòng. Tải song song với R2 làm điện trở phía dưới nhỏ đi và Uout tụt xuống, như bảng trong hình. Quy tắc: điện trở vào của tải nên lớn hơn R2 ít nhất 10 lần. Chân ADC của ESP32 có trở kháng vào lớn nên đọc cầu phân áp vài chục kΩ được; nhưng cầu phân áp không dùng để cấp nguồn cho mạch khác (ví dụ hạ 12 V xuống 5 V nuôi module), việc đó cần mạch ổn áp.
Chọn giá trị điện trở là cân bằng giữa hai điều: điện trở nhỏ thì tốn dòng (cầu 1 kΩ + 1 kΩ trên 5 V tốn 2,5 mA liên tục, đáng kể khi chạy pin); điện trở lớn thì dễ nhiễu và dễ bị tải làm sai. Với ADC, tổng khoảng 10 kΩ đến 100 kΩ là hợp lý.
5. Thí nghiệm: đo chuỗi ba điện trở bằng ESP32
Ba điện trở 1 kΩ, 2,2 kΩ và 4,7 kΩ nối tiếp giữa 3V3 và GND. ESP32 đo điện áp ở hai nút giữa, đo điện áp 3V3 qua một cầu phân áp, rồi tính điện áp và dòng trên từng điện trở. Sau đó cắm thêm một điện trở song song để thấy dòng chia nhánh.
Chuẩn bị
- ESP32 DevKit V1, breadboard, dây cắm.
- Điện trở: 1 kΩ, 2,2 kΩ, hai cái 4,7 kΩ, hai cái 10 kΩ. Nếu có đồng hồ vạn năng, đo từng điện trở và sửa các hằng R1 đến R4 trong chương trình.

| Chân ESP32 | Nối tới | Ghi chú |
|---|---|---|
| 3V3 | Đầu trên của R1 và của cầu 10 kΩ / 10 kΩ | Nguồn của cả mạch |
| GPIO32 | Nút A (giữa R1 và R2) | Đo UA |
| GPIO33 | Nút B (giữa R2 và R3) | Đo UB |
| GPIO35 | Điểm giữa cầu 10 kΩ / 10 kΩ | Đo Vcc / 2, vì ADC không đo trực tiếp được 3,3 V |
| GND | Đầu dưới của R3, R4 và cầu 10 kΩ | Đất chung |
Chương trình
/*
PYWORLD.VN - Đo mạch ba điện trở nối tiếp bằng ESP32: kiểm chứng Kirchhoff, cầu phân áp, điện trở song song
Chuỗi: 3V3 -> R1 1 kΩ -> nút A (GPIO32) -> R2 2,2 kΩ -> nút B (GPIO33) -> R3 4,7 kΩ -> GND
Đo 3V3 qua cầu phân áp 10 kΩ / 10 kΩ vào GPIO35. Cắm thêm R4 4,7 kΩ song song với R3 để thử mạch song song
*/
#define CHAN_A 32
#define CHAN_B 33
#define CHAN_VCC 35
const float R1 = 1000.0; // Ôm; đo lại bằng đồng hồ vạn năng rồi sửa cho đúng
const float R2 = 2200.0;
const float R3 = 4700.0;
const float R4 = 4700.0; // Điện trở cắm thêm song song với R3 (nếu có)
const float HE_SO_VCC = 2.0; // Cầu phân áp 10 kΩ / 10 kΩ chia đôi điện áp 3V3
const int SO_LAN_DOC = 64;
float docTrungBinhMv(uint8_t chan) {
uint32_t tong = 0;
for (int i = 0; i < SO_LAN_DOC; i++) {
tong += analogReadMilliVolts(chan);
}
return (float)tong / SO_LAN_DOC;
}
void setup() {
Serial.begin(115200);
delay(500);
analogReadResolution(12);
Serial.println("Mach R1-R2-R3 noi tiep tu 3V3 xuong GND");
}
void loop() {
float vcc = docTrungBinhMv(CHAN_VCC) * HE_SO_VCC;
float ua = docTrungBinhMv(CHAN_A);
float ub = docTrungBinhMv(CHAN_B);
// Điện áp trên từng điện trở; định luật Kirchhoff về điện áp: U1 + U2 + U3 = Vcc
float u1 = vcc - ua;
float u2 = ua - ub;
float u3 = ub;
// Dòng qua từng điện trở (mV chia Ôm ra mA); mạch nối tiếp nên ba dòng phải gần bằng nhau
float i1 = u1 / R1;
float i2 = u2 / R2;
float i3 = u3 / R3;
// Điện trở tương đương phía dưới nút B, tính từ dòng thật đi qua R1
float rDuoi = u3 / i1;
float rSongSong = R3 * R4 / (R3 + R4);
// Cầu phân áp lý thuyết khi chỉ có R3: UB = Vcc × R3 / (R1 + R2 + R3)
float ubLyThuyet = vcc * R3 / (R1 + R2 + R3);
Serial.printf("Vcc=%.0f mV U1=%.0f U2=%.0f U3=%.0f (tong %.0f mV)\n", vcc, u1, u2, u3, u1 + u2 + u3);
Serial.printf("I1=%.3f I2=%.3f I3(neu chi co R3)=%.3f mA\n", i1, i2, i3);
Serial.printf("R duoi nut B = U3/I1 = %.0f ohm (R3 = %.0f, R3//R4 = %.0f) | UB ly thuyet chi R3 = %.0f mV\n",
rDuoi, R3, rSongSong, ubLyThuyet);
Serial.println();
delay(2000);
}
- Điện áp 3V3 được đo gián tiếp: cầu 10 kΩ / 10 kΩ chia đôi, chương trình nhân lại với 2. Đây là một ứng dụng của cầu phân áp, vì ADC của ESP32 chỉ đo tốt tới khoảng 3,1 V.
- U1 = Vcc − UA, U2 = UA − UB, U3 = UB là điện áp trên từng điện trở; tổng của chúng bằng Vcc đúng như định luật vòng.
- I1, I2, I3 tính theo định luật Ohm trên từng điện trở. Ba dòng phải gần bằng nhau vì mạch nối tiếp (định luật nút).
rDuoi = U3 / I1là điện trở tương đương "nhìn thấy" bên dưới nút B, tính từ dòng thật đi qua R1. Khi chỉ có R3, nó gần bằng 4,7 kΩ; khi cắm thêm R4, nó gần bằng R3 // R4 = 2,35 kΩ.
Kết quả mong đợi

- Khi chỉ có ba điện trở, ba dòng chênh nhau dưới khoảng 1 %: phần chênh đến từ sai số điện trở và sai số ADC.
- Khi cắm R4, điện trở phía dưới giảm còn một nửa nên dòng toàn mạch tăng, UB tụt từ khoảng 1,97 V xuống 1,40 V. Dòng qua R3 tính được chỉ còn một nửa I1: nửa còn lại đi qua R4, đúng định luật nút.
- Dòng "UB ly thuyet chi R3" cho thấy công thức cầu phân áp đúng khi chưa có tải và sai khi có thêm nhánh song song, đúng như phần ảnh hưởng của tải ở mục 4.
6. Xử lý lỗi thường gặp
| Hiện tượng | Nguyên nhân thường gặp | Cách xử lý |
|---|---|---|
| Vcc đọc khoảng 1650 mV | Hằng HE_SO_VCC bị sửa thành 1, hoặc GPIO35 nối thẳng vào 3V3 thay vì điểm giữa cầu | Giữ HE_SO_VCC = 2; GPIO35 phải nối vào điểm giữa hai điện trở 10 kΩ |
| U1 hoặc U2 âm | Nhầm thứ tự nút A và nút B, hoặc nhầm GPIO32 với GPIO33 | Đối chiếu bảng nối dây |
| Ba dòng lệch nhau trên 5 % | Giá trị điện trở trong chương trình khác giá trị thật | Đo từng điện trở bằng đồng hồ vạn năng, sửa R1 đến R4 |
| Số đo nhảy | Dây lỏng, breadboard tiếp xúc kém | Cắm chặt; tăng SO_LAN_DOC |
7. Tự kiểm tra
- Ba điện trở 1 kΩ, 2 kΩ, 3 kΩ nối tiếp vào 12 V. Dòng và điện áp trên điện trở 3 kΩ? (Đáp án: 12 / 6 kΩ = 2 mA; 2 mA × 3 kΩ = 6 V.)
- Hai điện trở 4,7 kΩ và 4,7 kΩ song song có điện trở tương đương bao nhiêu? (Đáp án: 2,35 kΩ.)
- Muốn đưa điện áp pin 2S tối đa 8,4 V vào ADC không quá 2,8 V, chọn R1 = 20 kΩ thì R2 bao nhiêu? (Đáp án: 8,4 × R2 / (20 + R2) = 2,8, suy ra R2 = 10 kΩ.)
8. Xem thêm
- Đọc ADC trên ESP32 và đo điện áp pin 18650 bằng cầu phân áp.
- Mức logic 3,3 V và 5 V: dùng cầu phân áp để hạ tín hiệu 5 V.
- Cảm biến ánh sáng: quang trở, photodiode, BH1750: quang trở đọc qua cầu phân áp.
- Bài trước của loạt điện tử căn bản: điện áp, dòng điện và định luật Ohm.
Xem thêm