2009年6月9日火曜日

ライントレーサのスケッチ

モータは、3、5
についているものとします。
センサの状況をパソコンに送る命令も残っています。
きちんと動作しない時は、値を確かめてif文の条件式を変更します。

 

int RmotorPin = 3; // Right FET connected to analog pin 3
int LmotorPin = 5; // Left FET connected to analog pin 5
int Rpower = 100;
int Lpower = 100;

int photPin = 0;
int ledPin =13;
int val = 0;

void setup() // run once, when the sketch starts
{
pinMode(ledPin, OUTPUT);
pinMode(RmotorPin, OUTPUT); // sets the analog pin as output
pinMode(LmotorPin, OUTPUT);
Serial.begin(9600);
}

void loop() // run over and over again
{
digitalWrite(ledPin, HIGH);
delay(5);
val = analogRead(photPin);
Serial.print(val);
Serial.print("\n");
digitalWrite(ledPin, LOW);
if(val > 80)
right(50);
else
left(50);
}

void right(int t){
analogWrite(RmotorPin, 0); // sets the LeftMotor on
analogWrite(LmotorPin, Lpower);
delay(t);
}

void left(int t){
analogWrite(RmotorPin, Rpower); // sets the RightMotor on
analogWrite(LmotorPin, 0);
delay(t);
}




白っぽい床などに、黒いビニルテープを貼って、コースを作って走らせてみましょう。
以外に簡単に走行しますね。

0 件のコメント:

コメントを投稿