Eindproject Arduino Kit: Connecteren van het fysieke met het digitale

Eindproject Arduino Kit: Connecteren van het fysieke met het digitale

Situatie                                                                                                                                                                                  Als eindopdracht binnen de module Logisch Probleem Oplossen kregen wij de instructie om de fysieke wereld met het digitale te connecteren aan de hand van een Arduino Kit project.

Taak

Met de Arduino kit moesten we dus een probleemstelling aanpakken die zich voordoet in ons ruggengraatproject van SBP. Wij doen als team Hello Sports een project rond het activeren en motiveren van studenten op het vlak van sporten. We creëren een platform die de leden een activiteit geeft die zich voordoet op een bepaalde locatie waarop ze zich kunnen aanmelden.

En precies op deze locatie wou ik een manier creëren om automatisch feedback te verkrijgen in verband met de hoeveelheid sporters aanwezig zijn in vergelijking met het aantal personen die zich aanmelden. Ook wou ik een enige idee krijg welk effect het weer heeft op de activiteit en evenement in het algemeen.

Actie

Ik ben eerst en vooral aan de slag gegaan met de temperatuur en vochtigheid sensor, elk Elegoo Arduino starting kit heeft zo’n sensor en deze is dan ook makkelijk aan te sluiten. De programmatie hiervan ging ook vlotteloos, zo vindt je online talloze manieren om deze te programmeren en geeft Elegoo zelf hierin ook een tutorial mee. Zo stelde ik mijn sensor in om elke 20 seconden een meting te doen van de temperatuur in Celsius en het procent vochtigheid er in de lucht hangt die dus aangeeft of het regent of niet.

Het tweede deel van de automatisering was het aanpakken van het tellen van het aantal personen aanwezig, in mijn Arduino kit zijn er verschillende manieren om dit aan te pakken maar ik koos voor de werking met een ultrasonische sensor. Deze sensor zette ik eerst en vooral vast op het ‘breadboard’ zodat deze een vaste ondergrond heeft. Verder ging de aansluiting van de sensor ook vrij vlot en bevindt het zich allemaal op een vrij klein oppervlak. De programmering van de sensor ging vooral om het finetunen van de afstand die de sensor meet, zo kan ik in de code het aantal cm die de sensor meet aanpassen aan de ingang van zowat elke sportlocatie maar staat deze momenteel op één meter.

Ook had deze code een delay nodig van ongeveer een halve seconde maar dit ging niet meteen gepaard met de ‘delay’ die al op de temperatuur en vochtigheid sensor stond. Zo heeft de ‘delay’ functie altijd effect op de volledige code en dit zou zorgen voor een spam aan metingen van de temperatuur -en vochtigheidsmeter. Hiervoor zocht ik dus een alternatieve optie die mij de volledige aparte controle gaf over de twee delen codes en heb ik deze na wat opzoekwerk met succes gevonden. De volledige code was nu geverifieerd en geüpload naar het bord via het programma Arduino IDE.

Dit is het schema en de output:

Resultaat

Deze automatisering met de Arduino kit gaf mij dan ook een oplossing voor mijn probleemstelling en manier om heel wat relevante informatie te verzamelen, bij de komende test-activiteiten zal ik precies kunnen zien hoeveel mensen het terrein in kwestie betreden en wat de weer-omstandigheden zijn op dat bepaald moment. Dit geeft me de kans om een correlatie te leggen met de gegevens die ons een beter inzicht kan geven in het project.

Reflectie

Het connecteren van het project Hello Sports met een automatisering aan de hand van een Arduino Kit leek voor mij op het eerste zich niet evident maar na heel wat creatieve insteek van zowel offline en online bronnen ben ik heel blij met de oplossing die ik gemaakt heb. Ook heeft deze oplossing nog heel wat potentieel om verder uitgebouwd te worden in de toekomst en is de verkregen informatie heel interessant voor verdere feedback te verkrijgen in verband met ons project.

Voorstelling:

#define trigPin 12

#define echoPin 11

int counter = 0;

int currentState = 0;

int previousState = 0;

#include “DHT.h”

#define DHTPIN 2

#define DHTTYPE DHT11

DHT dht(DHTPIN, DHTTYPE);

void setup() {

Serial.begin (9600);

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);

Serial.begin(9600);

Serial.println(F(“Start persoon/weer meter”));

dht.begin();

}

void loop() {

static boolean blink = false;

static unsigned long startTemp = 0;

static unsigned long startBlink = 0;

unsigned long msTime = millis();

if (msTime – startTemp >= 500) {

startTemp = msTime;

long duration, distance;

digitalWrite(trigPin, LOW);

delayMicroseconds(2);

digitalWrite(trigPin, HIGH);

delayMicroseconds(2);

digitalWrite(trigPin, LOW);

duration = pulseIn(echoPin, HIGH);

distance = (duration/2) / 29.1;

if (distance <= 100){

currentState = 1;

}

else {

currentState = 0;

}

if(currentState != previousState){

if(currentState == 1){

counter = counter + 1;

Serial.println(counter);

}

}}

{

if (msTime – startBlink >= 20000 && Serial.print(F(” Vochtigheid: “))) {

startBlink = msTime;

float h = dht.readHumidity();

float t = dht.readTemperature();

float f = dht.readTemperature(true);

if (isnan(h) || isnan(t) || isnan(f)) {

Serial.println(F(“Lezing van sensor is mislukt!”));

return;

}

float hif = dht.computeHeatIndex(f, h);

float hic = dht.computeHeatIndex(t, h, false);

Serial.print(h);

Serial.print(F(“%  Temperatuur: “));

Serial.print(t);

Serial.println(F(“C “));

}

}}



Bronnen:

Software IDE. (z.d.). Geraadpleegd 15 januari 2021, van https://www.arduino.cc/en/software Arduino Learn. (z.d.). ELEGOO Official. Geraadpleegd 15 januari 2021, van https://www.elegoo.com/pages/learn Arduino Kits User Support. (z.d.). ELEGOO Official. Geraadpleegd 15 januari 2021, van https://www.elegoo.com/pages/arduino-kits-support-files arduino uno—Delay a part of the void loop. (z.d.). Arduino Stack Exchange. Geraadpleegd 15 januari 2021, van https://arduino.stackexchange.com/questions/41664/delay-a-part-of-the-void-loopRoger Meier’s Freeware. (z.d.). Geraadpleegd 15 januari 2021, van https://freeware.the-meiers.org/Paul McWhorter. (2020). Arduino Tutorial 53: Understanding and Connecting the HC-SR04 Sensorhttps://www.youtube.com/watch?v=M-UKXCUI0rE&ab_channel=PaulMcWhort

Geef een antwoord