RoboterCC - Robotic Code Compiler
Forum Robot Kits NIBO 2 NIBO2 Fahrwerk

Welcome

Nachrichten

Sie sind nicht eingeloggt.

Werbung

Banner

Letzte Themen

  • Keine Beiträge vorhanden

Site-Statistic

  • 7426 private projects
  • 385 public projects
  • 16180353 lines compiled
  • 58212 builds
NIBO @ facebook YouTube Twitter
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
  • Seite:
  • 1
  • 2

THEMA: NIBO2 Fahrwerk

Aw: NIBO2 Fahrwerk 12 Jahre 1 Monat her #899

  • Georg
  • Georgs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 290
Erst einmal Dank an alle!

Die Ticks/Zeiteinheit zu prüfen halte ich für den besten Lösungsansatz.

Beim Motorstrom sehe ich das Problem, wie verhält sich der Motorstrom beim
Beschleunigen, Bremsen und/oder verdreckten Getriebe.

Georg
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: NIBO2 Fahrwerk 12 Jahre 1 Monat her #900

  • Egon
  • Egons Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 316
Hallo Georg

Ich habe bei mir beim Geradeausfahren (vorwärts oder rückwärts) so eine "Gleichlaufregelung" implemetiert, funktioniert sehr gut (mein NIBO fuhr beim Geradeausfahren sonst immer einen "Großkreis") - anbei Codschnipsel, wie ich es gemacht habe:

/* speed[0] = Motor links vorwaerts */
/* speed[1] = Motor rechts vorwaerts */
/* speed[2] = Motor links rueckwaerts */
/* speed[3] = Motor rechts rueckwaerts */

diff_ticks = copro_ticks_l - copro_ticks_r; /* diff_ticks > 0 => links schneller*/
if((diff_ticks >= 1)||(diff_ticks <=-1))copro_setSpeed(speed[0] - diff_ticks,speed[1]); /* wenn NIBO vorwaerts faehrt */
if((diff_ticks >= 1)||(diff_ticks <=-1)) copro_setSpeed(speed[2] - diff_ticks,speed[3]); /* wenn NIBO rueckwaerts faehrt */

im Prinzip ganz simpel, funktionert aber sehr gut!

Egon
lokalisieren, eliminieren, Vollzug melden
Letzte Änderung: 12 Jahre 1 Monat her von Egon.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: NIBO2 Fahrwerk 12 Jahre 1 Monat her #905

  • Georg
  • Georgs Avatar
  • OFFLINE
  • Gold Boarder
  • Beiträge: 290
Egon schrieb:
Hallo Georg

Ich habe bei mir beim Geradeausfahren (vorwärts oder rückwärts) so eine "Gleichlaufregelung" implemetiert, funktioniert sehr gut (mein NIBO fuhr beim Geradeausfahren sonst immer einen "Großkreis") - anbei Codschnipsel, wie ich es gemacht habe:

/* speed[0] = Motor links vorwaerts */
/* speed[1] = Motor rechts vorwaerts */
/* speed[2] = Motor links rueckwaerts */
/* speed[3] = Motor rechts rueckwaerts */

diff_ticks = copro_ticks_l - copro_ticks_r; /* diff_ticks > 0 => links schneller*/
if((diff_ticks >= 1)||(diff_ticks <=-1))copro_setSpeed(speed[0] - diff_ticks,speed[1]); /* wenn NIBO vorwaerts faehrt */
if((diff_ticks >= 1)||(diff_ticks <=-1)) copro_setSpeed(speed[2] - diff_ticks,speed[3]); /* wenn NIBO rueckwaerts faehrt */

im Prinzip ganz simpel, funktionert aber sehr gut!

Egon

Hallo Egon,
deinen Vorschlag werde ich mal ausprobieren. Die beiden if-Anweisungen werde ich um eine grafische Ausgabe (zeichnet Balken bei jeden Regeln) erweitern:

if((diff_ticks >= 1)||(diff_ticks <=-1)) {
copro_setSpeed(speed[2] - diff_ticks,speed[3]);
gfx_move(x1++,y1);
gfx_pixel(1);
}

Lg Georg
Der Administrator hat öffentliche Schreibrechte deaktiviert.
  • Seite:
  • 1
  • 2
Ladezeit der Seite: 0.039 Sekunden

Werbung