Motortreiber Version 1 - Eine Katastrophe!

Damit der Roboter sich fortbewegen kann, muss zunächst ein Motortreiber konstruiert werden. Wie der Name bereits verrät, ist dieser dafür verantwortlich, die Motoren zu steuern - sowohl die Richtung (vorwärts, rückwärts), als auch die Geschwindigkeit.

 

Der grundlegende Ansatz dafür war relativ schnell klar: Der Raspberry Pi verfügt nicht über ausreichend viele Pins zum Ansteuern von vier Motortreibern. Da das Schalttempo nicht allzu hoch ausfallen muss, ist es möglich, mittels eines GPIO-Expanders eine solche Schaltung zu ermöglichen.

 

Ein GPIO-Expander - in unserem Fall ein MCP23017 - verfügt über 19 Pins, die als Eingänge oder Ausgänge verwendet werden können. Die Motortreiber haben mehrere Pins zum Aktivieren der ICs sowie das logische Schalten der Motoren. Über I2C kann der Raspberry Pi mit dem IC kommunizieren und so die Motoren beeinflussen.

 

Anforderungen an den Motortreiber

 

  • Es sollen vier Gleichstrommotoren mit Bürsten angesteuert werden.
  • Die Motortreiber müssen einen Strom von 5A dauerhaft aushalten (stall current).
  • Die Motortreiber müssen eine Versorgungsspannung von 7.2V bis 9V aushalten können
  • Der gesamte Aufbau soll auf eine 10x10cm große Platine passen.
  • Um möglichst viele Pins am Raspberry Pi freizuhalten, soll ein GPIO-Expander verwendet werden
  • Auch wenn der Motortreiber neben dem Raspberry Pi ein Hauptbestandteil ist, soll der Preis so gering wie möglich ausfallen - dabei soll allerdings nicht an der Qualität der Hardware gespart werden!

 

Wo lag bei diesem Treiber das Problem?

Hauptsächlich im Preis. Es wurde der Motortreiber MCP33886 verwendet. Pro IC ist es möglich, dass ein Motor angesteuert wird. Da unser Roboter über vier Motoren verfügt, werden also ebenfalls vier ICs benötigt.

Bei einem Stückpreis von - je nach Lieferant - 10,00€ und 15,00€ bezahlt man hier also mindestens schonmal mindestens 40,00€ für die einzelnen Bauteile. Nach Herstellung der Platinen bei JLC-PCB wurde beschlossen, dass andere, günstigere H-Brücken verwendet werden sollen.

 

Außerdem wurde ein Anschluss für die Versorgungsspannung vergessen! Das ist ein schwerwiegender Designfehler, welcher nicht ohne weiteres behoben werden kann!

 

Da die Platinenherstellungskosten sehr gering ausfallen, wurden die Fehler nicht in Kauf genommen. Stattdessen wurde der Motortreiber komplett überarbeitet.

 

Mehr zum neuen Entwurf gibt es demnächst!