Banner Ausblenden
Kleines Logo

Willkommen auf PSI-Online

Fahrzeug(2)

Board: Arduino Mega 2560

 

Um die Datei AFMotor.h hier in dieses Programm einfügen zu können, müsst ihr sie herunterladen. 

Hier der Link zum Download: http://learn.adafruit.com/adafruit-motor-shield/library-install

.

#include  <AFMotor.h>    

  AF_DCMotor motor1(1, MOTOR12_64KHZ);                             
  AF_DCMotor motor2(2, MOTOR12_64KHZ);

 

int geschwindigkeit = 250;
float ausgleichsfaktor = 0.76;
int abstandssensor = 10;

 void setup() {
   pinMode(abstandssensor, INPUT);
   geradeaus(geschwindigkeit);
 }
 
 void loop() {
   if (digitalRead(abstandssensor) == LOW) {
     halt();
   }
}

 void geradeaus (int g);
 {
   motor1.setSpeed(floor(g*ausgleichsfaktor));     // set the speed to 200/255
   motor2.setSpeed(g);                           // set the speed to 200/255
   motor1.run(FORWARD);
   motor2.run(FORWARD);
 }

 void halt (int g);
 {
   motor1.run(RELEASE);
   motor2.run(RELEASE);
 }

 

2. Versuch

#include        

  AF_DCMotor motor1(1, MOTOR12_64KHZ);                             
  AF_DCMotor motor2(2, MOTOR12_64KHZ);

 int geschwindigkeit = 250;
 float ausgleichsfaktor = 0.76;
 int abstandssensor = 30;
 int v = 31;
 int abstand;


 void geradeaus (int g)
 {
   motor1.setSpeed(floor(g*ausgleichsfaktor));   
   motor2.setSpeed(g);                         
   motor1.run(FORWARD);
   motor2.run(FORWARD);
 }

 void halt ()
 {
   motor1.run(RELEASE);
   motor2.run(RELEASE);
 }


 void setup() {
   Serial.begin(9600);
   pinMode(abstandssensor, INPUT);
   pinMode(v, OUTPUT);
   digitalWrite(v,HIGH);
   delay(5000);
   geradeaus(geschwindigkeit);
 }
 
 void loop() {
   abstand = digitalRead(abstandssensor);
    Serial.println(abstand); 
   if (abstand == LOW) {
     halt();
   }
   else {
     geradeaus(geschwindigkeit);
     delay(5000);
   }  
}

 

Erstellt: Andreas Hecker (21.02.2014) Letzte Änderung: David Gu (12.12.2014)