Mahir Arduino Sketch dan Elektro secara praktek

Voltage divider atau potential divider, adalah rangkaian sederhana untuk menurunkan besaran voltage. Dengan menggunakan 2 resistor yang dirangkai seri, kita dapat memecah voltage input. Rangkaian ini adalah termasuk rangkaian dasar yang sering digunakan dalam proyek elektronika.




Voltage in (Vin) terhubung oleh kedua resistor. Saat kita mengukur voltage diantara 1 resistor (Vout), nilai voltage akan lebih kecil (terbagi). Formula untuk menghitungnya adalah seperti ini: Contoh soal adalah menghitung voltage pada R2.

Vout = R2 / (R2 + R1) * Vin

Jika pada contoh, kita menggunakan resistor bernilai 100Ω resistors (0.1kΩ) untuk R1 and R2, dan 5V voltage input.

Vout = 100 / (100 + 100) * 5 = 2.5 volts

Yang menarik adalah rangkaian voltage divider ini dipengaruhi rasio perbandingan R1 dan R2, berapapun nilai resistor, bila nilai kedua resistor sama, makan akan voltage output adalah setengahnya. Contoh:

R1 dan R2 menggunakan resistor 47Ω dan voltage input 5V.

Vout = 47 / (47 + 47) * 5 = 2.5 volts

Jadi kalau kalian ingin mendapat voltage yang lebih kecil, maka perlu mengutak-atik rasio antara R1 dan R2.

LDR atau Light Dependent Resistor, dikenal juga dengan Cds (Cadmium Sulfide) atau photocell atau photoresistor. LDR hadir dalam berbagai bentuk dan ukuran dengan resistance yang berbeda.



LDR memiliki 2 kaki yang dihubungkan dengan materi photoconductive. Permukaan LDR biasanya dilapisi plastik transparan atau kaca.

Saat cahaya mengenai material photoconductive, akan menurunkan nilai resistansi, menyebabkan arus dapat mengalir dari satu elektroda ke elektroda lainnya.

LDR dapat diaplikasikan pada proyek-proyek yang menarik, contoh: kita tembakan laser pada LDR untuk mendeteksi bila ada orang yang memotong sinar tersebut, sistem akan memicu alarm atau mungkin lebih canggih memotret pelaku.
Motor Driver IC, ada 2 macam yang umum dipakai, L293D atau SN754410,  L293D lebih direkomendasikan, karena SN754410 mudah panas dan membutuhkan heat sink.

L293D dikenal sebagai dual H-bridge. H-bridge berguna dan memiliki konsep yang simpel. Kita bisa membuat H-bridge sendiri dengan menggunakan switch.

Gambar 1.1 H-bridge made of switches


Pada Gambar 1-1, sebuah motor terhubung dengan 4 buah switch. Konfigurasi ini disebut H-bridge karena membentuk huruf H, dengan load di garis tengah huruf H. Sekarang coba perhatikan Gambar 1-2.


Gambar 1.2 Perubahan Arahan Motor Pada H-Bridge

Pada gambar bagian kiri, kita memiliki switch di kiri-atas dan kanan bawah dalam keadaan tertutup. Ketika tertutup, arus akan mengalir ke motor dari kir ke kanan dan motor akan bergerak. Jika kita buka switch tersebut, dan menutup switch bagian kanan-atas dan kiri-bawah, arus akan mengalir melalui motor dari arah berlawanan yang juga menyebabkan motor bergerak berlawanan arah. Kurang lebih seperti inilah prinsip H-bridge bekerja.

Motor driver IC terdiri dari 2 H-bridges, namun bukan menggunakan switch, tetapi transistor. Chip memiliki dual H-bridge oleh karena itu kita dapat mengontrol 2 buah motor sekaligus.

Kita bisa membuat H-bridge sendiri dengan menggunakan transistor dan dioda dan persis melakukan fungsi L293D. Namun menggunakan The L293D ada keuntungan yaitu, kecil, hingga menghemat space proyek elektro kita

L293D memiliki 2 power supply pins dan 4 ground pins. Pin 16 (Vcc1) adalah supply voltage  untuk logic circuitry dari chip, dan harus diperoleh dari Arduino  5V supply. Pin 8 (Vcc2) adalah supply voltage untuk menggerakan motor.

Setiap ground harus dihubungkan menjadi satu. Setiap H-bridge pada chip bertindak masing-masing secara bebas, dan menggunakan power supplies secara bersama.

Pin 1 akan berfungsi sebagai H-bridge yang dikendalikan oleh pin 2 dan 7.
Pin 9 akan berfungsi sebagai H-bridge yang dikendalikan oleh pin 10 dan 15.

If an enable input is connected to a logic low (or ground), all four switches of the corresponding H-
bridge will be turned off (open).

If an enable is a logic high (> 2.4 V) the pair of inputs for the corresponding H-bridge will control which of the 4 switches of H bridge are turned on, as follows:

H-Bridge 1-2 (enable controlled by pin 1)



H-Bridge 3-4 (enable controlled by pin 9)




Minimum volt yang digunakan adalah 4.5 volt (untuk Vcc1 dan Vcc2). Maksimum voltage untuk Vcc1 adalah 5.5 volt untuk 754410 (bisa lebih tinggi untuk L293D).

Maksiumum volt untuk Vcc2 (motor supply) adalah 36 volts. Jika Vcc2 dibawah 4.5 volts, output bisa menjadi kacau dan chips akan panas.

Transistors bukan switch yang sempurna. Ketika transistors pada L293D on, akan ada penurunan voltage, menyebabkan motor kekurangan voltage 1.5 - 2.5 volts dibanding Vcc2. (1.5 - 2.5 volts inilah yang menyebabkan chip panas)

Makin tinggi arus pada motor, makin besar power yang hilang pada transistors. Jadi makin besar power sebuah motor, kita memerlukan driver chips yang lebih bagus dan  heat sink.
Bitwise operator melakukan perhitungan pada level bit. ada 6 bitwise operator, yaitu:


  • & bitwise and
  • | bitwise or
  • ^ bitwise xor
  • ~ bitwise not
  • << bitshift left
  • >> bitshift right


Bitwise operators hanya bisa digunakan antara variable integer. Setiap operator melakukan perhitungan berdasar aturan operasi logik.

Bitwise AND (&)
Aturannya: jika kedua input bernilai 1, outputnya akan bernilai 1, selain itu hasilnya 0. Contoh:

0 0 1 1
0 1 0 1
______ &
0 0 0 1

Integer berukuran 16 bit, jadi saat menggunakan operasi & akan terdapat 16 kali operasi perhitungan. Contoh:
int x = 77; //binary: 0000000001001101
int y = 121; //binary: 0000000001111001
int z = x & y;//result: 0000000001001001
In this case 77 & 121 = 73


Bitwise OR (|)
Jika salah satu input atau keduanya bernilai 1, akan menghasilkan 1, selain itu hasilnya 0
0 0 1 1
0 1 0 1
______ |
0 1 1 1

Bitwise XOR (^)
Jika hanya salah satu input bernilai 1, akan menghasilkan 1, jika kedua input bernilai 1 atau 0 , akan menghasilkan 0
0 0 1 1
0 1 0 1
______ ^
0 1 1 0

Bitwise NOT (~)
Bitwise NOT digunakan untuk single operand saja. Hasilnya adalah lawan dari nilai yang sekarang, 1 akan menjadi 0 dan 0 akan menjadi 1.
0 0 1 1
______ ~
1 1 0 0

Bitshift Left (<<), Bitshift Right (>>)
Bitshift operators menggeser seluruh bits pada integer ke kiri atau ke kanan. Banyaknya pergeseran sesuai nilai dikanan operator.

variable << number_of_bits

Contoh:
byte x = 9 ; // binary: 00001001
byte y = x << 3; // binary: 01001000 (or 72 dec)

Bits yang digeser hingga akhir baris akan hilang. Umumnya left bitshift digunakan untuk perkalian. Right bitshift digunakan membagi angkat.