Anda di halaman 1dari 81

MIKROKONTROLLER

(ARDUINO UNO)
TUJUAN PERKULIAHAN

Mampu menjelaskan perbedaan fitur, fungsi, dan


segmen aplikasi antara mikrokontroler dengan
pengendali lainnya seperti PLC dan PC .

Mampu menjelaskan perbedaan spesifikasi (Arduino


UNO) dengan mikrokontroler lainya.

Mampu membuat flowchart dan membuat program


mikrokontroler suatu kasus mekatronik .

Mampu membuat rangkaian antarmuka input dan


output agar diperoleh sistem pengendali berbasis
mikrokontroler yang handal.
APA ITU MIKROKONTROLER?

 Mikro  KECIL
 Kontroler  PENGENDALI

 Pengendali kecil yang terdiri atas MIKROPROSESOR yang


dilengkapi dengan saluran INPUT OUTPUT, memiliki MEMORI
penyimpanan
CONTOH PENGGUNAAN
MIKROKONTROLER
CONTOH APLIKASI MIKROKONTROLER
CONTOH APLIKASI MIKROKONTROLER
APA BEDANYA DENGAN PLC DAN PC?

PLC sebenarnya berisi sebuah mikrokontroler tetapi sudah


disesuaikan dengan kondisi lapangan di industri seperti:
 Ketahanan terhadap gangguan sinyal, suhu tinggi, dan
getaran
 Standar tegangan dan arus
 Standar konektor dan kompatibilitas dengan sensor dan
aktuator
 Bahasa pemrograman yang mudah
 Kemudahan upgrade program dan hardware
PC merupakan sebuah komputer pribadi, industrial PC
merupakan komputer yang sudah didesain untuk bekerja di
lingkungan industri menyangkut beberapa aspek di atas
MIKROKONTROLER, PLC, PC

MIKROKONTROLER INDUSTRIAL PC

PLC
APLIKASI MIKROKONTROLER
(TEXAS INSTRUMENT)

Energi alternative
 Solar application
 Hibryd Electric Vehicle
 Energy Harvesting
Otomotif dan transportasi
 Car Access System
 Central Body Control Module
 Anti-Locks Braking System
Elektronik
 Remote Control
 Home appliances
APLIKASI MIKROKONTROLER
(TEXAS INSTRUMENT)

Industri
 Pumps
 Optical Networking
 Lighting
 Programmable Logic Controller
 Weigh Scale
 Smart Sensors
APLIKASI MIKROKONTROLER
(TEXAS INSTRUMENT)

Medis
 Activity Monitor
 Blood Glucose Meter
 Blood Presurre Monitor
 Infusion Pumps
 Ventilators
Jaringan distribusi listrik
 Smart Meters
 Data Concentrator
 Power Line Communcations
PRODUSEN MIKROKONTROLER

• Texas Instruments
• Microchip Company
• Silicon Labs
• Renesas Technology Corp.
• Intel Corporation
• Dallas Semiconductor
• Fujitsu Semiconductor Europe
• STMicroelectronics
• ZiLog Company
• Freescale Semiconductor Company
JENIS MIKROKONTROLER YANG POPULER
DI INDONESIA

 Keluarga AVR  Keluarga ARM

 Keluarga MCS51
 Keluarga PIC
WHAT IS ARDUINO ?

Arduino adalah pengendali mikro single-board


yang bersifat open-source, dirancang untuk
memudahkan penggunaan dan perancangan proyek
elektronika dalam berbagai bidang. Hardwarenya
kebanyakan menggunakan prosesor Atmel AVR
dan softwarenya memiliki bahasa pemrograman
sendiri.
KELEBIHAN ARDUINO

 Tidak perlu perangkat chip programmer karena di dalamnya


sudah ada bootloader yang akan menangani upload program dari
komputer.
 Sudah memiliki sarana komunikasi USB, sehingga pengguna
Laptop yang tidak memiliki port serial/RS323 bisa
menggunakannya.
 Bahasa pemrograman relatif mudah karena software Arduino
dilengkapi dengan kumpulan library yang cukup lengkap.
 Memiliki modul siap pakai (shield) yang bisa ditancapkan pada
board Arduino. Misalnya shield GPS, Ethernet, SD Card, dll.
APA YANG MEMBUAT ARDUINO DITERIMA
ORANG?
Na m un A rd u i no j uga m enyed er han akan pros es p ekerja an b erb asi s m i k ro kont ro l er,
serta m enawarka n beberap a keuntu nga n l eb i h b agi gu ru , si swa, d an a mati r ya ng
terta ri k pa da si stem l a i n:

1. Murah
A rdu i no rel ati f mu ra h d i ba n di n gka n d en gan pl atf orm mi k ro ko nt rol er l ai n . Versi
pa l i ng ma ha l da ri m o du l A rd u i no da pat d i ra ki t den gan tan ga n , da n b ah ka n b i aya
perak i ta n m o du l A rd ui n o ku ran g d ari $50.
2. Cross-pl a tf orm
Peran gkat l u na k A rd ui n o b erja l an p ad a W i n d ows , Mac i nto sh OSX, dan si stem
op era si Li n u x. Keb anyaka n si stem mi k roko ntro l er terb ata s pad a Wi n d ows.
3. Sed erha na
Li ng ku ngan pem ro gram an Ard ui n o mu da h d i gu na kan u ntu k p em ul a , n am un c u ku p
ba gi pen g g un a ti n g kat l a nj ut untu k men ga mb i l keuntu ngan d ari fl eksi bi l i tasnya.
Bagi p ara gu ru , A rd u i no san gat nya ma n, di d asa rka n pa d a l i n g ku ngan p emrog ram an
P ro cessi n g , sehi n g ga si swa bel a jar p ro gram a ka n terb i asa den ga n tam pi l a n d an
nu an sa d ari A rd ui n o .
4. Open source
Arduino diproduksi sebagai alat open source, tersedia untuk perluasan bagi
programmer berpengalaman. Bahasa dapat diperluas melalui perpustakaan
C+ +, dan orang-orang yang ingin memahami rincian teknis dapat membuat
program lompatan dari Arduino ke bahasa pemrograman berbasis C AVR.
Demikian pula, Anda dapat menambahkan kode C AVR langsung ke dalam
program Arduino.
5. Mudah
Banyak pemula menggunakan arduino karena dianggap lebih mudah
dipelajari maupun digunakan.
Akan tetapi tak jarang para professional meng gunakan arduino untuk
dikembangkan menjadi berbagai macam aplikasi elektronik. Sekedar
informasi bahwa arduino menggunakan bahasa pemrograman arduino dengan
syntak menyerupai bahasa pemrograman C. Karena sifatnya yang open
source, semua orang bebas mengunduh skema hardwarenya untuk
dikembangkan.
ARDUINO MERAMBAH INDUSTRI

 Industriuno
 Ardbox
 Controllino
 M-Duino
 P1AM-100
 Arduino Industrial Mega
 Iono
 Zanhorduino
 Gevino Opto
 Canaduino
 PLC Outseal
 dll
INDUSTRUINO
INDUSTRUINO
ARDBOX
CONTROLLINO MINI
CONTROLLINO MEGA
CONTROLLINO MAXI
PENGGUNA CONTROLLINO
SERTIFIKASI CONTROLLINO
M-DUINO
M-DUINO
P1AM-100
ARDUINO INDUSTRIAL MEGA
IONO
IONO
ZANHORDUINO
GEVINO OPTO
GEVINO OPTO
CANADUINO
PLC OUTSEAL
APA ITU DEVELOPMENT BOARD?

Papan pengembangan merupakan


 PCB yang didesain untuk bekerja menggunakan
mikrokontroler
 Selain mikrokontroler terdapat juga :
 Rangkaian power
 Rangkaian antar muka
 Input sederhana (tombol)
 Output sederhana (LED)
PAPAN PENGEMBANGAN ARDUINO
MIKROKONTROLER ARDUINO UNO
SPESIFIKASI ARDUINO UNO

Microcontroller ATmega328P
Tegangan kerja 5V
Tegangan Input (disarankan) 7-12V
Tegangan Input (limit) 6-20V
Pin I/O Digital 14 (6 PWM output)
Pin I/O PWM Digital 6
Pin Input Analog 6
Arus DC per Pin I/O 20 mA
Arus DC Pin 3.3V 50 mA
Memori Flash 32 KB (ATmega328P)0.5 KB untuk bootloader
SRAM 2 KB (ATmega328P)
EEPROM 1 KB (ATmega328P)
Frekueansi Clock 16 MHz
Pin LED 13
Panjang 68.6 mm
Lebar 53.4 mm
Berat 25 g
SKEMA ARDUINO UNO
PIN FUNGSI KHUSUS ARDUINO UNO

 Komunikasi serial (UART) : pin0(RX) dan 1(TX).


 Interupsi eksternal : pin 2 dan 3 (low, rising/falling
edge, change value)
 PWM : pin 3, 5, 6, 9, 10, dan 11 (8 bit)
 Komunikasi SPI : pin 10 (SS), 11 (MOSI), 12 (MISO),
13 (SCK)
 LED : pin 13 (high ON, low OFF)
 TWI/I2C : pn A4 (SDA), A5 (SCL)
 Analog input : pin A0 sampai A5
 AREF (referensi analog) : pin AREF
 Reset : pin reset
APA ITU ARDUINO?

Kata Arduino sering berarti tiga hal:


Sebuah perangkat keras Sebuah lingkungan Sebuah komunitas atau
Papan pengembangan pemrograman filosofi
BAGAIMANA MEMULAI ARDUINO?

1. Download & install Arduino environment (IDE)


2. Hubungkan Arduino dengan PC lewat kabel USB
3. Jika perlu instal driver Arduino (jika belum pernah)
4. Jalankan Arduino IDE
5. Pilih papan pengembangan (board) di menu setting
6. Tentukan/pilih port serialnya
7. Buka program blink dari example
8. Upload program blink ke Arduino
HUBUNGKAN KABEL USB
ARDUINO IDE
PILIH PORT SERIAL DAN BOARD
PESAN STATUS

Proses upload sukses

Port serial salah

Pemilihan board salah


PROSES SKETCH TO UPLOAD
PEMROGRAMAN
• Huruf besar dan
kecil berpengaruh
• Semua kode diakhiri
tanda titik koma
• Komentar diawali //
atau dimulai
dengan /* dan
ditutup dengan */
PROGRAM PERTAMA KITA
TERMINOLOGI

Sketch : Program yang kita tulis ke Arduino


IDE
Pin : Input atau output Arduino
terhubung ke piranti masukan atau
keluaran
Digital : bernilai HIGH (positif) atau LOW
(negatif)
Analog : bernilai variasi, bisa dari 0 ke 255
(analog 8 bit)
ALGORITMA
&
FLOWCHART

MIKROKONTROLER

54
ALGORITMA

Konsep Algoritma
Algoritma merupakan fondasi yang harus dikuasai
oleh setiap orang yang ingin menyelesaikan suatu
masalah secara terstruktur, efektif, dan efisien.

55
ALGORITMA

Definisi Algoritma
1. Teknik penyusunan langkah-langkah penyelesaian
masalah dalam bentuk kalimat dengan jumlah kata
terbatas tetapi tersusun secara logis dan sistematis.
2. Suatu prosedur yang jelas untuk menyelesaikan
suatu persoalan dengan menggunakan langkah-
langkah tertentu dan terbatas jumlahnya.
3. Suatu prosedur untuk menarasikan sebuah proses
secara urut dari awal sampai akhir yang meliputi
INPUT  PROSES  OUTPUT

56
ALGORITMA

Algoritma adalah jantung dari pemrograman.


Dalam kehidupan sehari-haripun banyak terdapat
proses yang dinyatakan dalam suatu algoritma.
Cara-cara membuat kue atau masakan yang
dinyatakan dalam suatu resep juga dapat disebut
sebagai algoritma. Pada setiap resep selalu ada
urutan langkah-lankah membuat masakan. Bila
langkah-langkahnya tidak logis, tidak dapat
dihasilkan masakan yang diinginkan. Ibu-ibu yang
mencoba suatu resep masakan akan membaca satu
per satu langkah-langkah pembuatannya lalu ia
mengerjakan proses sesuai yang ia baca.

57
ALGORITMA

Agar dapat dilaksanakan oleh mikrokontroler,


algoritma harus ditulis dalam notasi bahasa
pemrograman disebut dengan program.
Jadi program adalah perwujudan atau implementasi
teknis Algoritma yang ditulis dalam bahasa
pemrogaman tertentu sehingga dapat dilaksanakan
oleh komputer.

58
WHAT IS A FLOWCHART?
START

INISIA-
Flowchart adalah LISASI

diagram yang BACA


menggambarkan INPUT

alur dari suatu KALIKAN INPUT


pemrograman. DENGAN 2

PRINT
HASIL

STOP

59
60
BASIC FLOWCHART
SYMBOLS START
Terminal

• Terminals INISIA-
LISASI

• Menggambarkan awal
BACA
dan akhir dari flowchart INPUT

KALIKAN INPUT
START DENGAN 2

PRINT
HASIL
STOP
Terminal
STOP

61
BASIC FLOWCHART
SYMBOLS START

• Input/Output Operations INISIA-


LISASI

• Menggambarkan suatu
BACA
input/output dari sistem INPUT

Input/Output
Operation KALIKAN INPUT
DENGAN 2

BACA PRINT PRINT


INPUT HASIL HASIL

STOP

62
BASIC FLOWCHART
SYMBOLS START

• Processes INISIA-
LISASI

• Menggambarkan suatu
BACA
proses yang akan INPUT
dilakukan oleh sistem
KALIKAN INPUT
Process
DENGAN 2

KALIKAN INPUT
PRINT
DENGAN 2
HASIL

STOP

63
FOUR FLOWCHART STRUCTURES

 Sequence
 Decision
 Repetition
 Case

64
SEQUENCE STRUCTURE

Serangkaian tindakan yang dilakukan secara


berurutan

65
MENGHITUNG LUAS SEGITIGA

Algoritma Menghitung Luas Segitiga


Analisis :
 Input : a (alas) dan t (tinggi)
 Luas Segitiga = a*t/2
Algoritma :
1. Masukan nilai alas (a) dan nilai tinggi segitiga (t)
2. Maka untuk menghitung luas digunakan rumus alas dengan
tinggi yang sudah ditentukan
3. Rumus untuk menghitung Luas Segitiga yaitu L = 1/2*a*t
4. Nilai L (Luas) akan dicetak sebagai output ke perangkat output
(keluaran)

66
MENGHITUNG LUAS SEGITIGA

START

INPUT ALAS

INPUT TINGGI

LUAS=(ALAS*TINGGI)/2

PRINT HASIL

STOP

67
MENGHITUNG  KELILING
LINGKARAN

Algoritma Keliling Lingkaran 


Analisis :
 Input : r (jari-jari lingkaran) dan phi
 Keliling Lingkaran  K=2*phi*r

Algoritma ???
Flowchart???

68
CONTOH FLOWCHART SEDERHANA

Jika tombol Tb1 ditekan maka LED L1 akan menyala.


Jika tombol Tb2 ditekan maka LED L1 akan mati
LANGKAH DALAM PROSES
PEMBUATAN PROGRAM
Mendefinisikan masalah dan menganalisanya
Langkah awal yang harus dilakukan adalah
mengidentifikasikan masalah antara lain tujuan
dari pembuatan program, parameter-parameter
yang digunakan, fasilitas apa saja yang akan
disediakan oleh program. Kemudian menentukan
metode atau algoritma apa yang akan diterapkan
untuk menyelesaikan masalah tersebut dan
terakhir menentukan bahasa program yang
digunakan untuk pembuatan program.

71
LANGKAH DALAM PROSES
PEMBUATAN PROGRAM
Merealisasikan dengan langkah-langkah :

Start

Desain
Algoritma & Flowchart

Menulis program

Test Kebenaran Program

Dokumentasi

Arsip 72
DECISION STRUCTURE

 Bagian dari flowchart yang menunjukkan


pengambilan suatu keputusan dalam suatu
pemrograman (if/else)
Flowchart C++ Code

NO YES if (x < y)
x < y? a = x * 2;
else
Calculate a Calculate a a = x + y;
as x plus y. as x times 2.

73
DECISION STRUCTURE

 Pada pengambilan keputusan ini hanya satu


tindakan saja yang harus dilaksanakan.

Flowchart C++ Code

NO YES if (x < y)
x < y? a = x * 2;
else
Calculate a Calculate a a = x + y;
as x plus y. as x times 2.

74
REPETITION STRUCTURE

 Pada flowchart perulangan, suatu proses akan selalu diulang


sampai pada kebutuhan yang diinginkan

Flowchart C++ Code

while (x < y)

YES x++;
x < y? Add 1 to x

75
CASE STRUCTURE

 Pada flowchart Case, memberikan pilihan lebih


dari 2.
If years_employed = 2, If years_employed = 3,
bonus is set to 200 bonus is set to 400
If years_employed = 1, If years_employed is
CASE
bonus is set to 100 years_employed any other value, bonus
is set to 800

1 2 3 Other

bonus = 100 bonus = 200 bonus = 400 bonus = 800

76
CONNECTORS

A
Konektor A START

mengindikasikan bahwa
flowchart ke-2 merupakan
bagian dari flowchart
pertama.
END
A

77
SUB-ROUTINE

START
•Subroutine atau procedure
adalah suatu blok program Read Input.

terpisah yang digunakan untuk


mengerjakan suatu pekerjaan Sub- Call calc_pay
tertentu. routine function.

Display results.

END

78
COMBINING STRUCTURES

NO YES
x > min?

Display “x is NO YES
outside the limits.”
x < max?

Display “x is Display “x is
outside the limits.” within limits.”

79
REVIEW

80
TERIMAKASIH

Anda mungkin juga menyukai