RoboterCC - Robotic Code Compiler
Forum Robot Kits NIBObee Linienverfolgung Nibo bee Funktioniert nich

Welcome

Nachrichten

Sie sind nicht eingeloggt.

Werbung

Letzte Themen

  • Keine Beiträge vorhanden

Site-Statistic

  • 7430 private projects
  • 378 public projects
  • 16177837 lines compiled
  • 58186 builds
NIBO @ facebook YouTube Twitter
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
  • Seite:
  • 1

THEMA: Linienverfolgung Nibo bee Funktioniert nich

Linienverfolgung Nibo bee Funktioniert nich 12 Jahre 1 Woche her #945

  • marce18
  • marce18s Avatar
  • OFFLINE
  • Junior Boarder
  • Beiträge: 10
Ich habe auf der Niboo bee roboter NIBObee Linienfolge programmiert.
Nun wenn ich der roboter auf eine Schwarze linie lege und dann einschalte blicken 10 mal die Rote LED 1 und LED 2. Danach die gelbe LED 0 und LED 3. Und dann leuchtet nur noch die LED 6 vom Schalter und der Roboter bewegt sich nicht.

Kann mir jemand Helfen!
Letzte Änderung: 12 Jahre 1 Woche her von marce18.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Linienverfolgung Nibo bee Funktioniert nich 12 Jahre 1 Woche her #946

  • elektrolutz
  • elektrolutzs Avatar
  • OFFLINE
  • Gold Boarder
  • NiboBee+BGX1+Tunig-Kit, Nibo2+GFX+NDS3+UCOM-IR2
  • Beiträge: 401
Hallo marce18,

ohne Deinen Programmcode zu kennen, kann Dir hier niemand bei Deinem Problem helfen.
Gruß aus Werl elektrolutz
Theorie ist, wenn man weiß, wie alles funktioniert. -- Praxis ist, wenn alles klappt und keiner weiß warum!
Letzte Änderung: 12 Jahre 1 Woche her von elektrolutz.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Linienverfolgung Nibo bee Funktioniert nich 12 Jahre 1 Woche her #948

  • marce18
  • marce18s Avatar
  • OFFLINE
  • Junior Boarder
  • Beiträge: 10
Dies ist der Quellcode der ich eingegeben habe. Und wenn ich jetzt etwas neue programmieren, bleibt immer noch die Programmierung von Linienverfolgung?

#include <nibobee/iodefs.h>
#include <nibobee/motpwm.h>
#include <nibobee/analog.h>
#include <nibobee/line.h>
#include <nibobee/led.h>
#include <nibobee/delay.h>

#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>

int main() {
activate_output_group(IO_LEDS); // LED bits als Output
motpwm_init();
motpwm_setLeft(0);
motpwm_setRight(0);
analog_init();
line_readPersistent(); // Kalibrierung für Liniensensoren laden
set_output_group(IO_SENS); // interne Pull-up Widerstände aktivieren
activate_output_bit(IO_LINE_EN);

int16_t speed_flt_l=0;
int16_t speed_flt_r=0;

// Countdown: LEDs blinken lassen
for (uint8_t i=0; i<10; ++i) {
led_set(LED_L_RD, 1);
led_set(LED_R_RD, 1);
_delay_ms(10);
led_set(LED_L_RD, 0);
led_set(LED_R_RD, 0);
_delay_ms(990);
}
led_set(LED_L_YE, 1);
led_set(LED_R_YE, 1);
_delay_ms(1000);
led_set(LED_L_YE, 0);
led_set(LED_R_YE, 0);

// Hauptschleife:
while(1) {
sei();
_delay_ms(1);
int16_t speed_l=0;
int16_t speed_r=0;

// Sensorwerte aktualisiseren
int16_t lval = line_get(LINE_L);
int16_t cval = line_get(LINE_C);
int16_t rval = line_get(LINE_R);

if (lval+cval+rval < 20) {
// kein Boden (alle Werte schwarz!)
led_set(LED_L_RD, 0);
led_set(LED_R_RD, 0);
speed_r=0, speed_l=0;
} else if ((lval<cval) && (lval<rval)) {
// Linie ist links (der linke Sensor hat den kleinsten Wert)
led_set(LED_L_RD, 1);
led_set(LED_R_RD, 0);
// Rechter Motor schnell, linken Motor langsamer, in Abhängigkeit
// vom Unterschied zum mittleren Sensor besonders stark abbremsen
speed_r=550, speed_l=450-1*(cval-lval);
} else if ((rval<cval) && (rval<lval)) {
// Linie ist rechts (der rechte Sensor hat den kleinsten Wert)
led_set(LED_L_RD, 0);
led_set(LED_R_RD, 1);
// Linker Motor schnell, rechter Motor langsamer, in Abhängigkeit
// vom Unterschied zum mittleren Sensor besonders stark abbremsen
speed_r=450-1*(cval-rval), speed_l=550;
} else {
// Linie ist mittig (der mittlere Sensor hat den kleinsten Wert)
led_set(LED_L_RD, 1);
led_set(LED_R_RD, 1);
// Beide Motoren sehr schnell, je nach Unterschied zum mittleren
// Sensor noch etwas schneller bzw. langsamer
speed_r=750 + 1*(rval-cval), speed_l=750 + 1*(lval-cval);
}

// Soll-Geschwindigkeit filtern: 75% alter Wert, 25% neuer Wert
// alt*75/100 + neu*25/100 = (3*alt+1*neu)/4
speed_flt_l*=3; speed_flt_l+=speed_l; speed_flt_l/=4;
speed_flt_r*=3; speed_flt_r+=speed_r; speed_flt_r/=4;

// Soll Werte für Motoren setzen
motpwm_setLeft(speed_flt_l);
motpwm_setRight(speed_flt_r);

}
return 0;
}
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Linienverfolgung Nibo bee Funktioniert nich 12 Jahre 1 Woche her #951

  • workwind
  • workwinds Avatar
  • OFFLINE
  • Administrator
  • Beiträge: 573
Hallo marce18,

Funktioniert denn das folgende Linienfolgeprogramm:

www.roboter.cc/index.php?option=com_nicaiwci&view=project&Itemid=61&projectid=100
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Linienverfolgung Nibo bee Funktioniert nich 12 Jahre 1 Woche her #952

  • marce18
  • marce18s Avatar
  • OFFLINE
  • Junior Boarder
  • Beiträge: 10
Nein habe gerade jetz wieder ausprobiert aber es funktioniert nicht. Es leuchten 10 mal die rote led dan 1 mal die gelbe und dann bleibt der roboter stehen
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Linienverfolgung Nibo bee Funktioniert nich 12 Jahre 1 Woche her #953

  • elektrolutz
  • elektrolutzs Avatar
  • OFFLINE
  • Gold Boarder
  • NiboBee+BGX1+Tunig-Kit, Nibo2+GFX+NDS3+UCOM-IR2
  • Beiträge: 401
Hallo marce18,

sind die Akkus richtig geladen?
Wenn die Akkus schwach sind, dann reicht die Leistung für die LEDs, wenn aber die Motore eingeschaltet werden, passiert nichts mehr, weil die Akkuspannung zu stark einbricht.

Das Programm aus workwind's Link funktioniert einwandfrei!

Bei zu schwachen Akkus tritt zu dem auch das Problem auf, dass eine Programmübertragung nicht mehr funktioniert und das zuvor geladenen Programm erhalten bleibt. RoboDude tut dabei aber so, als wäre die Programmübertragung erfolgreich gewesen.
Gruß aus Werl elektrolutz
Theorie ist, wenn man weiß, wie alles funktioniert. -- Praxis ist, wenn alles klappt und keiner weiß warum!
Letzte Änderung: 12 Jahre 1 Woche her von elektrolutz.
Der Administrator hat öffentliche Schreibrechte deaktiviert.
  • Seite:
  • 1
Ladezeit der Seite: 0.052 Sekunden

Werbung