Renchtaler Geschrieben 28. Februar 2019 Geschrieben 28. Februar 2019 Moin. Ich habe hier einen günstigen Hobbyking ESC und einen Arduino, den ich per akkubetriebenen Arduino und W-LAN ansteuere. Ist es möglich per Software eine regenerative Bremse hinzuzufügen? Bei dem ESC gibt es zwar eine Bremse, aber die haut mit 100% rein. Hier ein Link zum Externe Links nur für Mitglieder sichtbar. Gruß Renchtaler Zitieren
xenon Geschrieben 1. März 2019 Geschrieben 1. März 2019 Klappt leider nicht da die "bremseigenschaften" auf dem Esc selber hinterlegt sind man müßte also den regles flashen. Zitieren
Renchtaler Geschrieben 1. März 2019 Autor Geschrieben 1. März 2019 Vielleicht kann ich den Programm sagen das er den Wert vom Stick mit einer Zahl subtrahiert und so eine Bremse simuliert. Zitieren
xenon Geschrieben 1. März 2019 Geschrieben 1. März 2019 Müßte man testen also bei Benutzung der bremse den pwm Wert mit einer frequenz k. A. 30hz von bremsen auf Freilauf wechseln lassen. Dann sollte man mit der frequenz die bremsstärke regeln können. Interessantes Projekt schreib mal ob das alles so klappt. Zitieren
Renchtaler Geschrieben 1. März 2019 Autor Geschrieben 1. März 2019 Erstmal mal muss ich meine Motorhalterung fertig bekommen^^ Die fräst gerade ein Bekannter von mir. Müsste ich mal tatsächlich mal testen. Ich kann das mal nächste Woche oder sogar noch diese Woche testen. Mal schauen. Zitieren
Renchtaler Geschrieben 1. März 2019 Autor Geschrieben 1. März 2019 (bearbeitet) Der ESC empfängt PWM Signale von 1000 us bis 2000 us. Ich habe jetzt erstmal mir eine delay function gebastelt. Hier der erste Snippet. /* ESC_Ramp Based on the Sweep example in the Servo library, this allow a ramp up and down of the ESC speed based on the Min and Max values. The Min and Max speed are defined so you can change them at one location and it will be used in the ramp as well. */ #include <ESC.h> #define SPEED_MIN (1000) // Set the Minimum Speed in microseconds #define SPEED_MAX (2000)// Set the Minimum Speed in microseconds ESC myESC (2, SPEED_MIN, SPEED_MAX, 500);// ESC_Name (ESC PIN, Minimum Value, Maximum Value, Default Speed, Arm Value) int deadmen= 0, oESC, cruiseButton = 1, pot = A0, val, curval = 1000;// Variable for the speed sent to the ESC void setup() { Serial.begin(9600); pinMode(LED_BUILTIN, OUTPUT);// LED Visual Output pinMode(pot, INPUT); pinMode(cruiseButton, INPUT); myESC.arm();// Send the Arm value so the ESC will be ready to take commands digitalWrite(LED_BUILTIN, HIGH);// LED High Once Armed delay (5000);// Wait for a while Serial.println("init finished"); } void loop() { Serial.println(val, DEC); val = map(val, 800, 1023, 1000, 2000);//map potentiomater value (0-1024 to 1000-2000 micro seconds); if (digitalRead(deadmen) == LOW){ if (digitalRead(cruiseButton) == LOW) {//check if cruise button is pressed, if it is dont modify the curval // do nothing to curval } if (curval < val) { //check if curval is less than potentiometers mapped value curval = curval + 8; // if it is less, add 5 to the curval } else if (curval > val) { //check if curval is more than potentiometers mapped value curval = curval - 10; //if it is more, remove 5 from the curval }else if (curval > 1000) { //if deadmans switch isnt turned and curval is more than 1000ms (throttle down value) curval = curval - 10; //remove 5 from curval to start slowing down if above condition is true } } Serial.println(curval); myESC.speed(curval); //write microseconds to esc delay(50); //delay the loop 50ms } bearbeitet 1. März 2019 von Renchtaler Zitieren
Renchtaler Geschrieben 19. März 2019 Autor Geschrieben 19. März 2019 Muss ich nicht die 30 Hz umrechnen? Oder als letzte Möglichkeit kann ich mir einen Vesc bei Externe Links nur für Mitglieder sichtbar holen. Weil ich verzweifle so langsam damit. Zitieren
barney Geschrieben 4. Juli 2019 Geschrieben 4. Juli 2019 Delay zu verwenden ist kriminell. Dafür sind die PWM Ausgänge da. Oder die fertigen Servo Routinen. Ich habe ei en Teensy im BamBam Controller verwendet und arbeite mit PWM und drei Zeitgeber, die einen IRQ auslösen. Quasi ein RT System. Zitieren
Renchtaler Geschrieben 4. Juli 2019 Autor Geschrieben 4. Juli 2019 Ich verwende mittlerweile einen Vesc und eine GT2B, aber danke.😀 Zitieren
barney Geschrieben 4. Juli 2019 Geschrieben 4. Juli 2019 War im Zeitablauf zu erwarten gewesen, aber es musste aufgezeigt werden. 😁 1 1 Zitieren
Empfohlene Beiträge
Tritt dem Gespräch bei
Du kannst jetzt posten und dich später registrieren. Wenn du bereits einen Account hast kannst du dich hier anmelden.