You are on page 1of 14

MATERI 1

KOMUNIKASI MIKROKONTROLER DENGAN SOFTWARE PROCESSING

I. TUJUAN
1. Membaca data yang masuk pada pin Analog Input Arduino.
2. Memvisualisasikan data dari pin Analog Input dalam bentuk grafik.

II. DASAR TEORI


A. Pengantar Processing
Software untuk membuat gambar, animasi dan interaksi. Mempermudah
pemrograman grafis yang bersifat interaktif. Pembuatan processing diawali sejak
tahun 2001, versi alpha dirilis pada agustus 2002 sampai april 2005, versi beta dirilis
kepada publik sampai tahun 2008. Processing membuat berbagai ekstensi yang
dikenal sebagai pustaka (library), yang memungkinkan digunakan berbagai aplikasi.
Ratusan pustaka yang dapat menghubungkan Processing dengan berbagai bidang,
seperti komputer visi, pengolahan suara, video, data/network, perangkat keras
(misalnya mouse, keyboard, tablet) dan sebagainya. 29 Nopember 2008, tim merilis
versi 1.0 sebagai versi pemrograman yang stabil. Pendiri Processing adalah Ben Fry
dan Casey Reas.

B. Membuat Animasi Menggunakan Processing


1. Obyek Ellipse.
ellipse(50, 52, 90, 90);

2. Obyek Ellipse Dengan Mouse.


void setup(){
size(500, 300);
smooth();
}
void draw(){
ellipse(mouseX, mouseY, 90, 90);
if (mousePressed) {
fill(200);
}
else {
fill(255);
}
}
3. Animasi Pantulan Bola.
int nilaiX = 40;
int nilaiY = 40;
int arahX = 3;
int arahY = 3;
void setup() {
size(500, 300);
}
void draw () {
background(255); fill(0, 255, 0);
noStroke(); ellipse(nilaiX, nilaiY, 40, 40);
nilaiX = nilaiX + arahX;

if (nilaiX>width-20 || nilaiX<20) {
arahX = arahX*-1;
}
nilaiY = nilaiY + arahY;
if (nilaiY>height-20 || nilaiY<20) {
arahY = arahY*-1;
}
}

C. Komunikasi Processing Arduino


Membuat animasi yang atraktif dengan input sensor dari Arduino. Membuat
game yang unik dengan antarmuka Arduino.

Contoh :

Gambar 1. Arduino dan Processing


Gambar 2. Visualisasi dengan Processing

Processing dan Arduino berkomunikasi secara Serial memalui port USB.


Menghubungkan Processing dan Arduino adalah mengetahui port COM berapa yang
digunakan.
Processing → import pustaka serial. Sintaks import processing.serial.*;

III. PERALATAN
1. Arduino Uno Board
2. Softwarre Processing
3. LED dan Resistor 220 ohm

IV. RANGKAIAN

Gambar 3. Rangkaian Percobaan

V. PERCOBAAN
1. Arduino Kirim Data String Dan Processing Baca Data String.
a. Program Arduino
void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.println("Hello, world!");
delay(100);
}
b. Program Processing import
processing.serial.*; Serial
myPort;
String val;
void setup()
{
String portName = Serial.list()[0];
myPort = new Serial(this, portName, 9600);
}
void draw()
{
if ( myPort.available() > 0)
{
val = myPort.readStringUntil('\n');
}
println(val);
}

2. Kontrol Led Pada Board Arduino Menggunakan Processing


a. Program Arduino
int ledPin = 9;
void setup()
{
Serial.begin(9600);
pinMode(ledPin, OUTPUT);

}
void loop()
{
byte val;
if (Serial.available()) { val
= Serial.read();
analogWrite(ledPin, val);
}
}

b. Program Processing
import processing.serial.*;
Serial port;
void setup() { size(256, 150);
println("Available serial
ports:"); println(Serial.list());

port = new Serial(this, Serial.list()[0], 9600);


}
void draw() {
for (int i = 0; i < 256; i++)
{ stroke(i);
line(i, 0, i, 150); }
port.write(mouseX);
}
VI. LATIHAN
1. Buatlah program aplikasi arduino dengan processing, arduino sebagai
pemngirim data ke software processing untuk mengatur ukuran obyek
ellipse.
2. Buatlah program aplikasi arduino dengan processing, untuk mengontrol nyala 2
LED On-Off secara bergantian.
PERCOBAAN 1

KOMUNIKASI MIKROKONTROLER DENGAN SOFTWARE PROCESSING

1. Percobaan 1

(Arduino Kirim Data String Dan Processing Baca Data String.)

a. Program Arduino

void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.println("Hello, world!");
delay(100);
}

b. Program Processing

import processing.serial.*; Serial


myPort;
String val;
void setup()
{
String portName = Serial.list()[0];
myPort = new Serial(this, "COM1", 9600);
}
void draw()
{
if ( myPort.available() > 0)
{
val = myPort.readStringUntil('\n');
}
println(val);
}

Rangkaian
Hasil

2. Percobaan 2

(Kontrol Led Pada Board Arduino Menggunakan Processing)

a. Program Arduino
int ledPin = 9;
void setup()
{
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
}
void loop()
{
byte val;
if (Serial.available()) {
val = Serial.read();
analogWrite(ledPin, val);
}
}

b. Program Processing

import processing.serial.*;
Serial port;
void setup() { size(256, 150);
println("Available serial ports:");
println(Serial.list());
port = new Serial(this, Serial.list()[0], 9600);
}
void draw() {
for (int i = 0; i < 256; i++)
{ stroke(i);
line(i, 0, i, 150); }
port.write(mouseX); }
Rangkaian

Hasil

LED nyala saat processing dijalankan


ANALISA

Pada praktikum ini kita diperintahkan untuk mencoba membuat antarmuka antara
mikrokontroler (arduino) dan processing. Dimana processing merupakan software untuk
membuat gambar,animasi dan interaksi. Pada praktikum ini kita diminta untuk melakukan 2
percobaan. Pada percobaan pertama dilakukan pengiriman data string dari arduino dan
kemudian ditampilkan pada processing. Pada arduino dibuat source code yang akan
mengirimkan data string dengan komunikasi serial, dimana data yang dikirim dituliskan
serial.print(“Hello world!”). Pada sisi processing juga dibuat source code juga untuk
menerima string data yang dikirimkan kemudian ditampilkan. Yaitu dengan memanfaatkan
port yang telah disambungkan kemudian tinggal diberi perintah myPort.readStringuntil().

Pada percobaan kedua dilakukan kontrol LED pada board arduino dengan processing.
Langkah pertama yaitu menyambungkan semua komponen ke arduino dan menyocokkan port
yang akan digunakan. Lalu dibuat source code pada arduino untuk menerima perintah untuk
menghidupkan LED sesuai masukan dari processing. Dan pada processing dibuat source code
untuk mengontrol LED agar nyala atau mati sesuai program di modul. Setelah di run dapat
diamati LED menyala.

KESIMPULAN

Dapat disimpulkan bahwa pada penggunaan antarmuka sebuah mikrokontroler kita


dapat memanfaatkan software pendukung seperti processing. Dimana processing dan arduino
bisa berperan sebagai penerima atau pengirim data sehingga komunikasi yang dilakukan bisa
fleksibel dan disesuaikan dengan kebutuhan.
TUGAS RESMI
1. Buatlah program aplikasi arduino dengan processing, arduino sebagai pengirim data
ke software processing untuk mengatur ukuran objek ellipse
 Rangkaian

 Listing Code Arduino


 Listing Code Processing

 Output


2. Buatlah program aplikasi arduino dengan processing, untuk mengontrol nyala 2 LED
On-Off secara bergantian.
 Rangkaian Proteus

 Listing Code Arduino

 Listing Code Processing


 Output

You might also like