Inhaltsverzeichnis:
- Schritt 1: Der Behälter
- Schritt 2: Verbinden Sie das Partikel/Arduino
- Schritt 3: Der Code
- Schritt 4: Messen
Video: Partikel-Photonen-Salinitätsmesser - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Wir haben ein Messgerät entwickelt, um den Salzgehalt von Wasser mit einem Magnetfeld und einem linearen Hallsensor zu messen. Um es zu machen, haben wir ein Particle Photon verwendet, aber ein Arduino könnte auch verwendet werden, da sie praktisch genauso funktionieren.
Um dieses Projekt zu machen, benötigen Sie ein paar Dinge:
- Partikel/Arduino inklusive einem Steckbrett und einigen Kabeln
- ein linearer Hallsensor
- einige Magnete (wir haben kleine, aber starke Neodym-Magnete verwendet)
- ein Stift
- etwas Klebeband
Schritt 1: Der Behälter
Der Stift wird als Behälter verwendet, also nimm den Stift heraus, sodass du nur den Plastikbehälter hast.
Schließen Sie das kleine Loch mit etwas Klebeband und kleben Sie die Magnete in der Nähe des kleinen Lochs an der Seite des Stifts fest.
Schritt 2: Verbinden Sie das Partikel/Arduino
Verbinden Sie das Partikel oder Arduino mit dem Steckbrett. Schließen Sie auch den linearen Hallsensor wie auf dem Bild an, den oberen Pin an 3.3V, den mittleren Pin an GND und den unteren Pin an einen analogen Eingang.
Schritt 3: Der Code
Auf dem Partikelphoton können Sie einfach auf den Pin drücken, den Sie als Eingang verwendet haben, und die Funktion analogRead verwenden, um den Wert vom Hall-Sensor zu erhalten.
Wenn Sie möchten, dass dies automatisch geschieht oder Sie ein Arduino verwenden, benötigen Sie einen Code, der in etwa so aussieht:
// der Pin zu messen fromint analogPin = A0;
// die Zeit in Millisekunden zwischen den Messungen.
//da man nicht zu viele Events veröffentlichen kann, muss dies auch mindestens 1000. sein
int delayTime = 5000;
//ein Ereignisname, damit Sie die einfließenden Messungen erkennen können
String eventName = "Messung/Salinität";
String laag = "Niedrig";
String middel = "Mittel";
Stringhoog = "Hoch";
Void-Setup () {
}
Leere Schleife () {
int-Messung = analogRead (analogPin);
wenn (Messung <=1750) {
Particle.publish(Ereignisname, laag); }
if(Messung>=1751 && Messung<=1830){
Particle.publish(Ereignisname, Mitte);
}
if(Messung>=1831 && Messung<=2100){
Particle.publish(Ereignisname, hoog);
}
if(Messung>=2101){
}
Verzögerung (Verzögerungszeit);
}
Schritt 4: Messen
Natürlich müssen die Werte im Code auf den von Ihnen verwendeten Salzgehalt kalibriert werden, also holen Sie sich 3 Tassen Wasser. Tasse 1 wird nur Wasser sein, Tasse 3 wird vollständig mit Salz gesättigt und Tasse 2 wird irgendwo dazwischen liegen.
Schnappen Sie sich einen der Becher und gießen Sie etwas Wasser in den Stift.
Halten Sie den Stift neben den Hall-Sensor, wobei die Magnete auf der anderen Seite herausragen (damit das Wasser zwischen den Magneten und dem Sensor eingeschlossen wird).
Verwenden Sie die Funktion analogRead, um den Wert für das von Ihnen verwendete Wasser anzuzeigen, und verwenden Sie diesen Wert im Code.
Die von uns gemessenen Werte waren:
nur Wasser: 1720
Mit Salz gesättigt: 1840
irgendwo dazwischen: 1760