Fail: Ultraschall-Anemometer

Ich will ja eine kleine Wetterstation. Mit Temperatur, Luftfeuchte, Regenmenge, Luftfeuchte und natürlich auch Windgeschwindigkeit und -richtung. Die übliche Herangehensweise ist ein irgendwie geartetes Anemometer, meist mit sich drehenden ‚cups‘. Es gibt noch verschiedene andere Varianten, u.a. auch eine, die die Laufzeit eines Ultraschallsignals über eine feste Strecke im Wind misst (Ultraschallanemometer). Das erschien mir doch recht interessant.

Auf ebay gibts diese SRF04-Boards für unter 5€. Eigentlich sind sie dafür gedacht, die Entfernung zu einem Gegenstand oder Wand etc. per Ultraschall zu messen.
Ich habe also den verwendeten mask-rom µC des SRF04 entfernt und an die verbleibende Elektronik einen ‚Arudino‘ angeschlossen (diese Nano-Clones von ebay sind immer recht praktisch fürs rapid prototyping und man ist keine 20€ los, wenn der ‚magic smoke‘ entweicht).

Der Arduino erzeugt also die 44kHz für die Ultraschallsensoren (für ein paar µs) und wartet dann 100ms bis der Zyklus wieder von vorn beginnt. Die Windgeschwindigkeit ergibt sich dann aus der Differenz der Laufzeit zwischen vor- und rücklaufendem Signal und der Schallgeschwindigkeit (sowie Temperatur etc.).
Die Transducer habe ich in 3D-Gedruckten (PETG) Haltern in einer Küchenpapier-Rolle montiert, zusätzlich befindet sich an einem Ende ein kleiner (5V) Lüfter:
Detail der Lüfter-Montierung:

lightboxErgebnisse:

Hier das empfangene Signal direkt aus dem Vorverstärker (CH2, Cyan), getriggert auf der ersten Flanke des TX-Signals:

Sieht vielverstpärechend aus. Setzt man jetzt einen Cursor an eine Flanke des Signals bei 0m/s Wind…

lightbox…und den anderen bei 240% Wind (5V Lüfter betrieben mit 12(!)V)…

lightbox…so zeigt sich dass zwischen 0 Wind und #Orkan 5,4µs liegen (zumindest auf der Länge einer Küchenpapierrolle). Die Windgeschwindigkeit im Versuchsaufbau war durchaus nicht zu unterschätzen und dürfte tatsächlich durchaus Orkanstärke erreicht haben.

Mit dem weiterhin verbundenen Aufwand (IO-Mux, Vorverstärker etc. etc.) macht es nicht wirklich Sinn, das zu vertiefen. Es gibt noch eine Variante mit stehenden Ultraschallwellen; vielleicht baue ich sowas mal… 😉

DJI Zenmuse H3-3D – Reperatur (Teil 1?)

Big Drama…

Ich hatte letztens einen ziemlich schlimmen Crash mit meinem DJI F550. Es kam zu einem katastrophalen Aufschaukeln des Copters, das ich nicht mehr in denGimbal, defekt Griff bekommen habe. Das Drama war allerdings, dass mein geliebtes DJI Zenmuse H3-3D Gimbal unter dem Copter hing, als er aufs Dach fiel. Das Gimbal sah dann so aus… (Gott sei Dank ist die GoPro OK…)

Das erste Problem war eine klemmende ‚roll‘-Achse des Gimbals. Diese ließ sich allerdings recht einfach reparieren, es gibt an der Achse des ‚roll‘-Stellers eine Schraube, mit der der Arm an der Achse geklemmt ist. Der Arm hatte sich durch den Aufprall auf der Achse verschoben, was sich durch öffnen der Madenschraube rückgängig machen ließ.

Bei genauerem Hinsehen jedoch, sah ich einen defekten Hall-Sensor am ’nick‘-Motor des Gimbals. Jetzt war natürlich guter Rat teuer, googeln eine Suche im Internet ergab zumindest, dass die von DJI verwendeten Motoren scheinbar von niemandem hergestellt werden; es gibt sie zumindest nicht zu kaufen. Nichtmal bei Alibaba.

Nachdem ich den besagten Motor ausgebaut hatte (Bilder siehe unten), bröselte mir der Hall-Effekt-Sensor auch schon entgegen. Die beiden anderen Sensoren waren beide mit ‚1432‘ beschriftet, was auch nach längerem Suchen leider nicht sehr hilfreich war. Interessant war, dass die Pins 1 und 3 der (verbleibenden) SOT23-Gehäuse  miteinander verbunden waren, es hatte auch den Anschein dass Pin 2 mit einer Massefläche verbunden war. Etwas cross-referencing später stand fest dass die belegung 1: VCC, 2: OUT, 3: GND eine übliche Belegung für Hall-Effekt Sensoren in SOT23 Gehäusen ist. Praktischerweise befand sich auf dem flex-Board noch ein kleiner Keramik-Kondensator, welcher oh Wunder mit VCC und GND verbunden war. Ich konnte zudem den Ausgang eines verbleibenden Sensors zum Stecker zurückverfolgen, wo ich das Kapton abgekratzt, und einen Draht angeschlossen habe (Pinout im Bild bitte nochmals nachmessen). Ich habe ein current Limit von 5mA gesetzt und die Spannung langsam auf 4,5V gesteigert, allerdings ohne Rekation auf ‚Stimulation‘ mit einem (Neodym-) Magneten. Erst als ich im Oszi winzige Spikes erkennen konnte, dämmerte es mir, dass es sich eventuell um ein Open-Drain-Ausgang seitens des Sensors handeln könnte.

Aber welcher Typ Hall-Effekt-Sensor ist das denn jetzt?

Es gibt verschiedene Typen Hall-Effekt-Sensoren. Bipolare, unipolare, latching, analog, … glücklicherweise finden sich auf Micronas‘ Youtube Kanal 2 sehr schöne Videos [1] [2], die das Verhalten von Bi-, und Unipolaren Hall-Effekt-Sensoren zeigen. Es handelte sich in unserem Fall um einen Bipolaren Hall-Effekt-Sensor. Nach kurzer Suche bei Farnell befand ich den SS360xT (x für North oder South) von Honeywell für geeignet. Das einzige was jetzt noch unklar war, war die Polarität (Nord-ein oder Süd-ein) des Sensors. Ich habe kurzerhand beide Kategorien bestellt.

Nachdem ich gestet hatte, welche Polarität (NORTH – also der SS360NT) zu der der restlichen Sensoren passt, habe ich den Sensor im Motor montiert und einen Draht für die Tests in bewährter Weise angeschlossen…

Die Pullups habe ich ‚freestyle‘ montiert. Jetzt fehlt natürlich noch der Test mit entsprechendem Motor…

Sieht ja eigentlich ganz prima aus… Gelb ist der neue Sensor. Interessant ist, dass der Ausgang des neuen Sensors beim Einschalten ‚high‘ zu sein, was bei den anderen ja nicht der Fall zu sein scheint..

Ansonsten sieht das Signal ja aus wie man es sich vorstellt. Denkt man sich noch ein 3. Signal dazu, ergibt sich im Prinzip die erwarteten Magnet-Positionen, quasi 120° auseinander…

Jetzt gilt es natürlich den Gimbal-Motor wieder zusammen zu bauen. Wichtig ist, dass das weiße Zahnrad, dass das Poti in der Controllerplatine dreht, mit seiner ‚Macke‘ genau mit der eingeschliffenen ‚Macke‘ der Motorachse übereinstimmt. Ansonsten funktioniert die closed-loop-control nicht richtig. Ansonsten geht das Zusammenbauen wie das Auseinanderbauen. Schrauben immer auf die ‚Macken’…

Tada – Gimbal funktioniert wieder 🙂

Der Winkel des ‚roll‘Gimbal, defekt Motors stimmt noch nicht ganz da der Strut noch verbogen ist. … das ist vielleicht was für Teil 2 … 😉

Laserspiele

Ich hab mich neulich daran erinnert dass ich ja eine HeNe-Laserröhre habe, die ich für ein paar Euro auf dem HamRadio-Flohmarkt erstanden habe. Da ich aber keinen Neon-trafo habe ist die halt die meiste Zeit rumgelegen. Ich hab sie heute wieder entdeckt und über einen 1k470 Vorwiderstand an meinen 15kV (AC) Hochspannungstrafo angeschlossen…

Bilder! (Klicken für die höhere Auflösung)

Update

Nicht viel los hier 😉 daher hier mal ein kleines Update…

1) UsbProg

Mein lieblings allround-Programmer…

Ich entwickle ja immernoch selbstlos und ausdauernd an meinem Reflowofen (5 freie Phasen pro Profil und 130 auf dem Ofen speicherbare Profile … bald … bald…) Fakt ist, dass ich neulich die Platine auf einen USB-Stick mit Metallgehäuse gelegt habe … Was der Reflow-Platine nichts, dem verwendeten UsbProg aber den garaus gemacht hat.

Den Mega32 auf dem UsbProg hatte es wohl komplett gebraten; der Bootloader hat zwar noch verzweifelt geblinkt allerdings wurde das Device nicht mehr erkannt. Der Bootloader lies sich auch nicht mehr flashen – mit anderen Worten –  komplett hinüber. Daraufhin tat ich 2erlei; erstens hab ich nen neuen UsbProg bestellt – und beim defekten den M32 getauscht – mit durchschlagendem Erfolg! Er geht wieder!

Hier eine kleine Galerie zum UsbProg-Zusammenbau (click for larger image):

Der defekte UsbProg und der „neue“…

Die UsbProg-Platine und die mitgelieferten Einzelteile … das ist so einfach -> einfach zusammenlöten…

…dann sieht das so aus. Einzige Spielregel: „populate everything from top side“

Jetzt hab ich also 2 UsbProgs. Gut, jetzt kann man den einen mit dem anderen flashen. Mit einem einfachen 10-Pol-Kabel…

Schon im Einsatz…

-> http://www.embedded-projects.net/index.php?page_id=135

2) CNC Vision System

Ich habe neulich auf YouTube ein Video von Hossmachine gesehen, indem er eine USB-Webcam zum Nullpunkt-Finden seiner CNC-Maschine verwendet. Das ist ne super Idee, also her mit der Webcam (meine Logitech wollte ich nicht unbedingt benutzen)…

Bei ebay gesucht und gefunden…: EBAY

Eine „12MP USB Webcam“ für knapp 4€ incl Versand… da kann man nix sagen. Ich hab also mal 2 Stück bestellt; für den Fall das eine nicht funktioniert. Aber (nach etwas längerer Lieferzeit (Hong Kong)) waren beide da und beide in Ordnung.

Blieb nur noch den Schraubenzieher zu zücken und das Ding mal auf zu machen. Die Cam soll ja fest an der Fräse montiert werden; und das Gehäuse ist sicherlich nicht das non plus ultra was Spritzwasserschutz anbelangt… Ausserdem will ich noch einen Fokus mit Servo o.ä. installieren, um ihn automatisch einstellen zu können.

Lustigerweise hat die Kamera mehr Funktionen als implementiert sind. Verbindet man z.B. 2 Kontakte macht die cam ein Bild. Nur … 12 Megapixel davon ist sie so weit entfernt wie ein Fahrrad von einer 747…

Bilder…

Die Cam aus China

„Dismantled“

Und ein Makro (ca 2cm Abstand) …

Joa. Stay tuned.