Pembuatan Sistem Keamanan 4 Ruangan Jarak JauhDengan Sms Berbasis Bahasa Pemograman Codevision -Avr

BAB II
LANDASAN TEORI
2.1 Pengertian program
Pada umumnya program adalah sederetan instruksi atau statement yang tentunya
dalam bahasa yang dimengerti oleh komputer. Instruksi tersebut berfungsi untuk mengatur
pekerjaan apa saja yang akan dilakukan oleh komputer agar mendapatkan dan
menghasilkan suatu hasil atau keluaran yang diharapkan.
Adapun jenis bahasa pemrograman berdasarkan perkembangannya :
Bahasa Mesin ( Machine Language )

1.

Bahasa pemrograman yang hanya dapat dimengerti oleh mesin (komputer) yang di
dalamnya terdapat CPU yang hanya mengenal dua keadaan yang berlawanan yaitu :


Bila terjadi kontak atau ada arus bernilai 1 dan bernilai 0
Bahasa Tingkat Rendah ( Low Level Language )

2.


Karena banyak keterbatasan yang dimiliki bahasa mesin maka dibuatlah symbol yang
mudah diingat yang disebut dengan Mnemonic (pembantu untuk mengingat).
Contoh : Bahasa Assembler yang dapat menerjemahkan Mnemonic.
Bahasa Tingkat Menengah ( Middle Level Language )

3.

Bahasa pemrograman yang menggunakan aturan-aturan gramatikal dalam penulisan
pernyataannya, mudah untuk dipahami, dan memiliki instruksi-instruksi tertentu yang dapat
langsung diakses oleh komputer. Contoh : Bahasa C
Bahasa Tingkat Tinggi ( High Level Language )

4.

Bahasa pemrograman yang dalam penulisan pernyataannya mudah dipahami secara
langsung.


Bahasa Berorientasi pada Prosedur (Procedure Oriented Language)
Contoh : Algoritma, Fortran, Pascal, Basic, Cobol, PL/1




Bahasa Berorientasi pada Masalah (Problem Oriented Language)
Contoh : RPG (Report Program Generator)

Universitas Sumatera Utara

Bahasa Berorientasi Obyek ( Object Oriented Language )

5.

Bahasa pemrograman ini mengandung fungsi-fungsi untuk menyelesaikan suatu
permasalahan dan programmer tidak harus menulis secara detail semua pernyataannya,
tetapi cukup memasukan kriteria-kriteria yang dikehendaki saja.
Contoh : Visual dBase, Visual FoxPro, Delphi, Visual C, Visual Basic.

2.1.1 Bahasa Pemograman C
Bahasa C dikembangkan pada Lab Bell pada tahun 1978, oleh Dennis Ritchi dan
Brian W. Kernighan. Pada tahun 1983 dibuat standar C yaitu stnadar ANSI ( American

National Standards Institute ), yang digunakan sebagai referensi dari berbagai versi C yang
beredar dewasa ini termasuk Turbo C.
Dalam beberapa literature, bahasa C digolongkan bahasa level menenganh karena
bahasa C mengkombinasikan elemen bahasa tinggi dan elemen bahasa rendah. Kemudahan
dalam level rendah merupakan tujuan diwujudkanya bahasa C. pada tahun 1985 lahirlah
pengembangan ANSI C yang dikenal dengan C++ (diciptakan oleh Bjarne Struostrup dari
AT % TLab). Bahasa C++ adalah pengembangan dari bahasa C. bahasa C++ mendukung
konsep pemrograman berorientasu objek dan pemrograman berbasis windows. Sampai
sekarang bahasa C++ terus brkembang dan hasil perkembangannya muncul bahasa baru
pada tahun 1995 (merupakan keluarga C dan C++ yang dinamakan java). Istilah prosedur
dan fungsi dianggap sama dan disebut dengan fungsi saja. Hal ini karena di C++ sebuah
prosedur pada dasanya adalah sebuah fungsi yang tidak memiliki tipe data kembalian
(void). Hingga kini bahasa ni masih popular dan penggunaannya tersebar di berbagai
platform dari windows samapi linux dan dari PC hingga main frame.
Ada pun kekurangan dan Kelebihan Bahasa C sebagai berikut :
1. Kelebihan Bahasa C:


Bahasa C tersedia hampir di semua jenis computer.




Kode bahasa C sifatnya adalah portable dan fleksibel untuk semua jenis
computer.



Bahasa C hanya menyediakan sedikit kata-kata kunci. hanya terdapat 32 kata
kunci.

Universitas Sumatera Utara



Proses executable program bahasa C lebih cepat



Dukungan pustaka yang banyak.




C adalah bahasa yang terstruktur



Bahasa C termasuk bahasa tingkat menengah
Penempatan ini hanya menegaskan bahwa c bukan bahasa pemrograman yang

berorientasi pada mesin. yang merupakan ciri bahasa tingkat rendah. Melainkan
berorientasi pada obyek tetapi dapat dinterprestasikan oleh mesin dengan cepat. secepat
bahasa mesin. inilah salah satu kelebihan c yaitu memiliki kemudahan dalam menyusun
programnya semudah bahasa tingkat tinggi namun dalam mengesekusi program secepat
bahasa tingkat rendah.
2. Kekurangan Bahasa C:
·

Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan
pemakai.
Bagi pemula pada umumnya akan kesulitan menggunakan pointer.


2.1.2 Struktur Bahasa C


Program bahasa C tersusun atas sejumlah blok fungsi.



Setiap fungsi terdiri dari satu atau beberapa pernyataan untuk melakukan suatu
proses tertentu.



Tidak ada perbedaan antara prosedur dan fungsi.



Sstiap program bahasa C mempunyai suatu fungsi dengan nama “main” (Program
Utama).




Fungsi bisa diletakkan diatas atau dibawah fungsin “main”.



Setiap statemen diakhiri dengan semicolon (titik koma).

2.1.3 Pengenal
Pengenal (identifier) merupakan sebuah nama yang didefenisikan oleh pemrograman
untuk menunjukkan indetitas dari sebuah konstanta, variable, fungsi, label atau tipe data

Universitas Sumatera Utara

khusus. Pemberian nama sebuah pengenal dapat ditentukan bebas sesuai keinginan
pemrogram tetapi harus memenuhi aturan berikut :


Karakter pertama tidak boleh menggunakan angka




Karakter kedua dapat berupa huruf, angka, atau garis bawah.



Tidak boleh menggunakan spasi.



Bersifat Case Sensitive, yaitu huru capital dan huruf kecil dianggap berbeda.



Tidak boleh mengunakan kata – kata yang merupakan sitaks maupun operator
dalam pemrograman C, misalnya : Void, short, const, if, static, bit, long, case,
do, switch dll.

2.1.4 Tipe Data
Tipe data merupakan suatu hal yang penting untuk kita ketahui pada saat belajar

bahasa pemrograman. Kita harus dapat menentukan tipe data yang tepat untuk menampung
sebuah data, baik itu data berupa bilangan numerik ataupun karakter. Hal ini bertujuan agar
program yang kita buat tidak membutuhkan pemesanan kapling memori yang berlebihan.
Seorang programmer yang handal harus dapat memilih dan menentukan tipe data apa yang
seharusnya digunakan dalam pembuatan sebuah program.
Macam-Macam Tipe Data Pada Bahasa C :
1. Tipe Data Karakter
Sebuah karakter, baik itu berupa huruf atau angka dapat disimpan pada sebuah
variabel yang memiliki tipe data char dan unsigned char. Besarnya data yang dapat
disimpan pada variabel yang bertipe data char adalah -127 - 127. Sedangkan untuk tipe data
unsigned char adalah dari 0 - 255. Pada dasarnya setiap karakter memiliki nilai ASCII, nilai
inilah yang sebetulnya disimpan pada variabel yang bertipe data karakter ini.
2. Tipe Data Bilangan Bulat
Tipe data bilangan bulat atau dapat disebut juga bilangan desimal

merupakan

sebuah bilangan yang tidak berkoma. Pada bahasa C terdapat bermacam-macam tipe data
yang dapat kita gunakan untuk menampung bilangan bulat. Kita dapat menyesuaikan
penggunaan tipe data dengan terlebih dahulu memperhitungkan seberapa besar nilai yang


Universitas Sumatera Utara

akan kita simpan. Contohnya seperti berikut, kiata akan melakukan operasi penjumlahan
nilai 300 dan 100 dan hasilnya akan disimpan pada variabel c.
Jika dilihat, hasil dari penjumlahan tersebut nilainya akan lebih besar dari 255 dan
nilainya pasti positif, oleh karena itu sebaiknya kita menggunakan tipe data unsigned int.
Namun berbeda halnya jika saya ingin melakukan operasi pengurangan -5 - 300, jika dilihat
hasilnya akan negatif maka selayaknya digunakan variabel dengan tipe data int.
3. Tipe Data Bilangan Berkoma
Pada bahasa C terdapat dua buah tipe data yang berfungsi untuk menampung data
yang berkoma. Tipe data tersebut adalah float dan double. Double lebih memiliki panjang
data yang lebih banyak dibandingkan float. Tipe data double dapat digunakan jika kita
membutuhkan variabel yang dapat menampung tipe data berkoma yang bernilai besar.
Tabel 2.1 Tipe Data
Tipe Data

Ukuran

Jangkauan Nilai


Bit

1 byte

0 atau 1

Char

1 byte

-128 s/d 127

Unsigned Char

1 byte

0 s/d 255

Signed Char

1 byte

-128 s/d 127

Int

2 byte

-32.768 s/d 32.767

Short Int

2 byte

-32.768 s/d 32.767

Unsigned Int

2 byte

0 s/d 65.535

Signed Int

2 byte

-32.768 s/d 32.767

Long Int

4 byte

-2.147.483.648 s/d 2.147.483.647

Unsigned Long Int

4 byte

0 s/d 4.294.967.295

Signed Long Int

4 byte

-2.147.483.648 s/d 2.147.483.647

Float

4 byte

1.2*10-38 s/d 3.4*10+38

Double

4 byte

1.2*10-38 s/d 3.4*10+38

Universitas Sumatera Utara

2.1.5 Konstanta Dan Variabel
Konstanta dan variable merupakan sebuah tempat untuk menyimpan data yang
berada di dalam memori. Konstanta berisi data yang nilainya tetap dan tidak dapat diubah
selama program dijalankan, sedangkan variable berisi data yang bisa berubah nilainya pada
saat program dijalankan.

2.1.6 IDENTIFIER
Identifier atau nama pengenal adalah nama yang ditentukan sendiri oleh pemrogram
yang digunakan untuk menyimpan nilai, misalnya nama variable, nama konstanta, nama
suatu elemen (misalnya: nama fungsi, nama tipe data, dll).
Identifier punya ketentuan sebagai berikut :


Maksimum 32 karakter (bila lebih dari 32 karakter maka yang diperhatikan hanya
32 karakter pertama saja).



Case sensitive: membedakan huruf besar dan huruf kecilnya.



Karakter pertama harus karakter atau underscore ( _ ) . selebihnya boleh angka.



Tidak boleh mengandung spasi atau blank.



Tidak boleh menggunakan kata yang sama dengan kata kunci dan fungsi.

2.2 Mikrokontroller Atmega32
Mikrokontroler dapat dianalogikan sebagai sebuah sistem komputer yang dikemas
dalam sebuah chip, artinya di dalam sebuah IC mikrokontroler sebetulnya sudah terdapat
kebutuhan minimal agar mikroprosesor dapat bekerja, yaitu meliputi mikroprosesor, ROM,
RAM, I/O dan clock seperti halnya yang dimiliki oleh sebuah PC. Mengingat kemasannya
yang berupa sebuah chip dengan ukuran yang relatif lebih kecil, tentu saja spesifikasi dan
kemampuan yang dimiliki oleh mikrokontroller akan menjadi lebih rendah bila
dibandingkan dengan sistem komputer seperti PC baik dilihat dari segi kecepatannya. Tidak
seperti system komputer, yang mampu menangani berbagai macam program aplikasi
(misalnya pengolah kata, pengolah angka dan lain sebagainya), mikrokontroler hanya bisa
digunakan untuk satu aplikasi tertentu saja.

Universitas Sumatera Utara

Meskipun dari sebuah kemampuan lebih rendah tetapi mikrokontroller memiliki
kelebihan yang tidak bisa diperoleh pada sistem komputer yaitu,dengan kemasannya yang
kecil dan kompak membuat mikrokontroller menjadi lebih fleksibel dan praktis digunakan
terutama pada sistem-sistem yang relatif tidak terlalu kompleks atau tidak memerlukan
bahan komputasi yang tinggi.

2.2.1 Arsitektur Mikrokontroler AVR ATmega32
Mikrokontroler AVR ATmega32 merupakan CMOS dengan konsumsi daya rendah,
mempunyai 8-bit proses data (CPU) berdasarkan arsitektur AVR RISC. Dengan
mengeksekusi instruksi dalam satu (siklus) clock tunggal, ATmega32 memiliki kecepatan
data rata-rata (throughputs) mendekati 1 MIPS per MHz, yang memungkinkan perancang
sistem dapat mengoptimalkan konsumsi daya dan kecepatan pemrosesan. Berikut kelebihan
yang dimiliki ATmega32 (Aozon mengambil referensi langsung dari Atmel termasuk
datasheet yang diterbitkannya):
1. Kinerja Tinggi, Low-Power AVR® 8-bit Microcontroller
Seperti yang disebutkan Atmel dalam websitenya "The low-power Atmel 8-bit
AVR RISC-based microcontroller... The device supports throughput of 16 MIPS at
16 MHz and operates between 2.7-5.5 volts".
2. Menggunakan Arsitektur RISC
Mikrokontroler AVR memiliki arsitektur Reduced Instruction Set Computing
(RISC) atau " set instruksi Komputasi yang disederhanakan".
3. Daya Tahan Tinggi dan Segmen Memori Non-Volatile
Mikrokontroler AVR memiliki daya tahan data (retensi data) 20 tahun ketika suhu
mencapai 85°C atau 100 tahun ketika suhu mencapai 25°C.
4. Memiliki Antarmuka JTAG (IEEE std. 1149.1 Compliant)
Tidak hanya SPI, ATmega32 memiliki antarmuka JTAG yang memungkinkan
pengguna dapat memprogram Flash, EEPROM, Fuse, dan Lock Bits.
5. Memiliki Fitur Perangkat
Mikrokontroler AVR memiliki fitur tambahan yang sangat membantu kita untuk
melakukan penelitian yang lebih baik, seperti terdapat ADC, PWM dan Timer.

Universitas Sumatera Utara

6. Memiliki Fitur Tambahan
Mikrokontroler ini memiliki fitur menarik yang patut dicoba seperti 5 mode Sleep,
eksternal dan internal interupsi, dan kalibrasi RC Oscillator internal.
7. Mempunyai 32 jalur Program I/O
ATmega32 mempunyai 32 jalur Program sehingga memungkinkan kita untuk
mengontrol lebih banyak device/ perangkat, seperti Tombol/ switch, LED, buzzer
dan LCD.
8. Memiliki operasi tegangan dari 2,7 Volt sampai 5,5 Volt
ATmega32 memiliki operasi tegangan dari 2,7 Volt sampai 5,5 Volt. Ini sangat
membantu kita untuk menghemat listrik. Kecepatan maksimal bisa mencapai 16
MHz (tanpa overclock).
9. Daya yang dibutuhkan ketika aktif hanya 1,1 mA
ATmega32 membutuhkan arus yang sangat kecil dibanding komponen analog yang
biasa kita pakai. Hal ini dibuktikan dengan konsumsi daya yang dibutuhkan ketika
aktif saja hanya 1,1 mA, bahkan bisa mencapai 1 uA ketika mode power-down.
Arsitektur AVR ini menggabungkan perintah secara efektif dengan
32 register

umum.

Semua

register

tersebut

langsung

terhubung

dengan

Arithmetic Logic Unit (ALU) yang memungkinkan 2 register terpisah diproses
dengan satu perintah tunggal dalam satu clock cycle. Hal ini menghasilkan kode
yang efektif dan kecepatan prosesnya 10 kali lebih cepat dari pada mikrokontroler
CISC biasa.

Universitas Sumatera Utara

2.2.2 Konfigurasi Pin ATMega32

Gambar 2.1 Konfigurasi Pin-Pin ATMega32
Secara fungsional konfigurasi pin ATMega32 adalah sebagai berikut:
a.

VCC
- Tegangan sumber

b.

GND (Ground)
- Ground

c.

Port A (PA7 – PA0)

Port A adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin memilki
internal pull-up resistor. Output buffer port A dapat mengalirkan arus sebesar 20 mA.
Ketika port A digunakan sebagai input dan di pull-up secara langsung, maka port A akan
mengeluarkan arus jika internal pull-up resistor diaktifkan. Pin-pin dari port A memiliki
fungsi khusus yaitu dapat berfungsi sebagai channel ADC (Analog to Digital Converter)
sebesar 10 bit. Fungsi-fungsi khusus pin-pin port A dapat ditabelkan seperti yang tertera
pada tabel 2.1
Tabel 2.2 Fungsi khusus port A
Port

Alternate Function

PA7

ADC7 (ADC input channel 7)

Universitas Sumatera Utara

d.

PA6

ADC6 (ADC input channel 6)

PA5

ADC5 (ADC input channel 5)

PA4

ADC4 (ADC input channel 4)

PA3

ADC3 (ADC input channel 3)

PA2

ADC2 (ADC input channel 2)

PA1

ADC1 (ADC input channel 1)

PA0

ADC0 (ADC input channel 0)

Port B (PB7 – PB0)

Port B adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin mengandung
internal pull-up resistor. Output buffer port B dapat mengalirkan arus sebesar 20 mA.
Ketika port B digunakan sebagai input dan di pull-down secara external, port B akan
mengalirkan arus jika internal pull-up resistor diaktifkan.
Pin-pin port B memiliki fungsi-fungsi khusus, diantaranya :
1. SCK port B, bit 7
Input pin clock untuk up/downloading memory.
2.

MISO port B, bit 6
Pin output data untuk uploading memory.

3. MOSI port B, bit 5
Pin input data untuk downloading memory.
Fungsi-fungsi khusus pin-pin port B dapat ditabelkan seperti yang tertera pada tabel
2.2
Tabel 2.3 Fungsi khusus port B
Port

Alternate Function

PB7

SCK (SPI Bus Serial Clock)

PB6

MISO (SPI Bus Master Input/Slave Output)

PB6

MOSI (SPI Bus Master Output/Slave Input)

PB5

SS (SPI Slave Select Input)

PB3

AIN1 (Analog Comparator Negative Input)

Universitas Sumatera Utara

OCO (Timer/Counter0 Output Compare Match
Output)
PB2
PB1
PB0

e.

AIN0 (Analog Comparator Positive Input)
INT2 (External Interrupt 2 Input)
T1 (Timer/Counter1 External Counter Input)
T0 (Timer/Counter External Counter Input) XCK
(USART External Clock Input/Output)

Port C (PC7 – PC0)

Port C adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin memiliki
internal pull-up resistor. Output buffer port C dapat mengalirkan arus sebesar 20 mA.
Ketika port C digunakan sebagai input dan di pull-down secara langsung, maka port C akan
mengeluarkan arus jika internal pull-up resistor diaktifkan. Fungsi-fungsi khusus pin-pin
port C dapat ditabelkan seperti yang tertera pada tabel 2.3
Tabel 2.4 Fungsi khusus port C

f.

Port

Alternate Function

PC7

TOSC2 (Timer Oscillator Pin 2)

PC6

TOSC1 (Timer Oscillator Pin 1)

PC6

TD1 (JTAG Test Data In)

PC5

TD0 (JTAG Test Data Out)

PC3

TMS (JTAG Test Mode Select)

PC2

TCK (JTAG Test Clock)

PC1

SDA (Two-wire Serial Bus Data Input/Output Line)

PC0

SCL (Two-wire Serial Bus Clock Line)

Port D (PD7 – PD0)

Port D adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin memiliki
internal pull-up resistor. Output buffer port D dapat mengalirkan arus sebesar 20 mA.
Ketika port D digunakan sebagai input dan di pull-down secara langsung, maka port D akan

Universitas Sumatera Utara

mengeluarkan arus jika internal pull-up resistor diaktifkan. Fungsi-fungsi khusus pin-pin
port D dapat ditabelkan seperti yang tertera pada tabel dibawah ini.
Tabel 2.5 Fungsi khusus port D
Port
PD7
PD6
PD6

Alternate Function
OC2 (Timer / Counter2 Output Compare Match
Output)
ICP1 (Timer/Counter1 Input Capture Pin)
OCIB (Timer/Counter1 Output Compare B Match
Output)

PD5

TD0 (JTAG Test Data Out)

PD3

INT1 (External Interrupt 1 Input)

PD2

INT0 (External Interrupt 0 Input)

PD1

TXD (USART Output Pin)

PD0

RXD (USART Input Pin)

2.3 Laser
Laser adalah singkatan dari Light Amplification by Stimulated Emission of
Radiation artinya perbesaran intensitas cahaya oleh pancaran terangsang. Laser merupakan
sumber cahaya koheren yang monokromatik dan amat lurus. Koheren disini berarti semua
foton memiliki fase yang sama. Sebuah atom pada keadaan dasar menyerap foton dan
berteransisi ke tingkat eksitasi. Secara perlambang dapat dituliskan:

Atom + Foton.

Atom yang berada pada keadaan eksitasi dijatuhi foton dengan energi yang sama
dan memaksa atom tersebut berteransisi ke keadaan yang lebih rendah atau dasar sambil
memancarkan foton. Jika kita memiliki sekumpulan atom yang berada dalam keadaan
eksitasi dan jika sebuah foton melewati atom pertama akan menyebabkan pancaran
terimbas dan menghasilkan dua buah foton. Masing-masing foton ini menyebabkan
pancaran terimbas dan menghasilkan empat foton. Proses ini terus berlangsung, dengan
hasil penggandaan jumlah foton pada setiap tahap sehingga tercipta berkas foton yang kuat,

Universitas Sumatera Utara

yang semua koheren dan bergerak dalam arah yang sama.
Secara sederhana ini adalah cara kerja leser. Namun model sederhana bagi laser ini
tidak dapat bekerja karena sulit untuk mempertahankan atom pada keadaan eksitasi hingga
dirangsang memancarkan foton. Pemecahan masalah ini adalah dengan memilih atom yang
memiliki tingkat energy. Atom-atom yang berada pada keadan dasar (tingkat dasar)
dipompa ke tingkat energi tinggi oleh suatu sumber energi luar (suatu pulsa elektrik atau
sorotan cahaya). Atom-atom pada tingkat energi yang tinggi meluruh (oleh pancaran
sepontan) dengan cepat sekali ke tingkat metasetabil.
Karena pemompaan terus berlangsung menyebabkan jumlah atom pada tingkat
metastabil lebih besar daripada jumlah atom pada tingkat dasar. Bila suatu saat secara
spontan dipancarkan satu foton saja yang berenergi sama dengan selisih energi antara
tingkat metastabil dengan tingkat dasar, ia akan memicu dan mengajak atom-atom lain di
tingkat metastabil untuk kembali ke tingkat dasar. Akibatnya atom-atom itu melepaskan
foton-foton yang energi dan fasenya persis sama dengan foton yang mengajaknya tadi dan
terjadilah laser.

2.4 Photodioda
Photodioda adalah dioda yang bekerja berdasarkan intensitas cahaya, jika
photodioda terkena cahaya maka photodioda bekerja seperti dioda pada umumnya, tetapi
jika tidak mendapat cahaya maka photodioda akan berperan seperti resistor dengan nilai
tahanan yang besar sehingga arus listrik tidak dapat mengalir.

Gambar 2.2. Photodioda

Universitas Sumatera Utara

Photodioda merupakan sensor cahaya semikonduktor yang dapat mengubah besaran
cahaya menjadi besaran listrik. Photodioda merupakan sebuah dioda dengan sambungan pn yang dipengaruhi cahaya dalam kerjanya. Cahaya yang dapat dideteksi oleh photodioda
ini mulai dari cahaya infra merah, cahaya tampak, sinar-X.
Prinsip kerja, karena photodioda terbuat dari

semikonduktor p-n junction

maka cahaya yang diserap oleh photodioda akan mengakibatkan terjadinya pergeseran
foton yang akan menghasilkan pasangan electron-hole dikedua sisi dari sambungan. Ketika
elektron-elektron yang dihasilkan itu masuk ke pita konduksi maka elektron-elektron itu
akan mengalir ke arah positif sumber tegangan sedangkan hole yang dihasilkan mengalir ke
arah negatif sumber tegangan sehingga arus akan mengalir di dalam rangkaian. Besarnya
pasangan elektron ataupun hole yang dihasilkan tergantung dari besarnya intensitas cahaya
yang diserap oleh photodioda.
Photodiodes dibuat dari semikonduktor dengan bahan yang populer adalah silicon (
Si) atau galium arsenida ( GaAs), dan yang lain meliputi InSb, InAs, PbSe. Material ini
menyerap cahaya dengan karakteristik panjang gelombang mencakup: 2500 Å - 11000 Å
untuk silicon, 8000 Å – 20,000 Å untuk GaAs. Ketika sebuah photon (satu satuan energi
dalam cahaya) dari sumber cahaya diserap, hal tersebut membangkitkan suatu elektron dan
menghasilkan sepasang pembawa muatan tunggal, sebuah elektron dan sebuah hole, di
mana suatu hole adalah bagian dari kisi-kisi semikonduktor yang kehilangan elektron. Arah
Arus yang melalui sebuah semikonduktor adalah kebalikan dengan gerak muatan pembawa.
cara tersebut didalam sebuah photodiode digunakan untuk mengumpulkan photon menyebabkan pembawa muatan (seperti arus atau tegangan) mengalir/terbentuk di bagianbagian elektroda.
Sifat dari Photodioda adalah :
1.

Jika terkena cahaya maka resistansi nya berkurang

2.

Jika tidak terkena cahaya maka resistansi nya meningkat.

Universitas Sumatera Utara

2.5 SMS
SMS ( Short Message Service) adalah fasilitas yang dimiliki oleh jaringan GSM
(Global System For Mobile Comunication) yang memungkinkan pelanggan untuk
mengirimkan dan menerima pesan-pesan singkat sepanjang 160 karakter. SMS ditangani
oleh jaringan melalui suatu pusat layanan atau SMS Service Centre (SMS SC) yang
berfungsi menyimpan dan meneruskan pesan dari sisi pengirim ke sisi penerima. Format
SMS yang dipakai oleh produsen MS (Mobile Station) adalah Protocol Deskription Unit
(PDU). Format PDU akan mengubah septet kode ASCII (7bit) menjadi bentuk byte PDU (8
bit) pada saat pengiriman data dan akan diubah kembali menjadi kode ASCII pada saat
diterima oleh MS. Dibalik tampilan menu Messages pada sebuah ponsel sebenarnya
terdapat AT Command-AT Command yang bertugas mengirim/menerima data ke dan dari
SMS-Centre. AT-Command tiap-tiap SMS device bisa berbeda-beda, tetapi pada dasarnya
sama. Perintah-perintah AT Command biasanya disediakan oleh vendor alat komunikasi
yang kita beli.
AT+CMGS: untuk mengirim SMS
AT+CMGL: untuk memeriksa SMS
AT+CMGD: untuk menghapus SMS
AT Command untuk SMS biasanya diikuti oleh data I/O yang diwakili oleh unitunit PDU. Data yang mengalir ke/dari SMS-Center harus berbentuk PDU (Protocol Data
Unit). PDU berisi bilangan-bilangan heksadesimal yang mencerminkan bahasa I/O. PDU
terdiri atas beberapa Header.
Header untuk mengirim SMS-Center berbeda dengan SMS yang diterima dari SMSCenter(www.My-siemens.com). PDU untuk mengirim SMS terdiri atas delapan header,
sebagai berikut:
PDU untuk mengirim SMS terdiri atas delapan header, sebagai berikut:


Nomor SMS-Center



Tipe SMS

Universitas Sumatera Utara



Nomor Referensi SMS



Nomor Ponsel Penerima



Bentuk SMS



Skema Encoding Data I/O



Jangka Waktu Sebelum SMS Expired



Isi SMS

2.6 Buzzer
Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah
getaran listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama
dengan loudspeaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada diafragma
dan kemudian kumparan tersebut dialiri arus menjadi electromagnet, kumparan tadi akan
tertarik kedalam atau keluar, tergantung dari arah arus dan polaritas magnetnya, karena
kumparan dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan
diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan
suara.

2.7 Modem GSM Wavecome
Wavecom adalah pabrikan asal Perancis (bermarkas di kota Issy les Moulineaux,
Perancis) yaitu Wavecom SA yang berdiri sejak 1993 bermula sebagai biro konsultan
teknologi dan sistim jaringan nirkabel GSM, dan pada 1996 Wavecom mulai membuat
desain daripada modul wireless GSM pertamanya dan diresmikan pada 1997, bentuk modul
GSM pertama berbasis GSM dan pengkodean khusus yang disebut AT Command. Sulit
mencari referensi module tipe apa yang pertama dibuat oleh Wavecom SA. Modem

Universitas Sumatera Utara

Wavecom Fastrack ini di Indonesia cukup dikenal digunakan pada industri bisnis rumahan
dan bahkan skala besar – mulai dari fungsi untuk kirim SMS massal hingga fungsi sebagai
penggerak perangkat elektronik.
Beberapa fungsi kegunaan modem ini di masyarakat adalah antara lain:
1. SMS Broadcast application
2. SMS Quiz application
3. SMS Polling
4. SMS auto-reply
5. M2M integration
6. Aplikasi Server Pulsa
7. Telemetri
8. Payment Point Data
9. PPOB
10. dan sebagainya
Mengapa harus menggunakan Modem Wavecom Fastrack ketimbang Modem
GSM/HP:
 Wavecom jauh lebih stabil dibanding Modem GSM/HP
 Wavecom tidak gampang panas dibanding Modem GSM/HP
 Pengiriman SMS yang lebih cepat dibanding Modem GSM/HP (1000 s/d
1200 SMS per jam)
 Support AT Command, bisa cek sisa pulsa, cek point, cek pemakaian
terakhir, dll
 Tidak semua Modem GSM/HP support AT Command
 Tidak memakai baterai sehingga lebih praktis digunakan
 Dan masih banyak lainnya

Universitas Sumatera Utara

Gambar 2.3 : Modem Wavecom

Universitas Sumatera Utara