Die Stromversorgung der Servos würde ich auf jedenfall dicker machen, da hier leicht mal 2Amper fliessen können. Der Strom bestimmt den Leitungsquerschnitt und nicht die Spannung. Optional könnte man allen Signalleitungen einen 100Ohm Widerstand spendieren zur Absicherung.
Deine GND Leitung führt zudem erst mal über die Servos und dann erst an die Logik, d.h. sie kann sich leicht Störungen einfangen.
Weiter fürchte ich, dass es mit einem Spannungsregler nicht funktionieren wird, meine Erfahrung ist, dass diese nicht in der Lage sind mit den Lastspitzen der Servos zurecht zu kommen. Die einzige Möglichkeit wäre es hier mit sehr vielen Kondensatoren zu arbeiten, die die Spitzen auffangen. Bei meinem neuen Vinculum läuft die Stromversorgnung der Servos komplett unabhängig von der Logik, die ist nicht mal auf der selben Platine.
Bei dir ist sogar noch die Logik mit der Leistungsseite verbunden und nur mit ein paar 100nF gepuffert.
Bei der Platine muss ich leider sagen, dass es mich gar nicht wundert, wenn die Signale nicht sauber bei den Servos ankommen.
Trenn mal die Logik von der Servosstromversorgung (auf der Platine) und miss die Spannung mit einem Oszi (Multimeter ist zu langsam).
Ich hatte ein gleiches Problem bei meinem ersten Hexabot auch und immer wieder an der gleichen Stelle hat er angefangen sich willkührlich zu bewegen. Als ich die Spannung dann mit dem Oszi gemessen hab wurde klar, dass die Logik unter 5V fällt. Seid dem (und weil mir der Labormeister das so empfohlen hat) trenne ich Logik und Servos so gut es geht. D.h. Ich betreibe die Logik mit einer 9V Batterie (natürlich über Spannungswandler) und die Servos über die 7,2V des LiPo. Sie teilen sich nur eine gemeinsame Masse (wobei ich im Moment die vollen 7,2V auf die Servos gebe und sie nicht auf 6V herunter regel. Bei den HiTec Servos ging das bisher gut und bei den BlueBirds wird es sich zeigen)
Hier die Platine für mein Vinculum. Im unteren Bereich sind die Servo Signalleitungen angeschlossen. Wie du siehst hab ich sehr dicke GND Flächen (keine Leitungen sondern eben der Rest der Platine). Es gibt nur eine Leitung die ich dünn machen muss, da sie zwischen den Pins entlang läuft und die überträgt nur ein Logiksignal. Ich komm auf der Platine mit zwei Brücken aus.
Wenn du dir beim Routing der Platine etwas mehr Mühe gibst, bekommst du das Layout garantiert fast ohne Brücken hin. Außerdem kannst du dir Störeffekte die durch Layout entstehen können sparen.
Mit Strom werden die Servos auf einer seperaten Platine versorgt die nochmal Kondensatoren zum Abblocken enthält. Diese Versorgung selbst hat eine 2200µF + 100µF + 100nF Kondensatorbank parallel geschaltet um alle Lastspitzen einzufangen.
Ich beschrenke meine Hilfe jetzt nur auf der Hardware Ebene, es schauen ja auch schone in paar User auf deinen Code.
Lesezeichen