Cuprins:
- Pasul 1: Schematic
- Pasul 2: Configurare
- Pasul 3: Daisy Chain Toate modulele împreună
- Pasul 4: Configurare și cod
- Pasul 5: Explicarea codului
- Pasul 6: Demo
- Pasul 7: Cum funcționează
Video: Cum să construiți un Tracker al timpului de ședere: 7 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Acest proiect va utiliza senzorul de distanță cu ultrasunete Zio Qwiic pentru a detecta și urmări o persoană. Dispozitivul va fi plasat strategic deasupra unui ecran / monitor orientat către persoana care stă jos, în fața computerului său.
Proiectul va urmări cât timp stau așezat în ore / minute. După atingerea timpului maxim de „ședere”, acesta îi va alerta să se ridice și să se plimbe.
Pasul 1: Schematic
Pasul 2: Configurare
Veți avea nevoie de următoarele module pentru a construi acest proiect:
- Consiliul de Dezvoltare Zuino M Uno
- Senzor de distanță cu ultrasunete Zio Qwiic
- Afișaj OLED Zio Qwiic de 0,91”
- Cabluri Qwiic (200mm)
- Cablu micro USB
Pasul 3: Daisy Chain Toate modulele împreună
Pasul 4: Configurare și cod
Descărcați și instalați următoarele biblioteci pe IDE-ul dvs. Arduino:
- Biblioteca Adafruit GFX
- Biblioteca Adafruit SSD1306
Încărcați codul complet al proiectului pe tablă. Conectați-vă Uno la un computer. Descărcați și introduceți codul pe Uno utilizând ID-ul Arduino.
Alternativ, puteți descărca codul de pe pagina noastră Github.
Pasul 5: Explicarea codului
De la început, senzorul va detecta prezența unui om așezat la o distanță de 75 cm. În acest moment, toate contoare vor fi inițializate la zero.
uint16_t time_sit1 = 0; uint16_t time_sit2 = 0; uint16_t time_leave1 = 0; uint16_t time_leave2 = 0; uint16_t lim = 75; // Distanța de la senzor la seatuint16_t maxsit_time = 7200000; // Setați timpul maxim de ședere în ms
În interiorul funcției de buclă, senzorul va detecta mai întâi prezența umană. Dacă niciun obiect nu se află în intervalul de detectare, un „contor de părăsire” va începe să urmărească timpul în care nimeni nu este prezent.
if (distanță * 0,1 <lim) {// detectează dacă o persoană se află în intervalul de detecție distance_H = Wire.read (); distance_L = Wire.read (); distance = (uint16_t) distance_H << 8; distanță = distanță | distanță_L; sta(); time_leave1 ++; // urmărește timpul pe care nimeni nu îl are în calcul ();
Dacă el / ea a stat mai mult de 2 ore, codul va afișa un mesaj pentru ca persoana să ia o pauză.
if (time_sit2> maxsit_time) {maxsit (); time_leave1 = millis () / 1000; time_leave1 ++; calculatetime ();
Dacă persoana decide să facă o pauză, codul va verifica din nou dacă există prezență umană. Dacă nu este detectată nicio prezență, contorul de ședere se va reseta la zero și va începe contorul de concediu. Senzorul va urmări timpul în care persoana a părăsit spațiul de lucru pentru a face o pauză.
else if (distanță * 0,1> lim) {// detectează dacă o persoană este în afara intervalului de calcul (); Serial.print ("Time sit:"); Serial.print (time_sit2 / 1000); Serial.println ("sec"); time_sit1 = millis () / 1000; Serial.println („Nimeni”); time_sit1 ++; întârziere (1000);
Pasul 6: Demo
Așezați senzorul de distanță cu ultrasunete Zio Qwiic deasupra monitorului computerului.
Notă: Este mai bine să îl puneți deasupra computerului pentru a evita detectarea de către senzor a obiectelor care ar putea distorsiona rezultatele.
Puteți vizualiza rezultatele timpului de ședere pe afișajul OLED atașat dispozitivului.
Pasul 7: Cum funcționează
Senzorul de distanță cu ultrasunete va urmări și detecta o persoană așezată dacă se află în raza de 75 cm (distanța de la monitor la scaun) de la senzor.
Acesta va urmări numărul de ore pe care a stat persoana și distanța de la senzor.
Dacă el / ea nu se încadrează în intervalul specificat de 75 cm, senzorul va presupune că persoana a părăsit zona de ședere. Ecranul OLED va afișa timpul lăsat de o persoană după ce s-a așezat.
Dacă senzorul a urmărit și a detectat că o persoană a stat mai mult de 2 ore consecutive, ecranul va afișa un mesaj pentru a-i permite să ia o pauză.
Recomandat:
Măsurarea timpului (ceas cu bandă măsurată): 5 pași (cu imagini)
Time Measure (Tape Measure Clock): Pentru acest proiect, noi (Alex Fiel și Anna Lynton) am luat un instrument de măsurare zilnic și l-am transformat într-un ceas! Planul inițial era de a motoriza o bandă-măsură existentă. Făcând asta, am decis că ar fi mai ușor să ne creăm propriul shell pentru a merge cu
Efect de manipulare a timpului cu stroboscop diferențial (detaliat): 10 pași
Efect de manipulare a timpului cu stroboscop diferențial (amănunțit detaliat): Astăzi vom învăța să realizăm un stroboscop diferențial care poate face ca obiectele în mișcare periodică să apară încă în ochi. Încă suficient pentru a lua act de detaliile minore din obiectul care se învârte, care este practic invizibil altfel. Poate, de asemenea, să arate
Memento de utilizare a timpului ecranului (funcționează numai pe Windows, iOS nu va funcționa): 5 pași
Memento de utilizare a timpului ecranului (funcționează numai pe Windows, iOS nu va funcționa): Introducere Aceasta este o mașină utilă realizată din Arduino, vă reamintește să vă odihniți făcând un „biiii!”; sunet și a face computerul să revină la blocarea ecranului după 30 de minute de ecran. După odihnă timp de 10 minute, va „b
Obținerea timpului de pe Internet utilizând ESP8266 - NTP Clock Project cu ESP8266 Nodemcu: 5 pași
Obținerea timpului de pe Internet utilizând ESP8266 | NTP Clock Project With ESP8266 Nodemcu: În acest tutorial vom vedea cum să obțineți timp folosind ESP8266 / nodemcu cu Arduino IDE. Obținerea timpului este utilă în special în înregistrarea datelor pentru a vă marca citirile. Dacă proiectul dvs. ESP8266 are acces la Internet, puteți obține timp folosind Network T
Reelaborarea unui BGA folosind un șablon de ședere în loc: 7 pași
Reelaborarea unui BGA folosind un șablon de ședere în loc: șablonul de prelucrare BGA cu caracteristică de ședere pe loc pentru a simplifica procesul și pentru a repara masca de lipit deteriorată. Îmbunătățește randamentele la prima trecere și repară masca de lipit care ar fi putut fi deteriorată de dispozitiv. Vedeți mai multe informații despre prelucrarea BGA la ba