Điện áp, dòng điện, điện trở và định luật Ohm: hiểu bằng ví dụ và đo bằng ESP32

Điện áp, dòng điện, điện trở là gì, đơn vị và tiền tố, định luật Ohm U = I × R với ví dụ, đường U–I của điện trở và LED, thí nghiệm kiểm chứng định luật Ohm bằng DAC và ADC của ESP32.

Mọi mạch điện tử đều được mô tả bằng ba đại lượng: điện áp, dòng điện và điện trở. Định luật Ohm nối ba đại lượng này bằng một công thức rất ngắn, U = I × R, nhưng dùng được ở gần như mọi bài sau: tính điện trở cho LED, chọn điện trở base cho transistor, tính dòng của một cầu phân áp. Bài viết giải thích từng đại lượng bằng mô hình nước, đơn vị và tiền tố hay gặp, ba ví dụ tính, đường U–I của điện trở và của LED, rồi làm thí nghiệm kiểm chứng định luật Ohm bằng ESP32: board tự tạo điện áp, tự đo và tự tính điện trở.

1. Điện áp, dòng điện, điện trở là gì

Mô hình nước bên trái: bình nước cao nối với bình thấp qua một ống có đoạn hẹp, chênh lệch mực nước ứng với điện áp, lưu lượng ứng với dòng điện, ống hẹp ứng với điện trở, máy bơm ứng với pin; bên phải: mạch gồm pin 3 V và điện trở 1 kΩ, dòng điện 3 mA đi từ cực dương qua điện trở về cực âm
Mô hình nước giúp hình dung ba đại lượng điện (hình tự vẽ).

Dòng điện (I)

  • Dòng điện là dòng các hạt mang điện chuyển động có hướng. Trong dây kim loại, đó là các electron tự do. Đơn vị là ampe (A): 1 A nghĩa là mỗi giây có khoảng 6,24 × 1018 electron đi qua một mặt cắt của dây.
  • Theo quy ước, chiều dòng điện đi từ cực dương của nguồn qua mạch ngoài về cực âm. Electron thật ra chạy ngược lại, nhưng mọi sơ đồ và công thức đều dùng chiều quy ước, nên chỉ cần nhớ chiều quy ước.
  • Dòng điện chỉ chảy khi có một vòng kín. Hở một chỗ là mất dòng ở cả vòng, giống ống nước bị chặn.

Điện áp (U)

  • Điện áp (hiệu điện thế) là độ chênh lệch "mức điện" giữa hai điểm, thứ đẩy dòng điện đi qua mạch, giống chênh lệch mực nước đẩy nước chảy. Đơn vị là vôn (V).
  • Điện áp luôn là của hai điểm. Khi nói "chân này 3,3 V" là đang ngầm so với điểm đất chung của mạch (GND, coi là 0 V).
  • Pin, nguồn adapter, cổng USB là nguồn điện áp: chúng giữ một điện áp gần như cố định giữa hai cực, như máy bơm giữ chênh lệch mực nước.

Điện trở (R)

  • Điện trở là mức cản trở dòng điện, đơn vị ôm (Ω). Vật dẫn (đồng, nhôm) có điện trở rất nhỏ; vật cách điện (nhựa, gốm, không khí khô) có điện trở rất lớn.
  • Điện trở của một đoạn dây tính bằng R = ρ × L / S: dây càng dài càng lớn, càng to càng nhỏ. Ví dụ dây đồng (ρ ≈ 1,72 × 10−8 Ω·m) dài 1 m, tiết diện 0,5 mm² có R ≈ 0,034 Ω; dòng 10 A chạy qua sẽ làm mất khoảng 0,34 V trên mỗi mét dây.
  • Linh kiện "điện trở" được chế tạo để có một giá trị xác định (220 Ω, 10 kΩ…) dùng để hạn dòng, chia áp. Bài 9 của loạt bài nói kỹ về cách đọc và chọn điện trở.

2. Định luật Ohm: U = I × R

Tam giác định luật Ohm với U ở trên, I và R ở dưới cùng ba công thức U bằng I nhân R, I bằng U chia R, R bằng U chia I; ba ví dụ: 5 V qua 220 Ω cho dòng 22,7 mA, 20 mA qua 150 Ω cho điện áp 3 V, 12 V và 0,5 A cho điện trở 24 Ω; bảng tiền tố mA, µA, kΩ, MΩ, mV
Tam giác định luật Ohm, ba ví dụ và các tiền tố hay gặp (hình tự vẽ).
  • Định luật Ohm nói: dòng điện qua một điện trở tỉ lệ thuận với điện áp đặt vào hai đầu nó, U = I × R. Biết hai đại lượng là tính được đại lượng thứ ba; tam giác giúp nhớ: che đại lượng cần tìm, phần còn lại cho biết nhân hay chia.
  • Luôn đổi về đơn vị gốc (V, A, Ω) trước khi tính. Một mẹo hay dùng: V chia kΩ ra mA, ví dụ 5 V / 1 kΩ = 5 mA; mA nhân kΩ ra V.
  • Định luật áp dụng cho từng linh kiện (dùng điện áp hai đầu linh kiện đó và dòng qua chính nó), hoặc cho cả một đoạn mạch nếu dùng điện trở tương đương của đoạn mạch (bài 4).

Ví dụ thực tế: chân GPIO của ESP32 ở mức cao khoảng 3,3 V. Nếu nối thẳng một điện trở 330 Ω xuống GND, dòng qua chân là 3,3 / 330 = 10 mA, nằm trong mức chân chịu được. Nếu lỡ nối điện trở 33 Ω, dòng sẽ là 100 mA: quá sức chân GPIO và dễ làm hỏng chip.

3. Đường U–I: linh kiện nào tuân theo định luật Ohm

Đồ thị dòng điện theo điện áp từ 0 đến 3 V: điện trở 1 kΩ và 330 Ω là hai đường thẳng qua gốc tọa độ, đường 330 Ω dốc hơn; LED đỏ gần như không có dòng dưới 1,6 V rồi dòng tăng vọt lên 8 mA ở khoảng 1,95 V
Đường U–I của hai điện trở và của một LED đỏ (hình tự vẽ, LED theo mô hình gần đúng).
  • Vẽ dòng điện theo điện áp sẽ được đường U–I (đặc tuyến vôn-ampe). Với điện trở, đó là đường thẳng đi qua gốc tọa độ; độ dốc là 1/R, điện trở càng nhỏ đường càng dốc.
  • Nhiều linh kiện không tuân theo định luật Ohm: diode, LED, transistor. LED đỏ gần như không dẫn khi điện áp dưới khoảng 1,6 V, rồi chỉ tăng thêm vài phần mười vôn là dòng tăng gấp hàng chục lần. Vì vậy không thể "cấp đúng 2 V cho LED", mà phải dùng một điện trở nối tiếp để giới hạn dòng (bài 16).
  • Ngay cả điện trở cũng chỉ tuân theo định luật Ohm khi nhiệt độ gần như không đổi. Dây tóc bóng đèn sợi đốt nguội có điện trở nhỏ hơn khoảng mười lần so với khi đang sáng.

4. Thí nghiệm: kiểm chứng định luật Ohm bằng ESP32

Thí nghiệm dùng bộ chuyển đổi số sang tương tự (DAC) có sẵn trên ESP32 để tạo nhiều mức điện áp khác nhau, dùng hai chân ADC để đo điện áp ở hai nút, rồi tính dòng điện và điện trở theo định luật Ohm. Nếu định luật đúng, điện trở tính ra ở mọi mức điện áp phải gần như bằng nhau.

Chuẩn bị

  • ESP32 DevKit V1 (dòng ESP32 thường có DAC ở GPIO25, GPIO26; ESP32-S3, ESP32-C3 không có DAC).
  • Breadboard và dây cắm.
  • Một điện trở 1 kΩ làm "điện trở mẫu" và một điện trở 2,2 kΩ làm "điện trở cần đo" (có thể thay bằng giá trị bất kỳ từ khoảng 470 Ω đến 10 kΩ). Đồng hồ vạn năng nếu có, để đo lại điện trở mẫu.
Sơ đồ: GPIO25 của ESP32 nối tới nút A, GPIO32 cũng nối vào nút A; từ nút A qua điện trở mẫu 1 kΩ tới nút B, GPIO34 nối vào nút B; từ nút B qua điện trở cần đo khoảng 2,2 kΩ xuống GND; chương trình tính I bằng UA trừ UB chia R mẫu và R bằng UB chia I
Sơ đồ thí nghiệm định luật Ohm (hình tự vẽ).
Chân ESP32Nối tớiVai trò
GPIO25Nút A (một đầu điện trở mẫu)DAC: tạo điện áp 0 đến khoảng 2,9 V
GPIO32Nút AADC: đo điện áp UA
GPIO34Nút B (giữa hai điện trở)ADC: đo điện áp UB
GNDĐầu dưới của điện trở cần đoĐất chung, 0 V

Chương trình

/*
  PYWORLD.VN - Kiểm chứng định luật Ohm bằng ESP32: DAC tạo điện áp, ADC đo điện áp hai đầu điện trở
  Nối: GPIO25 (DAC) -> nút A (đọc ở GPIO32) -> R mẫu 1 kΩ -> nút B (đọc ở GPIO34) -> R cần đo -> GND
  Mở Serial Monitor 115200, gõ "s" để quét lại
*/

#define CHAN_DAC 25
#define CHAN_A 32
#define CHAN_B 34

const float R_MAU = 1000.0;      // Ôm, điện trở mẫu (đo bằng đồng hồ vạn năng rồi sửa số này cho đúng)
const int SO_LAN_DOC = 32;       // Số lần đọc ADC để lấy trung bình, giảm nhiễu
const float NGUONG_MV = 100.0;   // Dưới khoảng 100 mV, ADC của ESP32 kém chính xác nên bỏ qua khi tính
const int DAC_LON_NHAT = 225;    // Khoảng 2,9 V, còn trong vùng đo tốt của ADC

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;
}

// Quét DAC từ 0 tới DAC_LON_NHAT, mỗi bước tính dòng qua R mẫu và điện trở của R cần đo
void quet() {
  float tongUI = 0, tongII = 0;
  Serial.println();
  Serial.println(" DAC  UA(mV)  UB(mV)    I(mA)  R=U/I(ohm)");
  for (int dac = 0; dac <= DAC_LON_NHAT; dac += 25) {
    dacWrite(CHAN_DAC, dac);
    delay(30);                                 // Chờ điện áp ổn định
    float ua = docTrungBinhMv(CHAN_A);
    float ub = docTrungBinhMv(CHAN_B);
    float dongMa = (ua - ub) / R_MAU;          // Định luật Ohm cho R mẫu: I = U / R (mV chia Ôm ra mA)
    if (ub >= NGUONG_MV && dongMa > 0) {
      float r = ub / dongMa;                   // Định luật Ohm cho R cần đo: R = U / I
      tongUI += ub * dongMa;
      tongII += dongMa * dongMa;
      Serial.printf("%4d %7.0f %7.0f %8.3f %10.0f\n", dac, ua, ub, dongMa, r);
    } else {
      Serial.printf("%4d %7.0f %7.0f %8.3f     bo qua\n", dac, ua, ub, dongMa);
    }
  }
  dacWrite(CHAN_DAC, 0);
  if (tongII > 0) {
    // Độ dốc của đường U theo I (bình phương tối thiểu, đi qua gốc tọa độ) chính là điện trở
    Serial.printf("Do doc duong U-I: R can do = %.0f ohm\n", tongUI / tongII);
  }
}

void setup() {
  Serial.begin(115200);
  delay(500);
  analogReadResolution(12);
  Serial.println("Kiem chung dinh luat Ohm: R mau 1000 ohm noi tiep R can do");
  quet();
}

void loop() {
  if (Serial.available()) {
    char c = Serial.read();
    if (c == 's') {
      quet();
    }
  }
}
  • Dòng điện qua mạch được tính trên điện trở mẫu đã biết: I = (UA − UB) / R mẫu. Vì hai điện trở nối tiếp nên đây cũng là dòng qua điện trở cần đo.
  • Điện trở cần đo tính bằng R = UB / I ở từng mức điện áp. Cuối mỗi lần quét, chương trình tính độ dốc của đường U–I bằng phương pháp bình phương tối thiểu (đường đi qua gốc): R = Σ(U × I) / Σ(I²).
  • Mỗi điện áp đọc 32 lần rồi lấy trung bình để giảm nhiễu. Mức dưới 100 mV bị bỏ qua vì ADC của ESP32 đo kém ở vùng gần 0 V.
  • Sửa hằng R_MAU theo số đo thật của điện trở mẫu bằng đồng hồ vạn năng thì kết quả chính xác hơn, vì điện trở thông dụng có sai số 1 % hoặc 5 %.

Kết quả mong đợi

Hình minh họa Serial Monitor: bảng quét DAC từ 0 tới 225, điện áp UA từ 0 tới khoảng 2854 mV, UB từ 0 tới khoảng 1956 mV, dòng từ 0 tới 0,898 mA, điện trở tính được quanh 2170 đến 2190 ohm ở hầu hết các mức, dòng cuối cho độ dốc đường U-I là 2179 ohm
Kết quả mong đợi trên Serial Monitor (hình minh họa theo công thức của chương trình; số đo là ví dụ).

Khi điện áp tăng gấp đôi, dòng điện cũng gần như tăng gấp đôi và điện trở tính ra gần như không đổi: đó chính là định luật Ohm. Ở mức điện áp thấp (dòng DAC 25), sai lệch lớn hơn vì sai số vài mV của ADC chiếm tỉ lệ lớn so với điện áp đo. So số cuối cùng với số đo của đồng hồ vạn năng; chênh dưới khoảng 2 % là hợp lý.

Thử thay điện trở cần đo bằng một LED (chân dài về phía nút B): điện trở "tính ra" sẽ thay đổi mạnh theo điện áp, đúng như đường U–I của LED ở mục 3.

5. Xử lý lỗi thường gặp

Hiện tượngNguyên nhân thường gặpCách xử lý
UA luôn gần 0Nối nhầm chân DAC (không phải GPIO25), hoặc dùng board không có DACKiểm tra dây; dùng ESP32 thường (DevKit V1)
UA và UB bằng nhauĐiện trở mẫu bị nối tắt, hoặc nút B chưa nối điện trở cần đo xuống GNDKiểm tra hai điện trở cắm đúng hàng của breadboard
UB bằng 0, mọi dòng "bo qua"Điện trở cần đo bị nối tắt xuống GND, hoặc GPIO34 cắm sai hàngĐo lại bằng đồng hồ vạn năng; dò lại dây
R tính ra lệch nhiều so với đồng hồR_MAU khác giá trị thật; điện trở cần đo quá lớn (trên 20 kΩ) khiến dòng rất nhỏSửa R_MAU; chọn điện trở cần đo cùng cỡ với điện trở mẫu
Số đo nhảy nhiềuDây lỏng, breadboard tiếp xúc kémCắm chặt; thử hàng lỗ khác

6. Tự kiểm tra

  1. Một bóng đèn xe 12 V có điện trở khi sáng là 6 Ω. Dòng qua đèn bao nhiêu? (Đáp án: 12 / 6 = 2 A.)
  2. Dòng 15 mA chạy qua điện trở 470 Ω. Điện áp hai đầu điện trở bao nhiêu? (Đáp án: 0,015 × 470 ≈ 7,05 V.)
  3. Đặt 3,3 V vào hai đầu một linh kiện, đo được 0,33 mA. Điện trở bao nhiêu? (Đáp án: 3,3 V / 0,33 mA = 10 kΩ.)

7. Xem thêm


Tin tức liên quan

Tụ điện: các loại tụ, cách đọc mã tụ, tụ phân cực và điện áp chịu đựng
Tụ điện: các loại tụ, cách đọc mã tụ, tụ phân cực và điện áp chịu đựng

Tụ điện là gì, điện dung và đơn vị pF, nF, µF, các loại tụ gốm, film, hóa, tantalum, cách đọc mã tụ 104, 103, tụ phân cực, chọn điện áp chịu đựng, ghép tụ và ba công dụng chính trong mạch.

Thực hành hiệu chuẩn cảm biến áp suất với áp kế chuẩn, ADS1115, ESP32: khớp đa thức, chỉnh điểm 0
Thực hành hiệu chuẩn cảm biến áp suất với áp kế chuẩn, ADS1115, ESP32: khớp đa thức, chỉnh điểm 0

Hiệu chuẩn cảm biến áp suất 0,5–4,5 V bằng áp kế chuẩn: ADS1115 đo tỉ lệ qua cầu chia, ESP32 ghi điểm tăng giảm áp, khớp đa thức, chỉnh điểm 0 tại chỗ và ước lượng độ không đảm bảo.

Từ Scratch sang Python cho trẻ: khi nào chuyển, khối nào ứng với lệnh nào
Từ Scratch sang Python cho trẻ: khi nào chuyển, khối nào ứng với lệnh nào

Hướng dẫn học sinh chuyển từ Scratch sang Python: dấu hiệu sẵn sàng, cài Thonny, bảng khối Scratch ứng với lệnh Python, hai dự án đố vui phép nhân và con rùa vẽ đa giác.

ISO/IEC 17025 và công nhận VILAS: yêu cầu với phòng hiệu chuẩn, đọc danh mục, CMC và chỉ số En
ISO/IEC 17025 và công nhận VILAS: yêu cầu với phòng hiệu chuẩn, đọc danh mục, CMC và chỉ số En

ISO/IEC 17025 yêu cầu gì với phòng hiệu chuẩn, công nhận VILAS có ý nghĩa gì, cách đọc danh mục phạm vi công nhận, CMC khác độ không đảm bảo, so sánh liên phòng và chỉ số En.

Tư duy logic, phản biện, thiết kế và kỹ năng 4C: rèn cho trẻ qua hoạt động STEM
Tư duy logic, phản biện, thiết kế và kỹ năng 4C: rèn cho trẻ qua hoạt động STEM

Phân biệt tư duy logic, phản biện, thiết kế và kỹ năng 4C bằng ví dụ; câu đố logic 4 x 4, thí nghiệm kiểm chứng, dự án hộp bút theo tư duy thiết kế và bảng đánh giá 4C.

Hiệu chuẩn load cell tại hiện trường: tải thật, mô phỏng mV/V, thế chỗ, ISO 376 và ASTM E74
Hiệu chuẩn load cell tại hiện trường: tải thật, mô phỏng mV/V, thế chỗ, ISO 376 và ASTM E74

Hiệu chuẩn hệ load cell tại hiện trường: chuỗi đo và nguồn sai số, tải thật so với mô phỏng mV/V, thế chỗ cho cân bồn, lưu ý lắp đặt, so sánh ISO 376 và ASTM E74.

Jack Type-C sạc pin loại 4 dây: một cổng vừa sạc pin 1S vừa truyền dữ liệu USB
Jack Type-C sạc pin loại 4 dây: một cổng vừa sạc pin 1S vừa truyền dữ liệu USB

Jack Type-C tích hợp mạch sạc loại 4 dây có thêm D+ D− để một cổng vừa sạc pin 1S vừa nối USB với máy tính. Bài hướng dẫn xác định từng dây bằng đồng hồ, nối vào vi điều khiển và các lưu ý khi dùng chung cổng.

Sai số Abbe, sai số cosin và giãn nở nhiệt khi đo chuyển vị, kích thước: cách tính và cách giảm
Sai số Abbe, sai số cosin và giãn nở nhiệt khi đo chuyển vị, kích thước: cách tính và cách giảm

Ba nguồn sai số có ở mọi phép đo kích thước: sai số Abbe khi đường đo lệch thang đo, sai số cosin khi trục đo lệch chuyển động, giãn nở nhiệt; cách tính, ví dụ ngân sách và quy tắc bố trí.


Bình luận
Đã thêm vào giỏ hàng