Funktionstest

Motor-Treiber-Board

Schließen

Das zu testende Gerät

• 2 Schrittmotoren
• 2 BLDC-Motoren
• Encoder-Sensor-Eingänge
• CAN-Schnittstelle
• 2× SPI-Schnittstelle
• 24 V Versorgung
• Intern erzeugte 15 V
• Intern erzeugte 3,3 V

Das zu prüfende Gerät

  • Hergestellt mit einem Filament-3D-Drucker
  • Halterung für den Motor
  • Halterung für Lichtschranken
  • Encoderscheibe zur Messung der Motorbewegungen

Funktionstest-Leiterplatte – Kundenspezifische Testhardware

• Agiert als Gateway zwischen Host-Computer und Prüfling
• Leistungsschalter zur Steuerung der Stromversorgung
• Analoge Schalter für Signalleitungen
• I²C-Schnittstelle
• GPIO-Port-Expander zur Steuerung der Schalter
• Analog-Digital-Wandler zur Spannungsüberwachung
• Polyfuses zum Schutz im Fehlerfall

Kein Deal ohne Software C-Programm für Embedded Linux

Die Motortreiberplatine ist eine Zusatzplatine zu einer ARM-CPU-Platine. Daher haben wir diese Kombination für die Tests verwendet. Wir versuchen, die Testbedingungen so nah wie möglich an der Anwendung des Kunden auszurichten. Für die Motortreiberplatine wurden die Originalmotoren des Endgeräts verwendet.

Auf der ARM-CPU-Platine läuft ein angepasstes Yocto-Linux, was bedeutet, dass wir die Software mit dem entsprechenden SDK entwickeln mussten. Die Testsoftware wurde in der Programmiersprache C entwickelt, um einen direkten Zugriff auf die Hardware zu ermöglichen.

Auf der rechten Seite ist ein vereinfachtes Schema zu sehen, das den grundsätzlichen Ablauf der Software darstellt. Zunächst werden alle Datenstrukturen initialisiert, um sicherzustellen, dass keine Daten vom vorherigen Prüfling übernommen werden. Danach wartet die Software auf das Schließen des Testadapters.

Und hier beginnt die Automatisierung: Alle Schnittstellen werden in einem Zustandsautomaten nacheinander geprüft. Am Ende wird – sofern der Test erfolgreich war – ein Etikett gedruckt.

Some Pictures of the assembled FCT​