Hallo Achim

Ich habe ein neues Thema bezgl Bodensensoren aufgemacht, denn dieses Thema hat ja mit dem initializer2.hex nicht so viel zu tun...

Beim Test der Bodensensoren (die 2 vorderen Sensoren) habe ich festgestellt, daß der Nibo noch bis zu 4 cm weiter fährt nach dem Erkennen des "Absturzes" -> 4cm, da würde er auf jeden Fall abstürzen (2,4 cm sind das maximale ohne Absturz)

Mein Programm ist ganz einfach gehalten; in einer while-schleife wird:

copro_setSpeed(tspeed_l, tspeed_r);
copro_update();
if ((value_fl<0x20)||(value_fr<0x20)) {
leds_set_status(2,4);
copro_stop();}

(das sind nur prinzipielle Codeschnipsel!) Die Sollwertvorgabe tspeed_l = 40 Ticks (14cm/s), ki = 15, kp = 20, kd = 10.
Ich wollte auch die Zeit messen, die vergeht, bis der NIBO steht (vom Auslösen des copro_stop() bis copro_speed_l = 0, wollte das über einen interruptgesteuerten Timer/Zähler ISR(TIMER2_COMP_vect) machen, aber der Befehl copro_stop() schaltet die Interruptbehandlung aus (cli() und sei())..und somit geht mein Zähler nicht - es wäre schon interessant, die Zeit zu messen, die der Nibo braucht um zum stehen zu kommen..

ich werde mal checken, ob der Nibo mit dem Befehl copro_setPWM() schneller zum Stillstand kommt, denn ich befürchte, daß er noch weiter fahren würde,wenn der Speedsetpoint größer wäre (z.B. statt 40 Ticks 80 Ticks, wobei die Frage ist - kann er diese Geschwindigkeit überhaupt fahren...

Hero_123