Komunikasi Serial Antara Arduino dengan Arduino/NodeMCU/ESP-01/WeMos



Dalam melakukan komunikasi antar device kite mengenal 2 jenis komunikasi yaitu serial dan paralel. Kedua jenis komunikasi ini masing-masing memiliki kelebihan tersendiri, seperti komunikasi paralel yang cenderung lebih cepat dari segi transimisi datanya dibandingka dengnan komunikasi paralel. Tetapi, komunikasi paralel memerlukan banyak kabel dibandingkan komunikasi serial. Berdasarkan alasan tersebut, banyak perangkat yang sudah beralih ke komunikasi serial karena dianggap lebih efisien. 
Pada kesempatan kali ini, kita akan mencoba membahas tentang komunikasi serial antar perangkat mikrokontroler. Mengapa tidak menggunakan komunikasi paralel? Kita ketahui komunikasi paralel membutuhkan banyak pin jika kita gunakan di mikrokontroler, Mengingat pin dari mikrokontroler juga terbatas, tentu pilihan terbaik ada pada komunikasi serial.

Secara umum, prinsip dari pengiriman komunikasi serial entah itu antara mikrokontroler dengan mikrokontroler lainnya, atau bisa juga dengan perangkat lainnya. Sebagai contoh, kali ini kita akan membahas bagaimana cara mengkoneksikan dua buah mikrokontroler menggunakan Arduino dan NodeMCU. Komponen yang diperlukan pada tutorial kali ini antara lain.

1. Arduino board
2. NodeMCU (Bisa diganti dengan arduino lain atau jenis mikrokontroler lain seperti ESP-01, Wemos, dll).
3. Kabel Jumper

Merangkai Komponen


Untuk mengkoneksikan Arduino dengan Arduino/NodeMcu, kita perlu menghubungkan pin Rx, Tx, dan Ground. Rangkaian bisa dilihat pada gambar dibawah.

Koneksi serial hanya menggunakan 3 buah kabel, yaitu untuk kabel Rx sebagai penerima (receiver), kabel Tx sebagai pengirim (transceiver), dan kabel ground sebagai grounding

 Arduino (Master)TxRxGnd 
 Arduino/NodeMcu (SlaveRxTx Gnd 

Sebagai input data yang akan dikirimkan, kita bisa menggunakan sensor atau potensio. Pada tutorial kali ini saya menggunakan potensio sebagai input data yang saya hubungkan ke pin A0 Master.



Membuat Skecth Program


Setelah berhasil merangkai dan memastikan semua sambungan benar, maka kita bisa memulai membuat program dari masing-masing mikrokontroler. Anda bisa memilih, mana yang akan menjadi master dan slave-nya. Master disini artinya mikrokontroler tersebut sebagai mikrokontroler utama sedangkan slave merupakan mikrokontroler pembantu atau kedua.

Untuk program di master kita akan membaca nilai ADC dari potensio dan mengirimkannya ke slave. Program master silahkan upload program dibawah ini.

int data; 
String str;

void setup(){
 Serial.begin(9600);
}
void loop()
{
  data=analogRead(A0);
  str =String(data);
  Serial.println(str);
  delay(100);
}

Sedangkan untuk program slave, kita hanya akan melihat data yang diterima di serial monitor saja. Berikut program yang digunakan pada slave.


void setup(){
 Serial.begin(9600);
}
void loop()
{
  if(Serial.available()>0) {
    char data = (char)Serial.read();
    Serial.println(data);
    delay(100);
  }
}

Pada program diatas, hasil dari pembacaan potensio pada pin A0 arduino master, akan dikirimkan ke slave melalui Serial.print();.Mikrokontroler slave akan membaca apapun yang ada pada serial dengan jalur data yang sama yaitu 9600 jika pada jalur data tersebut terdapat data. Hal itu dipastikan dengan sintaks.


if(Serial.available()>0) {}

Hasil dari pembacaan data serial menggunakan Serial.read();. Data yang telah dibaca dimasukan pada variabel data, dan ditampilkan kembali pada serial monitor.

Berikut merupakan tutorial cara mengkomunikasikan board mikrokontroler arduino secara serial. Jika ada pertanyaan , silahkan tanyakan pada kolom komentar. Terimakasih telah membaca! Jangan lupa share.

Berlangganan update artikel terbaru via email:

1 Response to "Komunikasi Serial Antara Arduino dengan Arduino/NodeMCU/ESP-01/WeMos"

  1. Thanks, postingan tentang Komunikasi Serial Antara Arduino dengan Arduino/NodeMCU/ESP-01/WeMos sangat bermanfaat

    ReplyDelete

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel