2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
Napravili smo mjerni uređaj za mjerenje saliniteta vode pomoću magnetskog polja i linearnog hal senzora. Za izradu smo koristili Foton čestica, ali se mogao koristiti i Arduino koji radi praktički na isti način.
Za izradu ovog projekta potrebno vam je nekoliko stvari:
- Čestice/arduino uključujući matičnu ploču i neke kabele
- linearni Hall senzor
- neki magneti (koristili smo male, ali jake neodimijske magnete)
- olovku
- malo trake
Korak 1: Kontejner
Olovka će se koristiti kao spremnik, stoga samo izvadite iglu kako biste imali samo plastičnu posudu.
Zatvorite malu rupu trakom i zalijepite magnete blizu male rupe sa strane olovke.
Korak 2: Povežite Particle/Arduino
Spojite česticu ili arduino na matičnu ploču. Također povežite linearni Hall senzor na isti način kao na slici, gornji pin na 3,3 V, srednji pin na GND i donji pin na analogni ulaz.
Korak 3: Kôd
Na fotonu čestica možete samo pritisnuti pin koji ste koristili kao ulaz i upotrijebiti funkciju analogRead da biste dobili vrijednost iz Hall senzora.
Ako želite da se to radi automatski ili ako koristite arduino, trebat će vam kôd koji izgleda otprilike ovako:
// pin za mjerenje fromint analogPin = A0;
// količina vremena, u milisekundama, između mjerenja.
// budući da ne možete objaviti previše događaja, i ovo mora biti najmanje 1000
int delayTime = 5000;
// naziv događaja tako da ćete prepoznati mjerenja koja teku
String eventName = "mjerenje/salinitet";
String laag = "Nisko";
String middel = "Srednji";
String hoog = "Visoko";
void setup () {
}
void loop () {{100} {101}
int mjerenje = analogRead (analogPin);
if (mjerenje <= 1750) {
Particle.publish (eventName, laag); }
if (mjerenje> = 1751 && mjerenje <= 1830) {
Particle.publish (eventName, middel);
}
if (mjerenje> = 1831 && mjerenje <= 2100) {
Particle.publish (eventName, hoog);
}
if (mjerenje> = 2101) {
}
delay (delayTime);
}
Korak 4: Izmjerite
Naravno, vrijednosti u kodu će se morati kalibrirati prema salinitetu koji koristite, pa naprijed i uzmite 3 šalice vode. Pehar 1 će biti samo voda, Kup 3 će biti potpuno zasićen solju, a Kup 2 će biti negdje između.
Uzmite jednu čašu i sipajte malo vode u olovku.
Držite olovku pored Hall -senzora s magnetima koji strše s druge strane (tako će voda biti stisnuta između magneta i senzora)
Koristite funkciju analogRead da vidite vrijednost vode koju koristite i upotrijebite tu vrijednost u kodu.
Vrijednosti koje smo mjerili bile su:
samo voda: 1720
Zasićene solju: 1840
negdje između: 1760