ข้ามไปที่เนื้อหาหลัก

ใช้ Arduino ควบคุม2button2led1servo "Nutkung Nutkung"


#include <Servo.h>

int buttonPin = 2;                                  // กำหนดให้สวิทซ์อยู่ที่ขา 2
int buttonPin1 = 4;                               // กำหนดให้สวิทซ์อยู่ที่ขา 4
const int servoPin = 9;                        // กำหนดให้ SERVO อยู่ที่ขา9
int ledPin =  13;                                 // กำหนดให้หลอดไฟอยู่ที่ขา 13
int ledPin1 =  11;                               // กำหนดให้หลอดไฟอยู่ที่ขา 11
boolean buttonState = 0;                   // สถานะของสวิทซ์ตัวที่ 1 เท่ากับ 0
boolean buttonState1 = 0;                 // สถานะของสวทซ์ตัวที่ 2 เท่ากับ 0
int directionState = 0;                       // กำหนดให้สถานะของตำแหน่งเท่ากับ 0                   
Servo servoOne;                               // กำหนดให้เป็น SERVO ตัวที่ 1
int pos = 0;                                       // กำหนดองศาให้เท่ากับ 0

void setup() {
      servoOne.attach(9);                                      // กำหนดให้ SERVO รับสัญาณจากขา 9             
  servoOne.write(directionState);                      // กำหนดอ่านค่าสถานะของตำแหน่ง
      pinMode(ledPin, OUTPUT);                      // กำให้หลอดไฟเป็น เอาต์พุท
      pinMode(buttonPin, INPUT);                    // กำหนดให้สวิทซ์เป็น อินพุท 
      pinMode(ledPin1, OUTPUT);                   // กำหนดให้หลอดไฟเป็น เอาต์พุท
      pinMode(buttonPin1, INPUT);                  // กำหนดให้ สวิทซ์เป็นอินพุท
   
}
void loop() {
      buttonState = digitalRead(buttonPin);         // ให้สถานะของสวิทซ์ไปอ่านค่าสวิซ์ตัวที่ 1

      if (buttonState == LOW) {                          //  กำหนดสถานะของสวิทซ์=LOW
         digitalWrite(ledPin,HIGH);                     //  เขียนค่าหลอดไฟเป็น HIGH
      directionState = 0;                                      // สถานะของตำแหน่งเท่ากับ 0    
      for (pos = 0; pos < 180; pos = pos + 1) {  // เมื่อกดปุ่มจะทำให้ servo หมุนไป180 องศา
        servoOne.write(pos);
     delay(5);
      }
       
      } else {
         digitalWrite(ledPin, LOW);                   // เมื่อปล่อยมืออกจากปุ่มกดไฟก็จะดับ
       
      }
       buttonState1 = digitalRead(buttonPin1);            // ให้สถานะของสวิทซ์ไปอ่านค่าสวิซ์ตัวที่ 2
     
      if (buttonState1 == LOW) {                              //  กำหนดสถานะของสวิทซ์=LOW
         digitalWrite(ledPin1, HIGH);                         //  เขียนค่าหลอดไฟเป็น HIGH
      directionState = 0;                                             // สถานะของตำแหน่งเท่ากับ 0
      for (pos = 180; pos > 1; pos = pos - 1) {           // เมื่อกดปุ่มจะทำให้ servo หมุนไป 0 องศา
        servoOne.write(pos);
        delay(5);
      }
       
      } else {
         digitalWrite(ledPin1, LOW);                       // เมื่อปล่อยมืออกจากปุ่มกดไฟก็จะดับ
      }
}

                                                       การต่อวงจรและการอะิบาย

1 . สวิทช์ตัวที่ 1 ต่อกับขา 2 ต่อ ตัวต้านทาน ต่อกับไฟบวก ( +5V ) ขาอีกข้างต่อ( GND )
2.  ต่อ Led 1 เข้ากับขา 13 ( ขาสั้น )  ส่วนอีกข้างต่อกับไฟบวก ( +5V ) 
3. สวิทช์ตัวที่ 2 ต่อกับขา 4 ต่อ ตัวต้านทาน ต่อกับไฟบวก ( +5V ) ขาอีกข้างต่อกาว ( GND )
4.ต่อLed 1 เข้ากับขา 13 ( ขาสั้น )  ส่วนอีกข้างต่อกับไฟบวก ( +5V )
5.ต่อ SERVO โดยนำสายสีแดงต่อไฟบวก(+5V)และสายสีน้ำตาลต่อกาว(GND)ส่วนสายสีส้มที่เป็นสายสัญาณให้ต่อกับขาdigition (9)

ความคิดเห็น

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

คู่มือการใช้ tinkercad เบื้องต้น

คู่มือการใช้งานเบื้องต้น 1.tinkercad               t inkercad คือ  โปรแกรมออกแบบที่ทำงานบน Web Browser  ที่ช่วยในการออกแบบวงจรและยังสามารถจำลองการทำงานของวงจรได้อีกด้วย อีกทั้งยังช่วยในการออกแบบงานจำพวก3dได้อีกด้วยทั้งนี้ทั้งนั้นเราของยกมาแค่การออกแบบวงจรก่อนนะครับ ขั้นตอนการใช้โปรแกรมเบื้องต้น 1.เปิดโปรแกรม หน้าตาโปรแกรมก็จะประมาณนี้คับ 2.เมื่อเปิดโปรแกรมเสร็จแล้วให้ไปที่ Circuits  > try Circuits 3.จากนี้เราก็สามารถเขียนวงจรได้แล้ว 4.ถ้าเราต้องการที่จะเปลี่ยนสีสายของสายที่ใช้ต่อหรือพวกledให้ทำการคลิกทีอุปการณ์และเลือกได้เลย วิธีการนี้ใช้ได้กับการเปลี่ยนค่าตัวต้านทานด้วยเช่นกัน   5.ถ้าเราต้องการที่จะจำลองการทำงานให้เราไปที่ code จากนั้นก็ทำการเขียนได้เลยแต่ในtinkercadมันสามารถเขียนcodeได้หลายแบบมีดังนี้    6.เรามาจำลองการทำงานดูกันเลยดีกว่า ให้เราไปเขียนcodeให้เสร็จก่อนจากนั้นให้ไปกดที่ start simulation จากนั้นมันก็จะทำงานตามที่เราเขียนcode ใว้   7.โปรแกรม...

การสร้างเฟืองสำหรับ Robot arm

จัดทำโดย นายณฐกร      โชติบุตร      แผนกเมคคาทรอนิกส์  วิทยาลัยเทคนิคสมุทรสาคร ทำการโหลดโปรเเกรม   openscad เเล้วทำการติดตั้งโปรเเกรมให้เรียบร้อย ทำการเปิดลิ้ง https://www.thingiverse.com/thing:16627 ทำการ Download ให้เรียบร้อย เเล้วเเตกไฟล์ เปิดโปรเเกรม   openscad  กด Open เเล้วเลือกไฟล์ที่ได้ทำการ Download เเล้วเลือก files  เเล้วเปิด  Pulley_T-MXL-XL-HTD-GT2_N-tooth เเล้วจะได้หน้าต่างเเบบนี้มา เราสามารถเเก้ไขขนาดของเฟืองได้ เเล้วก็เปลี่ยนขนาดตามที่เราต้องการ เเล้วก็ยีงสามารถเปลี่ยนรุ่นตามที่เราต้องการ เปลี่ยนค่าเลขตามที่เราจะสร้าง 1=MXL                   6=T5                         11=HTD_8mm  2=40DP                  7=T10                        12=GT2_2mm 3=XL          ...

การใช้งานโปรแกรม Fritzing แบบพื้นฐานขอพื้นฐาน Nisakorn

คู่มือการใช้งานโปรแกรมเบื้องต้น 2. Fritzing   โปรแกรม Fritzing เป็นโปรแกรมที่ช่วยในการออกแบบวงจรสำหรับบอร์ดต่างๆ เช่น Arduino รุ่นต่างๆช่วยให้วางในตำแหน่งที่เหมาะสม ที่สำคัญยังเป็นโปรแกรมฟรีช่วยในการออกแบบวงจรลงบน BreadBoard วาดวงจร Schemetic และการออกแบบแผ่นปริ้น (PCB) ขั้นตอนการใช้งาน Fritzing เบื้องต้น 1.เปิดโปรแกรม หน้าตาโปรแกรมก็จะประมาณนี้คับ 2. คลิ๊กเปิดหน้าใหม่ File > New 3. เมื่อเปิดเสร็จก็จะมีหน้าตาประมาณนี้ ซึ่งเมื่อเข้ามาจะมีอุปกรณ์มากมาย ดังนี้                4. เราสามารถเอาอุปกรณ์ลากมาได้ดังรูป เพื่อที่จะสามารถดูว่าสยไหนเป็นสายไหนเราสามารถเปลี่ยนสีของสายได้ดังนี้ กดที่ Wre Color -  เลือกสีที่ต้องการดังรูป ผมใช้สีแดง 5. โปรแกรมนี้สามารถวงจรไฟฟ้าที่เราเขียนได้กดที่ Schematic 6.วิธีการ Save ไปคลิ๊กที่  File > Save As ซึ่งนามสกุลของมันคือ fzz เราสามารถ save ไฟล์แบบรูปภาพไดหากต้องการไปใช้ ไปที่   file  - expost - as Image  - เลือ...