Dipl. Phys. Helmut Weber Dph.HelmutWeber at gmail.com








Über mich


Auszüge aus dem Lebenslauf (Auswahl)


Messung von Knightshift an Wasserstoff in Vanadium

Bruker Nuclear Magnetic Resonance Spectrometer (FU Berlin / Institut für Atom- und Festkörperphysik)

Man wollte prüfen, ob Metalle wie Vanadium als Speicher (nicht als Behälter, sondern wirklich im Metalll) für Wasserstoff geeignet sind und wie der Wasserstoff sich im Metall dabei verhält. Die Messunngen wurden mit einem Kernspin-Resonanz-Impulsspektrometer durchgeführt. Auch werden genau solche Messungen am Wasserstoff heute in Kernspin-Tomographen durchgeführt und in Bilder umgewandelt.

Die Physik-Diplomarbeit wurde mit "Sehr gut" bewertet.


Messdaten – Erfassung für Bruker Nuclear Magnetic Resonance Spectrometer

Mindestens genauso spannend fand ich die (selbst gewählte) Aufgabe, die Messwert-Erfassung und Steuerung in Echtzeit des Spectrometers durch den Zentralrechner des Institutes  (Programmiersprache FORTRAN) erheblich mitzugestalten.






MSDos auf Single-Board Computer mit Apple II für I/O

Microsoft lieferte dafür die Referenztreiber für Floppy-Disks sowie das MSDos als binäre linkbare Datei. Auf einer speziellen Rechnerplatine nur mit Prozessor 8086 und Speicher und Interface lief das MSDos, alle Ein-/Ausgaben wurden über ein selbst entwickeltes Protokoll von einem Apple II vorgenommen. Das Prodkukt wurde ein Erfolg, litt aber später unter den mangelnden grafischen Möglichkeiten des Apple II.






1. BTX Hardware-Dekoder Deutschlands

Bildschirmtext war ein Vorläufer des Internet mit einem recht komplizierten Protokoll - um der geringen Bandbreite der Übertragung Rechnung zu tragen. Für die Darstellung wurde ein extra dafür entwickelter Baustein von Philips (Eurom SAA 5350)  benutzt. Wir waren die Ersten, die zusammen mit Loewe Opta eine  Zulassung der Post bekamen.


1. BTX Software-Dekoder Deutschlands

Bessere Grafikmöglichkeiten der PCs erlaubten  eine perfekte Darstellung ohne  Spezialhardware. Aber das Internet war nicht mehr aufzuhalten :)







­Bildverarbeitung:

Dosenfalze automatisch vermessen – Anheuser Busch kauft nach Präsentation in USA

Die schnelle Kontrolle von Dosenfalzen ist eine wesentliche Anforderung der Abfüllbetriebe. Meine (alleinige) Aufgabe war es, die Software für eine automatische Vermessung zu erstellen. Das Ergebnis war eine vollautomatische Vermessung innerhalb einer Sekunde - mit einem 20MHz-PC. Das Projekt erstreckte sich über Jahre und war weltweit schneller, als jede Konkurrenz.


.
Verschiedene Methoden (Fuzzy Logic) zur Bildverarbeitung

 
Der Einsatz von Fuzzy-Logic bei der Bildverarbeitung machte meine Software zum Marktführer.

Die Software wurde weltweit verkauft. Auch Anheuser Busch in St. Louis war Kunde, nachdem ich das Produkt vor Ort vorführen durfte

 







Arbeit als Lehrer

in den Fächern Physik, Mathematik und Informatik. Als Systemadministrator einer Schule gelang es zusammen mit Schülern der höheren Klassen, das Schulnetzwerk vom Zugriff auf Internet-Seiten mit bestimmten Inhalten nahezu vollständig abzuschotten. Die Software wäre wohl noch heute interessant für manche Staaten, die es mit der Freiheit nicht so genau nehmen ;)







High Performance Projekte AVR 328p (Arduino Uno)

          und Arm-Prozessor (Arduino Due)

Erfahrungen mit harwarenaher Programmierung mit C und Assembler brachten eine Reihe kleinerer Projekte auch mit Betonung auf besondere Geschwindigkeit mit sich. Dabei ergab sich die Entwicklung von CoopOS, um auch auf kleinen und preiswerten 8-Bit Prozessoren wie dem 328p (wird auch im Arduino Uno benutzt) eine schnelles Multitasking zu erlauben.

Mein Beispiel mit einem Arduino Due auf youtube:                                        

Arduino Due als Oszilloskop

          Netzfrequenz Messung mit einem Arduino Uno auf youtube:                     

Arduino Uno misst 50 Hz Netzfrequenz sehr genau  







Helmut-Schmidt-Universität der Bundeswehr

    Professur für Automatisierungstechnik

   

    Blindenleitsystem mit Bluetooth BLE (Raspberry, node.js)   

          Befristeter Forschungsauftrag      Blindenleitsystem.pdf

Benutzung eines Raspberry Pi unter Linux mit einem Bluetooth BLE-Stick , um Blinde mit einem Bluetooth Dongle von der Größe eines 1€ Stückes in der Tasche zu erkennen und per Sprachausgabe zu verschiedenen Zielen zu leiten. Es wurde ein Feldversuch dazu durchgeführt und eine Veröffentlichung erstellt.


    Tutorial / Vorlesung erteilt in SPS, C#, Funktionentheroie

          Aufgaben als wissenschaftlichder Mitarbeiter :)


    Virtuelle Sensoren zur Roboter Steuerungen

           (Bildauswertung f. Position, Richtung, Geschw.)

            (GPS ist ein solcher virtueller Sensor Ihres Handys: extern, arbeitet wie eingebaut)

Proof of concept. Über eine an der Decke installierte Kamera wurden mit sogenannten ArUco Markern versehene Lego Mindstorm NXT Roboter per Kamera erfasst und Werte wie Geschwindigkeit, Richtung, Hindernisse von dem Rechnder der Kamera per Bluetooth an die Roboter übermittelt. 

                     

Die Roboter verfügten so ohne eigene Sensoren über ein "Bewusstsein" von ihrer Bewegung und auch ihrer Umgebung. Die Roboter wurden noch von dem Kamerasystem gesteuert, aber es wäre mit etwas mehr Aufwand auch eine vollständig selbständige Steuerung der Roboter möglich gewesen.
Sensoren vermitteln Werte physikalischer Größen. Dabei ist es letzendlich egal, woher die Werte bezogen werden.
Es wird eine wesentliche Aufgabe von Industrie 4.0 sein, solche Sensor-Werte an die verschiedenen Einheiten zu übertragen, um möglichst gute Entscheidungen aller beteiligten Controller zu ermöglichen.
Solche Mechanismen werden im Strassenverkehr eine große Rolle spielen, wenn z. Bsp. ein PKW nicht nur den Abstand zum vorausfahrenden  Fahrzeug kennt, sondern in dem sich ständig bildenden und dynamisch verändernden Mesh-Netzwerk auch über die Zustände der Wagen weit vor ihm informiert wird.

Das synchrone Anfahren an Ampeln könnte z. Bsp. ein sehr hilfreiches Mittel sein, um den Großstadtverkehr wesentlich flüssiger zu gestalten.
Auf Autobahnen könnte das comptergesteuerte (und deshalb gefahrlose) Windschatten-Fahren mit sehr  kleinen Abständen den Spritverbrauch erheblich reduzieren.

Ich nenne es virtuelle Sensoren und es ist sicher ein wichtiger Schritt in Richtung Industrie 4.0

   

    Augmented Reality mit Festo-Forschungs-Fertigungsstraße

               Augmented Reality.pdf

Forschungs-Industrie-Anlage Festo MPS500

Die Transportwagen tragen die ArUco Marker und die IDs der Wagen werden in das laufende Bild eingeblendet.


Obere Reihe von rechts nach links:
Material-Ausgabe, Bearbeitung, Kontrolle durch Kamera

Untere Reihe von rechts nach Links:
Fertigungsroboter, Hochregallager,
Lager für die Vorbereitung  zum Abtransport durch Kunden







Nach SQL-Abfrage der Festo-Datenbank werden die Bewegungen der Wagen und der jeweilige Produktionszustand (und das zu erstellende Produkt pro Wagen) in Echtzeit ausgegeben.





Simulation eines Analog-Rechners zur numerischen Lösung von Differentialgleichungen  Pendel.pdf


Die Messkurven und das Pendel bewegen sich in Echtzeit in den korrekten - mit der Stopuhr nachmessbaren - Geschwindigkeiten.

Zunächst nicht besonderes.

Allerdings ist die Berechnung neu, denn es kommt weder die Zahl PI noch die Winkelfunktionen SIN und COS vor - allein die Newtonschen Gesetze beschleunigter Massen

Kraft = Masse * Beschleunigung  usw.

Die Berechnung wird dabei in infinitesimale Zeiteinheiten unterteilt

Die Berechnung entspricht dabei dem "Zusammenstecken" eines Analog-Rechners, wie er früher gerne Benutzt wurde, um die optimale Dämpfung von PKWs zu"berechnen".

Dies war ein privates Projekt und die Genauigkeit der Simulation hat mich selbst verblüfft.







Evaluierung neuer Prozessoren


    ESP8266

Mit diesem Prozessor hat die 8-Bit Generation der Microcontroller wohl das Ende erreicht, wenn man sehr viel mehr Leistung für weniger Geld bekommt.

Für unter 2€ erhält man: 

32 Bit Prozessor

64k RAM Programm-Speicher

96k Datenspeicher

ROM

WLan

160 MHz Takt

16 GPIO PINs

SPI , I2C

Meine Tesst (mit meinem CoopOS, ohne WLan):




Der ESP8266 ist also für Highspeed-Aufgaben bestens geeignet - wenn man ihn zu programmieren weiß - und ist wahrscheinlich sehr bald der Standard für eine ganze Generation von Produkten.




      ESP8266 als Webserver

In einem weiteren Beispiel sollte die Möglichkeit erprobt werden, die WLan-Fähigkeit des ESP8266 auszunutzen. Als Web-Server im lokalen Netz sollte er die Möglichkeit bieten, per Browser Temperaturen  einzustelen und zu überwachen. Die Browser-Ausgabe (HTML5/ Canvas) wurde statt einer App gewählt, weil die Einstellung und Abfrage so mit allen  Computern (nicht nur, aber auch mit Handys) erfolgen kann.


Microcontroller als Web-Server

Jeder Browser kann sich mit dem Microcontroller per Wlan/Internet verbinden.

Es können direkt Werte angezeigt und Sollwerte eingestellt  werden.

Mit den üblichen HTML widgets (Knöpfe, Slider usw.) kann jeder Controller direkt gesteuert werden.

Für den Datentransport wurde AJAX benutzt. Canvas über HTML 5 sorgte für leichte Visualisierung.

Links wird die Soll Temperatur mit dem Schieberegler eingestellt.

Die Soll Temperatur wird sofort grafisch auf dem Thermometer dargestellt.








Die aktuelle – gerade gemessene – Ist-Temperatur wird auf dem 2. Thermometer angezeigt.

Die Anzeige wird alle 5 Sekunden autromatisch aktualisiert.

Es wird der Zustand der Heizung angezeigt.

Die Anzeige springt in 0.06 Grad Schritten und ist sehr stabil.



Sehr genaue Temperatur Einstellung, Erfassung und Darstellung im WLan / Internet für 2€












ESP32

        Bild Entwicklungsboard:  Wikipedia.org

          Für etwa 7€ bekommt man den Nachfolger des ESP8266.

          2 Prozessor-Kerne 32 Bit

          520 kB RAM + ROM

          240 MHz Takt

          WLan

          Bluetooth  (+BLE)

          Mehrere UARTs

          SPI, I2C, CAN-Schnittstelle

           AD- / DA-Wandler

          RTOS in Firmware

Die Geschwindigkeitssteigerung gegenüber dem Esp8266  ist nicht so groß (160 zu 240 MHz), aber durch die 2 Cores, die vielen Anschlußmöglichkeiten und das RTOS ist er auch für extrem komplexe Aufgaben geeignet.

Einzelheiten dazu auf dieser Seite.





                 

         
    Linux preempt_RT


ist natürlich kein Prozessor, sondern ein Betriebssystem. Und doch gehört es in diese Aufzählung. Denn anders, als Windows, dass stets um die grafische Oberfläche herum gestrickt wurde, besteht Linux iim wesentlichen aus dem Kernel und ist wollte nie etwas anderes sein, als ein hoch effizientes OS, mit dem man AUCH eine grafische Oberfläche betreiben kann.

Es ist dem erfolgreichen Unix nachempfunden, hat dieses bei den Einsatzzahlen aber längst überholt. Die Gründe sind vielfältig. Quelloffen - jeder kann die Sourcen einsehen. Keine Lizenzgebühren. Und für eine große Anzahl von Prozessoren verfügbar. Und es läuft auf Großrechnern genauso, wie auf kleinen Microcontrollern, wie dem Raspberry Pi.

Weltweit werden 88% der Handys damit betrieben - Android ist eine Linux-Variante! Der Anteil der Internet-Server unter Linux dürfte wohl noch deutlich höher liegen.


Es ist die offizielle Strategie der Linux-Entwickler, Linux zu einem echtem Realtime-Operating-System zu machen.

Zur Zeit wird dies noch mit sogenannten preempt_RT Patches erreicht. um Linux auch auf Microcontrollern für Mess- und Steueraufgaben zu benutzen - mit vorhersehbaren Latenzen.

Ausführliche Untersuchungen dazu auf dieser Seite.





    Raspberry PI 3 mit Linux preempt_RT

Bild: Raspberry Pi 3B - Quelle Wikipedia.org

         

         Arm V8 4 Kern Prozessor        

          1.4 GHz Takt

          1 GB Speicher

          Massenspeicher durch Chip Karten

Der Raspberry Pi 3 ist eine kleine Platine, in der Größe einer Zigarettenschachtel, der ohne Lüfter unter Linux läuft. Tastatur, Maus und Bildschirm können (müssen aber nicht) angeschlossen werden. Er erreicht die Leistungsfähigkeit eines PCs von vor einigen Jahren. Im oberen Teil des Bildes erkennt man die Leiste der GPIO (General Purpose Input- / Output) Anschlüsse, die für Sensoren und Aktoren aller Art vorgesehen sind.

Der Kunden-Endpreis beträgt ca. 30€

Mit Linux preempt-RT ist er prädestiniert zum Einsatz für Industrie (4.0). Allerdings findet man eine Menge an Informationen darüber, wie man den Linux-Kernel patcht und welche Testergebnisse mit dem CyclicTest Benchmark-Programm zu erwarten sind.

Aber praxisnahe Tests sind kaum zu finden.

In einer Reihe von aufwändigen Test habe ich es mir zur Aufgabe gemacht, gerade hierfür ein paar Entscheidungskriterien zu sammeln (s. Rest der Seite)

Diese Erkenntnisse dürften für einen breiten Kreis von Entwicklern in der Industrie interessant sein!









Raspberry 3+ bare metal


Der Raspberry ist wohl eher als Computer anzusehen, als ein Microcontroller. Trotzdem verfügt er auch über alle Attribute eines Microcontrollers und könnte als Bruder des ESP32 angesehen werden: Bootet ohne Harddisk, kann WLan und Bluetooth , hat eine Menge an I/O-Pins, die auch viele Sonderaufgaben übernehmen können (I2C, Uart, CAN-Bus usw.)
Daher ist es nicht erstaunlich, dass es inzwischen diverse Ansätze gibt, den Raspberry auch ohne das - gelegentlich eher störende - Linux einzusetzen. Dabei wird der Raspberry so programmiert, dass statt des Linux nach dem Einschalten ein eigenes Programm startet. Unter dem Stichpunkt "Der schnellste Microcontroller der Welt" erfahren sie auf dieser Seite, wie es mir gelungen ist, die Grenzen eines solchen Systems auszuloten.:

3.000.000 Interrupts pro Sekunde und mehr !
Bis zu 10.000.000 Taskswitches pro Sekunde

So eingesetzt ist der ist der Raspberry Pi 3+ wohl der schnellste Microcontroller der Welt !








Meine Kompetenzen


Die Jahrzehnte währende Berufspraxis hat mir, so denke ich, ein gutes Augenmaß für das Mögliche gegeben. Als Physiker war es mein Bestreben, die die Entwicklung der Sensorik zur Messung physikalischer Größen zu verfolgen und diese Erkenntnisse in Programme umzusetzen.
Das Streben nach schnellsten Lösungen gerade bei zeitkritischen Aufgaben hat sich zur Leidenschaft entwickelt.

Aber trotzdem habe ich stets auch die gesamte Entwicklung der Informatik verfolgt und habe neben der Messdaten-Erfassung imer wieder mal ganz andere Aufgaben übernommen.
Der erste chinesiche Texteditor (die chinesischen Schriftzeichen lieferte natürlich ein Chinese) ist so ein Beispiel oder auch die Entwicklung eines Bilanzbuchhaltungsprogammes für Steuerberater (zunächst mit Foxpro, dann mit Pascal) , dass innnerhalb von Sekunden eine vollständige Bilanz für einen Klienten erstellen konnte. Die Entwicklung einer Steuereinheit eines Prüfgerätes für die BAM (Bundesanstalt für Materialforschung, Berlin) war genauso interessant, wie die Entwicklung eines Programmes (Forth) zur Cluster-Analyse verschiedenster Eigenschaften von diversen Sorten für  die Bundesanstalt für Getreide-, Kartoffel- und Fettforschung (Detmold).

Dieser Blick über den Zaun, der vielfältige Umgang mit Menschen und sehr breit gestreute Interessen haben mich im Verlauf des Berufslebens durch alle Bereiche der Informatik geführt.  Vom Einsatz diverser Assembler bis zu modernsten Programmiersprachen habe ich wohl  so alles  einmal benutz t - sicher nicht als Experte dieser Sprachen, aber doch genug, um ein gutes Gefühl für die jeweiligen Einsatzmöglichkeiten zu entwickeln.

Dabei habe ich im Interesse der Kunden immer nach dem bestmöglichen Kompromiss zwischen Kosten und Leistung gesucht.
 
Der Einsatz von Oszilloskop und Logic-Analyzer gehört ebenso zu meiner täglichen Praxis zur zeitlichen Erfassung von Programm-Abläufen und interner Logic, wie der Umgang mit Messgeräten aller Art.,

Mein ruhiger,  respektvoller und doch verbindlicher Umgang mit Menschen der unterschiedlichsten Art - vom Maschinenbetreuer bis zum Generaldirektor  - fand stets Anklang. Der Umgang mit Teams der unterschiedlichsten Zusammensetzung hat diese Eigenschaften  gefördert.

Ich freue mich stets auf neue Herausforderungen, sage aber auch deutlich, wenn dabei meine Fähigkeiten überschritten werden oder ich ein Vorhaben für nicht durchführbar halte - mit dann sicher guten Argumenten aus der Praxis.



Bevorzugte Programmiersprachen:           C, C++

Bevorzugtes Tätigkeitsfeld:                         Entwicklung von Echtzeit-Aufgaben
                                                                         embedded systems


Bevorzugte Entwicklungsumgebung:         Linux

Bevorzugter Arbeitsort:                                Hamburg und Umgebung





.


   




.