Andere delen uit deze serie:
- De waarde van sensor data, deel 1
- De waarde van sensor data, deel 2
- De waarde van sensor data, deel 4
- De waarde van sensor data, deel 5
Het leuke aan experimenteren is de verwachting tegen iets onverwachts aan te lopen. Daarvoor moet je natuurlijk niet alleen maar de geëigende banen doorlopen maar vaak iets speels doen of soms ook iets geks. Laten we daarom iets geks doen en wat andere soorten sensoren toevoegen ;-). Bijvoorbeeld een luchtdruk sensor en een CO2 sensor. Op de Arduino genoeg connectoren dus waarom niet.
CO2 en luchtdruk sensoren
Om een sensor werkend te krijgen is altijd weer een uitdaging maar met het internet en geduld kom je een heel eind. Zo blijkt de CO2 sensor maar op een beperkt aantal poorten te werken (ook afhankelijk van type Arduino). En je begint natuurlijk bij de verkeerde poort en na een aantal keer hardop gezegd te hebben ‘dat ding doet ut niet’ lees je ergens dat o.a. alleen poort 8 geschikt is 🙁 Maar natuurlijk blij wanneer het uiteindelijk toch functioneert 🙂
Per sensor is nu een werkend stukje Arduino software beschikbaar maar alles in één applicatie bouwen is toch wat lastiger. In de cyclus van uitlezen van de sensoren moet iedere sensor voldoende aandacht en tijd krijgen om de juiste waarde uit te kunnen lezen. Een stukje processing van meetwaarde kan zo maar een paar microseconden duren waardoor de kans bestaat dat er een signaal van een andere sensor niet wordt gezien. Daarom voor nu maar even terug naar de applicatie voor alleen de Shinyei fijnstof sensoren.
Opmerkelijke resultaten
Na het starten van het uitlezen van de Shinyei sensoren komen er nu ineens meer signalen dan tot nu in beeld, vreemd. En ook de tijdsduur van de signalen in microseconden lijkt constanter. Wat is er aan de hand? Is er een verandering in de software gekomen waardoor het beter gaat of juist slechter?
Dan toch maar even naar de grafische weergave kijken. Hé, dat is vreemd, per sensor zijn de metingen nu meer geconcentreerd op een bepaald kanaal.
Dit is toch wel een opvallend beeld en de vraag komt dan boven van zou de instelling van de basislijn iets met de verschillen te maken hebben? (voor een uitleg over de basislijn zie De waarde van sensor data, deel 1)
Een eerste (mogelijke) calibratie?
Sensor 2 staat meer naar rechts in de grafiek. Zou een aanpassing van de basislijn hier verandering in kunnen brengen?
We draaien wat aan de linker en de rechter potmeter en kijken naar het resultaat. Er gebeurt inderdaad iets met de positie op de x-as waar de kanalen zijn af te lezen.
Uiteindelijk laat het iets tegen de klok indraaien van de rechter potmeter een verandering zien die gunstig lijkt. De grafiek van sensor 2 verschuift dichter naar de positie van de andere sensoren. Een eerste mogelijkheid om tot een onderlinge kalibratie te komen?
Oorzaak van de opmerkelijke resultaten
Blijft natuurlijk de vraag waarom de resultaten nu zo anders zijn dan wat we in deel 1 hebben gezien. Uiteindelijk vinden we een antwoord in het onderstaande plaatje waarin het signaal van de sensor wordt weergegeven in voltage verschil 4V (high) en 0.7V (low). De periode van low is wanneer een fijnstofdeeltje passeert.
Wat blijkt is dat de CO2 sensor die nog aangesloten was, een dusdanig hoeveelheid spanning afneemt dat de voltage op de Arduino vermindert. De sensor krijgt nu moeite om niveau high 4V te halen. Er zal nu eerder en of langer een signaal worden afgegeven. Met andere woorden we krijgen nu minimaal een vertekend beeld van het aantal en grootte van de fijnstof deeltjes. Voldoende voltage op het systeem is dus van belang.
Na het verwijderen van de CO2 sensor zien we weer een ‘normaal’ beeld:
Als we de sensoren nu bekijken geven ze wel weer een breed spectrum weer, van kanaal 0 tot en met 13 zijn meetwaarden te zien. Als we de sensoren onderling vergelijken dan zien we weinig overeenkomsten.
Passieve of actieve luchtstroom
Standaard werkt de sensor met passieve luchtstroom die enigszins wordt versterkt door een ingebouwde weerstand die warmte afgeeft waardoor de lucht in beweging komt.
Om de luchtstroom te verbeteren moet de grote opening in het midden van de sensor gedicht worden. Het rechthoekige gat onder is dan de inlaat, het gat boven de uitlaat. Het is dus ook zaak om de sensor in deze positie te installeren om optimaal gebruik te maken van de luchtstroom veroorzaakt door de warmte van de weerstand (resistor/heating element zie rechter foto).
Maar wat als we een actieve luchtstroom gaan toepassen?
In onze testopstelling van 4 sensoren naast elkaar zorgen we voor een actieve luchtstroom op sensor 4 door er een ventilator dicht op te zetten. We schermen de luchtstroom enigszins af om de invloed op de andere sensoren te minimaliseren en te geleiden naar de inlaat van sensor 4. Het effect van de actieve luchtstroom is duidelijk te zien in onderstaande grafiek.
Het effect is meer signalen (meer deeltjes) én een stabieler beeld van het aantal deeltjes per kanaal met een redelijk mooie verdeling van kanaal 0 tot 14.
Het toepassen van een actieve luchtstroom heeft een positief effect op het resultaat!
Belangrijk is om de actieve luchtstroom zo geleidelijk mogelijk te laten verlopen. Om tot een ideale opstelling te komen zal er nog wel het een en ander geëxperimenteerd moeten worden.
Vervolg activiteiten
In het deel 4 gaan we de processen op de Raspberry Pi inrichten en gaan we de data naar de cloud brengen, mogelijk direct naar een SOS-service met REST-services of indirect met behulp van web-sockets.
Wordt vervolgd.
Andere delen uit deze serie:
- De waarde van sensor data, deel 1
- De waarde van sensor data, deel 2
- De waarde van sensor data, deel 4
- De waarde van sensor data, deel 5
André van der Wiel
Scapeler partner van AiREAS
[…] De waarde van sensor data, deel 3 […]
[…] De waarde van sensor data, deel 3 […]
Dit is op AiREAS herblogden reageerde:
De Scapeler experimenten met sensoren leveren verrassende inzichten op die ook variaties kunnen verklaren in een operationeel meetnetwerk……
[…] De waarde van sensor data, deel 3 […]
[…] De waarde van sensor data, deel 3 […]