Dwengo/sumobot: verschil tussen versies
Verwijderde inhoud Toegevoegde inhoud
Regel 226:
=== Stap 4: Strategieën, finetunenen ===
<source lang='c'>
#include <dwengoConfig.h>
#include <dwengoBoard.h>
#include <dwengoDelay.h>
#include <dwengoLCD.h>
#include <dwengoSensorModule.h>
#include <dwengoMotor.h>
#define LINE 1
#define LIGHT 2
#define WALL 3
#define LIGHT_THRESHOLD 20
#define LINE_THRESHOLD 10
#define PROXIMITY_MIN_THRESHOLD 5
#define PROXIMITY_MAX_THRESHOLD 7
#define DISTANCE_THRESHOLD 70
#define MAX_SPEED_LIGHT 1023
#define LOW_SPEED_LIGHT 700
#define MAX_SPEED_LINE 900
#define LOW_SPEED_LINE 500
#define MAX_SPEED_WALL 1023
#define LOW_SPEED_WALL 550
void main(void) {
int teller,os1, os4, os5, os8, d1, d2; // variables for sensors
initBoard();
initLCD();
initSensorModule();
initMotor();
powerLongRange(TRUE);
teller = 0;
delay_ms(5000);
while(TRUE) {
os1 = readSensor(OS1, DIFF_MODE);
os4 = readSensor(OS4, DIFF_MODE);
//printIntToLCD(os1 , 0, 10);
//printIntToLCD(os4 , 0, 0 );
os8 = readSensor(OS8, ACTIVE_MODE);
clearLCD();
printIntToLCD(os8, 1, 0);
if (os8>40 ) {
setSpeedMotor1 (1023);
setSpeedMotor2 (1023);
delay_ms(400);
}
else
{
if(os1 < 40 ){
teller = 0;
setSpeedMotor1(800);
setSpeedMotor2(-800);}
else if (os4 < 40){
teller = 0;
setSpeedMotor1(800);
setSpeedMotor2-(800);
}
else{
setSpeedMotor1(-750);
setSpeedMotor2(-750);
delay_ms(1000);
setSpeedMotor1(-1023);
setSpeedMotor2(1023);
//delay_ms(1500);
}
}
}
}
// verschil met vorige: hij wacht 5 sec voor de start, als hij geen target ziet blijft hij draaien en zoekt terwijl een vijand
</source>
|