PENGGUNAAN KOMUNIKASI SERIAL UNTUK MENGIRIM DATA

  1. Tujuan
  • Mempelajari komunikasi serial (UART) antara mikrokontroler dan komputer.
  • Mengirimkan data dari mikrokontroler ke komputer melalui komunikasi serial.
  • Menampilkan data dari sensor suhu atau tekanan di komputer menggunakan serial monitor.
  • Menulis program untuk komunikasi dua arah antara mikrokontroler dan komputer.
  1. Peralatan dan Perangkat Lunak
  • Software Proteus untuk simulasi.
  • Software Arduino IDE untuk menulis kode program.
  • Mikrokontroler (misalnya ATmega328 atau ESP32).
  • Sensor suhu (misalnya LM35) atau sensor tekanan.
  • Virtual Terminal di Proteus untuk melihat data serial.
  1. Dasar Teori

Komunikasi serial UART adalah metode komunikasi yang memungkinkan transfer data antara dua perangkat dengan hanya menggunakan dua kabel (TX dan RX). Pada mikrokontroler, komunikasi serial sering digunakan untuk berkomunikasi dengan komputer melalui port USB atau port serial.

Baud rate adalah kecepatan komunikasi serial yang umum digunakan, seperti 9600 bps atau 115200 bps. Komunikasi ini dapat digunakan untuk mengirim dan menerima data dalam format ASCII atau biner.

  1. Langkah-Langkah Praktikum  Mengirim Data dari Mikrokontroler ke Komputer
  1. Buka Proteus dan Buat Skematik
    • Tambahkan mikrokontroler (misal ATmega328 atau ESP32).
    • Tambahkan sensor suhu LM35 (atau sensor tekanan jika tersedia).
    • Hubungkan pin sensor ke input ADC mikrokontroler.
    • Hubungkan Virtual Terminal ke pin TX dan RX mikrokontroler.
  2. Tulis Program di Arduino IDE
void setup() {

    Serial.begin(9600); // Inisialisasi komunikasi serial dengan baud rate 9600

}




void loop() {

    int sensorValue = analogRead(A0); // Membaca data dari sensor suhu/tekanan

    float temperature = (sensorValue * 5.0 / 1023.0) * 100.0; // Konversi ke Celsius

    Serial.print("Suhu: ");

    Serial.print(temperature);

    Serial.println(" C");

    delay(1000);

}

Unggah dan Simulasikan

    • Simpan dan jalankan simulasi di Proteus.
    • Buka Virtual Terminal di Proteus untuk melihat data yang dikirim oleh mikrokontroler.
  1. Menampilkan Data Sensor di Serial Monitor
  1. Jalankan program di Arduino IDE.
  2. Buka Serial Monitor di Arduino IDE (Tools > Serial Monitor).
  3. Pastikan baud rate di Serial Monitor sama dengan program (9600 bps).
  4. Perhatikan data suhu yang tampil di Serial Monitor.

Komunikasi Dua Arah antara Mikrokontroler dan Komputer

  • Modifikasi program agar dapat menerima perintah dari komputer:
void setup() {

    Serial.begin(9600);

}




void loop() {

    if (Serial.available() > 0) {

        char command = Serial.read();

        if (command == 'R') {

            Serial.println("Mikrokontroler menerima perintah: Read");

        }

    }

}
  • Pada Serial Monitor, kirim huruf R dan perhatikan respon dari mikrokontroler.
  1. Analisis dan Pertanyaan
  1. Bagaimana cara kerja komunikasi serial antara mikrokontroler dan komputer?
  2. Apa perbedaan antara komunikasi satu arah dan dua arah dalam UART?
  3. Bagaimana baud rate mempengaruhi komunikasi serial?
  1. Kesimpulan
  • Komunikasi serial memungkinkan transfer data antara mikrokontroler dan komputer dengan mudah.
  • Data dari sensor dapat dikirim dan ditampilkan di komputer menggunakan Serial Monitor atau Virtual Terminal di Proteus.
  • Mikrokontroler dapat menerima perintah dari komputer untuk mengendalikan proses tertentu.
  1. Referensi
  • Dokumentasi Arduino (https://www.arduino.cc/reference/en/)
  • Datasheet ATmega328
  • Tutorial komunikasi serial UART

⚖️ Serial (UART) vs SPI: Mana yang Lebih Cocok?

Komunikasi serial UART yang dibahas di atas hanyalah salah satu dari beberapa protokol komunikasi yang tersedia untuk mikrokontroler. Bandingkan dengan penggunaan komunikasi SPI untuk sensor dan aktuator di Proteus untuk memahami perbedaannya. UART unggul dalam kesederhanaan dan cocok untuk komunikasi jarak menengah antara mikrokontroler dan komputer, sementara SPI lebih cepat namun terbatas untuk komunikasi jarak dekat antar komponen dalam satu board.

🔗 Alternatif Lain: Komunikasi I2C

Selain UART dan SPI, protokol komunikasi lain yang sering digunakan antar mikrokontroler adalah I2C. Pelajari komunikasi I2C menggunakan 2 Arduino Uno sebagai referensi tambahan, terutama jika proyek Anda membutuhkan komunikasi antara beberapa mikrokontroler sekaligus menggunakan jalur kabel yang lebih sedikit dibanding UART, karena I2C hanya memerlukan dua kabel (SDA dan SCL) untuk menghubungkan banyak perangkat sekaligus dalam satu bus.

⚠️ Kesalahan Umum saat Praktik Komunikasi Serial di Proteus

Kesalahan paling sering terjadi saat praktikum komunikasi serial adalah ketidaksesuaian baud rate antara pengaturan program di Arduino IDE dengan Virtual Terminal di Proteus. Jika baud rate tidak sama persis, data yang ditampilkan akan berupa karakter acak yang tidak terbaca. Pastikan juga pin TX mikrokontroler terhubung ke pin RX Virtual Terminal, dan sebaliknya pin RX terhubung ke TX, karena pin yang tertukar adalah penyebab umum lain mengapa komunikasi serial tidak berjalan meski program sudah benar. Selain itu, periksa juga apakah kabel ground (GND) sudah terhubung antara kedua perangkat, karena tanpa referensi ground yang sama, sinyal serial tidak akan terbaca dengan benar.

📦 Jika Library Komponen Belum Tersedia di Proteus

Jika sensor atau modul yang Anda gunakan dalam praktikum komunikasi serial ini belum tersedia di Proteus secara default, Anda perlu menambahkan library tambahan terlebih dahulu. Ikuti panduan cara install library Arduino di Proteus agar komponen seperti sensor suhu atau modul komunikasi lainnya bisa muncul dan digunakan dalam skema rangkaian simulasi Anda sebelum melanjutkan ke tahap pemrograman komunikasi serial.

🌐 Aplikasi Nyata Komunikasi Serial di Industri

Komunikasi serial UART bukan hanya materi akademis, tetapi juga banyak digunakan dalam aplikasi industri seperti komunikasi antara mikrokontroler dengan modul GPS, modul GSM/SIM, printer thermal, hingga beberapa jenis PLC yang mendukung komunikasi serial RS-232. Memahami dasar UART dengan baik akan memudahkan Anda saat harus mengintegrasikan berbagai modul yang menggunakan komunikasi serial di masa depan, termasuk saat harus melakukan debugging menggunakan serial monitor untuk melihat data mentah yang dikirim dan diterima oleh mikrokontroler selama program berjalan.

Related Articles

Leave a Reply