Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Arduino-betriebener Wetterballon-Datenlogger

Komponenten und Verbrauchsmaterialien

Maxim Integrated DS18B20 1-Draht-Digitalthermometer mit programmierbarer Auflösung
× 2
DHT22-Temperatursensor
× 1
SparkFun Triple Axis Accelerometer Breakout - ADXL335
× 1
Male-Header 36 Position 1 Row- Long (0,1")
× 2
Arduino Mega 2560
× 1
5050 SMD-LED
× 1
Widerstand 4,75 kOhm
× 2
Widerstand 100 Ohm
× 3
Widerstand 10k Ohm
× 1
Flash-Speicherkarte, MicroSD-Karte
× 1
Micro-SD-Kartenmodul
× 1

Notwendige Werkzeuge und Maschinen

Lötkolben (generisch)
Lötdraht, bleifrei

Apps und Onlinedienste

Arduino-IDE

Über dieses Projekt

Hallo allerseits!! Sie fragen sich wahrscheinlich, warten Sie, können Sie einen Arduino in den Weltraum schicken? Fast. Mit einem Wetterballon können Sie ein Arduino, eine Kamera, Knoblauchbrot oder alles andere, was Sie möchten, zu einem Drittel in den Weltraum schicken! Obwohl es ein Drittel des Weges in den Weltraum ist, sind fast 99% der Atmosphäre nicht vorhanden, daher nennen wir es "die Kante des Weltraums". Diese Anleitung ist super lang, aber wenn Sie dieses Projekt nicht nur ausprobieren, lesen Sie alles bis Pfad 1. Wie auch immer, lassen Sie uns darauf eingehen, wie Sie dies tun können.

Es wird drei Wege geben, denen Sie je nach Ihren Wünschen und Ihrem Können folgen können. Alle drei Pfade erfordern aufgrund der unglaublichen Winde in der Stratosphäre einige Lötfähigkeiten. Jeder Pfad ist sowieso nicht besser als der andere, er basiert nur auf dem, was Sie interessiert. Gehen wir sie schnell durch.

Weg 1:Erstellen eines einfachen Datenloggers mit einem Protoboard, verschiedenen Sensoren, mit wenig Lötkenntnissen.

Pfad 2:Verwenden einer vorgefertigten PCB-Abschirmung (Leiterplatte), um eine saubere, fantastisch aussehende Platine zu erhalten, die von uns entworfen und getestet wurde.

Pfad 3:Erstellen Sie Ihre eigene Leiterplatte in einem Programm. Dieser Leitfaden wird nicht tief darauf eingehen, wie Sie Ihre eigene Leiterplatte entwerfen und herstellen, aber er enthält einige Richtlinien, über die Sie nachdenken sollten. Ich werde sicherstellen, dass Sie einige großartige Anleitungen verlinken, aus denen Sie lernen können.

Wir werden jeden Pfad etwas genauer durchgehen, aber hier sind einige Tipps, die Ihnen bei der Auswahl helfen:

Weg 1 ist der einfachste und bietet eine gewisse Flexibilität. Sie können die Sensoren, das Board und die Funktionen auf Ihrem Board auswählen. Um sicherzustellen, dass während des Fluges alles zusammenbleibt, benötigst du einige Lötkenntnisse.

Pfad 2 ist der restriktivste, was bedeutet, dass Sie einen bestimmten Satz von Sensoren und ein bestimmtes Arduino-Board verwenden müssen, aber Sie haben eine wirklich sauber aussehende Platine, müssen sich keine Sorgen um Löten oder Codieren machen, und es ist gut Beginnen Sie mit dem Erlernen von PCBs. Wir stellen Ihnen die Gerber-Datei, die Exporteinstellungen und den Code zur Verfügung. PCBs sind nicht sehr teuer und es kann davon abhängen, woher Sie sie bekommen. Wir haben 5 dieser Leiterplatten für 2 US-Dollar erhalten, aber dieser Preis kann je nachdem, wo Sie es kaufen, abweichen.

Pfad 3 wird der schwierigste sein und erfordert viele Fähigkeiten. Sie müssen wissen (oder lernen), wie Sie Ihr eigenes PCB- oder Arduino-PCB-Shield herstellen, wissen, wie Sie das Ganze codieren und die Platine löten. Falls Sie wissen, wie all diese Dinge zu tun sind, könnten Sie dieses Projekt wahrscheinlich selbst durchführen, aber es gibt einige sehr wichtige Einschränkungen und Details, bei denen Ihnen dieser Leitfaden helfen kann.

Okay!! Genial! Du hättest dich entscheiden sollen, welchen Weg du jetzt gehen möchtest! Aber bevor wir direkt einsteigen, gibt es sehr wichtige Regeln, die du im Hinterkopf behalten musst. Lesen Sie diese Regeln unbedingt durch, da das Hochladen von Gegenständen in einem Wetterballon je nach Wohnort eingeschränkt sein kann. In dieser Anleitung wird nicht darauf eingegangen, wie man den richtigen Ballon auswählt, die Nutzlastbucht baut und den Ballon füllt, aber es gibt VIELE Anleitungen dazu, also werde ich sie für Sie verlinken. Ich werde die Einschränkungen für Ihren Arduino Datalogger durchgehen und einen Link für weitere FAA-Einschränkungen hinterlassen (wenn Sie in den USA leben). Folgendes müssen Sie beachten:

1. Ihre Nutzlastbucht darf keine Handysignale empfangen. Wenn Sie aus irgendeinem Grund ein Mobiltelefon an Bord haben, muss es sich im Flugzeugmodus befinden.

2. Wenn Sie GPS verwenden, um Ihren Ballon zu finden, müssen Sie eine HAM-Funklizenz erwerben (für die Tests und eine Gebühr erforderlich sind).

3. Wenn das Verhältnis von Gewicht zu Größe Ihrer Nutzlast mehr als 3,0 Unzen/Quadratzoll beträgt, muss das Gesamtgewicht der Nutzlast weniger als 4 Pfund betragen.

4. Jede einzelne Nutzlast/jedes Paket muss weniger als 6 Pfund wiegen.

5. Und wenn Sie zwei Nutzlasten haben, muss das Gesamtgewicht der Nutzlast weniger als 12 Pfund betragen.

Dies ist ein Link zu den vollständigen Richtlinien der FAA für US-Bürger.

Pfad 1 - Proto-Board!

Bevor Sie mit dem Entwerfen beginnen, müssen Sie einige Überlegungen berücksichtigen. Zuerst, was Sie dort wollen. Im bereitgestellten Schema haben Sie einen einfachen Temperatur- und Feuchtigkeitssensor, einen barometrischen Sensor, eine IMU und ein SD-Kartenmodul. Für die meisten Projekte sollte dies ausreichen, aber wenn Sie Ihre Nutzlastbucht mit Ihrem Arduino finden möchten, möchten Sie ein GPS-Modul einbinden. Es gibt mehrere Wiederherstellungsoptionen:

1. SPOT-GPS-Modul. Diese haben ihre Vor- und Nachteile. Diese sind wirklich einfach zu bedienen, haben eine unbegrenzte Reichweite (sie verwenden Satelliten, um Koordinaten an Ihr Telefon zu senden), haben eine tolle Akkulaufzeit und sind leicht zu beschaffen. Sie sind jedoch teuer, funktionieren nicht verkehrt herum und das Signal kann durch dicke Gegenstände blockiert werden.

Dies ist die Methode, die wir verwendet haben, aber wir haben einen Gimbal entworfen und in 3D gedruckt, damit er aufrecht bleibt. Wir empfehlen den SPOT 3 Satellite Messenger (Amazon), aber es liegt ganz bei Ihnen, solange Sie dies recherchieren und die Vorteile der verschiedenen Typen erkennen.

2. APRS-Funk. Dies wird am zuverlässigsten sein und Sie können viel damit machen. Sie können ein Modul an einen Arduino anschließen und das Funkgerät Daten, Koordinaten usw. zurücksenden lassen. Dies ermöglicht Ihnen auch genaue Höhenmessungen.

Leider wird dies nicht in den Schaltplan aufgenommen, so dass Sie lernen müssen, dies selbst zu verdrahten. Außerdem müssen Sie eine HAM-Funklizenz erwerben, die Sie testen müssen, und eine geringe Gebühr entrichten. Diese Lizenz ist sehr nützlich, also kann es sich lohnen. (USA – Einschränkungen können je nach Wohnort unterschiedlich sein).

3. Handy. Sie sollten diese Methode wirklich nicht verwenden. Sie müssen nicht nur einen Weg finden, Ihr Telefon nach dem Flug aus dem Flugzeugmodus zu holen, das Mobiltelefon selbst wird wahrscheinlich auch teurer sein als ein normales SPOT. Der Grund, warum dies auf der Liste steht, ist, dass viele Leute das Handy als Backup verwenden, aber es ist wirklich nichts, was Sie verwenden sollten.

Jetzt, da Sie sich entschieden haben, wie Sie Ihre Nutzlast wiederherstellen möchten, sollten Sie sich ansehen, wie der Flug aussehen wird. Wenn Sie beispielsweise möchten, dass Ihr Arduino den Fallschirm aus der Ferne auslöst, sollten Sie nach Möglichkeiten suchen, dies zu tun. Sie sollten auch durchgehen, welche Sensoren Sie verwenden werden (die Temperatur kann bis auf -40 ° C (-40 ° F) sinken, also sollten Sie dies berücksichtigen.

Sie werden auch darüber nachdenken wollen, wie Sie den Arduino mit Strom versorgen möchten. Kalte Temperaturen reduzieren die Leistung vieler Batterien, daher möchten Sie möglicherweise ein großes Netzteil zusammen mit einem Gehäuse wie einer Styroporbox, um es gemütlich zu halten und gleichzeitig die Gewichtsgrenze einzuhalten.

Ich empfehle Ihnen, eine Art Checkliste zu erstellen, die darauf basiert, welche Art von Daten Sie erhalten möchten, ob Sie eine Kamera an Bord haben und was Sie an Bord haben möchten. Es kann auch eine gute Idee sein, die Nutzlastbucht zu erstellen und dann Ihren Datenlogger basierend auf der Nutzlast zu entwerfen. Es gibt viele Dinge, über die Sie nachdenken und sicherstellen müssen, bevor Sie sie tatsächlich entwerfen. Nehmen Sie sich also wirklich lange und sorgfältig Zeit, um alles durchzugehen.

In Ordnung, hier ist der Schaltplan und Schaltplan für die Sensoren, wenn Sie unseren Weg gehen:

Der Mega ist für diese Sensoren ein Super-Overkill, aber wenn Sie auch unseren Code verwenden möchten, müssen Sie den Mega verwenden. Wenn Sie vorhaben, so etwas wie einen Nano zu verwenden, ändern Sie die Pinbelegung des MicroSD-Kartenmoduls auf die SPI-Pins Ihres Boards.

Hier ist eine Teileliste:

SparkFun ADXL337

Header-Pins

Micro-SD-Kartenmodul

DHT22 Feuchtigkeitssensor

DS18B20 Temperatursensor

Proto-Board

Arduino Mega

Sie können einen weiteren DS18B20 hinzufügen, um die Innentemperaturen zu lesen, und beliebige Sensoren hinzufügen, aber wenn Sie den bereitgestellten Code verwenden möchten, verwenden Sie den obigen Schaltplan.

//DHT22 Setup#include "DHT.h"#define DHTPIN 2#define DHTTYPE DHT22DHT dht(DHTPIN, DHTTYPE);//SD Card Setup#include #include Datei sdcard_file;int CS_pin =10;//DS18B20 Temperatursensor#include #include#define ONE_WIRE_BUS 3OneWire oneWire(ONE_WIRE_BUS);DallasTemperatursensoren(&oneWire);int scale =3; // 3 (±3g) für ADXL337, 200 (±200g) für ADXL377boolean micro_is_5V =true; // Bei Verwendung eines 5V-Mikrocontrollers wie dem Arduino Uno auf true setzen, bei Verwendung eines 3,3-V-Mikrocontrollers false. Dies beeinflusst die Interpretation des Sensor-Datavoid-Setup () {Serial.begin (9600); sensors.begin (); dht.begin(); pinMode (CS_pin, OUTPUT); // CS-Pin als Ausgangspin deklarieren, wenn (SD.begin ()) {Serial.print ( "SD-Karte gefunden!"); } else {Serial.print ("Fehler beim Finden der SD-Karte"); Rückkehr; } sdcard_file =SD.open("data.csv", FILE_WRITE); if (sdcard_file) {// Wenn die Datei gefunden wird} else { Serial.print ("Fehler beim Initialisieren der SD-Karte"); }sdcard_file.print("DS18B20");sdcard_file.print(",");sdcard_file.print("DHT22 Temp");sdcard_file.print(",");sdcard_file.print("Hum");sdcard_file.print (",");sdcard_file.print("H.InX");sdcard_file.print(",");sdcard_file.print("rawX");sdcard_file.print(",");sdcard_file.print("rawY ");sdcard_file.print(",");sdcard_file.print("rawZ");sdcard_file.print(",");sdcard_file.print("scaledX");sdcard_file.print(",");sdcard_file. print("scaledY");sdcard_file.print(",");sdcard_file.print("scaledZ");sdcard_file.print(",");sdcard_file.println(" ");}void loop() {delay( 222); // Beschleunigungsmesser int rawX =analogRead (A0); int rawY =analogRead(A1); int rawZ =analogRead(A2); float scaledX, scaledY, scaledZ; if (micro_is_5V) // Skalierungsdaten, wenn die Spannung 5 V beträgt (es ist) {scaledX =mapf (rawX, 0, 675, -scale, scale); scaledY =mapf(rawY, 0, 675, -scale, scale); scaledZ =mapf(rawZ, 0, 675, -scale, scale); aufrechtzuerhalten. Sonst // Skalierungsdaten, wenn die Spannung 3,3 V beträgt {scaledX =mapf (rawX, 0, 1023, -scale, scale); scaledY =mapf(rawY, 0, 1023, -scale, scale); scaledZ =mapf(rawZ, 0, 1023, -scale, scale); } // DS18B20 Tempsensors.requestTemperatures();int etemp=sensors.getTempCByIndex(0);//DS18B20 Feuchtigkeitssensor float h =dht.readHumidity(); float t =dht.readTemperature(); float f =dht.readTemperature(true); // Prüfen, ob Lesevorgänge fehlgeschlagen sind und vorzeitig für DHT beenden if (isnan(h) || isnan(t) || isnan(f)) { return; } // Wärmeindex in Fahrenheit berechnen (Standard) float hif =dht.computeHeatIndex(f, h); // Wärmeindex in Celsius berechnen (isFahreheit =false) float hic =dht.computeHeatIndex(t, h, false); sdcard_file.print(etemp); sdcard_file.print(","); sdcard_file.print(t); sdcard_file.print(","); sdcard_file.print(h); sdcard_file.print(","); sdcard_file.print(hic); sdcard_file.print(","); sdcard_file.print (rawX); sdcard_file.print(","); sdcard_file.print (rawY); sdcard_file.print(","); sdcard_file.print (rawZ); sdcard_file.print(","); sdcard_file.print (skaliertX); sdcard_file.print(","); sdcard_file.print (skaliertY); sdcard_file.print(","); sdcard_file.print (skaliertZ); sdcard_file.print(","); sdcard_file.print(" "); sdcard_file.println(" ");sdcard_file.close();delay(223);}float mapf(float x, float in_min, float in_max, float out_min, float out_max){ return (x - in_min) * (out_max - out_min ) / (in_max - in_min) + out_min;}  

Wenn Probleme auftreten, überprüfen Sie die Verkabelung und verwenden Sie den Code für jeden einzelnen Sensor, um das Problem zu isolieren. Stellen Sie sicher, dass Ihre SD- oder MicroSD-Karte auf FAT16 oder FAT32 formatiert ist und 16 GB oder weniger groß ist.

Es wäre auch eine gute Idee, LEDs zu verdrahten, um Statusanzeigen Ihres Datenloggers anzuzeigen. Sie möchten den Ballon wirklich nicht hochschicken, wenn der Datenlogger nicht läuft, also stellen Sie sicher, dass Sie alles dreimal überprüfen.

Wenn Sie weiterhin Probleme mit dem SD-Kartenmodul haben, versuchen Sie außerdem, die Stromquelle zu wechseln. Nach vielen Tests haben wir festgestellt, dass einige Module sehr empfindlich auf Strom reagieren, suchen Sie also eine zuverlässige Stromquelle.

Los geht's! Ihr Datenlogger ist fertig. Es sollte Temperatur-, Feuchtigkeits- und Beschleunigungsmesserdaten lesen und auf einer SD-Karte protokollieren. Wenn Sie eine Höhenmessung wünschen, müssen Sie GPS verwenden. 90% der auf barometrischen Sensoren basierenden Höhenmesser funktionieren nicht über 30.000 Fuß. Wenn Ihr Ballon diesen Schwellenwert überschreitet (wahrscheinlich ist er das), können Sie kein Barometer verwenden. Wenn Sie für den Rest des Weges einen großartigen Leitfaden wünschen, sehen Sie sich diesen Leitfaden an und zögern Sie nicht, uns über diese Website zu kontaktieren, wenn Sie irgendwelche Fragen haben. Wir sind keine Profis darin, aber wir sind bereit, nach besten Kräften zu helfen.

Kommentieren Sie unten oder kontaktieren Sie uns, wenn es Probleme gibt. Wenn Ihnen dieser Teil des Leitfadens gefallen hat, besuchen Sie unseren YouTube-Kanal, hinterlassen Sie unten einen Kommentar und respektieren Sie uns /P>

Pfad 2 – Vorgefertigte Leiterplatte

So! Sie planen die Verwendung einer vorgefertigten Leiterplatte. Diese vorgefertigte Leiterplatte ermöglicht es Ihnen, interne Temperatur-, externe Temperatur-, Feuchtigkeits- und Beschleunigungsmesser-Messwerte zu erhalten. Sie benötigen Lötkenntnisse und diese Komponenten:

5050 SMD-LED

SparkFun ADXL337

Viele Header-Pins

Micro-SD-Kartenmodul

DHT22 Feuchtigkeitssensor

2X DS18B20 Temperatursensor

Arduino Mega

Die Eclipse-Platine

Die Gerber-Datei für das PCB befindet sich in diesem GitHub-Repository. Wenn Sie Änderungen an der Leiterplatte/dem Schaltplan vornehmen möchten, rufen Sie diese Webseite auf und geben Sie die erforderlichen Details ein. Wie zum Beispiel Dateityp, welche Datei Sie möchten, Fragen usw. Wir werden erklären, wie dieses PCB / Arduino-Shield funktioniert, wie Sie eines bei einem PCB-Service richtig bestellen (für nur 2 US-Dollar) und wie Sie es richtig zusammenbauen.

Zum Glück haben wir diese Platine bei unserem Flug verwendet, also haben wir viele Tests durchgeführt und nach dem Flug Verbesserungen für Sie vorgenommen, aber egal, lass uns gleich darauf eingehen.

Hier sind auch einige Videos der Montage und Details der Platine.

Okay, beginnen wir mit dem Herunterladen der Gerber-Datei. Gehen Sie zum GitHub-Repository, laden Sie die ZIP-Datei herunter, kopieren Sie die Gerber-Eclipse-Datei und fügen Sie sie ein. Es ist wichtig, dass Sie die ZIP-Datei für die Gerber komprimiert halten, da der Online-Dienst diese als ZIPs übernimmt.

Jetzt, wo Sie es geschafft haben, ist es an der Zeit, eine Leiterplatte zu finden. Suchen Sie in einer Suchmaschine nach PCB-Service. Es gibt viele zur Auswahl, und viele von ihnen haben ihre Vor- und Nachteile. Für einen günstigeren Preis sollten Sie einige chinesische Fertigungsunternehmen wie JLC PCB in Betracht ziehen. Wenn Sie bereit sind, etwas mehr zu zahlen, sollten Sie sich einige US-amerikanische Unternehmen ansehen. Der Service, bei dem Sie kaufen, spielt keine Rolle. Sie alle werden Ihnen eine wirklich hochwertige Leiterplatte zu einem günstigen Preis anbieten, sodass es ganz bei Ihnen liegt.

Nachdem Sie nun einen Dienst ausgewählt haben, laden Sie die gezippte Gerber-Datei hoch und wählen Sie diese Einstellungen:

  • Lass die Ebenen und Dimensionen in Ruhe
  • Einzelplatine
  • 1,6 mm Dicke
  • Jede gewünschte Farbe (Grün wird normalerweise schneller produziert)
  • HASL (mit Blei) für das Oberflächenfinish. Möglicherweise müssen Sie dies ändern, wenn Sie bleifreies Lot verwenden
  • 1 Unze Kupfergewicht
  • Keine goldenen Finger und Bestätigung der Produktionsdatei
  • Vollständiger Test für Flying Probe Test
  • Keine Zinnenlöcher
  • Beliebige Menge!

Die meisten dieser Einstellungen sind bereits festgelegt, sodass Sie nur die Farbe ändern müssen. Bestellen Sie und Ihre Leiterplatte wird in Produktion gehen! Dies könnte auch ein guter Zeitpunkt sein, um die oben aufgeführten Sensoren zu bestellen.

Jetzt ist es Zeit, die Platine zu montieren. Da wir Sensoren mit Breakout-Boards verwenden und diese Platine als Abschirmung fungiert, ist dies wirklich einfach. Nachfolgend finden Sie eine Lötanleitung für Sie.

Löten Sie auch alle Header-Pins an den Seiten der Platine. Diese passen direkt auf einen Arduino Mega und erledigen die gesamte Verkabelung für Sie.

Es ist wichtig zu wissen, wie diese Platine funktioniert, damit Sie wissen, wie Sie Dinge reparieren können, wenn etwas kaputt geht. Innerhalb der Platine verlaufen sehr kleine 0,35 mm Drähte. Diese Drähte verlaufen von jedem Sensor zu bestimmten Kopfstiften in der Platine, die dann mit dem Arduino verbunden werden. Dies sorgt für einen sauberen Aufbau und ist stärker und zuverlässiger als herkömmliche Protoboards und Breadboards. Dies ist ein wirklich kurzer Überblick, aber wenn Sie mehr erfahren möchten, finden Sie hier ein großartiges Video zur Funktionsweise von PCBs.

Ja! Die Platine wird verlötet, auf den Arduino Mega gelegt und in den Computer gesteckt. Öffnen Sie die Arduino IDE und öffnen Sie den 1.6-Code, der im GitHub-Repository enthalten ist, aus dem Sie Ihre PCB-Dateien erhalten haben.

Formatieren Sie Ihre microSD-Karte auf FAT16 oder FAT32. Das microSD-Kartenmodul muss 16 GB oder weniger groß sein, sonst funktioniert es nicht. Selbst eine 2 GB microSD-Kamera ist mehr als genug Speicherplatz für einen zweistündigen Flug.

Legen Sie nun die SD-Karte in das Modul ein und laden Sie den 1.6-Code hoch. Innerhalb des seriellen Monitors sollten Sie eine Erfolgsmeldung erhalten, dass die SD-Karte funktioniert und die Datenaufzeichnung sollte sofort beginnen.

Warten Sie zehn Sekunden, nehmen Sie dann die SD-Karte heraus und legen Sie sie in einen Computer ein. Es sollte eine.csv-Datei geben, die alle Ihre Daten enthält!

Hier ist der Code für den Fall, dass das GitHub-Repository nicht funktioniert.

//DHT22 Setup#include "DHT.h"#define DHTPIN 2#define DHTTYPE DHT22DHT dht(DHTPIN, DHTTYPE);//SD Card Setup#include #include Datei sdcard_file;int CS_pin =10;//DS18B20 Temperatursensor#include #include#define ONE_WIRE_BUS 3OneWire oneWire(ONE_WIRE_BUS);DallasTemperatursensoren(&oneWire);//MPL3115A2 .Höhenmesser Setup#include #include Adafruit_MPL3115A2 baro =Adafruit_MPL3115A2();int scale =3;boolean micro_is_5V =true;//LEDint Blue =7;int Red =6;int Green =5;void setup() {pinMode (23, EINGANG); // erkennt, ob ein Schalter eingeschaltet ist, um das Schreiben der SD-Karte zu stoppen und die Daten zu speichern.begin();pinMode(Blue, OUTPUT);pinMode(Red, OUTPUT);pinMode(Green, OUTPUT);digitalWrite(Green, HIGH ); dht.begin(); PinMode (CS_pin, OUTPUT); // CS-Pin als Ausgangspin deklarieren, wenn (SD.begin ()) { DigitalWrite (Grün, LOW); digitalWrite (Grün, HOCH); digitalWrite (Grün, NIEDRIG); digitalWrite (Grün, HOCH); digitalWrite (Grün, NIEDRIG); digitalWrite (Grün, HOCH); aufrechtzuerhalten. Sonst { DigitalWrite (Grün, NIEDRIG); digitalWrite (Rot, HOCH); Verzögerung (5000); Rückkehr; } sdcard_file =SD.open("data.csv", FILE_WRITE); if (sdcard_file) {// Wenn die Datei gefunden wird digitalWrite (Rot, LOW); digitalWrite (Blau, NIEDRIG); digitalWrite (Grün, HOCH); aufrechtzuerhalten. Sonst { DigitalWrite (Grün, NIEDRIG); digitalWrite (Rot, HOCH); Verzögerung (1000); digitalWrite (Rot, NIEDRIG); digitalWrite (Blau, HOCH); Verzögerung (1000); digitalWrite (Grün, NIEDRIG); digitalWrite (Rot, HOCH); Verzögerung (1000); digitalWrite (Rot, NIEDRIG); digitalWrite (Blau, HOCH); Verzögerung (1000); digitalWrite (Rot, HOCH); digitalWrite (Blau, NIEDRIG); }sdcard_file.print(",");sdcard_file.print("DS18B20");sdcard_file.print(",");sdcard_file.print("DHT22 Temp");sdcard_file.print(",");sdcard_file.print ("Hum");sdcard_file.print(",");sdcard_file.print("H.InX");sdcard_file.print(",");sdcard_file.print("Int. Temp");sdcard_file.print( ",");sdcard_file.print("Pres. Pasc.");sdcard_file.print(",");sdcard_file.print("alt.");sdcard_file.print(",");sdcard_file.print(" rawX");sdcard_file.print(",");sdcard_file.print("rawY");sdcard_file.print(",");sdcard_file.print("rawZ");sdcard_file.print(",");sdcard_file .print("scaledX");sdcard_file.print(",");sdcard_file.print("scaledY");sdcard_file.print(",");sdcard_file.print("scaledZ");}void loop() { delay(222);digitalWrite(Green, LOW);digitalWrite(Blue, HIGH);if(! baro.begin()) {}float pascals =baro.getPressure();float altm =baro.getAltitude();float tempC =baro.getTemperature (); // Beschleunigungsmesser int rawX =analogRead (A0); int rawY =analogRead(A1); int rawZ =analogRead(A2); float scaledX, scaledY, scaledZ; if (micro_is_5V) // Skalierungsdaten, wenn die Spannung 5 V beträgt (es ist) {scaledX =mapf (rawX, 0, 675, -scale, scale); scaledY =mapf(rawY, 0, 675, -scale, scale); scaledZ =mapf(rawZ, 0, 675, -scale, scale); aufrechtzuerhalten. Sonst // Skalierungsdaten, wenn die Spannung 3,3 V beträgt {scaledX =mapf (rawX, 0, 1023, -scale, scale); scaledY =mapf(rawY, 0, 1023, -scale, scale); scaledZ =mapf(rawZ, 0, 1023, -scale, scale); } // DS18B20 Tempsensors.requestTemperatures (); // DS18B20 Feuchtigkeitssensor float h =dht.readHumidity (); float t =dht.readTemperature(); float f =dht.readTemperature(true); // Prüfen, ob Lesevorgänge fehlgeschlagen sind und vorzeitig für DHT beenden if (isnan(h) || isnan(t) || isnan(f)) { return; } // Wärmeindex in Fahrenheit berechnen (Standard) float hif =dht.computeHeatIndex(f, h); // Wärmeindex in Celsius berechnen (isFahreheit =false) float hic =dht.computeHeatIndex(t, h, false); sdcard_file.println(sensors.getTempCByIndex(0)); sdcard_file.print(","); sdcard_file.print(t); sdcard_file.print(","); sdcard_file.print(h); sdcard_file.print(","); sdcard_file.print(hic); sdcard_file.print(","); sdcard_file.print(tempC); sdcard_file.print(","); sdcard_file.print (Pascal); sdcard_file.print(","); sdcard_file.print(altm); sdcard_file.print(","); sdcard_file.print (rawX); sdcard_file.print(","); sdcard_file.print (rawY); sdcard_file.print(","); sdcard_file.print (rawZ); sdcard_file.print(","); sdcard_file.print (skaliertX); sdcard_file.print(","); sdcard_file.print (skaliertY); sdcard_file.print(","); sdcard_file.print (skaliertZ); sdcard_file.print(",");delay(223);sdcard_file.close();}float mapf(float x, float in_min, float in_max, float out_min, float out_max){ return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;} 

Los geht's! Ihr Datenlogger ist fertig. Es sollte Temperatur-, Feuchtigkeits- und Beschleunigungsmesserdaten lesen und auf einer SD-Karte protokollieren. Wenn Sie eine Höhenmessung wünschen, müssen Sie GPS verwenden. 90% der barometrischen, sensorbasierten Höhenmesser funktionieren nicht über 30.000 Fuß. Wenn Ihr Ballon diesen Schwellenwert überschreitet (wahrscheinlich ist er das), können Sie kein Barometer verwenden. Wenn Sie für den Rest des Weges eine großartige Anleitung wünschen, lesen Sie diese Anleitung und kontaktieren Sie uns gerne über diese Website. Wenn Sie irgendwelche Fragen haben oder eine bessere Leiterplatte basierend auf unserem Design herstellen möchten. Wir sind keine Profis darin, aber wir sind bereit, nach besten Kräften zu helfen.

Kommentieren Sie unten oder kontaktieren Sie uns, wenn es Probleme gibt. Wenn Ihnen dieser Teil des Leitfadens gefallen hat, besuchen Sie unseren YouTube-Kanal, hinterlassen Sie unten einen Kommentar und respektieren Sie uns, und wir empfehlen, die anderen Wege nach Inspiration und coolen Ideen zu durchsuchen!

Pfad 3 - Erstellen Sie Ihre eigene Leiterplatte

Jetzt zeigt Ihnen diese Anleitung NICHT, wie Sie Ihre eigene Leiterplatte herstellen. Bevor Sie fortfahren, sollten Sie also wissen, wie man eine Leiterplatte herstellt, oder lernen, wie es geht. In diesem Teil werden nur einige grundlegende Richtlinien behandelt, die Sie durchgehen sollten, um sicherzustellen, dass Sie keine Gesetze brechen. Die veröffentlichten Richtlinien gelten für die USA!

Zuerst müssen Sie ein Brainstorming durchführen und die Dinge aufschreiben, die Sie von diesem Flug erhalten möchten.

Hier sind einige Dinge, die zum Standardflug gehören:

  • Temperatur
  • Luftfeuchtigkeit
  • Höhe
  • Luftqualität
  • Strahlung
  • GPS

Sie können alles einfügen, was Sie wollen, aber stellen Sie sicher, dass Sie alles durchsehen. Der Temperatursensor sollte in der Lage sein, bis zu -50 °C (-58F) abzulesen und so genau wie möglich zu sein. Die Temperaturmessung wird bei sehr hohen Temperaturen aufgrund der Sonneneinstrahlung von der Sonne ungenau sein, so dass es ein bisschen erscheinen mag wärmer als es ist!

Sie werden auch darüber nachdenken wollen, wie Sie dieses Ding wiederherstellen können. Hier ist ein kurzer Überblick über Ihre Möglichkeiten. Vielleicht möchten Sie mehr darüber recherchieren.

SPOT-GPS-Modul. Diese haben ihre Vor- und Nachteile. Diese sind wirklich einfach zu bedienen, haben eine unbegrenzte Reichweite (sie verwenden Satelliten, um Koordinaten an Ihr Telefon zu senden), haben eine tolle Akkulaufzeit und sind leicht zu beschaffen. Sie sind jedoch teuer, funktionieren nicht verkehrt herum und das Signal kann durch dicke Gegenstände blockiert werden.

Dies ist die Methode, die wir verwendet haben, aber wir haben einen Gimbal entworfen und in 3D gedruckt, damit er aufrecht bleibt. Wir empfehlen den SPOT 3 Satellite Messenger (Amazon), aber es liegt ganz bei Ihnen, solange Sie dies recherchieren und die Vorteile der verschiedenen Typen erkennen.

2. APRS-Funk. Dies wird am zuverlässigsten sein und Sie können viel damit machen. Sie können ein Modul an einen Arduino anschließen und das Funkgerät Daten, Koordinaten usw. zurücksenden lassen. Dies ermöglicht Ihnen auch genaue Höhenmessungen.

Sie benötigen eine HAM-Funklizenz, die Sie einer Prüfung unterziehen müssen, und zahlen eine geringe Gebühr. Diese Lizenz ist sehr nützlich, also kann es sich lohnen. (USA – Einschränkungen können je nach Wohnort unterschiedlich sein).

3. Handy. Sie sollten diese Methode wirklich nicht verwenden. Sie müssen nicht nur einen Weg finden, Ihr Telefon nach dem Flug aus dem Flugzeugmodus zu holen, das Mobiltelefon selbst wird wahrscheinlich auch teurer sein als ein normales SPOT. Der Grund, warum dies auf der Liste steht, ist, dass viele Leute das Handy als Backup verwenden, aber es ist wirklich nichts, was Sie verwenden sollten.

Dies ist ein anweisbares, das Ihnen bei Ihrem Design helfen kann. Dafür gibt es viele Einschränkungen und Dinge, die du beachten musst, also nimm dir Zeit!

Eine weitere Designüberlegung ist das Gewicht. Wie in der Einleitung zu diesem Handbuch erwähnt, muss Ihre Nutzlast je nach Nutzlasttyp unter 12 lbs, 6 lbs oder 4 lbs liegen. Außerdem können Sie kein Barometer für Höhenmessungen verwenden, da die meisten von ihnen über 30.000 Fuß versagen.

Die letzte Überlegung ist Macht. Die Temperaturen in der Stratosphäre werden extrem niedrig. Batterien werden ausfallen, Ihr Arduino hat eine sehr hohe Wahrscheinlichkeit, ebenfalls auszufallen. Hierfür müssen Sie eine Lösung finden. Die wohl beste Strategie besteht darin, Ihren Datenlogger in eine Styroporbox zu stecken. Dadurch wird die Temperatur im Inneren so hoch wie die Raumtemperatur gehalten. Vielleicht möchten Sie auch Sonnenkollektoren oder Handwärmer in Betracht ziehen.

Okay! Sie haben alles durchdacht, genau überprüft, welche Sensoren Sie benötigen, und alles aufgeschrieben. Es ist Zeit, den Schaltplan und die Platine zu erstellen. Für den Schaltplan und die Leiterplatte möchten Sie möglicherweise eine Leiterplattenabschirmung wie zuvor oder eine vollständige Leiterplatte erstellen. Ich lasse dich entscheiden (da du dafür schon etwas Erfahrung haben solltest).

Nachdem Sie Ihre Platine / Abschirmung gebaut haben, überprüfen Sie ALLES, um zu sehen, ob es funktioniert, und stellen Sie sicher, dass Sie die Richtlinien befolgen.

Los geht's! Ihr Datenlogger ist fertig. Es sollte Temperatur-, Feuchtigkeits- und Beschleunigungsmesserdaten lesen und auf einer SD-Karte protokollieren. Wenn Sie eine Höhenmessung wünschen, müssen Sie GPS verwenden. 90% der barometrischen, sensorbasierten Höhenmesser funktionieren nicht über 30.000 Fuß. Wenn Ihr Ballon diesen Schwellenwert überschreitet (wahrscheinlich ist er das), können Sie kein Barometer verwenden. Wenn Sie für den Rest des Weges einen großartigen Leitfaden wünschen, sehen Sie sich diesen Leitfaden an und zögern Sie nicht, uns über diese Website zu kontaktieren, wenn Sie irgendwelche Fragen haben. Wir sind keine Profis darin, aber wir sind bereit, nach besten Kräften zu helfen.

Kommentieren Sie unten oder kontaktieren Sie uns, wenn es Probleme gibt. Wenn Ihnen dieser Teil des Leitfadens gefallen hat, besuchen Sie unseren YouTube-Kanal, hinterlassen Sie unten einen Kommentar und respektieren Sie uns, und wir empfehlen, die anderen Wege nach Inspiration und coolen Ideen zu durchsuchen!

Fazit

Wetterballons sind eine wirklich coole und einfache Möglichkeit, Dinge in die Stratosphäre zu schicken. Sie können Kameras (in unserem Fall eine 360-Grad-Kamera) in große Höhen schicken, tolle Aufnahmen und Daten erhalten, ohne allzu viele Vorschriften. Aber eins!

LESEN SIE DIES!!

Bitte stellen Sie sicher, dass Sie alle Regeln befolgen, und fügen Sie vor Ihrem Flug einen Radarabweiser hinzu und erstellen Sie eine NOTAM (Mitteilung an Flieger). Es ist sehr gut möglich, dass Ihre Ballonnutzlast ein Flugzeug trifft, und Sie möchten KEINEN Schaden nehmen oder Leben riskieren. Tun Sie alles, um das Risiko von Schäden zu verringern, stellen Sie sicher, dass alles stark ist, damit Sie nichts fallen lassen. Die FAA hat diesbezüglich nicht viele Einschränkungen. Bitte machen Sie es nicht so, dass sie alles einschränken und für andere ruinieren müssen, indem Sie einfach die Regeln befolgen.

Wie auch immer, ich hoffe aufrichtig, dass dieser Leitfaden geholfen hat, und wir genießen es, solche Anleitungen zu erstellen. Wenn Sie unseren Club unterstützen möchten, sollten Sie unseren YouTube-Kanal abonnieren und uns bei Problemen oder Fragen gerne kommentieren oder kontaktieren!

Viel Spaß beim Arduino! (Ist das überhaupt ein Begriff?)

NM Rocketry Bewertungen

Kundenspezifische Teile und Gehäuse

This is the .stl for the gimbal we made for the Spot Personal Tracker to keep it upright during the flight.stl file for the gimbal we used to keep the SPOT Personal Tracker Upright

Schaltpläne

For Path 1 For reference
GitHub Repository for PCB files and Code
Use this to download Gerber file for predesigned PCB and the code for it.https://github.com/nmrocketryreviews/HADLdatalogger

Herstellungsprozess

  1. Arduino Digital Dice
  2. Multi-Temperatursensor
  3. Arduino-Gamecontroller
  4. MotionSense
  5. 3D-Drucker Brandschutz
  6. Pixel-Chaser-Spiel
  7. IoT-Messgerät mit Arduino, Yaler und IFTTT
  8. Arduino Repulsive Electromagnetic Levitation
  9. Einzelne LED-Matrix-Arduino Flip Clock
  10. CoroFence - Wärmedetektor🖖