วันพุธที่ 14 กุมภาพันธ์ พ.ศ. 2561

projects


Relay Control Tutorial

#define relay A0
#define interval 1000
void setup() {
  pinMode(relay, OUTPUT);
}
void loop()
{
   digitalWrite(relay, HIGH);
   delay(interval);
   digitalWrite(relay, LOW);
   delay(interval);
}


วันจันทร์ที่ 12 กุมภาพันธ์ พ.ศ. 2561

การปฏิบัติงานครั้งที่ 6

2 SW 2 LED 1 MOTOR

int a = 0;
int b = 1;
void setup() {
 pinMode (13,OUTPUT);  // กำหนดให้ขาที่ต้องการใช้งานทำงานเป็นเอาต์พุต
 pinMode (12,OUTPUT);
 pinMode (11,OUTPUT);
 pinMode (1,INPUT);  // กำหนดให้ขาที่ต้องการใช้งานทำงานเป็นอินพุต
 pinMode (0,INPUT);
}
void loop() {
  a = digitalRead (0); อ่านข้อมูลที่ขา 0 มาเก็บไว้ในตัวแปร a
  b = digitalRead (1); อ่านข้อมูลที่ขา 1 มาเก็บไว้ในตัวแปร b

  if (a == HIGH){     // ถ้า a มีค่าเป็น HIGH ให้ไปทำในวงเล็บปีกกา
    digitalWrite (13,HIGH); // กำหนดให้ 13 ที่ต้องการใช้งานมีสถานะลอจิกเป็น 1
    delay (500); // หน่วงเวลา 0.5 วินาที
   }
   else if (b == HIGH){
    digitalWrite (12,HIGH); // กำหนดให้ 12 ที่ต้องการใช้งานมีสถานะลอจิกเป็น 1
    digitalWrite (11,HIGH); // กำหนดให้ 11 ที่ต้องการใช้งานมีสถานะลอจิกเป็น 1
    delay (500); หน่วงเวลา 0.5 วินาที
   }
   else {
     digitalWrite (13,LOW); // กำหนดให้ 13 ที่ต้องการใช้งานมีสถานะลอจิกเป็น 0
     digitalWrite (12,LOW);
     digitalWrite (11,LOW);
    }
}


วันจันทร์ที่ 5 กุมภาพันธ์ พ.ศ. 2561

การปฏิบัติงานครั้งที่ 5


3 SW 3 LED

 int a = 4 ;
 int b = 2 ;
 int c = 0 ;
void setup () {
     pinMode (13 , OUTPUT) ;    // กำหนดให้ขาที่ต้องการใช้งานทำงานเป็นเอาต์พุต
     pinMode (11 , OUTPUT) ;
     pinMode (9 , OUTPUT) ;
     pinMode (4 , INPUT) ;     // กำหนดให้ขาที่ต้องการใช้งานทำงานเป็นอินพุต
     pinMode (2 , INPUT) ;
     pinMode (0 , INPUT) ;
}
void loop () {
      a = digitalRead (4) ; // อ่านข้อมูลที่ขา 4 มาเก็บไว้ในตัวแปร
      b = digitalRead (2) ; // อ่านข้อมูลที่ขา 2 มาเก็บไว้ในตัวแปร b
      c = digitalRead (0) ; // อ่านข้อมูลที่ขา 0 มาเก็บไว้ในตัวแปร c
if (a == HIGH) {       // ถ้า a มีค่าเป็น HIGH ให้ไปทำในวงเล็บปีกกา
      digitalWrite (13 , HIGH) ;     // กำหนดให้ 13 ที่ต้องการใช้งานมีสถานะลอจิกเป็น 1
 delay (500) ; // หน่วงเวลา 0.5 วินาที
}
else if (b == HIGH)
{
      digitalWrite (11 , HIGH) ;
 delay (500) ;
 }
 else if (c == HIGH)
{
      digitalWrite (9 , HIGH) ; 
delay (500) ;
 }
else
{
       digitalWrite (13 , LOW) ; // กำหนดให้ 13 ที่ต้องการใช้งานมีสถานะลอจิกเป็น 0
delay (500) ;
       digitalWrite (11 , LOW) ;
 delay (500) ;
       digitalWrite (9 , LOW) ;
 delay (500) ;
 }
 }

วันจันทร์ที่ 29 มกราคม พ.ศ. 2561

การปฏิบัติงานครั้งที่ 4


วงจรไฟวิ่งควบคุมโดยสวิตช์


int a;
void setup () {
pinMode (13, OUTPUT);    // กำหนดให้ขา 13 เป็นเอาต์พุต
pinMode (12, OUTPUT);
pinMode (11, OUTPUT);
pinMode (2, INPUT);  //  กำหนดให้ขา 2 เป็นอินพุต
 }
void loop () {
a = digitalRead (2);  // อ่านข้อมูลจากขา 2 มาเก็บไว้ในตัวแปร a
 if (a == HIGH)  // ถ้า a เท่ากับ 1 ให้ไปทำในวงเล็บปีกกา
 {
digitalWrite (13, HIGH);  // เขียนข้อมูลให้ขา 13 เป็น 1 
 delay (500);  // หน่วงเวลา 0.5 วินาที
digitalWrite (13, LOW);  // เขียนข้อมูลให้ขา 13 เป็น 0
digitalWrite (12, HIGH);
delay (500);
digitalWrite (12, LOW);
digitalWrite (11, HIGH);
delay (500);
digitalWrite (11, LOW);
digitalWrite (12, HIGH);
delay (500);
digitalWrite (12, LOW);
digitalWrite (13, HIGH);
delay (500);
digitalWrite (13, LOW);
 }
 else
{
digitalWrite (13, LOW); // เขียนให้ขาที่กำหนดเป็น 0 
digitalWrite (12, LOW);
digitalWrite (11, LOW);
}
}


วันศุกร์ที่ 19 มกราคม พ.ศ. 2561

การปฏิบัติงานครั้งที่ 3


กดติด ปล่อยดับ

        int buttonPin = 5;    // กำหนดขาที่ต้องการใช้งานคือ buttonPin = 5
        int ledPin =11;        // กำหนดขาที่ต้องการใช้งานคือ ledPin = 11
        int buttonState =0;  // กำหนดขาที่ต้องการใช้งานคือ buttonState = 0
 ตัวแปรสถานะของปุ่มตั้งค่าเริ่มต้นให้เป็น 0 ไว้ก่อน


 void setup() {
        pinMode(ledPin,OUTPUT);       // กำหนดให้ ledPin เป็น เอาต์พุ
        pinMode(buttonPin,INPUT);  // กำหนดให้ buttonPin เป็นอินพุต
   }


 void loop() {
        buttonState=digitalRead(buttonPin); // อ่านค่าสัญญาณดิจิตอล

        if(buttonState==HIGH) // ถ้าค่าที่อยู่ใน buttonState เท่ากับ 1

       {
       digitalWrite(ledPin,HIGH); // กำหนดให้ ledPin ที่ต้องการใช้งานมีสถานะลิจิกเป็น 1
ถ้ากดปุ่มไฟจะติด
       }
       else{
       digitalWrite(ledPin,LOW); // กำหนดให้ ledPin ที่ต้องการใช้งานมีสถานะลิจิกเป็น 0
ถ้าไม่กดปุ่มไฟจะดับ

       }
       }

อธิบายวงจร
               วงจร Arduino กดติดปล่อยดับ เป็นวงจรที่ควบคุมการเปิดปิดของ LED ด้วยสวิตช์ เมื่อกดสวิตช์ LED ก็จะติด ถ้าไม่กดสวิตช์ LED ก็จะดับ




วันศุกร์ที่ 12 มกราคม พ.ศ. 2561

การปฏิบัติงานครั้งที่ 2


วงจรไฟวิ่งแบบเรียงไปกลับ


void setup() {

pinMode(13, OUTPUT); // กำหนดให้ขา 13 ที่ต้องการใช้งานทำงานเป็น เอาต์พุต

pinMode(12, OUTPUT); // กำหนดให้ขา 12 ที่ต้องการใช้งานทำงานเป็น เอาต์พุต

pinMode(11, OUTPUT); // กำหนดให้ขา 11 ที่ต้องการใช้งานทำงานเป็น เอาต์พุต

 }

 void loop() {

digitalWrite(13, HIGH); // กำหนดให้ 13 ที่ต้องการใช้งานมีสถานะลอจิกเป็น 1

delay(500); // หน่วงเวลา 0.5 วินาที

digitalWrite(13, LOW); // กำหนดให้ 13 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 0


digitalWrite(12, HIGH); // กำหนดให้ 12 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 1

delay(500); // หน่วงเวลา 0.5 วินาที

digitalWrite(12, LOW); // กำหนดให้ 12 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 0


digitalWrite(11, HIGH); // กำหนดให้ 11 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 1

delay(500); // หน่วงเวลา 0.5 วินาที

digitalWrite(11, LOW); // กำหนดให้ 11 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 0


digitalWrite(12, HIGH); // กำหนดให้ 12 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 1

delay(500); // หน่วงเวลา 0.5 วินาที

digitalWrite(12, LOW); // กำหนดให้ 12 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 0


digitalWrite(13, HIGH); // กำหนดให้ 13 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 1

delay(500); // หน่วงเวลา 0.5 วินาที

digitalWrite(13, LOW); // กำหนดให้ 13 ที่ต้องการใช้งาน มีสถานะลอจิกเป็น 0


}

อธิบายวงจรไฟวิ่งแบบเรียงไปกลับ
         
          วงจร Arduino ไฟวิ่งแบบเรียงไปกลับ เป็นวงจรที่มีไฟวิ่งจาก 13 ไป 11 และทำการย้อนกลับจาก 11 ไป 13 ใหม่ วนไปเรื่อยๆ