Translate

Membuat Alat Pengunci Pintu Otomatis ( Door Lock ) Menggunakan RFID Reader ID-12

Membuat Alat Pengunci Pintu Otomatis ( Door Lock ) Menggunakan RFID Reader ID-12


              Pada sore hari ini saya akan menjelaskan mengenai bagaimana cara membuat sebuah alat yang bisa digunakan untuk mengunci pintu secara otomatis dengan kunci berupa kartu atau sejenisnya, jadi alat ini adalah alat inovasi pengganti kunci konvensional yang biasanya diputar atau digeser. Alat ini memiliki 3 unsur penyusun utama, yaitu RFID reader, tag card dan kontroller, RFID reader yang dipakai adalah ID-12, kemudian tag card nya menggunakan tag card bernentuk kartu dan kontrollernya adalah ATMega16. Pengunci pintu menggunakan solenoid door lock dengan tegangan aktif 12 volt dc. Untuk lebih jelasnya berikut adalah skema dan programnya.


a. Minimum System




b. Solenoid Door Lock + Driver 12 volt




c. RFID Reader ID-12




d. Tag card




e. Program Bascom AVR

$regfile = "m16def.dat"
$crystal = 11059200
$baud = 9600

Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.2 , Db4 = Portc.4
Config Lcdpin = Pin , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7
Config Lcd = 16 * 2

Cls
Cursor Off

Dim Y As String * 20 , Id As String * 20
Dim X As Integer

Config Sda = Portd.2
Config Scl = Portd.3

Const Ds1307w = &HD0
Const Ds1307r = &HD1

Dim _sec As Byte
Dim _min As Byte
Dim _hour As Byte
Dim _day As Byte
Dim _month As Byte
Dim _year As Byte
Dim _weekday As Byte

Dim Sa(3) As String * 2
Dim Sb(3) As String * 2

Declare Sub Getdatetime
Declare Sub Settime
Declare Sub Getsec
Declare Sub Disptime
Declare Sub Dispdate
Declare Sub Format_00
Declare Sub Setdate
Declare Sub Subset

Dim I As Byte
Dim Flagset As Bit              '0 = Waktu, 1 = Tanggal
Dim Flagreset As Bit
Dim Line1 As String * 1

Dim Weekday As Byte
Dim Jam_puluhan As Integer
Dim Jam_satuan As Integer
Dim Min_puluhan As Integer
Dim Min_satuan As Integer
Dim Sec_puluhan As Integer
Dim Sec_satuan As Integer

Ddrd.4 = 1
Ddrb.4 = 0
Portb.4 = 1


'_sec = 00
'_hour = 11
'_min = 20
'Settime

'_day = 14
'_month = 12
'_year = 15
'Setdate

I = 13
Line1 = Chr(13)

Portd.4 = 0

Main:

Do

If Pinb.4 = 0 Then
Portd.4 = 1
Wait 3
Else
Portd.4 = 0
End If

Locate 1 , 1
Lcd "Dekatkan Kartu"

Y = Inkey()

If Pinb.4 = 0 Then
Portd.4 = 1
Wait 3
Else
Portd.4 = 0
End If

If Y <> "" Then
Input Y Noecho
Id = Mid(y , 3 , 13)
Cls
Cursor Off

Getdatetime

Locate 1 , 1
Disptime

If Id = "6F0085C00923" Then
Locate 2 , 1
Lcd "Era Wahyudi"
Portd.4 = 1
Else
Goto Main

End If

'Locate 2 , 1
'Lcd Id

Wait 3
Cls
Else
Goto Main

End If

portd.4 = 0

Loop

Sub Getdatetime:

I2cstart                                                    ' Generate start code
I2cwbyte Ds1307w                                            ' send address

I2cwbyte 0                                                  ' start address in 1307

I2cstart                                                    ' Generate start code
I2cwbyte Ds1307r                                            ' send address

I2crbyte _sec , Ack
I2crbyte _min , Ack                                         ' MINUTES
I2crbyte _hour , Ack                                        ' Hours
I2crbyte _weekday , Ack                                     ' Day of Week
I2crbyte _day , Ack                                         ' Day of Month
I2crbyte _month , Ack                                       ' Month of Year
I2crbyte _year , Nack                                       ' Year

I2cstop

_sec = Makedec(_sec) : _min = Makedec(_min) : _hour = Makedec(_hour)
_day = Makedec(_day) : _month = Makedec(_month) : _year = Makedec(_year)
End Sub

Sub Settime:
_sec = Makebcd(_sec) : _min = Makebcd(_min) : _hour = Makebcd(_hour)

I2cstart                                                    ' Generate start code
I2cwbyte Ds1307w                                            ' send address
I2cwbyte 0                                                  ' starting address in 1307
I2cwbyte _sec                                               ' Send Data to SECONDS
I2cwbyte _min                                               ' MINUTES
I2cwbyte _hour                                              ' Hours
I2cstop

End Sub

Sub Setdate

_day = Makebcd(_day) : _month = Makebcd(_month) : _year = Makebcd(_year)

I2cstart                                                    ' Generate start code
I2cwbyte Ds1307w                                            ' send address
I2cwbyte 4                                                  ' starting address in 1307
I2cwbyte _day                                               ' Send Data to SECONDS
I2cwbyte _month                                             ' MINUTES
I2cwbyte _year                                              ' Hours
I2cstop

End Sub
Sub Dispdate
Sa(1) = Str(_day)
Sa(2) = Str(_month)
Sa(3) = Str(_year)
Format_00
Lcd "Date: " ; Sb(1) ; "-" ; Sb(2) ; "-" ; Sb(3)
End Sub


Sub Disptime
Sa(1) = Str(_hour)
Sa(2) = Str(_min)
Sa(3) = Str(_sec)
Format_00
Lcd "Time: " ; Sb(1) ; ":" ; Sb(2) ; ":" ; Sb(3)
End Sub

Sub Format_00
For I = 1 To 3 Step 1
Sb(i) = Format(sa(i) , "00")
Next I
End Sub



 

f. VIDEO HASILNYA














Mengakses Thermocouple Tipe K Menggunakan Arduino dan MAX6675

Mengakses Thermocouple Tipe K Menggunakan Arduino dan MAX6675


                Pada siang hari ini saya akan menjelaskan mengenai bagaimana cara membuat alat monitoring suhu menggunakan sensor thermocouple tipe k dan arduino uno. Alat ini menggunakan modul MAX6675 yang digunakan untuk cold & hot juncion compensation dan amplifier atau penguat tegangan output thermocouple tipe K, sehingga arduino bisa membaca dengan mudah hasil keluaran dari sensor thermocouple tersebut, Pada contoh kali menggunakan 3 buah output yaitu 1 buah led hijau dan 2 buah relay 5 volt untuk kontrol kipas atau motor. Alat ini akan mengaktifkan led dan relay jika suhu sudah mencapai 60 derajat celcius, jika ingin merubah parameternya maka rubah nilai "60" menjadi angka yang diinginkan pada kode dibawah ini. Untuk lebih jelasnya berikut program dan skema alat yang digunakan. Library MAX6675 bisa didownload di link berikut LINK.

(thermocouple.readCelsius() >= 60)


a. Arduino Uno




b. Thermocouple Tipe K dan MAX6675




c. LCD Display 16x2




d. Rangkaian Relay dan LED







e. Program Arduino IDE

#include <max6675.h>
#include <LiquidCrystal.h>
#include <Wire.h>

int relay1 = A0;
int relay2 = A1;
int led = 7;

int thermoDO = 4; //bisa juga S0
int thermoCS = 5;
int
thermoCLK = 6; //bisa juga SCK

MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);
int vccPin = 3;
int gndPin = 2;



//RS, E, D4, D5, D6, D7

LiquidCrystal lcd(8, 9, 10, 11, 12, 13);

// make a cute degree symbol
uint8_t degree[8]  = {140,146,146,140,128,128,128,128};

void setup() {
  pinMode(relay1, OUTPUT);
  pinMode(relay2, OUTPUT);
  pinMode(led, OUTPUT);
 
  Serial.begin(9600);
  // use Arduino pins
  pinMode(vccPin, OUTPUT); digitalWrite(vccPin, HIGH);
  pinMode(gndPin, OUTPUT); digitalWrite(gndPin, LOW);
 
  lcd.begin(16, 2);
  lcd.createChar(0, degree);

  // wait for MAX chip to stabilize
  delay(500);
}

void loop() {
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("SUHU = ");
 
  int dataku = thermocouple.readCelsius();
 
  lcd.print(thermocouple.readCelsius());
 
#if ARDUINO >= 100
  lcd.write((byte)0);
#else
  lcd.print(0, BYTE);
#endif
  lcd.print("C ");
  delay(1000);

if (thermocouple.readCelsius() >= 60) {
  digitalWrite(relay1, HIGH);
  digitalWrite(relay2, LOW);
  digitalWrite(led, HIGH);
}
else {
  digitalWrite(relay1, LOW);
  digitalWrite(relay2, HIGH);
  digitalWrite(led, LOW);
}    
}




f. Program Arduino IDE versi 2

#include <max6675.h>
#include <LiquidCrystal.h>
#include <Wire.h>

int relay1 = A0;
int relay2 = A1;
int led = 7;
int x = 0;

int thermoDO = 4;
int thermoCS = 5;
int thermoCLK = 6;

MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);
int vccPin = 3;
int gndPin = 2;

LiquidCrystal lcd(8, 9, 10, 11, 12, 13);

// make a cute degree symbol
uint8_t degree[8]  = {140,146,146,140,128,128,128,128};

void setup() {
  pinMode(relay1, OUTPUT);
  pinMode(relay2, OUTPUT);
  pinMode(led, OUTPUT);
 
  Serial.begin(9600);
  // use Arduino pins
  pinMode(vccPin, OUTPUT); digitalWrite(vccPin, HIGH);
  pinMode(gndPin, OUTPUT); digitalWrite(gndPin, LOW);
 
  lcd.begin(16, 2);
  lcd.createChar(0, degree);

  // wait for MAX chip to stabilize
  delay(500);
}

void loop() {
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("SUHU = ");
 
  int dataku = thermocouple.readCelsius();
 
  lcd.print(thermocouple.readCelsius());
 
#if ARDUINO >= 60
  lcd.write((byte)0);
#else
  lcd.print(0, BYTE);
#endif
  lcd.print("C ");
  delay(1000);


if ((thermocouple.readCelsius() >= 50) && (x == 0)) {
  digitalWrite(relay2, LOW);
  digitalWrite(relay1, HIGH);
  delay(10000);
  digitalWrite(relay2, LOW);
  digitalWrite(relay1, LOW);
  x = 1;
}
else {

if ((thermocouple.readCelsius() >= 50) && (x == 1)) {

 digitalWrite(relay2, LOW);
 digitalWrite(relay1, LOW);

}
else if ((thermocouple.readCelsius() <= 50) && (x == 0)) {
  
  digitalWrite(relay1, LOW);
  digitalWrite(relay2, HIGH);

}

else if ((thermocouple.readCelsius() <= 50) && (x == 1)) {
  
  digitalWrite(relay1, LOW);
  digitalWrite(relay2, HIGH);

}

}

}


 
g. VIDEO HASILNYA












Cara mengakses Tombol / Button dan Led menggunakan Bascom AVR

Cara mengakses Tombol / Button dan Led menggunakan Bascom AVR


             Pada kesempatan kali ini akan dibahas mengenai bagaimana cara mengakses tombol / button dan led menggunakan bahasa bascom avr. Ini adalah basic yang harus dikuasai bagi para pecinta mikrokontroller jika memang ingin menjadi seorang embedded freak. Prinsip kerja alat ini yaitu terdapat 3 buah button / tombol yang mana jika ditekan maka akan menghidupkan atau mematikan led sehingga memenuhi unsur I/0 input-output, tombol sebagai input dan led sebagai output. untuk lebih jelasnya berikut ulasannya. 


a. Minimum System




b. Program Bascom AVR

$regfile = "m16def.dat"
$crystal = 12000000

Ddrc = &B11111111

Ddrd.2 = 0
Ddrd.3 = 0
Ddrd.4 = 0

Portd.2 = 1
Portd.3 = 1
Portd.4 = 1

Do

If Pind.2 = 0 Then
Portc.0 = 0
Portc.1 = 1
Portc.2 = 1
Portc.3 = 0

Elseif Pind.3 = 0 Then
Portc.0 = 1
Portc.1 = 0
Portc.2 = 0
Portc.3 = 1

Elseif Pind.4 = 0 Then
Portc.0 = 0
Portc.1 = 0
Portc.2 = 0
Portc.3 = 0

Else
Portc.0 = 1
Portc.1 = 1
Portc.2 = 1
Portc.3 = 1

End If

Loop




c. Cara Penggunaan

               Hubungkan mikrokontroller dengan power supply, kemudian masukkan program diatas dan lihat hasilnya, saat tombol ditekan maka akan menghidupkan led yang bervariasi, rubah susunan variasi jika diperlukan atau bisa juga ditambahkan led lebih banyak dari yang dicontohkan.














Komunikasi Serial UART Antara 2 Mikrokontroller

Komunikasi Serial UART Antara 2 Mikrokontroller


              Pada kesempatan kali ini saya akan menjelaskan mengenai bagaimana cara mengakses dua buah mikrokontroller dengan komunikasi serial UART, jadi prinsip kerjanya yaitu ada dua buah mikrokontroller dengan satu buah mikrokontroller sebagai master atau trasmitter atau pengirim data, kemudian mikrokontroller kedua diposisikan menjadi slave atau receiver atau penerima. Data yang akan dikirimkan oleh transmitter adalah data ADC yang didapat oleh mikrokontroller melalui PortA atau Port ADC. Mikrokontroller kedua dilengkapi dengan sebuah LCD yang akan digunakan untuk penampil datanya. untuk lebih jelasnya berikut ulasan lengkapnya.


a. Minimum System ATMega Master dan Slave




b. Cara menghubungkan 2 Mikrokontroller via UART / Serial




c. Program Bascom AVR Master / Trasmitter

$regfile = "m16def.dat"
$crystal = 11059200
$baud = 9600

Config Adc = Single , Prescaler = Auto , Reference = Avcc

Dim Dataadc As Word

Ddrc = &B11111111

Do
Dataadc = Getadc(0)

Print Dataadc

Waitms 100

Loop



d. Program Bascom AVR Slave / Receiver

$regfile = "m16def.dat"
$crystal = 12000000
$baud = 9500

Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2
Config Lcdpin = Pin , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
Config Lcd = 16 * 2

Cls
Cursor Off

Dim Datamasuk As String * 10
Dim Cmd As String * 10

Do

Input Datamasuk

Cmd = Mid(datamasuk , 4 , 4)

Locate 1 , 1
Lcd Cmd

Waitms 200

Cls

Loop









Cara Import Library ARDUINO


10. Cara Import Library ARDUINO 
            Pada bagian ini akan dijelaskan mengenai bagaimana cara import library dari suatu library yang didapat baik itu membuat sendiri atau download dari internet agar bisa diakses pada program yang dibuat. Pada contoh di jelaskan ada sebuah library dengan nama “ SparkFun-APDS9960.rar “, kemudian library tersebut akan dipakai untuk Arduino, caranya yaitu sebagai berikut.

a. Langkah 1
            Ekstrak terlebih dahulu “ SparkFun-APDS9960.rar ” sehingga didapat sebuah folder dengan nama yang sama, kemudian rubah namanya menjadi “ SparkFun_APDS9960 “.

b. Langkah 2
     Pindahkan file “ SparkFun_APDS9960 ” ke alamat  C:\Users\komputerku\Documents \Arduino\libraries, jika berhasil maka akan muncul di Arduino pada menu File -> Examples  

 



                                            Cara Menggunakan dan Setting Arduino IDE
                                                                  BACK PAGE 



Cara Menggunakan Arduino IDE

5. Cara Menggunakan Arduino IDE

               Arduino selain memiliki hardware juga memiliki software, untuk hardware sudah dijelaskan mengenai jenis-jenisnya, karakteristik dan konfigurasi pin Aduino yang tersedia, untuk software, Arduino menggunakan software sendiri dan bahasa pemprograman sendiri yang dinamakan Arduino IDE, bahasa pemprograman Arduino yang dipakai yaitu C / C++.

6. Cara Install Arduino IDE

           Langkah pertama dalam menggunakan Arduino yaitu menginstall software program editornya, yang mana master program bisa didownload di link berikut https://www.arduino.cc/en/Main/Software , setelah di download kemudian extract file tersebut sehingga file installernya terbuka, atau bisa juga menggunakan Arduino IDE portable yang langsung bisa digunakan pada file Arduino.exe, Gambar 2.1 adalah tampilan editor Arduino IDE.



7. Cara Setting Arduino IDE

             Perlu diketahui bahwa pada bagian ini sangat menentukan sekali dalam kelancaran saat upload program dilakukan, jadi jika salah setting akan menyebabkan program tidak jalan dan juga ada tampilan error pada editor, maka dari itu perhatikanlah setting awal berikut ini untuk Arduino Uno dan sejenisnya.

a. Langkah 1

            Hubungkan kabel USB dari komputer ke Arduino. Tentukan jenis board Arduino yang dipakai, pada contoh menggunakan Arduino UNO, Pilih menu Tools -> Board - > Arduino UNO ( Tergantung jenis Arduino yang dipakai)



b. Langkah 2

               Tentukan serial port yang dipakai, ini digunakan untuk memprogram device Arduino, jika belum tahu serial port berapa yang dipakai dapat dilihat di device manager ->     Ports, lalu cek nomer COM-nya, pada contoh tertulis COM15 artinya Port komunikasi yang digunakan adalah COM15, ini bisa berubah-ubah, maka dari itu pastikan dahulu COM yang dipakai sesuai dengan setting Arduino, Setelah tahu COM yang digunakan, kembali ke Arduino IDE, Pilih Tools -> Serial Port -> COM15. Jika berhasil maka pada bagian editor bawah akan tampak COM yang dipakai.



8. Cara Upload Program ke Arduino

             Setelah proses setting, hal selanjutnya yaitu mengetahui cara meng-upload program yang sudah kita buat, pada contoh ini menggunakan program kosong lalu di upload ke Arduino, jika berhasil maka akan ada keterangan berhasil, namun jika error maka di bawah editor aka tertulis error.  Langkah-langkahnya seperti berikut.

a. Langkah 1

            Tuliskan sebuah program pada editor yang mana program tersebut akan dieksekusi oleh Arduino, dicontohkan seperti dibawah ini

void setup() {
}
void loop() {



b. Langkah 2

             Setelah menulis program kemudian masuk ke proses upload, caranya yaitu tekan tombol verify, kemudian jika tidak ada error, tekan tombol upload, tunggu sampai proses selesai.



9. Cara Menggunakan Fitur Serial

           Pada program Arduino IDE terdapat fitur yang digunakan untuk transfer data dari Arduino ke komputer, fitur ini adalah interface dari Arduino sehingga user bisa melihat data melalui komputer atau sejenisnya. Cara menggunakan fitur ini yaitu sebagai berikut.

a.  Langkah 1

         Ketikkan program seperti contoh dibawah ini, kemudian lakukan proses verify dan upload, jika tidak ada error maka Arduino siap digunakan.

void setup() {
  Serial.begin(9600);
}

void loop() {
  // read the input on analog pin 0:
  int sensorValue = analogRead(A0);
  // print out the value you read:
  Serial.println(sensorValue);
  delay(100);       
}
 

b. Langkah 2


    Setelah upload berhasil, pilih Tools -> Serial Monitor, maka akan tampak seperti Gambar berikut ini. Coba rubah kode “ delay(100) ” menjadi “ delay(1000) ” dan lihat perubahannya





Cara Import Library Arduino

Pengenalan Arduino
  








Pengenalan Tentang Arduino IDE

1. Pengenalan Apa itu Arduino ?


        Arduino adalah sebuah mikrokontroller yang didesain khusus sebagai pembelajarn mikrokontroller dengan mengggunakan processor ATMEL dan bahasa pemprograman sendiri. Arduino bersifat open-source sehingga tidak ada biaya dalam softwarenya yang mana membuat para pengguna bisa bebas seluas-luasnya melakukan eksperimen terhadap device ini tanpa ada halangan trial atau berbayar.
            Selain itu tersedia bagi para pemrogram berpengalaman untuk pengembangan lebih lanjut. Bahasanya bisa dikembangkan lebih lanjut melalui pustaka-pustaka C++ yang berbasis pada Bahasa C untuk AVR. Perangkat keras Arduino berbasis mikrokontroler ATMEGA8, ATMEGA168, ATMEGA328 dan ATMEGA1280 (yang terbaru ATMEGA2560). Dengan demikian siapapun bisa membuatnya dan kemudian bisa menjual perangkat keras Arduino ini,  Bootloader Arduino tersedia langsung dari perangkat lunak Arduino IDE-nya. Bisa juga menggunakan breadoard untuk membuat perangkat Arduino beserta periferal-periferal lain yang dibutuhkan.
            Pembuatan Arduino dimulai pada tahun 2005, dimana sebuah situs perusahaan komputer Olivetti di Ivrea, Italia membuat perangkat untuk mengendalikan proyek desain interaksi siswa supaya lebih murah dibandingkan sistem yang ada pada saat itu. Dilanjutkan pada bulan Mei 2011, dimana sudah lebih dari 300.000 unit Arduino  terjual.
Pendiri dari Arduino itu sendiri adalah Massimo Banzi dan David Cuartielles. Awalnya mereka memberi nama proyek itu dengan sebutan Arduin dari Ivrea tetapi seturut dengan perkembangan zaman, maka nama proyek itu diubah menjadi Arduino yang berarti “teman yang kuat” atau dalam versi bahasa Inggrisnya dikenal dengan sebutan “Hardwin”.
Awalnya Massimo Banzi membangun disekitar proyek Pengkabelan dari Hernando Barragan. Pengkabelan ini adalah proyek tesis Hernando di Desain Interaksi Institute Ivrea. Hal tersebut dimaksudkan untuk menjadi versi elektronik pengolahan yang digunakan di lingkungan pemrograman dan mengambil pola sintaks Processing tetapi dengan berkembangnya teknologi maka Arduino menjadi sangat popular dikalangan mahasiswa dan pelajar saat ini. Mereka mengembangkan Arduino dengan bootloader dan software yang user friendly sehingga menghasilkan sebuah board mikrokontroller yang bersifat open source yang bisa dipelajari dan dikembangkan oleh mahasiswa, pelajar, professional, pemula, dan penggemar elektronika maupun robotik di seluruh dunia.


2. Kelebihan Arduino

          Arduino memiliki beberapa keleihan yaitu tidak perlu perangkat chip programmer (downloader) karena didalamnya sudah ada bootloader yang akan menangani upload program dari komputer, selain itu Arduno juga sudah dilengkapi device serial sehingga tidak perlu rangkaian RS232 atau sejenisnya, hanya perlu menghubungkan port USB dari komputer ke Arduino secara langsung. Arduino memiliki modul siap pakai ( Shield ) yang bisa ditancapkan pada board arduino, contohnya shield GPS, Ethernet,dll.
                 Arduino menggunakan suplai DC yang tidak terlalu besar seperti 12 volt 1 amper atau bisa juga 12 volt 2 amper tergantung kebutuhan, sehingga daya yang dipakai sangatlah kecil. Arduino juga memakai soket female yang befungsi agar memudahkan para pengguna memasangkan kabel jumper dari Arduino ke Shield Arduino, maupun dari Arduino ke Breadboard secara langsung.



3. Skema PINOUT Arduino UNO




4. Spesifikasi Arduino UNO

                Arduino memiliki beberapa macam pin yaitu pin I/O, pin Reset, pin serial dan pin tegangan, Arduino menggunakan 2 device tambahan yaitu power supplai dan USB kabel, fungsi power supplai yaitu untuk memberikan tegangan pada device Arduino atau bisa juga menggunakan power supplai computer dengan cara menghubungkan USB kabel dari Arduino ke komputer. Arduino memiliki spesifikasi khusus yaitu sbb :

Mikrokontroler                        :    ATMega328
Operating Voltage                    :   5V
Input Voltage (disarankan)        :    7-12V
Input Voltage (batas)                :   6-20V
Digital I/O                                :   14 Pin ( dimana 6 pin memberikan Output PWM )
Analog Input                            :   6 Pin
DC Current per I/O                  :   40 mA
DC Current for 3.3V                 :  50 mA
Flash Memory                          :   32 KB (ATmega328); 0,5 KB digunakan untukBootloader
SRAM                                       :   2 KB (ATmega328)
EEPROM                                 :    1 KB (ATmega328)
Clock Speed                              :   16 MHz




5. VIDEO TUTORIAL







Cara Penggunaan dan Setting Arduino 










( ARDUINO BASIC STEP ) Belajar cara mengakses LED, BUTTON dan LCD Display menggunakan Arduino ( INPUT - OUTPUT - INTERFACE )

( ARDUINO BASIC STEP ) Belajar cara mengakses  LED, BUTTON dan LCD Display menggunakan Arduino ( INPUT - OUTPUT - INTERFACE )


         Pada kesempatan yang berbahagia ini, saya akan menjelaskan mengenai Arduino dan aplikasinya, Arduino merupakan mikrokontroller dengan processor yang digunakan adalah ATMega328, adapun aplikasi dari arduino yaitu bisa digunakan untuk membuat robot, instrument alat ukur, alat otomatis dan lain-lain. Salah satu keunggulan dari Arduino yaitu memerlukan daya rendah dan harga yang murah dengan kecepatan 16Mhz. Arduino memiliki beragan tipe sepeti Arduino Duemilanove, Arduino Pro Mini, Arduino Nano dan lain-lain. Arduino sudah dilengkap dengan downloader dan fitur serial sehingga developer dapat dengan mudah menggunakannya. untuk lebih jelasnya berikut cara mengakses input, output dan interface pada Arduino. Untuk mengetahui bagaimana cara menggunakan Software Arduino IDE dan cara settingnya, bisa download artikelnya di link berikut 

Isi artikel :
- Pengenalan tentang Arduino
- Cara menggunakan software Arduino IDE
- Cara import Library Arduino




a. Mengakses Button dan Led

          Arduino merupakan mikrokontroller yang memiliki pin I/O atau nama lainnya Input dan Output, pengertian dari Input yaitu masukan, artinya pin digital Arduino bisa digunakan untuk mendeteksi tegangan yang sama levelnya dengan pulsa logika high dan low, kemudian arti dari output adalah pin Arduino mengeluarkan tegangan 5 volt atau 0 volt, bisa juga diartikan pulsa logika high atau low.
             

a.1 Arduino Uno




a.2 Skematik Led dan Button





a.3 Program Arduino IDE

int led1 = 13;
int led2 = 12;
int led3 = 10;

int buttonPin1 = 5;
int buttonPin2 = 6;
int buttonPin3 = 7;

int buttonState1 = 1;
int buttonState2 = 1;
int buttonState3 = 1;

void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(buttonPin1, INPUT);
pinMode(buttonPin2, INPUT);
pinMode(buttonPin3, INPUT);

}

void loop() {
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);

if (buttonState1 == LOW ) {
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
}
else if (buttonState2 == LOW ) {
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
digitalWrite(led3, LOW);
}
else if (buttonState3 == LOW ) {
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
}

else {
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);

}

}



a.4 Video Hasilnya





b. Mengakses LCD Display 16x2

          Untuk mengakses LCD 16x2 yang harus diperhatikan yaitu pin yang digunakan, karena ada banyak pin pada LCD yang jumlahnya 16 buah, dari 16 pin tersebut yang terhubung ke Arduino hanya 6 pin saja. Lebih detailnya berikut program dan skemanya.


b.1 Arduino UNO




b.2 LCD 16x2


Cara Menghubungkan LCD Pin ke Arduino Uno :
 LCD RS pin ke digital pin 2
 LCD E pin ke digital pin 3
 LCD D4 pin ke digital pin 4
 LCD D5 pin ke digital pin 5
 LCD D6 pin ke digital pin 6
 LCD D7 pin ke digital pin 7
 LCD R/W pin ke ground





b.3 Program Arduino LCD

#include <LiquidCrystal.h>
LiquidCrystal lcd(2, 3, 4, 5, 6, 7);

void setup() {
  lcd.begin(16, 2);
  lcd.clear();
  lcd.noCursor();
}

void loop() {

  lcd.setCursor(0, 0);
  lcd.print("test lcd ");
  lcd.setCursor(0, 1);
  lcd.print("Yanuar Mukhammad");
}



b.4 Program Arduino LCD + ADC

#include <LiquidCrystal.h>

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);

void setup() {
  lcd.begin(16, 2);
  lcd.clear();
  lcd.noCursor();
}

void loop() {

  int sensorValue1 = analogRead(A3);
  int sensorValue2 = analogRead(A1);

  lcd.setCursor(0, 0);
  lcd.print("ADC 1 = ");
  lcd.print(sensorValue1);
  lcd.setCursor(0, 1);
  lcd.print("ADC 2 = ");
  lcd.print(sensorValue2);

  delay(100);
  lcd.clear();

}



b.5 Video Hasilnya