ใบงานที่ 2 Detecting Obstacles and Warning

จัดทำโดย

นายธีรศักดิ์ จันทราษี         เลขที่  21   กลุ่ม E5

นายดิรก พรามจร              เลขที่ 20  กลุ่ม E5
วัสดุอุปกรณ์

1.บอร์ดทดลอง Arduino UNO R3     1   บอร์ด
2.สาย USB                                   1   เส้น
3.สายไฟ                                       13   เส้น
4.โฟโต้บอร์ด                                  1 แผง
5.ตัวต้านทาน 220โอหม์                    6   ตัว
6.หลอด LED                                 6  หลอด
7.Ultrasonic sensor                     1 บอร์ด
8.buzzer                                    1 ตัว


รูปวงจร









Code

int const trigPin = 11;
int const  echoPin = 10;
int const  buzzPin = 9;
int const  ledPinA = 3;
int const  ledPinB = 4;
int const  ledPinC = 5;
int const  ledPinD = 6;
int const  ledPinE = 7;
int const  ledPinF = 8;
 void setup()
{  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(buzzPin, OUTPUT);
  pinMode(ledPinA, OUTPUT);
  pinMode(ledPinB, OUTPUT);
  pinMode(ledPinC, OUTPUT);
  pinMode(ledPinD, OUTPUT);
  pinMode(ledPinE, OUTPUT);
  pinMode(ledPinF, OUTPUT);
} void loop()
{
  digitalWrite(trigPin, HIGH);
  delay(1);
  digitalWrite(trigPin, LOW);
  // Measure the pulse input in echo pin  duration = pulseIn(echoPin, HIGH);


       digitalWrite(buzzPin, HIGH);
      digitalWrite(ledPinA, HIGH);
      digitalWrite(ledPinB, HIGH);
      delay(500);
      digitalWrite(buzzPin, LOW);
      digitalWrite(ledPinA, LOW);
      digitalWrite(ledPinB, LOW);
      delay(500);
    } else {
      // Don't buzz      digitalWrite(buzzPin, LOW);
      digitalWrite(ledPinA, LOW);
      digitalWrite(ledPinB, LOW);
    } if (distance <= 29 && distance >= 15) {
      // Buzz      digitalWrite(buzzPin, HIGH);
      digitalWrite(ledPinC, HIGH);
      digitalWrite(ledPinD, HIGH);
      delay(200);
      digitalWrite(buzzPin, LOW);
      digitalWrite(ledPinC, LOW);
      digitalWrite(ledPinD, LOW);
      delay(200);
    } else {
      // Don't buzz      digitalWrite(buzzPin, LOW);
      digitalWrite(ledPinC, LOW);
      digitalWrite(ledPinD, LOW);
    }      if (distance <= 14 && distance >= 0) {
      // Buzz      digitalWrite(buzzPin, HIGH);
      digitalWrite(ledPinE, HIGH);
      digitalWrite(ledPinF, HIGH);
     } else {
      // Don't buzz      digitalWrite(buzzPin, LOW);
      digitalWrite(ledPinE, LOW);
      digitalWrite(ledPinF, LOW);
    }    // Waiting 60 ms won't hurt any one
    delay(60);
 } 

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้