คำอธิบาย
ชุดทดลองควบคุมไฟจราจร ซีเควน Traffic Light Control/Sequencer เพื่อเรียนรู้การเขียนโปรแกรมควบคุมไฟจราจร / ซีเควนซ์ ด้วย Arduino อย่างง่าย
ในชุดประกอบด้วย
- 4pcs x ไฟจราจร 3 สี แดง เขียว เหลือง
- 4pcs x จุดเชื่อมต่อสายไฟ Bread Board
- 1pcs x จุดเชื่อมต่อสายไฟแบบสกรูเทอร์มินอล Screw Terminal
- 2pcs x Aluminum Profile 2040T-18cm
- 1pcs x ติดตั้งบนแผ่นฐานรูป 4 แยก 18×25 cm
- 1pcs x BDMC03 บอร์ด Arduino UNO R3 Compatible
- 1pcs x สาย USB Download 3cm
- 1pcs x สายต่อวงจร Jumper Wire
ตัวอย่างโปรแกรมการควบคุมไฟจราจร Arduino Traffic Lights 4 เลน
- เรียนรู้การ กำหนดเลน 1, 2, 3, 4 การตั้งเวลาไฟแดง ไฟเขียว
- ตั้งเวลากระพริบไฟเหลือง
Arduino Code Traffic_Lights_4lan_v3
// กำหนดไฟเลน 1 แดง เหลือง เขียว
int R1 = 1; int Y1 = 2; int G1 = 3;
// กำหนดไฟเลน 2 แดง เหลือง เขียว
int R2 = 4; int Y2 = 5; int G2 = 6;
// กำหนดไฟเลน 3 แดง เหลือง เขียว
int R3 = 7; int Y3 = 8; int G3 = 9;
// กำหนดไฟเลน 4 แดง เหลือง เขียว
int R4 = 10; int Y4 = 11; int G4 = 12;
int i =0;
void setup(){
pinMode(R1, OUTPUT); pinMode(Y1, OUTPUT); pinMode(G1, OUTPUT);
pinMode(R2, OUTPUT); pinMode(Y2, OUTPUT); pinMode(G2, OUTPUT);
pinMode(R3, OUTPUT); pinMode(Y3, OUTPUT); pinMode(G3, OUTPUT);
pinMode(R4, OUTPUT); pinMode(Y4, OUTPUT); pinMode(G4, OUTPUT);
}
void loop(){
//******************* ไฟเขียวเลน 1 **********************
for (i=0; i<=10;i++) {
digitalWrite(R1, LOW); digitalWrite(Y1, LOW); digitalWrite(G1, HIGH);
digitalWrite(R2, HIGH); digitalWrite(Y2, LOW); digitalWrite(G2, LOW);
digitalWrite(R3, HIGH); digitalWrite(Y3, LOW); digitalWrite(G3, LOW);
digitalWrite(R4, HIGH); digitalWrite(Y4, LOW); digitalWrite(G4, LOW);
delay(1000);
}
//***************** ไฟเหลืองเลน 1 กะพริบ 3 วินาที ************************
for (i=0; i<=3;i++){
digitalWrite(R1, LOW); digitalWrite(Y1, HIGH); delay(500); digitalWrite(Y1, LOW); delay(500); digitalWrite(G1, LOW);
digitalWrite(R2, HIGH); digitalWrite(Y2, LOW); digitalWrite(G2, LOW);
digitalWrite(R3, HIGH); digitalWrite(Y3, LOW); digitalWrite(G3, LOW);
digitalWrite(R4, HIGH); digitalWrite(Y4, LOW); digitalWrite(G4, LOW);
}
//****************** ไฟเขียวเลน 2 ***********************
for (i=0; i<=10;i++) {
digitalWrite(R1, HIGH); digitalWrite(Y1, LOW); digitalWrite(G1, LOW);
digitalWrite(R2, LOW); digitalWrite(Y2, LOW); digitalWrite(G2, HIGH);
digitalWrite(R3, HIGH); digitalWrite(Y3, LOW); digitalWrite(G3, LOW);
digitalWrite(R4, HIGH); digitalWrite(Y4, LOW); digitalWrite(G4, LOW);
delay(1000);
}
//***************** ไฟเหลืองเลน 2 กะพริบ 3 วินาที ************************
for (i=0; i<=3;i++) {
digitalWrite(R1, HIGH); digitalWrite(Y1, LOW); digitalWrite(G1, LOW);
digitalWrite(R2, LOW); digitalWrite(Y2, HIGH); delay(500); digitalWrite(Y2, LOW); delay(500); digitalWrite(G2, LOW);
digitalWrite(R3, HIGH); digitalWrite(Y3, LOW); digitalWrite(G3, LOW);
digitalWrite(R4, HIGH); digitalWrite(Y4, LOW); digitalWrite(G4, LOW);
}
//******************** ไฟเขียวเลน 3 ********************
for (i=0; i<=10;i++) {
digitalWrite(R1, HIGH); digitalWrite(Y1, LOW); digitalWrite(G1, LOW);
digitalWrite(R2, HIGH); digitalWrite(Y2, LOW); digitalWrite(G2, LOW);
digitalWrite(R3, LOW); digitalWrite(Y3, LOW); digitalWrite(G3, HIGH);
digitalWrite(R4, HIGH); digitalWrite(Y4, LOW); digitalWrite(G4, LOW);
delay(1000);
}
//***************** ไฟเหลืองเลน 3 กะพริบ 3 วินาที ************************
for (i=0; i<=3;i++) {
digitalWrite(R1, HIGH); digitalWrite(Y1, LOW); digitalWrite(G1, LOW);
digitalWrite(R2, HIGH); digitalWrite(Y2, LOW); digitalWrite(G2, LOW);
digitalWrite(R3, LOW); digitalWrite(Y3, HIGH); delay(500); digitalWrite(Y3, LOW); delay(500); digitalWrite(G3, LOW);
digitalWrite(R4, HIGH); digitalWrite(Y4, LOW); digitalWrite(G4, LOW);
}
//******************** ไฟเขียวเลน 4 ********************
for (i=0; i<=10;i++) {
digitalWrite(R1, HIGH); digitalWrite(Y1, LOW); digitalWrite(G1, LOW);
digitalWrite(R2, HIGH); digitalWrite(Y2, LOW); digitalWrite(G2, LOW);
digitalWrite(R3, HIGH); digitalWrite(Y3, LOW); digitalWrite(G3, LOW);
digitalWrite(R4, LOW); digitalWrite(Y4, LOW); digitalWrite(G4, HIGH);
delay(1000);
}
//***************** ไฟเหลืองเลน 4 กะพริบ 3 วินาที ************************
for (i=0; i<=3;i++) {
digitalWrite(R1, HIGH); digitalWrite(Y1, LOW); digitalWrite(G1, LOW);
digitalWrite(R2, HIGH); digitalWrite(Y2, LOW); digitalWrite(G2, LOW);
digitalWrite(R3, HIGH); digitalWrite(Y3, LOW); digitalWrite(G3, LOW);
digitalWrite(R4, LOW); digitalWrite(Y4, HIGH); delay(500); digitalWrite(Y4, LOW); delay(500); digitalWrite(G4, LOW);
}
}
ผังการต่อสาย






รีวิว
ยังไม่มีบทวิจารณ์