Cảm biến mô men xoắn: cấu tạo, nguyên lý strain gauge 45°, cách chế tạo và bàn thử công suất

Cảm biến mô men xoắn hoạt động thế nào: strain gauge xiên 45° trên trục, vành trượt, biến áp quay, đo góc xoắn, từ giảo, cách chế tạo và bàn thử mô men, công suất với ESP32.

Mô men xoắn cho biết một trục đang "vặn" mạnh tới đâu: ốc được siết bao nhiêu, động cơ kéo khỏe cỡ nào, người đạp xe đang dồn bao nhiêu lực vào bàn đạp. Biết mô men và tốc độ quay là tính được công suất cơ học thật sự mà trục truyền đi. Bài viết giải thích vì sao đo mô men xoắn khó hơn đo lực, cách dán strain gauge xiên 45° trên trục, các cách lấy tín hiệu từ trục đang quay, quy trình chế tạo cảm biến, và cách tự làm một bàn thử mô men, công suất cho động cơ nhỏ với load cell, HX711 và ESP32.

1. Mô men xoắn và công suất

  • Mô men xoắn T = F × r: lực F đặt vuông góc với cánh tay đòn dài r. Đơn vị N·m; 1 kgf·m ≈ 9,81 N·m. Cờ lê dài 0,3 m, tay đẩy 100 N, mô men là 30 N·m.
  • Công suất P = T × ω, với ω = 2π × n / 60 là tốc độ góc (rad/s) khi n tính bằng vòng/phút. Trục truyền 50 N·m ở 1500 vòng/phút mang 50 × 157,1 ≈ 7854 W, khoảng 7,9 kW.
  • Mô men tĩnh và mô men quay: siết ốc, thử độ bền mối ghép là đo tĩnh (trục gần như không quay). Đo trên trục động cơ, hộp số, trục máy bơm là đo quay, khó hơn nhiều vì cảm biến quay theo trục.
  • Đo trực tiếp và đo phản lực: cảm biến lắp nối tiếp giữa hai đoạn trục đo trực tiếp; cảm biến phản lực đo lực giữ vỏ máy đứng yên, theo định luật lực và phản lực thì bằng mô men trên trục.

2. Nguyên lý: trục xoắn và strain gauge xiên 45°

Trục thép bị hai mô men xoắn ngược chiều ở hai đầu, đường sinh bị xoắn lệch đi một góc, hai strain gauge dán xiên cộng 45 và trừ 45 độ, cầu Wheatstone đủ bốn nhánh, kèm ví dụ trục 20 mm chịu 50 N·m có ứng suất cắt 31,8 MPa và biến dạng 201 micromet trên mét
Trục bị xoắn, vị trí strain gauge và ví dụ tính (hình tự vẽ, góc xoắn phóng đại).

Khi bị xoắn, trục không dài ra hay ngắn đi mà các thớ vật liệu trượt lên nhau: trục chịu ứng suất cắt. Strain gauge chỉ đo được biến dạng kéo hoặc nén theo chiều dài lá điện trở. Phân tích ứng suất cho thấy ứng suất cắt thuần tương đương với kéo theo một hướng 45° và nén theo hướng −45° so với trục. Vì vậy strain gauge đo mô men luôn dán xiên 45°, thường là hai cặp lá hình chữ V đặt đối xứng hai bên trục.

  • Với trục tròn đặc đường kính d: ứng suất cắt ở mặt ngoài τ = 16T / (πd³); biến dạng ở hướng 45° là ε = τ / (2G), với G là mô đun cắt (thép khoảng 79 GPa).
  • Ví dụ trục thép 20 mm chịu 50 N·m: τ ≈ 31,8 MPa, ε ≈ 201 µm/m. Cầu đủ dùng strain gauge hệ số 2,0 cho khoảng 0,40 mV/V, tức 2 mV khi kích 5 V.
  • Bốn strain gauge nối cầu đủ thì biến dạng do uốn trục, do lực dọc trục và do nhiệt độ tự triệt tiêu; chỉ còn tín hiệu của mô men xoắn.
  • Muốn tín hiệu lớn hơn, nhà sản xuất làm một đoạn trục thu nhỏ ("cổ đo") hoặc trục rỗng: ứng suất tăng mạnh vì tỉ lệ nghịch với lập phương đường kính.
Cờ lê lực kiểu tách bằng thép mạ crôm, đầu lắp khẩu lục giác, tay cầm có vạch chỉnh mô men
Cờ lê lực kiểu tách: lò xo trong thân được chỉnh trước, khi đạt mô men đặt thì cơ cấu bật ra kêu "tách". Ảnh: Heron2, CC BY-SA 3.0, Wikimedia Commons, đã thu nhỏ.

Cờ lê lực là dụng cụ đo mô men tĩnh quen thuộc nhất. Loại thanh chỉ thị dùng một thanh thép uốn cong và một kim; loại tách dùng lò xo và cơ cấu bật; loại điện tử dán strain gauge lên thân cờ lê, đọc bằng mạch ADC và hiển thị số, có thể lưu kết quả từng mối siết. Cờ lê lực cơ khí thông thường có sai số khoảng ±4 % và cần hiệu chuẩn định kỳ.

3. Lấy tín hiệu từ trục đang quay

Bốn cách lấy tín hiệu mô men từ trục quay: vành trượt bằng đồng có chổi than tì lên; biến áp quay và mạch phát không dây quay theo trục; hai đĩa răng ở hai đầu thanh xoắn và hai cảm biến đọc độ lệch pha; cuộn dây bao quanh trục đọc thay đổi từ tính theo ứng suất
Bốn cách lấy tín hiệu mô men từ trục quay (hình tự vẽ).
CáchHoạt độngƯu điểmHạn chế
Vành trượt, chổi thanBốn vòng đồng quay theo trục, chổi than tì lên dẫn nguồn kích và tín hiệuĐơn giản, rẻChổi mòn, nhiễu tiếp xúc làm bẩn tín hiệu mV; giới hạn tốc độ
Biến áp quay, phát sốCuộn dây không chạm cấp nguồn cho mạch trên trục; mạch đo và gửi số liệu bằng sóng hoặc cảm ứngKhông mòn, quay nhanh, tín hiệu số ít nhiễuĐắt hơn, có khe hở lắp đặt
Đo góc xoắnHai đĩa răng ở hai đầu thanh xoắn; độ lệch pha xung giữa hai cảm biến tỉ lệ với góc xoắnKhông chạm, bền; dùng trong cảm biến mô men tay lái trợ lực điệnCần thanh xoắn đủ mềm, độ phân giải phụ thuộc số răng
Từ giảoỨng suất làm thay đổi độ từ thẩm của trục thép đã từ hóa; cuộn dây quanh trục đọc thay đổiKhông chạm, không dán gì lên trục; dùng cho xe đạp trợ lực, hộp sốNhạy với từ trường ngoài, cần trục vật liệu phù hợp
Bên trong một động cơ điện cũ có vành trượt: các vòng đồng trên trục và các giá chổi than bằng đồng thau ép lên vòng
Vành trượt và chổi than trên một động cơ điện cũ: cùng nguyên lý với vành trượt dẫn tín hiệu strain gauge ra khỏi trục quay. Ảnh: Oliver Wallscheid, CC BY 4.0, Wikimedia Commons, đã thu nhỏ.

4. Chế tạo cảm biến mô men xoắn

Sáu bước chế tạo cảm biến mô men xoắn kiểu strain gauge: gia công trục có cổ đo, dán strain gauge 45 độ, nối cầu và bù nhiệt, lắp phần truyền tín hiệu, cân bằng động, hiệu chuẩn bằng tay đòn và quả cân
Các bước chính chế tạo cảm biến mô men quay (hình tự vẽ).
  1. Trục: thép hợp kim cường độ cao, có đoạn thu nhỏ làm cổ đo, hai đầu là mặt bích hoặc đầu trục có rãnh then để lắp nối tiếp vào hệ truyền động; nhiệt luyện và mài.
  2. Dán strain gauge: dùng loại lá đôi xiên ±45° (gọi là rosette chữ V), dán hai bộ đối xứng 180° quanh cổ đo để triệt uốn; quy trình làm sạch, dán, sấy giống load cell.
  3. Nối cầu và bù: cầu đủ bốn nhánh, điện trở chỉnh điểm không và bù độ nhạy theo nhiệt độ.
  4. Truyền tín hiệu: lắp vành trượt, hoặc đặt mạch khuếch đại, ADC và cuộn rotor của biến áp quay trên trục, vỏ ngoài là stator đứng yên.
  5. Cân bằng động: cảm biến quay hàng nghìn vòng/phút phải được cân bằng để không gây rung cho hệ truyền động.
  6. Hiệu chuẩn: kẹp một đầu, lắp tay đòn dài biết trước vào đầu kia, treo quả cân chuẩn theo cả hai chiều xoắn: T = m × g × chiều dài tay đòn.

5. Ứng dụng thường gặp

  • Thử nghiệm động cơ, hộp số, máy bơm: đo công suất và hiệu suất thật.
  • Siết ốc có kiểm soát trong lắp ráp ô tô, xe máy, thiết bị: mỗi mối siết được ghi lại.
  • Tay lái trợ lực điện: cảm biến mô men trên thanh xoắn cho biết người lái đang xoay vô lăng mạnh tới đâu để motor trợ lực tương ứng.
  • Xe đạp trợ lực: cảm biến mô men ở trục giữa giúp motor trợ lực theo đúng sức đạp.
  • Robot cộng tác: cảm biến mô men ở khớp giúp robot dừng ngay khi va vào người.

6. Thực hành: bàn thử mô men phản lực và công suất động cơ nhỏ

Cảm biến mô men quay rất đắt. Với động cơ nhỏ, có thể đo mô men phản lực: đặt vỏ động cơ trên hai gối đỡ cho nó xoay tự do quanh trục, gắn một tay đòn vào vỏ và cho tay đòn tì lên load cell. Khi trục kéo tải, vỏ muốn quay ngược lại; load cell giữ nó và đo lực. Mô men bằng lực nhân chiều dài tay đòn. Đây cũng là nguyên lý của "phanh Prony" và các băng thử động cơ kiểu nôi từ hơn một thế kỷ trước.

Bàn thử mô men tự làm: động cơ đặt trên hai gối đỡ quay tự do, tay đòn dài 150 mm gắn vào vỏ động cơ tì lên load cell, cảm biến Hall đọc nam châm trên trục; load cell nối HX711 vào chân D32, D33 của ESP32, xung tốc độ vào GPIO27
Bố trí bàn thử mô men phản lực và đường nối tín hiệu (hình tự vẽ).

Linh kiện

  • ESP32 DevKit V1 30 chân và module HX711.
  • Một load cell thanh uốn nhỏ (1 kg hoặc 5 kg tùy động cơ).
  • Một cảm biến tốc độ: cảm biến Hall dạng công tắc (ngõ ra cực thu hở) với một nam châm nhỏ dán trên trục, hoặc cảm biến quang phản xạ với một vạch trắng.
  • Hai gối đỡ (vòng bi) giữ động cơ, tay đòn bằng thanh nhôm, tải cho động cơ (cánh quạt, phanh ma sát).
  • Dây cắm test board.
Thiết bịNối tới ESP32
HX711 VCC, GND, DT, SCK3V3, GND, D32, D33 (load cell nối HX711 như bài cảm biến lực)
Cảm biến Hall: nguồn, GND, ngõ ra3V3, GND, GPIO27 (chương trình bật điện trở kéo lên bên trong)

Chương trình

/*
  PYWORLD.VN - Đo mô men xoắn phản lực và công suất động cơ bằng ESP32: load cell dưới cánh tay đòn + cảm biến tốc độ
  HX711: DT = GPIO32, SCK = GPIO33; cảm biến tốc độ (Hall hoặc quang, 1 xung mỗi vòng, ngõ ra kéo xuống) vào GPIO27
  Mô men = lực trên load cell × chiều dài tay đòn; công suất = mô men × tốc độ góc. Gõ "t" để trừ bì, "c200" để hiệu chuẩn
*/

#define CHAN_DT 32
#define CHAN_SCK 33
#define CHAN_TOC_DO 27

const float CANH_TAY_DON_M = 0.150;      // Khoảng cách từ tâm trục động cơ tới điểm tì lên load cell (m)
const int XUNG_MOI_VONG = 1;             // Số nam châm hoặc vạch phản quang trên trục
const float G = 9.80665;                 // m/s²
float heSoN = 43800.0;                   // Số đếm HX711 cho mỗi newton; tìm bằng lệnh c<khối lượng gam>
int32_t diemKhong = 0;

volatile uint32_t demXung = 0;
portMUX_TYPE khoaNgat = portMUX_INITIALIZER_UNLOCKED;

void IRAM_ATTR ngatTocDo() {
  demXung = demXung + 1;   // Chỉ hàm ngắt này ghi vào biến
}

// Đọc một mẫu 24 bit kênh A (hệ số 128) của HX711 bằng 25 xung SCK
bool docHx711(int32_t *ketQua) {
  uint32_t batDau = millis();
  while (digitalRead(CHAN_DT) == HIGH) {
    if (millis() - batDau > 500) {
      return false;
    }
    delay(1);
  }
  uint32_t giaTri = 0;
  portENTER_CRITICAL(&khoaNgat);
  for (int i = 0; i < 24; i++) {
    digitalWrite(CHAN_SCK, HIGH);
    delayMicroseconds(1);
    giaTri = (giaTri << 1) | (uint32_t)digitalRead(CHAN_DT);
    digitalWrite(CHAN_SCK, LOW);
    delayMicroseconds(1);
  }
  digitalWrite(CHAN_SCK, HIGH);
  delayMicroseconds(1);
  digitalWrite(CHAN_SCK, LOW);
  portEXIT_CRITICAL(&khoaNgat);
  if (giaTri & 0x800000) {
    giaTri |= 0xFF000000;
  }
  *ketQua = (int32_t)giaTri;
  return true;
}

bool docTrungBinh(int soMau, int32_t *ketQua) {
  int64_t tong = 0;
  for (int i = 0; i < soMau; i++) {
    int32_t mau;
    if (!docHx711(&mau)) {
      return false;
    }
    tong += mau;
  }
  *ketQua = (int32_t)(tong / soMau);
  return true;
}

void xuLyLenh() {
  if (!Serial.available()) {
    return;
  }
  String lenh = Serial.readStringUntil('\n');
  lenh.trim();
  int32_t trungBinh;
  if (lenh == "t" && docTrungBinh(16, &trungBinh)) {
    diemKhong = trungBinh;
    Serial.printf("Da tru bi: diem khong = %ld\n", (long)diemKhong);
  } else if (lenh.startsWith("c") && docTrungBinh(16, &trungBinh)) {
    // Treo quả cân đã biết khối lượng đúng tại điểm tì lên load cell
    float lucN = lenh.substring(1).toFloat() / 1000.0f * G;
    if (lucN > 0) {
      heSoN = (trungBinh - diemKhong) / lucN;
      Serial.printf("He so moi: %.1f dem/N (ghi vao bien heSoN trong code)\n", heSoN);
    }
  }
}

void setup() {
  Serial.begin(115200);
  pinMode(CHAN_DT, INPUT);
  pinMode(CHAN_SCK, OUTPUT);
  digitalWrite(CHAN_SCK, LOW);
  pinMode(CHAN_TOC_DO, INPUT_PULLUP);
  attachInterrupt(digitalPinToInterrupt(CHAN_TOC_DO), ngatTocDo, FALLING);
  delay(500);
  if (docTrungBinh(16, &diemKhong)) {
    Serial.printf("\nBang thu mo men: tay don %.3f m, diem khong = %ld\n", CANH_TAY_DON_M, (long)diemKhong);
  } else {
    Serial.println("\nKhong thay HX711: kiem tra DT, SCK, VCC, GND");
  }
}

void loop() {
  static uint32_t mocTruoc = millis();
  xuLyLenh();

  int32_t tho;
  if (!docTrungBinh(4, &tho)) {
    Serial.println("Khong doc duoc HX711");
    delay(1000);
    return;
  }
  uint32_t bayGio = millis();
  if (bayGio - mocTruoc < 1000) {
    return;
  }
  // Lấy số xung trong khoảng thời gian vừa qua rồi đặt lại bộ đếm
  portENTER_CRITICAL(&khoaNgat);
  uint32_t soXung = demXung;
  demXung = 0;
  portEXIT_CRITICAL(&khoaNgat);
  float giay = (bayGio - mocTruoc) / 1000.0f;
  mocTruoc = bayGio;

  float lucN = (tho - diemKhong) / heSoN;
  float moMen = lucN * CANH_TAY_DON_M;                          // N.m
  float vongPhut = soXung * 60.0f / XUNG_MOI_VONG / giay;
  float congSuat = moMen * 2.0f * PI * vongPhut / 60.0f;         // W = N.m × rad/s
  Serial.printf("Luc %.2f N | Mo men %.3f N.m | %.0f vong/phut | Cong suat %.1f W\n", lucN, moMen, vongPhut, congSuat);
}

Giải thích

  • Hàm đọc HX711 phát 25 xung SCK như bài cảm biến lực; hệ số được tính theo số đếm mỗi newton.
  • Ngắt trên GPIO27 đếm xung tốc độ; mỗi giây chương trình lấy số xung, đặt lại bộ đếm và tính vòng/phút.
  • Mô men (N·m) = lực (N) × 0,150 m. Công suất (W) = mô men × 2π × vòng/phút / 60.
  • Hiệu chuẩn: tắt động cơ, gõ t để trừ bì. Treo một quả cân (ví dụ 200 g) đúng tại điểm tay đòn tì lên load cell, gõ c200; ghi hệ số in ra vào biến heSoN.

Kết quả mong đợi

Hình minh họa Serial Monitor bàn thử mô men: lực trên load cell, mô men theo N·m, tốc độ vòng phút và công suất theo watt; khi tăng tải mô men tăng và tốc độ giảm
Kết quả mong đợi trên Serial Monitor (hình minh họa; số đếm và số xung là ví dụ).

Khi tăng tải, mô men tăng còn tốc độ giảm; công suất đạt lớn nhất ở khoảng giữa. Kết quả gồm cả ma sát của gối đỡ, nên gối đỡ càng trơn tru, mô men đo được càng sát mô men thật trên trục.

An toàn: che chắn phần quay, kẹp chặt đế bàn thử, không đứng thẳng hàng với cánh quạt; với động cơ điện lưới phải có aptomat và nối đất vỏ.

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

Hiện tượngNguyên nhân thường gặpCách xử lý
Mô men âm khi chạyĐộng cơ quay ngược chiều với hướng tay đòn tì vào load cellĐổi chiều quay hoặc đặt load cell ở phía bên kia tay đòn
Tốc độ luôn bằng 0Nam châm đặt sai cực, cảm biến Hall quá xaLật nam châm, đưa cảm biến lại gần 2 đến 5 mm; kiểm tra chân GPIO27
Tốc độ gấp đôi thực tếCó hai nam châm hoặc tín hiệu bị dộiSửa XUNG_MOI_VONG; thêm tụ nhỏ lọc nhiễu ở ngõ ra cảm biến
Mô men dao động mạnhĐộng cơ rung, tay đòn nảy trên load cellKẹp tay đòn chắc vào load cell, tăng số mẫu trung bình
Mô men khi đứng yên khác 0Trọng lượng tay đòn đè lên load cellGõ t để trừ bì sau khi lắp xong

8. Xem thêm


Tin tức liên quan

RS-485 là gì: cặp dây vi sai, điện trở đầu cuối và cách dùng module MAX485 với ESP32
RS-485 là gì: cặp dây vi sai, điện trở đầu cuối và cách dùng module MAX485 với ESP32

Giải thích chuẩn RS-485: tín hiệu vi sai trên hai dây A, B, điện trở đầu cuối 120 Ω, truyền bán song công với chân DE, RE. Kèm sơ đồ nối module MAX485 và chương trình hỏi đáp giữa hai mạch ESP32.

Liên kết chuẩn đo lường (traceability): chuỗi hiệu chuẩn từ đơn vị SI tới thiết bị hiện trường
Liên kết chuẩn đo lường (traceability): chuỗi hiệu chuẩn từ đơn vị SI tới thiết bị hiện trường

Liên kết chuẩn đo lường là gì: chuỗi hiệu chuẩn không đứt đoạn từ đơn vị SI, chuẩn quốc gia tới thiết bị hiện trường, CIPM MRA, ILAC MRA, VILAS, các trường hợp chuỗi bị đứt và cách kiểm tra.

Hiệu chuẩn transmitter áp suất 4–20 mA: sơ đồ vòng, sai số theo khoảng đo, lúc nhận và sau chỉnh
Hiệu chuẩn transmitter áp suất 4–20 mA: sơ đồ vòng, sai số theo khoảng đo, lúc nhận và sau chỉnh

Hiệu chuẩn transmitter áp suất 4–20 mA: sơ đồ vòng dòng điện, công thức dòng và sai số theo phần trăm khoảng đo, trình tự lúc nhận và sau chỉnh, ví dụ 0–16 bar, lưu ý về HART và điểm 0.

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ớ.

Cảm biến khí ga: MQ, điện hóa, xúc tác, NDIR – cấu tạo, nguyên lý, chế tạo và đọc MQ-2 bằng ESP32
Cảm biến khí ga: MQ, điện hóa, xúc tác, NDIR – cấu tạo, nguyên lý, chế tạo và đọc MQ-2 bằng ESP32

Cảm biến khí ga hoạt động thế nào: bán dẫn SnO₂ họ MQ, điện hóa, xúc tác, hồng ngoại NDIR, cách chế tạo cảm biến bán dẫn và đọc module MQ-2 bằng ESP32 để tính Rs/R0, ước lượng ppm.

Độ 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.

Modbus RTU (phần 1): khung tin, mã hàm, CRC và ESP32 làm thiết bị chủ
Modbus RTU (phần 1): khung tin, mã hàm, CRC và ESP32 làm thiết bị chủ

Giải thích Modbus RTU ở mức từng byte: khung tin, bốn vùng dữ liệu, mã hàm đọc ghi, khung báo lỗi. Kèm chương trình ESP32 làm thiết bị chủ đọc thanh ghi và ghi cuộn qua RS-485, không dùng thư viện.

Cảm biến lưu lượng: tua bin, chênh áp, điện từ, siêu âm, Coriolis – cấu tạo, nguyên lý và chế tạo
Cảm biến lưu lượng: tua bin, chênh áp, điện từ, siêu âm, Coriolis – cấu tạo, nguyên lý và chế tạo

Cảm biến lưu lượng hoạt động thế nào: tua bin, thể tích, chênh áp, điện từ, siêu âm, xoáy, Coriolis, nhiệt; cách chế tạo và đo lít mỗi phút, tổng lít bằng cảm biến tua bin với ESP32.


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