Kamis, 20 Juli 2017

BAB 5 GAME ARDUINO PINBALL

Bab5
PENUTUP
5.1         Kesimpulan
Pinball merupakan jenis permainan arcade, di mana titik-titik diberi skor oleh pemain yang memanipulasi satu atau lebih bola baja di lapangan bermain di dalam kabinet tertutup kaca yang disebut mesin pinball atau meja pinball. Tujuan utama permainan ini adalah untuk mencetak poin sebanyak mungkin. Tujuan sekunder adalah memaksimalkan waktu yang dihabiskan untuk bermain dengan menghasilkan "bola ekstra" dan menjaga bola tetap bermain selama mungkin dan untuk mendapatkan permainan bonus dikenal sebagai replay. Pada umumnya mesin pinball modern mencakup alur cerita dimana pemain harus menyelesaikan tujuan tertentu dengan cara tertentu untuk menyelesaikan ceritanya, biasanya menghasilkan nilai tinggi untuk berbagai metode dalam menyelesaikan permainan. Poin diperoleh saat bola menyerang target berbeda di lapangan bermain. Pada bagian bawah lapangan bermain terdapat lubang yang dilindungi oleh dua buah sirip atau disebut dengan flippers, sirip ini terhubung dengan mikrokontroler arduino yang dikendalikan oleh pemain . Sebuah permainan berakhir setelah semua bola jatuh ke lubang tersebut.
Arduino adalah pengendali mikro single-board yang bersifat open-source, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri. Arduino juga merupakan platform hardware terbuka yang ditujukan kepada siapa saja yang ingin membuat peralatan elektronik interaktif berdasarkan hardware dan software yang fleksibel dan mudah digunakan. Mikrokontroler diprogram menggunakan bahasa pemrograman arduino yang memiliki kemiripan syntax dengan bahasa pemrograman C. Karena sifatnya yang terbuka maka siapa saja dapat mengunduh skema hardware arduino dan membangunnya.

Penggunaan arduino pada game ini adalah untuk mengoperasikan gerakkan pada pelontar bola saat memulai permainan, flippers dan untuk menambah poin ketika bola mengenai pop bumper.



DAFTARPUSTAKA

1.        Bob Blomquist. 2016 Game Pinball Arduino
   https://create.arduino.cc/projecthub/BobB/arduino-controlledpinball-machine-525863
   Tanggal Akses: 1 Mei 2017
2.       https://en.wikipedia.org/wiki/PinballTanggal Akses: 20 Juni 2017
3.       http://tobuku.com/docs/Arduino-Pengenalan.pdfTanggal Akses: 20 Juni 2017
4.       Suprianto. 2015 http://blog.unnes.ac.id/antosupri/pengertian-cara-kerja-danfungsi-transistor/
   Tanggal Akses: 20 Juni 2017
5.       http://www.dien-elcom.com/2012/08/pengertian-dan-jenistransistor.html
  Tanggal Akses: 20 Juni 2017
6.       http://teknikelektronika.com/pengertian-ic-integrated-circuitaplikasi-fungsi-ic/
  Tanggal Akses: 3 Juli 2017
7.       http://belajarelektronika.net/pengertian-dan-fungsi-ic-integratedcircuit/
  Tanggal Akses: 3 Juli 2017
8.      Dickson Kho
  http://teknikelektronika.com/kelebihan-keterbatasan-ic-integratedcircuit/
  Tanggal Akses: 3 Juli 2017
9.      Suprianto. 2015 http://blog.unnes.ac.id/antosupri/pengertian-push-button-
  switch-saklar-tombol-tekan/ Tanggal Akses: 3 Juli 2017
10.   Fachrozy Aulia
  http://fachrozyaulia.blogspot.co.id/2014/01/fungsi-jenis-jenisdan-pengertian-dioda.html         Tanggal Akses: 3 Juli 2017

BAB 4 GAME ARDUINO PINBALL

Bab4
HASIL GAME
4.1                 Hasil Game Pinball
Berikut ini adalah tampilan pada saat game Pinball dijalankan:


1.       Berikut tampilan utama:
Gambar 4.1: Tampilan Awal


2.       Berikut tampilan Bola Pinball ketika hendak dilontarkan

Gambar 4.2: Bola saat Hendak Dilontarkan

3. Berikut tampilan Score/Bola keberapa yang sedang dimainkan:

Gambar 4.3: Score Game Pinball

BAB 3 GAME ARDUINO PINBALL

Bab3 IMPLEMENTASI
Pada tahap ini akan dibuat implementasi dari game Pinball Arduino

3.1         Mesin Pinball Arduino


Membangun mesin pinball Arduino yang terkontrol membutuhkan kombinasi keterampilan kerja kayu, mekanik, elektronik dan pemrograman.

Seperti yang dapat Anda lihat dari gambar, mesin memiliki lemari kayu dan menggunakan suku cadang mesin pinball yang tersedia secara komersial. Mesinnya dikontrol oleh satu dewan Arduino Mega 2560.
Gambar 3.1: Mesin Pinball

Kasusnya semua dimensi dalam dokumen ini berukuran beberapa inci. Panel depan dan belakang 20H x 23W. Panel sampingnya adalah 20H x 47L. Potongan-potongannya dipotong dengan tepi yang digergaji dan dihubungkan menggunakan penggabung biskuit dan lem kayu. Sekrup dan lem juga bisa bekerja. Mesin akan mengambil banyak penyalahgunaan sehingga perlu kuat. Sebelum digabung, potong ¾ "dado 1 inci dari atas. Jangan merekatkan rak. Perlu mengapung untuk memungkinkan ekspansi dan kontraksi. Rak itu digunakan untuk menahan catu daya utama dan catu daya untuk lampu LED dekoratif yang dipasang di bawah penutupnya. Permukaan bermain adalah 22w x 42L. Perhatikan bahwa itu secara signifikan lebih pendek dari kabinet. Ini memberi sekitar 3 inci di depan untuk melewati kabel sampai tombol sirip dan lampu LED. Ini juga memberi ruang bagi mekanisme plunger bola. Permukaan bermain hanya terletak pada beberapa balok kayu kecil yang disekrup ke sisi sekitar 4 inci di bawah bagian atas kasus ini. Untuk mendapatkan isi dari mesin, cukup membuka tutupnya, lepaskan bidang permainan dan balikkan.
Kasus dan permukaan bermain semua dibangun di sudut kanan. Pitch dari permainan ini disediakan oleh kaki seperti yang ditunjukkan oleh sisi ini. Mesin pinball bisa memiliki sudut dari sesedikit 1 sampai 7 derajat. Semakin tinggi angle semakin cepat game. Rancang kaki agar bisa disesuaikan. Kaki-kaki itu sendiri terbuat dari kayu. Kemudian mengebor lubang 12 inci jauh di ujung masing-masing kaki menggunakan sedikit auger. Di ujung bawah saya menggunakan dua komponen epoxy untuk memasukkan
kacang tester 3/8 inci. Hati-hati jangan sampai lem di benang atau di tempat yang akan menghalangi lubang yang Anda bor. Saya kemudian memasukkan batang benang inci 12/8 inci ke kaki dan saya memasukkan mur ke batangnya.
Pelat pemasangan meja kaki hanya disekrupkan ke rak paling bawah dan kaki-kaki disekrupkan. Untuk menyesuaikan tinggi mesin, cukup lepaskan mur dan kemudian gerobak batang berulir masuk atau keluar. Kemudian kencangkan mur untuk memastikan meja tetap aman.
Kabel listrik berasal dari soket ekstensi yang terpasang pada bagian belakang mesin. Semuanya terpasang di sana, sehingga satu sakelar menghidupkan atau mematikan semuanya. Kabel USB ada di sana, sehingga saya bisa memprogram ulang papan Arduino tanpa harus melepas lapangan permainan.
Arduino Mega 2560 pada dasarnya melakukan empat hal. Ini menentukan kapan saklar diaktifkan, ternyata lampu menyala atau mati sesuai, melacak skornya, dan ini akan menampilkan nilai dan nomor bola pada LCD kecil. Sebagian besar kabelnya cukup sederhana. Misalnya, target terhubung ke salah satu masukan digital Arduino dan ke tanah. Masukan dikonfigurasi dengan menggunakan pernyataan seperti ditunjukkan di bawah ini.
Ketika kode mendeteksi bahwa input telah berubah dari yang tinggi ke rendah, ia mengetahui bahwa target telah dipukul dan kemudian menyalakan lampu pinball LED yang sesuai.
3.2          Penjelasan Hardware

3.2.1       Peralatan
Berikut adalah peralatan yang digunakan untuk membuat game Pinball dengan menggunakan arduino.
1. Arduino Mega 2560 & Genuino Mega 1560

Gambar 3.2: Arduino Mega 2560

2. Adfruit 2-pin LCD Display

Gambar 3.3: Adfruit 2-pin LCD Display

Gambar 3.4: Adfruit 2-pin LCD Display

Gambar 3.5: Adfruit 2-pin LCD Display

Gambar 3.6: Adfruit 2-pin LCD Display

3. 24V Power Supply

Gambar 3.7: 24V Power Supply



4. Adafruit Force Sensor


Gambar 3.8: Adafruit Force Sensor

Gambar 3.9: Adafruit Force Sensor

5. Pop Bumper Assembly

Gambar 3.10: Pop Bumpers Assembly

6. Pop Bumper Switch

Gambar 3.11: Pop Bumper Switch

7. Target Switch

Gambar 3.12: Target Switch

8. Rollover Switch

Gambar 3.13: Rollover Switch

9. Flipper Assembly

Gambar 3.14: Flipper Assembly

10. LED Lamps

Gambar 3.15: LED Lamps

3.3          Listing Program

const int TxPin = 17; long Score = 0; long OldScore = 0; long Target = 1; long Pop = 1; long Roll = 10; int Targets[8]; int Rolls[3]; int Pops[4]; int Milli = 10; int Sum = 0;
int Flash = 100; int Ball = 0; int i=0; int Shot = 0; int Lost = 0; int Pressure = 1024;
#include <SoftwareSerial.h>;
SoftwareSerial mySerial = SoftwareSerial(255, TxPin); void setup() {
pinMode(TxPin, OUTPUT); digitalWrite(TxPin, HIGH); mySerial.begin(9600); mySerial.write(12); // Clear mySerial.write(17); // Turn backlight on
//target inputs pinMode(2,INPUT_PULLUP); pinMode(3,INPUT_PULLUP); pinMode(4,INPUT_PULLUP); pinMode(5,INPUT_PULLUP); pinMode(6,INPUT_PULLUP); pinMode(7,INPUT_PULLUP); pinMode(8,INPUT_PULLUP); pinMode(9,INPUT_PULLUP); //rollover inputs pinMode(10,INPUT_PULLUP); pinMode(11,INPUT_PULLUP); pinMode(12,INPUT_PULLUP); //lower ball shot switch pinMode(15,INPUT_PULLUP); //upper ball shot switch pinMode(16,INPUT_PULLUP); //lcd output pinMode(17,OUTPUT); //target lights, respective pinMode(32,OUTPUT); pinMode(33,OUTPUT); pinMode(34,OUTPUT); pinMode(35,OUTPUT); pinMode(36,OUTPUT); pinMode(37,OUTPUT); pinMode(38,OUTPUT); pinMode(39,OUTPUT); //rollover lights, respective pinMode(40,OUTPUT); pinMode(41,OUTPUT); pinMode(42,OUTPUT); //pop bumper lights pinMode(50,OUTPUT); pinMode(51,OUTPUT); pinMode(52,OUTPUT); pinMode(53,OUTPUT);
} void loop() {
//****** Targets ***** for (int i=0; i<8; i++){ if (digitalRead(i+2) == LOW){//Target activated
Targets[i]=1;
Score = Score + Target; //turn on Target light digitalWrite(i+32,HIGH);
//delay so as not get multiple points for one hit delay(Milli); break;
}
}
Sum = 0; for (int i=0; i<8; i++){
Sum = Sum + Targets[i];
}
if (Sum == 8){
//all Targets lit, so flash and then turn off.
for (int j=0; j<3; j++){
for (int i=0; i<8; i++){
digitalWrite(i+32, LOW);
} delay(Flash); for (int i=0; i<8; i++){
digitalWrite(i+32, HIGH);
} delay(Flash);
} for (int i=0; i<8; i++){
digitalWrite(i+32, LOW); Targets[i]=0; } delay(Flash);
//Multiply target value by 10
Target = Target * 5;
//goto Skip;
}
// *********** Rollovers *********
for (int i=0; i<3; i++){ if (digitalRead(i+10) == LOW){
//rollover activated
Rolls[i]=1;
Score = Score + Roll; //turn on rollover light digitalWrite(i+40,HIGH);
//delay so as not get multiple points for one hit delay(Milli); break;
}
}
Sum = 0; for (int i=0; i<3; i++){ Sum = Sum + Rolls[i];
}
if (Sum == 3){
//all rollovers lit, so flash and then turn off.
for (int j=0; j<3; j++){
for (int i=0; i<3; i++){
digitalWrite(i+40, LOW);
}
delay(Flash); for (int i=0; i<3; i++){
digitalWrite(i+40, HIGH);
} delay(Flash);
} for (int i=0; i<3; i++){
digitalWrite(i+40, LOW); Rolls[i]=0; } delay(Flash);
//Multiply score by 2
Score = Score * 2;
Roll = Roll * 10;
//goto Skip;
}
//********** Pop Bumpers **********
for (int i=0; i<4; i++){
if (analogRead(i) > 500){
//pop activated
Pops[i]=1;
Score = Score + Pop; //turn on pop bumper light digitalWrite(i+50,HIGH);
//delay so as not get multiple points for one hit
//mySerial.print(analogRead(i));
//mySerial.print(" ");
delay(Milli); break;
}
}
Sum = 0; for (int i=0; i<4; i++){ Sum = Sum + Pops[i];
}
if (Sum == 4){
//all pop bumpers lit, so flash and then turn off.
for (int j=0; j<3; j++){
for (int i=0; i<4; i++){
digitalWrite(i+50, LOW);
} delay(Flash); for (int i=0; i<4; i++){digitalWrite(i+50, HIGH);
} delay(Flash);
} for (int i=0; i<4; i++){
digitalWrite(i+50, LOW); Pops[i]=0; } delay(Flash);
//Multiply target value by 10
Pop = Pop * 2;
//goto Skip;
}
Skip:
//Determine ball number if (digitalRead(15) == LOW){
//ball hit lower alley switch //if not already done so, increase Ball if (Shot == 0){
//Set Lost = 0 since not on pressure pad
Lost = 0;
Pressure = analogRead(7) + 20;
//set OldScore so as to reprint ball value on LCD
OldScore =-1; Ball = Ball + 1; if (Ball == 6){
Ball = 1;
Score = 0;
Target = 1;
Roll = 1;
Pop = 1;
}
Shot = 1;
} } if (digitalRead(16) == LOW){//ball hit lower alley switch //if not already done so, increase Ball if (Shot == 0){
//Set Lost = 0 since not on pressure pad
Lost = 0;
Pressure = analogRead(7) + 15;
//set OldScore so as to reprint ball value on LCD
OldScore =-1; Ball = Ball + 1; if (Ball == 6){
Ball = 1;
Score = 0;
Target = 1;
Roll = 1;
Pop = 1;
}
Shot = 1;
} } if (analogRead(7) > Pressure){
//ball on pressure pad Shot = 0; if (Lost == 0){
//mySerial.print(analogRead(7));
//Score = Score + 100; Lost = 1; if (Ball == 5){
//Game Over
//flash rollovers and then turn off.
for (int j=0; j<3; j++){
for (int i=0; i<3; i++){
digitalWrite(i+40, LOW);
} delay(Flash); for (int i=0; i<3; i++){
digitalWrite(i+40, HIGH);} delay(Flash);
} for (int i=0; i<3; i++){
digitalWrite(i+40, LOW); Rolls[i]=0;
}
// flash pop bumpers and then turn off for (int j=0; j<3; j++){ for (int i=0; i<4; i++){
digitalWrite(i+50, LOW);
} delay(Flash); for (int i=0; i<4; i++){
digitalWrite(i+50, HIGH);
} delay(Flash);
} for (int i=0; i<4; i++){
digitalWrite(i+50, LOW); Pops[i]=0;
}
//Flash Targets and then turn off.
for (int j=0; j<3; j++){ for (int i=0; i<8; i++){
digitalWrite(i+32, LOW);
}
delay(Flash); for (int i=0; i<8; i++){
digitalWrite(i+32, HIGH);
} delay(Flash);
} for (int i=0; i<8; i++){
digitalWrite(i+32, LOW); Targets[i]=0;
}
                                  mySerial.write(12);                                      // Clear
delay(5); // Required delay mySerial.print(Score);          // First line mySerial.write(13);         // Form feedmySerial.print("Game Over!!!"); // Second line }
}
}
//print to LCD if (Score != OldScore){ mySerial.write(12);           // Clear
                  delay(5);                                                     // Required delay
//mySerial.print(analogRead(7));
mySerial.print(Score);         // First line mySerial.write(13);         // Form feed mySerial.print("Ball = ");            // Second line mySerial.print(Ball); OldScore = Score;

}
}

BAB 2 GAME ARDUINO PINBALL

Bab2
PEMBAHASAN DAN DESIGN GAME
2.1        Pengenalan Pinball
Pinball adalah jenis permainan arcade, di mana titik-titik diberi skor oleh pemain yang memanipulasi satu atau lebih bola baja di lapangan bermain di dalam kabinet tertutup kaca yang disebut mesin pinball (atau "meja pinball"). Tujuan utama permainan ini adalah untuk mencetak poin sebanyak mungkin. Banyak mesin pinball modern mencakup alur cerita dimana pemain harus menyelesaikan tujuan tertentu dengan cara tertentu untuk menyelesaikan ceritanya, biasanya menghasilkan nilai tinggi untuk berbagai metode dalam menyelesaikan permainan. Poin diperoleh saat bola menyerang target berbeda di lapangan bermain. Saluran pembuangan terletak di bagian bawah lapangan bermain, yang sebagian dilindungi oleh kelelawar plastik yang dikendalikan pemain yang disebut sirip. Sebuah permainan berakhir setelah semua bola jatuh ke saluran pembuangan beberapa kali. Tujuan sekunder adalah memaksimalkan waktu yang dihabiskan untuk bermain (dengan menghasilkan "bola ekstra" dan menjaga bola tetap bermain selama mungkin) dan untuk mendapatkan permainan bonus (dikenal sebagai "replay").
Gambar 2.1: Tampilan Pinball
2.1.1        Sejarah Munculnya Pinball
Asal mula pinball saling terkait dengan sejarah banyak permainan lainnya. Permainan yang dimainkan di luar rumah dengan menggulingkan bola atau batu di padang rumput, seperti bocce atau mangkuk, akhirnya berkembang menjadi berbagai permainan biliar tanah setempat yang dimainkan dengan memukul bola dengan tongkat dan mendorongnya ke sasaran, seringkali di sekitar rintangan. Croquet, golf dan paille-maille akhirnya berasal dari varian biliar tanah.
Permainan outdoor yang berkembang dan spesial akhirnya menghasilkan versi dalam ruangan yang bisa dimainkan di atas meja, seperti biliar, atau di lantai sebuah pub, seperti bowling dan shuffleboard. Versi meja permainan ini menjadi nenek moyang pinball modern.
Di Prancis, selama masa 1643-1715 pemerintahan Louis XIV, meja biliar menyempit, dengan pin kayu atau skittles di salah satu ujung meja, dan pemain akan menembak bola dengan tongkat atau isyarat dari ujung yang lain. Pins butuh waktu terlalu lama untuk mereset saat terjatuh, sehingga akhirnya mereka tetap menempel di meja, dan lubang di tempat tidur meja menjadi sasaran. Pemain bisa memalsukan bola dari pin untuk mencapai lubang. Versi standar game akhirnya dikenal sebagai bagatelle.
Di suatu tempat antara tahun 1750-an dan 1770-an, varian bagatelle Billard japonais ’biliar Jepang’ diciptakan (di Eropa Barat, terlepas dari namanya), yang menggunakan pin logam tipis dan mengganti isyaratnya di ujung meja pemain dengan pegas melingkar dan sebuah penyelam. Pemain tersebut menembak bola ke atas lapangan bermain yang cenderung mengarah ke sasaran penilaian menggunakan plunger ini, perangkat yang masih digunakan di pinball sampai hari ini, dan permainannya juga secara langsung berasal dari pachinko.
Pada 1930-an operasi koin diperkenalkan, produsen memproduksi versi bagin bag yang dioperasikan dengan koin, sekarang dikenal sebagai "game pualam" atau "permainan pin". Meja itu berada di bawah kaca dan menggunakan perangkat pendorong M. Redgrave untuk mendorong bola ke lapangan bermain atas. Pada tahun 1931, David Bottle Ball milik David Gottlieb menjadi hit pertama dari era koin yang dioperasikan. Menjual seharga $ 17,50, permainan tersebut mensponsori lima sampai tujuh bola seharga satu sen. Permainan ini bergaung dengan orang-orang yang menginginkan hiburan murah di era Great Depression-era. Sebagian besar toko obat dan bar di mesin pinball yang dioperasikan AS, Dengan banyak lokasi dengan cepat memulihkan biaya permainan. Baffle Ball terjual lebih dari 50.000 unit Dan mendirikan Gottlieb sebagai produsen besar mesin pinball pertama.
Pada tahun 1932, distributor Gottlieb Raymond Moloney merasa sulit mendapatkan lebih banyak unit Baffle Ball untuk dijual. Dengan frustrasinya, ia mendirikan Lion Manufacturing untuk menghasilkan permainan rancangannya sendiri, Ballyhoo, yang dinamai sebuah majalah populer hari ini. Pertandingan menjadi hit hebat. Playfield yang lebih besar dan sepuluh kantong membuatnya lebih menantang daripada Baffle Ball, menjual 50.000 unit dalam 7 bulan. Moloney akhirnya mengubah nama perusahaannya menjadi Bally untuk mencerminkan kesuksesan game ini. Mesin awal ini tergolong kecil, mudah mekanis dan didesain untuk duduk di atas meja atau di atas meja.
Tahun 1930-an melihat kemajuan besar dalam desain pinball dengan diperkenalkannya elektrifikasi. Sebuah perusahaan bernama Pacific Amusements di Los Angeles, AS menghasilkan sebuah game berjudul Contact in 1933. Contact memiliki solenoid bertenaga listrik untuk mendorong bola keluar dari lubang bonus di tengah lapangan bermain. Solenoid lain membunyikan bel untuk memberi penghargaan kepada pemain.Perancang Contact, Harry Williams, pada akhirnya akan membentuk perusahaannya sendiri, Williams Manufacturing, pada tahun 1944. Pabrikan lain dengan cepat mengikuti dengan fitur serupa. Lampu listrik segera menjadi fitur standar dari semua permainan pinball berikutnya, yang dirancang untuk menarik pemain.
Pada akhir 1932, ada sekitar 150 perusahaan yang memproduksi mesin pinball, kebanyakan di Chicago. Chicago telah menjadi pusat pembuatan pinball sejak saat itu. Persaingan antar perusahaan sangat kuat, dan pada tahun 1934 ada 14 perusahaan yang tersisa.
Selama Perang Dunia II, semua produsen utama permainan yang dioperasikan dengan koin beralih ke pembuatan peralatan untuk usaha perang. Beberapa perusahaan, seperti Williams, membeli game lama dari operator dan memperbaruinya, menambahkan karya seni baru dengan tema patriotik. Di akhir perang, satu generasi orang Amerika mencari hiburan di bar dan toko malt, dan pinball melihat zaman keemasan lainnya. Perbaikan seperti mekanisme kemiringan dan permainan gratis (dikenal sebagai replay) muncul.
Humpty Dumpty dari Gottlieb, diperkenalkan pada tahun 1947, adalah game pertama yang menambahkan lipatan pemain yang dikendalikan pemain untuk menjaga bola tetap bermain lebih lama, menambahkan faktor keterampilan pada permainan. Penyiraman daya rendah mensyaratkan tiga pasang di sekitar playfield untuk membawa bola ke puncak.
Triple Action adalah game pertama yang menampilkan dua sirip di bagian bawah playfield. Tidak seperti mesin modern, siripnya menghadap keluar. Pelipis yang lebih kuat ini difasilitasi oleh penambahan catu daya DC. Inovasi ini sebagian oleh desainer Steve Kordek.
Game pertama yang menampilkan desain dual-inward-facingflipper yang familiar adalah Spot Bowler, dibuat oleh Gottlieb pada tahun 1950. Era pasca perang didominasi oleh Gottlieb. Perancang game Wayne Neyens, bersama dengan artis Leroy Parker, menghasilkan permainan yang oleh kolektor dianggap sebagai mesin pinball klasik terbaik.
Pengenalan mikroprosesor membawa pinball ke ranah game elektronik. Relai elektromekanis dan gulungan skor yang mendorong permainan pada tahun 1950an dan 1960an diganti pada tahun 1970an dengan papan sirkuit dan display digital. Pinball solid-state pertama diyakini sebagai Mirco Games ’The Spirit of ’76 (1976), meskipun permainan solid-state mainstream pertama adalah’ Hot Tip Hot ’(1977). Teknologi baru ini menyebabkan ledakan bagi Williams dan Bally, yang menarik lebih banyak pemain dengan permainan yang menampilkan aturan yang lebih kompleks, efek suara digital, dan ucapan.
Sederet mesin pinball di Pinball Hall of Fame di Las Vegas, Nevada.
Setelah runtuhnya industri video game yang dioperasikan dengan koin, pinball melihat kembalinya yang lain di tahun 1990an. Beberapa produsen baru memasuki lapangan seperti Capcom Pinball dan Alvin G. and Company, yang didirikan oleh Alvin Gottlieb, putra David Gottlieb. Gary Stern, putra pendiri Williams Sam Stern, mendirikan Data East Pinball dengan dana dari Data East Japan.
Permainan dari Williams sekarang mendominasi industri ini, dengan perangkat mekanis yang rumit dan tampilan dan sistem suara yang lebih rumit menarik pemain baru ke dalam permainan. Perizinan film dan ikon populer hari ini menjadi pokok untuk pinball, dengan Keluarga Strauss Williams / Williams memukul rekor penjualan modern sepanjang masa dari 20.270 mesin. Dua tahun kemudian, Williams memperingati patokan ini dengan edisi terbatas 1.000 mesin pinball Addams Family Gold, yang menampilkan perangkat lunak trim dan update berwarna emas dengan fitur permainan baru. Lisensi populer lainnya termasuk Indiana Jones: The Pinball Adventure dan Star Trek: The Next Generation. Memperluas pasar di Eropa dan Asia membantu membangkitkan kembali minat. Pat Lawlor adalah seorang desainer, bekerja untuk Williams sampai mereka keluar dari industri pada tahun 1999. Sekitar setahun kemudian, Lawlor kembali ke industri ini, memulai perusahaannya sendiri, bekerja sama dengan Stern Pinball untuk menghasilkan permainan baru.
Akhir tahun 1990-an mengalami penurunan dalam industri ini, dengan Gottlieb, Capcom, dan Alvin G. ditutup pada akhir tahun 1996. Divisi pinball Data East diakuisisi oleh Sega dan menjadi Sega Pinball pada tahun 1994. Pada tahun 1997, ada dua perusahaan Kiri: Sega Pinball dan Williams. Pada tahun 1999, Sega menjual divisi pinball mereka kepada Gary Stern (Presiden Sega Pinball pada saat itu) yang menelpon perusahaannya Stern Pinball. Saat ini, game Williams jarang terjual lebih dari 4.000 unit. Pada tahun 1999, Williams berusaha menghidupkan kembali penjualan dengan game Pinball 2000, menggabungkan tampilan video ke lapangan bermain pinball. Resepsi tersebut awalnya bagus dengan Revenge From Mars yang terjual dengan lebih dari 6.000 mesin, namun produksi 10.000-plus lebih sedikit untuk rilis enam tahun sebelumnya. Game Pinball 2000 berikutnya, Star Wars Episode I, hanya terjual sedikit di atas 3.500 mesin. Williams keluar dari bisnis pinball untuk fokus membuat peralatan game untuk kasino, yang lebih menguntungkan. Mereka melisensikan hak untuk mereproduksi bagian Bally / Williams ke Illinois Pinball dan hak untuk memproduksi ulang mesin berukuran penuh ke Pabrik Pinball. Stern Pinball tetap menjadi satu-satunya pabrikan mesin pinball asli sampai 2013, saat Jersey Jack Pinball mulai mengirimkan The Wizard of Oz. Sebagian besar anggota tim desain untuk Stern Pinball adalah mantan karyawan Williams.
Pada bulan November 2005 Pabrik Pinball (TPF) di Melbourne, Australia, mengumumkan bahwa mereka akan memproduksi mesin pinball bertema Crocodile Hunter baru di bawah label Bally. Dengan kematian Steve Irwin, diumumkan bahwa masa depan game ini tidak menentu. Pada tahun 2006 TPF mengumumkan bahwa mereka akan memproduksi dua mesin Williams era 90 yang populer, Madness Abad Pertengahan dan Kaktus Canyon. Namun TPF tidak dapat memenuhi janjinya untuk memproduksi mesin baru, dan pada bulan Oktober 2010 mengalihkan lisensi Williams Electronics Games serta bisnis manufaktur dan distribusi suku cadang pinball ke Planetary Pinball Supply Inc, distributor pengganti suku pinball di California.
Pada tahun 2006, perusahaan pinball Illinois PinBall Manufacturing Inc. memproduksi 178 reproduksi Capcom’s Big Bang Bar untuk pasar Eropa dan AS. Pada tahun 2010, MarsaPlay di Spanyol membuat remake dari Canasta asli Inder berjudul New Canasta, yang merupakan game pertama yang menyertakan layar LCD kristal cair di backbox.
Pada tahun 2013, Jersey Jack Pinball merilis mesin pinball Wizard of Oz. Ini adalah mesin pinball pertama yang diproduksi di Amerika Serikat dengan LCD sebagai backbox, mesin pinball widebody pertama sejak tahun 1994 dan mesin pinball AS pertama yang tidak dibuat oleh Stern Pinball sejak tahun 2001. Pada tahun 2015, produsen pinball Inggris baru Heighway Pinball merilis mesin pinball bertema balap Full Throttle. Permainan ini memiliki layar LCD untuk skor, info dan animasi yang terletak di permukaan playfield di tampilan mata pemain.
2.1.2       Permainan Pinball
Karakter utama permainan menggunakan sebuah bola dan flippers. Cara memainkan Pinball cukup dengan menggerakan flippers agar bola tidak jatuh. Bola akan terpantul dan menambah poin otomatis ketika bola menyentuh bumper pop. Permainan akan selesai ketika bola jatuh dari flippers.
2.2        Pengenalan Arduino
2.2.1       Sejarah Singkat
Semuanya berawal dari sebuah thesis yang dibuat oleh Hernando Barragan, di institute Ivrea, Italia pada tahun 2005, dikembangkan oleh Massimo Banzi dan David Cuartielles dan diberi nama Arduin of Ivrea. Lalu diganti nama menjadi Arduino yang dalam bahasa Italia berarti teman yang berani. Tujuan awal dibuat Arduino adalah untuk membuat perangkat mudah dan murah, dari perangkat yang ada saat itu. Dan perangkat tersebut ditujukan untuk para siswa yang akan membuat perangkat desain dan interaksi.
Saat ini tim pengembangnya adalah Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David Mellis, dan Nicholas Zambetti. Mereka mengupayakan 4 hal dalam Arduino ini, yaitu:
1.     Harga terjangkau
2.     Dapat dijalankan diberbagai sistem operasi, Windows,Linux, Max, dan sebagainya.
3.     Sederhana, dengan bahasa pemograman yang mudah bisadipelajari orang awam, bukan untuk orang teknik saja.
4.     Open Source, hardware maupun software.
Sifat Arduino yang Open Source, membuat Arduino berkembang sangat cepat. Dan banyak lahir perangkat-perangkat sejenis Arduino. Seperti DFRDuino atau Freeduino, dan kalau yang lokal ada namanya CipaDuino yang dibuat oleh SKIR70, terus ada MurmerDuino yang dibuat oleh Robot Unyil, ada lagi AViShaDuino yang salah satu pembuatnya adalah Admin Kelas Robot.
Sampai saat ini pihak resmi, sudah membuat berbagai jenisjenis Arduino. Mulai dari yang paling mudah dicari dan paling banyak digunakan, yaitu Arduino Uno. Hingga Arduino yang sudah menggunakan ARM Cortex, beebentuk Mini PC. Dan sudah ada ratusan ribu Arduino yang digunakan di gunakan di dunia pada tahun 2011. Dan untuk hari ini, yang bisa kamu hitung sendiri ya. Dan Arduino juga sudah banyak dipaka oleh perusahaan besar. Contohnya Google menggunakan Arduino untuk Accessory Development Kit, NASA memakai Arduino untuk prototypin, ada lagi Large Hadron Colider memakai Arduino dalam beberapa hal untuk pengumpulan data. Dan banyak yang bertanya juga Arduino ini menggunakan bahasa pemograman apa? Arduino sebenarnya menggunakan bahas C, yang sudah disederhanakan. Sehingga orang awam pun bisa menjadi seniman digital, bisa mempelajari Arduino dengan mudahnya.

2.2.2       Pengertian Arduino


Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri. Saat ini Arduino sangat populer di seluruh dunia. Banyak pemula yang belajar mengenal robotika dan elektronika lewat Arduino karena mudah dipelajari. Tapi tidak hanya pemula, para hobbyist atau profesional pun ikut senang mengembangkan aplikasi elektronik menggunakan Arduino. Bahasa yang dipakai dalam Arduino bukan assembler yang relatif sulit, tetapi bahasa C yang disederhanakan dengan bantuan pustaka-pustaka (libraries) Arduino.
Gambar 2.2: Arduino
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, dan lain-lain.
2.2.3       Konsep Arduino
Otak utama dari arduino ini adalah mikrokontroler yang ditanam pada setiap serinya, setiap seri arduino menggunakan mikrokontroler yang berbeda sesuai dengan kebutuhan, misal untuk arduino uno biasanya mikrokontroler yang dipakai adalah ATMega 328 dan bahasa pemrograman yang dipakai untuk memprogram arduino adalah C.
Gambar 2.3: Mikrokontroler ATMega328


Gambaran utama cara kerja dari arduino adalah sebagai berikut


Input->Proses->Output ya memang seperti inilah gambaran semua sistem komputer yang menjadi pembeda satu sistem dengan sistem lainnya adalah detail dari setiap tahapan input dilanjutkan dengan proses dan hasil yang dikeluarkan.
Sumber input pada arduino adalah dari PIN yang tersedia pada board arduino. Misal arduino dihubungkan dengan sensor jarak (sensor PING) dan buzzer. Sensor ping dihubungkan dengan pin digital i/o 4 dan buzzer dihubungkan dengan pin i/0 7. Anggaplah jika sensor ping menghasilkan jarak 100 cm ke atas maka buzzer akan berbunyi, jadi algoritmanya adalah sebagai berikut:
Gambar 2.5: Algoritma Arduino

Jadi proses yang terjadi pada mikrokontroler hanyalah proses situasi if then else. Inputnya diambil dari pin 4 dan outputnya akan disalurkan ke pin 7. Cukup sederhana kan cara kerjanya, intinya adalah mengambil data input dari pin yang diatur untuk menerima data dan data input yang diterima dikirim ke mikrokontroler untuk diproses sesuai kebutuhan dan hasil prosesnya disalurkan kembali ke pin outputnya.
2.2.4        Jenis-Jenis Arduino

ARDUINO USB

Menggunakan USB sebagai antar muka pemrograman atau komunikasi komputer. Contoh:
Gambar 2.6: Arduino USB

     Arduino Uno
     Arduino Duemilanove
     Arduino Diecimila
     Arduino NG Rev. C
     Arduino NG (Nuova Generazione)
     Arduino Extreme dan Arduino Extreme v2
     Arduino USB dan Arduino USB v2.0


ARDUINO SERIAL

Menggunakan RS232 sebagai antar muka pemrograman atau komunikasi komputer.
Gambar 2.7: Arduino Serial dan Arduino Serial v2.0

ARDUINO MEGA

Papan Arduino mirip dengan arduino uno dengan spesifikasi yang lebih tinggi, dilengkapi tambahan pin digital, pin analog, port serial dan sebagainya. Contoh:
Gambar 2.8: Arduino Mega

     Arduino Mega
     Arduino Mega 2560

ARDUINO FIO

Ditujukan untuk penggunaan nirkabel.
Gambar 2.9: Arduino Fio

ARDUINO LILYPAD

Papan dengan bentuk yang melingkar. Contoh: LilyPad Arduino 00, LilyPad Arduino 01, LilyPad Arduino 02, LilyPad Arduino 03, LilyPad Arduino 04.
Gambar 2.10: Arduino LilyPad

ARDUINO BT

Mengandung modul bluetooth untuk komunikasi nirkabel.
Gambar 2.11: Arduino BT

ARDUINO NANO & ARDUINO MINI

Papan berbentuk kompak dan digunakan bersama breadboard. Contoh:
Gambar 2.12: Arduino Nano dan Arduino Mini
     Arduino Nano 3.0, Arduino Nano 2.x
     Arduino Mini 04, Arduino Mini 03, Arduino Stamp 02
Dari semua jenis arduino yang ada, arduino yang paling sering dan paling mudah digunakan adalah arduino uno R3.
     Arduino Uno, jenis yang ini adalah yang paling banyak digunakan. Terutama untuk pemula sangat disarankan untuk menggunakan Arduino Uno. Dan banyak sekali referensi yang membahas Arduino Uno. Versi yang terakhir adalah Arduino Uno R3 (Revisi 3), menggunakan ATMEGA328 sebagai Microcontrollernya, memiliki 14 pin I/O digital dan 6 pin input analog. Untuk pemograman cukup menggunakan koneksi USB type A to To type B. Sama seperti yang digunakan pada USB printer.
     Arduino Esplora. Rekomendasi bagi kamu yang mau membuat gadget sepeti Smartphone, karena sudah dilengkapi dengan Joystick, button, dan sebagainya. Kamu hanya perlu tambahkan LCD, untuk lebih mempercantik Esplora.
Gambar 2.13: Arduino Eksplora

ARDUINO UNO

Arduino adalah sebuah board mikrokontroller yang berbasis ATmega328. Arduino memiliki 14 pin input/output yang mana 6 pin dapat digunakan sebagai output PWM, 6 analog input, crystal osilator 16 MHz, koneksi USB, jack power, kepala ICSP, dan tombol reset. Arduino mampu men-support mikrokontroller; dapat dikoneksikan dengan komputer menggunakan kabel USB.

Gambar 2.14: Arduino Uno

Apakah arduino? Arduino adalah merupakan sebuah board minimum system mikrokontroler yang bersifat open source. Didalam rangkaian board arduino terdapat mikrokontroler AVR seri ATMega 328 yang merupakan produk dari Atmel. Arduino memiliki kelebihan tersendiri disbanding board mikrokontroler yang lain selain bersifat open source, arduino juga mempunyai bahasa pemrogramanya sendiri yang berupa bahasa C. Selain itu dalam board arduino sendiri sudah terdapat loader yang berupa USB sehingga memudahkan kita ketika kita memprogram mikrokontroler didalam arduino. Sedangkan pada kebanyakan board mikrokontroler yang lain yang masih membutuhkan rangkaian loader terpisah untuk memasukkan program ketika kita memprogram mikrokontroler. Port USB tersebut selain untuk loader ketika memprogram, bisa juga difungsikan sebagai port komunikasi serial. Arduino menyediakan 20 pin I/O, yang terdiri dari 6 pin input analog dan 14 pin digital input/output. Untuk 6 pin analog sendiri bisa juga difungsikan sebagai output digital jika diperlukan output digital tambahan selain 14 pin yang sudah tersedia. Untuk mengubah pin analog menjadi digital cukup mengubah konfigurasi pin pada program. Dalam board kita bisa lihat pin digital diberi keterangan 0-13, jadi untuk menggunakan pin analog menjadi output digital, pin analog yang pada keterangan board 0-5 kita ubah menjadi pin 14-19. dengan kata lain pin analog 0-5 berfungsi juga sebagi pin output digital 14-16. Sifat open source arduino juga banyak memberikan keuntungan tersendiri untuk kita dalam menggunakan board ini, karena dengan sifat open source komponen yang kita pakai tidak hanya tergantung pada satu merek, namun memungkinkan kita bisa memakai semua komponen yang ada dipasaran. Bahasa pemrograman arduino merupakan bahasa C yang sudah disederhanakan syntax bahasa pemrogramannya sehingga mempermudah kita dalam mempelajari dan mendalami mikrokontroller.


2.2.5                 Tutorial Bahasa Pemrograman Arduino
Arduino menggunakan pemrograman dengan bahasa C. Berikut ini adalah sedikit penjelasan yang ditujukan kepada anda yang hanya mempunyai sedikit pengalaman pemrograman dan membutuhkan penjelasan singkat mengenai karakter bahasa C dan software Arduino. Untuk penjelasan yang lebih mendalam, web Arduino.cc adalah sumber yang lengkap.

Struktur

Setiap program Arduino (biasa disebut sketch) mempunyai dua buah fungsi yang harus ada.
     void setup( ) { } o Semua kode didalam kurung kurawal akan dijalankan hanya satu kali ketika program Arduino dijalankan untuk pertama kalinya.
     void loop( ) { } o Fungsi ini akan dijalankan setelah setup (fungsi void setup) selesai. Setelah dijalankan satu kali fungsi ini akan dijalankan lagi, dan lagi secara terus menerus sampai catu daya (power) dilepaskan.

Syntax

Berikut ini adalah elemen bahasa C yang dibutuhkan untuk format penulisan.
     //(komentar satu baris) Kadang diperlukan untuk memberi catatan pada diri sendiri apa arti dari kode-kode yang dituliskan. Cukup menuliskan dua buah garis miring dan apapun yang kita ketikkan dibelakangnya akan diabaikan oleh program.
    /* */(komentar banyak baris) Jika anda punya banyak catatan, maka hal itu dapat dituliskan pada beberapa baris sebagai komentar. Semua hal yang terletak di antara dua simbol tersebut akan diabaikan oleh program.
     { }(kurung kurawal) Digunakan untuk mendefinisikan kapan blok program mulai dan berakhir (digunakan juga pada fungsi dan pengulangan).
     ;(titik koma) Setiap baris kode harus diakhiri dengan tanda titik koma (jika ada titik koma yang hilang maka program tidak akan bisa dijalankan).

Variabel

Sebuah program secara garis besar dapat didefinisikan sebagai instruksi untuk memindahkan angka dengan cara yang cerdas. Variabel inilah yang digunakan untuk memindahkannya.
     int (integer) Digunakan untuk menyimpan angka dalam 2 byte (16 bit). Tidak mempunyai angka desimal dan menyimpan nilai dari -32,768 dan 32,767.
     long (long) Digunakan ketika integer tidak mencukupi lagi. Memakai 4 byte (32 bit) dari memori (RAM) dan mempunyai rentang dari -2,147,483,648 dan 2,147,483,647.
     boolean (boolean) Variabel sederhana yang digunakan untuk menyimpan nilai TRUE (benar) atau FALSE (salah). Sangat berguna karena hanya menggunakan 1 bit dari RAM.
float (float) Digunakan untuk angka desimal (floating point). Memakai 4 byte (32 bit) dari RAM dan mempunyai rentang dari -3.4028235E+38 dan 3.4028235E+38.
     char (character) Menyimpan 1 karakter menggunakan kode ASCII (misalnya ‘A’ = 65). Hanya memakai 1 byte (8 bit) dari RAM.

Operator Matematika

Operator yang digunakan untuk memanipulasi angka (bekerja seperti matematika yang sederhana)
     = Membuat sesuatu menjadi sama dengan nilai yang lain (misalnya: x = 10 * 2, x sekarang sama dengan 20)
     % Menghasilkan sisa dari hasil pembagian suatu angka dengan angka yang lain (misalnya: 12 % 10, ini akan menghasilkan angka 2)
     + Penjumlahan
     - Pengurangan
     * Perkalian
     / Pembagian

Operator Pembanding

Digunakan untuk membandingkan nilai logika.
     == Sama dengan (misalnya: 12 == 10 adalah FALSE (salah) atau 12 == 12 adalah TRUE (benar))
!= Tidak sama dengan (misalnya: 12 != 10 adalah TRUE (benar) atau 12 != 12 adalah FALSE (salah))
     < Lebih kecil dari (misalnya: 12 < 10 adalah FALSE (salah) atau 12 < 12 adalah FALSE (salah) atau 12 < 14 adalah TRUE (benar))
     > Lebih besar dari (misalnya: 12 > 10 adalah TRUE (benar) atau 12 > 12 adalah FALSE (salah) atau 12 > 14 adalah FALSE (salah))

Struktur Pengaturan

Program sangat tergantung pada pengaturan apa yang akan dijalankan berikutnya, berikut ini adalah elemen dasar pengaturan (banyak lagi yang lain dan bisa dicari di internet).
1.    if..else, dengan format seperti berikut ini:
if (kondisi) { } else if (kondisi) { } else { }
Dengan struktur seperti diatas program akan menjalankan kode yang ada di dalam kurung kurawal jika kondisinya TRUE, dan jika tidak (FALSE) maka akan diperiksa apakah kondisi pada else if dan jika kondisinya FALSE maka kode pada else yang akan dijalankan.
2.    for, dengan format seperti berikut ini:
for (int i = 0; i < #pengulangan; i++) { }
Digunakan bila anda ingin melakukan pengulangan kode di dalam kurung kurawal beberapa kali, ganti #pengulangan dengan jumlah pengulangan yang diinginkan. Melakukan penghitungan ke atas dengan i++ atau ke bawah dengan i–.

Digital

1.    pinMode(pin, mode) Digunakan untuk menetapkan modedari suatu pin, pin adalah nomor pin yang akan digunakan dari 0-19 (pin analog 0-5 adalah 14-19). Mode yang bisa digunakan adalah INPUT atau OUTPUT.
2.    digitalWrite(pin, value) Ketika sebuah pin ditetapkan sebagai OUTPUT, pin tersebut dapat dijadikan HIGH (ditarik menjadi 5 volts) atau LOW (diturunkan menjadi ground).
3.    digitalRead(pin) Ketika sebuah pin ditetapkan sebagai INPUT maka anda dapat menggunakan kode ini untuk mendapatkan nilai pin tersebut apakah HIGH (ditarik menjadi 5 volts) atau LOW (diturunkan menjadi ground).

Analog

Arduino adalah mesin digital tetapi mempunyai kemampuan untuk beroperasi di dalam alam analog (menggunakan trik). Berikut ini cara untuk menghadapi hal yang bukan digital.
1.    analogWrite(pin, value) Beberapa pin pada Arduino mendukung PWM (pulse width modulation) yaitu pin 3, 5, 6, 9, 10, 11. Ini dapat merubah pin hidup (on)atau mati (off) dengan sangat cepat sehingga membuatnya dapat berfungsi layaknya keluaran analog. Value (nilai) pada format kode tersebut adalah angka antara 0 ( 0% duty cycle ~ 0V) dan 255 (100% duty cycle ~ 5V).
2.    analogRead(pin) Ketika pin analog ditetapkan sebagai INPUT anda dapat membaca keluaran voltase-nya. Keluarannya berupa angka antara 0 (untuk 0 volts) dan 1024 (untuk 5 volts).

2.3       Mikrokontroler
Mikrokontroler adalah sebuah sistem kompuer fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti prosesor, memori (sejumlah kecil RAM, memori program, atau keduanya), dan perlengkapan input output. Dengan kata lain, mikrokontroler adalah suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis data. Sekedar contoh, bayangkan diri Anda saat mulai belajar membaca dan menulis, ketika Anda sudah bisa melakukan hal itu Anda bisa membaca tulisan apapun baik buku, cerpen, artikel dan sebagainya, dan andapun bisa pula menulis hal-hal sebaliknya. Begitu pula jika Anda sudah mahir membaca dan menulis data maka Anda dapat membuat program untuk membuat suatu sistem pengaturan otomatik menggunakan mikrokontroler sesuai keinginan Anda. Mikrokontroler merupakan komputer didalam chip yang digunakan untuk mengontrol peralatan elektronik, yang menekankan efisiensi dan efektifitas biaya. Secara harfiahnya bisa disebut “pengendali kecil” dimana sebuah sistem elektronik yang sebelumnya banyak memerlukan komponen-komponen pendukung seperti IC TTL dan CMOS dapat direduksi/diperkecil dan akhirnya terpusat serta dikendalikan oleh mikrokontroler ini. Mikrokonktroler digunakan dalam produk dan alat yang dikendalikan secara automatis, seperti sistem kontrol mesin, remote controls, mesin kantor, peralatan rumah tangga, alat berat, dan mainan. Dengan mengurangi ukuran, biaya, dan konsumsi tenaga dibandingkan dengan mendesain menggunakan mikroprosesor memori, dan alat input output yang terpisah, kehadiran mikrokontroler membuat kontrol elektrik untuk berbagai proses menjadi lebih ekonomis. Dengan penggunaan mikrokontroler ini maka :
           Sistem elektronik akan menjadi lebih ringkas
           Rancang bangun sistem elektronik akan lebih cepat karena sebagian besar dari sistem adalah perangkat lunak yang mudah dimodifikasi
           Pencarian gangguan lebih mudah ditelusuri karena sistemnya yang kompak
Agar sebuah mikrokontroler dapat berfungsi, maka mikrokontroler tersebut memerlukan komponen eksternal yang kemudian disebut dengan sistem minimum. Untuk membuat sistem minimal paling tidak dibutuhkan sistem clock dan reset, walaupun pada beberapa mikrokontroler sudah menyediakan sistem clock internal, sehingga tanpa rangkaian eksternal pun mikrokontroler sudah beroperasi. Yang dimaksud dengan sistem minimal adalah sebuah rangkaian mikrokontroler yang sudah dapat digunakan untuk menjalankan sebuah aplikasi. Sebuah IC mikrokontroler tidakakan berarti bila hanya berdiri sendiri. Pada dasarnya sebuah sistem minimal mikrokontroler AVR memiliki prinsip yang sama.
2.3.1       Sejarah Mikrokontroler
Dengan kata lain, mikrokontroler adalah suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis data. Sekedar contoh, bayangkan diri Anda saat mulai belajar membaca dan menulis, ketika Anda sudah bisa melakukan hal itu Anda bisa membaca tulisan apapun baik buku, cerpen, artikel dan sebagainya, dan Andapun bisa pula menulis hal-hal sebaliknya. Begitu pula jika Anda sudah mahir membaca dan menulis data maka Anda dapat membuat program untuk membuat suatu sistem pengaturan otomatik menggunakan mikrokontroler sesuai keinginan Anda. Mikrokontroler merupakan komputer didalam chip yang digunakan untuk mengontrol peralatan elektronik, yang menekankan efisiensi dan efektifitas biaya. Secara harfiahnya bisa disebut “pengendali kecil” dimana sebuah sistem elektronik yang sebelumnya banyak memerlukan komponen-komponen pendukung seperti IC TTL dan CMOS dapat direduksi/diperkecil dan akhirnya terpusat serta dikendalikan oleh mikrokontroler ini.
Mikrokonktroler digunakan dalam produk dan alat yang dikendalikan secara automatis, seperti sistem kontrol mesin, remote controls, mesin kantor, peralatan rumah tangga, alat berat, dan mainan. Dengan mengurangi ukuran, biaya, dan konsumsi tenaga dibandingkan dengan mendesain menggunakan mikroprosesor memori, dan alat input output yang terpisah, kehadiran mikrokontroler membuat kontrol elektrik untuk berbagai proses menjadi lebih ekonomis. Dengan penggunaan mikrokontroler ini maka :
     Sistem elektronik akan menjadi lebih ringkas
     Rancang bangun sistem elektronik akan lebih cepat karena sebagian besar dari sistem adalah perangkat lunak yang mudah dimodifikasi
     Pencarian gangguan lebih mudah ditelusuri karena sistemnya yang kompak
Namun demikian tidak sepenuhnya mikrokontroler bisa mereduksi komponen IC TTL dan CMOS yang seringkali masih diperlukan untuk aplikasi kecepatan tinggi atau sekedar menambah jumlah saluran masukan dan keluaran (I/O). Dengan kata lain, mikrokontroler adalah versi mini atau mikro dari sebuah komputer karena mikrokontroler sudah mengandung beberapa periferal yang langsung bisa dimanfaatkan, misalnya port paralel, port serial, komparator, konversi digital ke analog (DAC), konversi analog ke digital dan sebagainya hanya menggunakan sistem minimum yang tidak rumit atau kompleks.
Agar sebuah mikrokontroler dapat berfungsi, maka mikrokontroler tersebut memerlukan komponen eksternal yang kemudian disebut dengan sistem minimum. Untuk membuat sistem minimal paling tidak dibutuhkan sistem clock dan reset, walaupun pada beberapa mikrokontroler sudah menyediakan sistem clock internal, sehingga tanpa rangkaian eksternal pun mikrokontroler sudah beroperasi.
Untuk merancang sebuah sistem berbasis mikrokontroler, kita memerlukan perangkat keras dan perangkat lunak, yaitu:
1.   Sistem minimal mikrokontroler
2.   Software pemrograman dan kompiler, serta downloader
Yang dimaksud dengan sistem minimal adalah sebuah rangkaian mikrokontroler yang sudah dapat digunakan untuk menjalankan sebuah aplikasi. Sebuah IC mikrokontroler tidakakan berarti bila hanya berdiri sendiri. Pada dasarnya sebuah sistem minimal mikrokontroler AVR memiliki prinsip yang sama, yang terdiri dari 4 bagian, yaitu:
1.         Prosesor, yaitu mikrokontroler itu sendiri
2.         Rangkaian reset agar mikrokontroler dapat menjalankanprogram mulai dari awal
3.         Rangkaian clock, yang digunakan untuk memberi detakpada CPU
4.         Rangkaian catu daya, yang digunakan untuk memberisumberdaya
Pada mikrokontroler jenis2 tertentu (AVR misalnya), poin2 pada no 2 ,3 sudah tersedia didalam mikrokontroler tersebut dengan frekuensi yang sudah diseting dari vendornya (biasanya 1MHz,2MHz,4MHz,8MHz), sehingga pengguna tidak perlu memerlukan rangkaian tambahan, namun bila ingin merancang sistem dengan spesifikasi tertentu (misal ingin komunikasi dengan
PC atau handphone), maka pengguna harus menggunakan rangkaian clock yang sesuai dengan karakteristik PC atau HP tersebut, biasanya menggunakan kristal 11,0592 MHz, untuk menghasilkan komunikasi yang sesuai dengan baud rate PC atau HP tersebut.
Mikrokontroler pertama kali dikenalkan oleh Texas Instrument dengan seri TMS 1000 pada tahun 1974 yang merupakan mikrokontroler 4 bit pertama. Mikrokontroler ini mulai dibuat sejak 1971. Merupakan mikrokomputer dalam sebuah chip, lengkap dengan RAM dan ROM. Kemudian, pada tahun 1976 Intel mengeluarkan mikrokontroler yang kelak menjadi populer dengan nama 8748 yang merupakan mikrokontroler 8 bit, yang merupakan mikrokontroler dari keluarga MCS 48. Sekarang di pasaran banyak sekali ditemui mikrokontroler mulai dari 8 bit sampai dengan 64 bit, sehingga perbedaan antara mikrokontroler dan mikroprosesor sangat tipis. Masing2 vendor mengeluarkan mikrokontroler dengan dilengkapi fasilitas2 yang cenderung memudahkan user untuk merancang sebuah sistem dengan komponen luar yang relatif lebih sedikit.
Saat ini mikrokontroler yang banyak beredar dipasaran adalah mikrokontroler 8 bit varian keluarga MCS51(CISC) yang dikeluarkan oleh Atmel dengan seri AT89Sxx, dan mikrokontroler AVR yang merupakan mikrokontroler RISC dengan seri ATMEGA8535 (walaupun varian dari mikrokontroler AVR sangatlah banyak, dengan masing-masing memiliki fitur yang berbedabeda). Dengan mikrokontroler tersebut pengguna (pemula) sudah bisa membuat sebuah sistem untuk keperluan sehari-hari, seperti pengendali peralatan rumah tangga jarak jauh yang menggunakan remote control televisi, radio frekuensi, maupun menggunakan ponsel, membuat jam digital, termometer digital dan sebagainya.
Kelebihan utama dari mikrokontroler ialah tersedianya RAM dan peralatan I/O pendukung sehingga ukuran board mikrokontroler menjadi sangat ringkas. Mikrokontroler MCS51 ialah mikrokomputer CMOS 8 bit dengan 4 KB Flash PEROM (Programmable and Erasable Only Memory) yang dapat dihapus dan ditulisi sebanyak 1000 kali. Mikrokontroler ini diproduksi dengan menggunakan teknologi high density non-volatile memory. Flash PEROM on-chip tersebut memungkinkan memori program untuk diprogram ulang dalam sistem (in-system programming) atau dengan menggunakan programmer non-volatile memory konvensional. Kombinasi CPU 8 bit serba guna dan Flash PEROM, menjadikan mikrokontroler MCS51 menjadi microcomputer handal yang fleksibel.
Bentuk Fisik Mikrokontroler Keluarga MCS51 40 Pin
Gambar 2.15: Bentuk Fisik Mikrokontroler
Arsitektur perangkat keras mikrokontroler MCS51 mempunyai 40 kaki, 32 kaki digunakan untuk keperluan 4 buah port pararel. 1 port terdiri dari 8 kaki yang dapat di hubungkan untuk interfacing ke pararel device, seperti ADC, sensor dan sebagainya, atau dapat juga digunakan secara sendiri setiap bitnya untuk interfacing single bit septerti switch, LED, dll. Karakteristik lainya dari mikrokontroler MCS51 sebagai berikut :
     Low-power
     32 jalur masukan/keluaran yang dapat diprogram
     Dua timer counter
     16 bit RAM 128 byte
     Lima interrupt
Tidak seperti sistem komputer, yang mampu menanganiberbagai macam program aplikasi (misalnya pengolah kata, pengolah angkadan lain sebagainya), mikrokontroler hanya bisa digunakan untuk suatu aplikasi tertentu saja (hanya satu program saja yang bisa disimpan). Perbedaan lainnya terletak pada perbandingan RAM dan ROM. Pada sistem komputer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna disimpan dalam ruang RAM yang relatif besar, sedangkan rutin-rutin antarmuka perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada Mikrokontroler, perbandingan ROM dan RAM-nya yang besar, artinya program kontrol disimpan dalam ROM (bisa Masked ROM atau Flash PEROM) yang ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat penyimpan sementara, termasuk registerregister yang digunakan pada mikrokontroler yang bersangkutan.
Kelebihan Sistem Dengan Mikrokontroler
     Penggerak pada mikrokontoler menggunakan bahasa pemograman assembly dengan berpatokan pada kaidah digital dasar sehingga pengoperasian sistem menjadi sangat mudah dikerjakan sesuai dengan logika sistem (bahasa assembly ini mudah dimengerti karena menggunakan bahasa assembly aplikasi dimana parameter input dan output langsung bisa diakses tanpa menggunakan banyak perintah). Desain bahasa assembly ini tidak menggunakan begitu banyak syarat penulisan bahasa pemrograman seperti huruf besar dan huruf kecil untuk bahasa assembly tetap diwajarkan.
     Mikrokontroler tersusun dalam satu chip dimana prosesor, memori, dan I/O terintegrasi menjadi satu kesatuan kontrol sistem sehingga mikrokontroler dapat dikatakan sebagai komputer mini yang dapat bekerja secara inovatif sesuai dengan kebutuhan sistem.
     Sistem running bersifat berdiri sendiri tanpa tergantung dengan komputer sedangkan parameter komputer hanya digunakan untuk download perintah instruksi atau program. Langkah-langkah untuk download komputer dengan mikrokontroler sangat mudah digunakan karena tidak menggunakan banyak perintah.
     Pada mikrokontroler tersedia fasilitas tambahan untuk pengembangan memori dan I/O yang disesuaikan dengan kebutuhan sistem.
     Harga untuk memperoleh alat ini lebih murah dan mudah didapat.

2.3.2        Mengakses Mikrokontroler
Agar sebuah mikrokontroler dapat berfungsi, maka mikrokontroler tersebut memerlukan komponen eksternal yang kemudian disebut dengan sistem minimum. Untuk membuat sistem minimal paling tidak dibutuhkan sistem clock dan reset, walaupun pada beberapa mikrokontroler sudah menyediakan sistem clock internal, sehingga tanpa rangkaian eksternal pun mikrokontroler sudah beroperasi.
Untuk merancang sebuah sistem berbasis mikrokontroler, kita memerlukan perangkat keras dan perangkat lunak, yaitu:
     Sistem minimal mikrokontroler.
     Software pemrograman dan kompiler, serta downloader.
Yang dimaksud dengan sistem minimal adalah sebuah rangkaian mikrokontroler yang sudah dapat digunakan untuk menjalankan sebuah aplikasi. Sebuah IC mikrokontroler tidakakan berarti bila hanya berdiri sendiri. Pada dasarnya sebuah sistem minimal mikrokontroler AVR memiliki prinsip yang sama, yang terdiri dari 4 bagian, yaitu:
     Prosesor, yaitu mikrokontroler itu sendiri.
     Rangkaian reset agar mikrokontroler dapat menjalankan program mulai dari awal.
     Rangkaian clock, yang digunakan untuk memberi detak pada CPU.
     Rangkaian catu daya, yang digunakan untuk memberi sumberdaya.
Sistem Polling dan InterupsiPolling sebenarnya bukan suatu fitur , ini adalah sesuatau yang harus dilakukan jika mikrokontroler yang dipilih tidak memiliki interupsi. Polling adalah teknik perangkat lunak dimana kontroler secara terus menerus menanyakan suatu perangkat jika membutuhkan servis.Perangkat membuat suatu tanda ketika data siap untuk ditransfer ke kontroler, dimana kontroler akan melihat pool berikutnya. Beberapa perangkat dapat dipolled dengan sukses, dengan kontroler yang meloncat kepada rutin program yang lain, tergantung pada flag mana yang telah diset.
Dasar dari polling adalah setiap fungsi memakai tipe roundrobin untuk menanyakan ketika mereka dalam keadaan yang membutuhkan sebuah servis, kita dapat membuat mereka (prosedure/fungsi) memanggil fungsi mereka sendiri ketika prosedure tersebut membutuhkan penanganan lain. Ini disebut dengan “interupt”, ketika perangkat menginterupsi eksekusi program utama. Prosesor lalu akan mengambil waktu untuk keluar dari eksekusi program normal untuk menguji source interrupt dan mengambil aksi tertentu. Setelah itu, eksekusi program normal dilanjutkan. Sebuah servis interrupt dengan kata lain seperti sebuah sub-rutin, untuk melakukan perintah lain yang sebelumnya tidak dijalankan sehingga dapat diantisipasi oleh prosesor untuk menyesuaikan sebagian waktu, untuk mengeksekusi perintah baru dan menghentikan program utama yang kemudian dijalankan kembali jika tidak ada pemanggilan prosedur lain pada badan program.
Pemakaian prioritas interupsi di atas memiliki beberapa peraturan yang tercantum dibawah ini:
1.    Tidak ada interupsi yang menginterupsi interupsi prioritastinggi.
2.    Interupsi prioritas tinggi boleh menginterupsi interupsiprioritas rendah.
3.    Interupsi prioritas rendah boleh terjadi jika tidak ada interupsi lain yang sedang dijalankan.
4.    Jika dua interupsi terjadi pada waktu bersamaan, interupsi yang memiliki prioritas lebih tinggi akan dikerjakan terlebih dahulu. Jika keduanya memiliki prioritas sama, maka interupsi yang berada pada urutan polling akan dikerjakan terlebih dahulu.
Mikrokontroler ATMEL secara otomatis akan menguji apakah sebuah interupsi bias terjadi setelah setiap instruksi dikerjakan. Pengecekan ini mengikuti suatu alur yang disebut dengan Polling Sequence dengan urutan:
     Interupsi Eksternal 0
     Interupsi Timer 0
     Interupsi Eksternal 1
     Interupsi Timer 1
     Interupsi serial
Ini berarti jika sebuah interupsi serial terjadi pada waktu bersamaan dengan interupsi eksternal 0, maka interupsi eksternal 0 akan dikerjakan terlebih dahulu dan interupsi serial baru akan dikerjakan setelah pengerjaan rutin interupsi eksternal 0 selesai dilakukan.
2.3.3        Fitur AVR ATMega328
ATMega328 adalah mikrokontroller keluaran dari atmel yang mempunyai arsitektur RISC (Reduce Instruction Set Computer) yang dimana setiap proses eksekusi data lebih cepat dari pada arsitektur CISC (Completed Instruction Set Computer). Mikrokontroller ini memiliki beberapa fitur antara lain :
     130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock.
     32 x 8-bit register serba guna.
     Kecepatan mencapai 16 MIPS dengan clock 16 MHz.
     32 KB Flash memory dan pada arduino memiliki bootloader yang menggunakan 2 KB dari flash memori sebagai bootloader.
     Memiliki EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 1KB sebagai tempat penyimpanan data semi permanent karena EEPROM tetap dapat menyimpan data meskipun catu daya dimatikan.
     Memiliki SRAM (Static Random Access Memory) sebesar 2KB.
     Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse Width Modulation) output.
     Master / Slave SPI Serial interface.
Mikrokontroller ATmega 328 memiliki arsitektur Harvard, yaitu memisahkan memori untuk kode program dan memori untuk data sehingga dapat memaksimalkan kerja dan parallelism. Instruksi – instruksi dalam memori program dieksekusi dalam satu alur tunggal, dimana pada saat satu instruksi dikerjakan instruksi berikutnya sudah diambil dari memori program. Konsep inilah yang memungkinkan instruksi – instruksi dapat dieksekusi dalam setiap satu siklus clock. 32 x 8-bit register serba guna digunakan untuk mendukung operasi pada ALU ( Arithmatic Logic unit ) yang dapat dilakukan dalam satu siklus. 6 dari register serbaguna ini dapat digunakan sebagai 3 buah register pointer 16-bit pada mode pengalamatan tidak langsung untuk mengambil data pada ruang memori data. Ketiga register pointer 16-bit ini disebut dengan register X ( gabungan R26 dan R27 ), register Y ( gabungan R28 dan R29 ), dan register Z ( gabungan R30 dan R31 ). Hampir semua instruksi AVR memiliki format 16-bit. Setiap alamat memori program terdiri dari instruksi 16-bit atau 32-bit. Selain register serba guna di atas, terdapat register lain yang terpetakan dengan teknik memory mapped I/O selebar 64 byte. Beberapa register ini digunakan untuk fungsi khusus antara lain sebagai register control Timer/ Counter, Interupsi, ADC, USART, SPI, EEPROM, dan fungsi I/O lainnya. Register– register ini menempati memori pada alamat 0x20h – 0x5Fh. Berikut ini adalah tampilan architecture ATmega 328 :
Gambar 2.16: Architecture ATMega328

2.4      Resistor
Resistor adalah komponen dasar elektronika yang digunakan untuk membatasi jumlah arus yang mengalir dalam satu rangkaian. Sesuai dengan namanya resistor bersifat resistif dan umumnya terbuat dari bahan karbon . Dari hukum Ohms diketahui, resistansi berbanding terbalik dengan jumlah arus yang mengalir melaluinya. Satuan resistansi dari suatu resistor disebut Ohm atau dilambangkan dengan simbol Ω (Omega). Tipe resistor yang umum adalah berbentuk tabung dengan dua kaki tembaga di kiri dan kanan. Pada badannya terdapat lingkaran membentuk gelang kode warna untuk memudahkan pemakai mengenali besar resistansi tanpa mengukur besarnya dengan Ohmmeter. Kode warna tersebut adalah standar manufaktur yang dikeluarkan oleh EIA (Electronic Industries Association) seperti yang ditunjukkan pada tabel berikut. Waktu penulis masuk pendaftaran kuliah elektro, ada satu test yang harus dipenuhi yaitu diharuskan tidak buta warna. Belakangan baru diketahui bahwa mahasiswa elektro wajib untuk bisa membaca warna gelang resistor (barangkali).
Gambar 2.17: Resistor

Resistansi dibaca dari warna gelang yang paling depan ke arah gelang toleransi berwarna coklat, merah, emas atau perak. Biasanya warna gelang toleransi ini berada pada badan resistor yang paling pojok atau juga dengan lebar yang lebih menonjol, sedangkan warna gelang yang pertama agak sedikit ke dalam. Dengan demikian pemakai sudah langsung mengetahui berapa toleransi dari resistor tersebut. Kalau anda telah bisa menentukan mana gelang yang pertama selanjutnya adalah membaca nilai resistansinya. Jumlah gelang yang melingkar pada resistor umumnya sesuai dengan besar toleransinya. Biasanya resistor dengan toleransi 5%, 10% atau 20% memiliki 3 gelang (tidak termasuk gelang toleransi). Tetapi resistor dengan toleransi 1% atau 2% (toleransi kecil) memiliki 4 gelang (tidak termasuk gelang toleransi). Gelang pertama dan seterusnya berturut-turut menunjukkan besar nilai satuan, dan gelang terakhir adalah faktor pengalinya. Misalnya resistor dengan gelang kuning, violet, merah dan emas. Gelang berwarna emas adalah gelang toleransi. Dengan demikian urutan warna gelang resitor ini adalah, gelang pertama berwarna kuning, gelang kedua berwana violet dan gelang ke tiga berwarna merah. Gelang ke empat tentu saja yang berwarna emas dan ini adalah gelang toleransi. Dari tabel-1 diketahui jika gelang toleransi berwarna emas, berarti resitor ini memiliki toleransi 5%. Nilai resistansisnya dihitung sesuai dengan urutan warnanya. Pertama yang dilakukan adalah menentukan nilai satuan dari resistor ini. Karena resitor ini resistor 5% (yang biasanya memiliki tiga gelang selain gelang toleransi), maka nilai satuannya ditentukan oleh gelang pertama dan gelang kedua. Masih dari tabel-1 diketahui gelang kuning nilainya = 4 dan gelang violet nilainya = 7. Jadi gelang pertama dan kedua atau kuning dan violet berurutan, nilai satuannya adalah 47. Gelang ketiga adalah faktor pengali, dan jika warna gelangnya merah berarti faktor pengalinya adalah 100. Sehingga dengan ini diketahui nilai resistansi resistor tersebut adalah nilai satuan x faktor pengali atau 47 x 100 = 4.7K Ohm dan toleransinya adalah 5%. Spesifikasi lain yang perlu diperhatikan dalam memilih resitor pada suatu rancangan selain besar resistansi adalah besar watt-nya. Karena resistor bekerja dengan dialiriarus listrik, maka akan terjadi disipasi daya berupa panas sebesar W=I2R watt. Semakin besar ukuran fisik suatu resistor bisa menunjukkan semakin besar kemampuan disipasi daya resistor tersebut. Umumnya di pasar tersedia ukuran 1/8, 1/4, 1, 2, 5, 10 dan 20 watt. Resistor yang memiliki disipasi daya 5, 10 dan 20 watt umumnya berbentuk kubik memanjang persegi empat berwarna putih, namun ada juga yang berbentuk silinder. Tetapi biasanya untuk resistor ukuran jumbo ini nilai resistansi dicetak langsung dibadannya, misalnya 100W5W.
2.5    Kapasitor
Kondensator atau sering disebut sebagai kapasitor adalah suatu alat yang dapat menyimpan energi di dalam medan listrik, dengan cara mengumpulkan ketidakseimbangan internal dari muatan listrik. Kondensator memiliki satuan yang disebut Farad dari nama Michael Faraday. Kondensator juga dikenal sebagai "kapasitor", namun kata "kondensator" masih dipakai hingga saat ini. Pertama disebut oleh Alessandro Volta seorang ilmuwan Italia pada tahun 1782 (dari bahasa Itali condensatore), berkenaan dengan kemampuan alat untuk menyimpan suatu muatan listrik yang tinggi dibanding komponen lainnya. Kebanyakan bahasa dan negara yang tidak menggunakan bahasa Inggris masih mengacu pada perkataan bahasa Italia "condensatore", bahasa Perancis condensateur, Indonesia dan Jerman Kondensator atau Spanyol Condensador.

2.5.1 Prinsip dasar dan spesifikasi elektriknya
Kapasitor adalah komponen elektronika yang dapat menyimpan muatan listrik. Struktur sebuah kapasitor terbuat dari 2 buah plat metal yang dipisahkan oleh suatu bahan dielektrik. Bahanbahan dielektrik yang umum dikenal misalnya udara vakum, keramik, gelas dan lain-lain. Jika kedua ujung plat metal diberi tegangan listrik, maka muatan-muatan positif akan mengumpul pada salah satu kaki (elektroda) metalnya dan pada saat yang sama muatan-muatan negatif terkumpul pada ujung metal yang satu lagi. Muatan positif tidak dapat mengalir menuju ujung kutup negatif dan sebaliknya muatan negatif tidak bisa menuju ke ujung kutup positif, karena terpisah oleh bahan dielektrik yang non-konduktif. Muatan elektrik ini "tersimpan" selama tidak ada konduksi pada ujung-ujung kakinya. Di alam bebas, phenomena kapasitor ini terjadi pada saat terkumpulnya muatan-muatan positif dan negatif di awan.
Gambar 2.18: Kapasitor

2.5.2      Kapasitansi
Kapasitansi didefenisikan sebagai kemampuan dari suatu kapasitor untuk dapat menampung muatan elektron. Coulombs pada abad 18 menghitung bahwa 1 coulomb = 6.25 x 1018 elektron. Kemudian Michael Faraday membuat postulat bahwa sebuah kapasitor akan memiliki kapasitansi sebesar 1 farad jika dengan tegangan 1 volt dapat memuat muatan elektron sebanyak 1 coulombs. Dengan rumus dapat ditulis :
Q = CV ................(1)
Q = muatan elektron dalam C (coulombs)
C = nilai kapasitansi dalam F (farads)
V = besar tegangan dalam V (volt)
Dalam praktek pembuatan kapasitor, kapasitansi dihitung dengan mengetahui luas area plat metal (A), jarak (t) antara kedua plat metal (tebal dielektrik) dan konstanta (k) bahan dielektrik. Dengan rumusan dapat ditulis sebagai berikut : C = (8.85 x 10-12) (k A/t) ...(2) Berikut adalah tabel contoh konstanta (k) dari beberapa bahan dielektrik yang disederhanakan.
Untuk rangkain elektronik praktis, satuan farads adalah sangat besar sekali. Umumnya kapasitor yang ada di pasar memiliki satuan uF (10-6 F), nF (10-9 F) dan pF (10-12 F). Konversi satuan penting diketahui untuk memudahkan membaca besaran sebuah kapasitor. Misalnya 0.047uF dapat juga dibaca sebagai 47nF, atau contoh lain 0.1nF sama dengan 100p.
2.6    Transistor
Pengertian Transistor adalah komponen elektronika semikonduktor yang memiliki 3 kaki elektroda, yaitu Basis (Dasar), Kolektor (Pengumpul) dan Emitor (Pemancar). Komponen ini berfungsi sebagai penguat, pemutus dan penyambung (switching), stabilitasi tegangan, modulasi sinyal dan masih banyak lagi fungsi lainnya. Selain itu, transistor juga dapat digunakan sebagai kran listrik sehingga dapat mengalirkan listrik dengan sangat akurat dan sumber listriknya. Transistor sebenarnya berasal dari kata “transfer” yang berarti pemindahan dan “resistor” yang berarti penghambat. Dari kedua kata tersebut dapat kita simpulkan, pengertian Transistor adalah pemindahan atau peralihan bahan setengah penghantar menjadi suhu tertentu. Transistor pertama kali ditemukan pada tahun 1948 oleh William Shockley, John Barden dan W.H, Brattain. Tetapi, komponen ini mulai digunakan pada tahun 1958. Jenis Transistor terbagi menjadi 2, yaitu transistor tipe P-N-P dan transistor N-P-N.
Gambar 2.19: Transistor
2.6.1        Cara Kerja Transistor

Hampir sama dengan resistor yang mempunyai tipe dasar modern. Tipe dasar modern terbagi menjadi 2, yaitu Bipolar Junction Transistor atau biasa di singkat BJT dan Field Effect Transistor atau FET. BJT dapat bekerja bedasarkan arus inputnya, sedangkan FET bekerja berdasarkan tegangan inputnya. Dalam dunia elektronika modern, transistor merupakan komponen yang sangat penting terutama dalam rangkaian analog karena fungsinya sebagai penguat. Rangkaian analog terdiri dari pengeras suara, sumber listrik stabil dan penguat sinyal radio. Tidak hanya rangkaian analog, di dalam rangkaian digital juga terdapat transistor yang digunakan sebagai saklar dengan kecepatan tinggi. Beberapa transistor juga dapat di rangkai sehingga berfungsi sebagai logic gate.

2.6.2       Jenis-jenis transistor
Transistor mempunyai 3 jenis yaitu :


 1. Uni Junktion Transistor (UJT)
Uni Junktion Transistor (UJT) adalah transistor yang mempunyai satu kaki emitor dan dua basis. Kegunaan transistor ini adalah terutama untuk switch elektronis. Ada Dua jenis UJT ialah UJT Kanal N dan UJT Kanal P.
Gambar 2.20: Uni Junkotion Transistor

2. Field Effect Transistor (FET)

Beberapa Kelebihan FET dibandingkan dengan transistor biasa ialah antara lain penguatannya yang besar, serta desah yang rendah. Karena harga FET yang lebih tinggi dari transistor, maka hanya digunakan pada bagian-bagian yang memang memerlukan. Bentuk fisik FET ada berbagai macam yang mirip dengan transistor.
Jenis FET ada dua yaitu Kanal N dan Kanal P. Kecuali itu terdapat pula macam FET ialah Junktion FET (JFET) dan Metal Oxide Semiconductor FET (MOSFET).
Gambar 2.21: Field Effect Transistor

3. MOSFET

MOSFET (Metal Oxide Semiconductor FET) adalah suatu jenis FET yang mempunyai satu Drain, satu Source dan satu atau dua Gate. MOSFET mempunyai input impedance yang sangat tinggi. Mengingat harga yang cukup tinggi, maka MOSFET hanya digunakan pada bagian bagian yang benar-benar memerlukannya. Penggunaannya misalnya sebagai RF amplifier pada receiver untuk memperoleh amplifikasi yang tinggi dengan desah yang rendah.
Gambar 2.22: Bentuk Fisik Mosfet

Gambar 2.23: Simbol Mosfet

Dalam pengemasan dan perakitan dengan menggunakan MOSFET perlu diperhatiakan bahwa komponen ini tidak tahan terhadap elektrostatik, mengemasnya menggunakan kertas timah, pematriannya menggunakan jenis solder yang khusus untuk pematrian MOSFET. Seperti halnya pada FET, terdapat dua macam MOSFET ialah Kanal P dan Kanal N.
2.6.3       Fungsi Transistor
Sangat berpengaruh besar di dalam kinerja rangkaian elektronika. Karena di dalam sirkuit elektronik, komponen transistor berfungsi sebagai jangkar rangkaian. Transistor adalah komponen semi konduktor yang memiliki 3 kaki elektroda, yaitu Basis (B), Colector (C) dan Emitor (E). Dengan adanya 3 kaki elektroda tersebut, tegangan atau arus yang mengalir pada satu kaki akan mengatur arus yang lebih besar untuk melalui 2 terminal lainnya.
     Sebagai penguat amplifier.
     Sebagai pemutus dan penyambung (switching).
     Sebagai pengatur stabilitas tegangan.
     Sebagai peratas arus.
     Dapat menahan sebagian arus yang mengalir.
     Menguatkan arus dalam rangkaian.
     Sebagai pembangkit frekuensi rendah ataupun tinggi.
Jika dilihat dari susuan semi konduktor, Transistor dibedakan lagi menjadi 2 bagian, yaitu Transistor PNP dan Transistor NPN. Untuk dapat membedakan kedua jenis tersebut, dapat kita lihat dari bentuk arah panah yang terdapat pada kaki emitornya. Pada transistor PNP arah panah akan mengarah ke dalam, sedangkan pada transistor NPN arah panahnya akan mengarah ke luar. Saat ini transistor telah mengalami banyak perkembangan, karena sekarang ini transistor sudah dapat kita gunakan sebagai memory dan dapat memproses sebuah getaran listrik dalam dunia prosesor komputer. Dengan berkembangnya fungsi transistor, bentuk dari transistor juga telah banyak mengalami perubahan. Salah satunya telah berhasil diciptakan transistor dengan ukuran super kecil yang hanya dalam ukuran nano mikron (transistor yang sudah dikemas di dalam prosesor komputer). Karena bentuk jelajah tegangan kerja dan frekuensi yang sangat besar dan lebar, tidak heran komponen ini banyak digunakan didalam rangkaian elektornika. Contohnya adalah transistor pada rangkaian analog yang digunakan sebagai amplifier, switch, stabilitas tegangan dan lain sebagainya. Tidak hanya di rangkaian analog, pada rangkaian digital juga terdapat transistor yang berfungsi sebagai saklar karena memiliki kecepatan tinggi dan dapat memproses data dengan sangat akurat.
2.7          IC (Integrated Circuit)
IC atau integrated circuit adalah salah satu komponen elektronika aktif yang merupakan gabungan dari ratusan bahkan ribuan komponen elektronika seperti transistor, resistor, dioda, dan juga kapasitor. Jadi dalam komponen ini tersimpan berbagai jenis komponen tersebut dalam bentuk yang lebih compact. Dalam IC, komponen-komponen seperti transistor, resistor, dioda, dan juga kapasitor tersebut diintegrasikan menjadi satu kesatuan rangkaian dalam kemasan yang lebih kecil. Mayoritas IC dibuat dengan menggunakan bahan semikonduktor berupa silicon. Dalam bahasa Indonesia, komponen IC juga kerap disebut dengan nama sirkuit terpadu. Perlu diketahui bahwa komponen IC sangat bermacam-macam dan memiliki fungsi yang berbeda-beda satu sama lain. Bentuk IC pun juga sangat bermacam-macam, mulai dari yang mirip transistor, single in line, dual line, sampai dengan persegi seperti prosesor komputer. Selain itu IC juga bisa diklasifikasikan menjadi beberapa bagian lagi. IC dapat dibedakan menjadi 2, yakni IC monolitik dan juga IC hybrid. IC monolitik adalah jenis IC yang berdiri sendiri mengatur satu blok rangkaian tanpa bergabung dengan IC lainnya. Sedangkan IC hybrid adalah jenis IC yang terdiri dari beberapa IC yang bergabung menjadi satu dalam sebuah blok PCB.
Gambar 2.24: Integrated Circuit

2.7.1   Aplikasi dan Fungsi IC (Integrated Circuit)
Seperti yang telah dikatakan tadi bahwa fungsi dari komponen IC sangatlah bermacam-macam tergantung komponen penyusunnya. Namun jika dilihat dari fungsinya, IC dapat diklasifikasikan menjadi 2 jenis, yakni IC linier dan IC digital. Berikut adalah beberapa fungsi dari IC linier dan IC digital. Berdasarkan Aplikasi dan Fungsinya, IC (Integrated Circuit) dapat dibedakan menjadi IC Linear, IC Digital dan juga gabungan dari keduanya. IC Linear
IC Linear atau disebut juga dengan IC Analog adalah IC yang pada umumnya berfungsi sebagai :
     Penguat Daya (Power Amplifier)
     Penguat Sinyal (Signal Amplifier)
     Penguat Operasional (Operational Amplifier / Op Amp)
     Penguat Sinyal Mikro (Microwave Amplifier)
     Penguat RF dan IF (RF and IF Amplifier)
     Voltage Comparator
     Multiplier
     Penerima Frekuensi Radio (Radio Receiver)
     Regulator Tegangan (Voltage Regulator)

IC Digital

IC Digital pada dasarnya adalah rangkaian switching yang tegangan Input dan Outputnya hanya memiliki 2 (dua) level yaitu “Tinggi” dan “Rendah” atau dalam kode binary dilambangkan dengan “1” dan “0”. IC Digital pada umumnya berfungsi sebagai :
     Flip-flop
     Gerbang Logika (Logic Gates)
     Timer
     Counter
     Multiplexer
     Calculator
     Memory
     Clock
     Microprocessor (Mikroprosesor)
     Microcontroller
Hal yang perlu dingat bahwa IC (Integrated circuit) merupakan Komponen Elektronika Aktif yang sensitif terhadap pengaruh Electrostatic Discharge (ESD). Jadi, diperlukan penanganan khusus untuk mencegah terjadinya kerusakan pada IC tersebut.
2.7.2 Kelebihan dan Keterbatasan IC (Integrated Circuit)
Integrated Circuit (IC) atau Sirkuit Terpadu merupakan Komponen penting dalam setiap Peralatan Elektronika. Hampir setiap peralatan Elektronika menggunakannya. Pada Zaman sekarang, peralatan Elektronika yang canggih seperti Handphone, Komputer, Audio/Video Player, Televisi, Kamera Digital, Konsol Game dan Tablet PC sudah tidak lepas dari penggunaan IC (Integrated Circuit) sebagai Komponen Utamanya. Meskipun memiliki banyak kelebihan dan memegang peranan yang sangat penting dalam perkembangan Teknologi dan industri Elektronika, Integrated Circuit atau IC juga memiliki berbagai keterbatasan ataupun kelemahan yang tentunya memerlukan Komponen Elektronika lainnya sebagai pendukung agar Rangkaian yang dirancang tersebut memenuhi kebutuhan dan fungsi yang diinginkan. Sebagai salah satu contohnya, Integrated Circuit (IC) merupakan komponen Elektronika yang hanya dapat beroperasi di tegangan yang rendah (misalnya 5V ataupun 12V). Oleh karena itu, jika sumber tegangannya lebih tinggi daripada yang ditentukan, maka diperlukan Adaptor ataupun rangkaian khusus untuk menurunkan tegangan dan arus listriknya. Pada umumnya, kita dapat menemukan Adaptor sebagai penurun tegangan pada Laptop ataupun Handphone, Power supply yang mengkonversikan tegangan 220V agar dapat menyediakan sumber tegangan 5V untuk Motherboard dan Processor Komputer. Disamping itu, kita juga dapat menemukan banyak komponen Elektronika pendukung lainnya disekitar Komponen IC (Integrated Circuit) yang salah satu fungsinya adalah untuk memberikan sumber tegangan dan arus yang cocok untuk mengoperasikan IC. Berikut ini adalah beberapa Kelebihan dan keterbatasan Integrated Circuit atau IC :
Keunggulan / kelebihan IC (Integrated Circuit) 1. Berukuran Kecil.
2.    Lebih Ringan.
3.    Harga lebih murah karena dapat diproduksi dalam jumlahyang banyak dan serentak dalam 1 (satu) wafer.
4.    Lebih handal karena tidak memerlukan hubungan solderdan interkoneksi yang sangat sedikit di dalam Internal komponen IC.
5.    Mengkonsumsi daya listrik yang lebih kecil, hal ini dikarenakan ukuran IC yang kecil sehingga pemakaian daya listrik pun lebih kecil.
6.    Lebih mudah diganti dan troubleshooting (perbaikan) jikaterjadi kerusakan pada rangkaian Elektronika.
7.    Cocok untuk operasi sinyal rendah.
8.    Dapat melakukan fungsi yang lebih kompleks dan rumit.

Kelemahan / Keterbatasan IC (Integrated Circuit)

1.    Tidak dapat menghasilkan daya yang tinggi.
2.    Hanya dapat beroperasi di tegangan rendah.
3.    Memerlukan penanganan yang lebih hati-hati, IC tidaktahan terhadap penanganan yang kasar serta sangat sensitif dengan Electrostatic Discharge (ESD).
4.    Tidak tahan terhadap Suhu yang tinggi. Oleh karena itu,memerlukan ventilasi ataupun kipas dan Heatsink untuk membantu menurunkan suhu di sekitar IC.
5.    Tidak tahan terhadap tegangan tinggi yang berlebihan(Toleransi Tegangan sangat kecil dan terbatas) karena dapat merusak komponen internal IC. Untuk mengetahui Karakteristik ataupun tegangan IC yang cocok, diperlukan Datasheet dari Produsen IC dalam merancang (design) Rangkaian Elektronika.
6.    Memerlukan koneksi luar ke komponen Induktor dan Transformator (Trafo) untuk melakukan fungsi-fungsi yang berkaitan dengan Induksi dan Elektromagnetik. Hal ini dikarenakan Teknologi IC saat ini belum memungkinkan untuk meng-integrasi-kan Induktor dan Transformator ke dalam Internal IC.
7.    Memerlukan koneksi luar ke komponen Kapasitor untuknilai kapasitansi yang lebih dari 30pF.
2.8    Pushbutton
Push button switch (saklar tombol tekan) adalah perangkat / saklar sederhana yang berfungsi untuk menghubungkan atau memutuskan aliran arus listrik dengan sistem kerja tekan unlock (tidak mengunci). Sistem kerja unlock disini berarti saklar akan bekerja sebagai device penghubung atau pemutus aliran arus listrik saat tombol ditekan, dan saat tombol tidak ditekan (dilepas), maka saklar akan kembali pada kondisi normal.
Gambar 2.25: Pushbutton

Sebagai device penghubung atau pemutus, push button switch hanya memiliki 2 kondisi, yaitu On dan Off (1 dan 0). Istilah On dan Off ini menjadi sangat penting karena semua perangkat listrik yang memerlukan sumber energi listrik pasti membutuhkan kondisi On dan Off. Karena sistem kerjanya yang unlock dan langsung berhubungan dengan operator, push button switch menjadi device paling utama yang biasa digunakan untuk memulai dan mengakhiri kerja mesin di industri. Secanggih apapun sebuah mesin bisa dipastikan sistem kerjanya tidak terlepas dari keberadaan sebuah saklar seperti push button switch atau perangkat lain yang sejenis yang bekerja mengatur pengkondisian On dan Off.
Gambar2.26: Prinsip Kerja Push Button Switch

Berdasarkan fungsi kerjanya yang menghubungkan dan memutuskan, push button switch mempunyai 2 tipe kontak yaitu NC (Normally Close) dan NO (Normally Open).
     NO (Normally Open), merupakan kontak terminal dimana kondisi normalnya terbuka (aliran arus listrik tidak mengalir). Dan ketika tombol saklar ditekan, kontak yang NO ini akan menjadi menutup (Close) dan mengalirkan atau menghubungkan arus listrik. Kontak NO digunakan sebagai penghubung atau menyalakan sistem circuit (Push Button ON).
     NC (Normally Close), merupakan kontak terminal dimana kondisi normalnya tertutup (mengalirkan arus litrik). Dan ketika tombol saklar push button ditekan, kontak NC ini akan menjadi membuka (Open), sehingga memutus aliran arus listrik. Kontak NC digunakan sebagai pemutus atau mematikan sistem circuit (Push Button Off).
2.9    Dioda
Dioda adalah komponen aktif semikonduktor yang terdiri dari persambungan (junction) P-N.Sifat dioda yaitu dapat menghantarkan arus pada tegangan maju dan menghambat arus pada tegangan balik. Dioda berasal dari pendekatan kata dua elektroda yaitu anoda dan katoda. Dioda semikonduktor hanya melewatkan arus searah saja (forward), sehingga banyak digunakan sebagai komponen penyearah arus. Secara sederhana sebuah dioda bisa kita asumsikan sebuah katup, dimana katup tersebut akan terbuka manakala air yang mengalir dari belakang katup menuju kedepan, sedangkan katup akan menutup oleh dorongan aliran air dari depan katup.
Gambar 2.27: Dioda

2.9.1          SIMBOL UMUM DIODA
Dioda disimbolkan dengan gambar anak panah yang pada ujungnya terdapat garis yang melintang. Simbol tersebut sebenarnya adalah sebagai perwakilan dari cara kerja dioda itu sendiri. Pada pangkal anak panah disebut juga sebagai anoda (kaki positif = P) dan pada ujung anak panah disebut sebagai katoda (kaki negative = N).
Gambar 2.28: Simbol Umum Dioda

2.9.2        FUNGSI DIODA
1.       Sebagai penyearah, untuk dioda bridge
2.       Sebagai penstabil tegangan (voltage regulator), untuk dioda zener
3.       Pengaman / sekering
4.       Sebagai rangkaian clipper, yaitu untuk memangkas / membuang level sinyal yang ada di atas atau di bawah level tegangan tertentu.
5.       Sebagai rangkaian clamper, yaitu untuk menambahkankomponen DC kepada suatu sinyal AC
6.       Sebagai pengganda tegangan.
7.       Sebagai indikator, untuk LED (light emiting diode)
8.       Sebagai sensor panas, contoh aplikasi pada rangkaian power amplifier
9.       Sebagai sensor cahaya, untuk dioda photo
10.    Sebagai rangkaian VCO (voltage controlled oscilator), untuk dioda varactor
2.9.3      Jenis Dioda
Berikut jenis-jenis dioda:

Gambar 2.29: Jenis-jenis Dioda

1. Dioda Standar

Dioda jenis ini ada dua macam yaitu silikon dan germanium. Dioda silikon mempunyai tegangan maju 0.6 V sedangkan dioda germanium 0.3 V. Dioda jenis ini mempunyai beberapa batasan tertentu tergantung spesifikasi. Batasan batasan itu seperti batasan tegangan reverse, frekuensi, arus, dan suhu. Tegangan maju dari dioda akan turun 0.025 V setiap kenaikan 1 derajat dari suhu normal. Sesuai karakteristiknya dioda ini bisa dipakai untuk fungsi-fungsi sebagai berikut :
1.   Penyearah sinyal AC
2.   Pemotong level
3.   Sensor suhu
4.   Penurun tegangan
5.   Pengaman polaritas terbalik pada DC input
Contoh dioda jenis ini adalah 1N400x (1A), 1N5392 (1.5A), dan 1N4148 (500mA)

Gambar 2.30: Dioda Standar


2. LED (light emiting diode)

Dioda jenis ini mempunyai lapisan fosfor yang bisa memancarkan cahaya saat diberi polaritas pada kedua kutubnya. LED mempunyai batasan arus maksimal yang mengalir melaluinya. Diatas nilai tersebut dipastikan umur led tidak lama. Jenis led ditentukan oleh cahaya yang dipancarkan. Seperti led merah, hijau, biru, kuning, oranye, infra merah dan laser diode. Selain sebagai indikator beberapa LED mempunyai fungsi khusus seperti LED inframerah yang dipakai untuk transmisi pada sistem remote control dan opto sensor juga laser diode yang dipakai untuk optical pick-up pada sistem CD. Dioda jenis ini dibias maju (forward).

Gambar 2.31: LED

3. Dioda Zener

Fungsi dari dioda zener adalah sebagai penstabil tegangan. Selain itu dioda zener juga dapat dipakai sebagai pembatas tegangan pada level tertentu untuk keamanan rangkaian. Karena kemampuan arusnya yang kecil maka pada penggunaan dioda zener sebagai penstabil tegangan untuk arus besar diperlukan sebuah buffer arus. Dioda zener dibias mundur (reverse).
Gambar 2.32: Dioda Zener

4. Dioda Photo

Dioda photo merupakan jenis komponen peka cahaya. Dioda ini akan menghantar jika ada cahaya yang mauk dengan intensitas tertentu. aplikasi dioda photo banyak pada sistem sensor cahaya (optical). Contoh : pada optocoupler dan optical pick-up pada sistem CD. Dioda photo dibias maju (forward).
Gambar 2.33: Dioda Photo

5. Dioda Varactor

Kelebihan dari dioda ini adalah mampu menghasilkan nilai kapasitansi tertentu sesuai dengan besar tegangan yang diberikan kepadanya. Dengan dioda ini maka sistem penalaan digital pada sistem transmisi frekuensi tinggi mengalami kemajuan pesat, seperti pada radio dan televisi. Contoh sistem penalaan dengan dioda ini adalah dengan sistem PLL (Phase lock loop), yaitu mengoreksi oscilator dengan membaca penyimpangan frekuensinya untuk kemudian diolah menjadi tegangan koreksi untuk oscilator. Dioda varactor dibias reverse.
Gambar 2.34: Dioda Varactor

2.9.4            KARAKTERISTIK DIODA

1. Bias Maju Dioda

Adalah cara pemberian tegangan luar ke terminal diode. Jika anoda dihubungkan dengan kutub positif batere, dan katoda dihubungkan dengan kutub negative batere, maka keadaan diode ini disebut bias maju (forward bias). Aliran arus dari anoda menuju katoda, dan aksinya sama dengan rangkaian tertutup. Pada kondisi bias ini akan terjadi aliran arus dengan ketentuan beda tegangan yang diberikan ke diode dan akan selalu positif.
Gambar 2.35: Dioda dengan Bias Maju

2. Bias Mundur Dioda

Sebaliknya bila anoda diberi tegangan negative dan katoda diberi tegangan positif, arus yang mengalir jauh lebih kecil dari pada kondisi bias maju. Bias ini dinamakan bias mundur (reverse bias) pada arus maju diperlakukan baterai tegangan yang diberikan dengan tidak terlalu besar maupun tidak ada peningkatan yang cukup significant.
Sebagai karakteristik dioda, pada saat reverse, nilai tahanan diode tersebut relative sangat besar dan diode ini tidak dapat menghantarkan arus listrik. Nilai-nilai yang didapat, baik arus maupun tegangan tidak boleh dilampaui karena akan mengkibatkan rusaknya dioda.
Gambar 2.36: Dioda dengan Bias Negatif

2.10       Game Design
2.10.1        Tampilan Utama Game
Berikut ini adalah tampilan dari bentuk game Pinball menggunakan Arduino yang digunakan.
Gambar 2.37: Tampilan Game

2.10.2       Karakter Bola
bola yang digunakan terbuat dari bahan metal seperti gambar berikut ini :
Gambar 2.38: Karakter Bola

2.10.3       Papan Permainan
Lapangan bermain terbuat dari ¼ inci birch yang dihadapi kayu lapis.
Gambar 2.39: Papan Permainan

2.10.4        Ball Shooter/Plunger
Rakitan penembak bola lengkap yang baru sesuai dengan kebanyakan permainan Williams dan Bally / Williams dan merupakan pengganti yang hebat untuk merek lain juga.
Lubang perlu dibor melalui bagian depan kasus agar plunger melewatinya. Hal ini kemudian disekrupkan ke bagian dalam kasus ini. Perhatian besar harus dilakukan untuk memastikan bahwa plunger sejajar dengan lapangan permainan. Tempatkan tepi lurus pada lapangan bermain dan tandai titik di mana ia menyentuh bagian dalam kotak. Lalu naik cukup sehingga bagian tengah plunger sama tingginya sampai setengah tinggi dari pinball. (Pinballs berukuran 1 dan 1/16 inci dan tersedia di Pinball .)
Gambar 2.40: Ball Shoter

2.10.5      Flippers
Flippers berfungsi untuk menahan dan memukul bola agar tidak game over

Gambar 2.41: Flippers

2.10.6      Pop Bumpers
Bumper pop dipasang dengan mengebor tiga lubang, dua untuk batang penopang logam dan satu lagi untuk poros yang memicu saklar. Saat bola menggelinding ke dalam cakram putih yang terlihat di atas, ia mendorong poros ke bawah. Ini memicu saklar daun, yang kemudian mengaktifkan solenoida. Solenoida kemudian menarik cincin logam ke bawah yang mengirimkan bola ke arah yang berlawanan.
Gambar 2.42: Pop Bumpers

2.11        Definisi Gameplay
Konsep game ini bermodalkan sebuah Arduino Mega 2560 pada dasarnya melakukan empat hal. Ini menentukan kapan saklar diaktifkan, ternyata lampu menyala atau mati sesuai, melacak skornya, dan ini akan menampilkan nilai dan nomor bola pada LCD kecil. Sebagian besar kabelnya cukup sederhana. Misalnya, target terhubung ke salah satu masukan digital Arduino dan ke tanah. Ketika kode mendeteksi bahwa input telah berubah dari yang tinggi ke rendah, ia mengetahui bahwa target telah dipukul dan kemudian menyalakan lampu pinball LED yang sesuai.
Satu-satunya komplikasi dalam hal ini adalah dari Bumper Pop. Switch dan target rollover yang digunakan dalam game ini semua mendapatkan kekuatan mereka dari Arduino. Pop Bumper mendapatkan mereka dari power supply 25 volt terpisah karena mereka membutuhkan lebih banyak jus daripada yang bisa disediakan Arduino. Bumper Pop memang memiliki saklar yang mengaktifkannya, tapi saya tidak bisa membacanya secara langsung karena voltase tinggi. Akibatnya, saya pertama mengirim output dari Pop Bumper beralih ke pembagi tegangan.
2.12        Interaksi Game
Interaksi yang terjadi dalam game pinball ini dimulai dengan menarik tuas untuk melontarkan bola, setelah itu menggerakkan flipper dengan menekan tombol pada tiap sisi papan permainan.