Inhoudsopgave:

Een zittijd-tracker bouwen: 7 stappen
Een zittijd-tracker bouwen: 7 stappen

Video: Een zittijd-tracker bouwen: 7 stappen

Video: Een zittijd-tracker bouwen: 7 stappen
Video: Webinar #7: Stappenplan voor betrouwbare marketingdata 2024, November
Anonim
Hoe een zittijd-tracker te bouwen
Hoe een zittijd-tracker te bouwen

Dit project zal de Zio Qwiic ultrasone afstandssensor gebruiken om een persoon te detecteren en te volgen. Het apparaat wordt strategisch op een scherm/monitor geplaatst met het gezicht naar de persoon die gaat zitten, voor zijn/haar computer.

Het project houdt bij hoe lang ze zitten in uren/minuten. Nadat de maximale 'zit'-tijd is bereikt, waarschuwt het hen om op te staan en rond te lopen.

Stap 1: Schematisch:

Schematisch
Schematisch

Stap 2: Instellen

Opstelling
Opstelling

U hebt de volgende modules nodig om dit project te bouwen:

  • Zuino M Uno-ontwikkelbord
  • Zio Qwiic ultrasone afstandssensor
  • Zio Qwiic 0,91” OLED-scherm
  • Qwiic-kabels (200 mm)
  • Micro-USB-kabel

Stap 3: Daisy Chain alle modules samen

Daisy Chain alle modules samen
Daisy Chain alle modules samen

Stap 4: Configuratie en code

Download en installeer de volgende bibliotheken op uw Arduino IDE:

  • Adafruit GFX-bibliotheek
  • Adafruit SSD1306-bibliotheek

Upload de volledige projectcode naar je bord. Sluit uw Uno aan op een computer. Download en Flash de code naar uw Uno met behulp van de Arduino IDE.

Als alternatief kunt u de code downloaden van onze Github-pagina.

Stap 5: Code Uitleg

Vanaf het begin detecteert de sensor de aanwezigheid van een mens binnen een afstand van 75 cm. Op dit moment worden alle tellers op nul geïnitialiseerd.

uint16_t time_sit1 = 0;uint16_t time_sit2 = 0; uint16_t time_leave1 = 0;uint16_t time_leave2 = 0; uint16_t lim = 75; // Afstandsbereik van sensor tot de seatuint16_t maxsit_time = 720000; //Stel de maximale zittijd in ms

Binnen de lusfunctie detecteert de sensor eerst op menselijke aanwezigheid. Als er geen object binnen het detectiebereik is, begint een 'verlofteller' de tijd bij te houden dat er niemand aanwezig is.

if(distance*0.1 < lim){// detecteert of een persoon zich binnen het detectiebereik bevindt distance_H = Wire.read(); distance_L = Draad.lezen(); afstand = (uint16_t)distance_H<<8; afstand = afstand|afstand_L; zitten(); time_leave1++; // houdt de tijd bij dat niemand in de buurt is computationtime();

Als hij/zij meer dan 2 uur heeft gezeten, zal de code een bericht weergeven zodat de persoon een pauze kan nemen.

if(time_sit2 > maxsit_time){maxsit(); time_leave1 = millis()/1000; time_leave1++; berekentijd();

Als de persoon besluit een pauze te nemen, controleert de code opnieuw of er menselijke aanwezigheid is. Als er geen aanwezigheid wordt gedetecteerd, wordt de zitteller weer op nul gezet en start de verlofteller. De sensor houdt de tijd bij dat de persoon zijn werkruimte heeft verlaten om een pauze te nemen.

else if (distance*0.1 > lim){//detecteert of een persoon buiten bereik is berekeningstijd(); Serial.print("Time sit: "); Serial.print(time_sit2/1000); Serieel.println ("sec"); time_sit1 = millis()/1000; Serial.println("Niemand"); time_sit1++; vertraging (1000);

Stap 6: Demo

Demo
Demo

Plaats de Zio Qwiic Ultrasone Afstandssensor bovenop uw computermonitor.

Opmerking: het is beter om het boven de computer te plaatsen om te voorkomen dat objecten door de sensor worden gedetecteerd die de resultaten kunnen vervormen.

U kunt de resultaten van de zittijd bekijken op het OLED-display dat op het apparaat is bevestigd.

Stap 7: Hoe het werkt

Hoe het werkt
Hoe het werkt
Hoe het werkt
Hoe het werkt
Hoe het werkt
Hoe het werkt

De ultrasone afstandssensor volgt en detecteert een zittende persoon als hij/zij binnen het bereik van 75 cm (de afstand van de monitor tot de stoel) van de sensor zit.

Het houdt het aantal uren bij dat de persoon heeft gezeten en de afstand tot de sensor.

Als hij/zij zich niet binnen het gespecificeerde bereik van 75 cm bevindt, gaat de sensor ervan uit dat de persoon zijn/haar zithoek heeft verlaten. Het OLED-scherm geeft de tijd weer die iemand heeft verlaten nadat hij is gaan zitten.

Als de sensor heeft gedetecteerd en gedetecteerd dat een persoon meer dan 2 uur achter elkaar heeft gezeten, geeft het scherm een bericht weer om hem/haar een pauze te laten nemen.

Aanbevolen: