Cảm biến từ trường: Hall, từ trở, fluxgate, lưỡi gà – cấu tạo, nguyên lý, chế tạo và đo bằng ESP32

Cảm biến từ trường hoạt động thế nào: hiệu ứng Hall và ba kiểu IC Hall, công tắc lưỡi gà, từ trở, fluxgate, cuộn cảm ứng, cách chế tạo và đo mật độ từ thông bằng Hall tuyến tính 49E với ESP32.

Cảm biến từ trường đo độ lớn và hướng của từ trường, hoặc đơn giản là báo có nam châm ở gần hay không. Chúng có mặt ở khắp nơi: la bàn trong điện thoại, công tắc báo cửa mở, cảm biến tốc độ bánh xe ABS, cảm biến vị trí rô to trong động cơ không chổi than của quạt và xe điện, cảm biến dòng điện, máy dò kim loại. Bài viết giải thích các mức độ lớn của từ trường, hiệu ứng Hall và ba kiểu IC Hall, công tắc lưỡi gà, cảm biến từ trở, fluxgate và cuộn cảm ứng, quy trình chế tạo, rồi hướng dẫn đo từ trường bằng cảm biến Hall tuyến tính loại 49E với ESP32.

1. Từ trường lớn cỡ nào

Thang log độ lớn từ trường từ 1 femtotesla tới 10 tesla với các ví dụ từ trường của não, Trái Đất, nam châm tủ lạnh, nam châm đất hiếm, máy MRI, và dải đo của SQUID, fluxgate, từ trở, Hall, cuộn cảm ứng, công tắc lưỡi gà
Độ lớn từ trường thường gặp và dải đo của từng loại cảm biến (hình tự vẽ, thang log).
  • Đơn vị chuẩn của mật độ từ thông là tesla (T); hay dùng mT, µT. Đơn vị cũ gauss: 1 mT = 10 G, 1 µT = 0,01 G.
  • Từ trường Trái Đất chỉ khoảng 25 đến 65 µT tùy nơi; một nam châm tủ lạnh tạo vài mT ở bề mặt; nam châm đất hiếm (neodymium) tới khoảng 0,5 T hoặc hơn.
  • Vì dải cần đo rộng tới hàng chục bậc độ lớn, mỗi vùng có loại cảm biến riêng: la bàn số cần loại nhạy (từ trở, fluxgate), còn đo vị trí nam châm gần cảm biến thì Hall là đủ.

2. Hiệu ứng Hall và IC Hall

Minh họa hiệu ứng Hall: dòng electron từ pin chạy qua một tấm Hall đặt giữa hai cực nam châm N và S, electron bị lệch về một mép tấm; các hình nhỏ cho thấy khi đổi chiều từ trường hoặc dòng điện thì điện áp Hall đổi dấu
Electron chạy qua tấm Hall trong từ trường bị lệch về một mép; đổi chiều từ trường hoặc dòng điện thì điện áp đổi dấu. Ảnh: Peo, CC BY-SA 3.0, Wikimedia Commons, đã thu nhỏ.
Tấm bán dẫn có dòng điện I chạy dọc, từ trường B vuông góc, điện áp Hall U_H xuất hiện giữa hai mép; sơ đồ khối IC Hall gồm tấm Hall, khuếch đại và tầng tuyến tính hoặc so sánh có trễ; ba đồ thị ngõ ra: tuyến tính, công tắc một cực và chốt hai cực có đường trả về nét đứt
Tấm Hall, khối trong IC Hall và ba kiểu ngõ ra (hình tự vẽ).

Cho dòng điện I chạy qua một tấm bán dẫn mỏng đặt trong từ trường B vuông góc. Lực Lorentz đẩy các hạt dẫn lệch về một mép tấm, làm hai mép chênh nhau một điện áp: UH = I · B / (n · q · t), với n là mật độ hạt dẫn, q là điện tích, t là bề dày tấm. Bán dẫn có ít hạt dẫn hơn kim loại rất nhiều nên điện áp Hall đủ lớn để đo. Điện áp này vẫn chỉ cỡ µV đến mV, nên IC Hall tích hợp tấm Hall với mạch khuếch đại:

  • Tuyến tính (analog): điện áp ra tỉ lệ với B, bằng một nửa điện áp nguồn khi không có từ trường. Dùng đo vị trí, đo dòng điện (đặt trong khe một lõi thép quấn dây dẫn), tay ga, cần điều khiển.
  • Công tắc một cực: bật khi một cực nam châm đủ gần, tắt khi rời ra; đếm vòng, báo vị trí.
  • Chốt hai cực: cực nam bật, phải có cực bắc mới tắt; dùng với vòng nam châm nhiều cực để báo vị trí rô to trong động cơ không chổi than.
Cảm biến Hall gắn trên giá đỡ kim loại đặt sát vành răng của một bộ ly hợp, dây tín hiệu đi ra phía dưới
Cảm biến Hall đặt sát vành răng để đo tốc độ quay: mỗi răng thép đi qua làm từ trường qua cảm biến thay đổi. Ảnh: Фигушки, CC BY 2.0, Wikimedia Commons, đã thu nhỏ.

3. Công tắc lưỡi gà, từ trở, fluxgate, cuộn cảm ứng

Bốn loại cảm biến từ trường khác: công tắc lưỡi gà với hai lá thép trong ống thủy tinh và nam châm bên ngoài; từ trở với bốn điện trở màng mỏng nối cầu Wheatstone; fluxgate với lõi từ mềm và cuộn kích, cuộn thu; cuộn cảm ứng nhiều vòng dây quấn trên lõi
Bốn loại cảm biến từ trường khác (hình tự vẽ, sơ lược).
  • Công tắc lưỡi gà: hai lá hợp kim sắt từ đặt chồng mép trong ống thủy tinh kín. Nam châm lại gần làm hai lá bị từ hóa trái cực và hút nhau, đóng mạch. Không cần nguồn nuôi, dùng cho cảm biến cửa, phao báo mức, công tắc hành trình xi lanh. Ống thủy tinh dễ vỡ khi uốn chân sát thân.
  • Từ trở (AMR, GMR, TMR): màng kim loại từ mỏng có điện trở thay đổi theo hướng từ trường; loại GMR, TMR dùng nhiều lớp màng dày vài nanomet và nhạy hơn nhiều. Bốn điện trở nối cầu Wheatstone. Dùng làm la bàn số trong điện thoại, đầu đọc ổ cứng, cảm biến góc.
  • Fluxgate: lõi từ mềm được cuộn kích đẩy vào bão hòa luân phiên hai chiều. Khi không có từ trường ngoài, chu kỳ đối xứng; từ trường ngoài làm lệch đối xứng và cuộn thu xuất hiện thành phần ở tần số gấp đôi. Đo được từ trường rất nhỏ (nT), dùng trong khảo sát địa từ, tàu vũ trụ, dò vật thể kim loại chôn dưới đất.
  • Cuộn cảm ứng: từ thông biến thiên qua cuộn dây sinh ra điện áp (định luật Faraday). Chỉ đo được từ trường thay đổi; dùng trong máy dò kim loại, cảm biến tốc độ kiểu biến từ trở trên ô tô.
Công tắc lưỡi gà chụp cận cảnh: ống thủy tinh trong suốt hai đầu bít kín, hai lá kim loại vàng đặt chồng mép nhau ở giữa ống, hai chân dây kéo ra hai đầu
Công tắc lưỡi gà: hai lá kim loại chồng mép trong ống thủy tinh kín. Ảnh: Timothée Cognard, CC BY-SA 4.0, Wikimedia Commons, đã thu nhỏ.

4. Chế tạo cảm biến Hall, từ trở và lưỡi gà

Sáu bước chế tạo: tấm Hall trên silic CMOS cùng mạch khuếch đại, đảo hướng dòng để triệt điện áp lệch, hiệu chỉnh và đóng vỏ TO-92 hoặc SOT-23, công tắc lưỡi gà hàn kín trong ống thủy tinh chứa khí trơ, từ trở phún xạ nhiều lớp màng kim loại từ, kiểm tra trong cuộn Helmholtz
Các bước chính chế tạo cảm biến Hall, từ trở và công tắc lưỡi gà (hình tự vẽ).
  1. Tấm Hall trên silic: một vùng silic pha tạp loại n mỏng trong chip CMOS đóng vai trò tấm Hall; cùng chip là bộ khuếch đại, so sánh, ổn áp. Nhờ vậy IC Hall rất rẻ.
  2. Triệt điện áp lệch: tấm Hall silic có điện áp lệch lớn do ứng suất và sai lệch chế tạo. IC hiện đại liên tục đảo hướng dòng qua tấm Hall và lấy trung bình (kỹ thuật "dòng quay"), kết hợp khuếch đại chopper, để điện áp lệch gần như triệt tiêu.
  3. Hiệu chỉnh và đóng vỏ: cắt cầu chì hoặc ghi bộ nhớ trong chip để chỉnh độ nhạy, điểm không, bù nhiệt; đóng vỏ nhựa TO-92 hoặc SOT-23.
  4. Công tắc lưỡi gà: hai lá hợp kim niken – sắt, đầu tiếp điểm mạ kim loại quý (rodi, ruteni), được định vị chính xác khe hở rồi hàn kín trong ống thủy tinh có khí trơ hoặc chân không.
  5. Từ trở: phún xạ nhiều lớp màng kim loại từ và lớp ngăn dày vài nanomet lên chip, ủ trong từ trường để định hướng, khắc thành các điện trở nối cầu.
  6. Kiểm tra: đặt cảm biến trong cuộn Helmholtz (hai cuộn dây tạo từ trường đều, biết trước) để đo độ nhạy, điểm không theo nhiệt độ, ngưỡng tác động.

5. Thực hành: đo từ trường bằng Hall tuyến tính 49E và ESP32

Linh kiện

Sơ đồ nối

Sơ đồ nối cảm biến Hall 49E với ESP32: nhìn mặt có chữ, chân 1 VCC vào 3V3, chân 2 GND vào GND, chân 3 OUT vào D34; đồ thị điện áp ra tăng tuyến tính từ khoảng 1650 mV khi không có từ trường, độ nhạy khoảng 9,24 mV mỗi mT ở nguồn 3,3 V
Sơ đồ nối và đường đặc tính ở nguồn 3,3 V (hình tự vẽ; độ nhạy theo giá trị điển hình).
Chân 49E (nhìn mặt có chữ, từ trái sang)ESP32
1: VCC3V3
2: GNDGND
3: OUTD34 (thêm tụ 100 nF từ D34 xuống GND)

Chương trình

/*
  PYWORLD.VN - Cảm biến từ trường Hall tuyến tính (loại SS49E) với ESP32: đo mật độ từ thông theo mT và nhận biết cực
  SS49E nhìn mặt có chữ: chân trái VCC = 3V3, chân giữa GND, chân phải OUT vào D34 (thêm tụ 100 nF từ D34 xuống GND)
  Lúc khởi động để xa nam châm để lấy điểm không; gõ "z" để lấy lại điểm không
*/

#define CHAN_HALL 34

// Độ nhạy SS49E khoảng 1,4 mV/G ở nguồn 5 V và tỉ lệ với điện áp nguồn: ở 3,3 V còn khoảng 1,4 × 3,3/5 = 0,92 mV/G
const float DO_NHAY_MV_MOI_MT = 1.4f * 3.3f / 5.0f * 10.0f;   // 1 mT = 10 G  =>  khoảng 9,24 mV/mT
const float NGUONG_CUC_MT = 0.5f;                            // Nhỏ hơn mức này coi như không có nam châm
const int SO_MAU = 64;

float diemKhongMv = 1650.0f;

float docMv() {
  uint32_t tong = 0;
  for (int i = 0; i < SO_MAU; i++) {
    tong += analogReadMilliVolts(CHAN_HALL);
  }
  return (float)tong / SO_MAU;
}

void layDiemKhong() {
  float tong = 0;
  for (int i = 0; i < 10; i++) {
    tong += docMv();
    delay(10);
  }
  diemKhongMv = tong / 10;
  Serial.printf("Diem khong: %.0f mV (khong co nam cham)\n", diemKhongMv);
}

void setup() {
  Serial.begin(115200);
  analogSetPinAttenuation(CHAN_HALL, ADC_11db);
  delay(300);
  Serial.printf("\nCam bien Hall tuyen tinh: do nhay %.2f mV/mT\n", DO_NHAY_MV_MOI_MT);
  layDiemKhong();
}

void loop() {
  if (Serial.available() && Serial.read() == 'z') {
    layDiemKhong();
  }
  float mv = docMv();
  float bMt = (mv - diemKhongMv) / DO_NHAY_MV_MOI_MT;
  // Với SS49E, cực nam hướng vào mặt có chữ làm điện áp ra tăng
  const char *cuc = "khong co nam cham";
  if (bMt > NGUONG_CUC_MT) {
    cuc = "cuc NAM huong vao mat chu";
  } else if (bMt < -NGUONG_CUC_MT) {
    cuc = "cuc BAC huong vao mat chu";
  }
  Serial.printf("OUT %.0f mV | B %+.2f mT (%+.0f G) | %s\n", mv, bMt, bMt * 10.0f, cuc);
  delay(300);
}

Giải thích

  • Cảm biến loại 49E có độ nhạy điển hình khoảng 1,4 mV/G ở nguồn 5 V và tỉ lệ với điện áp nguồn. Ở 3,3 V còn khoảng 0,92 mV/G, tức khoảng 9,24 mV/mT. Mỗi con lệch vài chục phần trăm; muốn đo chính xác phải hiệu chuẩn bằng một nam châm hoặc cuộn dây biết trước từ trường.
  • Lúc khởi động (để xa nam châm), chương trình lấy điện áp ra làm điểm không, thay cho con số lý thuyết bằng một nửa nguồn.
  • B (mT) = (điện áp đo − điểm không) / độ nhạy. Dấu cho biết cực nào hướng vào mặt có chữ.
  • Trong nhà, từ trường Trái Đất (vài phần trăm mT) nhỏ hơn nhiễu của phép đo này, nên số đọc dao động quanh 0 khi không có nam châm.

Kết quả mong đợi

Hình minh họa Serial Monitor đo từ trường bằng Hall tuyến tính và ESP32: điện áp ra, mật độ từ thông theo mT và gauss và cực nam châm; không có nam châm gần 0 mT, nam châm cách 3 cm khoảng 10 mT, áp sát cực nam khoảng 60 mT, lật sang cực bắc âm 47 mT
Kết quả mong đợi trên Serial Monitor (hình minh họa; điện áp là ví dụ).

Từ trường giảm rất nhanh theo khoảng cách (với nam châm nhỏ, gần như theo lập phương khoảng cách). Đây là lý do cảm biến vị trí dùng nam châm phải đặt nam châm gần và cố định khe hở.

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

Hiện tượngNguyên nhân thường gặpCách xử lý
Số đọc không đổi khi đưa nam châm lại gầnNối nhầm chân, dùng nhầm loại Hall công tắcKiểm tra thứ tự chân theo mặt có chữ; dùng loại tuyến tính
Điểm không lệch nhiều khỏi 1650 mVSai số của cảm biến, nguồn 3V3 không đúng 3,3 VBình thường; chương trình tự lấy điểm không lúc khởi động
Số đọc kẹt ở khoảng 0,7 V hoặc 2,6 VNam châm quá mạnh, ngõ ra bão hòaĐưa nam châm ra xa hơn
Số đọc trôi theo thời gianNhiệt độ thay đổi, gần thiết bị có từ trường (loa, biến áp)Lấy lại điểm không bằng lệnh z; tránh nguồn từ trường lạ
Công tắc lưỡi gà không đóngNam châm đặt sai hướng so với trục ốngĐặt nam châm song song với ống, dời dọc thân để tìm vị trí nhạy nhất

7. Xem thêm

  • Đọc ADC trên ESP32.
  • Ngắt GPIO trên ESP32: dùng với cảm biến Hall công tắc để đếm vòng.
  • Các bài khác trong loạt: encoder tuyệt đối (cảm biến góc từ tính), cảm biến tiệm cận cảm ứng từ, cảm biến lưu lượng (tua bin với cảm biến Hall).

Tin tức liên quan

Vali chuyên dụng là gì? Các loại vali chống sốc đựng thiết bị và cách chọn
Vali chuyên dụng là gì? Các loại vali chống sốc đựng thiết bị và cách chọn

Vali chuyên dụng là vali vỏ cứng có xốp giữ chặt thiết bị. Bài giải thích cấu tạo, bốn nhóm vali thường gặp (nhựa PP, chống nước IP67, vali nhôm, hộp sẵn xốp) và cách chọn nhanh theo nhu cầu.

Cấp nguồn ESP32 bằng pin 18650 sạc qua jack Type-C tích hợp mạch sạc
Cấp nguồn ESP32 bằng pin 18650 sạc qua jack Type-C tích hợp mạch sạc

Sơ đồ nguồn cho ESP32 chạy pin 18650, sạc qua jack Type-C trên vỏ hộp: vì sao cần mạch đổi áp, chọn tăng áp 5 V hay ổn áp 3,3 V, ước tính thời gian chạy pin, đo mức pin và các lỗi nguồn thường gặp.

Vali đựng thiết bị đo lường: chọn vali và xếp xốp cho đồng hồ vạn năng, ampe kìm
Vali đựng thiết bị đo lường: chọn vali và xếp xốp cho đồng hồ vạn năng, ampe kìm

Chọn vali đựng thiết bị đo lường: loại vali theo nơi làm việc, cỡ vali cho bộ đồng hồ vạn năng, ampe kìm, que đo, cách xếp xốp để máy và que đo không đè nhau, vali cho cả đội.

Độ không đảm bảo đo theo GUM: sáu bước tính, loại A, loại B và ví dụ ngân sách hiệu chuẩn áp kế
Độ không đảm bảo đo theo GUM: sáu bước tính, loại A, loại B và ví dụ ngân sách hiệu chuẩn áp kế

Cách tính độ không đảm bảo đo theo GUM: sáu bước, đánh giá loại A và loại B, phân bố chuẩn, chữ nhật, tam giác, ví dụ ngân sách hiệu chuẩn áp kế, cách làm tròn và lỗi hay gặp.

Các nguồn sai số khi đo lực bằng load cell: lệch tâm, rão, trễ, nhiệt độ và ngân sách sai số
Các nguồn sai số khi đo lực bằng load cell: lệch tâm, rão, trễ, nhiệt độ và ngân sách sai số

Vì sao đo lực thực tế sai hơn phiếu thông số load cell: lệch tâm và gá lắp, rão, trễ, phi tuyến, nhiệt độ, cáp và bộ đọc; ví dụ ngân sách sai số và danh sách kiểm tra nhanh.

SPI là gì: MOSI, MISO, SCK, CS, bốn chế độ và cách dùng trên ESP32
SPI là gì: MOSI, MISO, SCK, CS, bốn chế độ và cách dùng trên ESP32

Giải thích giao tiếp SPI: bốn dây MOSI, MISO, SCK, CS, truyền hai chiều cùng lúc và bốn chế độ clock. Kèm hai chương trình ESP32: tự gửi tự nhận để kiểm tra bus và gửi lệnh thô cho thẻ nhớ.

Chu kỳ hiệu chuẩn và kiểm tra giữa kỳ: ai quyết định, dùng lịch sử độ trôi và biểu đồ kiểm soát
Chu kỳ hiệu chuẩn và kiểm tra giữa kỳ: ai quyết định, dùng lịch sử độ trôi và biểu đồ kiểm soát

Chu kỳ hiệu chuẩn do ai quyết định, các yếu tố cần xét, dùng lịch sử độ trôi, phương pháp theo ILAC-G24/OIML D 10, kiểm tra giữa kỳ bằng biểu đồ kiểm soát cho lực, chuyển vị, áp suất, rung.

I2C là gì: START, STOP, địa chỉ, ACK và cách đọc ghi thanh ghi trên ESP32
I2C là gì: START, STOP, địa chỉ, ACK và cách đọc ghi thanh ghi trên ESP32

Giải thích giao tiếp I2C ở mức từng bit: hai dây SDA, SCL, điện trở kéo lên, START, địa chỉ, ACK, STOP. Kèm hai chương trình ESP32: tự tạo tín hiệu I2C bằng GPIO và đọc ghi thanh ghi bằng Wire.


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