วันพฤหัสบดีที่ 15 มิถุนายน พ.ศ. 2560

ใบงานที่ 2 เรื่อง Detecting Obstacles and Warning

จัดทำโดย

นายนนทกร   คำลาย         เลขที่  8   กลุ่ม 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()
{

  int duration, distance;
  digitalWrite(trigPin, HIGH);
  delay(1);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  // Distance is half the duration devided by 29.1 (from datasheet)
  distance = (duration/2) / 29.1;
  // if distance less than 0.5 meter and more than 0 (0 or less means over range)
    if (distance <= 50 && distance >= 30) {
      // Buzz
      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);

}

วันศุกร์ที่ 9 มิถุนายน พ.ศ. 2560

ใบงานที่ 1 เรื่อง ควบคุมมอเตอร์ด้วยรีเลย์

จัดทำโดย

นายนนทกร   คำลาย         เลขที่  8   กลุ่ม E5

วัสดุอุปกรณ์

1.บอร์ดทดลอง Arduino UNO R3     1   บอร์ด
2.สาย USB                                   1   เส้น
3.สายไฟ                                       16   เส้น
4.มอเตอร์                                      1 ตัว
5.ไมโครสวิตซ์เปิดปิดปล่อยดับ           2   ตัว
6.โฟโต้บอร์ด                                  1 แผง
7.บอร์ดRELAY 2 channel                1 บอร์ด
8.ตัวต้านทาน 220โอหม์                    2   ตัว

รูปวงจร







Code

const int buttonPin1 = 2;
const int buttonPin2 = 3;
const int ledPinA =  8;
const int ledPinB =  9;


int buttonState1 = 0;
int buttonState2 = 0;

void setup() {

  pinMode(ledPinA, OUTPUT);
  pinMode(ledPinB, OUTPUT);

  pinMode(buttonPin1, INPUT);
  pinMode(buttonPin2, INPUT);
}

void loop() {

  buttonState1 = digitalRead(buttonPin1);
  buttonState2 = digitalRead(buttonPin2);

  if (buttonState1 == HIGH) {

    digitalWrite(ledPinA, HIGH);
    digitalWrite(ledPinB, LOW);
  }
    else
    if (buttonState2 == HIGH) {

    digitalWrite(ledPinA, LOW);
    digitalWrite(ledPinB, HIGH);
  } else {
    digitalWrite(ledPinA, LOW);
    digitalWrite(ledPinB, LOW);
  }

}

ใบงานที่ 3 เรื่อง การใช้ Ultrasonic sensor Module ควบคุมการปิด-เปิดประตู

จัดทำโดย นายนนทกร   คำลาย         เลขที่  8   กลุ่ม E5 วัสดุอุปกรณ์ 1.บอร์ดทดลอง Arduino UNO R3     1   บอร์ด 2.สาย USB      ...