traffic light

20
Tugas Akhir Mata Kuliah Arsitektur dan Organisasi Komputer Simulasi Traffic Light dengan Menggunakan Sensor Infrared sebagai Pendeteksi Antrian Dosen Pembimbing : Drs. Dahlan Sitompul, M.Eng Disusun Oleh : Kelompok : NESA Yoga Nugraha W. 071401051 Deli Utari 071401035 Sovi Khadifa 071401041 Fitri Rahayu 071401007 Harris Kristanto 071401033 Febrianto Prima 071401027

Upload: yoga-nugraha-w

Post on 24-Jun-2015

257 views

Category:

Documents


14 download

TRANSCRIPT

Page 1: Traffic Light

Tugas Akhir Mata KuliahArsitektur dan Organisasi Komputer

Simulasi Traffic Light dengan MenggunakanSensor Infrared sebagai Pendeteksi Antrian

Dosen Pembimbing :

Drs. Dahlan Sitompul, M.Eng

Disusun Oleh :

Kelompok : NESA

Yoga Nugraha W. 071401051

Deli Utari 071401035

Sovi Khadifa 071401041

Fitri Rahayu 071401007

Harris Kristanto 071401033

Febrianto Prima 071401027

Departemen Ilmu Komputer

Fakultas Matematika Dan Ilmu Pengetahuan Alam

Universitas Sumatera Utara

2008

Page 2: Traffic Light

Pendahuluan

Pada umumnya sistem pengaturan lampu lalu lintas yang selama ini dipergunakan

adalah dengan melakukan pengaturan hanya berdasarkan waktu tetap. Oleh karena tingkat

kepadatan pada persimpangan jalan tidak selalu sama, maka tentu saja tingkat kemacetan

pada persimpangan jalan tidak dapat dikendalikan dengan baik. Sistem kendali adaptif

melakukan pengaturan berdasarkan pada tingkat kepadatan kendaraan yang melewati

jalan tersebut, dimana sistem pengaturannya tidak konstan dan akan mengikuti perubahan

tingkat kepadatan kendaraan pada persimpangan jalan. Panjangnya antrian pada

persimpangan jalan menunjukkan tingkat kepadatan kendaraan.

Khususnya di persimpangan jalan. Selama ini sistem pengaturan lampu lalu lintas

menggunakan pengaturan yang hanya berdasarkan pada waktu tetap tanpa memperhatikan

tingkat kepadatan lalu lintas. Tentunya dengan cara ini tingkat kemacetan tidak dapat

dikendalikan dengan baik karena tingkat kepadatan pada persimpangan jalan tidak selalu

sama. Maka dibutuhkan sistem pengaturan yang tidak konstan dan mengikuti perubahan

tingkat kepadatan kendaraan pada persimpangan jalan.

Tujuan

Tujuan dari percobaan ini adalah untuk merancang dan mengimplementasikan

kendali adaptif pada sistem pengaturan lampu lalu lintas dengan menggunakan sensor,

sehingga sistem pengendalian lampu lalu lintas sesuai dengan tingkat kepadatan

kendaraan yang dideteksi oleh sensor pada setiap persimpangan jalan.

Sistem pengaturan lalu lintas yang dirancang dipergunakan pada persimpangan

empat dengan empat periode yang berbeda, dan sensor inframerah akan mendeteksi

tingkat kepadatan lalu lintas sesuai dengan panjang antrian kendaraan pada setiap

persimpangan jalan. Sedangkan program yang dirancang merupakan program yang

disimpan pada komputer dan akan bekerja secara kontinyu. Dengan menggunakan kendali

adaptif maka diharapkan waktu mengemudi akan menjadi lebih efisien dan kemacetan

dapat teratasi.

Page 3: Traffic Light

Prinsip Kerja Traffic Light

Sensor inframerah dipasang pada setiap persimpangan dengan jarak beberapa

meter untuk mendeteksi panjang antrian kendaraan pada persimpangan jalan tersebut.

Dapat dilihat proses pengaturan yang dilakukan berdasarkan pada panjangnya antrian

kendaraan yang menunjukkan tingkat kepadatan kendaraan pada persimpangan jalan. Jika

tingkat kepadatan kendaraan pada persimpangan jalan adalah padat, maka lampu hijau

akan menyala.

Proses pendeteksian kendaraan mulai dilakukan pada saat lampu lalu lintas

berwarna merah dan akan berakhir hingga lampu lalu lintas pada persimpangan tersebut

berwarna hijau. Setelah proses pendeteksian pada persimpangan tersebut berakhir, maka

proses akan beralih pada persimpangan yang lain.

Pada Simulasi ini telah ditetapkan panjang antrian kendaraan maksimum dari

persimpangan (kondisi padat).

Simulasi ini menggunakan dua buah sensor yang ditempatkan pada setiap jalur

dan digunakan untuk mendeteksi panjangnya antrian kendaraan.

Hanya ada satu persimpangan yang akan menyala hijau yaitu pada saat simpang

tersebut terhalang.

Blok Diagram Sistem

Sensor inframerah akan mendeteksi panjangnya antrian kendaraan.yang terdapat

pada persimpangan jalan dan kemudian akan dikirimkan informasi ini ke PC. Kemudian

PC akan melakukan pengaturan lampu lalu lintas sesuai dengan program yang telah

disimpan sebelumnya. Sebagai contoh jika panjangnya antrian kendaraan pada

persimpangan sangat panjang, maka lampu hijau pada simpang akan menyala.

Page 4: Traffic Light

Diagram Alir

Program yang dirancang dipergunakan untuk mengendalikan lampu lalu lintas

dengan memperhatikan jumlah input serta program akan berjalan terus-menerus dan tidak

akan pernah berhenti selama dipergunakan pada pengaturan lampu lalu lintas.

N1 : Kondisi 1, Kedua sensor tidak terhalang

N2 : Kondisi 2, Sensor 1 terhalang (simpang-1 pada kondisi padat).

N3 : Kondisi 3, Sensor 2 terhalang (simpang-2 pada kondisi padat).

N4 : Kondisi 4, Kedua sensor terhalang (simpang-1 dan simpang-2 pada kondisi

padat).

P-1 : Proses 1, Lampu tetap pada kondisi normal.

P-2 : Lampu pada simpang 1 akan menyala hijau, lampu pada simpang 2 akan

menyala merah.

P-3 : Lampu pada simpang 2 akan menyala, lampu pada simpang 1 akan menyala

merah.

P-4 : Tidak Ada Proses.

Perangkat Keras

1. Inframerah dan LED

Page 5: Traffic Light

Sensor inframerah merupakan salah satu sensor fotoelektrik. Sensor fotoelektrik

adalah suatu peralatan elektronik yang bereaksi atas suatu perubahan intensitas cahaya

yang menimpanya.

Sensor inframerah dipergunakan untuk mendeteksi panjang antrian kendaraan

pada persimpangan jalan. Beberapa sensor inframerah ditempatkan pada setiap

persimpangan jalan dan proses pendeteksian kendaraan dilakukan yaitu jika ada

kendaraan yang menghalangi sinar yang dipancarkan sumber. Penggunaan sensor ini

memiliki beberapa keuntungan yaitu mudah diperoleh dipasaran dan juga memiliki harga

yang relatif lebih murah jika dibandingkan dengan penggunaan sensor jenis lain.

2. Dioda Foto

Dioda foto mempunyai sifat yang berkebalikan dengan LED ialah akan

menghasilkan arus listrik bila terkena cahaya. Besarnya arus listrik tergantung dari

besarnya cahaya yang masuk.

3. Dioda

Dioda adalah komponen semiconductor yang paling sederhana, ia terdiri atas dua

elektroda yaitu katoda dan anoda. Dioda digunakan sebagai penyearah arus.

4. Transistor

Pada prinsipnya, suatu transistor terdiri atas dua buah dioda yang disatukan. Agar

transistor dapat bekerja, kepada kakikakinya harus diberikan tegangan, tegangan ini

dinamakan bias voltage. Basisemitor diberikan forward voltage, sedangkan basiskolektor

diberikan reverse voltage. Sifat transistor adalah bahwa antara kolektor dan emitor akan

ada arus (transistor akan menghantar) bila ada arus basis. Makin besar arus basis makin

besar penghatarannya.

5. Resistor

Page 6: Traffic Light

Resistor yaitu komponen elektronika yang berfungsi sebagai tahanan atau

hambatan listrik.

6. Trafo

\

Transformator adalah dua buah kumparan yang dililitkan ada satu inti, inti bisa inti

besi atau inti ferrite. Ia dapat meneruskan arus listrik AC dan tidak dapat untuk digunakan

pada DC. Kumparan pertama disebut primer ialah kumparan yang menerima input,

kumparan kedua disebut sekunder ialah kumparan yang menghasilkan output. Dalam

percobaan ini digunakan sebagai penurun tegangan (Step Down).

7. Amplifier LM7805

IC LM7805 adalah IC yang digunakan sebagai voltage regulator dimana tegangan

outputnya adalah 5 volt.

8. Kapasitor (ELCO)

Kapasitor dapat menyimpan muatan listrik, dapat meneruskan tegangan bolak balik

(AC) akan tetapi menahan tegangan DC, besaran ukuran kekuatannya dinyatakan dalam

FARAD (F).

LM78

05

Kapasitor (ELCO)

Page 7: Traffic Light

to PC

Skema Rangkaian Sensor

Trafo

D1

BRIDGE

C

1000

IN

COM

OUT

U178L05

R11k

R21k

R31k

R43.3k

Q1NPN

D2

LED0

R51k

D3

D4LED1

Rangkaian Traffic Light

Page 8: Traffic Light

Source Code Program

unit Unit1;

interface

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;

type TForm1 = class(TForm) Timer1: TTimer; Button1: TButton; Shape1: TShape; Shape2: TShape; Edit1: TEdit; Button2: TButton; GroupBox1: TGroupBox; Label1: TLabel; Shape3: TShape; Shape4: TShape; Shape5: TShape; M: TShape; K: TShape; H: TShape; H1: TShape; K1: TShape; M1: TShape; Timer2: TTimer;

Page 9: Traffic Light

s1: TShape; Shape14: TShape; s2: TShape; Label3: TLabel; Label4: TLabel; Label5: TLabel; Panel1: TPanel; Shape11: TShape; Shape12: TShape; Shape13: TShape; Shape15: TShape; Shape17: TShape; Shape18: TShape; Shape19: TShape; Shape20: TShape; Shape6: TShape; Shape7: TShape; Shape10: TShape; Shape21: TShape; Shape22: TShape; Shape23: TShape; Shape24: TShape; Shape25: TShape; Shape26: TShape; Shape27: TShape; Shape28: TShape; Shape9: TShape; Shape29: TShape; Shape30: TShape; Shape34: TShape; Shape36: TShape; Shape43: TShape; Shape8: TShape; Shape31: TShape; Shape32: TShape; Shape33: TShape; Shape35: TShape; Shape37: TShape; Shape38: TShape; Shape39: TShape; Shape40: TShape; Shape41: TShape; Label6: TLabel; Label7: TLabel; Label8: TLabel; procedure Timer1Timer(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Timer2Timer(Sender: TObject); private { Private declarations } public { Public declarations } procedure simpang(A:integer);

Page 10: Traffic Light

procedure sensor1; procedure sensor2; procedure sensor1_2; procedure sensor2_1; procedure kng; procedure kng1; procedure hj; procedure hj1; procedure mrh; procedure resetlampu; end;

var Form1: TForm1; x1,x2:integer;

implementation

{$R *.dfm}

function Out32(wAddr:word;bOut:byte):byte; stdcall; external 'inpout32.dll';function Inp32(wAddr:word):byte; stdcall; external 'inpout32.dll';

{ Procedure Form Create____________________________________________}

procedure TForm1.FormCreate(Sender: TObject);begin Timer1.Enabled:=false; x1:=0; x1:=0;end;

{ >> Timer1_____________________________________________}

procedure TForm1.Timer1Timer(Sender: TObject);beginif inp32($379)=255 then begin Label5.Caption:='ON'; Label8.Caption:='OFF'; sensor1; x1:=x1+1; x2:=0; endelse if inp32($379)=63 then begin Label8.Caption:='ON'; Label5.Caption:='OFF'; sensor2; x2:=x2+1; x1:=0;

Page 11: Traffic Light

endelse if (inp32($379)=127)and(x1<5)and(x2<5) then begin Label5.Caption:='ON'; Label8.Caption:='ON'; sensor1_2; x1:=x1+1; x2:=x2+1; endelse if inp32($379)=191 then begin Label5.Caption:='OFF'; Label8.Caption:='OFF'; sensor2_1; x1:=0; x2:=0; end;

if (x1=5)and(x2=5) and((inp32($378)=33)or(inp32($378)=18)or(inp32($378)=3))then begin x1:=0;x2:=0; Timer1.Enabled:=false; simpang(3); endelse if (x1=5)and((inp32($378)=33)or(inp32($378)=3)) then begin x1:=0; x2:=0; Timer1.Enabled:=false; simpang(1); endelse if (x2=5)and((inp32($378)=18) or (inp32($378)=3))then begin Timer1.Enabled:=false; x1:=0; x2:=0; simpang(2); end;end;

{ >> Procedure Algoritma simpang____________________________________}

procedure TForm1.simpang(A:integer);var z:integer;begin z:=0; case A of 1:begin kng; while (z<=3) do begin z:=z+1; sleep(1000); end; hj;

Page 12: Traffic Light

end; 2:begin kng1; while (z<=3) do begin z:=z+1; sleep(1000); end; hj1; end; 3:begin if (inp32($379)=255)or(inp32($378)=18) then begin kng1; while (z<=3) do begin z:=z+1; sleep(1000); end; hj1; end else if (inp32($379)=63)or((inp32($378)=33)or(inp32($378)=3)) then begin kng; while (z<=3) do begin z:=z+1; sleep(1000); end; hj; end; end; end; Timer1.Enabled:=true;end;

{ >> Button_______________________________________________}

procedure TForm1.Button1Click(Sender: TObject);begin if Button1.Caption='Start' then begin mrh; Button1.Caption:='Stop'; Timer1.Enabled:=true; end else if Button1.Caption='Stop' then begin resetlampu; sensor2_1; Button1.Caption:='Start'; Label5.Caption:=''; Label8.Caption:=''; Timer1.Enabled:=false;

Page 13: Traffic Light

out32($378,0); end;end;

procedure TForm1.Button2Click(Sender: TObject);beginapplication.Terminate;end;

{ >> Sensor_______________________________________________}

procedure TForm1.Timer2Timer(Sender: TObject); begin Edit1.text:=inttostr(inp32($379)); end;

procedure TForm1.sensor1; begin s1.Brush.Color := clyellow; s2.Brush.Color := clsilver; end;

procedure TForm1.sensor2; begin s1.Brush.Color := clsilver; s2.Brush.Color := clyellow; end;

procedure TForm1.sensor1_2; begin s1.Brush.Color := clyellow; s2.Brush.Color := clyellow; end;

procedure TForm1.sensor2_1; begin s1.Brush.Color := clsilver; s2.Brush.Color := clsilver; end;

{ >> Procedure Lampu___________________________________}

procedure TForm1.mrh;begin out32($378,3); H.Brush.Color:=clwhite; K.Brush.Color:=clwhite; M.Brush.Color:=clred; H1.Brush.Color:=clwhite; K1.Brush.Color:=clwhite; M1.Brush.Color:=clred;end;

procedure TForm1.kng;

Page 14: Traffic Light

begin out32($378,9); H.Brush.Color:=clwhite; K.Brush.Color:=clwhite; M.Brush.Color:=clred; H1.Brush.Color:=clwhite; K1.Brush.Color:=clYellow; M1.Brush.Color:=clwhite;end;

procedure TForm1.kng1;begin out32($378,6); H.Brush.Color:=clwhite; K.Brush.Color:=clYellow; M.Brush.Color:=clwhite; H1.Brush.Color:=clwhite; K1.Brush.Color:=clwhite; M1.Brush.Color:=clred;end;

procedure TForm1.hj;begin Timer1.Enabled:=true; out32($378,18); H.Brush.Color:=cllime; K.Brush.Color:=clwhite; M.Brush.Color:=clwhite; H1.Brush.Color:=clwhite; K1.Brush.Color:=clwhite; M1.Brush.Color:=clred;end;

procedure TForm1.hj1;begin Timer1.Enabled:=true; out32($378,33); H.Brush.Color:=clwhite; K.Brush.Color:=clwhite; M.Brush.Color:=clred; H1.Brush.Color:=cllime; K1.Brush.Color:=clwhite; M1.Brush.Color:=clwhite;end;

procedure TForm1.resetlampu;begin H.Brush.Color:=clwhite; K.Brush.Color:=clwhite; M.Brush.Color:=clwhite; H1.Brush.Color:=clwhite; K1.Brush.Color:=clwhite; M1.Brush.Color:=clwhite;end;

end.

Page 15: Traffic Light

Kesimpulan

Dari hasil perancangan dan uji coba sistem yang dibuat, Pengunaan sensor dapat

memenuhi tujuan sistem pengaturan lalu lintas secara optimal, yaitu dengan melakukan

pengaturan berdasarkan panjangnya antrian kendaraan yang dideteksi oleh sensor pada

persimpangan jalan. Sistem ini dapat digunakan pada kondisi persimpangan jalan yang

berbeda dengan dilakukan beberapa penyesuaian pada program.

Proses pendeteksian kendaraan yang dilakukan harus menggunakan beberapa

sensor inframerah dan sensor inframerah yang dipergunakan tidak mempunyai

kemampuan untuk membedakan antara kendaraan dengan benda lain, sehingga sensor

harus diletakkan pada tempat yang tepat. Untuk pengembangan sistem ke depan, maka

dapat dilakukan beberapa modifikasi pada system sehingga dapat bekerja lebih baik.

Sebagai contoh, yaitu dengan menggunakan PLC yang dapat dihubungkan secara

langsung dengan kamera dan internet.