Mục lục:

Cách xây dựng công cụ theo dõi thời gian ngồi: 7 bước
Cách xây dựng công cụ theo dõi thời gian ngồi: 7 bước

Video: Cách xây dựng công cụ theo dõi thời gian ngồi: 7 bước

Video: Cách xây dựng công cụ theo dõi thời gian ngồi: 7 bước
Video: Quản lý thời gian kiểu này, ai làm lại bạn nổi? 2024, Tháng mười một
Anonim
Cách xây dựng công cụ theo dõi thời gian ngồi
Cách xây dựng công cụ theo dõi thời gian ngồi

Dự án này sẽ sử dụng Cảm biến khoảng cách siêu âm Zio Qwiic để phát hiện và theo dõi một người. Thiết bị sẽ được đặt một cách chiến lược trên đầu màn hình / màn hình đối diện với người ngồi xuống, trước máy tính của họ.

Dự án sẽ theo dõi họ đã ngồi trong bao lâu tính bằng giờ / phút. Sau khi đạt đến thời gian ‘ngồi’ tối đa, nó sẽ cảnh báo họ đứng dậy và đi lại.

Bước 1: Sơ đồ

Sơ đồ
Sơ đồ

Bước 2: Thiết lập

Cài đặt
Cài đặt

Bạn sẽ cần các mô-đun sau để xây dựng dự án này:

  • Ban phát triển Zuino M Uno
  • Cảm biến khoảng cách siêu âm Zio Qwiic
  • Màn hình OLED Zio Qwiic 0,91”
  • Cáp Qwiic (200mm)
  • Cáp Micro USB

Bước 3: Chuỗi Daisy Tất cả các mô-đun lại với nhau

Daisy Chain Tất cả các mô-đun cùng nhau
Daisy Chain Tất cả các mô-đun cùng nhau

Bước 4: Cấu hình & Mã

Tải xuống và cài đặt các thư viện sau vào Arduino IDE của bạn:

  • Thư viện GFX Adafruit
  • Thư viện Adafruit SSD1306

Tải mã dự án đầy đủ lên bảng của bạn. Cắm Uno của bạn vào máy tính. Tải xuống và Flash mã vào Uno của bạn bằng Arduino IDE.

Ngoài ra, bạn có thể tải xuống mã từ trang Github của chúng tôi.

Bước 5: Giải thích mã

Ngay từ đầu, cảm biến sẽ phát hiện sự hiện diện của con người đang ngồi trong khoảng cách 75cm. Lúc này, tất cả các bộ đếm sẽ được khởi tạo bằng 0.

uint16_t time_sit1 = 0; uint16_t time_sit2 = 0; uint16_t time_leave1 = 0; uint16_t time_leave2 = 0; uint16_t lim = 75; // Khoảng cách từ bộ cảm biến đến chỗ ngồi16_t maxsit_time = 7200000; // Đặt thời gian ngồi tối đa tính bằng mili giây

Bên trong chức năng vòng lặp, đầu tiên cảm biến sẽ phát hiện sự hiện diện của con người. Nếu không có đối tượng nào nằm trong phạm vi phát hiện, một ‘bộ đếm rời bỏ’ sẽ bắt đầu theo dõi thời gian khi không có ai.

if (distance * 0.1 <lim) {// phát hiện một người có nằm trong phạm vi phát hiện distance_H = Wire.read (); khoảng cách_L = Wire.read (); khoảng cách = (uint16_t) khoảng cách_H << 8; khoảng cách = khoảng cách | khoảng cách_L; ngồi(); time_leave1 ++; // theo dõi thời gian không có ai ở xung quanh Calcultime ();

Nếu người đó đã ngồi hơn 2 giờ, mã sẽ hiển thị thông báo cho người đó nghỉ ngơi.

if (time_sit2> maxsit_time) {maxsit (); time_leave1 = millis () / 1000; time_leave1 ++; thời gian tính toán ();

Nếu người đó quyết định nghỉ giải lao, mã sẽ kiểm tra lại xem có sự hiện diện của con người hay không. Nếu không có sự hiện diện nào được phát hiện, bộ đếm ngồi sẽ đặt lại về 0 và bộ đếm nghỉ sẽ bắt đầu. Cảm biến sẽ theo dõi thời gian mà người đó đã rời khỏi không gian làm việc của họ để nghỉ ngơi.

else if (khoảng cách * 0,1> lim) {// phát hiện một người có nằm ngoài phạm vi không? Tính thời gian (); Serial.print ("Thời gian ngồi:"); Serial.print (time_sit2 / 1000); Serial.println ("giây"); time_sit1 = millis () / 1000; Serial.println ("Không ai cả"); time_sit1 ++; chậm trễ (1000);

Bước 6: Demo

Bản giới thiệu
Bản giới thiệu

Đặt Cảm biến Khoảng cách Siêu âm Zio Qwiic lên trên màn hình máy tính của bạn.

Lưu ý: Tốt hơn là đặt nó phía trên máy tính để tránh bất kỳ vật thể nào bị cảm biến phát hiện có thể làm sai lệch kết quả.

Bạn có thể xem kết quả thời gian ngồi trên màn hình OLED gắn với thiết bị.

Bước 7: Cách thức hoạt động

Làm thế nào nó hoạt động
Làm thế nào nó hoạt động
Làm thế nào nó hoạt động
Làm thế nào nó hoạt động
Làm thế nào nó hoạt động
Làm thế nào nó hoạt động

Cảm biến Khoảng cách siêu âm sẽ theo dõi và phát hiện một người đang ngồi nếu người đó đang ngồi trong phạm vi 75cm (khoảng cách từ màn hình đến ghế) từ cảm biến.

Nó sẽ theo dõi số giờ mà người đó đã ngồi và khoảng cách từ cảm biến.

Nếu người đó không nằm trong phạm vi 75cm được chỉ định, cảm biến sẽ cho rằng người đó đã rời khỏi khu vực ngồi của mình. Màn hình OLED sẽ hiển thị thời gian một người rời đi sau khi ngồi xuống.

Nếu cảm biến đã theo dõi và phát hiện một người đã ngồi hơn 2 giờ liên tục, màn hình sẽ hiển thị thông báo cho phép người đó nghỉ ngơi.

Đề xuất: