Deze vierde cyclus gaat over stappentellers en activity trackers. Misschien heb je er zelf wel eentje: een polsband waarmee je bijhoudt hoeveel stappen je zet op een dag.
Deze horloges maken vaak gebruik van een versnellingssensor, dat is dan ook de centrale sensor in deze cyclus. De eindopdracht houdt in dat je zelf een stappenteller gaat ontwikkelen.
Stappentellers en activity-trackers
Inleiding
In het volgende filmpje zie je hoe technologie kan bijdragen aan een gezondere levensstijl van mensen en de specifiek de rol van een stappenteller.
Bekijk de onderstaande video van de consumentenbond over het testen van smartwatches en activity trackers.
Smartwatches - Hoe we testen (Consumentenbond)
Nauwkeurigheid van stappentellers
Hieronder zie je een citaat van iemand die een activity tracker heeft getest.
Nauwkeurigheid + metingen: de functie waarbij het apparaat een logboek bijhoudt en dan zelf registreert of iemand loopt, hardloopt, slaapt, etc., laat nog wel eens gebreken zien. Zo registreerde het apparaat af en toe dat ik op de crosstrainer zou hebben gestaan terwijl ik dan gewoon in stevig tempo een heuvel aan het oplopen was. Ook is hij niet helemaal nauwkeurig als het gaat om het bijhouden van de nachtrust. Zo registreert het apparaat niet altijd even goed wanneer iemand echt in slaap is gevallen waardoor de volgende dag de aangegeven duur van de slaap niet helemaal correspondeert met de werkelijkheid.
Bron: https://www.kieskeurig.nl/c/samsung_gearfit2_testpanel
Ook stappentellers geven verschillende resultaten volgens de consumentenbond: De nauwkeurigheid laat helaas te wensen over. Na precies 100 stappen geven de stappentellers verschillende resultaten: 110, 113 en 121. Na een hele dag lopen de verschillen op tot ruim 1000 stappen. Uit een eerder onderzoek van de Consumentenbond uit 2008 bleek dat de nauwkeurigheid lijkt af te hangen van de manier van lopen, de afwijking verschilde tussen de proefpersonen.
Bron: https://www.consumentenbond.nl/smartwatch/goedkope-stappentellers#no2
Opdracht: activity trackers op je telefoon
Opdracht: vergelijk activity trackers op je telefoon
Er zijn allerlei activity trackers, stappentellers en pedometers als app te downloaden. Installeer drie van deze apps op je telefoon en onderzoek de nauwkeurigheid van deze apps: hoe precies bepalen de apps het aantal stappen dat je loopt? Geeft een vergelijking van de drie apps. Werk hierbij in groepjes van 2 of 3 leerlingen.
Versnellingssensor
Versnellingssensor op je telefoon
De versnellingsmeter is een sensor waarvan je vaak niet eens weet dat je die gebruikt. Zo zit er in veel smartphones een versnellingsmeter om te bepalen of een gebruiker ermee schudt. Maar ook om te bepalen hoe jij jouw smartphone of tablet vasthoudt zodat het scherm mee kan draaien. De controllers van bekende spelcomputers hebben vaak een versnellingsmeter om de bewegingen van de gebruiker te detecteren.
Er zijn allerlei apps ontwikkeld waarmee je kunt zien welke sensoren er op je telefoon zitten en wat voor gegevens deze sensoren genereren. Hieronder zie je een schermafdruk van de app ‘Sensor Kinetics’ waarbij de gegevens van de versnellingssensor (accelerometer) op de telefoon in een grafiek worden weergegeven.
Voor deze opdracht heb je je telefoon nodig. Installeer een app waarmee je kunt zien welke sensoren op je telefoon aanwezig zijn en welke gegevens deze sensoren genereren. Zoek in de app-store bijvoorbeeld op ‘sensors’, dan vind je er genoeg. Een voorbeeld is ‘Sensor Kinetics’ voor Android telefoons.
Verken de app en bekijk welke gegevens worden getoond. Kijk specifiek naar de versnellingssensor. Probeer te bepalen wat voor gegevens deze sensoren geven en hoe je die kunt beïnvloeden.
Hoe werkt een versnellingssensor
Hieronder staan twee engelstalige filmpjes over de werking van de versnellingssensor (=accelerometer). Het eerste filmpje is heel toegankelijk. Het tweede filmpje gaat wat meer de diepte in.
Behing the MakeCode Hardware - Accelerometer
How a Smartphone Knows Up from Down (accelerometer)
Grillige data
Piekdetectie
Sommige sensoren geven duidelijke informatie. Een aanraaksensor geeft aan of de sensor wordt aangeraakt/ingedrukt (het resultaat is 1) of niet (het resultaat is 0). De versnellingssensor geeft echter niet direct zulke duidelijke informatie. Stel je wilt de versnellingssensor gebruiken om het aantal stappen te tellen dat iemand zet. De versnellingssensor zal echter niet het aantal stappen als output geven. De output van een versnellingssensor ziet er eerder uit zoals hieronder. De data komt van een versnellingssensor die is gebruikt bij het (hard)lopen. De data is grillig.
Je zult nu op basis van deze data moeten bepalen wanneer er een stap is gezet. Daarvoor moet je het aantal pieken in de grafiek tellen. Of beter gezegd, je moet een programma maken dat bepaalt wanneer een piek is bereikt. Dat heet ook wel ‘peak detection’. Je kunt daarvoor een threshold (drempelwaarde) gebruiken. Elke keer als de waarde van de sensor boven de threshold uitkomt wordt het aantal stappen verhoogd. Je ziet dat weergegeven in de onderstaande figuur.
Opdracht: toestandsdiagram om het aantal pieken te tellen
Maak een toestandsdiagram waarmee het aantal pieken wordt geteld. Op basis van zo'n toestandsdiagram kun je een stappenteller maken.
De mogelijke gebeurtenissen zijn:
Versnelling is onder de drempel (threshold)
Versnelling is boven de drempel (threshold)
Er is maar één mogelijke actie:
aantal stappen + 1
Ruisdetectie
Helaas is de output die een versnellingssensor geeft niet een nette grafiek. De grafiek bevat veel ruis (engels: noise), er zitten allerlei kleine, lokale pieken tussen die niet moeten worden meegeteld. Het herkennen van de ruis wordt wel ‘noise detection’ genoemd.
Teken een voorbeeld van een grafiek met een lokale piek en een threshold, waarbij het toestandsdiagram dat je eerder maakte niet goed werkt: er worden te veel pieken geteld.
Om het probleem van een lokale piek op te lossen kun je werken met twee thresholds (drempelwaarden) in plaats van één. Je gebruikt dan een bovengrens en een ondergrens, zoals hieronder.
Opdracht: toestandsdiagram voor twee drempelwaarden
Maak een toestandsdiagram waarmee het aantal pieken wordt geteld op basis van twee drempelwaarden.
De mogelijke gebeurtenissen zijn (je hoeft ze niet per se allemaal te gebruiken):
Versnelling is onder de onderste drempel
Versnelling is boven de onderste drempel
Versnelling is onder de bovenste drempel
Versnelling is boven de bovenste drempel
Er is maar één mogelijke actie:
aantal stappen + 1
Oefenopdracht: stilzitalarm
Opdracht: toestandsdiagram voor stilzitalarm
Mensen die veel achter de computer zitten bewegen tussendoor soms te weinig, en dat is slecht voor hun nek en schouders. Maak een toestandsdiagram voor een systeem met een versnellingssensor dat een signaal (bijvoorbeeld een zoemer) geeft zodra iemand te lang stil zit. Zodra die persoon in beweging komt gaat het signaal uit.
Dit lesmateriaal is gepubliceerd onder de Creative Commons Naamsvermelding 4.0 Internationale licentie. Dit houdt in dat je onder de voorwaarde van naamsvermelding vrij bent om:
het werk te delen - te kopiëren, te verspreiden en door te geven via elk medium of bestandsformaat
het werk te bewerken - te remixen, te veranderen en afgeleide werken te maken
voor alle doeleinden, inclusief commerciële doeleinden.