Stap 4: Code!
Nu, tijd voor de programmering. Als u ervoor kiest om dit zelf te herscheppen, moet u zal zeer waarschijnlijk tweak enkele van de waarden hiervoor voor werkzaamheden voor u. Het oorspronkelijke Ino bestand is hieronder beschikbaar voor download. Ik heb ook bestemd voor de code zo modulair, kun je uit stukjes en beetjes te gebruiken in uw eigen software als u wilt.
#include
#include
#include<SPI.h> <br>#include <SD.h>
int a; float tempcelsius; int B=3975; //B value of the thermistor(Do Not Change!) float resistance; double tempfarenheit = 0; Servo tempservo; int temptoservo = 0;
Lus - de lus is de code die herhaaldelijk zal lopen
//Begin Temperature Code<br> a=analogRead(0); resistance=(float)(1023-a)*10000/a; //get the resistance of the sensor; tempcelsius=1/(log(resistance/10000)/B+1/298.15)-273.15; //convert resistance to Celsius via datasheet ; tempfarenheit=((tempcelsius*9)/5)+31; //OPTIONAL - Convert from Celsius to Farenheit //End Temperature Code
De hier getoonde temperatuur-code is uit de Grove temperatuursensor gegevensblad om te bepalen van de temperatuur van de de thermistor weerstand.
Data Logging mogelijkheden
//Begin SD Logging code<br> File dataLog = SD.open("datalog.txt", FILE_WRITE);
if (dataLog) { dataLog.print("Temp: "); dataLog.println(tempfarenheit); dataLog.print("Sound Level: "); dataLog.println(soundLevel); dataLog.print("Light Level: "); dataLog.println(lightLevel); delay(5000); dataLog.close() //End SD Logging Code
Deze code zal het dumpen van de huidige sensorgegevens naar een txt-bestand om de 5 seconden. U kunt de wachttijd tussen stortplaatsen wijzigen als u wenst.