Jumat, 04 Mei 2012

Komunikasi Komputer ke komputer


KOMUNIKASI DATA ANTAR 2 PC MENGGUNAKAN   SERIAL PORT DB9/RS232 NULL MODEM

Komunikasi serial juga dapat digunakan untuk komunikasi antara dua komputer atau direct PC to PC, yang disebut dengan “Null Modems”, komunikasi Null Modem ini digunakan untuk menkoneksikan antara 2 buah DTE. Koneksi ini biasanya dipakai karena mudah dalam pembuatannya dan banyak kegunaannya misalnya untuk game multiplayer, transfer data dll dengan menggunakan protokol-protokol diantaranya Xmodem, 1K X modem, Ymodem dll. Berikut adalah gambar koneksi Null Modem.


Rangkaian ini yang paling banyak dipakai dari metode penyambungan Null Modem. Hanya dibutuhkan 3 buah pin untuk memperoleh metode penyambungan Null Modem yaitu (TD, RD, dan SG).Cara penyambungannya yaitu pin TD pada PC1 disambung dengan pin RD pada PC2, begitu juga dengan pin RD pada PC1 disambung dengan pin TD pada PC2 dan untuk pin SG (ground) keduanya saling dihubungkan sebagai common untuk setiap komputer. Prinsip kerjanya adalah Data Terminal Ready (DTR) melakukan loopback pada Data Set Ready (DSR) dan Carrier terdetek pada kedua komputer,  ketika DTR menyatakan aktif maka DSR dan Carrier Detect (CD) akan ikut aktif juga, pada poin ini komputer berpikir kalau virtual modem yang telah terkoneksi sudah siap dan mendeteksi sebuah carrier pada modem yang lain. Untuk RTS dan CTS tidak begitu diperlukan karena kedua komputer telah tersambung dengan speed yang sama, flow control tidak diperlukan pada kedua jalur yang telah dihubungkan pada setiap komputer. Ketika komputer ingin mengirim data komputer menyatakan RTS high dan dibelokkan bersama dengan CTS, sehingga segera mendapat balasan yang sudah siap untuk dikirim.

Ada beberapa parameter untuk melakukan suatu komunikasi data serial, antara lain:  –  Bit Rate  –  Parity  –  Data bit  –  Stop bit    Dimana antara 2 PC tersebut harus memiliki kesamaan parameter.
Aplikasi yang digunakan untuk komunikasi serial antara lain : 
–  Hyper Terminal ( OS windows ) 
–  Minicom ( OS Linux )

Bit  per  second  :  Ukuran  kecepatan  yang  menandakan  banyak  sedikitnya  pengiriman  data  per detik, Contoh : 300 baud adalah 300 bit per second. Data bits : Ukuran data bit yang sebenarnya didalam suatu pengiriman. bila komputer mengirim paket  informasi,  jumlah  data  sebenarnya  mungkin  tidak  penuh  8  bit,  nilai  standar  untuk  paket data  adalah  5,7,  dan  8  bit.  Setting  dari  data  bits  yang  dipilih  bergantung  pada  jenis  informasi yang  akan  dikirim.  Contoh  :  Karakter  ASCII  standard  mempunyai  nilai  dari  0  –  127  (7  bits). Karakter  ASCII  Extended  menggunakan  0  –  255  (8  bits).  Jika  data  yang  dikirim  adalah  text sederhana  (Standar  ASCII),  mengrimkan  7  bit  data  per  paket  sudah  cukup  untuk  komunikasi. Paket  mengacu  pada  pengiriman  byte  tunggal,  termasuk  start  /  stop  bits,  data  bits,  dan  parity, karena nilai sebenarnya dari bit data bergantung pada jenis protocol yang dipilih. Parity : Sebuah bentuk sederhana untuk pengecekan kesalahan yang digunakan pada komunikasi serial. Ada 4 macam parity, yaitu: Even, Odd, Mark dan Space.

Stop bits : Digunakan sebagai tanda akhir komunikasi data paket tunggal. Nilai dari stop bits biasanya adalah 1, 1,5, dan 2. Flow control : Sebuah metode dimana sebuah modem receiver mengontrol rasio dari modem transmitter yang mengirim data pada modem receiver. Flow Control ada 2:    Hardware : Hardware Flow control (RTS/CTS) bergantung pada modem untuk mengontrol aliran  data.  Metode  ini  dipakai  untuk  modem  berkecepatan  tinggi  atau  modem  yang mengkompres data.    XON/XOFF  :  atau  biasa  disebut  software  flow  control  yang  menggunakan  data  karakter untuk  mengindikasikan  bahwa  sebuah  aliran  data  harus  START  atau  STOP,  metode  ini membolehkan modem untuk mengirim kontrol karakter yang menandakan modem pengirm untuk menghentikan pengiriman ketika karakter tersebut dikirim.  Software Flow Control lebih lambat dan kurang  diinginkan dari pada Hardware  Flow Control. Software Flow Control hanya digunakan untuk mengirim text dan tidak dapat digunakan untuk mengirim data biner, karena data biner kemungkinan berisi karakter Flow Control spesial.


Komunikasi Komputer dengan Mikrokontroler (komp vs micro)


Interfacing Serial Port || Komunikasi Serial Mikrokontroler AVR ATMEGA 8

            Setelah sebelumnya pernah dibahas juga tentag “Interfacing Serial Port Komputer dengan Mikrokontroler AVR ATMEGA8535”, berikut ini saya ulas kembali tentang “Interfacing Serial Port Komputer dengan Mikrokontroler AVR ATMEGA 8”.
            Pada dasarnya, “Komunikasi Serial Mikrokontroler AVR dengan PC “ memiliki karakteristik yang sama namun pada beberapa ti[e Mikrokontroler AVR lain seperti ATMEGA 128 memiliki Port USART yang lebih banyak (Tersedia juga dalam beberapa Mode). Untuk komunikasi serial ATMEGA 8535 dengan Mikrokontroler ATMEGA 8 memiliki persamaan baik dari segi jumlah maupun mode.
            Mikrokontroler AVR ATMEGA 8 dibekali dengan sebuah Port USART yaitu Pin 2 dan Pin 3 untuk melakukan Komunikasi Data antara Mikrokontroler dengan Mikrokontroler ataupun Mikrokontroler dengan Komputer.
            Untuk Rangkaian Interfacing Serial Port || Komunikasi Serial Mikrokontroler AVR ATMEGA 8 adalah sebagai berikut:


Gambar Rangkaian Komunikasi Serial Mikrokontroler ATMEGA 8 dengan Komputer

            Pada rangkaian Komunikasi Serial Mikrokontroler ATMEGA 8 dengan Komputer diatas, dapat anda hubungkan dengan Rangkaian LED Driver sebagai media outputnya untuk melihat kinerja komunikasi serial mikrokntroler dengan PC apakah berhasil.

Aplikasi Visual Basic 6 untuk Device Interfacing ( komponent MS Comm Control )


Aplikasi Visual Basic 6 untuk Device Interfacing
Sebagai media komunikasi dengan dunia luar, VB 6 telah menyediakan MS Comm Control 6.0(tambahkan melalui : Project –> Components).


Component ini berfungsi untuk :
  • Mengadakan hubungan dengan serial port PC
  • Berhubungan dengan alat komunikasi lain (contoh : modem)
  • Melakukan pertukaran data
  • Memonitor dan merespon event dan error yang terjadi pada hubungan serial
Untuk mengadakan suatu komunikasi serial antara 2 peralatan, kita harus melakukan langkah – langkah berikut :
  1. Membuka serial port
  2. Mengatur serial device
  3. Setting Receive and Transmit Buffer Properties
  4. Managing Receive and Transmit Buffer
Penjelasan masing – masing langkah akan diberikan di bawah.
1. Membuka Serial Port
Pada komunikasi serial, bit – bit data yang masuk dari dunia luar ke dalam komputer melalui serial portakan ditampung dulu di receive buffer sebelum akan dieksekusi oleh main controller. Demikian pula sebelum dikirim ke luar, data akan ditampung dulu di transmit buffer. Skema lengkapnya dapat di lihat pada gambar di bawah.



Sebelum membuka serial port, dilakukan pengaturan protokol komunikasi serial dengan propertyMSComm berikut :
  • CommPort : menentukan nomor port komunikasi
  • Setting : menentukan baud rate, parity, data bits, stop bits dalam string
Untuk membuka serial port cukup dengan property :
  • PortOpen : membuka dan menutup port
Sehingga kode program akan tertulis sebagai berikut :
MSComm1.ComPort = 2
MSComm1.Settings = “9600,N,8,1”
MSComm1.PortOpen = True
2. Mengatur Serial Device
Pada tahap ini kita perlu memastikan bahwa pengaturan protokol komunikasi serial yang digunakan pada peralatan lain yang kita akses (misal : PLC, modem, mikrokontroler) sesuai dengan pengaturan pada komputer yang kita pakai.
3. Setting Receive and Transmit Buffer Properties
Ada beberapa property dari receive buffer dan transmit buffer (property dari MS Comm) yang perlu kita atur.
  • InBufferSize : mengatur ukuran receive buffer
  • OutBufferSize : mengatur ukuran transmit buffer
  • Rthreshold : menentukan jumlah karakter yang diterima oleh receive buffer sebelum OnCommevent dipicu
  • Sthreshold : menentukan jumlah karakter yang diterima oleh transmit buffer sebelum OnCommevent dipicu
    • Jika bernilai 0 berarti tidak pernah dipicu
    • Jika bernilai 1 berarti dipicu setiap satu karakter
  • InputLen : menentukan jumlah karakter yang dibaca CPU dari receive buffer
    • Jika bernilai “ 0 “, maka seluruh isi receive buffer akan dibaca CPU
  • InputMode : menentukan tipe data input yang akan dibaca CPU
    • comInputModeText : untuk data string/teks
    • comInputModeBinary : untuk data biner
4. Managing Receive and Transmit Buffer
Untuk menampilkan data dari peralatan lain ke dalam aplikasi VB, digunakan properti : Input. Sehingga kode akan berbentuk :
TxtDisplay.Text = MSComm1.Input
Untuk mengirim data dari aplikasi VB ke peralatan lain digunakn properti : Output. Sehingga kode akan berbentuk :
MSComm1.Output = “Ini nilai string”
Untuk mengawasi jumlah bit yang ada di transmit buffer dan receive buffer, property berikut dapat ditampilkan.
  • InBufferCount
  • OutBufferCount
MSComm hanya memiliki 1 event, yaitu OnComm. Event ini akan terjadi jika properti dari CommEventberubah, yaitu saat terjadi :
  • Event komunikasi
  • Error
Contoh dari event komunikasi OnComm :
  • comEvSend : mengirim sejumlah karakter ke transmit buffer
  • comEvReceive : menerima sejumlah karater di receive buffer
  • etc
Sedang contoh dari error pada OnComm :
  • comEventBreak : sinyal break diterima
  • comEventFrame : ada kesalahan framing
  • comEventRxOver receive buffer mengalami overflow
  • comEventTXFull transmit buffer penuh
  • etc