opto
Relay
1.0k
100nF 4.7k
VCC
5V
Mikrokontroler Lampu Beban
Output dari relay dihubungkan ke lampu beban dan yang satunya lagi dihubungkan ke sensor arus, sehingga dengan demikian dapat diketahui apakah lampu
beban dalam keadaan hidup atau mati.
3.5. Perancangan Rangkaian Sensor Arus
Rangkaian sensor arus ini berfungsi untuk mengetahui apakah lampu dalam keadaan hidup atau mati. Rangkaian sensor arus ditunjukkan oleh gambar di bawah
ini :
Gambar 3.5. Rangkaian Sensor Arus. Rangkaian ini terdiri dari beberapa dioda yang dirangkai secara seri. Untuk
satu dioda diperlukan tegangan 0,6 volt untuk menembusnya, sehingga untuk 4 dioda diperlukan tegangan sekitar 2,4 volt. Tegangan ini yang diambil sebagai indikator arus
yang mengalir dalam dioda. Tegangan ini kemudian disearahkan oleh jembatan dioda. Dari jembatan dioda tegangan diratakan oleh kapasitor 100 nF. Tegangan ini
kemudian diinputkan ke opto coupler. Opto coupler merupakan komponen elektronika yang terdiri dari sebuah LED dan phototransistor, phototransistor ini dihubungkan ke
mikrokontroler untuk menyerap cahaya yang berasal dari led sehingga jika lED menyala, maka phototransistor akan aktip.
Universitas Sumatera Utara
Ketika lampu menyala maka akan ada tegangan 2,4 volt pada rangkaian dioda, tegangan ini akan menghidupkan LED dan mengaktipkan pototransistor, sehingga
tegangan kolektor pada opto coupler akan jatuh menjadi 0 volt. Perubahan tegangan ini yang merupakan indikator bahwasannya lampu beban dalam keadaan hidup.
Output dari rangkaian ini dihubungkan ke mikrokontroler, sehingga mikrokontroler dapat mengetahui apakah lampu beban atau kipas dalam keadaan hidup atau mati.
Perancangan program:
program yang digunakan dalam proyek ini adalah program visual basic untk interface komputer ke rangkaian dan asssembler untuk mikrokontroller adapun program yang
diisikan adalah sbb: program interface komputer ke rangkaian”:
Private Declare Sub PortOut Lib IO.DLL ByVal Port As Integer, ByVal Data As Byte
Private Declare Function Portin Lib IO.DLL ByVal Port As Integer As Byte Private Declare Sub Sleep Lib Kernel32 ByVal dwMiliseconds As Long
Private Declare Function Inp Lib DllPort.dll Alias Inp32 ByVal PortAddress As Integer As Integer
Private Sub Command1_Click End Sub
Private Sub Hidup_All_Click PortOut H378, H19
End Sub Private Sub Lampu1_Hidup_Click
PortOut H378, H11
Universitas Sumatera Utara
End Sub Private Sub Lampu1_Mati_Click
PortOut H378, H21 End Sub
Private Sub Lampu2_Hidup_Click PortOut H378, H12
End Sub Private Sub Lampu2_Mati_Click
PortOut H378, H22 End Sub
Private Sub Lampu3_Hidup_Click PortOut H378, H13
End Sub Private Sub Lampu3_Mati_Click
PortOut H378, H23 End Sub
Private Sub Lampu4_Hidup_Click PortOut H378, H14
End Sub Private Sub Lampu4_Mati_Click
PortOut H378, H24 End Sub
Private Sub Lampu5_Hidup_Click PortOut H378, H15
End Sub
Universitas Sumatera Utara
Private Sub Lampu5_Mati_Click PortOut H378, H25
End Sub Private Sub Lampu6_Hidup_Click
PortOut H378, H16 End Sub
Private Sub Lampu6_Mati_Click PortOut H378, H26
End Sub Private Sub Lampu7_Hidup_Click
PortOut H378, H17 End Sub
Private Sub Lampu7_Mati_Click PortOut H378, H27
End Sub Private Sub Lampu8_Hidup_Click
PortOut H378, H18 End Sub
Private Sub Lampu8_Mati_Click PortOut H378, H28
End Sub Private Sub Mati_All_Click
PortOut H378, H29 End Sub
Private Sub StatusLampu1_Click
Universitas Sumatera Utara
PortOut H378, H31 Sleep 100
Nilai1 = InpH379 If Nilai1 = 127 Then
Status1 = Mati Else
Status1 = Nyala End If
End Sub Private Sub StatusLampu2_Click
PortOut H378, H32 Sleep 100
Nilai2 = InpH379 If Nilai2 = 127 Then
Status2 = Mati Else
Status2 = Nyala End If
End Sub Private Sub StatusLampu3_Click
PortOut H378, H33 Sleep 100
Nilai3 = InpH379 If Nilai3 = 127 Then
Status3 = Mati
Universitas Sumatera Utara
Else Status3 = Nyala
End If End Sub
Private Sub StatusLampu4_Click PortOut H378, H34
Sleep 100 Nilai4 = InpH379
If Nilai4 = 127 Then Status4 = Mati
Else Status4 = Nyala
End If End Sub
Private Sub StatusLampu5_Click PortOut H378, H35
Sleep 100 Nilai5 = InpH379
If Nilai5 = 127 Then Status5 = Mati
Else Status5 = Nyala
End If End Sub
Private Sub StatusLampu6_Click
Universitas Sumatera Utara
PortOut H378, H36 Sleep 100
Nilai6 = InpH379 If Nilai6 = 127 Then
Status6 = Mati Else
Status6 = Nyala End If
End Sub Private Sub StatusLampu7_Click
PortOut H378, H37 Sleep 100
Nilai7 = InpH379 If Nilai7 = 127 Then
Status7 = Mati Else
Status7 = Nyala End If
End Sub Private Sub StatusLampu8_Click
PortOut H378, H38 Sleep 100
Nilai8 = InpH379 If Nilai8 = 127 Then
Status8 = Mati
Universitas Sumatera Utara
Else Status8 = Nyala
End If End Sub
Program yang diisikan ke dalam mikrokontroller Lampu1 Bit P0.7
Lampu2 Bit P0.6 Lampu3 Bit P0.5
Lampu4 Bit P0.4 Lampu5 Bit P0.3
Lampu6 Bit P0.2 Lampu7 Bit P0.1
Lampu8 Bit P0.0 Stepper1 bit P3.3
Stepper2 bit P3.4 Stepper3 bit P3.5
Stepper4 bit P3.6 Sensor1 Bit P3.0
Sensor2 Bit P3.1 Mov P0,0
Clr Stepper1 Clr Stepper2
Clr Stepper3 Clr Stepper4
Universitas Sumatera Utara
Utama: mov a,p1
cjne a,11h,Hidupkan_Lampu2 Setb lampu1 ; hidupkan lampu 1
Sjmp Utama Hidupkan_Lampu2:
mov a,p1 cjne a,12h,Hidupkan_Lampu3
Setb lampu2 Sjmp Utama
Hidupkan_Lampu3: mov a,p1
cjne a,13h,Hidupkan_Lampu4 Setb lampu3
Sjmp Utama Hidupkan_Lampu4:
mov a,p1 cjne a,14h,Hidupkan_Lampu5
Setb lampu4 Sjmp Utama
Hidupkan_Lampu5: mov a,p1
cjne a,15h,Hidupkan_Lampu6 Setb lampu5
Sjmp Utama
Universitas Sumatera Utara
Hidupkan_Lampu6: mov a,p1
cjne a,16h,Hidupkan_Lampu7 Setb lampu6
Sjmp Utama Hidupkan_Lampu7:
mov a,p1 cjne a,17h,Hidupkan_Lampu8
Setb Lampu7 Sjmp Utama
Hidupkan_Lampu8: mov a,p1
cjne a,18h,Hidupkan_Lampu_all Setb Lampu8
Sjmp Utama Hidupkan_Lampu_all:
mov a,p1 cjne a,19h,Buka_pintu
mov p0,0ffh Sjmp Utama
Matikan_Lampu1: mov a,p1
cjne a,21h,Matikan_Lampu2 Clr lampu1
Ljmp Utama
Universitas Sumatera Utara
Matikan_Lampu2: mov a,p1
cjne a,22h,Matikan_Lampu3 Clr lampu2
ljmp Utama Matikan_Lampu3:
mov a,p1 cjne a,23h,Matikan_Lampu4
Clr lampu3 ljmp Utama
Matikan_Lampu4: mov a,p1
cjne a,24h,Matikan_Lampu5 Clr lampu4
ljmp Utama Matikan_Lampu5:
mov a,p1 cjne a,25h,Matikan_Lampu6
Clr lampu5 ljmp Utama
Matikan_Lampu6: mov a,p1
cjne a,26h,Matikan_Lampu7 Clr lampu6
ljmp Utama
Universitas Sumatera Utara
Matikan_Lampu7: mov a,p1
cjne a,27h,Matikan_Lampu8 Clr lampu7
ljmp Utama Matikan_Lampu8:
mov a,p1 cjne a,28h,Matikan_Lampu_All
Clr Lampu8 ljmp Utama
Matikan_Lampu_All: mov a,p1
cjne a,29h,Cek_Status1 Mov p0,0
ljmp Utama Cek_Status1:
mov a,p1 cjne a,31h,Cek_Status2
Jb p2.7,nyala1 Clr p3.7
ljmp Utama nyala1:
Setb P3.7 ljmp Utama
Cek_Status2:
Universitas Sumatera Utara
mov a,p1 cjne a,32h,Cek_Status3
Jb p2.6,nyala2 Clr p3.7
ljmp Utama nyala2:
Setb P3.7 ljmp Utama
Cek_Status3: mov a,p1
cjne a,33h,Cek_Status4 Jb p2.5,nyala3
Clr p3.7 ljmp Utama
nyala3: Setb P3.7
ljmp Utama Cek_Status4:
mov a,p1 cjne a,34h,Cek_Status5
Jb p2.4,nyala4 Clr p3.7
ljmp Utama nyala4:
Setb P3.7
Universitas Sumatera Utara
ljmp Utama Cek_Status5:
mov a,p1 cjne a,35h,Cek_Status6
Jb p2.3,nyala5 Clr p3.7
ljmp Utama nyala5:
Setb P3.7 ljmp Utama
Cek_Status6: mov a,p1
cjne a,36h,Cek_Status7 Jb p2.2,nyala6
Clr p3.7 ljmp Utama
nyala6: Setb P3.7
ljmp Utama Cek_Status7:
mov a,p1 cjne a,37h,Cek_Status8
Jb p2.1,nyala7 Clr p3.7
ljmp Utama
Universitas Sumatera Utara
nyala7: Setb P3.7
ljmp Utama Cek_Status8:
mov a,p1 cjne a,38h,Cek_Status9
Jb p2.0,nyala8 Clr p3.7
ljmp Utama nyala8:
Setb P3.7 ljmp Utama
Cek_Status9: mov a,p1
cjne a,39h,Cek_Status10 Jb p3.0,nyala9
Clr p3.7 ljmp Utama
nyala9: Setb P3.7
ljmp Utama Cek_Status10:
mov a,p1 cjne a,3ah,Balik_Utama
Jb p3.1,nyala10
Universitas Sumatera Utara
Clr p3.7 ljmp Utama
nyala10: Setb P3.7
Balik_Utama: ljmp Utama
tunda: mov r7,50
tnd: mov r6,255
djnz r6, djnz r7,tnd
ret
Universitas Sumatera Utara
BAB 4 PENGUJIAN DAN ANALISA SISTEM
4.1 Pengujian Rangkaian Catu Daya