Anda di halaman 1dari 9

PRAKTIKUM KE 10.

TRANSMISI DATA
A. Tujuan
Praktikan memahami :
a. proses transmisi data serial
b. penggunaan modul HC12 dan RS485 untuk kebutuhan transmisi data
c. pemrograman antar modul untuk permintaan, pengiriman dan penerimaan
data

B. Landasan Teori

1. Komunikasi Serial
Komunikasi serial merupakan komunikasi data dengan pengiriman data satu
per satu pada satuan waktu. Transmisi data pada komunikasi serial dilakukan per bit.
Komunkasi serial membutuhkan dua jalur yaitu transmit (Tx) dan receive (Rx).
Komunikasi serial memiliki dua mode yaitu: sinkron dan asinkron. Mode sinkron
proses pengiriman data bersamaan dengan sinyal clock, sehingga pengiriman satu
karakter dengan karakter lainnya memiliki jeda waktu yang sama. Sedangkan mode
Asinkron dimana proses pengiriman data tanpa sinyal clock. Transmiter yang
mengirim data harus menyepakati suatu standar Universal Asynchronous Receive
Transmit (UART). Atmega 328 menyediakan serial komunukasi UART TTL (5V).
Software arduino mencakup sebuah serial monitor yang memingkinkan data tekstual
terkirim ke dan dari board arduino. Dalam pengaturan UART untuk mengkoneksikan
arduino dengan perangkat lain terdapat perintah-perintah:
a. Start Bit
Start bit merupakan penanda awal dimana akan dilakukan suatu proses
pengiriman bit data.
b. Data Bit
Data bit merupakan data yang akan dikirim
c. Parity Bit
Parity bit berfungsi sebagai ‘flag’ atau bisa dikatakan sebagai penanda
d. Stop Bit
Stop bit bergunasebagai penanda proses pengiriman bit data telah selesai
e. Bit Rate
Bit rate adalah jumlah dari bit yang terkirim atau diterima per satuan waktu
(second)
f. Baud Rate
Banyaknya perubahan data yang terjadi per satuan waktu

Perintah terakhir yang juga dibutuhkan dalam menentukan pembacaan nomor


port serial yang terhubung dengan PC yang dikenal dengan Serial Communication
Port Number.

2. Serial Monitor (Interaktif)


Dalam pengembangan sebuah proyek mikrokontroler, Library serial arduino
digunakan untuk media komunikasi dengan hardware serial port (Michale, 2012).
Library serial menjadikan penggunaan port serial lebih sederhana dengan
menyekatnya dari hardware lainnya yang lebih komplek (Michale, 2012).

Gambar 1. Tampilan Serial Monitor dari Arduino IDE

Port USB (Universal Serial Bus) yang ada pada arduino adalah hardware yang
merupakan port masukan/keluaran baru yang dibuat untuk mengatasi kekurangan-
kekurangan port serial maupun paralel yang sudah ada (Hyde & John, 2009). USB
digunakan sebagai port komunikasi serial dengan komputer PC, membuatnya lebih
mudah dihubungkan dengan aplikasi anatarmuka (interfaces) apapun. Contoh
tampilan serial monitor diberikan pada Gambar 1.
Serial Monitor pada IDE Arduino, juga memberikan fitur kotak INPUT di
bagian atas (Lihat Gambar 1). Dimana pada bagian INPUT, dapat diisikan data dan
dengan menekan tombol [Send], data akan terkirim kepada Arduino, dan dapat
diproses lebih lanjut.

3. HC12
Modul komunikasi port serial nirkabel HC-12 adalah modul transmisi data
nirkabel multi channel. Band frekuensi kerja nirkabelnya adalah 433,4-473.0MHz,
beberapa saluran dapat diatur dengan loncatan 400 KHz dan totalnya ada 100 saluran.
Daya maksimum transmisi modul adalah 100mW (20dBm), sensitivitas penerimaan
adalah -117dBm pada baud rate 9600bps di udara, dan jarak komunikasi 1.000 m di
ruang terbuka. Modul HC12 mempunyai channel ID, sehingga agar tujuan
komunikasi dapat sinkron, maka channel yang dituju harus sama. Untuk melakukan
konfigurasi pengaturan channel tersebut, maka digunakan pin SET pada modul HC-
12, sementara komunikasi serial dihubungkan ke ATMega8 melalui pin RX dan TX.
Prinsip kerja dari proses pengiriman data melalui HC12 sama seperti
pengiriman data serial biasa, hanya saja untuk proses awal pengalamatan (addressing)
pada HC12 harus diinisialisasi agar dapat berkomunikasi dengan perangkat HC12
lainnya yaitu channel yang sama. Proses pengiriman data dan penerimaan data HC12
dirancang menggunakan protokol data serial dengan urutan data yang diakhiri dengan
ceksum, protokol ini bertujuan untuk proses kelancaran komunikasi dan menghindari
gangguan karena efek noise dari luar seperti gangguan dari pemancar lain dengan
address yang sama. Dengan menggunakan protokol data, maka jumlah data yang
dikirim via pemancar dapat dilakukan pengecekan oleh bagian penerima.
Prinsip kerja dari proses penerimaan data pada bagian HC12 dalam menerima
data serial menggunakan protokol data serial dilakukan dengan cara membaca data
sinkron sebagai data awal, kemudian selanjutnya membaca paket data dan
menjumlahkan jumlah data pada urutan paket tersebut selanjutnya setelah data
ceksum diterima oleh receiver, maka dilakukan perbandingan, pada proses
perbandingan ini jika data jumlah paket sama dengan ceksum, maka urutan data yang
dikirimkan dinyatakan sesuai, dan mikrokontroller dapat mengambil langkah untuk
memproses data lebih lanjut.

Gambar 2. Modul HC12


4. RS485
RS485 adalah teknik komunikasi data serial yang dapat berkomunikasi antara
satu unit dengan unit lainnya pada jarak yang cukup jauh yaitu 1,2 Km. Selain dapat
digunakan untuk jarak yang jauh teknik ini juga dapat digunakan untuk
menghubungkan 32 unit beban sekaligus hanya dengan menggunakan dua buah kabel
saja tanpa memerlukan referensi ground yang sama antara unit yang satu dengan unit
lainnya. Beban yang terhubung ke jaringan bisa berupa komputer, mikrokontroler dan
peralatan-peralatan lainnya yang bisa dikoneksikan dengan menggunakan sandar
RS485. Untuk mewujudkan hal tersebut digunakan sebuah IC SN75176, IC inilah
yang menjadi komponen utama Modul RS485 yang didisain untuk komunikasi data
secara bidirectional atau multipoint dengan Standard ANSI EIA/TIA-422-B dan ITU
V11. Data yang ditransmisikan oleh IC ini dikirim dalam bentuk perbedaan tegangan
yang ada pada kaki A dan B dari SN75176.
SN75176 berfungsi sebagai pengirim data atau penerima data tergantung dari
kondisi kaki-kaki kontrolnya yaitu DE dan RE. Apabila kaki DE berlogika 0 dan RE
berlogika 0, maka SN75176 berfungsi sebagai penerima data sedangkanbila kaki DE
berlogika 1 dan RE berlogika 1maka SN75176 berfungsi sebagai pengirim. Pada
komunikasi RS485, semua peralatan elektronik berada pada posisi penerima hingga
salah satu memerlukan untuk mengirimkan data, maka peralatan tersebut akan
berpindah ke mode pengirim, mengirimkan data dan kembali ke mode penerima.

Gambar 3. Modul MAX RS485

C. Alat dan Bahan


1. Laptop
2. Arduino (Nano, Uno atau Mega)
3. Modul HC12 dan/atau Modul MAX RS485
4. Kabel Jumper, Resistor, Kabel Jaringan
5. Breadboard
6. Perlengkapan Solder

D. Skematik

Gambar 4. Skematik Board HC12


Gambar 5. Skematik Board MAX RS485

Pin Name Pin Description


VCC 5V
Non-inverting Receiver Input
A
Non-Inverting Driver Output
Inverting Receiver Input
B
Inverting Driver Output
GND GND (0V)
R0 Receiver Out (RX pin 0)
RE Receiver Output (LOW-Enable) Pin 13
(di short/
DE Driver Output (HIGH-Enable) jumper)
DI Driver Input (TX pin 1)

E. Prosedur
E1. Membaca INPUT Serial Monitor
1. Gunakan 1 buah Modul
2. Pelajari [Koding 01], dan salin pada Sketch arduino
3. Isikan satu karakter angka/text pada bagian input SerialMON laptop
4. Isikan beberapa karakter (kata/kalimat) pada bagian input SerialMON laptop
5. Amati dan kenali karakter yang dibaca/ditulis, cek ulang kepada data/karakter
yang di-INPUT-kan
6. Ubahlah, perintah menampilkan data pada serial, dengan kalimat ‘print’,
‘println’ dan ‘write’, diskusikan perbedaannya pada laporan.
7. Diskusikan:
a. Apa bedanya, menulis ke SerialMON dengan ‘print’, ‘println’ dan ‘write’ ?
b. Apa bedanya pembacaan data yang diterima Serial, dengan perintah ‘read’
dan ‘readString’
c. Apakah karakter ‘angka’ yang dibaca dapat kembali diperankan sebagai
angka bilangan ?
d. Buktikan dengan proses hitung aritmatika (di jumlah atau di kalikan
dengan bilangan 10 misalnya) dan tampilkan proses dan hasilnya pada
SerialMON.

E2. Membaca data INPUT dari SerialMon dan mengirimkannya melalui transmisi
1. Gunakan 2 buah Modul, 1 unit kelompok sendiri dan 1 unit kelompok lain
2. Pelajari [Koding 02], dan salin pada Sketch arduino
3. Dengan mengubah beberapa koding yang relevan, perintah menampilkan data
input ke SerialMON, dimodifikasi dengan menambahkan pengiriman data
melalui transmisi (modul HC12 ataupun RS485)
4. Dan sebaliknya, data yang diterima melalui transmisi, dicetak ke SerialMON
5. Tambahkan text string tambahan/keterangan untuk memastikan/
membedakan, asal dari data yang dicetak di SerialMON (asal data, apakah
dari INPUT SerialMON atau penerimaan dari transmisi Modul lain)
Contoh:
(modul Pengirim) Data INPUT SerialMonitor :X
(modul Penerima) Data dari TRANSMISI :X

E3. Respon pengiriman data sesuai Permintaan/Request


1. Gunakan 3 buah Modul, 1 unit kelompok sendiri dan 2 unit kelompok lain
2. Modifikasi [Koding 02]
3. Setiap modul diberi ID (A,B,C misalnya)
4. Pseudocode MASTER
a. Master memanggil client, dengan mengetik ID-client melalui INPUT
SerialMON, lalu dikirim secara transmisi melalui modul dan ditampilkan
kembali pada SerialMON
b. Setiap data yang masuk (dari Client), ditampilkan pada SerialMON
5. Pseudocode CLIENT
a. Setiap client, diberi variabel ID, dengan ID masing2 (A,B,C misalnya)
b. Client membangkitkan nomor pencacah, utk setiap proses loop i++;
c. Setiap data yang masuk melalui transmisi, dan dilakukan pengecekan,
apakah data = ID client tersebut
d. Jika data yang masuk = ID-nya, maka kirimkan data pencacah i, dengan
penambahan 200000(untuk client-B), 300000(untuk client C)
Contoh:
Jika i=216, maka dikirimkan data 200216(dari client-B) atau 300216(dari
client-C), untuk kemudahan membedakan asal client pengirim data tsb.
6. DISKUSI
Ubahlah pengiriman data dari tiap client, data i (misal, nilai i=216),
dengan format yang lebih spesifik.
Contoh tampilan list data dari sisi MASTER:
Data dari client-B: B#216#
Data dari client-C: C#216#

E4. Pengolahan data [TUGAS untuk diskusi/laporan/pembahasan]


Bila data dari tiap client, merupakan data yang cukup banyak, dengan pemisah
karakter tertentu. Berikanlah pengolahan data dari sisi MASTER untuk kebutuhan
proses lebih lanjut.
Contoh:
Data client : A#216#0.2103#12.5#
Tampilan MASTER :
Data A;2160;0.2103;1.25;
Data B;2640;0.1183;1.63;
PUSTAKA
https://www.instructables.com/id/Long-Range-18km-Arduino-to-Arduino-Wireless-
Commun/
https://forum.arduino.cc/index.php?topic=342196.0
https://circuitdigest.com/microcontroller-projects/rs-485-modbus-serial-
communication-with-arduino-as-master
https://circuitdigest.com/microcontroller-projects/rs485-modbus-serial-
communication-using-arduino-uno-as-slave

Anda mungkin juga menyukai