Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial Internet of Things >> Eingebettet

Entwerfen einer Wasserwaage für Sehbehinderte

Dieser Artikel beschreibt den kompletten Aufbau einer Wasserwaage für Sehbehinderte. Es verwendet einen ADXL312-Beschleunigungsmesser, um die Gravitationskraft in der horizontalen und vertikalen Ebene zu messen und gibt einen Summer aus, wenn der Beschleunigungsmesser genau horizontal oder vertikal ist.

Es kann auch als Neigungssensor verwendet werden, um beispielsweise Anhänger in Automobilanwendungen zu nivellieren, bei denen sich die Wasserwaage an einer vom Stützrad entfernten Stelle befinden könnte. Es wird auch als Teilschaltung in Fahrzeugstabilitätssystemen oder Drohnen verwendet.

Einführung

Amar Latif sorgt für Aufsehen in der britischen kulinarischen Szene, nachdem er bei Celebrity MasterChef aufgetreten ist . Amar ist jedoch nicht nur ein guter Koch, er leitet auch sein eigenes Reiseunternehmen, ist Motivationsredner, hat den größten Teil Südamerikas bereist und ist auch eine TV-Persönlichkeit. Nehmen die Superkräfte dieses Mannes kein Ende?

Gibt es leider. Amar ist zu 95 % blind. Die Technologie schreitet voran und die Welt kämpft darum, mit ihr Schritt zu halten, für Sehbehinderte wird der Kampf noch härter. Die meisten technologischen Fortschritte erfordern, dass wir mehr Zeit vor einem Bildschirm verbringen. Für Sehbehinderte bleibt übermäßige Bildschirmzeit ein „wenn nur“.

Wenn Technologie das Leben von Menschen mit Sehbehinderung bereichern kann, kann dies nur gut sein. Da nur 18% der registrierten blinden Bevölkerung vollständig blind (oder „schwarzblind“) sind, bleibt der überwiegenden Mehrheit zumindest eine gewisse Sehkraft übrig, auch wenn sie keine Details erkennen kann. So entstand die Idee einer Blindenwasserwaage.

Design-Gliederung

Das Design des Neigungssensors basiert auf dem ADXL312, einem Niedrigstrom-Beschleunigungsmesser, der bis zu ±1,5 g . messen kann in der x-, y- und z-Achse mit ausgelesenen Daten über einen SPI-Bus. Das Teil ist in einem 5 mm × 5 mm Gehäuse erhältlich und verbraucht im Standby-Modus 0,1 μA. Es misst bis zu einer Auflösung von 10 Bit, sodass der ADXL312 Änderungen von nur ±2,9 mg . erkennen kann in jeder Achse. Der ADXL312 speichert die Gravitationsdaten für jede Achse als Zweierkomplementwert bis zu ±511, die der Mikrocontroller liest und auf einem einzeiligen 16-stelligen LCD-Display anzeigt. Abbildung 1 zeigt die Abtastachsen des ADXL312.

klicken Sie für das Bild in voller Größe

Abbildung 1. Abtastachsen des ADXL312. (Quelle:Analog Devices)

Das Teil hat einen Skalenendwert von 1,5 g , also eine Gravitationskraft von 1 g gibt eine Lesung 2 / 3 von diesem. Wenn der ADXL312 also genau waagerecht ist, sollte das Z-Achsen-Register 2 . lesen / 3 Skalenendwert, während die x- und y-Achsen Null anzeigen sollten. Wenn der ADXL312 perfekt vertikal steht, sollte der Messwert auf der x-Achse 2 . betragen / 3 Skalenendwert, während die y- und z-Achse Null anzeigen sollte. Wenn der ADXL312 beginnt, sich von einer Achse weg zu neigen, beginnt der maximale Messwert zu sinken, während der Messwert auf den anderen Achsen entsprechend dem Sinus des Neigungswinkels zunimmt.

Im ADXL312

Das ADXL312 ist ein mikroelektromechanisches System (MEMS), das aus einer oberflächenmikrobearbeiteten Polysiliziumstruktur besteht, die auf einem Siliziumwafer aufgebaut ist. Polysiliziumfedern hängen die Struktur über der Oberfläche des Wafers und bieten einen Widerstand gegen Beschleunigungskräfte.

Feste Siliziumfinger verschachteln sich mit Fingern auf einer beweglichen Prüfmasse, um Differenzkondensatoren zu erzeugen, deren Eigenschaften gemessen werden können. Die Beschleunigung lenkt den Strahl ab und bringt die Differenzkondensatoren aus dem Gleichgewicht, was zu einem Sensorausgang führt, dessen Amplitude proportional zur Beschleunigung ist. Die Struktur ist in Abbildung 2 dargestellt.

Klicken für Bild in voller Größe

Abbildung 2. Die interne Funktionsweise des ADXL312. (Quelle:Analog Devices)

Der ADXL312 kann entweder über I 2 . adressiert werden C oder SPI, und die x-, y- und z-Daten werden in sechs internen 8-Bit-Registern gespeichert. Es hat auch viele andere Funktionen, darunter ein 32-Level-FIFO, zwei Multifunktions-Interrupts, Offset-Register, einen mechanischen Selbsttest und Auto-Sleep-Modi.

Das Design der Wasserwaage

Das vollständige Schaltbild des Neigungssensors ist in Abbildung 3 dargestellt.

Der ADXL312 hat eine maximale Versorgungsspannung von 3,6 V, während das LCD-Display und der Summer 5 V benötigen, daher beträgt der Haupteingang der Schaltung 5 V, und dies wird mit einem 3,3 V, 150 mA-Linearregler (ADP121) auf heruntergeregelt den ADXL312, den Mikrocontroller und den E2-Speicher mit Strom versorgen.

Port B, Pin 2 (der CAL-Pin) am Mikrocontroller wird von einem 10 kΩ Widerstand hochgezogen. Es hat auch einen Jumper, der es ermöglicht, ihn mit Masse zu verbinden. Beim Start fragt der Mikrocontroller den Zustand des CAL-Pins ab, und wenn dieser Pin vom Jumper nach unten gezogen wird, liest er die x-, y- und z-Register, subtrahiert diese Messwerte von Null und lädt dann das Ergebnis in die Offset-Register im Inneren der ADXL312 sowie speichert sie im externen E2-Speicher, dem 25AA040. Der ADXL312 fügt die Messwerte aus den Offset-Registern automatisch zu jeder zukünftigen Messung ohne Eingreifen des Prozessors hinzu und entfernt so die kalibrierten Offsets.

Wenn der Jumper entfernt wird, wird der CAL-Pin hochgezogen und die Kalibrierungsroutine umgangen. Die Offset-Messwerte werden direkt aus dem E2-Speicher gelesen und in die Offset-Register des ADXL312 geladen. So kann während der Herstellung die Wasserwaage in einer Kalibriervorrichtung mit tief gehaltenem CAL-Pin montiert, das Gerät kalibriert und die Offset-Werte im E2-Speicher gespeichert werden. Nach der Kalibrierung wird der Jumper entfernt und bei nachfolgenden Einschaltvorgängen wird der E2-Speicher abgefragt und die kalibrierten Offset-Messwerte in die Offset-Register des ADXL312 geladen.

Die Software führt dann acht Messungen jeder Achse durch, und die Ergebnisse werden gemittelt und dann auf dem 16-stelligen LCD-Display angezeigt. Die Anzeige wird alle 100 ms aktualisiert.

Klicken für Bild in voller Größe

Abbildung 3. Das komplette Schema der Wasserwaage für Sehbehinderte. (Quelle:Analog Devices)

Abbildung 4 zeigt, dass die maximale Empfindlichkeit erreicht wird, wenn sich jeder Sensor nahe seinem Nullwert befindet. Hier ist die Steigung der Sinuswelle am steilsten, wodurch die maximale Änderung der Schwerkraft bei jeder Änderung der Neigung erreicht wird.


Abbildung 4. Darstellung der sinusförmigen Änderung der g-Kraft mit dem Winkel. (Quelle:Analog Devices)

Glücklicherweise muss die Wasserwaage nur dann die Neigung messen, wenn jeder Sensor perfekt horizontal ist und der Sensorwert nahe Null ist.

Die Software wurde so geschrieben, dass sowohl die x- als auch die z-Achse gleichzeitig kalibriert werden können. Es ist einfach, das Teil auf einer horizontalen Plattform zu platzieren und die x-Achse des Neigungssensors zu kalibrieren. An diesem Punkt erfährt die z-Achse jedoch eine Kraft von 1 g , also muss ein z-Wert gemessen werden, verglichen mit dem Skalenendwert bei 1 g , und jeder Fehler wird in das Offset-Register geladen. Eine genauere Kalibrierung jeder Achse des Neigungssensors kann durch Kalibrierung sowohl in der horizontalen als auch in der vertikalen Ebene erreicht werden, dies erfordert jedoch eine 2-stufige Kalibrierung und eine Modifikation der Software.

Tabelle 1 zeigt ein Beispiel für Zweier-Komplement-Daten. Positive Zahlen folgen der herkömmlichen binären Notation. Negative Zahlen verwenden das höchstwertige Bit (MSB) als Vorzeichenbit; somit haben positive Zahlen ein MSB gleich Null und negative Zahlen haben ein MSB gleich 1.

Tabelle 1. Ein Beispiel für Zweierkomplementdaten

Dezimal Binär +51101 1111 1111+100 0000 0001000 0000 0000-111 1111 1111-51110 0000 0001

Das Zweierkomplement einer positiven Zahl kann gefunden werden, indem alle Bits invertiert und dann 1 addiert werden. Somit ändert sich der Code von 00 0000 0000 auf 11 1111 1111, wenn von einer Zählung von Null auf eine Zählung von –1 übergegangen wird.

Die Software liest die x- und z-Register und wenn der Wert eines der Register 0 oder 1023 (11 1111 1111) ist, setzt sie Port B, Bit 5 hoch, was den Transistor Q1 einschaltet und den 5-V-Summer ertönen lässt. Wenn der Neigungssensor perfekt horizontal ist, hat die x-Achse einen Messwert von 0 oder 1023 und wenn er perfekt vertikal ist, hat die z-Achse einen Messwert von 0 oder 1023. Nur wenn beide Register ungleich 0 oder 1023 sind, der Summer hört auf zu tönen.

Genauigkeit und Weiterentwicklung

Bei nur einer Achse ein maximaler Messwert von 1 g wird erreicht, wenn die Schwerkraft entlang dieser Achse wirkt, und dieser Messwert reduziert sich auf 0 g da das Teil um 90° gekippt wird, wie in Abbildung 5 gezeigt.


Abbildung 5. Berechnung des Neigungswinkels anhand der Gravitationsmessung. (Quelle:Analog Devices)

Somit wird die ausgeübte Gravitationskraft durch die Gleichung bestimmt

Dabei ist Ø der Neigungswinkel gemessen in Bezug auf die Horizontale. Wenn das Teil mit einer Auflösung von 2,9 mg messen kann , dann kann er bis zu einem Winkel von 0,17° auflösen. Die Genauigkeit einer handelsüblichen Wasserwaage kann nur schwer beziffert werden, da die genaue Position der Libelle schwer zu ermitteln ist. Aus Experimenten geht jedoch hervor, dass sich das Ende einer 1,2-m-Wasserwaage etwa 3,2 mm (die Breite von zwei unbestückten Leiterplatten!) bewegen kann, bevor die Blase außermittig aussieht. Dies entspricht einem Winkel von etwa 0,15°, was darauf hindeutet, dass wir eine Wasserwaage mit geringem Auflösungsverlust durch einen elektronischen Neigungssensor ersetzen können.

Wenn mehr Genauigkeit erforderlich ist, bietet der ADXL313 eine Auflösung von 11 Bit auf einer 1-g-Skala. Die Schnittstellen- und Registersätze sind denen des ADXL312 sehr ähnlich, sodass die Software nicht viel modifiziert werden muss. Der ADXL355 bietet ein deutlich geringeres Rauschen und eine höhere Auflösung.

Der ADXL312 hat eine Rauschdichte von 340 μg /√Hz, und je geringer die Bandbreite, desto besser das Rauschen. Die Bandbreite des Teils ist programmierbar (von 3,125 Hz bis 1600 Hz mit einer Standardeinstellung von 50 Hz). Obwohl die Reduzierung der Bandbreite das Rauschen verbessert, verringert sich dadurch auch die Aktualisierungsrate des Displays. Für dieses Design wurde die Bandbreite auf 6,25 Hz eingestellt, was ein RMS-Rauschen von 850 μg . impliziert . Das Rauschen kann auch reduziert werden, indem viele weitere Messwerte genommen und der Durchschnitt gebildet wird.

Eine weitere Verbesserung wäre eine LCD-Anzeige mit Gradanzeige. Dies erfordert jedoch die Verwendung von mathematischen Funktionen in der C-Bibliothek, wenn Sinus und Cosinus in die Software aufgenommen werden sollen. Diese Funktionen belegen zu viel Codeplatz für einen Low-End-Mikrocontroller. Eine enge Annäherung an eine Sinusfunktion kann mit der Taylor-Reihenentwicklung erreicht werden, und diese sollte erheblich weniger Coderaum beanspruchen.

Schlussfolgerung

Der ADXL312 bietet ein kostengünstiges elektronisches Neigungsmesssystem, das sich leicht an einen Low-End-Mikrocontroller anschließen lässt. Das zuvor beschriebene Design hat bewiesen, dass es mit der Genauigkeit herkömmlicher Wasserwaagen mithalten kann, jedoch mit einer elektronischen Schnittstelle. Dadurch kann es als Subsystem in größeren Konstruktionen verwendet werden, die die Neigung messen müssen, wie z. B. Anhänger-Nivelliersysteme, Stabilitätskontrollsysteme und Drohnen.

Noch wichtiger ist, dass es verwendet werden kann, um die Unabhängigkeit von Sehbehinderten zu erhöhen, und dieser Text zeigt ein vollständiges Design auf Systemebene, einschließlich Hardware, Software und nichtflüchtigem Speicher sowie einer Audio- und visuellen Ausgabe.


Simon Bramble schloss 1991 sein Studium der Elektrotechnik und Elektronik an der Brunel University in London mit den Schwerpunkten analoge Elektronik und Energie ab. Er hat seine Karriere in der analogen Elektronik verbracht und bei Linear Technology (jetzt Teil von Analog Devices) gearbeitet. Er ist erreichbar unter [email protected] .

Verwandte Inhalte:

Für mehr Embedded, abonnieren Sie den wöchentlichen E-Mail-Newsletter von Embedded.


Eingebettet

  1. Entwerfen eines flexibleren Kerns für das Multi-Gigabit-Campus-Netzwerk
  2. Innodisk:AIoT-Lösungen für den medizinischen Bereich
  3. Plädoyer für neuromorphe Chips für KI-Computing
  4. Entwicklung von Motorsteuerungen für Robotersysteme
  5. SICHT:Für Blinde
  6. Welches sind die häufigsten Fehler, die bei der Konstruktion für die Fertigung vermieden werden sollten?
  7. Das beste Level für Optimierung und Organisation in der Smart Factory
  8. Die Herausforderung der 5S-Methode für die Industrie 4.0
  9. Danke für die Erinnerungen!
  10. Was sind die wichtigen Richtlinien für das Design von Leiterplatten für die Luft- und Raumfahrt? -II