Menghubungkan Python dengan Arduino via Serial Connection

Cara menghubungkan Python dengan Arduino menggunakan Serial Connection.

25-10-2023
2 min read

Arduino adalah platform open-source yang digunakan untuk membuat berbagai proyek elektronika. Salah satu cara untuk mengontrol Arduino adalah melalui koneksi serial. Dalam artikel ini, kita akan membahas cara menghubungkan Python dengan Arduino menggunakan koneksi serial.

Apa itu Serial Connection?

Serial Connection adalah metode komunikasi yang digunakan untuk mentransfer data antara dua perangkat melalui kabel serial. Pada Arduino, koneksi serial digunakan untuk mengirim dan menerima data dari komputer atau perangkat lain.

Menghubungkan Python dengan Arduino

Untuk menghubungkan Python dengan Arduino melalui koneksi serial, kita perlu melakukan beberapa langkah berikut:

1. Install Library PySerial

PySerial adalah library Python yang digunakan untuk berkomunikasi dengan perangkat serial. Anda dapat menginstalnya menggunakan pip:

command prompt
pip install pyserial

2. Buka Port Serial

Untuk berkomunikasi dengan Arduino, kita perlu mengetahui port serial yang digunakan oleh Arduino. Anda dapat menemukan port serial yang digunakan dengan membuka Arduino IDE dan melihat di menu Tools > Port.

3. Buat Koneksi Serial

import serial
# Buka koneksi serial dengan Arduino
ser = serial.Serial('COM3', 9600) # Ganti 'COM3' dengan port serial Arduino

4. Kirim Data ke Arduino

Anda dapat mengirim data ke Arduino menggunakan metode write():

# Kirim data ke Arduino
ser.write(b'Hello Arduino!')

5. Terima Data dari Arduino

# Baca data dari Arduino
data = ser.readline()
print(data.decode('utf-8'))

6. Tutup Koneksi Serial

Jangan lupa untuk menutup koneksi serial setelah selesai:

# Tutup koneksi serial
ser.close()

Contoh Program Lengkap Python dan Arduino

Berikut adalah contoh program lengkap untuk menghubungkan Python dengan Arduino melalui koneksi serial:

python-arduino-serial-connection.py
import serial
# Buka koneksi serial dengan Arduino
ser = serial.Serial('COM3', 9600) # Ganti 'COM3' dengan port serial Arduino
# Kirim data ke Arduino
ser.write(b'Hello Arduino!')
# Baca data dari Arduino
while True:
data = ser.readline()
print(data.decode('utf-8'))
# Tutup koneksi serial
ser.close()

Program di atas akan mengirim pesan “Hello Arduino!” ke Arduino dan kemudian menerima balasan dari Arduino.

Program Arduino yang digunakan:

arduino-serial-connection.ino
void setup() {
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
String data = Serial.readString();
Serial.print("Received: ");
Serial.println(data);
}
}