-
Maar de cijfers geven geen duidelijk beeld van de werking van de installatie. Men ziet dat er een lichte overshoot is, maar van hoeveel? Hoe evolueren de temperaturen? Is er een oscillatie te zien of evolueren d etemperaturen eerder chaotisch? Om dt te zien hebben we grafieken nodig. Arduino kan niet zomaar grafieken tekenen, maar kan wel een logboek opmaken. Om grafieken te tonen heb je veel data nodig, minstens over één dag. Gelukkig kan de arduino naar een SD kaart schrijven. Je moet enkel een paar includes voorzien en de arduino kan SD kaarten lezen en schrijven (enkel FAT-19 en FAT-32 geformateerde kaarten). Het schijven van data naar de SD kaart is even eenvoudig als het sturen van een data-lijn naar de seriele impactprinter. De FAT bestandsorganisatie is zo eenvoudig, dat het door de arduino ondersteund kan worden. Dat is ook niet verwondelijk, FAT werd ontworpen in een tijdstip dat de computers veel minder krachtig waren. Het formaat werd ook gebruikt door talrijke apparaten zoals slimme televisies en fototoestellen.
SPIDe shield die gebruikt wordt voor de geheugenkaart gebruikt het SPI-protocol (serial peripheral interface) die door verschillende andere shields gebruikt wordt. De poorten 11, 12 en 13 worden gebruikt (MISO master in slave out, MOSI master out slave in, SCK serial clock). Deze poorten liggen vast, en het is niet aangeraden ze te wijzigen in de include routines. Ook wordt poort 4 gebruikt voor de chipselectie (SS slave select). De communicatie is full duplex en de timing wordt door de master geleverd.Verschillende shields die dezelfde protocol gebruiken kunnen parallel geschakeld worden, de selectie van de shield gebeurt door de SS-lijn. De selectielijn kan wel gewijzigd worden, bijvoorbeeld als je twee SD kaarten zou willen gebruiken. Er is ook geen overeenkomst welke poort gebruikt moet worden als selectielijn. De te gebruiken poort kan daarom ingesteld worden met een instructie SD.begin(i); Bepaalde accessoires hebben meerdere kunkties, en het is mogelijk één bepaalde funktie te selecteren door de betreffende SS poort aktief te maken (low). Dit is bijvoorbeeld het geval met de webserver shield die ook een kaartlezen aan boord heeft. De selectiepoort moet effektief gedefinieerd worden, zelfs al gebruikt men maar één slave en de selectielijn constant laag gehouden kan worden. Dit is nodig om de software correct te laten werken (de routines in de include bestanden). Dit protocol wordt in verschillende systemen gebruikt, zelfs op plaatsen waar men die niet zou verwachten. De communicatie tussen de Canon bodies en de lenzen gebeurt met het SPI protocol. De SD en MMC geheugenkaarten gebruiken standaard dit protocol, waardoor de shield tot een absolute minimum beperkt kan worden. Dit protocol is snelle dan I2C, dat vroeger ook gebruikt werd voor de communicatie tussen een master processor en slaves.
GrafiekopmaakIeder minuut maakt de software een regel aan:Met
We hebben een eerste grafiek die tijdens testen gemaakt werd (halverwege oktober). De verticale lijnen geven aan wanneer een onderbreking heeft plaatsgevonden. Om het uur zijn er verticale puntlijnen. Het gele gedeelte geeft de positie van de servo-motor aan die de positie van de thermostaat regelt. In feite verandert de positie constant tussen ongeveer 60 en 90. Als de temperatuur onder de setwaarde komt, dan wordt de positie van de servomotor stapsgewijs verhoogd zolang dat de brander niet aanslaat. Het rood/blauwe grafiek toont de effektieve temperatuur ten opzichte van de gevraagde temperatuur. Men ziet dat de gewenste temperatuur snel bereikt wordt als de setwaarde gewijzigd wordt en dat er een zeer beperkte overshoot is. De temperatuur stabiliseert zich juist boven de setwaarde. Het groen/paarse grafiek toont de temperatuur van de uitlaatgassen, in het groen als de brander uitgeschakeld is. De temperatuur zakt dan tot ongeveer 25°. We hebben de temperatuur van de uitlaatgassen nodig, zodat de software kan weten of de brander aanstaat of niet. Een tweede grafiek toont de temperatuursevolutie als de automatische modus uitgeschakeld wordt, tweede deel van het grafiek (geen sturing van de servomotor). In automatische modus is de temperatuurstabilisatie 0.2° boven de setwaarde, in manuele modus is er een temperatuurschommeling van ongeveer 1°. Het grafiek toont de temperatuur die op een graad na stabiel is, maar wat niet gemeten wordt is de infra-rode straling die heel sterk aanwezig is. Om een maximaal effekt te hebben heb ik zelfs de kap van de kachel verwijderd. De IR straling is echter enkel aanwezig als de kacheltemperatuur boven de 50° zit. Als er geen straling is, heeft men een koudegevoel en heeft men de neiging de temperatuur te verhogen, terwijl de temperatuur wel degelijk 18° bedraagt. In automatische modus blijft de verwarming permanent warm (maar wordt ook sneller uitgeschakeld). De laatst opgemaakte grafiek staat altijd hier. |
Publicités - Reklame