Sunday, 22 March 2015

Tahukah anda bahwa di dalam tubuh manusia terdapat ion bermuatan listrik yang dapat mempengaruhi kinerja sirkuit suatu rangkaian elektronik. Walaupun ion tersebuat berukuran mikron (sangat kecil), namun ion bermuatan listrik tersebut dapat digunakan sebagai metode membuat rangkaian sensor sentuh ( Touch Switch ) yang dapat digunakan untuk berbagai macam hal, salah satunya yaitu sebagai alarm anti maling.
Rangkaian alarm anti maling merupakan salah satu contoh penerapan penggunaan aplikasi sensor sentuh sederhana yang memanfaatkan tubuh manusia dalam mempengaruhi kinerjanya. Rangkaian alarm ini sangat cocok bila dihubungkan dengan pegangan pintu ataupun teralis jendela yg terbuat dari besi sehingga dapat menghantarkan ion ke rangkaian sensor sentuh sederhana ini. Selain itu rumah anda akan aman dari segala ancaman dari orang jahat yang ingin masuk ke rumah anda.

v   SKEMATIK
Berikut ini adalah skematik rangkaian sensor sentuh sederhana.

Rangkaian sensor sentuh ini memanfaatkan rangkaian monostable IC NE555 sebagai penghalang rangkaian load aktif. Kombinasi antara C2 dan VR1 sebagai penentu panjang/lamanya rangakaian akan akftif saat di sentuh sedangkan lampu led sebagai indikator bahwa rangkaian ini sudah bekerja.

v   PRINSIP KERJA
Input sensor sentuh dihubungkan pada kutub basis TR1 dan keluarannya akan masuk ke trigger IC NE555. Output IC NE555 dihubungkan pada kutub basis  TR2 yang akan menghidupkan relay sehingga mengaktifkan buzzer dan LED. Sementara output terus dikeluarkan kapasitor C2 akan mulai mengisi, saat kapasitor sudah penuh dan tidak mengisi lagi maka kaki discharge IC NE555 akan mengaktifkan threshold yang akan melepaskan pegangan output sehingga nilai outputnya menjadi 0 dan relay tidak akan aktif lagi sehingga buzzer dan LED juga akan ikut mati. Lamanya pengisian kapasitor ini menentukan panjangnya  rangkaian relay akan aktif yang dapat diatur dengan memutarkan potensiometer.

v   KOMPONEN
Berikut ini adalah komponen-komponen yang diperlukan dalam membuat alarm anti maling menggunakan rangkaian sensor sentuh sederhana.
1.             Resistor
Resistor adalah komponen elektronik dua kutub yang didesain untuk mengatur tegangan listrik dan arus listrik, dengan resistansi tertentu (tahanan) dapat memproduksi tegangan listrik di antara kedua kutubnya, nilai tegangan terhadap resistansi berbanding dengan arus yang mengalir.
Resistor yang digunakan adalah resistor 39K dan 560R.

2.             Transistor
Transistor adalah alat semikonduktor yang dipakai sebagai penguat, sebagai sirkuit pemutus dan penyambung (switching), stabilisasi tegangan, modulasi sinyal atau sebagai fungsi lainnya. Pada umumnya, transistor memiliki 3 terminal, yaitu Basis (B), Emitor (E) dan Kolektor (C). 
Transistor yang digunakan adalah transistor NPN bc547.

3.             IC NE555
IC pewaktu 555 adalah sebuah sirkuit terpadu yang digunakan untuk berbagai pewaktu dan multivibrator. IC ini didesain dan diciptakan oleh Hans R. Camenzind pada tahun 1970 dan diperkenalkan pada tahun 1971 oleh Signetics. IC ini sekarang masih digunakan secara luas dikarenakan kemudahannya, kemurahannya dan stabilitasnya yang baik. IC ini biasanya menggunakan lebih dari 20 transistor, 2 diode dan 15 resistor dalam sekeping semikonduktor silikon yang dipasang pada kemasan DIP 8 pin.
Berikut adalah spesifikasi dan datasheet dari komponen IC NE555.
Tegangan catu (VCC)
4.5 hingga 15 V
Arus catu (VCC = +5 V)
3 hingga 6 mA
Arus catu (VCC = +15 V)
10 hingga 15 mA
Arus keluaran maksimum
200 mA
Borosan daya maksimum
600 mW
Suhu kerja
0 to 70 °C

4.             Kapasitor elektrolit
Kondensator elektrolit atau Electrolytic Condenser  (sering disingkat Elco) adalah kondensator yang biasanya berbentuk tabung, mempunyai dua kutub kaki berpolaritas positif dan negatif, ditandai oleh kaki yang panjang positif sedangkan yang pendek negatif atau yang dekat tanda minus ( - ) adalah kaki negatif. Nilai kapasitasnya dari 0,47 µF (mikroFarad) sampai ribuan mikroFarad dengan voltase kerja dari beberapa volt hingga ribuan volt.
Kapasitor yang digunakan adalah kapasitor 1UF dan 220UF.

5.             Potensiometer
Potensiometer adalah resistor tiga terminal dengan sambungan geser yang membentuk pembagi tegangan dapat disetel. Jika hanya dua terminal yang digunakan (salah satu terminal tetap dan terminal geser), potensiometer berperan sebagai resistor variabel atau Rheostat.
Potensiometer yang digunakan adalah 50K.

6.             Dioda
Diode adalah komponen aktif dua kutub yang pada umumnya bersifat semikonduktor, yang memperbolehkan arus listrik mengalir ke satu arah (kondisi panjar maju) dan menghambat arus dari arah sebaliknya (kondisi panjar mundur).
Jenis diode yang digunakan adalah 1N4007.

7.             Relay
Relay adalah suatu peranti yang menggunakan elektromagnet untuk mengoperasikan seperangkat kontak sakelar.
Relay yang digunakan adalah Relay 6V.

8.             Output : LED dan Buzzer
Diode pancaran cahaya (light-emitting diode/ LED) adalah suatu semikonduktor yang memancarkan cahaya monokromatik yang tidak koheren ketika diberi tegangan maju. LED digunakan sebagai indikator lampu bahwa rangkaian tersebut sudah bekerja.
Sebuah buzzer atau pager adalah perangkat sinyal audio, yang bekerja secara mekanik , elektromekanik , atau piezoelektrik.
  
Berikut ini adalah hasil rangkaian alarm anti maling menggunakan rangkaian sensor sentuh yang telah saya buat bersama teman-teman.


Demikianlah info yang dapat saya bagi untuk kalian semua. Selamat mencoba dan good luck!

Posted on 11:29:00 am by Unknown

12 comments

Saturday, 21 March 2015

A.           Fungsi
·      Pengertian Fungsi ( function )
Function/fungsi adalah satu blok kode yang melakukan tugas tertentu atau satu blok instruksi yang di eksekusi ketika dipanggil dari bagian lain dalam suatu program.
·      Tujuan pembuatan fungsi adalah :
-       Memudahkan dalam pembuatan program.
-       Menghemat ukuran program. 
·      Keuntungan memakai fungsi :
-       Menguraikan tugas pemrograman rumit menjadi langkah-langkah yang lebih sederhana atau kecil.
-       Mengurangi duplikasi kode (kode yang sama ditulis berulang-ulang) dalam program.
-       Dapat menggunakan kode yang ditulis dalam berbagai program yang berbeda.
-       Memecah program besar menjadi kecil sehingga dapat dikerjakan oleh programmer-programmer atau dipecah menjadi beberapa tahap sehingga mempermudah pengerjaan dalam sebuah projek
-       Menyembunyikan informasi dari user sehingga mencegah adanya perbuatan iseng seperti memodifikasi atau mengubah program yang kita buat
-       Meningkatkan kemampuan pelacakan kesalahan, jika terjadi suatu kesalahan kita tinggal mencari fungsi yang bersangkutan saja dan tak perlu mencari kesalahan tersebut di seluruh program.
·      Bentuk umum Sebuah fungsi adalah sebagai berikut :
Tipedata namafungsi(daftarparameter)
{

/*Badan Fungsi*/
return nilaireturn; /* untuk tipe data bukan void */
}
·      Jenis-jenis fungsi pada C++
Ada dua jenis fungsi yaitu :
1.    Void ( Fungi tanpa nilai balik )
Fungsi yang void sering disebut juga prosedur. Disebut void karena fungsi tersebut tidak mengembalikan suatu nilai keluaran yang didapat dari hasil proses fungsi tersebut. 
Ciri-ciri dari jenis fungsi Void adalah sebagai berikut: 
-        Tidak adanya keyword return.
-        Tidak adanya tipe data di dalam deklarasi fungsi.
-        Menggunakan keyword void.
-        Tidak dapat langsung ditampilkan hasilnya.
-        Tidak memiliki nilai kembalian fungsi
-       Keyword void juga digunakan jika suatu function tidak mengandung suatu parameter apapun.
Contoh fungsi void :
#include <iostream>
using namespace std;
void kerucut()
{
     float r,t,v;
     cout<<"--Mencari Volume Kerucut--"<<endl;
     cout<<"Masukkan nilai jari-jari(r) kerucut : ";
     cin>>r;
     cout<<"Masukkan nilai tinggi(t) kerucut    : ";
     cin>>t;
     cout<<"Volume kerucut dengan r="<<r<<" dan t="<<t<<" adalah : ";
     v=(1*3.14*r*r*t)/3;
     cout<<v<<endl;
}
void balok()
{
     int p,l,t,v;
     cout<<"--Mencari Volume Balok--"<<endl;
     cout<<"Masukkan nilai panjang (p) balok : ";
     cin>>p;
     cout<<"Masukkan nilai lebar (l) balok   : ";
     cin>>l;
     cout<<"Masukkan nilai tinggi (t) balok  : ";
     cin>>t;
     cout<<"Volume balok dengan p="<<p<<", l="<<l<<", dan t="<<t<<" adalah : ";
     v=p*l*t;
     cout<<v<<endl;
}
void main ()
{
     kerucut();
     balok();
}

2.    NonVoid (Fungsi dengan nilai balik)
Fungsi non-void disebut juga function. Disebut non-void karena mengembalikan nilai kembalian yang berasal dari keluaran hasil proses function tersebut .
Ciri-ciri dari jenis fungsi non void adalah sebagai berikut:
-        Ada keyword return
-        Ada tipe data yang mengawali fungsi
-        Tidak ada keyword void
-        Memiliki nilai kembalian .  
-        Dapat dianalogikan sebagai suatu variabel yang memiliki tipe data tertentu 
-        Sehingga dapat langsung ditampilkan hasilnya  
Contoh fungsi non void :
#include <iostream>
using namespace std;
float kerucut()
{
     float r,t,v;
     cout<<"--Mencari Volume Kerucut--"<<endl;
     cout<<"Masukkan nilai jari-jari (r) kerucut : ";
     cin>>r;
     cout<<"Masukkan nilai tinggi (t) kerucut    : ";
     cin>>t;
     cout<<"Volume kerucut dengan r="<<r<<" dan t="<<t<<" adalah : ";
     v=(1*3.14*r*r*t)/3;
     return v;
}
int balok()
{
     int p,l,t,v;
     cout<<"--Mencari Volume Balok--"<<endl;
     cout<<"Masukkan nilai panjang (p) balok : ";
     cin>>p;
     cout<<"Masukkan nilai lebar (l) balok   : ";
     cin>>l;
     cout<<"Masukkan nilai tinggi (t) balok  : ";
     cin>>t;
     cout<<"Volume balok dengan p="<<p<<", l="<<l<<", dan t="<<t<<" adalah : ";
     v=p*l*t;
     return v;
}
void main ()
{
     cout<< kerucut()<<endl;
     cout<< balok()<<endl;
}
·      Parameter
Terdapat dua macam para parameter fungsi, yaitu :
-       Parameter formal adalah variabel yang ada pada daftar parameter dalam definisi fungsi.
-       Parameter Aktual adalah variabel yang dipakai dalam pemanggilan fungsi.
Bentuk penulisan Parameter Formal dan Parameter Aktual.
·      Passing by Value
-       Call by value akan menyalin nilai dari parameter aktual ke parameter formal.  
-       Yang dikirimkan ke fungsi adalah nilai dari datanya, bukan alamat memori letak dari datanya.
-       Fungsi yang menerima kiriman nilai akan menyimpannya di alamat terpisah dari  nilai aslinya yang digunakan oleh bagian program yang memanggil fungsi. 
-       Perubahan nilai di fungsi (parameter formal) tidak akan merubah nilai asli di bagian program yang memanggilnya.
-       Pengiriman parameter secara nilai adalah pengiriman searah, yaitu dari bagian program yang memanggil fungsi ke fungsi yang dipanggil.  
-       Pengiriman suatu nilai dapat dilakukan untuk suatu ungkapan, tidak hanya untuk sebuah variabel, elemen array atau konstanta saja.
·      Passing by Reference
-       Call by Referense merupakan upaya untuk melewatkan alamat dari suatu variabel ke dalam fungsi.   
-        Yang dikirimkan ke fungsi adalah alamat letak dari nilai datanya, bukan  nilai datanya.
-       Fungsi yang menerima kiriman alamat ini akan menggunakan alamat yang  sama untuk mendapatkan nilai datanya. 
-       Perubahan nilai di fungsi akan merubah nilai asli di bagian program yang memanggil fungsi.  
-       Pengiriman parameter secara referensi adalah pengiriman dua arah, yaitu   dari fungsi pemanggil ke fungsi yang dipanggil dan juga sebaliknya.
-       Pengiriman secara acuan tidak dapat bdilakukan untuk suatu ungkapan.
Contoh fungsi yang menggunakan parameter :
#include <iostream>
using namespace std;
#define PI 3.14;
float kerucut(float r,float t)
{
          float v=(1*3.14*r*r*t)/3;
          return v;
}
int balok(int p,int l,int t)
{
          int v=p*l*t;
          return v;
}
void main ()
{
          int a,b,c,d,e;
          cout<<"--Menghitung Volume Kerucut--"<<endl;
          cout<<"Masukkan nilai jari-jari(r) : ";
          cin>>a;
          cout<<"Masukkan nilai tinggi(t)    : ";
          cin>>b;
          cout<<"Volume kerucut adalah       : ";
          cout<<kerucut(a,b)<<endl;
          cout<<"--Menghitung Volume Balok--"<<endl;
          cout<<"Masukkan nilai panjang(p)   : ";
          cin>>c;
          cout<<"Masukkan nilai lebar(l)     : ";
          cin>>d;
          cout<<"Masukkan nilai tinggi(t)    : ";
          cin>>e;
          cout<<"Volume balok adalah         : ";
          cout<<balok(c,d,e)<<endl;
}
B.            Array
·      Pengertian
Array adalah kumpulan dari nilai-nilai data bertipe sama dalam urutan tertentu yang menggunakan sebuah nama yang sama. Nilai-nilai data di suatu larik disebut dengan elemen-elemen larik.Letak urutan dari suatu elemen larik ditunjukkan oleh suatu subscript atau suatu index.
·      Menurut dimensinya, array dapat dibedakan menjadi :
1.    Array satu dimensi
Setiap elemen array dapat diakses melalui index
Index array secara default dimulai dari 0.
Deklarasi array :
Tipe_array nama_array[ukuran]
Contoh :
#include <iostream>
using namespace std;
void main()
{
     cout<<"---Harga Layanan Salon---"<<endl;
     cout<<"Perawatan 1         : 100000"<<endl;
     cout<<"Perawatan 2         : 50000"<<endl;
     cout<<"Perawatan 3         : 75000"<<endl;
     cout<<"Tidak ingin memilih : 0"<<endl;
    
     int salon[3];
     int total=0;
     int diskon,selisih;
     for (int i=0;i<3;i++)
     {
                 cout<<"Masukkan harga jenis perawatan yang Anda inginkan : ";
                 cin>>salon[i];
                 cout<<salon[i]<<endl;
                 total=total+salon[i];
                 diskon=0.1*total;
                 selisih=total-diskon;
     }
     cout<<"Total harga perawatan Anda adalah : ";
     cout<<total<<endl;
    
     cout<<"Diskon Anda sebesar               : ";
     cout<<diskon<<endl;

     cout<<"Anda harus membayar sebesar       : ";
     cout<<selisih<<endl;

     int uang;
     cout<<"Masukan uang Anda                 : ";
     cin>>uang;
     int kembali=uang-selisih;
     cout<<"Uang kembalian Anda sebesar       : ";
     cout<<kembali<<endl;
}

2.    Array dua dimensi
Array dua dimensi merupakan array yang terdiri dari m buah baris dan n buah buah kolom bentuknya dapat berupa matriks atau tabel.
Deklarasi array :
Tipe_array nama_array [baris][kolom]
Contoh :
#include <iostream>
using namespace std;
void main()
{
     int i,j;
     int a[3][3]={{4,5,6},{2,3,4},{1,2,3}};
     cout<<"Matriks A : "<<endl;
     for (i=0;i<3;i++)
     {
                 for(j=0;j<3;j++)
                 {
                             cout<<a[i][j]<<"   ";
                 }
                 cout<<endl;
     }
     cout<<endl;
    
     int b[3][3]={{6,4,3},{5,1,3},{7,1,3}};
     cout<<"Matriks B : "<<endl;
     for (i=0;i<3;i++)
     {
                 for(j=0;j<3;j++)
                 {
                             cout<<b[i][j]<<"   ";
                 }
                 cout<<endl;
     }
     cout<<endl;
    
     int c;
     cout<<"Matriks C = A+B : "<<endl;
     for (i=0;i<3;i++)
     {
                 for(j=0;j<3;j++)
                 {
                             c=a[i][j]+b[i][j];
                             cout<<c<<"   ";
                 }
                 cout<<endl;
     }
     cout<<endl;

}

3.    Array Multidimensi
Array multidimensi merupakan array yang mempunyai ukuran lebih dari dua. Bentuk pendeklarasian array multidimensi sama saja dengan deklarasi array dimensi satu maupun dimensi dua.
Deklarasi array :
Tipe_array nama_array [ukuran 1][ukuran 2] . . . [ukuran N]

·      Perbedaan array dengan tipe data lain :
-       Array dapat mempunyai sejumlah nilai, sedangkan tipe data lain hanya dihubungkan dengan sebuah nilai saja.
-       Array dapat digunakan untuk menyimpan beberapa nilai tipe data lain data (char, int, float, double, long, dll) yang sama dengan satu nama saja.
-       Selain itu, array dapat berupa satu dimensi atau lebih, sedangkan tipe data lain hanya berupa satu dimensi.
·      Array juga dapat digunakan sebagai parameter. Jenisnya :
a. Array dimensi satu sebagai parameter :
Pengiriman parameter berupa array dimensi satu merupakan pengiriman secara acuan/referensi, karena yang dikirimkan adalah alamat dari elemen pertama arraynya, bukan seluruh nilai-nilai elemenya. Alamat elemen pertama dari array dapat ditunjukkan oleh nama lariknya yang tidak ditulis dengan indeknya.
b. Array dua dimensi sebagai parameter :
Pengiriman parameter berupa array dua dimensi hampir sama dengan pengiriman parameter array satu dimensi, hanya saja perbedaannya adalah dalam array dua dimensi harus menyebutkan baris dan kolom array dimensi dua tersebut, mendeklarasikan MAX_ROWS dan MAX_COLS yang digunakan untuk pengiriman parameter array dua dimensi dan pada saat pengiriman parameter formal array dua dimensi, kita harus menyebutkan banyaknya dimensi array untuk kolom, sehingga ukuran kolom dapat diketahui, hal ini berkaitan dengan pemesanan variabel array di memori.


Posted on 11:23:00 pm by Unknown

No comments