[ [ T T y y p p e e t t h h e e c c o o m m p p a a n n y y n n a a m m e e ] ] SIMULASI
SIMULASI
TR
TRAFFI
AFFI C L
C LIGHT
IGHT
4 JALUR ARDUINO UNO dengan I2C LCD 4 JALUR ARDUINO UNO dengan I2C LCD Mayang Fauni (14640051)Mayang Fauni (14640051)
Traffic light
Traffic light adalah lampu yang digunakan untuk mengatur kelancaran lalu ladalah lampu yang digunakan untuk mengatur kelancaran lalu l intas di intas di suatusuatu persimpang
persimpangan an jalan jalan dengan dengan cara cara membememberi ri kesempkesempatan atan pengguna pengguna jalan jalan dari dari masing-mamasing-masing sing araharah untuk berjalan secara bergantian. Karena fungsinya yang begitu penting maka lampu lalu lintas untuk berjalan secara bergantian. Karena fungsinya yang begitu penting maka lampu lalu lintas harus dapat dikendalikan atau dikontrol semudah dan seefisien mungkin guna memperlancar arus harus dapat dikendalikan atau dikontrol semudah dan seefisien mungkin guna memperlancar arus lalu lintas di
lalu lintas di suatu persimpangsuatu persimpangan jalan.an jalan.
Cara kerja lampu lalu lintas sendiri tergantung pada berapa banyak jalur yang ada. Pada Cara kerja lampu lalu lintas sendiri tergantung pada berapa banyak jalur yang ada. Pada kali ini simulasi yang dibuat adalah simulasi lampu lalu lintas pada 4 jalur, cara kerjanya sendiri kali ini simulasi yang dibuat adalah simulasi lampu lalu lintas pada 4 jalur, cara kerjanya sendiri yaitu ketika lampu hijau pada arah utara dan selatan dan lampu merah pada arah timur dan barat yaitu ketika lampu hijau pada arah utara dan selatan dan lampu merah pada arah timur dan barat selama beberapa detik, lalu lampu hijau berganti dengan warna kuning menunjukan tanda selama beberapa detik, lalu lampu hijau berganti dengan warna kuning menunjukan tanda peralihan
peralihan sedangkasedangkan n untuk untuk lampu lampu merah merah pada pada arah arah timur timur dan dan barat barat masih masih menyalamenyala. . KemudianKemudian setelah beberapa detik lampu kuning berganti menjadi warna merah bertanda pengendara harus setelah beberapa detik lampu kuning berganti menjadi warna merah bertanda pengendara harus berhenti,
berhenti, dan dan pada pada arah arah timur timur dan dan barat barat lampu lampu merah merah berganti berganti menjadi menjadi warna warna kuning kuning setelahsetelah beberapa
beberapa detik detik lampu lampu kuning kuning berganti berganti menjadi menjadi warna warna hijau hijau menandakmenandakan an pengendapengendara ra harusharus berjalan kem
berjalan kembali begitu seterusnybali begitu seterusnya.a.
5 5 6 6
4
4
7 72
2
3
3
8 8 9 9 10 10 13 13 12 12 11 11[ [ T T y y p p e e t t h h e e c c o o m m p p a a n n y y n n a a m m e e ] ] 2 2
Alat dan Bahan yang digunakan adalah: Alat dan Bahan yang digunakan adalah:
1.
1. Arduino UNO dan Software Arduino IDEArduino UNO dan Software Arduino IDE
2.
2. LaptopLaptop
3.
3. ProtoboardProtoboard
4.
4. Lampu LED 12 buahLampu LED 12 buah
5.
5. Resistor 1KΩ 4 buahResistor 1KΩ 4 buah 6.
6. Kabel jumperKabel jumper
7.
7. I2CI2C
8.
8. LCD 20cmx2cmLCD 20cmx2cm
Langkah-langkah membuat
Langkah-langkah membuat
Tr
Tra
affi
ffic
c Li
Li ght
ght
dengan Arduino UNO dengan Arduino UNO 1.1. Mempersiapkan LED dengan ArduinoMempersiapkan LED dengan Arduino
Light Emitting Diode atau sering disingkat dengan LED adalah komponen elektronika Light Emitting Diode atau sering disingkat dengan LED adalah komponen elektronika yang dapat memanca
yang dapat memancarkan rkan cahaya monokcahaya monokromatik ketika diberikan tegangan maromatik ketika diberikan tegangan maju. Untukju. Untuk mengetahui polaritas terminal Anoda (+) dan Katoda (-) pada LED.
mengetahui polaritas terminal Anoda (+) dan Katoda (-) pada LED. Ciri-ciri Terminal AnodaCiri-ciri Terminal Anoda pada LED ada
pada LED adalah lah kaki yang lebih pakaki yang lebih panjang dan juga Lnjang dan juga Lead Framead Frame yang lebih kecil. See yang lebih kecil. Sedangkandangkan ciri-ciri Terminal Katoda adalah Kaki yang lebih pendek dengan Lead Frame yang besar ciri-ciri Terminal Katoda adalah Kaki yang lebih pendek dengan Lead Frame yang besar serta terletak di sisi yang Flat.
serta terletak di sisi yang Flat.
2.
[ [ T T y y p p e e t t h h e e c c o o m m p p a a n n y y n n a a m m e e ] ] 3 3
Pada kasus kali ini dipasang masing-masing LED pada projectboard sehingga Pada kasus kali ini dipasang masing-masing LED pada projectboard sehingga membentuk traffic light 4 jalan, kaki-kaki katoda dihubungkan dengan masing-masing membentuk traffic light 4 jalan, kaki-kaki katoda dihubungkan dengan masing-masing resistor sebesar 1000 Ohm digunakan untuk menghambat tegangan yang masuk. Sedangkan resistor sebesar 1000 Ohm digunakan untuk menghambat tegangan yang masuk. Sedangkan kaki anoda dihubungkan ke PIN Arduino.
kaki anoda dihubungkan ke PIN Arduino. Untuk memudahkaUntuk memudahkan pemasangan bisa dilihat tabeln pemasangan bisa dilihat tabel dibawah ini:
dibawah ini:
3.
3. Menghubungkan Arduino dengan I2C LCDMenghubungkan Arduino dengan I2C LCD
PIN
PIN Arduino Arduino LEDLED PIN
PIN 2 2 Merah Merah 11 PIN
PIN 3 3 Yellow Yellow 11 PIN
PIN 4 4 Green Green 11 PIN
PIN 5 5 Merah Merah 22 PIN
PIN 6 6 Yellow Yellow 22 PIN
PIN 7 7 Green Green 22 PIN
PIN 8 8 Merah Merah 33 PIN
PIN 9 9 Yellow Yellow 33 PIN
PIN 10 10 Green Green 33 PIN
PIN 11 11 Merah Merah 44 PIN
PIN 12 12 Yellow Yellow 44 PIN
PIN 13 13 Green Green 44 GND
[ [ T T y y p p e e t t h h e e c c o o m m p p a a n n y y n n a a m m e e ] ] 4 4
Setelah kita merangkai rangkaian traffic light 4 jalan yang dihubungkan dengan Arduino Setelah kita merangkai rangkaian traffic light 4 jalan yang dihubungkan dengan Arduino seperti gambar diatas. Langkah selanjutnya yaitu menghubungkan Arduino uno dengan I2C seperti gambar diatas. Langkah selanjutnya yaitu menghubungkan Arduino uno dengan I2C LCD.
LCD. Inter Inter Integrated Circuit Integrated Circuit atau sering disebut I atau sering disebut I22C adalah standar komunikasi serial duaC adalah standar komunikasi serial dua arah menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima arah menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima data. Sistem I
data. Sistem I22C terdiri dari saluran SCL (C terdiri dari saluran SCL (Serial Clock Serial Clock ) dan SDA () dan SDA (Serial DataSerial Data) yang) yang membawa informasi data antara I
membawa informasi data antara I22C dengan pengontrolnya. Untuk C dengan pengontrolnya. Untuk menghubungkamenghubungkan Arduinon Arduino dengan I2C bisa dilhat pada port
dengan I2C bisa dilhat pada port I2C yang terhubung pada PIN Arduino.I2C yang terhubung pada PIN Arduino. Vcc
Vcc I2C I2C Pin Pin 5V 5V ArduinoArduino GND
GND Pin Pin GND GND ArduinoArduino SCL
SCL A4 A4 ArduinoArduino SDA
SDA A5 A5 ArduinoArduino 4.
4. Memprogram Arduino dan MenguploadMemprogram Arduino dan Mengupload Langkah
Langkah selanjutnya sselanjutnya setelah etelah sirkuit selessirkuit selesai di buaai di buat. Kemudian mt. Kemudian membuat progembuat programram arduinonya dengan outputan yang diinginkan yaitu Timer dan teks berupa warna LED pada arduinonya dengan outputan yang diinginkan yaitu Timer dan teks berupa warna LED pada setiap keadaan. Code pemrograman I2C dengan Arduino adalah sebagai berikut:
setiap keadaan. Code pemrograman I2C dengan Arduino adalah sebagai berikut: #include <Wire.h>
#include <Wire.h> #include
#include <LiquidCrystal_I<LiquidCrystal_I2C.h>2C.h>
LiquidCrystal_I2C lcd(0x23F, 2, 1, 0, 4, LiquidCrystal_I2C lcd(0x23F, 2, 1, 0, 4,
5, 6, 7, 3,
5, 6, 7, 3, POSITIPOSITIVE);VE); int TimePoint=0; int TimePoint=0; int M1=7; int M1=7; int M2=7; int M2=7; int K=4; int K=4; int H=4; int H=4; void setup() { void setup() { Serial.begin(9600); Serial.begin(9600); lcd.begin(20,4); lcd.begin(20,4); pinMode(2,OUT pinMode(2,OUTPUT);PUT); pinMode(3,OUT pinMode(3,OUTPUT);PUT); pinMode(4,OUT pinMode(4,OUTPUT);PUT); pinMode(5,OUT pinMode(5,OUTPUT);PUT); pinMode(6,OUT pinMode(6,OUTPUT);PUT); pinMode(7,OUT pinMode(7,OUTPUT);PUT); pinMode(8,OUT pinMode(8,OUTPUT);PUT); pinMode(9,OUTP pinMode(9,OUTPUT);UT); pinMode(10,OU pinMode(10,OUTPUT);TPUT); pinMode(11,OU pinMode(11,OUTPUT);TPUT); pinMode(12,OU pinMode(12,OUTPUT);TPUT); pinMode(13,OU pinMode(13,OUTPUT);TPUT); } } void loop() { void loop() { lcd.clear(); lcd.clear(); for(int Ti
for(int Timepoint=1mepoint=1; ; Timepoint<=Timepoint<=12;12; Timepoint++){ Timepoint++){ if(Timepoint<=3){ if(Timepoint<=3){ digitalWrite(2,HIGH); digitalWrite(2,HIGH); digitalWrite(3,LOW); digitalWrite(3,LOW); digitalWrite(4,LOW); digitalWrite(4,LOW); digitalWrite(5,LOW); digitalWrite(5,LOW); digitalWrite(6,LOW); digitalWrite(6,LOW); digitalWrite(7,HIGH); digitalWrite(7,HIGH); digitalWrite(8,HIGH); digitalWrite(8,HIGH); digitalWrite(9,LOW); digitalWrite(9,LOW); digitalWrite(10,LOW); digitalWrite(10,LOW); digitalWrite(11,LOW); digitalWrite(11,LOW); digitalWrite(12,LOW); digitalWrite(12,LOW); digitalWrite(13,HIGH); digitalWrite(13,HIGH); M1--; M1--;
[ [ T T y y p p e e t t h h e e c c o o m m p p a a n n y y n n a a m m e e ] ] 5 5 H--; H--; Serial.print("T Serial.print("Tiang 1 iang 1 ");"); Serial.print("ME Serial.print("MERAH RAH ");"); Serial.println(M1); Serial.println(M1); Serial.print("T Serial.print("Tiang 2 iang 2 ");"); Serial.print("HI Serial.print("HIJAU JAU ");"); Serial.println(H); Serial.println(H); Serial.print("T Serial.print("Tiang 3 iang 3 ");"); Serial.print("ME Serial.print("MERAH RAH ");"); Serial.println(M1); Serial.println(M1); Serial.print("T Serial.print("Tiang 4 iang 4 ");"); Serial.print("HI Serial.print("HIJAU JAU ");"); Serial.println(H); Serial.println(H); K=4; K=4; lcd.setCursor(0,0); lcd.setCursor(0,0); lcd.print("T1& lcd.print("T1&T3: T3: ");"); lcd.setCursor(7,0); lcd.setCursor(7,0); lcd.print("MERAH"); lcd.print("MERAH"); lcd.setCursor(15,0); lcd.setCursor(15,0); lcd.print(M1); lcd.print(M1); lcd.setCursor(0,1); lcd.setCursor(0,1); lcd.print("T2& lcd.print("T2&T4: T4: ");"); lcd.setCursor(7,1); lcd.setCursor(7,1); lcd.print("HIJAU"); lcd.print("HIJAU"); lcd.setCursor(15,1); lcd.setCursor(15,1); lcd.print(H); lcd.print(H); } } else else if((Timepoint>3)&&(Timepoint<=6)) if((Timepoint>3)&&(Timepoint<=6)) { { digitalWrite(2,HIGH); digitalWrite(2,HIGH); digitalWrite(3,LOW); digitalWrite(3,LOW); digitalWrite(4,LOW); digitalWrite(4,LOW); digitalWrite(5,LOW); digitalWrite(5,LOW); digitalWrite(6,HIGH); digitalWrite(6,HIGH); digitalWrite(7,LOW); digitalWrite(7,LOW); digitalWrite(8,HIGH); digitalWrite(8,HIGH); digitalWrite(9,LOW); digitalWrite(9,LOW); digitalWrite(10,LOW); digitalWrite(10,LOW); digitalWrite(11,LOW); digitalWrite(11,LOW); digitalWrite(12,HIGH); digitalWrite(12,HIGH); digitalWrite(13,LOW); digitalWrite(13,LOW); M1--; M1--; K--; K--; Serial.print("T Serial.print("Tiang 1 iang 1 ");"); Serial.print("ME Serial.print("MERAH RAH ");"); Serial.println(M1); Serial.println(M1); Serial.print("T Serial.print("Tiang 2 iang 2 ");"); Serial.print("KU Serial.print("KUNING NING ");"); Serial.println(K); Serial.println(K); Serial.print("T Serial.print("Tiang 3 iang 3 ");"); Serial.print("ME Serial.print("MERAH RAH ");"); Serial.println(M1); Serial.println(M1); Serial.print("T Serial.print("Tiang 4 iang 4 ");"); Serial.print("KU Serial.print("KUNING NING ");"); Serial.println(K); Serial.println(K); H=4; H=4; M2=7; M2=7; lcd.setCursor(0,0); lcd.setCursor(0,0); lcd.print("T1& lcd.print("T1&T3: T3: ");"); lcd.setCursor(7,0); lcd.setCursor(7,0); lcd.print("MERAH"); lcd.print("MERAH"); lcd.setCursor(15,0); lcd.setCursor(15,0); lcd.print(M1); lcd.print(M1); lcd.setCursor(0,1); lcd.setCursor(0,1); lcd.print("T2& lcd.print("T2&T4: T4: ");"); lcd.setCursor(7,1); lcd.setCursor(7,1); lcd.print("KUNING"); lcd.print("KUNING"); lcd.setCursor(15,1); lcd.setCursor(15,1); lcd.print(K); lcd.print(K); } } else else if((Timepoint>6)&&(Timepoint<=9)) if((Timepoint>6)&&(Timepoint<=9)) { { digitalWrite(2,LOW); digitalWrite(2,LOW); digitalWrite(3,LOW); digitalWrite(3,LOW); digitalWrite(4,HIGH); digitalWrite(4,HIGH); digitalWrite(5,HIGH); digitalWrite(5,HIGH); digitalWrite(6,LOW); digitalWrite(6,LOW); digitalWrite(7,LOW); digitalWrite(7,LOW); digitalWrite(8,LOW); digitalWrite(8,LOW); digitalWrite(9,LOW); digitalWrite(9,LOW); digitalWrite(10,HIGH); digitalWrite(10,HIGH); digitalWrite(11,HIGH); digitalWrite(11,HIGH); digitalWrite(12,LOW); digitalWrite(12,LOW); digitalWrite(13,LOW); digitalWrite(13,LOW); M2--; M2--; H--; H--; Serial.print("T Serial.print("Tiang 1 iang 1 ");"); Serial.print("HI Serial.print("HIJAU JAU ");"); Serial.println(H); Serial.println(H); Serial.print("T Serial.print("Tiang 2 iang 2 ");"); Serial.print("M Serial.print("MERAH ERAH ");"); Serial.println(M2); Serial.println(M2); Serial.print("T Serial.print("Tiang 3 iang 3 ");"); Serial.print("HI Serial.print("HIJAU JAU ");"); Serial.println(H); Serial.println(H); Serial.print("T Serial.print("Tiang 4 iang 4 ");"); Serial.print("M Serial.print("MERAH ERAH ");"); Serial.println(M2); Serial.println(M2); K=4; K=4; lcd.setCursor(0,0); lcd.setCursor(0,0); lcd.print("T1& lcd.print("T1&T3: T3: ");"); lcd.setCursor(7,0); lcd.setCursor(7,0); lcd.print("HIJAU"); lcd.print("HIJAU"); lcd.setCursor(15,0); lcd.setCursor(15,0);
[ [ T T y y p p e e t t h h e e c c o o m m p p a a n n y y n n a a m m e e ] ] 6 6 lcd.print(H); lcd.print(H); lcd.setCursor(0,1); lcd.setCursor(0,1); lcd.print("T2& lcd.print("T2&T4: T4: ");"); lcd.setCursor(7,1); lcd.setCursor(7,1); lcd.print("MERAH"); lcd.print("MERAH"); lcd.setCursor(15,1); lcd.setCursor(15,1); lcd.print(M2); lcd.print(M2); } } else else if((Timepoint>9)&&(Timepoint<=12) if((Timepoint>9)&&(Timepoint<=12) ){ ){ digitalWrite(2,LOW); digitalWrite(2,LOW); digitalWrite(3,HIGH); digitalWrite(3,HIGH); digitalWrite(4,LOW); digitalWrite(4,LOW); digitalWrite(5,HIGH); digitalWrite(5,HIGH); digitalWrite(6,LOW); digitalWrite(6,LOW); digitalWrite(7,LOW); digitalWrite(7,LOW); digitalWrite(8,LOW); digitalWrite(8,LOW); digitalWrite(9,HIGH); digitalWrite(9,HIGH); digitalWrite(10,LOW); digitalWrite(10,LOW); digitalWrite(11,HIGH); digitalWrite(11,HIGH); digitalWrite(12,LOW); digitalWrite(12,LOW); digitalWrite(13,LOW); digitalWrite(13,LOW); M2--; M2--; K--; K--; Serial.print("T Serial.print("Tiang 1 iang 1 ");"); Serial.print("KU Serial.print("KUNING NING ");"); Serial.println(K); Serial.println(K); Serial.print("T Serial.print("Tiang 2 iang 2 ");"); Serial.print("M Serial.print("MERAH ERAH ");"); Serial.println(M2); Serial.println(M2); Serial.print("T Serial.print("Tiang 3 iang 3 ");"); Serial.print("KU Serial.print("KUNING NING ");"); Serial.println(K); Serial.println(K); Serial.print("T Serial.print("Tiang 4 iang 4 ");"); Serial.print("M Serial.print("MERAH ERAH ");"); Serial.println(M2); Serial.println(M2); H=4; H=4; M1=7; M1=7; lcd.setCursor(0,0); lcd.setCursor(0,0); lcd.print("T1& lcd.print("T1&T3: T3: ");"); lcd.setCursor(7,0); lcd.setCursor(7,0); lcd.print("KUNING"); lcd.print("KUNING"); lcd.setCursor(15,0); lcd.setCursor(15,0); lcd.print(K); lcd.print(K); lcd.setCursor(0,1); lcd.setCursor(0,1); lcd.print("T2& lcd.print("T2&T4: T4: ");"); lcd.setCursor(7,1); lcd.setCursor(7,1); lcd.print("MERAH"); lcd.print("MERAH"); lcd.setCursor(15,1); lcd.setCursor(15,1); lcd.print(M2); lcd.print(M2); } } delay(3000); delay(3000); } } } }
Demikian penjelasan Simulasi Traffic Light dengan 4 jalan dengan Arduino dan I2C Demikian penjelasan Simulasi Traffic Light dengan 4 jalan dengan Arduino dan I2C LCD. Semoga bermanfaat guuyss..! See You Next Time.