Particle Photon Salinity Meter: 4 trinn
Particle Photon Salinity Meter: 4 trinn
Anonim
Particle Photon Salinity Meter
Particle Photon Salinity Meter

Vi laget en måleenhet for å måle vannets saltholdighet ved hjelp av et magnetfelt og en lineær hallsensor. For å gjøre det brukte vi en Particle Photon, men en Arduino kan også brukes da de fungerer praktisk talt på samme måte.

For å lage dette prosjektet trenger du et par ting:

- Partikkel/arduino inkludert et brødbrett og noen kabler

- en lineær hallsensor

- noen magneter (vi brukte små, men sterke neodymmagneter)

- en penn

- litt tape

Trinn 1: Beholderen

Beholderen
Beholderen

Pennen vil bli brukt som en beholder, så ta ut pinnen slik at du bare har plastbeholderen.

Lukk det lille hullet med litt tape, og teip magnetene nær det lille hullet på siden av pennen.

Trinn 2: Koble til partikkelen/Arduino

Koble til partikkelen/Arduino
Koble til partikkelen/Arduino

Koble partikkelen eller arduinoen til brødbrettet. Koble også den lineære hallsensoren på samme måte som på bildet, den øverste pinnen til 3,3V, den midterste pinnen til GND og den nederste pinnen til en analog inngang.

Trinn 3: Koden

På partikkelfoton kan du bare trykke på pinnen du brukte som inngang og bruke funksjonen analogRead for å få verdien fra hallsensoren.

Hvis du vil at det skal gjøres automatisk, eller hvis du bruker en arduino, trenger du en kode som ser omtrent slik ut:

// pinnen for å måle fraint analogPin = A0;

// tiden, i millisekunder, mellom målingene.

// siden du ikke kan publisere for mange arrangementer, har dette også vært minst 1000

int delayTime = 5000;

// et hendelsesnavn, slik at du gjenkjenner målingene som strømmer inn

String eventName = "måling/saltholdighet";

String laag = "Lav";

String middel = "Medium";

String hoog = "Høy";

ugyldig oppsett () {

}

void loop () {

int måling = analogRead (analogPin);

hvis (måling <= 1750) {

Particle.publish (eventName, laag); }

if (måling> = 1751 && måling <= 1830) {

Particle.publish (eventName, middel);

}

if (måling> = 1831 && måling <= 2100) {

Particle.publish (eventName, hoog);

}

hvis (måling> = 2101) {

}

forsinkelse (delayTime);

}

Trinn 4: Mål

Selvfølgelig må verdiene i koden kalibreres til saltholdigheten du bruker, så fortsett og få 3 kopper vann. Kopp 1 vil bare være vann, Kopp 3 vil være fullmettet med salt og Kopp 2 vil være et sted i mellom.

Ta en av koppene og hell litt av vannet i pennen.

Hold pennen ved siden av hallsensoren med magneter som stikker ut på den andre siden (slik at vannet blir klemt mellom magnetene og sensoren)

Bruk funksjonen analogRead for å se verdien for vannet du bruker, og bruk den verdien i koden.

Verdiene vi målte var:

bare vann: 1720

Mettet med salt: 1840

et sted i mellom: 1760