Hi Leute,
erstmal dicks Lob, für das super Forum hier.
Folgebdes Problem. Ich habe einen einfachen Code geschrieben der erkennen soll wenn sich ein Hindernis vor den RP6 befindet, um dann darauf zu reagieren.
Code:
#include "RP6RobotBaseLib.h"
int main(void)
{
initRobotBase();
powerON();
setACSPwrMed();
while(true)
{
task_ADC();
task_ACS();
task_motionControl();
moveAtSpeed(120,120);
if(getBumperRight()||obstacle_right)
{
setLEDs(0b000001);
rotate(120, LEFT, 90, true);
}
else
{
setLEDs(0b000000);
}
if(getBumperLeft()||obstacle_left)
{
setLEDs(0b001000);
rotate(120, RIGHT, 90, true);
}
else
{
setLEDs(0b000000);
}
}
return 0;
}
Jedoch dreht er sich, nachdem das Hindernis erkannt wurde, nur im Kreis.
Ich denke mal das nachdem etwas erkannt wurde, es sich aber nichtmehr in sichtbereich ist, die Variabeln trotzdem noch true sind. Mit z.B. "obstacle_right = 0" nach dem rotate hab ichs auch schon probiert...
Habt ihr einen Tipp für mich was da verkehrt ist, sendet bitte keinen vollständigen Code, vorerst. Will selber drauf kommen
mfg
Lesezeichen