KOMUNIKASI DATA
PENGGAMBARAN SINYAL MELALUI DELPHI
Oleh :
NIM. 1931130061
TT-1B
TEKNIK TELEKOMUNIKASI
PRAKTIKUM I
SINYAL ANALOG, SINYAL DIGITAL
(PENGGAMBARAN SINYAL MENGGUNAKAN DELPHI)
I. Tujuan Khusus
1. Memahami perbedaan Sinyal Analog dan Sinyal Digital
2. Memahami macam-macam dari Sinyal Analog dan Sinyal Digital
2
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
System digital merupakan bentuk sampling dari sytem analog. digital pada
dasarnya di code-kan dalam bentuk biner (atau Hexa). besarnya nilai suatu system
digital dibatasi oleh lebarnya / jumlah bit (bandwidth). jumlah bit juga sangat
mempengaruhi nilai akurasi system digital.
Signal digital ini memiliki kelebihan daripada sinyal analog yaitu :
1. Mampu mengirimkan informasi dengan kecepatan cahaya yang dapat
membuat informasi dapat dikirim dengan kecepatan tinggi.
2. Penggunaan yang berulang – ulang terhadap informasi tidak mempengaruhi
kualitas dan kuantitas informsi itu sendiri.
3
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
5
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
Component Palette
Component palette adalah tool yang berupa kumpulan tab (pagecontrol),
dimana setiap tab memuat berbagai tombol komponen (VCL / Visual
Component Library) yang dapat diletakkan pada form dan sebagai interface
program aplikasi. Tab tersebut diantaranya adalah Standard, Additional,Win32,
dan lain-lain.
Object Inspector
Object inspector digunakan untuk mengubah properti atau karakteristik dari
suatu komponen. Terdiri atas 2 tab yaitu :
- Properties
Digunakan untuk menentukan seting suatu objek. Satu objek memiliki
beberapa properti yang dapat diatur langsung dari object inspector maupun
melalui kode program. Seting ini mempengaruhi cara kerja objek tersebut
saat aplikasi dijalankan.
- Event
Merupakan bagian yang dapat diisi dengan kode program tertentu yang
berfungsi untuk menangani kejadian-kejadian (berupa sebuah procedure)
yang dapat direspon oleh sebuah komponen. Event adalah peristiwa atau
kejadian yang diterima oleh suatu objek, misal: click, drag, dan lain-lain.
Event yang diterima objek akan memicu Delphi menjalankan kode program
yang ada didalamnya. Misalnya ingin sesuatu dikerjakan pada saat form
ditutup, maka untuk menyatakan tindakan tersebut (berupa sebuah
procedure) menggunakan OnClose.
Object Tree View
Object tree view berisi daftar komponen yang sudah diletakkan di form
designer.
Code Editor
Code editor merupakan tempat untuk menuliskan kode program
menggunakan bahasa object Pascal. Disini tidak perlu dituliskan seluruh kode
sumber karena Delphi telah menyediakan kerangka penulisan sebuah program.
Code Explorer
Digunakan untuk memudahkan berpindah antar file unit di dalam
jendela code editor. Code explorer berisi daftar yang menampilkan semua tipe,
class, properti, method, variabel global, rutin global yang telah didefinisikan di
dalam unit. Saat memilih sebuah item dalam code explorer, kursor akan
berpindah menuju implementasi dari item yang dipilih di dalam code editor.
6
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
V. Prosedur
1. Buka program Delphi 7
2. Tambahkan pada form satu buah panel, dua buah image, dua buah label atau
lebih untuk menambahkan tulisan sesuai keinginan pengguna, tiga buah edit,
dua buah button, empat buah groupbox, dan dua belas buah radio button.
Selanjutnya atur tata letak komponen-komponen tersebut seperti pada gambar
di bawah.
7
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
Name Mmhasil
Image1 Name Imgtampil
Panel1 Name (kosongkan)
Group Box Caption Amplitudo
Name Amp
Radio Button1 Caption 1V
Name Rba1
Radio Button1 Caption 2V
Name Rba2
Radio Button1 Caption 4V
Name Rba4
Group Box Caption Frekuensi
Name Frek
Radio Button1 Caption 2 Hz
Name Rbf2
Radio Button1 Caption 5 Hz
Name Rbf5
Radio Button1 Caption 10 Hz
Name Rbf10
Group Box Caption Tinggi Pulsa
Name Tinggi
Radio Button1 Caption 30
Name Rbt10
Radio Button1 Caption 60
Name Rbt30
Radio Button1 Caption 100
Name Rbt50
Group Box Caption Lebar Pulsa
Name Lebar
Radio Button1 Caption 10
Name Rbl10
Radio Button1 Caption 30
Name Rbl30
Radio Button1 Caption 50
Name Rbl50
Edit Text
Name Edbiner
Button1 Caption &Kotak
Name Btkotak
4. Sesuaikan code program pada poin 2 (Code Program)
5. Jalankan program dan perbaiki apabila terdapat kesalahan
8
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
1. Flowchart Program
Flowchart Keseluruhan
Start
Inisialisasi
Procedure sumbu1
Procedure sumbu2
Procedure satu
Procedure nol
9
Procedure tegak
Nama : Wakhidatul Alimatuz Zahro’
Procedure reset
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
Procedure btsinus
Procedure btkotak
End
Flowchart Sinus
10
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
Flowchart Kotak
11
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
2. Code Program
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;
type
TFrmsinyal = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edsumbux: TEdit;
Edsumbuy: TEdit;
Btproses: TButton;
Mmhasil: TMemo;
Imgtampil: TImage;
panel1: TPanel;
12
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
Amp: TGroupBox;
Frek: TGroupBox;
Rba1: TRadioButton;
Rba2: TRadioButton;
Rba4: TRadioButton;
Rbf2: TRadioButton;
Rbf5: TRadioButton;
Rbf10: TRadioButton;
tinggi: TGroupBox;
rbt10: TRadioButton;
rbt30: TRadioButton;
rbt50: TRadioButton;
lebar: TGroupBox;
rbl10: TRadioButton;
rbl30: TRadioButton;
rbl50: TRadioButton;
Edbiner: TEdit;
btkotak: TButton;
Imgkotak: TImage;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
procedure BtprosesClick(Sender: TObject);
procedure btkotakClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Frmsinyal: TFrmsinyal;
implementation
{$R *.dfm}
procedure sumbu (ax,ay,b,c:integer);
begin
frmsinyal.Imgtampil.Canvas.MoveTo(ax,ay);
frmsinyal.Imgtampil.Canvas.LineTo(ax+b,ay);
frmsinyal.Imgtampil.Canvas.MoveTo(ax,ay);
frmsinyal.Imgtampil.Canvas.LineTo(ax,ay-c);
frmsinyal.Imgtampil.Canvas.MoveTo(ax,ay);
13
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
frmsinyal.Imgtampil.Canvas.LineTo(ax,ay+c);
frmsinyal.Imgtampil.Canvas.Pen.Color:=clblue;
frmsinyal.Imgtampil.Canvas.MoveTo(ax,ay+110);
frmsinyal.Imgtampil.Canvas.LineTo(ax+160,ay+110);
frmsinyal.Imgtampil.Canvas.MoveTo(ax+220,ay+110);
frmsinyal.Imgtampil.Canvas.LineTo(ax+390,ay+110);
frmsinyal.Imgtampil.Canvas.TextOut(ax+170,ay+105,'1detik');
frmsinyal.Imgtampil.Canvas.TextOut(ax,ay-c,'Amplitudo(A)');
frmsinyal.Imgtampil.Canvas.TextOut(ax+b-15,ay-15,'Time(T)');
frmsinyal.Imgtampil.Canvas.TextOut(ax-10,ay-55,'2-');
frmsinyal.Imgtampil.Canvas.TextOut(ax-10,ay-107,'4-');
end;
14
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
frmsinyal.Imgkotak.Canvas.Pen.Color:=clred;
frmsinyal.Imgkotak.Canvas.MoveTo(ax+(i-1)*b,ay);
frmsinyal.Imgkotak.Canvas.LineTo(ax+b+(i-1)*b,ay);
end;
procedure reset;
var
x,y:integer;
begin
frmsinyal.Imgtampil.Picture:=nil;
frmsinyal.Imgtampil.Refresh;
frmsinyal.Imgkotak.Picture:=nil;
frmsinyal.Imgkotak.Refresh;
x:=strtoint(frmsinyal.Edsumbux.Text);
y:=strtoint(frmsinyal.Edsumbuy.Text);
sumbu(20,120,x,y);
sumbu2(20,120,x,y);
end;
begin
reset;
if rba1.Checked then amp:=25;//amplitudo=1V
if rba2.Checked then amp:=50;//amplitudo=2V
if rba4.Checked then amp:=100;//amplitudo=4V
if rbf2.Checked then frek:=10;//frekuensi=2Hz
if rbf5.Checked then frek:=4;//frekkuensi=5Hz
if rbf10.Checked then frek:=2;//frekuensi=10Hz
x:=strtoint(frmsinyal.Edsumbux.Text);
y:=strtoint(frmsinyal.Edsumbuy.Text);
sumbu (20,120,x,y);
for sx:=1 to 395 do
begin
sy:=sin (sx/pi/frek)*amp;
frmsinyal.Imgtampil.Canvas.Pixels[sx+20,120-
round (sy)]:=clred;
Frmsinyal.mmhasil.lines.add('x='+inttostr(sx)+''+formatfloat('#.###',(sy)));
end;
end;
15
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
biner:=edbiner.Text;
x:=strtoint (frmsinyal.Edsumbux.Text);
y:=strtoint (frmsinyal.Edsumbuy.Text);
sumbu2 (20,120,x,y);
tnd:=0;
for i:=1 to 16 do
if biner[i]='1' then
if tnd=0 then begin tegak (20,120,lebar,tinggi,i);
satu (20,120,lebar,tinggi,i);
tnd:=1;
end else satu (20,120,lebar,tinggi,i)
else if tnd=1 then begin tegak (20,120,lebar,tinggi,i);
nol (20,120,lebar,tinggi,i);
tnd:=0;end
else nol(20,120,lebar,tinggi,i);
end;
end.
16
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
1. 1V 2 Hz
2. 1V 5 Hz
3. 1V 10 Hz
4. 2V 2 Hz
5. 2V 5 Hz
17
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
6. 2V 10 Hz
7. 4V 2 Hz
8. 4V 5 Hz
9. 4V 10 Hz
18
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
2. 30 30
3. 30 50
4. 60 10
5. 60 30
6. 60 50
19
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
7. 100 10
8. 100 30
9. 100 50
VIII. Kesimpulan
1. Semakin besar frekuensi, maka semakin banyak pula gelombang yang
dihasilkan tiap satu detik.
2. Tinggi gelombang sinus maupun pulsa disesuaikan dengan nilai amplitudo
20
Nama : Wakhidatul Alimatuz Zahro’
NIM : 1931130061
Kelas : TT – 1B Laporan 1
Nomer absen : 25 Sinyal Analog, Sinyal Digital
21