You are on page 1of 15

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

Departemen Ilmu Komputer


Fakultas Matematika Dan Ilmu Pengetahuan Alam
Universitas Sumatera Utara
2008
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.
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.
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


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
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.
LM7805

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).

Kapasitor
(ELCO)
Skema Rangkaian Sensor
D1

1000

D2 BRIDGE
Trafo
U1
78L05 R3
1k
IN OUT
C COM

R5 R1
1k 1k

R2
LED0 D3 1k to PC
Q1
NPN

D4
R4 LED1
3.3k

Rangkaian 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;
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);
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);


begin
if inp32($379)=255 then
begin
Label5.Caption:='ON';
Label8.Caption:='OFF';
sensor1;
x1:=x1+1;
x2:=0;
end
else if inp32($379)=63 then
begin
Label8.Caption:='ON';
Label5.Caption:='OFF';
sensor2;
x2:=x2+1;
x1:=0;
end
else 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;
end
else 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);
end
else if (x1=5)and((inp32($378)=33)or(inp32($378)=3)) then
begin
x1:=0; x2:=0;
Timer1.Enabled:=false;
simpang(1);
end
else 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;
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;
out32($378,0);
end;
end;

procedure TForm1.Button2Click(Sender: TObject);


begin
application.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;
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.
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.

You might also like