Hi LucaSilva301,
ich glaube ich hab das Problem gelöst, auf jeden Fall läuft das Programm so bei mir:
Code:#include "RP6RobotBaseLib.h" void ausweichen(void) { if (!obstacle_left && !obstacle_right && !bumper_left && !bumper_right) { changeDirection(FWD); moveAtSpeed(50,50); } if (obstacle_left) { changeDirection(FWD); moveAtSpeed(75,10); } if (obstacle_right) { changeDirection(FWD); moveAtSpeed(10,75); } if (obstacle_left && obstacle_right) { changeDirection(BWD); moveAtSpeed(70,70); } } int main(void) { initRobotBase(); powerON(); setACSPwrMed(); while(true) { ausweichen(); task_RP6System(); } return 0; }
P.S.:
So kann man beim RP6 die Geschwindigkeit nicht angeben:
Wenn man das macht beschleunigt der RP6 auf ungefähr 150 und prallt voll gegen die Wand. Also immer *changeDirection(dir);* verwenden, sonst überleben die Bumper und die InfrarotLEDs nicht lange.Code:moveAtSpeed(-50,-50);![]()







Zitieren
Lesezeichen