I denne artikel vil du lære at bruge analoge sensorer med Intel Galileo. Jeg vil vise dig, hvordan man bruger en simpel sensor af regn og jordfugtighed sensor.
Dette projekt kan bruges på gården: til at træffe beslutninger om, hvornår til vand dyrke afgrøder, samt meget nyttigt at have oplysninger om, hvor meget regn faldt, og niveauet af fugt jord.
På trods af at jeg har brugt i Intel Galileo-projektet, kan du også bruge den samme kode og forbindelsen med Arduino.
De komponenter, jeg har brugt:
- Intel Galileo - 1 stk.
- Layout Type IB401 eksperimenter med 400 point og kamme
- Jordfugtighedssensor - 1 stk.
- Regnsensor FC-37 - 1 stk.
Hvordan jordfugtighed sensor?
Jordfugtighedssensor er meget enkel.
Den måler modstanden af jordbunden og omdanner den til spænding på 0 til 5 V. Du kan læse denne værdi via den analoge udgange Intel Galileo bord.
Dette vil give dig et heltal fra 0 til 1024 i din kode.
På informationssiden af Jordfugtighedssensor, kan du se, at sensoren vil give dig følgende output for tør jord, fugtig jord og vand:
- Sensoren i tør jord: 0 ~ 300
- Sensoren i en fugtig jord: 300 ~ 700
- Sensoren i vandet: 700 ~ 950
Forskellige planter har brug for en grad af fugtighed. Du kan måle i real referenceværdi - og derefter bruge det i dit projekt.
Hvordan regnmåleren?
Ud af en sådan sensor er også en enkel spændingsværdi fra 0 til 5 V. Og du kan læse det med en af de analoge indgange Intel Galileo dit bord.
Sensorerne har også en digital udgang. Det vil være høj, når luftfugtighed overstiger en vis tærskel. Du kan styre den tærskel ved hjælp af den integrerede potentiometer.
Men da det er nemt at gøre i din kode, kan du springe denne konklusion og kun bruge den analoge udgang af projektet.
Trin 1: Tilslut komponenterne
Tilslut forbindelsesledningerne fra 5 V og GND fra Galileo til de to tomme rækker på layoutet.
Brug de forbindende kabler til at forbinde VCC og GND fra jordfugtighed sensoren til 5V og GND i layoutet.
Og tilslut en jumper fra kontakt SIG sensor jordfugtighed til terminalen A0 på Intel Galileo bord.
Gør det samme med regnsensor: tilslut Vcc og GND til 5V og jord på layoutet.
Og tilslut A0 fra regnsensoren på A1 om Galileo.
Tilslut strømmen Intel Galileo bord, og når USB-indikatoren lyser, tilslut USB-kablet fra computeren til Galileo.
Du er nu klar til programmering.
Trin 2: Hent koden til at læse værdier fra sensoren af jordens fugtighed
Kontroller jordfugtighed sensoren ved at downloade følgende kode:
int sensorPin = A0; // vælge input pin for sensoren
ugyldig setup () {
// Initialiser seriel port
Serial.begin (9600);
}
void loop () {
// læse værdier fra sensoren
int sensorValue = analogRead (sensorPin);
// Vis værdien
Serial.println (sensorValue);
// forsinkelse på 200 ms.
forsinkelse (200);
}
Tryk derefter på fingrene til de to kontakter på sensoren for at sikre, at der er en reaktion. Hvis du ser en ændring i de værdier, når du rører de to kontakter, hvilket betyder, at alt fungerer.
Trin 3: Kontroller regnsensoren
Nu ændre koden for at kontrollere regnmåleren.
Brug samme kode som ovenfor, men i stedet ændre variablen sensorPin på A1. Du kan kontrollere regnmåleren, for eksempel ved hjælp af en våd svamp.
Trin 4. Kombiner koden i ét
Endelig kombinere alle koden for disse to sensorer i ét program og gøre seriel udgang sjovere:
int sensorPinSoil = A0; // input pinkode til Jordfugtighedssensor
int sensorPinRain = A1; // input PIN for regnsensoren
ugyldig setup () {
Serial.begin (9600);
}
void loop () {
int soilValue = analogRead (sensorPinSoil);
int rainValue = analogRead (sensorPinRain);
// output til et læsbart format værdier
Serial.print ( "Aktuel værdi regnsensor");
Serial.println (rainValue);
Serial.print ( "Aktuel værdi på jordens fugtighed sensor");
Serial.println (soilValue);
Serial.println ( "");
forsinkelse (200);
}
Udført! Test! Og glem ikke at abonnere på min RSS-feed.