Monday, November 16, 2015

Line Tracking Sensor #1

Tarikh: 13 november 2015
Tempat: Unit Peperiksaan
Masa: 11am

projek kedua kami adalah untuk test IR Line Tracking Sensor. jarak kepekaan adalah 1.5cm, sekiranya terdapat line putih, LED akan menyala. spesifikasi sensor ini adalah seperti berikut:


Line tracking sensor ini mempunyai 3 pin, iaitu Vcc, GND dan OUT. Vcc dan GND merupakan power of the sensor to operate dan OUT merupakan digital output signal daripada sensor ini.

dalam projek ini, kami menggunakan 2 IR line tracking sensor sebagai input (pin A3 dan pin A4) dan 2 LED sebagai output (pin 12 dan pin 13). kami gantikan Left Motor dan Right Motor dengan LED 1 dan LED 2.

Terdapat 4 kemungkinan yang akan berlaku iaitu

1) Apabila LeftInput = HIGH, dan RightInput = HIGH, LeftMotor = HIGH dan RightMotor = HIGH.
[kedua-dua sensor mengesan line putih, LED akan menyala, sekiranya kita sampungkan output dengan motor, motor akan ON dan berjalan lurus]

2) Apabila LeftInput = LOW, dan RightInput = HIGH, LeftMotor = LOW dan RightMotor = HIGH
[ LeftInput tidak mengesan line putih dan RightInput mengesan line putih, LeftLED tidak akan menyala dan RightLED akan menyala, sekiranya kita sampungkan output dengan motor, motor di sebelah kiri akan berhenti dan motor disebelah kanan sahaja akan berfungsi. robot akan membelok ke sebelah kiri]

3) Apabila LeftInput = HIGH, dan RightInput = LOW, LeftMotor = HIGH dan RightMotor = LOW
[LeftInput mengesan line putih dan RightInput tidak mengesan line putih, LeftLED akan menyala dan RightLED tidak akan menyala, sekiranya kita sampungkan output dengan motor, motor di sebelah kiri akan berfungsi dan motor disebelah kanan akan berhenti. robot akan membelok ke sebelah kanan]

4) Apabila LeftInput = LOW, dan RightInput = LOW, LeftMotor = LOW dan RightMotor = LOW.
[kedua-dua sensor tidak mengesan line putih, LED tidak akan menyala, sekiranya kita sampungkan output dengan motor, motor akan OFF dan tidak bergerak]

Litar pendawaian adalah seperti berikut:


kod aturcaranya adalah:


int leftInput=A3;
int rightInput=A4;
int leftMotor=13;
int rightMotor=12;
int leftValue = 0;
int rightValue = 0;

void setup()
{
pinMode (leftMotor, OUTPUT);
pinMode (rightMotor, OUTPUT);
}
void loop()
{
leftValue = analogRead (leftInput);
rightValue= analogRead (rightInput);

if
( leftValue< 945 &&rightValue< 945)
 {
digitalWrite (leftMotor, HIGH);
digitalWrite (rightMotor, HIGH);
 }
else
 {

if
( leftValue> 945 &&rightValue< 945)
 {
digitalWrite (leftMotor, LOW);
digitalWrite (rightMotor, HIGH);
 }
else {
if (leftValue< 945 &&rightValue> 945)
 {
digitalWrite (rightMotor, LOW);
digitalWrite (leftMotor, HIGH);
 }
else
 {
if (leftValue> 945 &&rightValue> 945)
 {digitalWrite (rightMotor, LOW);
digitalWrite (leftMotor, LOW);
 }}
 }
 }}

Hasilnya adalah:




Selamat mencuba..

next projek adalah untuk membuat penyambungan kepada window motor.. tunggu ya..

No comments:

Post a Comment