IDG

By Andrei -05/05/2011-


SENZOR DISTANTA

void setup() {
Serial.begin(9600);
}

int readDistance() {
int sum = 0;
for (int i=0; i<6;i++){
float volts = analogRead(0)* ((float) 5 / 1024);
float distance = 65*pow(volts, -1.10);
sum = sum + distance;
delay(5);
}
return (int)(sum / 6);
}

void loop() {
int distance = readDistance();
Serial.println(distance);
}




MOTOARE ROBOT


int MOTOR1_PIN1 = 10;
int MOTOR1_PIN2 = 11;

int MOTOR2_PIN1 = 5;
int MOTOR2_PIN2 = 6;

void setup() {
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
pinMode(6, OUTPUT);
pinMode(5, OUTPUT);
Serial.begin(9600);
}

void go(int speedLeft, int speedRight) {
if (speedLeft > 0) {
analogWrite(MOTOR1_PIN1, speedLeft);
analogWrite(MOTOR1_PIN2, 0);
}
else {
analogWrite(MOTOR1_PIN1, 0);
analogWrite(MOTOR1_PIN2, -speedLeft);
}

if (speedRight > 0) {
analogWrite(MOTOR2_PIN1, speedRight);
analogWrite(MOTOR2_PIN2, 0);
}
else {
analogWrite(MOTOR2_PIN1, 0);
analogWrite(MOTOR2_PIN2, -speedRight);
}
}

void loop() {
go (255, 255);
}

Trimite un comentariu