Tổ chức giáo dục theo phương pháp STEAM của Mỹ

http://giaoducsteam.com

PIR sensor alarm - Cách dùng cảm biến chuyển động

PIR là chữ viết tắt của Passive InfraRed sensor (PIR sensor), tức là bộ cảm biến thụ động dùng nguồn kích thích là tia hồng ngoại. Tia hồng ngoại (IR) chính là các tia nhiệt phát ra từ các vật thể nóng. Trong các cơ thể sống, trong chúng ta luôn có thân nhiệt (thông thường là ở 37 độ C), và từ cơ thể chúng ta sẽ luôn phát ra các tia nhiệt, hay còn gọi là các tia hồng ngoại, người ta sẽ dùng một tế bào điện để chuyển đổi tia nhiệt ra dạng tín hiệu điện và nhờ đó mà có thể làm ra cảm biến phát hiện các vật thể nóng đang chuyển động. Cảm biến này gọi là thụ động vì nó không dùng nguồn nhiệt tự phát (làm nguồn tích cực, hay chủ động) mà chỉ phụ thuộc vào các nguồn tha nhiệt, đó là thân nhiệt của các thực thể khác, như con người con vật…
PIR sensor alarm - Cách dùng cảm biến chuyển động

Trước hết, chúng ta tìm hiểu cấu trúc của một cảm biến PIR (Bạn xem hình bên dưới.).

Trên đây là đầu dò PIR, loại bên trong gắn 2 cảm biến tia nhiệt, nó có 3 chân ra, một chân nối masse, một chân nối với nguồn volt DC, mức áp làm việc có thể từ 3 đến 15V. Góc dò lớn. Để tăng độ nhậy cho đầu dò, Bạn dùng kính Fresnel, nó được thiết kế cho loại đầu có 2 cảm biến, góc dò lớn, có tác dụng ngăn tia tử ngoại.

Hình vẽ cho thấy cách dùng đầu dò PIR để phát hiện người hay con vật di chuyển ngang.

Nguyên lý làm việc của loại đầu dò PIR như hình sau

Các nguồn nhiệt (với người và con vật là nguồn thân nhiệt) đều phát ra tia hồng ngoại, qua kính Fresnel, qua kích lọc lấy tia hồng ngoại, nó được cho tiêu tụ trên 2 cảm biến hồng ngoại gắn trong đầu dò, và tạo ra điện áp được khuếch đại với transistor FET. Khi có một vật nóng đi ngang qua, từ 2 cảm biến này sẽ cho xuất hiện 2 tín hiệu và tín hiệu này sẽ được khuếch đại để có biên độ đủ cao và đưa vào mạch so áp để tác động vào một thiết bị điều khiển hay báo động.

Hình vẽ cho thấy 2 vùng cảm ứng nhậy cảm tương ứng với 2 cảm biến trong đầu dò. Khi có một con vật đi ngang, từ thân con vật sẽ luôn phát ra tia nhiệt, nó được tiêu tụ mạnh với kính Fresnel và rồi tiêu tụ trên bia là cảm biến hồng ngoại, vậy khi con vật đi ngang, ở ngả ra của đầu dò chúng ta sẽ thậy. Xuất hiện một tín hiệu, tín hiệu này sẽ được cho vào mạch xử lý để tạo tác dụng điều khiển hay báo động.

Bạn xem hình động sau đây dùng diễn tả nguyên lý làm việc của đầu dò PIR đối với người qua lại:

Hãy nói về các tia nhiệt

Mọi vật thể đều được cấu tạo từ các phân tử nhỏ li ti, nhiệt là một dạng năng lượng tạo ra từ các xao động của các phân tử (Bạn xem hình), đó là các chuyển động hỗn loạn, không trật tự. Từ các xao động này, nó phát ra các tia nhiệt, bằng cảm giác thông thường của giác quan, con người chúng ta nói đó là sức nóng. Ở mỗi người nguồn thân nhiệt thường được điều ổn ở mức 37 độ C, đó là nguồn nhiệt mà ai cũng có và nếu dùng linh kiện cảm ứng thân nhiệt, chúng ta sẽ có thiết bị phát hiện ra người, đó chính là ý tưởng mà người ta chế ra thiết bị motion detector, điều khiển theo nguồn thân nhiệt chuyển động.

Hình vẽ sau đây cho thấy vật liệu nhóm pyroelectric được dùng làm cảm biến dò tia nhiệt.

Người ta kẹp vật liệu pyroelectric giữa 2 bản cực, khi có tác kích của các tia nhiệt, trên hai 2 bản cực sẽ xuất hiệu tín hiệu điện, do tín hiệu yếu nên cần mạch khuếch đại.

Trong bộ đầu dò PIR, người ta gắn 2 cảm ứng PIR nằm ngang, và cho nối vào cực Gate (chân Cổng) của một transistor FET có tính khuếch đại. Khi cảm biến pyroelectric thứ nhất nhận được tia nhiệt, nó sẽ phát ra tín hiệu và khi nguồn nóng di chuyển ngang, sẽ đến cảm biến pyroelectric thứ hai nhận được tia nhiệt và nó lại phát ra tín hiệu điện. Sự xuất hiện của 2 tín hiệu này cho nhận biết là đã có một nguồn nhiệt di động ngang và mạch điện tử sẽ phát ra tín hiệu điều khiển. Tín hiệu này có thể dùng tắt mở đèn hay dùng để báo động khi có kẻ lạ vào nhà.

Bây giờ hãy nói đến thiết bị tiêu tụ gôm tia nhiệt rọi trên bề mặt cảm ứng PIR

Chúng ta biết các tia nhiệt phát ra từ thân thể người rất yếu và rất phân tán, để tăng độ nhậy phải dùng kính có mặt kính lồi tạo chức năng tiêu tụ, quen gọi là kinh Focus, hình động dưới đây cho thấy các mặt sóng của các tia sáng khi đi qua một mặt kính lồi đã được cho gôm lại tại một điểm nhỏ, điểm đó gọi là tiêu điểm ( 焦点 , theo âm Hán Việt, chữ tiêu 焦 bên dưới có bộ hỏa 灬 火 , vậy nó có nghĩa là điểm nóng, nhiều Bạn dùng kính lúp tạo ra điểm nóng, điểm nóng này có thể đốt cháy giấy đấy, đó là trò chơi của các bạn nhỏ).

Khuyết điểm của loại kính hội tụ dùng mặt lồi thông thường là khi mặt kính mở rộng, điểm tiêu tụ sẽ không nằm ở một chổ, người ta cho hiệu chỉnh sai lệch này bằng mặt kính Fresnel (Bạn xem hình, các mặt cong ở xa trục quang đã được chỉnh lại). Bạn thấy khi ở xa trục quang học, độ cong của mặt kính được hiệu chỉnh lại, với cách làm này, chúng ta sẽ có thể hội tụ nhiều tia sáng tốt hơn, trên một diện tích rộng lớn hơn và như vậy sẽ tăng được độ nhậy cao hơn và có góc dò rộng hơn.

3. Chuẩn bị

4. Lập trình


 
  1. int ledPin = 13; // chọn chân 13 báo hiệu LED
  2. int inputPin = 2; // chọn ngõ tín hiệu vào cho PIR
  3. int pirState = LOW; // Bắt đầu với không có báo động
  4. int val = 0;
  5. int pinSpeaker = 10; //chọn chân cho chuông khi có đột nhập
  6.  
  7. void setup()
  8. {
  9. pinMode(ledPin, OUTPUT);
  10. pinMode(inputPin, INPUT);
  11. pinMode(pinSpeaker, OUTPUT);
  12. Serial.begin(9600);
  13. }
  14.  
  15. void loop()
  16. {
  17. val = digitalRead(inputPin); // đọc giá trị đầu vào.
  18. if (val == HIGH) // nếu giá trị ở mức cao.(1)
  19. {
  20. digitalWrite(ledPin, HIGH); // LED On
  21. playTone(300, 160); // thời gian chuông kêu
  22. delay(150);
  23.  
  24. if (pirState == LOW)
  25. {
  26. Serial.println("Motion detected!");
  27. pirState = HIGH;
  28. }
  29. }
  30. else
  31. {
  32. digitalWrite(ledPin, LOW);
  33. playTone(0, 0);
  34. delay(300);
  35. if (pirState == HIGH)
  36. {
  37. Serial.println("Motion ended!");
  38. pirState = LOW;
  39. }
  40. }
  41. }
  42.  
  43. void playTone(long duration, int freq)
  44. {
  45. duration *= 1000;
  46. int period = (1.0 / freq) * 1000000;
  47. long elapsed_time = 0;
  48. while (elapsed_time < duration)
  49. {
  50. digitalWrite(pinSpeaker,HIGH);
  51. delayMicroseconds(period / 2);
  52. digitalWrite(pinSpeaker, LOW);
  53. delayMicroseconds(period / 2);
  54. elapsed_time += (period);
  55. }
  56. }

 

Hình 1: Các chân GND, VCC và OUT trên cảm biến chuyển động

 

Hình 2: Lắp mạch thực tế
 

Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây