Anda di halaman 1dari 18

HIMPUNAN MAHASISWA ELEKTRO

FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

Mikrokontroler
Mikrokontroler adalah komputer kecil dalam satu chip (integrated circuit)
yang mengandung sebuah unit processor, memori, dan bagian programabel I/O
(input/output). Pemrograman memori dalam bentuk NOR flash atau OTP ROM
sudah termasuk dalam chip tersebut berupa RAM. Mikrokontroler didisain untuk
aplikasi embedded system. Mikrokontroler banyak digunakan pada produk-
produk atau perangkat otomatis, seperti misalnya pada sistem kontrol mesin
otomatis pada mobil, remote control, mesin kantor, mainan elektronika, dan
embedded sistem lainnya.
(Gambar Mikrokontroler perhatikan gambar 1 pada lampiran)
Mikrokontroler yang ada saat ini berbasis 8-bit, 16-bit, dan sudah ada yang
32-bit dan beroperasi pada frekuensi clock rate mulai dari orde kHz hingga orde
ratusan MHz. Penggunaan dan pemilihan frekuensi clock juga akan berpengaruh
pada asupan daya yang dibutuhkan. Semakin besar frekuensi clock yang
digunakan, maka daya yang dikonsumsi juga semakin besar. Berdasarkan jenis
arsitektur yang digunakannya, mikrokontroler terbagi atas MCS, AVR, dan ARM.
Oleh karena fungsionalitasnya yang sangat banyak dan pengaplikasiannya
yang bisa digunakan hampir untuk semua bidang, tidak heran apabila perangkat
kecil ini menjadi salah satu perangkat yang paling dicari pada dekade ini, terutama
oleh para pengembang, baik dari kalangan industri maupun dari kalangan pelajar.
Maka tak heran apabila akhir – akhir ini, nama mikrokontroler menjadi sangat
tenar dengan bermunculannya applikasi – applikasi mikrokontroler yang sangat
menarik, terutama pada bidang robotika, baik aplikasi robotika yang sederhana
hingga yang kompleks, dari yang berbasis 8-bit (AVR) hingga yang berbasis 32-
bit (ARM).
Perbedaan antara mikrokontroler dan mikroprosesor adalah:
1. Asitektur –> dalam 1 chip mikrokontroler sudah berisi prosesor (sebagain
kontrol unit), memori (penyimpanan data dan program), I/O (input/output),
serta media komunikasi. Sedangkan 1 chip mikroprosesor hanya berisi unit
prosesor saja.
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

2. Aplikasi –> mikrokontroler merupakan suatu chip terintegrasi dengan


prosesor dan memori yang sangat terbatas, sehingga hanya cocok
digunakan untuk aplikasi-aplikasi embedded sistem dan sistem kontrol
sederhana dan low cost. Sedangkan mikroprosessor memiliki kemampuan
memproses data yang jauh lebih cepat dan memiliki kapasitas yang jauh
lebih besar untuk diintegrasikan dengan perangkat – perangkat memori
yang upgradabel, sehingga sangat cocok digunakan pada applikasi –
applikasi yang kompleks (misalnya untuk diintegrasikan menjadi suatu
unit komputer).
3. Cost –> suatu applikasi berbasis mikrokontroler akan membutuhkan cost
yang jauh lebih rendah, hal ini dikarenakan Mikrokontroler merupakan
chip terintegrasi yang sudah memiliki memori internal dan port I/O.
Sedangkan mikroprosesor masih membutuhkan perangkat pendukung
lainnya seperti memori dan interface I/O.
(Dikutip dari: http://www.duniaelektronika.net/mikrokontroler/, diakses pada 21
Februari 2017).

Ada banyak jenis software yang dapat digunakan sebagai editor yang
sekaligus menyediakan compiler untuk mikrokontroler Atmel AVR dengan
menggunakan bahasa C, diantaranya MikroC for AVR, WinAVR, Image Craft
ICC AVR, IAR Embedded Workbench for AVR, dan CodeVision AVR.
CodeVision AVR yang digunakan pada blog tutorial ini adalah
CodeVisionAVR versi evaluasi. Pada versi evaluasi terdapat batasan untuk
penggunaan fasilitas yang disediakan, namun lebih dari cukup untuk belajar
pemrograman mikrokontroler Atmel AVR. CodeVisionAVR menyediakan sebuah
editor yang didesain untuk menghasilkan program C secara otomatis untuk
mikrokontroler AVR. Program C yang akan diimplementasikan menggunakan
standar ANSI C yang sesuai dengan arsitektur AVR.
CodeVisionAVR adalah sebuah compiler C yang telah dilengkapi dengan
fasilitas Integrated Development Environment (IDE) dan didesain agar dapat
menghasilkan kode program secara otomatis untuk mikrokontroler Program ini
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

dapat berjalan dengan menggunakan sistem operasi Windows® XP, Vista,


Windows 7, dan Windows 8, 32-bit dan 64-bit.
(Tampilan CodeVision AVR dapat dilihat pada Gambar 2 yang terlampir)
Integrated Development Environment (IDE) telah dilengkapi dengan
fasilitas pemrograman chip melalui metode In-System Programming sehingga
dapat secara otomatis mentransfer file program ke dalam chip mikrokontroler
AVR setelah sukses dikompilasi.
Software In-System Programmer didesain untuk bekerja ketika
dihubungkan dengan development board STK500, STK600, AVRISP mkII, AVR
Dragon, AVRProg (AVR910 application note), Atmel JTAGICE mkII, Kanda
System STK200+STK300, Dontronics DT006, Vogel Elektronik VTEC-SIP,
Futurlec JRAVR and MicroTronics ATCPU, dan Mega2000.
Untuk mengingkatkan kehandalan program ini, maka pada
CodeVisionAVR juga terdapat kumpulan pustaka (library) untuk:
1. Modul LCD Alphanumeric
2. Philips I2C bus
3. National Semiconductor Sensor Temperatur LM75
4. Philips PCF8563, PCF8583, dan Maxim/Dallas Semiconductor Real Time
Clock DS1302 dan DS1307
5. Maxim/Dallas Semiconductor 1 wire protocol
6. Maxim/Dallas Semiconductor Sensor Temperatur DS1820, DS18S20, dan
DS18B20
7. Maxim/Dallas Semiconductor Termometer/Thermostat DS1621
8. Maxim/Dallas Semiconductor EEPROMs DS2430 dan DS2433
9. SPI
10. Power Management
11. Delays
12. Gray Code Conversion
13. MMC/SD/SD HC Flash memory cards low level access
14. Akses FAT pada MMC/SD/SD HC Flash memory card
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

CodeVisionAVR dapat menghasilkan kode program secara otomatis


melalui fasilitas CodeWizardAVR Automatic Program Generator. Dengan adanya
fasilitas ini maka penulisan program dapat dilakukan dengan cepat dan lebih
efisien. Seluruh kode dapat diimplementasikan dengan fungsi sebagai berikut:
1. Identifikasi sumber reset
2. Mengatur akses memori eksternal
3. Inisialisasi port input/output
4. Inisialisasi interupsi eksternal
5. Inisialisasi timer/counter dan watchdog timer
6. Inisialisasi USART dan interupsi buffer untuk komunikasi serial
7. Inisialisasi komparator analog dan ADC
8. Inisialisasi interface SPI dan two wire interface (TWI)
9. Inisialisasi interface CAN
10. Inisialisasi I2C Bus, sensor suhu LM75, thermometer/thermostat DS1621,
dan real time clock PCF8563, PCF8583, DS1302, DS1307
11. Inisialisasi 1 wire bus dan sensor suhu DS1820/DS18S20
12. Inisialisasi modul LCD
(Dikutip dari: http://www.immersa-lab.com/pengenalan-codevision-avr.htm,
diakses pada 21 Februari 2017).

Bahasa pemrograman untuk mikrokontroler AVR yang paling populer


adalah menggunakan bahasa C. Bahasa C adalah bahasa pemrograman tingkat
menengah. Selain bahasa C ada bahasa tingkat rendah seperti Assembly dan
bahasa tingkat tinggi seperti Basic dan Pascal. Semakin rendah sebuah bahasa
pemrograman maka semakin mendekati kode mesin namun sulit dimengerti oleh
manusia. Sebaliknya semakin tinggi bahasa pemrograman maka semakin mudah
dimengerti oleh manusia namun sukar untuk diaplikasikan ke mesin, dalam hal ini
chip mikrokontroler.
Penggunaan bahasa C dalam pemrograman mikrokontroler semakin luas
setelah munculya kompiler AVR-GC, yaitu kompiler bahasa C yang sudah
Semiconductor), sebuah teknologi pembuatan chip terintegrasi (IC) efisien yang
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

dikhususkan untuk mikrokontroler jenis AVR. GCC sendiri adalah sebuah


kompiler bahasa C universal yang biasa dipakai saat proses development software
seperti sistem operasi Linux dan aplikasi. GCC merupakan singkatan dari GNU C
Compiler, yaitu compiler bahasa C yang gratis berbasis open source.
Bahasa C dipilih karena struktur bahasanya yang tidak rumit seperti
bahasa tingkat rendah namun mudah dimengerti oleh manusia seperti bahasa
tingkat tinggi. Struktur penulisan bahasa C cukup simpel namun dengan
kustomisasi yang luas dan cukup menjangkau dalam pemrograman
mikrokontroler. Berikut ini beberapa hal penting dalam bahasa C yang digunakan
untuk pemrograman mikrokontroler.
Struktur Penulisan Kode Program Bahasa C
Dalam menulis kode program menggunakan bahasa C kita harus
mengikuti kaidah-kaidah penulisan yang benar seperti misalnya dalam program
harus terdapat main rutin program yang ditarus didalam bagian/prosedur main.
Kemudian setiap perintah bahasa C diakhiri dengan tanda titik koma (;). Dalam
bahasa C juga harus diperhatikan penulisan huruf kecil dan huruf besar karena
bahasa C membedakan keduanya, misalnya kata Waktu berbeda dengan waktu.
Berikut ini beberapa aturan penulisan bahasa C terutama yang sering
dipakai dalam pemrograman mikrokontroler AVR:
1. Pada program utama harus terdapat main rutin yang ditulis dengan nama
main.
2. Statemen didalam rutin, baik itu main, fungsi atau prosedur harus diawali
dengan tanda kurung kurawal buka ({) dan diakhiri dengan tanda kurung
kurawal tutup (}).
3. Setiap statemen program baik itu perintah, deklarasi variabel atau
konstanta harus diakhiri dengan tanda titik kome (;).
4. Komentar program diawali dengan tanda // atau ditulis diantara tanda /*
dan */. Komentar program adalah statemen yang tidak ikut dikompile atau
tidak dikerjakan oleh mikrokontroler dan tidak terikat dengan aturan sintak
yang benar.
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

5. Bahasa C mendukung penggunaan preposesor seperti include, define, if ,


ifdef dan sebagainya. Setiap preposesor diawali dengan tanda # dan tidak
diakhiri dengan tanda titik koma (;).
6. Untuk deklarasi beberapa variabel sekaligus maka setiap variabel harus
dipisahkan dengan tanda koma (,).
7. Setiap identifier baik itu main rutin, fungsi atau prosedur harus disertai
tanda kurung sepasang () pada akhir identifier, misalnya main(), hitung(),
display() dan sebagainya.
Dan berikut ini contoh program mikrokontroler AVR yang ditulis
menggunakan bahasa C : (Lampiran Kode 1)
(Dikutip dari: http://www.nulis-ilmu.com/2015/10/bahasa-c-untuk-
mikrokontroler-avr.html, diakses pada 21 Februari 2017).
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

LAMPIRAN
Gambar 1. Mikrokontroler

Gambar 2. Tampilan CodeVision AVR


HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

LAMPIRAN
Kode 1. Contoh Program Mikrokontroler AVR dengan bahasa C

#include <avr/io.h> //preposesor include


#include <util/delay.h> //preposesor include
//deklarasi variabel
//dipisahkan dengan koma, diakhiri dengan titik koma
uint8_t on,off;

//main rutin
int main (void)
{
DDRD = 0xFF; // Buat semua Port D menjadi output, 0xFF= 1111 1111
on = 0xFF;
off = 0;

while(1) //perulangan program


{
PORTD = on; // Port D high, on=0xFF=1111 1111
_delay_ms(1000); // Tunda 1 detik
PORTD = off; // Port D low, off=0=0000 0000
_delay_ms(100); // Tunda 1 detik
}

return 0;
}
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

V. ANALISA HASIL PERCOBAAN


Pada percobaan kali ini mengenai mikrokontroler, mengenal apa itu
mikrokontroler, fungsi-fungsinya, bagaimana program dapat bekerja pada
perangkat beserta hal-hal yang menjadi dari bagian dari mikrokontroler itu sendiri,
yang mana meliputi CPU, memory, I/O serta ADC. Selain itu juga pada
praktikum kali ini dikenalkan dengan program Arduino yang mana fungsinya
dapat memberikan perintah pada perangkat untuk melakukan sesuatu hal yang kita
tulis (script) pada IDE dari Arduino lalu melakukan proses compile sebagai
tindakan untuk verifikasi apakah sudah benar atau masih terdapat bug pada script
yang kita buat, selanjutnya upload agar data yang dari Arduino masuk ke
mikrokontroler itu dan melakukan perintah yang seharusnya kita berikan.
Selain itu, pada percobaan kali ini kita dapat mengetahui bahwa struktur dari
pemrograman Arduino itu dibagi menjadi 3. Yang mana pada bagian pertama
header, berguna untuk menyatakan family/library apa yang akan dipakai pada
komponen, ataupun kita dapat memberitahukan unit (komponen) tersambung pada
port ke sekian yang biasanya dengan perintah define. Bagian kedua atau setup
merupakan bagian untuk mendeklarasikan pada tahap initial/awal/booting untuk
melakukan tindakan, seperti misalkan pada port 3 terdapat komponen kita jadikan
sebagai input/output (seperti pada percobaan pertama kita deklarasikan LED pada
port ke 13 sebagai output) ataupun pada LCD nyala pada baris dan kolom ke
berapa. Pada bagian setup ini biasanya kita kita mulai dengan void setup ().
Bagian ketiga adalah loop yang merupakan bagian untuk menuliskan perintah
yang nantinya akan dilakukan tindakan secara berulang-ulang sampai pada
akhirnya power dari perangkat kita non-aktifkan, hal yang kita dapat kan dari
praktikum kali ini adalah digitalWrite (sebagai pemberian nilai pada komponen)
karena disini digital maka nilai yang berlaku adalah 1/0 (HIGH/LOW) namun
tidak untuk analog (0-255) dan juga perintah untuk digitalRead (sebagai
pembacaan pada komponen) yang komponennya ini biasanya berupa sensor untuk
mengetahui nilai yang muncul dari perangkat tersebut, sama seperti tadi apa bila
digital nilai yang terbaca dari 0-1 sedangkan analog 0-255. Pada bagian loop ini
biasanya kita mulai dengan perintah void loop ().
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

Pada percobaan 3 mengenai perangkat ultrasonic, kita dapat mengetahui


beberapa hal seperti fungsinya yang dapat mengetahui tata letak dari gema
(frekuensi) dari ultrasonic seperti pengaplikasiannya pada hewan paus/kelelawar
ataupun yang lainnya yang ia gunakan untuk kehidupannya. Namun disini kita
dapat menjadikan sensor ultrasonic ini sebagai pemberitahu tata letak apa yang
ada didepan/dibelakang ataupun dikiri dan dikanan dari pantulan frekuensi yang
diberikan dari Trigger dan menerima apa yang dipantulkan lagi dengan Echo, dari
sini kita dapat mengetahui bahwa hal ini dapat kita aplikasikan pada perangkat
avoid robot yang prinsipnya menghindar dari obstacle pada jarak kesekian dengan
menggerakkan arah menjauh dari obstacle tersebut.
Pada percobaan 4 mengenai perangkat Motor DC, kita dapat mengetahui
beberapa hal dari rangkaiannya bahwa dua motor DC disambungkan pada motor
driver, yang mana artinya dua motor DC akan di jalankan dengan power sumber
6-12 V. dari sini kita dapat mengetahui bahwa untuk menjalankan dua motor
power dibagi 2 misalkan sumber 6 V maka pada masing masing motor
mendapatkan 3 V, apabila semakin besar power atau sumber yang diberikan maka
akan semakin meningkat kecepatan putar (RPM) dari motor DC yang kita
gunakan, maka dapat kita ketahui bahwa RPM dan sumber tegangan berbanding
lurus meningkat satu sama lainnya.
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

VI. Tugas dan Jawaban


1. Carilah cara/langkah - langkah membuat avoid robot!
2. Carilah materi mengenai Relay!
3. Apa yang dimaksud dengan komunikasi I2C ?
4. Follow asisten PDSK dan @indorobot!
5. Foto selfie dengan Kak Wahyduin angkatan 16 Bukit!

Jawaban :
1. Cara membuat avoid robot :
Langkah pertama :
Kita menggunakan papan pcb atau plastik sebagai body dari Robot
Penghindar Halangan Ini. Rencananya, saya ingin membuat PCB
Rangkaian Motor Driver langsung sebagai body dari robot kemudian, tapi
karna saya sudah ada Driver Motor DC, kali ini kita gunakan plastik saja
sebagai platform dari robot kita ini.

Langkah Kedua :
Kapasitor 0.1uF harus disolder melintasi koneksi motor dan membantu
mengurangi kebisingan listrik di sirkuit, jika tidak Arduino akan menjadi
sedikit jengkel. Asalkan Anda menggunakan kapasitor keramik atau
Mylar, mereka tidak memiliki polaritas jadi hanya menyolder satu kaki ke
setiap tag koneksi motor dan melakukannya pada kedua motor. Cobalah
untuk meletakkan kapasitor rata pada badan gearbox kuning untuk
menjaga semuanya tetap rapi.

Anda juga perlu menyolder ke tag koneksi kabel yang masuk ke Motor
Drive Shield. Coba tempelkan ke lead kapasitor jika Anda tidak yakin
mendapatkan semua yang disolder pada titik koneksi motor. Motor-motor
ini memiliki poros-D dan roda yang cukup menekan poros. Gunakan
tekanan yang cukup untuk mengaktifkan roda. Setelah itu, potong pita
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

kecil dari lapisan dua sisi, kupas satu lapisan dan tekan pada gearbox
motor, yang akan tersambung dengan alas.
Langkah Ketiga :
Pasang dua motor DC ke sisi berlawanan dari alas menggunakan pita dua
sisi. Dapatkan motor sedekat mungkin ke tepi untuk memungkinkan
gerakan bebas roda

Langkah Keempat :
Motor servo SG90 kecil memberi leher microbot kami sehingga dapat
memutar sensor ultrasonik pada sumbunya. Motor servo itu sendiri harus
dilengkapi dengan paket asesoris yang disebut klakson. Gunakan lengan
dua sisi dan tekan ke poros motor servo. Anda mungkin perlu
menggunakan sedikit kekuatan untuk mendapatkannya pertama kali, tetapi
cobalah untuk tidak menggunakan terlalu banyak.

Langkah Kelima :
Motor Drive Shield menyediakan daya drive ekstra untuk mengontrol
motor DC. Ini juga menyediakan koneksi untuk motor servo dan sensor
ultrasonik, di mana Anda akan membutuhkan empat kabel DuPont pria-
wanita. Jika Anda membeli tas berisi 40 kabel yang telah dicetak, lepaskan
empat kabel dan hati-hati solder ujung jantan ke Motor Drive Shield.
Solder satu kabel ke rel + 5V, satu ke pin GND dan masing-masing ke pin
analog A4 dan A5 di sudut kanan bawah. Periksa diagram blok untuk
penugasan pin

Langkah Keenam :
Motor Drive Shield memiliki serangkaian pin header di bagian bawah
papan - ini sejajar dengan header di bagian atas Arduino. Luruskan pin dan
tekan perisai ke babi hutan Arduino

Langkah Ketujuh :
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

Ambil selotip berlapis dua sisi lagi dan tambahkan ke bagian bawah papan
Arduino dan kotak baterai. Perhatikan bahwa Anda ingin bagian bawah
kotak baterai macet ke alas sehingga Anda dapat dengan mudah melepas
bagian atas kotak dan mendapatkan baterai. Pastikan Anda mengarahkan
kotak baterai sehingga sakelar geser menggantung di tepi belakang agar
lebih mudah dioperasikan. Tempelkan kotak baterai terlebih dahulu,
pastikan sakelar bergeser di belakang dan sejajarkan tumpukan Arduino /
pelindung di sebelahnya. Tergantung pada ukuran bibir wadah makanan
Anda, Anda mungkin perlu dua lapis selotip untuk mendapatkan
ketinggian yang tepat

Langkah Kedelapan :
Selanjutnya, tambahkan beberapa pita berlapis dua sisi ke bagian atas
sensor ultrasonik - gunakan cukup untuk membungkus sisi-sisi sensor
untuk tongkat tambahan. Pastikan keempat pin header mengarah ke atas
dan tekan sensor terhadap tanduk servo. Tambahkan beberapa pita lagi ke
bagian bawah motor servo dan pasang di bagian depan pangkalan dekat
lubang pemasangan roda kastor. Hubungkan kabel daya motor servo ke
port ‘SERVO_2’ di kiri atas Motor Drive Shield. Kabel oranye harus
menuju ke pin header 's.

Langkah Kesembilan :
Selanjutnya, sambungkan ujung betina kabel DuPont ke pin sensor
ultrasonik. Kawat A5 harus menuju ke pin 'echo' dan A4 ke pin 'trigger'.
Saya menggunakan karet gelang yang terbungkus longgar untuk menjaga
kabel tetap rapi dan memungkinkan cukup banyak permainan untuk
bergerak bebas.

Langkah Kesepuluh :
Hubungkan baterai ke sekrup EXT_PWR, tetapi pastikan Anda
mendapatkan polaritasnya dengan benar atau Anda akan meledakkan
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

semuanya sebelum Anda mulai. Salah satu terminal sekrup di blok itu
harus diberi label + M atau +; GND lainnya. Dudukan baterai mana pun
yang Anda pilih, kabel merah menuju ke terminal sekrup + M dan kabel
hitam ke terminal GND.

Kabel motor DC terhubung ke sekrup M1 dan M2. Kabel motor sisi kiri
menuju ke terminal M1; motor sisi kanan menuju ke blok M2 (Anda harus
bisa melihat ini dengan melihat penyaringan sutra di bagian atas Drive
Motor Shield.) Jangan terlalu khawatir tentang polaritas pada tahap ini -
tunggu sampai Anda mendapatkan ke tahap uji coba dan kami akan
memilah masalah polaritas itu.

Langkah Kesebelas :
Sebelum Anda memasang baterai, periksa, periksa kembali dan periksa
tiga kali kabel Anda sekarang. Header motor servo, sensor ultrasonik dan
sambungan kotak baterai harus benar. Kabel motor DC kurang penting.
Coding terlampir pada lampiran gambar 2

Langkah Keduabelas :
Ambil kode sumber ‘microbot.zip’. Buka zip dan salin isi folder
‘perpustakaan’ ke folder \ Arduino-1.0.2 \ libraries di PC Anda. Salin
folder microbot ke folder buku skets Anda. Luncurkan Arduino IDE dan
Anda harus dapat meng-compile kode sumber. Sambungkan kabel USB ke
papan Arduino Anda dan di IDE, buka Tools Alat> Port Serial ’dan
periksa apakah Anda menggunakan port COM yang benar. Kompilasi dan
unggah kode ke papan Arduino Anda. Saat selesai, Anda selesai. Bukan
berarti ada masalah dengan driver USB Arduino pada sistem Windows 8
64-bit. Kami menyarankan Anda menggunakan sistem Windows 8 atau
32-bit Windows 8 untuk saat ini.
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

2. Relay adalah suatu peranti yang bekerja berdasarkan elektromagnetik


untuk menggerakan sejumlah kontaktor yang tersusun atau sebuah saklar
elektronis yang dapat dikendalikan dari rangkaian elektronik lainnya
dengan memanfaatkan tenaga listrik sebagai sumber energinya. Kontaktor
akan tertutup (menyala) atau terbuka (mati) karena efek induksi magnet
yang dihasilkan kumparan (induktor) ketika dialiri arus listrik. Berbeda
dengan saklar, pergerakan kontaktor (on atau off) dilakukan manual tanpa
perlu arus listrik. Relay yang paling sederhana ialah relay elektromekanis
yang memberikan pergerakan mekanis saat mendapatkan energi listrik.
Secara sederhana relay elektromekanis ini didefinisikan sebagai berikut.
Alat yang menggunakan gaya elektromagnetik untuk menutup atau
membuka kontak saklar. Saklar yang digerakkan secara mekanis oleh daya
atau energi listrik. Sebagai komponen elektronika, relay mempunyai peran
penting dalam sebuah sistem rangkaian elektronika dan rangkaian listrik
untuk menggerakan sebuah perangkat yang memerlukan arus besar tanpa
terhubung langsung dengan perangakat pengendali yang mempunyai arus
kecil. Dengan demikian relay dapat berfungsi sebagai pengaman.

3. I2C adalah singkatan dari Inter Integrated Circuit adalah standar


komunikasi serial dua arah menggunakan dua saluran yang di desain
khusus untuk mengirim maupun menerima data. Sistem I2C terdiri dari
saluran SCL (Seral Clock) dan SDA (Serial Data) yang membawa
informaasi data antara I2C dengan penggontrolnya. Piranti yang
dihubungkan dengan system I2C Bus dapat dioperasikan sebagai Master
dan Slave.
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

4.
HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

VII. KESIMPULAN

Berdasarkan praktikum mengenai mikrokontroler, maka dapat disimpulkan :

1. Jika suatu benda berada di luar batas maksimum sensor ultrasonic,


maka nilai yang terbaca akan batas maksimum sensor tersebut bukan jarak
sebenarnya
2. Semakin besar nilai PWM yang ditulis pada program maka tegangan
yang masuk pada Motor DC akan semakin besar, sehingga motor akan
bergerak dengan cepat.
3. Jika salah dalam menghubungkan pin pada board Arduino, maka alat
tidak akan berfungsi.

4. Jika terdapat kesalahan dalam program, maka program tidak terupload ke


Arduino, sehingga alat tidak berfungsi.

5. Sumber tegangan berbanding lurus dengan rpm motor DC.


HIMPUNAN MAHASISWA ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SRIWIJAYA
NAMA : KHALIF WISNUTAMA
NIM : 03041381722093

DAFTAR PUSTAKA
TimLaboratoriumKendali dan Robotika. 2019. Modul Praktikum Dasar Sistem
Kendali. Laboratorium Kendali dan Robotika. Indralaya :
UniversitasSriwijaya.
Elektronika, Dunia.2014 mikrokontroler
http://www.duniaelektronika.net/mikrokontroler/ (diakses pada tanggal 21
Februari 2019).
Lab, Imersa.2013 pengenalan code vision http://www.immersa-
lab.com/pengenalan-codevision-avr.html (diakses pada tanggal 21
Februari 2019)
Purnomo,Eka.2014bahasa c mikrokontroler http://www.nulis-
ilmu.com/2015/10/bahasa-c-untuk-mikrokontroler-avr.html (diakses pada
tanggal 21 Februari 2019).

Anda mungkin juga menyukai