Selasa, 20 Oktober 2009

Aplikasi Embedded Internet pada Vending Machine Menggunakan Microprocessor Rabbit RCM3200

Aplikasi Embedded Internet pada Vending Machine Menggunakan Microprocessor Rabbit RCM3200

1. Pendahuluan
Vending Machine adalah sebuah mesin penjual
minuman yang dapat beroperasi secara
standalone untuk melayani transaksi pembelian
minuman atau makanan kecil. Vending Machine
konvensional yang beredar saat ini memiliki
beberapa kekurangan yaitu pengelola tidak dapat
mempunyai informasi secara on-line yang
sewaktu-waktu bisa diakses misalnya tentang
kondisi mesin seperti: hasil transaksi penjualan,
stok produk yang tersimpan pada mesin, kondisi
mesin pendingin dan lain-lain.
Untuk mengatasi masalah itu pada penelitian ini
dibangun sebuah model sistem embedded
pengendali vending machine yang memiliki
koneksi Internet (embedded Internet). Dengan
demikian seluruh aktifitas mesin dapat dimonitor
oleh pengelola mesin secara jarak jauh sepanjang
masih ada koneksi web Internet. Pengelola dapat
memonitor transaksi penjualan, stok produk serta
temperatur mesin pendingin. Sistem embedded
Internet saat ini sudah mulai populer
diaplikasikan pada sistem kendali, peralatan
rumah tangga, instrumentasi dan lain-lain
2. Embedded Internet Rabitcore
2.1 Mikroprosesor Rabbit 3000 [3,4]
Mikroprosesor yang akan digunakan adalah
mikroprosesor Rabbit 3000 mempunyai kemampuan
yang tinggi, low-EMI microprocessor yang
didesain secara spesifik untuk embedded control,
komunikasi, dan koneksi dengan Ethernet dan
Internet.
Buffer I/O Rabbit mempunyai batas kemampuan
arus sourcing dan sinking sebesar 6.8 mA per pin
dengan batas tegangan maksimum untuk semua
I/O adalah 5.5 V.
RCM3200 mempunyai I/O parallel sebanyak 52
buah yang dikelompokkan menjadi 7 port
(masing-masing 8 bit) yang tersedia pada header
J1 dan J2. Sebanyak 44 bidirectional I/O terletak
pada pin PA0-PA7, PB0, PB2-PB7, PD2-PD7,
PE0-PE1, PE3-PE7, PF0-PF7, dan PG0-PG7.




2.2 Dynamic C [5,6]
Dynamic C merupakan integrated development
system yang dirancang khusus untuk embedded
software (yang menggunakan bahasa pemrograman
C). Software ini didesain untuk
digunakan pada kontroler Z-World dan kontroler
lainnya yang berbasiskan mikroprosesor Rabbit.
Rabbit 2000 dan Rabbit 3000 merupakan
mikroprosesor 8 bit yang mempunyai performa
yang tinggi yang dapat menerima aplikasi bahasa
C sampai dengan 50.000 statements atau 1 MB.
Dynamic C terintegrasi dari beberapa fungsi
yaitu editing, compiling, linking, loading, dan
debugging dalam 1 program. Pada kenyataannya,
compiling, linking, loading adalah 1 fungsi. Di
dalam Dynamic C terdapat editor teks yang
mudah untuk digunakan. Program dapat
dieksekusi dan debugged secara interaktif pada
level kode mesin. Menu-menu dan keyboard
shortcut tersedia juga dalam Dynamic C. Selain
itu, bahasa assembly juga didukung oleh
Dynamic C dan dapat digunakan bersama-sama
dengan bahasa C.
Cara memprogram mikroprosesor menggunakan
Dynamic C adalah sbb :
1. Membuat listing program (baik dalam bahasa
C atau assembly ),
2. Langkah selanjutnya program di-compile agar
dapat di-download pada mikroprosesor
dengan menekan tombol F9.
2.3 Pemrograman Socket dengan PHP
Penelitian ini mencoba untuk mengaplikasikan
PHP terutama penggunaan pemrograman socket.
Socket menyediakan jalan bagi client dan server
untuk saling berkomunikasi di dalam jaringan
komputer. Socket membuat jalur end to end
communication (yang memungkinkan client
untuk mengirim request ke server dan server
menerima request tersebut dan memberikan
respon kepada client). Sebagai contoh adalah
sebuah web server melayani request client
dengan membuka sebuah socket (biasanya port
80) dan client (web browser) berkomunikasi
dengannya melalui socket tersebut. Untuk dapat
mengaktifkan fitur socket pada PHP, maka perlu
menghilangkan tanda “;” pada baris
extension=php_sockets.dll dalam file ‘php.ini’.
Beberapa fungsi yang dipakai adalah sebagai
berikut :
•Socket_create() untuk membentuk socket.
resource socket_create (int
domain, int type, int protocol)
•Socket_bind() untuk memberi nama pada
socket (mempunyai nilai balik, TRUE saat
sukses atau FALSE saat gagal).
bool socket_bind (resource socket,
string address [, int port])
•Socket_listen() untuk mendengar koneksi
pada socket (mempunyai nilai balik TRUE
saat sukses atau FALSE saat gagal).
bool socket_listen (resource
socket [, int backlog])
•Socket_accept() untuk menerima koneksi
pada socket.
resource socket_accept (resource
socket)
•Socket_close() untuk menutup socket.
void socket_close (resource
socket)
•Socket_read() untuk membaca bytes yang ada
pada socket.
string socket_read (resource
socket, int length [,int type])
•Socket_write() untuk menulis pada socket.
int socket_write (resource socket,
string buffer [, int length])
Contoh pemrograman socket dengan PHP :
$host = "192.168.12.13";
$port = 1241;
// bentuk socket
$socket = socket_create(AF_INET,
SOCK_STREAM, 0) or die("Socket gagal
dibentuk\n");
// bind socket pada port
$result = socket_bind($socket, $host,
$port) or die("Socket gagal dibind\
n");
// mulai listening
$result = socket_listen($socket, 3)
or die("Listen Gagal\n");
// terima request koneksi
// bentuk cocket lain untuk menghandle
komunikasi
while(1)
{
$spawn = socket_accept($socket) or
die("Gagal menerima koneksi\n");
// baca input dari client
$input = socket_read($spawn, 1024) or
die("Gagal membaca input\n");
echo $input;
// kirim kembali ke client
$output = "alo\n";
socket_write($spawn, $output, strlen
($output)) or die("Gagal membuat
output\n");
// tutup socket
socket_close($spawn);
}
socket_close($socket);
?>
Listing diatas menjadikan komputer dengan IP
192.168.12.13 sebagai server yang membuka
layanan pada port 1241 dan setelah menerima
input dari client, server akan mengirimkan
balasan pada client.


Resmana Lim , Lauw Lim Un Tung
Fakultas Teknologi Industri, Jurusan Teknik Elektro, Universitas Kristen Petra
Hendrawan
Alumni Fakultas Teknologi Industrin, Jurusan Teknik Elektro, Universitas Kristen Petra

ANALISA KEGAGALAN CALL DARI FLEXI KE GSM DI STO MANGGA BESAR JAKARTA PUSAT ANALISA KEGAGALAN CALL DARI FLEXI KE GSM DI STO MANGGA BESAR JAKARTA PUSAT

ANALISA KEGAGALAN CALL DARI FLEXI KE GSM DI STO MANGGA BESAR JAKARTA PUSAT
ANALISA KEGAGALAN CALL DARI FLEXI KE GSM
DI STO MANGGA BESAR JAKARTA PUSAT

Pada jurnal ini memaparkan tentang kehadiran teknologi CDMA dalam dunia telekomunikasi Rata Penuhyang mulai diperhitungkan oleh masyarakat dan para operator GSM yang selama ini menguasai pasar telekomunikasi. Salah satu contoh telepon seluler berbasis CDMA adalah Flexi yang diluncurkan oleh Telkom untuk menandingi operator GSM. Sebagai teknologi baru tentunya Telkom Flexi diluncurkan dengan banyak kelebihan antara lain kecepatan yang lebih tinggi, kualitas suara yang jernih, anti jamming dan sebagainya. Namun demikian timbul masalah baru yang harus dihadapi oleh Telkom Flexi pada saat ingin melakukan interkoneksi terhadap GSM, salah satunya adalah adanya kegagalan komunikasi (call).

Kegagalan komunikasi dari Flexi ke GSM bisa terjadi karena faktor jaringan Flexi maupun GSM, perilaku masing-masing user yang sedang berkomunikasi, dan juga sistem yang menghubungkan kedua jaringan ini. Sebagai sistem yang masih baru perencanaan jaringan yang belum sempurna mengakibatkan masih adanya daerah yang belum tercover dengan baik (blank spot), dan juga overlapping antar sel. Akibatnya timbul kegagalan call karena access failure, drop call, dan kegagalan signaling.

Kesimpulan yang dapat diambil dari jurnal ini adalah:
1. Penyebab kegagalan call dari Flexi ke GSM antara lain remote congestion (0.04%), network bloking (0.06%), system fault (0.27%), ISUP fault (1.59%), terminating busy (1.7%), terminating error (5.43%), dan originating release (33,96%).

2. Remote congestion , network bloking , system fault , ISUP fault , terminating busy , terminating error , dan originating release dapat teridentifikasi karena adanya access failure, drop call, dan signaling failure dalam jaringan.

3. Access failure, drop call, dan signaling failure terjadi karena kondisi RF yang buruk dari MS, BTS, BSC, MSC, dan Gateway antara lain daya terima MS yang rendah (kurang dari -75 dBm), daya pancar MS yang tinggi (lebih dari 20 dBm), FFER yang buruk (lebih dari 1%), nilai Ec/Io yang jelek (kurang dari -12 dB).

4. Ada 5 daerah yang mengalami masalah kegagalan call yaitu Pantai Mutiara Pluit, Pluit Raya Muara Baru, Komplek Duta Mas, Tanah Sereal, dan Pantai Ria Ancol karena kondisi RF yang buruk. Sedangkan hanya 2 daerah yang memiliki masalah RF paling kompleks adalah Pantai Mutiara Pluit dan Pantai Ria Ancol akibat letaknya yang jauh dari BTS.

5. Kondisi RF yang buruk timbul akibat daya pancar BTS yang sampai ke MS bervariasi tergantung dari kondisi lingkungan dan letak MS.


DAFTAR PUSTAKA
[1] www.stttelkom.ac.id/staf/.../Jurnal%20SNSI06-STIKOM%20BALI.doc
posting by Rinalto Hutabarat (41407010008) 0 comment
Pengaruh Ketidakseimbangan Beban Terhadap Arus Netral dan Losses pada Trafo Distribusi
Pengaruh Ketidakseimbangan Beban Terhadap Arus Netral
dan Losses pada Trafo Distribusi

Julius Sentosa Setiadji1, Tabrani Machmudsyah2, Yanuar Isnanto1
1Fakultas Teknologi Industri, Jurusan Teknik Elektro, Universitas Kristen Petra
Jl. Siwalankerto 121-131, Surabaya
2PT. PLN(Persero) Distribusi Jawa Timur
Email: julius@petra.ac.id


ABSTRAK

Ketidakseimbangan beban pada suatu sistem distribusi tenaga listrik selalu terjadi dan penyebab ketidakseimbangan tersebut
adalah pada beban-beban satu fasa pada pelanggan jaringan tegangan rendah. Akibat ketidakseimbangan beban tersebut
muncullah arus di netral trafo. Arus yang mengalir di netral trafo ini menyebabkan terjadinya losses (rugi-rugi), yaitu losses
akibat adanya arus netral pada penghantar netral trafo dan losses akibat arus netral yang mengalir ke tanah. Setelah dianalisa,
diperoleh bahwa bila terjadi ketidakseimbangan beban yang besar (28,67%), maka arus netral yang muncul juga besar
(118,6A), dan losses akibat arus netral yang mengalir ke tanah semakin besar pula (8.62%).

Dewasa ini Indonesia sedang melaksanakan pembangunan di segala bidang. Seiring dengan laju pertumbuhan pembangunan maka dituntut adanya sarana dan prasarana yang mendukungnya seperti tersedianya tenaga listrik. Saat ini tenaga listrik merupakan kebutuhan yang utama, baik untuk kehidupan sehari-hari maupun untuk kebutuhan industri. Hal ini disebabkan karena tenaga listrik mudah untuk ditransportasikan dan dikonversikan ke dalam bentuk tenaga yang lain. Penyediaan tenaga listrik yang stabil dan kontinyu merupakan syarat mutlak yang harus dipenuhi dalam memenuhi
kebutuhan tenaga listrik
Dalam memenuhi kebutuhan tenaga listrik tersebut, terjadi pembagian beban-beban yang pada awalnya merata tetapi karena ketidakserempakan waktu penyalaan beban-beban tersebut maka menimbulkan ketidakseimbangan beban yang berdampak pada penyediaan tenaga listrik. Ketidakseimbangan beban antara tiap-tiap fasa (fasa R, fasa S, dan fasa T) inilah yang menyebabkan mengalirnya arus di netral trafo

TEORI TRANSFORMATOR
Transformator merupakan suatu alat listrik yang mengubah tegangan arus bolak-balik dari satu tingkat ke tingkat yang lain melalui suatu gandengan magnet dan berdasarkan prinsip-prinsip induksi-elektromag-net. Transformator terdiri atas sebuah inti, yang terbuat dari besi berlapis dan dua buah kumparan, yaitu kumparan primer dan kumparan sekunder.
Penggunaan transformator yang sederhana dan handal memungkinkan dipilihnya tegangan yang sesuai dan ekonomis untuk tiap-tiap keperluan serta merupakan salah satu sebab penting bahwa arus bolak-balik sangat banyak dipergunakan untuk pembangkitan dan
penyaluran tenaga listrik.
Prinsip kerja transformator adalah berdasarkan hukum Ampere dan hukum Faraday, yaitu: arus listrik dapat menimbulkan medan magnet dan sebaliknya medan magnet dapat menimbulkan arus listrik. Jika pada salah satu kumparan pada trans-formator diberi arus bolak-balik maka jumlah garis gaya magnet berubah-ubah. Akibatnya pada sisi
primer terjadi induksi. Sisi sekunder menerima garis gaya magnet dari sisi primer yang jumlahnya berubah-ubah pula. Maka di sisi sekunder juga timbul induksi, akibatnya antara dua ujung terdapat beda tegangan.
Penggunaan transformator yang sederhana dan handal memungkinkan dipilihnya tegangan yang sesuai dan ekonomis untuk tiap-tiap keperluan serta merupakan salah satu sebab penting bahwa arus bolak-balik sangat banyak dipergunakan untuk pembangkitan dan
penyaluran tenaga listrik.

KESIMPULAN
Prinsip kerja transformator adalah berdasarkan hukum Ampere dan hukum Faraday, yaitu: arus listrik dapat menimbulkan medan magnet dan sebaliknya medan magnet dapat menimbulkan arus listrik. Jika pada salah satu kumparan pada trans-formator diberi arus bolak-balik maka jumlah garis gaya magnet berubah-ubah. Akibatnya pada sisi primer terjadi induksi. Sisi sekunder menerima garis gaya magnet dari sisi primer yang jumlahnya berubah-ubah pula. Maka di sisi sekunder juga timbul induksi, akibatnya antara dua ujung terdapat beda tegangan.



[1] Sulasno, Ir., Teknik Tenaga Listrik, Semarang :Satya Wacana, 1991.
[2] Abdul Kadir, Distribusi dan Utilisasi Tenaga
[3] Zuhal, Dasar Tenaga Listrik, Bandung: ITB, Listrik, Jakarta: UI - Press, 2000.
[4] Persyaratan Umum Instalasi Listrik 2000 (PUIL)
[5] Abdul Kadir, Transformator, Jakarta: PT. Elex 2000), Jakarta: Badan Standarisasi Nasional, 2000.

PERANCANGAN SISTEM PENGENDALI PERALATAN MENGGUNAKAN TEGANGAN JALA-JALA LISTRIK PERANCANGAN SISTEM PENGENDALI PERALATAN MENGGUNAKAN TEGANGAN JALA-JALA LISTRIK

PERANCANGAN SISTEM PENGENDALI PERALATAN MENGGUNAKAN TEGANGAN JALA-JALA LISTRIK
PERANCANGAN SISTEM PENGENDALI PERALATAN
MENGGUNAKAN TEGANGAN JALA-JALA LISTRIK

-------
1Teknik Elektro, Fakultas Teknik dan Sains, Universitas Nasional, Jl. Sawo Manila No.61 Pejaten, Pasar Minggu Jakarta Selatan 12520
Lembaga Ilmu Pengetahuan Indoneia
E-mail:



Abstrak
- Pada tugas akhir ini, penulis merancang sistem pengendalian peralatan menggunakan tegangan jala-jala listrik. Sistem pengontrol ini dirancang dengan mode dapat menghidup/matikan peralatan secara langsung dan komunikasi antar mikrokontroler perancangan system ini diharapkan dapat lebih memudahkan mengontrol peralatan elektronik, dapat lebih meningkatkan efisiensi pemakaian energi listrik


Pendahuluan
Peralatan elektronik pada saat ini semakin banyak digunakan dalam industri. Untuk bangunan yang besar dan bertingkat, atau untuk industri yang besar, mengontrol peralatan elektronik yang banyak tentu akan menyulitkan. Untuk mengatasi masalah tersebut, dibutuhkan suatu pengontrol otomatis yang dapat mengontrol peralatan elektronik secara keseluruhan dari jarak jauh.
Otomatisasi dari suatu sistem telah menjadi kebutuhan yang makin diperlukan saat ini. Dengan adanya otomatisasi maka segala proses yang berjalan pada suatu system itu akan menjadi lebih mudah dilaksanakan dan lebih teliti lagi hasilnya. Adapun pengadaan otomatisasi tersebut diharapkan tidak terlalu membutuhkan biaya yang terlalu besar.
Berdasarkan hal-hal tersebut diatas, dirancang direalisasikan suatu sistem pengontrol, yang dapat menghidup/mematikan suatu peralatan yang menggunakan listrik sebagai sumber tenaganya dengan pengiriman sinyal pengontrol melalui media kabel jala-jala listrik itu sendiri. Sistem pengontrol ini dirancang dengan mode dapat menghidup/matikan peralatan secara langsung dan komunikasi antar mikrokontroler perancangan system ini diharapkan dapat lebih memudahkan mengontrol peralatan elektronik, dapat lebih meningkatkan efisiensi pemakaian energi listrik.


Metode Penelitian
Sistem ini terdiri dari pengontrol utama ( Master Controller ) dan pengontrol sekunder ( Slave Controller ) yang langsung terhubung ke beberapa titik beban (point). masing-masing pengontrol berbasis Mikrokontroler.

Master Control
Rangkaian pada Master Control terdiri dari dua bagian, yaitu Mikrokontroler sebagai pengolah input dari operator kemudian menghasilkan sinyal kontrol sebagai sinyal pemodulasi dan rangkaian transceiver yang berfungsi sebagai penghubung antara mikrokontroler dan media transmisi jala-jala listrik.

Tranceiver
Rangkaian Transceiver terdiri dari 2 bagian, yaitu rangkaian transmitter dan rangkaian receiver yang bekerja secara bergantian dikendalikan oleh mikrokontroler.

Rangkaian transmitter
Rangkaian transmitter terdiri dari berbagai komponen utama, yaitu :
Rangkaian Regulator Tegangan
Rangkaian Regulator berfungsi untuk menstabilkan tegangan, yaitu sebagai catu daya. Tegangan AC 220V yang masuk ketrafo melalui lilitan primer , menimbulkan induksi tegangan pada lilitan sekunder, namun tegangannya masih merupakan tegangan AC. Dengan memasangkan 2 buah dioda D1 dan D2, yang dipasang forward bias pada masing-masing output lilitan sekunder, maka tiap-tiap dioda akan melewatkan gelombang siklus positif dan menahan gelombang siklus negatif yang diterimanya.

Untuk membuat regulator tegangan 5V pada rangkaian mikrokontroler digunakan IC LM-78L05 CZ, dan pada tegangan input, dari lilitan sekunder diambil tegangan sebesar 8 - 12VAC. Sedangkan untuk regulator tegangan 12V pada pemancar di sisi master control dan penerima disisi slave control digunakan IC LM-78L12 CZ, dan pada tegangan input, dari lilitan sekunder trafo diambil tegangan sebesar 16 – 22 VAC.:

Rangkaian VCO (Voltage Control Oscillator)
Rangkaian VCO (Voltage Control Oscillator) atau osilator terkendali adalah suatu rangkaian yang berfungsi menghasilkan gelombang output AC, biasanya gelombang kotak atau persegi, dimana frekuensi yang dihasilkan tergantung kepada tegangan input yang diberikan kepadanya. Untuk membuat rangkaian VCO digunakan IC LM-566 CN.

Rangkaian Receiver
Rangkaian receiver yang berfungsi untuk mendeteksi sinyal frekuensi termodulasi yang ditumpangkan pada jalur netral dari jaringan listrik, kemudian mendemodulasi atau memisahkan gelombang pembawa dengan sinyal data, untuk kemudian diolah dalam bentuk digital oleh mikrokontroler. Rangkaian Receiver terdiri dari beberapa rangkaian pendukung, salah satunya sama dengan rangkaian transmitter, yaitu rangkaian regulator tegangan.

Rangkaian Penyeimbang Impedansi
Rangkaian ini berfungsi untuk menyesuaikan antara impedansi output yang tinggi pada jala-jala listrik dengan impedansi yang rendah pada rangkaian receiver.

Rangkaian Penguat
Pada rangkaian ini diharapkan suatu tegangan panjar Vi sebesar 4,5 Volt , dimana output dari rangkaian pengkopel trafo diumpankan kebasis dari rangkaian penguat ini, dimana output dari rangkaian penguat ini adalah 6 volt sampai 7 Volt.

Rangkaian Phase Locked Loop (PLL)
Phase Locked Loop (PLL) adalah loop umpan balik dengan detector fasa, sebuah low pass filter, sebuah penguat DC dan sebuah Voltage Control oscillator (VCO). Daripada memberikan kembali tegangan dan membandingkan dengan input, PLL memberikan kembali frekuensi ke detector fasa, dan membandingkan dengan frekuensi yang datang. Hal ini memungkinkan VCO mengunci, sama dengan frekuensi yang masuk.

Slave Control
Sama seperti pada rangkaian Master Control, pada Slave Control juga terdiri dari dua bagian, yaitu Mikrokontroler sebagai pengolah sinyal kontrol kemudian mengontrol beberapa beban dan rangkaian transceiver yang berfungsi sebagai penghubung antara mikrokontroler dan media transmisi jala-jala listrik.
Rangkaian transceiver terdiri dari 2 bagian yaitu rangkaian receiver yang berfungsi untuk mendeteksi sinyal data yang dikirim oleh master control melalui jalur netral pada jaringan listrik, kemudian mendemodulasi atau memisahkan gelombang pembawa dengan sinyal data, untuk kemudian diolah oleh mikrokontroler dan rangkaian trasmitter yang berfungsi mengirim sinyal umpan balik ,menghasilkan gelombang pembawa (carrier) sebesar 200 KHz yang kemudian dimodulasi menggunakan sinyal dari rangkaian mikrokontroler, lalu ditumpangkan pada alur netral dari jaringan listrik.




Kesimpulan
Penggunaan sistem ini dapat memudahkan pengontrolan suatu peralatan listrik sebagai beban, karena dapat mengontrol dari jarak yang jauh, selama peralatan listrik tersebut masih berada dalam satu gardu listrik bertegangan 220 VAC dengan master control. Sistem tidak memerlukan suatu saluran transmisi khusus karena menggunakan kabel jala-jala listrik yang ada sebagai sumber daya sekaligus saluran transmisi. Penggunaan mikrokontroler AT89C51 sangat menguntungkan karena dapat lebih menyederhanakan rangkaian, yang secara otomatis menghemat biaya komponen, dan juga memudahkan dalam pembuatan layout rangkaian

Dafar Pustaka
1. Paulus Andi Nalwan, Teknik Antarmuka dan Pemrograman, Elex Media Komputido, Jakarta, 2003
2. Afgianto Eko Putro, Belajar Mikrokontroler AT89C51/52/53 Teori dan Aplikasi, Gaya Media, Yogyakarta, 2002
3. Albert Paul Malvino Ph.d, Hanafi Gunawan, Prinsip-prinsip Elektronika, Erlangga, Jakarta, 1986
4. Wasito S, Vademekum Elektronika Edisi Kedua, Gramedia Pustaka Umum, Jakarta, 2001
5. Muhammad H. Rashid, Elektronika Daya, Rangkaian, Devais dan aplikasinya, Prehalindo, Jkarta, 1999
6. Zuhal, Dasar Teknik Tenaga Listrik dan Elektronika Daya, Gramedia Pustaka Utama, Jakarta, 1993

Sistem Pengenalan Plat Nomor Mobil Dengan Metode Principal Components Analysis

Sistem Pengenalan Plat Nomor Mobil Dengan Metode Principal Components Analysis

Paper ini membahas sistem pengenalan plat nomor mobil menggunakan teknik computer vision. Image mobil diambil dari kamera, dan selanjutnya diidentifikasi secara otomatis dengan cara mencari lokasi plat nomor mobil tersebut, mensegmentasi setiap karakter yang ada dari plat tersebut dan kemudian melakukan pengenalan pada setiap karakter dengan metode feature reduction PCA. Aplikasi ini dibangun menggunakan Microsoft Visual C++ 6.0®, Microsoft® DirectShow®, Intel® Image Processing Library dan Open Source Computer Vision Library. Aplikasi ini telah diimplementasikan dan dapat mendeteksi letak plat nomor serta mengenalinya pada PC Pentium II/400 MHz. Sistem telah diujicobakan pada suatu basis data yang mewakili 26 karakter (0-9, A-Z) yang masing-masing terdiri dari beberapa variasi gambar mobil. Hasil uji coba menunjukkan tingkat keberhasilan yang cukup menggembirakan, dimana tingkat keberhasilan mencapai ±82%. Sistem cukup prospektif digunakan sebagai salah satu sistem kontrol dan sekuriti pada area parkir.

Deskripsi Sistem

Sistem deteksi dan pengenalan plat nomor kendaraan bermotor secara otomatis telah menjadi suatu aplikasi yang sangat penting dalam bidang computer vision. Sistem ini dibagi menjadi menjadi empat bagian modul yaitu video capturing, database training, plate detection, dan character recognition.



Gambar Blok Diagram Sistem


1. Video Capturing – DirectShow Process

Modul ini bertujuan untuk melakukan pengambilan gambar yang berasal dari kamera atau dari file video. Dalam proses ini terdiri dari dua sub program, yang pertama adalah proses untuk menerima input baik dari kamera atau dari file video dan yang kedua adalah proses untuk melakukan pengambilan gambar (grabbing) dari input tersebut. Kedua proses tersebut menggunakan fasilitas library yang telah disediakan oleh Microsoft® DirectShow®. Penggunaan library ini sangat bermanfaat karena proses input dapat berlangsung secara realtime.

Program aplikasi DirectShow yang dibuat dalam sistem ini, berdasarkan sumber inputnya (source filter) secara garis besar dapat dibagi menjadi dua bagian, yaitu: input dari file berupa AVIFile, dan input dari kamera. Bagian input AVIFile dibangun dengan pendekatan pertama, sedangkan bagian input kamera dibangun dengan menggunakan pendekatan ketiga. Kedua bagian ini secara garis besar memiliki prosedur utama yang hampir sama. Berikut diagram alir dari bagian input :


Gambar Proses Input Kamera


2. Database Training – PCA Algorithm

Bagian ini adalah proses untuk melakukan proses training PCA pada kumpulan image database. Dimana database ini berupa sekumpulan gambar karakter alphanumeric yang terdiri dari beberapa macam variasi untuk masing-masing karakternya (0-9 dan A-Z). Database yang digunakan sebanyak ± 600 gambar. Dalam modul training ini dihasilkan output berupa Eigen Object dan Average Object serta bobot masing masing karakter yang terdapat dalam database, hasil bobot ini disimpan ke dalam suatu list array. Principal Components Analysis (PCA)[1] digunakan untuk mereduksi dimensi image menjadi feature yang lebih sedikit. Ini dilakukan dengan mentransformasi ruang image kedalam basis atau sistem koordinat yang baru dengan representasi yang lebih kompak. Basis-basis image didapatkan dari sekumpulan karakterkarakter yang dilatihkan (training alphanumeric). Feature yang baru tersebut akan dibentuk melalui kombinasi bobot linear dalam ruang eigen (basis image). Komponen dari feature ruang eigen ini tidak saling berkorelasi dan akan memaksimalkan perbedaan yang ada di dalam ruang aslinya.

Maksud dari Principal Components Analysis adalah untuk menangkap variasi total di dalam kumpulan karakter yang dilatihkan, dan untuk merepresentasikan variasi ini dengan variable yang lebih sedikit. Suatu image yang direpresentasikan dengan variabel yang sedikit akan lebih mudah untuk ditangani dan dimengerti daripada jika direpresentasikan dengan raw pixel yang banyak dari image tersebut.


3. Plate Finder Algorithm

Berikut ini adalah proses diagram alir secara sederhana dari algoritma Plate Finder:



Gambar Diagram Pendeteksian Plat Nomor

Pada bagian ini, sistem akan menggunakan gambar yang dihasilkan pada proses capture dari kamera atau gambar dari input user. Gambar ini kemudian di konversi dari gambar berwarna menjadi gambar grayscale. Selanjutnya dilakukan proses thresholding pada gambar grayscale tersebut menghasilkan gambar biner (hitam dan putih saja).

Tahap selanjutnya adalah mencari kandidat angka/digit pada gambar biner ini (Digit Location). Semua kemungkinan objek yang berupa alphanumeric dari gambar akan dicari pada tahap digit location ini. Algoritma ini akan mencari pada setiap pixel yang terdapat pada gambar dan melakukan pengecekan pada setiap iterasi dengan menggunakan sejumlah aturan, dimana apakah terdapat sebuah kandidat digit pada posisi pixel yang bersangkutan. Proses ini terdiri dari dua langkah, yaitu:

3.1. Adaptive size bounding box searching

Proses ini dibagi lagi menjadi tiga tahap:

* Sebuah model yang berbentuk “L” terbalik akan digerakkan pada gambar. Model “L” terbalik ini memiliki tinggi 20 pixel dan lebar 12 pixel. Nilai ini didapat dari hasil rata-rata setiap gambar kendaraan yang ada. Pada setiap posisi pixel beberapa hal berikut dilakukan:

(a) Jika tidak terdapat pixel (putih) pada posisi garis vertikal atau horisontal dari model “L” yang terbalik, maka tidak ada digit yang terdeteksi pada posisi ini.

(b) Jika terdapat pixel (putih) tepat pada posisi atas dan kiri dari model “L”, maka berarti ada terdeksi digit pada posisi ini. Jika suatu posisi memenuhi kondisi ini maka dapat diartikan bahwa telah ditemukan posisi pojok kiri atas dari suatu digit. Dibawah ini adalah visualisasi cara kerja dari model “L” terbalik:


Gambar Deteksi Karakter

* Garis vertikal yang kedua digerakkan, untuk tiap pixel demi pixel, ke arah kanan, dari posisi terakhir yang ditemukan pada tahap sebelumnya. Garis vertikal ini digerakkan hingga tidak ditemukan satu pixel putih pun sepanjang garis vertikal ini. Dalam hal ini panjang dari kandidat digit yang ditemukan dihitung, dan apabila panjang dari kandidat digit ini melebihi batas rata-rata dari suatu digit, maka posisi akan didiskualifikasi.

* Pada tahap ini, garis horisontal yang kedua dengan panjang yang telah ditemukan pada tahap sebelumnya, digerakkan ke bawah hingga tidak ditemukan satu pixel putih pun sepanjang garis horisontal ini. Jika tinggi dari kandidat digit ini memenuhi kondisi tinggi rata-rata suatu digit, maka proses dapat melanjutkan pada tahap selanjutnya, jika tidak maka proses akan kembali pada tahap yang pertama.

3.2 Pixel Coverage Checking

Setelah posisi suatu kandidat digit ditemukan maka, nilai semua pixel putih yang terdapat pada posisi ini akan dihitung semua. Jika nilai pixel memenuhi kondisi maka posisi ini akan disimpan sebagai kandidat karakter, jika tidak memenuhi akan didiskualifikasi. Tujuan dari proses ini adalah untuk menghilangkan suatu kandidat yang terlalu besar atau terlalu kecil.

Setelah semua kandidat digit ditemukan maka selanjutnya adalah mencari lokasi kandidat plat nomor kendaraan (Plate Area Location). Logika pada bagian ini adalah menggunakan posisi objek karakter yang ditemukan pada bagian sebelumnya untuk menentukan letak plat nomor. Langkah pertama adalah membangun suatu model yang berbentuk persegi panjang (plate bounding box). Panjang dan lebar model ini telah diatur berdasarkan rata-rata dari image kendaraan yang ada (lebar 120 pixel dan tinggi 33 pixel). Model ini akan digerakkan mulai dari posisi kandidat digit pertama yang ditemukan pada tahap sebelumnya hingga pada posisi terakhir kandidat digit yang ditemukan. Berikut ini adalah visualisasi dari model persegi panjang yang digunakan untuk mencari lokasi plat.


Gambar Lokalisasi Karakter

Pada setiap iterasi akan dilakukan pengecekan apakah pada daerah sekitar model persegi panjang ini terdapat berapa banyak kandidat digit. Kandidat digit yang ada harus terdiri dari minimal tiga atau maksimal delapan digit. Hal ini diasumsikan bahwa plat nomor standart yang ada di negara kita memiliki kondisi yang demikian. Selain dilakukan pengecekan banyaknya kandidat digit, juga dilakukan pengecekan terhadap posisi dari masing masing kandidat digit tersebut. Hal ini dilakukan sebagai pencegahan terhadap pengambilan kandidat digit yang salah. Apabila posisi teratas antara kandidat digit yang satu dengan yang lain terpaut sangat jauh, maka posisi kandidat ini akan didiskualifikasi. Posisi model persegi panjang yang dapat diterima adalah posisi dimana terdapat kandidat digit yang lebih dari dua dan kurang dari sembilan, serta memiliki posisi yang tingginya tidak terpaut jauh antara satu dengan yang lainnya. Posisi yang benar akan disimpan dalam suatu list array.

Setelah semua kandidat plat nomor ditemukan, maka selanjutnya adalah mencari lokasi sebenarnya dari kandidat-kandidat plat nomor yang ditemukan pada tahap sebelumnya (Final Plate Location). Pada tahap ini akan melakukan iterasi terhadap seluruh kandidat plat nomor yang ditemukan pada tahap sebelumnya. Umumnya setelah memasuki tahap terakhir ini kandidat plat nomor yang ada sering menghasilkan satu kandidat saja. Dan apabila kandidat plat nomor yang dihasilkan ternyata lebih dari satu, maka plat nomor yang dipilih adalah kandidat yang memiliki posisi paling bawah pada image. Pada lokasi yang ditemukan tersebut kemudian dilakukan proses cropping. Hasil dari cropping tersebut disimpan ke dalam sebuah file yang digunakan lebih lanjut untuk proses pengenalan.



4. Character Recognition: dengan Nearest Neighbour Classifier

Pada tahap akhir ini, image plat nomor yang ditemukan akan dilakukan segmentasi karakter terlebih dahulu. Proses segmentasi karakter dilakukan untuk mengekstraksi masing masing karakter yang terdapat pada plat nomor. Pada tahap ini algoritma yang dilakukan adalah menggunakan metode seperti pada modul deteksi letak plat nomor tetapi dengan melakukan perubahan pada algoritmanya. Perubahan yang dilakukan adalah apabila model “L” terbalik telah menemukan kandidat digit, maka pada setiap posisi tersebut dilakukan proses cropping dan dilakukan proses resize pada kandidat digit ini. Proses resize ini bertujuan agar semua karakter yang akan dikenali memiliki ukuran yang sama. Resize dilakukan dengan ukuran 20 pixel untuk lebar dan 30 pixel untuk tingginya (disesuaikan dengan data image pada database). Hasil cropping tersebut disimpan kedalam list. Pada bagian ini apabila terdapat kandidat digit yang saling berhubungan kemungkinan akan dapat terektraksi bersama. Setelah proses cropping selesai maka dilanjutkan pada proses selanjutnya, yaitu pengenalan karakter menggunakan Nearest Neighbour Classifier .


Open Source Computer Vision (OpenCV)

Implementasi sistem yang dikerjakan disini menggunakan platform Windows dengan bahasa pemrograman Visual C++. Di sini digunakan library perangkat lunak Open Source Computer Vision (OpenCV). OpenCV mulai dikembangkan sejak tahun 1999 oleh Visual Interactivity Group didalam Intel's Microprocessor Research Lab [4]. Proyek ini dibuat dengan tujuan untuk mendirikan sebuah komunitas open source vision dan menyediakan sebuah situs dimana usaha terdistribusi dari komunitas dapat dikonsolidasikan dan performance-nya dapat dioptimalkan. Library ini ditujukan untuk digunakan oleh peneliti dan pengembang software komersial. Open Source Computer Vision Library dibuat berdasarkan fungsi-fungsi dasar yang terdapat pada Intel Performance Library. Keunggulan library ini adalah semua fungsi-fungsinya telah dioptimasi untuk prossesor Intel sehingga dapat berjalan jauh lebih cepat.


Sumber : http://puslit2.petra.ac.id/ejournal/index.php/elk/article/viewFile/15866/15858

SISTEM PENGATURAN AC OTOMATIS

Rangkuman jurnal
SISTEM PENGATURAN AC OTOMATIS

Handry Khoswanto, Felix Pasila, Wahyu Eka Cahyadi
Fakultas Teknologi Industri, Jurusan Teknik Elektro, Universitas Kristen Petra
Email : handry@petra.ac.id, felix@petra.ac.id
Abstrak
Penggunaan hardware pengatur AC otomatis dengan sensor penghitung orang ini bertujuan agar dapat mengontrol temperature, submode fan, on/off berdasarkan banyaknya individu yang dideteksi sensor penghitung orang. Apabila jumlah individu yang dideteksi kosong dalam ruangan maka AC otomatis akan mati. Dengan adanya pengatur temperatur AC otomatis ini maka diharapkan dapat mengurangi biaya pemakaian daya listrik yang tidak efisien. Dari hasil pengujian, sistem ini dapat bekerja dengan baik apabila diberi input sensor dengan range 0 sampai 255, dan pada temperatur 16 derajat sampai 30 derajat. Error terjadi apabila ada input data yang tidak sesuai dengan procedure data AC yang di- cloning dan terdapat dua atau tiga orang yang masuk atau keluar secara bersamaan.
Pengatur AC otomatis dengan sensor penghitung orang adalah alat kontrol untuk mengatur temperatur atau suhu, sehingga perubahan temperatur atau suhu akan berubah secara otomatis berdasarkan jumlah banyaknya individu yang keluar dan yang masuk dalam ruangan yang dideteksi dengan sensor penghitung orang menggunakan counter maju dan counter mundur, serta menggunakan mikrokontroler ATMEL keluarga MCS51, untuk mengontrolnya.
Pada perancangan hardware pengatur temperatur AC otomatis input sensor penghitung orang di sini, terbagi menjadi beberapa bagian yaitu:
• Mikrokontroler Atmel AT89C2051
• LCD
• Serial EEPROM AT24C02
• Key pad button
• Rangkaian transmiter untuk remote
• Rangkaian power supply
• Rangkaian sensor penghitung orang
Kesimpulan
1. Proses pengambilan data remote pada AC yang akan dikontrol fungsinya dapat dilakukan dengan menggunakan dengan membaca besar pulsa yang dihasilkan oleh tiap tombol pada remote yang akan di kontrol.
2. Sinyal yang dihasilkan atau dikeluarkan oleh remote mempunyai beberapa kondisi, yaitu kondisi start sinyal (sebesar ±3,5ms), kondisi idle atau ‘o’ (sebesar ±1ms), kondisi sinyal carrier (sebesar ±2,5ms).
3. Sensor penghitung orang yang dipasang untuk mendeteksi jumlah orang yang masuk dan yang keluar harus dipasang secara sejajar, agar tidak terjadi error dalam pengenalan oleh sensor penghitung orang.
4. Tingkat keberhasilan dari kerja rangkaian pengatur temperatur AC ini, dapat dilihat dari perbandingan data yang dikeluarkan antara remote AC yang dikontrol dengan rangkaian pengatur AC otomatis yang telah dibuat.
5. Kelemahan dari hardware ini terletak pada sensor penghitung orang, dimana pada sensor penghitung orang tersebut hanya dapat mendeteksi orang yang lewat secara satu
persatu, sehingga kalau seandainya ada dua orang yang lewat secara bersamaan maka
sensor penghitung orang mengenali hanya satu orang yang melewati sensor penghitung
orang tersebut.