Professional Documents
Culture Documents
Analog To Digital Converter Dengan Microsoft Visual Basic 6.0 Dari Arduino Ke PC
Analog To Digital Converter Dengan Microsoft Visual Basic 6.0 Dari Arduino Ke PC
I. DASAR TEORI
MIKROKONTROLER
Mikrokontroler merupakan sistem komputer kecil yang biasa digunakan
untuk sistem pengendali atau pengontrol yang dapat diprogram sesuai kebutuhan.
Mikrokontroller memiliki 4KB Flash Programmable dan Erasable Read Only
Memory(PEROM) didalamnya.
Arduino Uno memiliki 14 digital pin input / output (atau biasa ditulis I/O,
dimana 6 pin diantaranya dapat digunakan sebagai output PWM), 6 pin input
analog, menggunakan crystal 16 MHz, koneksi USB, jack listrik, header ICSP dan
tombol reset. Hal tersebut adalah semua yang diperlukan untuk mendukung
sebuah rangkaian mikrokontroler. Cukup dengan menghubungkannya ke
komputer dengan kabel USB atau diberi power dengan adaptor AC-DC atau
baterai, anda sudah dapat bermain-main dengan Arduino UNO anda tanpa
khawatir akan melakukan sesuatu yang salah. Kemungkinan paling buruk
hanyalah kerusakan pada chip ATMega328, yang bisa anda ganti sendiri dengan
mudah dan dengan harga yang relatif murah.
Gambar1.Arduino R3
1
File), dan program tersebut berisikan instruksi atau perintah untuk menjalankan
sistem kontrol.
Kabel external (non-USB) seperti menggunakan adaptor AC ke DC atau
baterai dengan konektor plug ukuran 2,1mm polaritas positif di tengah ke jack
power di board. Jika menggunak baterai dapat disematkan pada pin GND dan Vin
di bagian Power konektor.
Papan Arduino ini dapat disupplai tegangan kerja antara 6 sampai 20 volt, jika
catu daya di bawah tengan standart 5V board akan tidak stabil, jika dipaksakan ke
tegangan regulator 12 Volt mungkin board arduino cepat panas (overheat) dan
akan merusak board.
Serial: 0 (RX) dan 1 (TX). Sebagai penerima (RX) dan pemancar (TX)
TTL serial data. Pin ini terkoneksi untuk pin korespondensi chip
ATmega8U2 USB-toTTL Serial.
External Interrupts: 2 dan 3. Pin ini berfungsi sebagai konfigurasi trigger
saat interupsi value low, naik, dan tepi, atau nilai value yang berubah-
ubah.
2
PWM: 3, 5, 6, 9, 10, dan 11. Melayani output 8-bit PWM dengan fungsi
analogWrite().
SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin yang support
komunikasi SPI menggunakan SPI library.
LED: 13. Terdapat LED indikator bawaan (built-in) dihubungkan ke
digital pin 13, ketika nilai value HIGH led akan ON, saat value LOW led
akan OFF.
Uno memiliki 6 analog input tertulis di label A0 hingga A5, masing-
masingnya memberikan 10 bit resolusi (1024). Secara asal input analog
tersebut terukuru dari 0 (ground) sampai 5 volt, itupun memungkinkan
perubahan teratas dari jarak yang digunakan oleh pin AREF dengan fungsi
analog Reference().
Sebagai tambahan, beberapa pin ini juga memeliki kekhususan fungsi antara lain:
KOMUNIKASI
Arduino Uno memiliki fasilitas nomer untuk komunikasi dengan komputer
atau hardware Arduino lainya, atau dengan mikrokontroler. Pada ATmega328
menerjemahkan serial komunikasi UART TTL (5V) pada pin 0 (RX) dan 1 (TX).
Pada ATmega16U2 serial komunikasinya dengan USB dan port virtual pada
software di komputer. Perangkat lunak (firmware) 16U2 menggunakan driver
standart USB COM dan tidak membutuhkan driver luar lainnya. Bagaimanapun
pada OS Windows file ekstensi .inf sangar diperlukan. Software Arduino bawaan
telah menyertakan serial monitor yang sangat mudah membaca dan mengirim data
dari dan ke Arduino. LED indikator TX dan RX akan kedip ketika data telah
terkirim via koneksi USB-to-serial dengan USB pada komputer (tetapi tidak pada
serial com di pin 0 dan pin 1 ).
PEMROGRAMAN
3
kabel USB ke PC atau Mac/Linux anda, jalankan software Arduino Software
(IDE), dan anda sudah bisa mulai memrogram chip ATmega328. Lebih mudah
lagi, di dalam Arduino Software sudah diberikan banyak contoh program yang
memanjakan anda dalam belajar mikrokontroller
MEMORI
POWER SUPPLY
Board Arduino Uno dapat ditenagai dengan power yang diperoleh dari
koneksi kabel USB, atau via power supply eksternal. Pilihan power yang
digunakan akan dilakukan secara otomatis
External power supply dapat diperoleh dari adaptor AC-DC atau bahkan
baterai, melalui jack DC yang tersedia, atau menghubungkan langsung GND dan
pin Vin yang ada di board. Board dapat beroperasi dengan power dari external
power supply yang memiliki tegangan antara 6V hingga 20V. Namun ada
beberapa hal yang harus anda perhatikan dalam rentang tegangan ini. Jika diberi
tegangan kurang dari 7V, pin 5V tidak akan memberikan nilai murni 5V, yang
mungkin akan membuat rangkaian bekerja dengan tidak sempurna. Jika diberi
tegangan lebih dari 12V, regulator tegangan bisa over heat yang pada akhirnya
bisa merusak pcb. Dengan demikian, tegangan yang di rekomendasikan adalah 7V
hingga 12V
Beberapa pin power pada Arduino Uno :
4
II. Alat Yang Digunakan
1. Buatlah Simulasi atau skematik dari rangkain adc pada sebuah software seperti
Proteus 8.6 dan Eagle
5
Gambar 4 . Rangkaian LDR , Potensiometer pada software eagle
2. Pasang dan sambungkan kabel arduino ke Arduino dan bagian USBnya ke PC.
Dan atur Commond pada device manager yang ada di PC.
6
3. Buatlah kode program Arduino untuk menjalankan rangkaian pada percobaan
tersebut dengan menggunakan software arduino.
7
6. Apabila program selesai diUpload, kemudian lakukan komunikasi serial
antara Mikrokontroler dengan PC (Laptop). Aplikasi yang digunakan yaitu
Microsoft Visual Basic 6.0.
7. Kemudian buatlah view object dan view code pada Microsoft Visual Basic
6.0.
8
Gambar 8. View Code pada Microsoft Visual Basic 6.0
8. Setelah semuanya selesai, maka pengujian pada komunikasi serial dapat
dilakukan.
9
III.Hasil Percobaan
Pada percobaan kali ini adalah pengujian menggunakan rangkaian
komunikasi serial dari Mikrokontroler ke PC yaitu sebagai Analog to Digital
Converter. Pada percobaan ini arduino akan mengontrol PC, sehingga PC dapat
menampilkan nilai ADC dan nilai tegangan yang masuk oleh Mikrokontroler.
Program yang digunakan berupa Microsoft Visual Basic 6.0 yang akan
menampilkan perintah dari Arduino. Pada percobaan ini diperlukan kabel port usb
to serial untuk menghubungkan antara rangkaian port serial ke laptop.
10
0
11
Tabel Data. Nilai ADC dan Tegangan Masuk
1 134 0.65
2 401 1.96
3 655 3.20
4 872 4.26
5 986 4.82
Pada tabel diatas kita dapat mengetahui bahwa ketika LDR diberi cahaya
yang terang , maka maka nilai ADC dan tegangan masuk mengecil dan ketika
gelap nialai ADC dan tegangan masuk membesar.
PROGRAM ARDUINO
/* ADC dengan Sensor LDR GERRY VERZAZTIEN ANUGRAH 5 ELB */
float sensorPin = A2; menunjukkan sensor berada pada pin Analog A2
float sensorValue = 0; variabel untuk menyimpan nilai berasal dari LDR
void setup() digunakan untuk inisialisasi variabel,setup
dijalankan sekali saat arduino direset
{
pinMode(2, OUTPUT); Pin 2 sebagai output LED (Sangat Terang)
pinMode(4, OUTPUT); Pin 4 sebagai output LED (Terang)
pinMode(7, OUTPUT); Pin 7 sebagai output LED (Sedang)
pinMode(8, OUTPUT); Pin 8 sebagai output LED (Gelap)
pinMode(12, OUTPUT); Pin 12 sebagai output LED (Sangat Gelap)
//Start Serial port
Serial.begin(9600); memulai serial untuk output ( untuk pengujian )
}
void loop() digunakan agar program berulang
12
{
sensorValue = analogRead(sensorPin); membaca nilai dari sensor
if(sensorValue<300 and sensorValue>100) digitalWrite(2, HIGH); jika nilai
sensorValue <300 dan sensorValue >100, maka kondisi output LED (Sangat
Terang) pada pin 2 akan menyala.
else digitalWrite(2, LOW); ”else” menyatakan apabila nilai >300 dan <100
maka output LED pada pin 2 akan mati.
13
Serial.print("Vin= "); mencetak Vin = …
Serial.print((sensorValue*5)/1024); mencetak nilai ( nilai * 5 /1024 )
Serial.println(" Volt");
delay(500); delay 500 milisecon sebelum loop berikutnya agar ADC
siap membaca data berikutnya
}
14
cmdDisconnect.Enabled = False perintah disconnect tidak bekerja
Timer1.Enabled = False timer 1 tidak bekerja
End Sub mengakhiri sub program
SelText = A
End With mengakhiri perintah with
End If mengakhiri perintah if
End Sub mengakhiri sub program
15
No. Tegangan ADC (V) Vin(V) Output
Cahaya LED
1 134 0.65 Sangat Terang
2 401 1.96 Terang
3 655 3.20 Sedang
4 872 4.26 Gelap
5 986 4.82 Sangat Gelap
134 x 5 670
1. Vin = = = 0.654 V 0,65 V
1024 1024
401 x 5 2,005
2. Vin = = = 1.958 V 1.95 V
1024 1024
655x 5 3,275
3. Vin = = = 3.198 V 3.20 V
1024 1024
872x 5 4,360
4. Vin = = = 4.257V 4.26 V
1024 1024
986x 5 4930
5. Vin = = = 4.814 V 4.82 V
1024 1024
Apabila LDR dalam keadaan gelap maka ADC bernilai besar ( tinggi )
maka Vin pun akan semakin besar pula , begitu sebaliknya apabila LDR dalam
keadaan terang maka data ADC akan bernilai kecil ( rendah ) dan Vin akan
semakin kecil hingga 0 apabila LDR mendapat cahaya yang sangat terang. Untuk
buzzer sebagai outputnya , buzzer akan berbunyi apabila data ADC kurang dari
500 ( <500 ) jika data ADC 500 atau >500 maka bunyi buzzer akan mati ini sesuai
seperti yang kita atur pada program Arduino.
16
V. Kesimpulan
1. Pada percobaan kali ini yaitu membahas tentang Komunikasi Serial
Mengukur nilai Analog to Digital Converter dengan Microsoft Visual
Basic 6.0 dari Arduino Ke PC
2. Komunikasi serial adalah salah satu metode komunikasi data di mana
hanya satu bit data yang dikirimkan melalui seuntai kabel pada suatu
waktu tertentu.
3. Aplikasi yang digunakan untuk menjalankan rangkaian ini yaitu program
dalam bentuk aplikasi Software Arduino dan Visual Basic 6.0.
4. Apabila terjadi kesalahan/error cek kembali kode program apakah sudah
sesuai antara VB dan Software Arduino.
17
DAFTAR PUSTAKA
http://www.caratekno.com/2015/07/pengertian-arduino-uno-mikrokontroler.
( diakses tanggal 25 Desember 2017)
htmlhttp://mikrokontrolerkits.blogspot.com (diakses tanggal 25 Desember 2017)
http//id.wikipedia.org/wiki/Komunikasi_serial (diakses tanggal 26 Desember
2017)
http://rodo-heweh.blogspot.com/2007/04/perakitan-kabel-null-modem
db9db25rj45.html (diakses tanggal 26 Desember 2017)
http://desylvia.wordpress.com/2010/09/06/komunikasi-serial/ (diakses tanggal 27
Desember 2017)
http://elektro-kontrol.blogspot.co.id/2011/06/analog-to-digital-converter-adc.html
( diakses tanggal 27 desember 2017 )
http://ecadio.com/mengenal-dan-belajar-arduino-uno-r3 ( diakses tanggal 27
desember 2017 )
18