
Giới thiệu
Kết nối điện trở cảm biến lực (FSR) với Arduino Uno là một dự án phổ biến trong giới đam mê điện tử và những người yêu thích công nghệ. Điện trở cảm biến lực là một cảm biến đơn giản nhưng hiệu quả, được sử dụng để phát hiện áp suất hoặc lực vật lý. Bằng cách đo sự thay đổi điện trở của FSR khi có lực tác dụng lên nó, ta có thể xác định được lực tác dụng. Với Arduino Uno và FSR, bạn có thể tạo ra nhiều dự án thú vị, chẳng hạn như nhạc cụ cảm ứng lực hoặc màn hình tương tác cảm ứng. Trong dự án này, Arduino Uno sẽ được sử dụng để đọc và diễn giải giá trị điện trở từ FSR để xác định lực tác dụng, sau đó hiển thị trên màn hình nối tiếp.
Điện trở cảm biến lực (FSR) là một loại cảm biến áp suất có khả năng thay đổi điện trở khi có lực tác dụng. Nó bao gồm một lớp màng polymer dày được phủ trên một lớp nền dẻo, sau đó được phủ lên hai lớp dẫn điện được ngăn cách bởi một lớp phân cách mỏng. Khi có lực tác dụng lên FSR, lớp polymer sẽ nén lại và đưa hai lớp dẫn điện tiếp xúc với nhau, làm giảm điện trở của chúng.
Linh kiện phần cứng
Bạn sẽ cần phần cứng sau để kết nối điện trở cảm biến lực FSR402 với Arduino.

Các bước kết nối cảm biến lực với Arduino
1. Đặt chân analog A0 làm đầu vào để kết nối cảm biến lực.
#define FORCE_SENSOR_PIN A0 // the FSR and 10K pulldown are connected to A0
2. Thiết lập giao tiếp nối tiếp và bắt đầu giao tiếp nối tiếp ở tốc độ truyền 9600.
void setup() {
Serial.begin(9600);
}
3. Trong vòng lặp, đọc giá trị tương tự từ cảm biến lực bằng hàm analogRead().
int analogReading = analogRead(FORCE_SENSOR_PIN);
4. In giá trị đọc tương tự của cảm biến lực vào màn hình nối tiếp bằng hàm Serial.print().
Serial.print("Force sensor reading = ");
Serial.print(analogReading); // print the raw analog reading
5. Kiểm tra chỉ số analog và nhập thông báo tương ứng dựa trên lực tác dụng. Nếu chỉ số analog nhỏ hơn 10, hãy nhập "không áp lực". Nếu từ 10 đến 199, hãy nhập "chạm nhẹ". Nếu từ 200 đến 499, hãy nhập "bóp nhẹ". Nếu từ 500 đến 799, hãy nhập "bóp vừa". Nếu lớn hơn hoặc bằng 800, hãy nhập "bóp mạnh".
if (analogReading < 10) // from 0 to 9
Serial.println(" -> no pressure");
else if (analogReading < 200) // from 10 to 199
Serial.println(" -> light touch");
else if (analogReading < 500) // from 200 to 499
Serial.println(" -> light squeeze");
else if (analogReading < 800) // from 500 to 799
Serial.println(" -> medium squeeze");
else // from 800 to 1023
Serial.println(" -> big squeeze");
6. Thêm độ trễ 1000ms để làm chậm đầu ra.
delay(1000);
sơ đồ
Tiến hành kết nối theo sơ đồ mạch điện được cung cấp bên dưới.

Dây điện / Kết nối
Cài đặt Arduino IDE
Trước tiên, bạn cần cài đặt phần mềm Arduino IDE từ trang web chính thức của Arduino . Dưới đây là hướng dẫn từng bước đơn giản về " Cách cài đặt Arduino IDE ".
mã số
Bây giờ hãy sao chép đoạn mã sau và tải lên phần mềm Arduino IDE.
#define FORCE_SENSOR_PIN A0 // the FSR and 10K pulldown are connected to A0
void setup() {
Serial.begin(9600);
}
void loop() {
int analogReading = analogRead(FORCE_SENSOR_PIN);
Serial.print("Force sensor reading = ");
Serial.print(analogReading); // print the raw analog reading
if (analogReading < 10) // from 0 to 9
Serial.println(" -> no pressure");
else if (analogReading < 200) // from 10 to 199
Serial.println(" -> light touch");
else if (analogReading < 500) // from 200 to 499
Serial.println(" -> light squeeze");
else if (analogReading < 800) // from 500 to 799
Serial.println(" -> medium squeeze");
else // from 800 to 1023
Serial.println(" -> big squeeze");
delay(1000);
}
Giải thích làm việc
Mã này đọc và phân tích tín hiệu analog nhận được từ Điện trở Cảm biến Lực (FSR) được kết nối với Arduino Uno. FSR được kết nối song song với chân analog A0 của Arduino bằng điện trở kéo xuống 10K ohm. Chương trình đọc tín hiệu analog và in ra lực tác dụng lên FSR dựa trên phạm vi giá trị đo được. Hàm thiết lập khởi tạo giao tiếp nối tiếp giữa Arduino và máy tính.
Hàm vòng lặp đọc lại tín hiệu analog nhiều lần và xác định lực tương ứng với FSR. Giá trị analog thô và phép đo lực sau đó được in ra màn hình nối tiếp kèm theo thông báo như "không áp lực", "chạm nhẹ", "bóp nhẹ", "bóp vừa phải" hoặc "bóp mạnh". Chức năng trì hoãn được sử dụng để ngăn kết quả in quá nhanh và cho phép cảm biến có thời gian nghỉ giữa các lần đo.
Ứng dụng
- Robot và tự động hóa
- Tương tác giữa người và máy tính
- Trò chơi và thực tế ảo
- Thiết bị và dụng cụ y tế
- Thiết bị thể thao và dụng cụ tập luyện
- Nhạc cụ và Bộ điều khiển
- Kiểm soát chất lượng và thử nghiệm
- Hệ thống an toàn và bảo mật
- Giám sát sức khỏe kết cấu
Phần kết luận.
Chúng tôi hy vọng bạn thấy mạch cảm biến lực này hữu ích.