Official StoreTekan tombol di atas untuk membeli semua alat dan bahan eksperimen di web ini

Komunikasi Serial Asinkron RS232 dengan Arduino

Pin 0 dan 1 Arduino memiliki fungsi khusus sebagai pin serial asinkron. Kedua pin ini terhubung dengan perangkat UART (Universal Asynchronous Receiver Transmitter) secara internal. Namun serial asinkron yang dimiliki Arduino ini level elektrikalnya adalah level tegangan TTL (Transistor-transistor Logic) dengan rentang tegangan 0 s.d 5V (tegangan 0V mewakili logika ‘0’, tegangan 5V mewakili logika ‘1’). Jika Arduino akan berkomunikasi secara serial asinkron dengan perangkat lain yang  level elektrikalnya sama, Arduino dan perangkat tersebut dapat langsung dihubungkan secara bersilang (Tx ketemu RxD, Rx ketemu TxD).

ilustrasi wiring komunikasi serial uart arduino - komunikasi serial asinkron

Nah, yang akan menjadi masalah adalah ketika Arduino akan berkomunikasi dengan perangkat lain secara serial namun level elektrikalnya berbeda, misalnya RS232, RS422 atau RS485. Jika ada studi kasus seperti ini, maka Anda akan memerlukan semacam level konverter dari level TTL ke level RS232/RS422/RS485 tersebut. Karena secara protokol komunikasi semua standar komunikasi tersebut (UART, RS232, RS422, RS485) adalah sama, yakni serial asinkron yang membutuhkan parameter komunikasi seperti baudrate, data bit, stop bit, parity dan flow control. Yang membedakan hanyalah level elektrikalnya. Level elektrikal ini hubungannya adalah dengan panjang maksimal kabel data, kekebalan data terhadap noise, dsb. Tiap standar komunikasi memiliki karakteristik yang berbeda-beda.

Komunikasi Serial Asinkron RS232 dengan Arduino

Untuk berkomunikasi dengan perangkat RS232, Arduino membutuhkan konverter TTL ke RS232. Anda dapat membuatnya dari rangkaian transistor atau menggunakan IC Max 232. Anda juga dapat membeli modul konverter TTL to RS232 yang sudah jadi jika tidak ingin repot membuat PCB-nya.

Rangkaian konverter TTL – RS232 dengan transistor

konverter serial asinkron uart ke RS232 dengan transistor

Rangkaian konverter TTL – RS232 dengan IC Max232

konverter serial asinkron uart ke RS232 dengan Max232

Modul konverter UART TTL – RS232

modul konverter uart ttl - rs232

Salah satu perangkat yang menggunakan standar komunikasi serial asinkron RS232 adalah komputer/laptop. Berhubung port serial fisik sudah tidak diadopsi pada komputer/laptop modern, maka kita akan menggunakan konverter port USB to serial untuk percobaan komunikasi antara komputer dengan Arduino. Sebagai percobaan komunikasi keduanya, saya akan menggunakan modul konverter TTL-RS232. Modul ini dapat langsung dihubungkan dengan konverter USB to serial laptop karena konektor DB modul konvertor TTL-RS232 bertipe DB-9 female sedangkan konektor konverter USB to serial di laptop bertipe DB-9 male. Untuk lebih jelasnya silahkan lihat gambar di bawah.

usb to serial vs modul konverter uart ttl to rs232

Untuk menguji komunikasi antara komputer/laptop dengan Arduino melalui protokol serial asinkron, buatlah prototipe rangkaian sebagai berikut : (perhatikan kabel USB-nya)

prototipe rangkaian usb to serial vs modul konverter uart ttl to rs232

saat di-zoom

zoom - usb to serial vs modul konverter ttl to rs232

Setelah itu, dari sisi komputer/laptop aktifkan aplikasi Hyper Terminal dan pilih port COM sesuai dengan port USB to serial dan set parameter baudrate ke 9600 bps dan flow control ke pilihan ‘none’ (atau tekan saja tombol ‘Restore defaults’). Jika belum tahu caranya bisa dibaca tutorialnya di artikel berikut. Sedangkan sisi Arduino aktifkan jendela Serial Monitor. Sebelumnya isikan sketch handler Arduino sebagai berikut untuk menangani komunikasi serial asinkron dengan komputer/laptop.

Setelah sketch berhasil diupload ke Arduino, tibalah saatnya untuk melakukan pengujian komunikasi antara Arduino dengan komputer/laptop. Caranya, dari aplikasi Hyper Terminal ketikkan sembarang karakter dan tekan enter. Seharusnya karakter tersebut akan muncul di jendela Serial Monitor (jendela Serial Monitor adalah jendela untuk memonitor pertukaran data yang lewat di pin serial Arduino. Untuk lebih detailnya bisa dibaca disini).

tes komunikasi usb to serial vs modul konverter uart ttl - rs232 dengan arduino

Demikian tutorial kali ini tentang cara melakukan komunikasi serial asinkron RS232 dengan Arduino. Cara di atas efektif dilakukan jika Anda menjalankan IC Arduino tanpa papan Arduino. Jika IC Arduino berada di papan Arduino Anda bisa langsung berkomunikasi menggunakan port usb yang secara otomatis akan mengemulasi port serial sesudah Anda menginstal driver USB saat Anda melakukan instalasi software Arduino IDE. Untuk lebih detailnya bisa dibaca di sini. Selain dua cara komunikasi serial antara komputer/laptop dan Arduino tersebut, ada cara lain lagi, yakni menggunakan konverter USB to TTL. Caranya akan saya tulis pada artikel berikutnya.

Sebagai penutup, ingin saya sampaikan bahwa tiap standar komunikasi memiliki kelebihan dan kekurangan masing-masing. Standar komunikasi UART memiliki kelebihan sederhana secara rangkaian namun hanya efektif untuk jarak pendek (1-2 meter) dan hanya berlaku untuk sepasang perangkat saja. Sedangkan standar komunikasi RS232 kelebihannya adalah jarak kabel yang lebih panjang (bisa mencapai 25 meter), namun kekurangannya adalah standar ini hanya berlaku untuk sepasang perangkat saja dan tidak dapat digunakan untuk multi client atau multi slave. Jika menginginkan bisa berlaku untuk multi client/slave Anda harus menggunakan standar komunikasi RS422/RS485. Dua standar komunikasi terakhir perbedaannya terletak pada kekebalan noise dan jarak kabel, dimana RS485 lebih kebal noise dan jarak kabel lebih panjang, bisa mencapai 1000 m.

Incoming search terms:

kelebihan dan kekurangan rs232, rs232 adalah, komunikasi rs 232 dengan arduino, program arduino sensor oxymetri dengan db9 connector, Cara menggunakan rs232 to ttl, komunikasi 2 arduino, kelebihan kekurangan Rs 232, rs232 to usb komunikasi, komunikasi serial asinkron, cara membuat usb to rs232 tanpa papan

Leave a Reply

67 Comments on "Komunikasi Serial Asinkron RS232 dengan Arduino"

avatar
  Subscribe  
newest oldest most voted
Notify of
Lalu Fendy
Guest

assalammualikum pak—
pak saya mau tanya cara mengirim karakter string ke terminal IDE arduino—
misalnya saya punya sensor ketukan sy taruh di pin A0, terus saat saya ketuk sensor tersebut maka akan muncul tulisan misalny”sensor 1 masuk” di terminal arduino____

kalo bisa pak contoh baris kodingnya,,,
makasi sblmnya 🙂

Lalu Fendy
Guest
const int knockSensor = A2; // the piezo is connected to analog pin 0 const int threshold = 150; // threshold value to decide when the detected sound is a knock or not //const int knockSensor2 = A1; // these variables will change: int sensorReading = 0; // variable to store the value read from the sensor pin void setup() { Serial.begin(9600); // use the serial port } void loop() { // read the sensor and store it in the variable sensorReading: sensorReading = analogRead(knockSensor); // if the sensor reading is greater than the threshold: if (sensorReading >= threshold) {… Read more »
Muthi Winaswarna
Guest

pak saya sudah coba komunikasi asinkron RS232 dengan arduinonya, pengiriman data dari serial to arduino udh bisa tapi kalo dibalik (dari arduino to Serial) malah gak bisa, bisa kalo Tx Rx nya dibalik, jadi nya gak pengiriman 2 arah, itu harus gimana ya?

Febriawan
Guest

Mas, mau nanya dong itu kan pada connector d9 female ada led nya, itu pemasanganannya gimana ya mas? Boleh minta gambar schematicnya mas?
Terima kasih

KOKO
Guest

Bos mau nanya nih,bisa tidak ya kontrol arduino menggunakan video realtime.. jadi instruksi arduino nya berdasarkan video.. misal, jika kamera terdeteksi objek 1 maka lampu hijau, deteksi objek ada 3 lampu merah.. mksih bos…

fimanisa
Guest

kak kalo mau menghubungkan arduino uno dan rfid mifare rc522 ke database mysql dan web php. harus pake rs-232 juga ya? scripnya sama kah kak? dimohon bantuannya

Chairul Anwar
Guest
Mas Aji Mohon bantuan nya saya pemula di arduino ini saat ini saya sedang belajar hingga tahap mengirimkan sms dari arduino(mega) menggunakan modem wavecom dan pin rx 10 dan tx 11 ( meski ada serialkomunikasi di arduino) , secara fungsi baik sensor jarak, LCd 16×02, rtc, sudah dapat berjalan namun kendalanya ada pada pengiriman sms ini. saya sudah mengikuti beberapa tutorial namun tetap terkendala dalam pengiriman smsnya. fungsi modem mengirim sms dari hyperterminal sudah oke. program pada arduino melaui serialmonitor sudah terbaca. sudah menggunakan RS232 juga untuk komunikasi antara modem dan arduino (mega). untuk susunan kabel pin Modem DB 15… Read more »
Rusmanto
Guest

Selamat siang pak.
Saya Rusmanto dr Kudus,,mau bertanya tentang komunikasi PLC LG Master K120 dengan arduino Uno.. Saat ini saya sudah memakai perangkat converter RS 232 to TTL.Input dari PLC untuk Arduino Uno sebagai data LOGGING. Mohon Bantuannya Pak. Trima kasih

ananda
Guest

Permisi mas, mau tanya. Saya masih baru nih dgn arduino
Kalau mau membaca nilai dari RS232 nya gimana mas.
Misal :
Saya punya alat ukur dengan komunikasi serial rs232. Lalu saya hubungkan dengan cara mas ini ke arduino.
Bagaimana cara menampilkan pembacaan alat ukur yang akan dibaca di arduinonya mas ?
Minimal saya bisa tampilkan di serial monitornya.

bismar
Guest

permisi pak, saya mau nanya untuk komunikasi plc ke arduiono itu gmna ya?? jika menggunkan konverter rs232 to tll, settingnya gmna ya pak?? sorry msh baru belajar soalnya makasih

Irawan Tandiono
Guest

Salam…
Setelah membaca artikel di atas, sangat bermanfaat…

Saya ingin bertanya Mas,
1. saya mempunyai sebuah alat timbangan yg sudah ada interface rs232, bagaimana caranya agar data dalam timbangan tersebut dapat saya tampilkan ke serial monitor arduino?
2. Apakah tanpa arduino kita tetap dapat menampilkan data timbangan tersebut langsung ke PC hanyan dengan menggunakan ttl ke rs232 usb?
3. Apakah conventer ttl ke rs232 dan rs232 ke ttl itu sama? ( bisa digunakan bolak balik)
4. Timbangan saya memiliki modul printer via rs232, apakah data print / format print timbangan tersebut bisa juga kita tampilkan di arduino/ Pc ?

Terima Kasih sebelumnya,
Sukses Selalu

Riandanu Aldy Sadewo
Guest

mas kok aplikasi hyper terminal yang saya download di G-drive dari web mas tidak bisa diketik sembarang dan dienter ya mas? padahal udah sesuai dengan contoh yang ada di web ini mas.
terimakasih mas

Riandanu Aldy Sadewo
Guest

nah tapi kalo saya ketikkan di serial monitor arduino uno malah keluar di hyper terminal ya mas jadi kayak kebalik gini, padahal source codenya sama, gimana ya mas?

terus saya udah cek di device manager di ports(Com&LPT) cuman kebaca yang arduinonya, cara lihat com rs232nya gimana ya mas?

terimakasih

Riandanu Aldy Sadewo
Guest

saya pakainya rs232 to rs232 mas bukan usb to rs232, ada saran lain kah?

Riandanu Aldy Sadewo
Guest

saya pakainya komputer mas
malah kebalik ya mas ngirim datanya malah dari arduino ke hyper terminal

Riandanu Aldy Sadewo
Guest

wah mas udah bisa nih, tadi saya setting dua duanya arduino dan hyperterminalnya dengan baudrate 2400, nuhun ya mas maaf ngerepotin

Riandanu Aldy Sadewo
Guest

mas mau nanya lagi hehe, saya kan udah bisa nih kirim data dari hyper terminal ke arduino. nah saya pengen baca timbangan dengan output data rs 232 seperti ini dalam satu kalimat “ST,GS,-00000001g)” ke arduino terus saya tulis tipe datanya masih byte tapi dia gak mau muncul di serial monitor, apakah saya salah ditipe data ya mas?

Riandanu Aldy Sadewo
Guest

berarti kalo code yang ini saya pakai terus saya hubungkan dari arduino ke timbangan dengan koneksi rs232 bakal terbaca ya mas? soalnya saya sudah pakai code ini tetapi tidak terbaca apapun ya mas

taufikmas
Guest

siang pak,, saya rencana mau baca data sensor kapasitansi level dengan arduino,, padahal dia komunikasinya di RS232 bukan TTL,, jadi mesti di konvert duluya..

Riandanu Aldy Sadewo
Guest

mas mau nanya, kalo misal saya mau kirim data dari arduino ke hyperterminal commandnya apa ya?

Riandanu Aldy Sadewo
Guest

kalo saya kasih command “Serial.println(Serial.available());” nilai yang keluar seharusnya berapa ya mas? soalnya saya mau ngecek koneksi rs232 saya.

Bang igo
Guest

Sore mas aji…mau tanya…sy jg ambil data dr dgital weigh…tp angkanya kebalik..misal actual weightnya 5.00 kg maka yg kebaca adalah 00.5…bisa tdk sy balik datanya shg diserial monitor kebaca 5.00…tq

Irawan Tandiono
Guest

Mas, Apakah Semua interfase RS232 bisa digunakan untuk collect data?
ada Ebook / pembelajaran khusus mengenai komunikasi interface? atau apakah buku yg Mas jual ada pembelajaran tentang komunikasi serial kah?

Silahkan Email saya saja mas

dany
Guest

assalamualaikum mas, mas kalau misal rs232 nya itu diganti pake rs485 bisa atau tidak? terus programnya apakah sama saja? terimakasih

Alfajri
Guest

Assalamu’alaikum mas, bedanya RS232 dengan Kabel Serial pada arduino uno R3 apa ya mas ?
Terimakasih

arbi
Guest

Salam kenal Mas Ajie, Saya baru beberapa bulan ini kenal Arduino dan sedang mencoba mengkomunikasikan sensor SPO2 (socket DB9) dengan RS232 ke arduino. Terdapat 4 pin yaitu Vcc, GND, TX dan RX. Saya coba connect-an sesuai pin tersebut, apakah sudah benar? Karna sepertinya tidak terjadi perubahan data. LED RX dan TX pada arduino UNO juga sudah berkedip. Saya menggunakan serial 9600.

Maturnuwun sebelumnya Mas Ajie

rayen
Guest

assalamualaikum mas ajie, mau tanya jika ingin komunikasi 1 arah dari db9 ke arduino apa perlu memperhatikan kabel yang tersambung di pin db9 nya? jika kabel yang tersambung di pin db9 hanya pin2 (rx) dan pin5 (gnd) apakah bisa di terima oleh arduino dengan konverter ttl-rs232? terima kasih

error: Content is protected !!