18x Servos mg996r
2x ServoDriver pca9685
1x Elegoo Uni R3
Die Schaltung entspricht im Grunde der Grafik im Anhang. Wobei ServoDriver 1 die Adresse 0 und ServoDriver 1 die Adresse 2 hat (beim bridgen von ServoDriver 1 auf Adresse 0 habe ich Mist gebaut und musste Adresse 2 bridgen)
Der Uno hängt an einem 5V Steckdosen-Adapter.
Zusätzlich hängen die beiden ServoDriver zusammen an einem einzigen 5V Steckdosen-Adapter.
Hier einer meiner Testcodes:
#include <Arduino.h>
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
Adafruit_PWMServoDriver pwm0 = Adafruit_PWMServoDriver(0x40);
Adafruit_PWMServoDriver pwm1 = Adafruit_PWMServoDriver(0x42);
#define SERVOMIN 150 // This is the 'minimum' pulse length count (out of 4096)
#define SERVOMIDDLE 340
#define SERVOMAX 530 // This is the 'maSERVOMIDDLEimum' pulse length count (out of 4096)
void setup() {
Serial.begin(115200);
Serial.println("16 channel PWM test!");
pwm0.begin();
pwm0.setPWMFreq(50);
pwm1.begin();
pwm1.setPWMFreq(50);
}
void loop() {
for(int i=SERVOMIDDLE;i<SERVOMIDDLE+50;i++){
pwm1.setPWM(0, 0, i);
delay(5);
pwm0.setPWM(0, 0, i);
delay(5);
}
}
Aktuell tun die Servos aber völlig wirre Dinge. Wenn ich testweise wirklich einfach nur einen Servo bewege funktioniert alles. Sowohl für jeden einzelnen Servo als auch für bei ServoDriver.
Steuer ich aber mehr als nur einen Servo (mit delay dazwischen) dann passiert es dass Servo x plötzlich einfach ausschlägt. Ein anderer Servo bewegt sich garnicht. Dann schlägt plötzlich dort wieder einer aus usw usw
Also die Servos bewegen sich teils einfach random...selbst wenn ich sie garnicht direkt anspreche...
Nehme ich alles vom Strom und warte eine Weile bevor ich alles wieder anschließe...normalisiert sich alles für wenige Sekunden...plötzlich zack irgendein Servo schlägt wieder aus und das Chaos geht los...
Setze Deinen Code bitte in Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter ohne *).
So ist er auch auf portablen Geräten lesbar. Das kannst Du auch noch nachträglich ändern.
Formatiere bitte den Sketch ordentlich. + T in der IDE hilft Dir dabei.
Was für Stromquellen kommen denn in Frage wenn es kein Netzteil sein soll und ich möchte dass sich der Bot frei im Raum bewegen kann?
Dann würden sich wohl Batterien oder Akkus anbieten oder?
Dazu im Treiber-Datenblatt nachsehen welche max Spannung zugeführt werden darf und entsprechend auswählen.
noiasca:
Dann würden sich wohl Batterien oder Akkus anbieten oder?
Dazu im Treiber-Datenblatt nachsehen welche max Spannung zugeführt werden darf und entsprechend auswählen.
Einfache AA Batterien/Akkus ? Ich denke die sind zu schnell platt oder ?
Gibt es nicht Powerbanks mit mehr Spannung ?
Machen Lipos Sinn ?
Ich habe die ServoTreiber von AZDelivery...Wenn ich das richtig sehe dürfen hier nicht mehr als 5V angelegt werden ? :o [/url]
Ich würde an eine Reduzierung der Servos denken. Wenn der Bot nur vorwärts laufen soll, könnte ich mir vorstellen, daß 1 Servo pro Bein ausreicht - mit entsprechender Mechanik, Exzenter o.ä. Könnte dann evtl. auch mit DC Motoren funktionieren, dann gleich vorwärts und rückwärts? Genaues weiß ich nicht, vielleicht ist im Internet mehr zu finden?
Servodriver max 6V
Hierbei bitte beachten, das die maximale Versorgungsspannung der Servos bei 6 Volt liegen darf. Jeder PWM Ausgang hat eine maximale positive Strombelastbarkeit von 10 Milliampere bei 5 Volt
Servo MG996 Betrieb Spannung: 4,8-7,2 V
Ich würde dann also auf 6V und 10A-15A gehen. Netzteile finde ich einige, aber keinen passenden Lipo_Spannungswandler. Hat hier jmd einen Tip für mich ?
Zusätzliche Frage (Vorsicht Elektronik-Noob ): Macht es einen Unterschied ob ich beide ServoTreiber an eine Stromquelle anschließe ? Oder macht es einen Unterschied wenn jeder ServoTreiber seine eigene Stromquelle hat ?
Kiloui:
Ich würde dann also auf 6V und 10A-15A gehen. Netzteile finde ich einige, aber keinen passenden Lipo_Spannungswandler. Hat hier jmd einen Tip für mich ?
Für hohe Ströme und Kapazitäten kann ich einen Blei-Gel-Akku nur wärmstens empfehlen. Sowas wiegt halt Zieh doch ein kleines Akku-Wägelchen hinterher :-)))
Jeder Servotreiber kann getrennt mit Strom versorgt werden. Das aber nur damit die Servos an den Pins auch mit Spannung versorgt werden. Es können auch einzelne Servogruppen durch einzelbe DC/Dc Wandler versorgt werden. Die Massen aller Teile müssen zusammengeschaltet werden.
gregorss:
Für hohe Ströme und Kapazitäten kann ich einen Blei-Gel-Akku nur wärmstens empfehlen. Sowas wiegt halt Zieh doch ein kleines Akku-Wägelchen hinterher :-)))
Gruß
Gregor
Ich hielt das zunächst für einen Scherz. Aber grundsätzlich sehen die echt interessant aus.Nur Gewicht (1,8kg) und Größe sind nicht ganz passend....