Monday, 27 April 2015

Sensor Ultasonic

Pengertian Sensor Jarak Ultrasonik PING
Sensor jarak ultrasonik PING adalah sensor 40 KHz produksi parallax yang banyak digunakan untuk aplikasi atau kontes robot cerdas untuk mendeteksi jarak suatu objek.
Sensor PING mendeteksi jarak objek dengan cara memancarkan gelombang ultrasonik ( 40 KHz ) selama t = 200 us kemudian mendeteksi pantulannya. Sensor PING memancarkan gelombang ultrasonik sesuai dengan kontrol dari mikrokontroller pengendali ( pulsa trigger dengan tout min 2 us ). Spesifikasi sensor ini :
a. Kisaran pengukuran 3cm-3m.
b. Input trigger –positive TTL pulse, 2uS min., 5uS tipikal.
c. Echo hold off 750uS dari fall of trigger pulse.
d. Delay before next measurement 200uS.
e. Burst indicator LED menampilkan aktifitas sensor.

Prinsip Kerja Sensor PING 
Pada dasanya, Sensor PING terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya. Sensor PING mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik (40 kHz) selama tBURST (200 μs) kemudian mendeteksi pantulannya. Sensor PING memancarkan gelombang ultrasonik sesuai dengan kontrol dari mikrokontroler pengendali (pulsa trigger dengan tOUT min. 2 μs).
Gelombang ultrasonik ini melalui udara dengan kecepatan 344 meter per detik, mengenai obyek dan memantul kembali ke sensor. PING mengeluarkan pulsa output high pada pin SIG setelah memancarkan gelombang ultrasonik dan setelah gelombang pantulan terdeteksi PING akan membuat output low pada pin SIG. Lebar pulsa High (tIN) akan sesuai dengan lama waktu tempuh gelombang ultrasonik untuk 2x jarak ukur dengan obyek. Maka jarak yang diukur adalah 
S = (tIN x V) ÷ 2
Dimana :
S = Jarak antara sensor ultrasonik dengan objek yang dideteksi
V = Cepat rambat gelombang ultrasonik di udara (344 m/s)
tIN = Selisih waktu pemancaran dan penerimaan pantulan gelombang.


Daftar Pustaka
http://kuliah.andifajar.com/sensor-ultrasonic/
http://parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf
http://repository.usu.ac.id/bitstream/123456789/29570/4/Chapter%20II.pdf
http://yakuzanet.wordpress.com/

Saturday, 18 April 2015

Keamanan Pada Sistem Terdistribusi

Ada empat bidang keamanan dalam sistem terdistribusi yaitu:

1. Ancaman Keamanan.

Beberapa ancama yang dapat mengancam suatu sistem adalah leakcage(pengambilan informasi oleh penerima yang tidak berhak), Tampering(pengubahan informasi yang tidak legal), Vandalism(gangguan operasi sistem tertentu, dimana pelaku tidak mengharapkan keuntungan apapun)
Ada beberapa kemungkinan serangan yang dapat dilakukan oleh pihak lain diantaranya adalah :

Intrusion : penyerangan jenis ini seseorang penyerang akan dapat menggunakan sistem komputer yang kita miliki.

Denail of services : penyerangan ini mengakibatkan pengguna yang sah tidak dapat mengakses sistem.
Joyrider : penyerangan jenis ini disebabkan oleh orang yang merasa iseng dan ingin memperoleh kesenangan dengan cara menyerang suatu sistem.
Vandal : jenis serangan ini bertujuan untuk merusak sistem yang sering dituju untuk site-site besar.
Scorekeeper: jenis serangan ini hanyalah bertujuan untuk mendapatkan reputasi dengan cara mengacak-acak system sebanyak mungkin.
Mata-mata : jenis serangan ini bertujuan untuk memperoleh data atau informsi rahasia dari pihak pesaing. Tujuan utama adanya sistem keamanan adalah untuk membatasi akses informasi dan resources hanya untuk pemakai yang memiliki hak.

2. Akses Control. 

Aspek ini berhubungan dengan cara pengaturan akses kepada informasi. Dalam interaksi sederhana client-server ,server membatasi akses ke sumber daya. Teknik-teknik standar untuk melakukan hal ini adalah Access Control Matrix, Capabilities, dan Labels

3. Otentikasi.

Otentikasi berhubungan dengan metode untuk menyatakan bahwa informasi betul-betul asli, orang yang mengakses atau memberikan informasi adalah betul-betul orang yang dimaksud, atau server yang kita hubungi adalah betul-betul server yang asli.

Otentikasi server penting tidak hanya karena ancaman terhadap penyadapan aktif atau lebih dikenal dengan trojan horse tetapi juga karena banyak pengikat RPC hanya menawarkan petunjuk dimana layanan ini berada. Jika crash dapat digantikan oleh yang lain,server yang sama sekali berbeda, tetapi client perlu mengetahui ketidaksesuaian ini sehingga pengikat RPC bisa memeriksa kembali.

4. Non repudiation.
Aspek ini menjaga agar seseorang tidak dapat menyangkal telah melakukan sebuah transaksi. Sebagai contoh, seseorang yang mengirimkan e-mail untuk memesan barang tidak dapat menyangkal bahwa dia telah mengirimkan e-mail tersebut. Aspek ini sangat penting dalam hal electronic commerce Penggunaan digital signature, certifiates, dan teknologi kriptografi secara umum dapat menjaga aspek ini.

Karena kemungkinan serangan-serangan yang dapat terjadi seperti pada penjelasan diatas ada baiknya untuk mengetahui bentuk perancangan sistem yang aman untuk mencegah dari serangan-serangan yang mungkin terjadi

Adapun bentuk perancangan sistem yang aman adalah :
  • Rancangan harus mengikuti standard yang ada
  • Mendemokan validasi melawan ancaman yang diketahui
  • Melakukan audit terhadap kegagalan yang terdeteksi
  • Adanya keseimbangan antara biaya terhadap serangan yang ada


Tiga dasar mekanisme keamanan yang dibangun :
  • Enkripsi : digunakan untuk menyediakan kerahasiaan, dapat menyediakan authentication dan perlindungan integritas
  • Digital signature : digunakan untuk menyediakan authentication, perlindungan integritas
  • Algoritma checksum/hash : digunakan untuk menyediakan perlindungan integritas dan dapat menyediakan authentication.
  • Teknik keamanan adalah hal penting dalam menjaga kerahasiaan data. Proses enkripsi di dalam teknik keamanan merupakan proses pengkodean pesan untuk menyembunyikan isi file. Sedangkan algoritma enkripsi modern menggunakan kunci kriptografi dimana hasil enkripsi tidak dapat di dekripsi tanpa kunci yang sesuai.

Kriptografi adalah suatu ilmu yang mempelajari bagaimana membuat suatu pesan menjadi aman selama pengiriman dari pengirim sampai ke penerima. Pesan yang akan di enkripsi disebut plaintext sedngkan pesan yang telah di enkripsi disebut chipertext.

Serangan pada sistem terdistribusi tergantung pada pengaksesan saluran komunikasi yang ada atau membuat saluran baru yang menyamarkan sebagai koneksi legal. Penyerangan yang ada yaitu penyerangan pasif dan aktif.

Sumber : http://www.jejaring.web.id/keamanan-pada-sistem-terdistribusi/

Parallel Processing Sistem Terdistribusi

Pemrosesan paralel (parallel processing) adalah penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan.
Idealnya, parallel processing membuat program berjalan lebih cepat karena semakin banyak CPU yang digunakan. 

TUJUAN PARALLEL PROCESSING
Tujuan utama dari pemrosesan paralel adalah untuk meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu yang sama), semakin banyak pekerjaan yang bisa diselesaikan. 

PARALLEL PROCESSING
Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan.
Biasanya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar ataupun karena tuntutan proses komputasi yang banyak.

Untuk melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah. Untuk itu diperlukan aneka perangkat lunak pendukung yang biasa disebut sebagai middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi. 
Pemrograman Paralel sendiri adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan. Bila komputer yang digunakan secara bersamaan tersebut dilakukan oleh komputer-komputer terpisah yang terhubung dalam satu jaringan komputer, biasanya disebut sistem terdistribusi. Bahasa pemrograman yang populer digunakan dalam pemrograman paralel adalah MPI (Message Passing Interface) dan PVM (Parallel Virtual Machine).

Yang perlu diingat adalah komputasi paralel berbeda dengan multitasking. Pengertian multitasking adalah komputer dengan processor tunggal mengeksekusi beberapa tugas secara bersamaan. Walaupun beberapa orang yang bergelut di bidang sistem operasi beranggapan bahwa komputer tunggal tidak bisa melakukan beberapa pekerjaan sekaligus, melainkan proses penjadwalan yang berlakukan pada sistem operasi membuat komputer seperti mengerjakan tugas secara bersamaan. Sedangkan komputasi paralel sudah dijelaskan sebelumnya, bahwa komputasi paralel menggunakan beberapa processor atau komputer. Selain itu komputasi paralel tidak menggunakan arsitektur Von Neumann.

Untuk lebih memperjelas lebih dalam mengenai perbedaan komputasi tunggal (menggunakan 1 processor) dengan komputasi paralel (menggunakan beberapa processor), maka kita harus mengetahui terlebih dahulu pengertian mengenai model dari komputasi. Ada 4 model komputasi yang digunakan, yaitu:

  1. SIMD
  2. SIMD
  3. MISD
  4. MIMD


  • SISD

Yang merupakan singkatan dari Single Instruction, Single Data adalah satu-satunya yang menggunakan arsitektur Von Neumann. Ini dikarenakan pada model ini hanya digunakan 1 processor saja. Oleh karena itu model ini bisa dikatakan sebagai model untuk komputasi tunggal. Sedangkan ketiga model lainnya merupakan komputasi paralel yang menggunakan beberapa processor. Beberapa contoh komputer yang menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.


  • SIMD

Yang merupakan singkatan dari Single Instruction, Multiple Data. SIMD menggunakan banyak processor dengan instruksi yang sama, namun setiap processor mengolah data yang berbeda. Sebagai contoh kita ingin mencari angka 27 pada deretan angka yang terdiri dari 100 angka, dan kita menggunakan 5 processor. Pada setiap processor kita menggunakan algoritma atau perintah yang sama, namun data yang diproses berbeda. Misalnya processor 1 mengolah data dari deretan / urutan pertama hingga urutan ke 20, processor 2 mengolah data dari urutan 21 sampai urutan 40, begitu pun untuk processor-processor yang lain. Beberapa contoh komputer yang menggunakan model SIMD adalah ILLIAC IV, MasPar, Cray X-MP, Cray Y-MP, Thingking Machine CM-2 dan Cell Processor (GPU).


  • MISD

Yang merupakan singkatan dari Multiple Instruction, Single Data. MISD menggunakan banyak processor dengan setiap processor menggunakan instruksi yang berbeda namun mengolah data yang sama. Hal ini merupakan kebalikan dari model SIMD. Untuk contoh, kita bisa menggunakan kasus yang sama pada contoh model SIMD namun cara penyelesaian yang berbeda. Pada MISD jika pada komputer pertama, kedua, ketiga, keempat dan kelima sama-sama mengolah data dari urutan 1-100, namun algoritma yang digunakan untuk teknik pencariannya berbeda di setiap processor. Sampai saat ini belum ada komputer yang menggunakan model MISD.


  • MIMD

Yang merupakan singkatan dari Multiple Instruction, Multiple Data. MIMD menggunakan banyak processor dengan setiap processor memiliki instruksi yang berbeda dan mengolah data yang berbeda. Namun banyak komputer yang menggunakan model MIMD juga memasukkan komponen untuk model SIMD. Beberapa komputer yang menggunakan model MIMD adalah IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L.

Singkatnya untuk perbedaan antara komputasi tunggal dengan komputasi paralel, bisa digambarkan pada gambar di bawah ini:
Penyelesaian Sebuah Masalah pada Komputasi Tunggal


Penyelesaian Sebuah Masalah pada Komputasi Paralel
Dari perbedaan kedua gambar di atas, kita dapat menyimpulkan bahwa kinerja komputasi paralel lebih efektif dan dapat menghemat waktu untuk pemrosesan data yang banyak daripada komputasi tunggal.
Dari penjelasan-penjelasan di atas, kita bisa mendapatkan jawaban mengapa dan kapan kita perlu menggunakan komputasi paralel. Jawabannya adalah karena komputasi paralel jauh lebih menghemat waktu dan sangat efektif ketika kita harus mengolah data dalam jumlah yang besar. Namun keefektifan akan hilang ketika kita hanya mengolah data dalam jumlah yang kecil, karena data dengan jumlah kecil atau sedikit lebih efektif jika kita menggunakan komputasi tunggal.
Komputasi paralel membutuhkan : 
· algoritma 
· bahasa pemrograman 
· compiler

Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan baik dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU.
Tujuan utama dari pemrograman paralel adalah untuk meningkatkan performa komputasi. 

* Message Passing Interface (MPI)
MPI adalah sebuah standard pemrograman yang memungkinkan pemrogram
untuk membuat sebuah aplikasi yang dapat dijalankan secara paralel. 
MPI menyediakan fungsi-fungsi untuk menukarkan
antar pesan. Kegunaan MPI yang lain adalah
1. menulis kode paralel secara portable
2. mendapatkan performa yang tinggi dalam pemrograman paralel, dan
3. menghadapi permasalahan yang melibatkan hubungan data irregular atau dinamis yang tidak 
begitu cocok dengan model data paralel. 

* Message Passing Interface (MPI)
MPI adalah sebuah standard pemrograman yang memungkinkan pemrogram
untuk membuat sebuah aplikasi yang dapat dijalankan secara paralel. 
MPI menyediakan fungsi-fungsi untuk menukarkan
antar pesan. Kegunaan MPI yang lain adalah
1. menulis kode paralel secara portable
2. mendapatkan performa yang tinggi dalam pemrograman paralel, dan
3. menghadapi permasalahan yang melibatkan hubungan data irregular atau dinamis yang tidak 
begitu cocok dengan model data paralel.

Hubungan antara Komputasi Modern dengan Paralel Processing
Hubungan antara komputasi modern dan parallel processing sangat berkaitan, karena penggunaan komputer saat ini atau komputasi dianggap lebih cepat dibandingkan dengan penyelesaian masalah secara manual. Dengan begitu peningkatan kinerja atau proses komputasi semakin diterapkan, dan salah satu caranya adalah dengan meningkatkan kecepatan perangkat keras. Dimana komponen utama dalam perangkat keras komputer adalah processor. Sedangkan parallel processing adalah penggunaan beberapa processor (multiprocessor atau arsitektur komputer dengan banyak processor) agar kinerja computer semakin cepat.

Kinerja komputasi dengan menggunakan paralel processing itu menggunakan dan memanfaatkan beberapa komputer atau CPU untuk menemukan suatu pemecahan masalah dari masalah yang ada. Sehingga dapat diselesaikan dengan cepat daripada menggunakan satu komputer saja. Komputasi dengan paralel processing akan menggabungkan beberapa CPU, dan membagi-bagi tugas untuk masing-masing CPU tersebut. Jadi, satu masalah terbagi-bagi penyelesaiannya. Tetapi ini untuk masalah yang besar saja, komputasi yang masalah kecil, lebih murah menggunakan satu CPU saja.

Sumber:
http://id.shvoong.com/internet-and-technologies/universities-research-institutions/2159327-parallel-processing/#ixzz1qmtgdvwh 
http://coretanmuvi.blogspot.com/2012/03/paralel-processing.html