Prof. J. Walter - Informationstechnik, Mikrocomputertechnik, Digitale Medien Konzeptentwicklung
Hochschule Karlsruhe Logo Informationstechnik
Fischertechnik-ESP32: Überarbeitung der Mini-Hardware
Wintersemester 2018/2019
raan1019@hs-karlsruhe.de
wato1016@hs-karlsruhe.de
onka1011@hs-karlsruhe.de

Konzeptentwicklung

1.  Überarbeitung der Hardware:

Zunächst muss mit der zweiten Projektgruppe (Hardware groß) über das bisherige Layout gesprochen werden, sich über die Verwendung der Pins und der Software allgemein zu informieren. Im Sinne einer einheitlichen Software müssen einige Pins gleich gewählt werden (z.B. Motortreiber enable). Hierfür wurden die Portbelegungspläne erstellt und ensprechend angepasst. Um eine Kompilität mit der Hardware des bisherigen "kleinen" Controllers zu erhalten, wurden auch hier die Pins abgeglichen.

Die Hardware soll eine neue übersichtlichere Output-Pin Anordung erhalten, sowie eine Beschriftung der jeweiligen Ein- und Ausgänge. Hierfür muss das Board komplett umgestaltet werden. Zudem müssen auf Grund von einem alten Layout-Stand alles gegenkontrolliert und angepasst werden. Zusätzlich sollen die weiter unten genannten veränderungen integriert werden.

2.  Verpolungsschutz/Überspannungsschutz:

Der Verpolungsschutz betrifft die Teile, welche mit der Eingangsspannung gespeist werden. Daher müsssen diese anhand des Datenblatts auf negative Spannungseinflüsse überprüft werden und gegenbenenfalls eine hardwaretechnische Lösung erarbeitet werden.

Der Überspannungsschutz betriftt die Eingänge und Ausgänge des Fischertechnik-Boards, sodass Kinder die Hardware bei Fehlbenutzung nicht zerstören. Die Schwierigkeit besteht darin, die Eingänge auch für analoge Signale verwendbar zu machen. Für dieses Vorgehen werden diverse Schutzschaltungen erarbeitet und evaluiert:

pin_protection
Möglichkeit 1 - Schutz mit 3.3V Zenerdiode

pin2
Möglichkeit 2 - Schutz durch Diodenschaltung und Kondensator

pin3
Möglichkeit 3 - Schutz durch Spannungsfolger

Beispiel eines Simulationsergebnisses:

Pin1
Möglichkeit 1 - Simulation



Zur Evaluation wurden alle drei Möglichkeiten auf einer Lochrasterleiterplatte aufgelötet und mit einem Osziloskop getestet.

Testreihe
Aufbau zur Evaluation

Das Ergebnis ist, dass Möglichkeit 1 (Schutz durch Zenerdiode) die beste Wahl darstellt, da sie zum einen am wenigsten Bauteile benötigt und zudem den kleinsten Spannungsbereich durchlässt. Möglichkeit 2 (Diodenschaltung) würde eine weitere Spannungsquelle benötigen, sodass der Mikrocontroller nicht durch höhere Ströme (~100 mA) belastet wird. Möglichkeit 3 (OPV) scheidet aus, da auch hier eine weitere Spannungsquelle zum Einsatz kommen muss (4.4 V bei keinem Rail-to-rail Operationsverstärker).

3. Implementierung des Displays:

Das Display ist bereits bei der alten Hardware vorhanden, jedoch noch nicht implementiert. Der Anschluss über den I2C-Bus soll bestehen bleiben. Die Implementierung soll ermöglichen die wichtige Informationen wie der IP-Adresse, der SSID und des Passworts auszugeben.

4. Deaktivierung der Motortreiber beim Einschalten:

Für dieses Vorhaben wurden zunächst auch hardwaretechnische Lösungsansätze erarbeitet. Dabei ist das Problem, dass der Motortreiber über einen Pin eingeschaltet wird, wenn dieser auf HIGH liegt. Startet der Mikrocontoller, dann sind meist die PullUps aktiv und startet die Treiber. Sind Motoren angeschlossen, dann ziehen diese einen Strom, welche die Spannung einbrechen lässt. Daher kann es Vorkommen, dass der Mikrocontroller durch den Spannungseinbruch beim Start nicht richtig booten kann.
Ein Lösungsansatz ist, die Logik zu invertieren, sodass der Treiber mit einem HIGH Signal ausgeschaltet ist. Hierfür können Inverterbausteine oder Inverterschaltungen zum Einsatz kommen:
delay
Inverterschaltung mit Transisitor

Auf Wunsch von Herrn Walter kommt diese Lösung nicht zum Einsatz.
Die Deaktivierung bleibt softwarebasiert. Die Pin-Abschaltung soll jedoch noch früher stattfinden, in dem eine neue Funktion implementiert werden soll.

5. Lebensdauer der Batterien:

Die Lebensdauer der Batterien (9V Blocks) ist meist nicht sehr lang. Fällt die Batterie aus, dann stürzt der Mikrocontroller ab und das User-Programm geht unwiderruflich verloren.
Ein Lösungsansatz ist es, einfach Fischertechnik-Akkus (oder vergleichbare) zu kaufen, diese verfügen über eine höhere Kapazität.
Außerdem wird eine LED angebracht, mit der man erkennen kann, dass ein möglicher Absturz nur durch die Spannungsversorgung hervorgerufen wurde.
Damit das User-Programm remanent bleibt, soll dieses nicht-flüchtig zwischengespeichert werden (z.B. für SPIFFS).

6. Weiteres

- Einbau eines Tasteres zum manuellen  starten und stoppen des User-Programms.
- Verbinden über einem Server anstatt direkt mit dem Endgerät.
- Software soll automatisch erkennen, welche Hardware angeschlossen ist (Auslesen, ob Extension-Board angeschlossen ist und die Pin-Konfiguration anpassen)
- Herstellen eines Gehäuses (3D-Druck)


  Mit Unterstützung von Prof. J. Walter Wintersemester 2018/2019