Anda di halaman 1dari 19

PROGRAM

PENGHITUNG NILAI TEGANGAN KELUARAN DARI PENGUAT


TEGANGAN KELAS A
Sebagai salah satu tugas mata kuliah Algoritma Pemrograman

Disusun oleh:
1. Subiakto Aji Prabowo (20140120183)
2. Rina Lailatun Nahari (201401201xx)

PROGRAM STUDI S-1 TEKNIK ELEKTRO


FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH YOGYAKARTA
Tahun Ajaran 2015/2016

BAB I
PENDAHULUAN
A. Latar Belakang
Voice atau suara manusia output frekuensinya berkisar antara 300
sampai 3.4 KHz. Agar dapat didengar di manusia maka voice tersebut harus
dimasukkan ke dalam mikrofon, di dalam mikrofon tersebut terdapat sebuah
alat yang dinamakan tranduser yang mampu merubah getaran suara menjadi
sinyal listrik. Namun, dalam mikrofon hanya mampu membangkitkan sinyal
AC sebesar 100 mV. Sinyal tersebut sangat rendah sehingga tidak dapat di
modulasi. Agar dapat di modulasi maka di perlukan penguatan yang mampu
membangkitkan sinyal tersebut.
Penguat kelas A cocok untuk menguatkan frekuensi kecil, karena tidak
membutuhkan daya yang besar, karena itu penguat kelas A sering dipasang
pada bagian awal untuk menguatkan frekuensi kecil yang kemudian
dikuatkan lagi oleh penguat yang lain baik kelas B maupun kelas C. Power
Amplifier yang digunakan berupa penguat kelas A karena bersifat linier, yang
mana output dan inputnya sama berupa 1 gelombang penuh, serta sudut
konduksinya 360 derajat karena dibias secara terus menerus.
B. Rumusan Masalah
1. Bagaimana membuat program aplikasi dari bahasa C++ yang digunakan
untuk menghitung pengutan tegangan?
2. Library dan fungsi apa saja yang digunakan dalam pembuatan program?
C. Tujuan
1. Mempermudah mahasiswa untuk menyelesaikan soal tentang penguat
tegangan satu transistor
2. Meningkatkan kemampuan pemrograman

BAB II
TEORI DASAR
A. Definisi Penguat Daya Kelas A
Penguat kelas A didefinisikan
mempunyaikemampuan

terbesar

sebagaisuatu

dalammereproduksi

penguat
masukan

yang
dengan

distorsi yang terkecil, denganatautanpa rangkaian umpan balik negatif.


Namun

demikian,efisiensi

penguat

kelas

adalahpaling

kecil

dibandingkandengan penguat daya kelas lainnya. Rangkaian penguat


kelasAdengan umpan balik emitor ditunjukan dengan gambarberikut:

Gambar 2.1.1 Penguat kelas A


o
o
o
o
o

Persamaanyang digunakan adalah sebagai berikut :


ICsat=VCC/RC+RE
IB=VB/RB
VCEcutoff=VCC
VB=VCC.R2/R1+R2
RB=R1.R2/R1+R2

B. Klasifikasi Penguat Daya Kelas A


Berdasarkan titik kerjanya penguat daya kelas A diklasifikasikan sebagai
berikut :
1. Penguat dengan letak titik Q di tengah-tengah garis beban
2. Mempunyai sinyal keluaran yang paling bagus diantara penguat jenis
yang lain.
3. Efisiensinya paling rendah, karena banyaknya daya yang terbuang di
transistor.
Berdasarkan tipe pembiasannya yang dilakukan oleh penguat, penguat
daya kelas A diklasifikasikan sebagai berikut:
Penguat Daya kelas A : Titik kerja diatur agar seluruh fasa sinyal input
diatursedemikian rupa sehingga seluruh fasa arus output selalumengalir.
Penguat ini beroperasi pada daerah linear.

a. Sifat Sifat Penguat Daya Kelas A


1. Dirangakai Secara common emiter.
Contoh dari penguat kelas A adalah adalah rangkaian dasar common
emiter (CE) transistor. Penguat tipe kelas A dibuat dengan mengatur arus
bias yang sesuai di titik tertentu yang ada pada garis bebannya.
Sedemikian rupa sehingga titik Q ini berada tepat di tengah garis beban
kurva VCE-IC dari rangkaian penguat tersebut dan sebut saja titik ini titik A.
Apabila sebuah transistor mempunyai titik kerja Q di dekat tengahtengah garis beban DC, suatu sinyal AC yang kecil mengakibatkan
transistor bekerja didaerah yang aktif dalam seluruh siklusnya. Apabila
sinyal membesar, transistor terus bekerja didaerah aktif selama waktu
mencapai puncak-puncaknya sepanjang garis beban titik jenuh dan titik
pancung (cut off) tidak terpotong. Untuk membedakan cara operasi ini dari
jenis-jenis lainnya, operasi tersebut disebut dari kelas A. Pada gambar
2.1.1, titik Q diambil ditengah atau dipusat garis beban AC, dari sini kita
mendapatkan sinus output yang tak tergunting dengan kemungkinan yang
terbesar.

Gambar 2.2.1 Garis beban CE kelas A


Dalam merancang penguat daya kelas A, titik kerja Q harus berada
ditengah-tengah garis beban, maka dapat diperoleh dengan langkahlangakh berikut. Untuk garis beban DC
I C ( sat )=

V CC
( R c+ R E )

V CE(cutoff )=V CC
I CQ =

( V BV BE )
RE

V CEQ =V CCI C .(RC + R E )


Untuk menggambar garis beban AC dapat dilakukan dengan cara
berikut:

Gambar 2.2.2 Garis beban AC


Dengan :
R L=R E / R L
V CE =. I C .(R C + R E )
I CC (cutoff )=V CEQ + I CQ .r L

Ciri khas dari penguat kelas A, seluruh sinyal keluarannya bekerja


pada daerah aktif. Penguat tipe class A disebut sebagai penguat yang
memiliki tingkat fidelitas yang tinggi. Asalkan sinyal masih bekerja di
daerah aktif, bentuk sinyal keluarannya akan sama persis dengan sinyal
input. Namun penguat kelas A ini memiliki efisiensi yang rendah kira-kira
hanya 25% - 50%. Ini tidak lain karena titik Q yang ada pada titik A,
sehingga walaupun tidak ada sinyal input (atau ketika sinyal input = 0 Vac)

transistor tetap bekerja pada daerah aktif dengan arus bias konstan.
Transistor selalu aktif (ON) sehingga sebagian besar dari sumber catu daya
terbuang menjadi panas. Karena ini juga transistor penguat kelas A perlu
ditambah dengan pendingin ekstra seperti heatsink yang lebih besar.
1) Digunakan Untuk Daya Yang Sedang < 10 Watt.
2) Input dan output berbeda 180
Selain ketiga sifat penguat pada kelas A tersebut, ada beberapa sifat-sifat
penguat kelas A yang dijelas oleh Albert Paul Malvino, Ph. D. dalam bukunya
yang berjudul Prinsip-Prinsip Elektronika Jilid Iantara lain sebagai berikut :
1) Bati Tegangan dengan Beban
Di dalam penguat CE pada gambar 2.2.3, tegangan ac Vin
menggerakkan basis, menghasilkan tegangan keluar ac Vout. Bati
tegangan tanpa beban adalah
Rc
A=
re

Gambar 2.2.3Penguat CE
Karena resistansi yag dilihat oleh kolektor adalah
rC = RC // RL
Sehingga dapat dihitung bati tegangan terhadap beban dengan
menggunakan persamaan sebagai berikut:

AV

rc
r 'c

Dimana :
rc = Resistansi emiter ac
rc = Resistansi kolektor ac
RC

= Resistansi kolektor dc

A = Bati Tegangan tanpa beban


RL = Resistansi beban
AV = Bati tegangan dengan beban

Contoh soal:
Diketahui penguat sebagai berikut. Hitung tegangan keluarannya.

30
1

Jawab:
Vbb=

R2
xVc c
RI + R 2

2 200
x 10=1,8V
10000+2200

Ve=VbbVbe
1,8 v0,7 v=1,1 v

Ie=

Ve 1,1
=
=1,1m A
1000

Ie Ic
'

r e=

25 mV
=22, 7
1,1 mA

rc=3,6 k10 k =2,56 ohm


A=

rc 2,56 k
=
=117 kali
r ' e 22,7 k
'

Zin base=x r e=300 x 22,7=6,8 kohm


Zin stage=10 k||2,2 k||6,8 k =1,42 kohm

Vin=

Zin stage
1,42 k
xVs=
x 2mv=1,41 mV
Rg+Zin stage
600+1,42 k

Vout=AxVin=117 x 1,41 mV =165 mV

BAB III
ISI
A. Listing Program

B. Flowchart

C. Penjelasan Program
#include <Windows.h> //Header yang berisi library
#include <math.h> // Library berfungsi untuk mendefinisikan fungsi
yang digunakan
#include <iostream>
#define delay Sleep
using namespace std;
int main () // fungsi yang pertama kali dieksekusi
{
char Y; // deklarasi variabel
int bias();// deklarasi fungsi
int impedance();// deklarasi fungsi
char x; // deklarasi variabel
utama: //alamat dari fungsi goto
system ("cls"); //fungsi untuk membersihkan layar console
cout <<
"==========================================
======================================\n";
cout << "***********PENGHITUNG NILAI TEGANGAN
KELUARAN DARI PENGUAT TEGANGAN*************\n";
cout <<
"==========================================
======================================\n";
cout << "Programmer: Subiakto Aji Prabowo\n";
cout << "
Rina Lailatun Nahari\n\n\n";
cout << " Pilih:\n"; // fungsi cout untuk menampilkan
karakter/ variabel
cout << " 1. Rangkaian bias basis\n";
cout << " 2. Rangkaian pengaruh impedansi masukan\n";
cout << "Masukkan kode= ";
cin >> x; // untuk memasukkan ke variabel
if (x=='1')
bias();
else if (x=='2')
impedance();
else
{
cout <<" Kode yang anda masukkan salah";
delay (500);
goto utama;
} //fungsi percabangan
ulang:
system ("cls");
cout << " Apakah ingin kembali pada menu utama
(Y/N)?";
cin >> Y;
if (Y=='Y'||Y=='y') goto utama; //fungsi percabangan
else if (Y=='N'||Y=='n') exit;
else

{
cout << " Kode yang anda masukkan salah";
goto ulang;
}
}
int bias()
{
float R1, R2, Vin, Vcc, Vbb, Ve, Vbe=0.7, Rc, RL, Re, Ie, rc, ree, A,
Vout;
char Y; //deklarasi variabel
while(1) // fungsi perulangan
{
system ("cls");
cout <<
"==========================================
======================================\n";
cout << "***********PENGHITUNG NILAI TEGANGAN
KELUARAN DARI PENGUAT TEGANGAN*************\n";
cout <<
"==========================================
======================================\n";
cout << "Programmer: Subiakto Aji Prabowo\n";
cout << "
Rina Lailatun Nahari\n\n\n";
cout << "
-----------------------> Vcc\n";
cout << "
|
|\n";
cout << "
|
|\n";
cout << "
<
<\n";
cout << "
>
>\n";
cout << "
R1 <
Rc <\n";
cout << "
>
>\n";
cout << "
<
<\n";
cout << "
|
|-------------| |----------\n";
cout << "
C
|
|/
C
|\n";
cout << " --------------| |------|--------|
|\n";
cout << " |
|
|'-.
|\n";
cout << " |
|
|--------|\n";
cout << " |
<
<
|
<\n";
cout << " -->
>
__
>\n";
cout << " | ~ | Vin
R2 <
Re <
C __
RL <\n";
cout << " -->
>
|
>\n";
cout << " |
<
<
|
|\n";
cout << " |
|
|
|
|\n";
cout << " |
|
|
|
|\n";
cout << " |
|
|
|
|\n";
cout << " _____
_____
_____ _____
_____\n";
cout << " ___
___
___
___
___\n";
cout << " _
_
_
_
_\n";

cout << " Masukkan R1 (ohm)=";


cin >> R1;
cout << " Masukkan R2 (ohm)=";
cin >> R2;
cout << " Masukkan Vcc(Volt)=";
cin >> Vcc;
Vbb = R2/(R1+R2)*Vcc;
cout << "\n\n Vbb= " << Vbb << " volt\n";
Ve=Vbb-Vbe;
cout << " Ve= " << Ve << " volt\n";
cout << "\n\n Masukkan Rc(ohm)=";
cin >> Rc;
cout << " Masukkan Re(ohm)=";
cin >> Re;
Ie=Ve/Re*1000;
cout << "\n\n Ie="<<Ie<<" mili Ampere\n";
cout << "\n Masukkan RL(ohm)=";
cin >> RL;
rc=(Rc*RL)/(Rc+RL);
cout << "\n rc= "<< rc <<" ohm\n";
ree=25/Ie;
cout << " r'e ="<< ree <<" ohm\n";
cout << "\n Masukkan Vin (mV)=";
cin >> Vin;
A=rc/ree;
cout << " A = " << A <<" kali\n";
Vout=A*Vin;
cout <<" Vout= " << Vout<< " mV\n\n";
ulang:
cout << "Apakah ingin mengulang perhitungan (Y/N)?";
cin >> Y;
if (Y=='Y'|| Y=='y') continue; //untuk melanjutkan
perulangan
else if (Y=='N'||Y=='n') break; // keluar dari perulangan
else
{
cout << "Kode yang anda masukkan salah\n";
goto ulang;//digunakan untuk melompat ke baris
program lain
}
}
}
int impedance()
{
float R1, R2, Vin, Vcc, Vbb, Ve, Vbe=0.7, Rc, RL, Re, Ie, rc, ree, A,
Vout, X, B, Zbase, Zstage, Vs,Rg;
char Y;
while(1)

{
system ("cls");
cout <<
"==========================================
======================================\n";
cout << "***********PENGHITUNG NILAI TEGANGAN
KELUARAN DARI PENGUAT TEGANGAN*************\n";
cout <<
"==========================================
======================================\n";
cout << "Programmer: Subiakto Aji Prabowo\n";
cout << "
Rina Lailatun Nahari\n\n\n";
cout << "
-----------------------> Vcc\n";
cout << "
|
|\n";
cout << "
|
|\n";
cout << "
<
<\n";
cout << "
>
>\n";
cout << "
R1 <
Rc <\n";
cout << "
>
>\n";
cout << "
<
<\n";
cout << "
|
|-------------| |----------\n";
cout << "
C
|
|/
C
|\n";
cout << " ----^v^v------| |------|--------|
|\n";
cout << " |
Rg
|
|'-.
|\n";
cout << " |
|
|--------|\n";
cout << " |
<
<
|
<\n";
cout << " -->
>
__
>\n";
cout << " | ~ | Vs
R2 <
Re <
C __
RL
<\n";
cout << " -->
>
|
>\n";
cout << " |
<
<
|
|\n";
cout << " |
|
|
|
|\n";
cout << " |
|
|
|
|\n";
cout << " |
|
|
|
|\n";
cout << " _____
_____
_____ _____
_____\n";
cout << " ___
___
___
___
___\n";
cout << " _
_
_
_
_\n";
cout << " Masukkan R1 (ohm)=";
cin >> R1;
cout << " Masukkan R2 (ohm)=";
cin >> R2;
cout << " Masukkan Vcc(Volt)=";
cin >> Vcc;
Vbb = R2/(R1+R2)*Vcc;
cout << "\n\n Vbb= "<< Vbb <<" volt\n";
Ve=Vbb-Vbe;
cout << " Ve= "<< Ve << "Volt";
cout << "\n\n Masukkan Rc(ohm)=";

cin >> Rc;


cout << " Masukkan Re(ohm)=";
cin >> Re;
Ie=Ve/Re*1000;
cout << "\n\n Ie= " << Ie << "mili Ampere";
cout << "\n Masukkan RL(ohm)=";
cin >> RL;
rc=(Rc*RL)/(Rc+RL);
cout << "\n rc= "<< rc <<" ohm\n";
ree=25/Ie;
cout << " r'e = "<< ree<< " ohm\n";
cout << " Masukkan nilai beta=";
cin >> B;
Zbase= B*ree;
cout << "Nilai Zin base= "<< Zbase << " ohm";
Zstage=pow(((1/R1)+(1/R2)+(1/Zbase)),-1);
cout << " Nilai Zin stage = " << Zstage <<"ohm";
cout << "\n Masukkan Vs (mV)=";
cin >> Vs;
Vin= Zstage*Vs/(Rg+Zstage);
cout << " Nilai Vin= "<< Vin <<" mV";
A=rc/ree;
cout << " A = "<< A << " kali\n";
Vout=A*Vin;
cout <<" Vout= " << Vout<< "V\n\n";
ulang:
cout << "Apakah ingin mengulang perhitungan (Y/N)?";
cin >> Y;
if (Y=='Y'|| Y=='y') continue;
else if (Y=='N'||Y=='n') break;
else
{
cout << "Kode yang anda masukkan salah\n";
goto ulang;
}
}
}

BAB IV
PENUTUP
A. Kesimpulan
Rangkaian penguat tegangan kelas A biasa digunakan sebagai amplifier
karena dapat menaikkan amplitudo yang kecil. Pada mahasiswa teknik elektro
sering dipelajari penguat tegangan jenis ini karena dianggap paling mudah
untuk dipraktikkan dan digunakan dalam kehidupan sehari-hari.
Program Penghitung Tegangan Keluaran Penguat Tegangan ini bertujuan
untuk memudahkan para pengguna dalam mengetahui seberapa besar
penguatan dan tegangan keluaran yang dihasilkan oleh suatu penguat tegangan.
Pengguna hanya perlu memasukkan nilai-nilai komponen yang telah diketahui
dari soal.

B. Saran
Program ini perlu banyak penyempurnaan dari segala aspek, dari
tampilan dan kemampuan dalam perhitungan yang seharusnya dapat
melakukan perhitungan yang lebih kompleks. Maka dari itu, penulis berharap
adanya kritik dan saran dari pembaca.

DAFTAR PUSTAKA
http://cplusplus.com/references/ diakses pada tanggal 9 Desember 2015 pukul
10.30 WIB
http://cplusplusindonesia.blogspot.co.id/2010/02/animasi-tulisan-majumundur.html diakses pada tanggal 11 Desember 2015 pukul 17.15 WIB
http://raptor.martincarlisle.com/ diakses pada tanggal 15 Desember 2015 pukul
18.18 WIB
http://web.if.unila.ac.id/pamous/2015/06/11/dasar-elektronika-penguat-daya-danpenguat-tegangan/ diakses pada tanggal 15 Desember 2015 pukul 18.30
WIB.
http://www.gatewan.com/2014/08/analisis-model-kelas-penguat-dalam-rangkaianelektronika.html diakses pada tanggal 15 Desember 2015 pukul 19.05 WIB