LAMPIRAN CODE PROGRAM ASSEMBLY. $mod51 servo1 equ p3.5 servo2 equ p3.3 servo3 equ p1.7 servo4 equ p1.5 servo5 equ p1.3 servo6 equ p1.

Ukuran: px
Mulai penontonan dengan halaman:

Download "LAMPIRAN CODE PROGRAM ASSEMBLY. $mod51 servo1 equ p3.5 servo2 equ p3.3 servo3 equ p1.7 servo4 equ p1.5 servo5 equ p1.3 servo6 equ p1."

Transkripsi

1 L1 LAMPIRAN CODE PROGRAM ASSEMBLY $mod51 servo1 equ p3.5 servo2 equ p3.3 servo3 equ p1.7 servo4 equ p1.5 servo5 equ p1.3 servo6 equ p1.1 led1 equ p3.4 led2 equ p3.2 led3 equ p3.7 led4 equ p3.6 led5 equ p1.2 led6 equ p1.0 sw equ p2.0 cw1 equ p2.3 ccw1 equ p2.4 cw2 equ p2.5 ccw2 equ p2.6 cw3 equ p2.7 ccw3 equ p0.7 cw4 equ p0.5 ccw4 equ p0.4 cw5 equ p0.3 ccw5 equ p0.2 cw6 equ p0.1 ccw6 equ p0.0 turun1 equ 30h turun2 equ 31h turun3 equ 32h turun4 equ 33h turun5 equ 34h turun6 equ 35h turun7 equ 36h turun8 equ 37h turun9 equ 38h turun10 equ 39h time_servo equ 50h time_servo1 equ 51h time_servo2 equ 52h time_servo3 equ 53h time_servo4 equ 54h time_servo5 equ 55h

2 L2 time_servo6 equ 56h pakai1 equ 57h pakai2 equ 58h pakai3 equ 59h pakai4 equ 5ah pakai5 equ 5bh pakai6 equ 5ch org 0000h sjmp main org 0030h main: clr led1 clr led2 clr led3 clr led4 clr led5 clr led6 clr servo1 clr servo2 clr servo3 clr servo4 clr servo5 clr servo6 mov scon,#50h mov tmod,#20h mov th1,#-3 mov a,pcon clr 0e7h mov pcon,a setb tr1 ajmp tunggu_serial2 ; ;Tunggu terima data dari Serial Port ; tunggu_serial1: jb sw,tunggu_serial2a ajmp sw_prog tunggu_serial2: clr ri tunggu_serial2a: jnb ri,tunggu_serial1 mov 40h,sbuf clr ri jnb ri,$

3 L3 mov 41h,sbuf clr ri jnb ri,$ mov 42h,sbuf clr ri jnb ri,$ mov 43h,sbuf clr ri jnb ri,$ mov 44h,sbuf clr ri jnb ri,$ mov 45h,sbuf clr ri jnb ri,$ mov 46h,sbuf clr ri jnb ri,$ mov 47h,sbuf clr ri jnb ri,$ mov 48h,sbuf clr ri jnb ri,$ mov 49h,sbuf clr ri jnb ri,$ mov 4ah,sbuf clr ri jnb ri,$ mov 4bh,sbuf clr ri jnb ri,$ mov 4ch,sbuf clr ri jnb ri,$ mov 4dh,sbuf clr ri jnb ri,$ mov 4eh,sbuf clr ri jnb ri,$

4 L4 mov 4fh,sbuf clr ri jnb ri,$ mov 5dh,sbuf clr ri jnb ri,$ mov 5eh,sbuf mov r0,#40h mov r1,#42h acall cek_data mov r0,#43h mov r1,#45h acall cek_data mov r0,#46h mov r1,#48h acall cek_data mov r0,#49h mov r1,#4bh acall cek_data mov r0,#4ch mov r1,#4eh acall cek_data mov r0,#4fh mov r1,#5eh acall cek_data ; ;Proses memutar Servo ; proses_servo: mov pakai1,#0 mov pakai2,#0 mov pakai3,#0 mov pakai4,#0 mov pakai5,#0 mov pakai6,#0 mov turun1,#200 mov turun2,#200 mov turun3,#200 mov turun4,#200 mov turun5,#200

5 L5 mov turun6,#200 mov turun7,#200 mov turun8,#200 mov turun9,#200 mov turun10,#200 setb servo1 jeda1: inc pakai1 acall delay10us djnz time_servo1,jeda1 clr servo1 setb servo2 jeda2: inc pakai2 acall delay10us djnz time_servo2,jeda2 clr servo2 setb servo3 jeda3: inc pakai3 acall delay10us djnz time_servo3,jeda3 clr servo3 setb servo4 jeda4: inc pakai4 acall delay10us djnz time_servo4,jeda4 clr servo4 setb servo5 jeda5: inc pakai5 acall delay10us djnz time_servo5,jeda5 clr servo5 setb servo6 jeda6: inc pakai6 acall delay10us djnz time_servo6,jeda6 clr servo6 clr c mov a,turun1 subb a,pakai1 mov turun1,a

6 L6 clr c mov a,turun2 subb a,pakai2 mov turun2,a clr c mov a,turun3 subb a,pakai3 mov turun3,a clr c mov a,turun4 subb a,pakai4 mov turun4,a clr c mov a,turun5 subb a,pakai5 mov turun5,a clr c mov a,turun6 subb a,pakai6 mov turun6,a wait_turun1: acall delay10us djnz turun1,wait_turun1 wait_turun2: acall delay10us djnz turun2,wait_turun2 wait_turun3: acall delay10us djnz turun3,wait_turun3 wait_turun4: acall delay10us djnz turun4,wait_turun4 wait_turun5: acall delay10us djnz turun5,wait_turun5 wait_turun6: acall delay10us

7 L7 djnz turun6,wait_turun6 wait_turun7: acall delay10us djnz turun7,wait_turun7 wait_turun8: acall delay10us djnz turun8,wait_turun8 wait_turun9: acall delay10us djnz turun9,wait_turun9 wait_turun10: acall delay10us djnz turun10,wait_turun10 ajmp tunggu_serial2 ; ;Proses cek data yang diterima dari Serial Port ; cek_data: mov cek_servo1: cjne a,#'1',cek_servo2 lcall cek_arah mov time_servo1,time_servo cek_servo2: cjne a,#'2',cek_servo3 lcall cek_arah mov time_servo2,time_servo cek_servo3: cjne a,#'3',cek_servo4 lcall cek_arah mov time_servo3,time_servo cek_servo4: cjne a,#'4',cek_servo5 lcall cek_arah mov time_servo4,time_servo

8 L8 cek_servo5: cjne a,#'5',cek_servo6 lcall cek_arah mov time_servo5,time_servo cek_servo6: cjne a,#'6',bukan_servo lcall cek_arah mov time_servo6,time_servo bukan_servo: ; ;Proses cek arah putaran servo ; cek_arah: mov arah0: cjne a,#'0',arah1 mov time_servo,#175 arah1: cjne a,#'1',arah2 mov time_servo,#165 arah2: cjne a,#'2',arah3 mov time_servo,#155 arah3: cjne a,#'3',arah4 mov time_servo,#145 arah4: cjne a,#'4',arah5 mov time_servo,#135 arah5: cjne a,#'5',arah6 mov time_servo,#125 arah6: cjne a,#'6',arah7 mov time_servo,#115

9 L9 arah7: cjne a,#'7',arah8 mov time_servo,#105 arah8: cjne a,#'8',arah9 mov time_servo,#95 arah9: cjne a,#'9',araha mov time_servo,#85 araha: cjne a,#'a',arahb mov time_servo,#75 arahb: cjne a,#'b',arahc mov time_servo,#65 arahc: cjne a,#'c',bukan_arah mov time_servo,#55 bukan_arah: ; ;Program deteksi switch tanpa komputer PC ; sw_prog: mov 60h,#1 mov 61h,#6 mov 62h,#2 mov 63h,#6 mov 64h,#3 mov 65h,#6 mov 66h,#4 mov 67h,#6 mov 68h,#5 mov 69h,#6 mov 6ah,#6 mov 6bh,#6 sw_prog1: jnb sw,cek_cw1

10 L10 ajmp tunggu_serial2 ; cek_cw1:jb cw1,cek_ccw1 setb led1 lcall delay jnb cw1,$ clr led1 mov a,61h cjne a,#12,cek_cw1a ajmp sw_prog2 cek_cw1a: inc 61h ajmp sw_prog2 cek_ccw1: jb ccw1,cek_cw2 setb led1 lcall delay jnb ccw1,$ clr led1 mov a,61h cjne a,#0,cek_ccw1a ajmp sw_prog2 cek_ccw1a: dec 61h ajmp sw_prog2 ; cek_cw2: jb cw2,cek_ccw2 setb led2 lcall delay jnb cw2,$ clr led2 mov a,63h cjne a,#12,cek_cw2a ajmp sw_prog2 cek_cw2a: inc 63h ajmp sw_prog2 cek_ccw2: jb ccw2,cek_cw3 setb led2 lcall delay

11 L11 jnb ccw2,$ clr led2 mov a,63h cjne a,#0,cek_ccw2a ajmp sw_prog2 cek_ccw2a: dec 63h ajmp sw_prog2 ; cek_cw3: jb cw3,cek_ccw3 setb led3 lcall delay jnb cw3,$ clr led3 mov a,65h cjne a,#12,cek_cw3a ajmp sw_prog2 cek_cw3a: inc 65h ajmp sw_prog2 cek_ccw3: jb ccw3,cek_cw4 setb led3 lcall delay jnb ccw3,$ clr led3 mov a,65h cjne a,#0,cek_ccw3a ajmp sw_prog2 cek_ccw3a: dec 65h ajmp sw_prog2 ; cek_cw4: jb cw4,cek_ccw4 setb led4 lcall delay jnb cw4,$ clr led4 mov a,67h cjne a,#12,cek_cw4a ajmp sw_prog2

12 L12 cek_cw4a: inc 67h ajmp sw_prog2 cek_ccw4: jb ccw4,cek_cw5 setb led4 lcall delay jnb ccw4,$ clr led4 mov a,67h cjne a,#0,cek_ccw4a ajmp sw_prog2 cek_ccw4a: dec 67h ajmp sw_prog2 ; cek_cw5: jb cw5,cek_ccw5 setb led5 lcall delay jnb cw5,$ clr led5 mov a,69h cjne a,#12,cek_cw5a ajmp sw_prog2 cek_cw5a: inc 69h ajmp sw_prog2 cek_ccw5: jb ccw5,cek_cw6 setb led5 lcall delay jnb ccw5,$ clr led5 mov a,69h cjne a,#0,cek_ccw5a ajmp sw_prog2 cek_ccw5a: dec 69h ajmp sw_prog2 ;

13 L13 cek_cw6: jb cw6,cek_ccw6 setb led6 lcall delay jnb cw6,$ clr led6 mov a,6bh cjne a,#12,cek_cw6a ajmp sw_prog2 cek_cw6a: inc 6bh ajmp sw_prog2 cek_ccw6: jb ccw6,sw_prog2 setb led6 lcall delay jnb ccw6,$ clr led6 mov a,6bh cjne a,#0,cek_ccw6a ajmp sw_prog2 cek_ccw6a: dec 6bh ajmp sw_prog2 ; sw_prog2: mov r0,#60h mov r1,#61h acall cek_datax mov r0,#62h mov r1,#63h acall cek_datax mov r0,#64h mov r1,#65h acall cek_datax mov r0,#66h mov r1,#67h acall cek_datax mov r0,#68h mov r1,#69h

14 L14 acall cek_datax mov r0,#6ah mov r1,#6bh acall cek_datax ; ;Proses memutar Servo tanpa komputer PC ; proses_servox: mov pakai1,#0 mov pakai2,#0 mov pakai3,#0 mov pakai4,#0 mov pakai5,#0 mov pakai6,#0 mov turun1,#200 mov turun2,#200 mov turun3,#200 mov turun4,#200 mov turun5,#200 mov turun6,#200 mov turun7,#200 mov turun8,#200 mov turun9,#200 mov turun10,#200 setb servo1 jeda1x: inc pakai1 acall delay10us djnz time_servo1,jeda1x clr servo1 setb servo2 jeda2x: inc pakai2 acall delay10us djnz time_servo2,jeda2x clr servo2 setb servo3 jeda3x: inc pakai3 acall delay10us djnz time_servo3,jeda3x clr servo3 setb servo4 jeda4x: inc pakai4

15 L15 acall delay10us djnz time_servo4,jeda4x clr servo4 setb servo5 jeda5x: inc pakai5 acall delay10us djnz time_servo5,jeda5x clr servo5 setb servo6 jeda6x: inc pakai6 acall delay10us djnz time_servo6,jeda6x clr servo6 clr c mov a,turun1 subb a,pakai1 mov turun1,a clr c mov a,turun2 subb a,pakai2 mov turun2,a clr c mov a,turun3 subb a,pakai3 mov turun3,a clr c mov a,turun4 subb a,pakai4 mov turun4,a clr c mov a,turun5 subb a,pakai5 mov turun5,a clr c mov a,turun6 subb a,pakai6 mov turun6,a wait_turun1x:

16 L16 acall delay10us djnz turun1,wait_turun1x wait_turun2x: acall delay10us djnz turun2,wait_turun2x wait_turun3x: acall delay10us djnz turun3,wait_turun3x wait_turun4x: acall delay10us djnz turun4,wait_turun4x wait_turun5x: acall delay10us djnz turun5,wait_turun5x wait_turun6x: acall delay10us djnz turun6,wait_turun6x wait_turun7x: acall delay10us djnz turun7,wait_turun7x wait_turun8x: acall delay10us djnz turun8,wait_turun8x wait_turun9x: acall delay10us djnz turun9,wait_turun9x wait_turun10x: acall delay10us djnz turun10,wait_turun10x ajmp sw_prog1 ; ;Program cek servo tanpa menggunakan Komputer ; cek_datax: mov cek_servo1x: cjne a,#1,cek_servo2x

17 L17 lcall cek_arahx mov time_servo1,time_servo cek_servo2x: cjne a,#2,cek_servo3x lcall cek_arahx mov time_servo2,time_servo cek_servo3x: cjne a,#3,cek_servo4x lcall cek_arahx mov time_servo3,time_servo cek_servo4x: cjne a,#4,cek_servo5x lcall cek_arahx mov time_servo4,time_servo cek_servo5x: cjne a,#5,cek_servo6x lcall cek_arahx mov time_servo5,time_servo cek_servo6x: cjne a,#6,bukan_servox lcall cek_arahx mov time_servo6,time_servo bukan_servox: ; ;Proses cek arah putaran servo sesuai tombol ; cek_arahx: mov arah0x:cjne a,#0,arah1x mov time_servo,#175

18 L18 arah1x:cjne a,#1,arah2x mov time_servo,#165 arah2x:cjne a,#2,arah3x mov time_servo,#155 arah3x:cjne a,#3,arah4x mov time_servo,#145 arah4x:cjne a,#4,arah5x mov time_servo,#135 arah5x:cjne a,#5,arah6x mov time_servo,#125 arah6x:cjne a,#6,arah7x mov time_servo,#115 arah7x:cjne a,#7,arah8x mov time_servo,#105 arah8x:cjne a,#8,arah9x mov time_servo,#95 arah9x:cjne a,#9,arahax mov time_servo,#85 arahax: cjne a,#10,arahbx mov time_servo,#75 arahbx:cjne a,#11,arahcx mov time_servo,#65 arahcx: cjne a,#12,bukan_arahx mov time_servo,#55

19 L19 bukan_arahx: ; ;Subrutin Delay ; delay20ms: push 70h push 71h mov 70h,#20 loop20a: mov 71h,#200 loop20b:nop nop nop djnz 71h,loop20b djnz 70h,loop20a pop 71h pop 70h delay10us: nop nop nop nop nop nop delay: push 70h push 71h mov 70h,#200 loop1: mov 71h,#200 loop: nop nop nop djnz 71h,loop djnz 70h,loop1 pop 71h pop 70h

20 L20 LAMPIRAN LISTING PROGRAM VISUAL BASIC 1. Listing Program Module Public Declare Function GetPrivateProfileString Lib "kernel32" Alias _ "GetPrivateProfileStringA" (ByVal lpapplicationname As String, ByVal _ lpkeyname As Any, ByVal lpdefault As String, ByVal lpreturnedstring As String, _ ByVal nsize As Long, ByVal lpfilename As String) As Long Public Declare Function WritePrivateProfileString Lib "kernel32" Alias _ "WritePrivateProfileStringA" (ByVal lpapplicationname As String, ByVal _ lpkeyname As Any, ByVal lpstring As Any, ByVal lpfilename As String) As Long Public nsa1 As String Public nsa2 As String Public nsa3 As String Public nsa4 As String Public nsa5 As String Public nsa6 As String Public nsb1 As String Public nsb2 As String Public nsb3 As String Public nsb4 As String Public nsb5 As String Public nsb6 As String Public INIFileName As String Public pathload As String Public Sub getisistr() Dim isa1 As String * 20 Dim isa2 As String * 20 Dim isa3 As String * 20 Dim isa4 As String * 20 Dim isa5 As String * 20 Dim isa6 As String * 20 Dim isb1 As String * 20 Dim isb2 As String * 20 Dim isb3 As String * 20 Dim isb4 As String * 20 Dim isb5 As String * 20 Dim isb6 As String * 20

21 L21 'INIFileName = App.Path & "\Template.txt" ' Result1 = GetPrivateProfileString("ATAS", "Servo1", "", isa1, Len(iSa1), INIFileName) Result2 = GetPrivateProfileString("ATAS", "Servo2", "", isa2, Len(iSa2), INIFileName) Result3 = GetPrivateProfileString("ATAS", "Servo3", "", isa3, Len(iSa3), INIFileName) Result4 = GetPrivateProfileString("ATAS", "Servo4", "", isa4, Len(iSa4), INIFileName) Result5 = GetPrivateProfileString("ATAS", "Servo5", "", isa5, Len(iSa5), INIFileName) Result6 = GetPrivateProfileString("ATAS", "Servo6", "", isa6, Len(iSa6), INIFileName) Result7 = GetPrivateProfileString("BAWAH", "Servo1", "", isb1, Len(iSb1), INIFileName) Result8 = GetPrivateProfileString("BAWAH", "Servo2", "", isb2, Len(iSb2), INIFileName) Result9 = GetPrivateProfileString("BAWAH", "Servo3", "", isb3, Len(iSb3), INIFileName) Result10 = GetPrivateProfileString("BAWAH", "Servo4", "", isb4, Len(iSb4), INIFileName) Result11 = GetPrivateProfileString("BAWAH", "Servo5", "", isb5, Len(iSb5), INIFileName) Result12 = GetPrivateProfileString("BAWAH", "Servo6", "", isb6, Len(iSb6), INIFileName) ' nsa1 = LCase(tanpaspace(iSa1)) nsa2 = LCase(tanpaspace(iSa2)) nsa3 = LCase(tanpaspace(iSa3)) nsa4 = LCase(tanpaspace(iSa4)) nsa5 = LCase(tanpaspace(iSa5)) nsa6 = LCase(tanpaspace(iSa6)) nsb1 = LCase(tanpaspace(iSb1)) nsb2 = LCase(tanpaspace(iSb2)) nsb3 = LCase(tanpaspace(iSb3)) nsb4 = LCase(tanpaspace(iSb4)) nsb5 = LCase(tanpaspace(iSb5)) nsb6 = LCase(tanpaspace(iSb6)) End Sub

22 L22 Public Function tanpaspace(byval strstring As String) As String Dim i As Integer, ninstr As Integer Const strvar = " ABCDEFGHIJKLMNOPQRSTUVWXYZ_,./<>*-" Const strenc = " ABCDEFGHIJKLMNOPQRSTUVWXYZ_,./<>*-" 'PZMQLXKATSFCWUNEMRYHDOBVIJ ' 'PQLAMZXNSKOWIEJDBCVHFURYTG ' If Trim(strString) = "" Then tanpaspace = "" Exit Function End If strstring = UCase(strString) tanpaspace = "" For i = 1 To Len(strString) ninstr = InStr(1, strenc, Mid(strString, i, 1), vbtextcompare) If ninstr = 0 Then tanpaspace = tanpaspace + "" Else tanpaspace = tanpaspace + Mid(strVar, ninstr, 1) End If Next End Function 2. Listing Porgram Form 1 Dim urut As Integer Dim abisload As Boolean Dim jumlahfile As Integer Dim hitfile As Integer Private Sub Command1_Click() MSComm1.CommPort = Combo1.Text MSComm1.PortOpen = True urut = 1 Timer1.Enabled = True Command1.Enabled = False Combo1.Enabled = False

23 L23 End Sub Private Sub Command108_Click(Index As Integer) Label8(6).Caption = Command108(Index).Caption If Index = 0 Then Label14(6).Caption = "6,0" ElseIf Index = 1 Then Label14(6).Caption = "6,1" ElseIf Index = 2 Then Label14(6).Caption = "6,2" ElseIf Index = 3 Then Label14(6).Caption = "6,3" ElseIf Index = 4 Then Label14(6).Caption = "6,4" ElseIf Index = 5 Then Label14(6).Caption = "6,5" ElseIf Index = 6 Then Label14(6).Caption = "6,6" ElseIf Index = 7 Then Label14(6).Caption = "6,7" ElseIf Index = 8 Then Label14(6).Caption = "6,8" ElseIf Index = 9 Then Label14(6).Caption = "6,9" ElseIf Index = 10 Then Label14(6).Caption = "6,a" ElseIf Index = 11 Then Label14(6).Caption = "6,b" ElseIf Index = 12 Then Label14(6).Caption = "6,c" End If End Sub Private Sub Command18_Click(Index As Integer) Label8(1).Caption = Command18(Index).Caption 'Label14(1).Caption If Index = 0 Then Label14(1).Caption = "1,0" ElseIf Index = 1 Then Label14(1).Caption = "1,1" ElseIf Index = 2 Then Label14(1).Caption = "1,2"

24 L24 ElseIf Index = 3 Then Label14(1).Caption = "1,3" ElseIf Index = 4 Then Label14(1).Caption = "1,4" ElseIf Index = 5 Then Label14(1).Caption = "1,5" ElseIf Index = 6 Then Label14(1).Caption = "1,6" ElseIf Index = 7 Then Label14(1).Caption = "1,7" ElseIf Index = 8 Then Label14(1).Caption = "1,8" ElseIf Index = 9 Then Label14(1).Caption = "1,9" ElseIf Index = 10 Then Label14(1).Caption = "1,a" ElseIf Index = 11 Then Label14(1).Caption = "1,b" ElseIf Index = 12 Then Label14(1).Caption = "1,c" End If End Sub Private Sub Command2_Click() Dim filetujuan As String CommonDialog1.Filter = "Text Files (*.txt) *.txt" CommonDialog1.InitDir = "C:\" CommonDialog1.ShowSave If Trim(CommonDialog1.FileName) = "" Then Exit Sub 'Label9.Caption = Trim(CommonDialog1.FileName) INIFileName = App.Path & "\Template.txt" filetujuan = Trim(CommonDialog1.FileName) Result1 = WritePrivateProfileString("ATAS", "Servo1", Label8(1).Caption, INIFileName) Result2 = WritePrivateProfileString("ATAS", "Servo2", Label8(2).Caption, INIFileName) Result3 = WritePrivateProfileString("ATAS", "Servo3", Label8(3).Caption, INIFileName) Result4 = WritePrivateProfileString("ATAS", "Servo4", Label8(4).Caption, INIFileName)

25 L25 Result5 = WritePrivateProfileString("ATAS", "Servo5", Label8(5).Caption, INIFileName) Result6 = WritePrivateProfileString("ATAS", "Servo6", Label8(6).Caption, INIFileName) Result7 = WritePrivateProfileString("BAWAH", "Servo1", Label14(1).Caption, INIFileName) Result8 = WritePrivateProfileString("BAWAH", "Servo2", Label14(2).Caption, INIFileName) Result9 = WritePrivateProfileString("BAWAH", "Servo3", Label14(3).Caption, INIFileName) Result10 = WritePrivateProfileString("BAWAH", "Servo4", Label14(4).Caption, INIFileName) Result11 = WritePrivateProfileString("BAWAH", "Servo5", Label14(5).Caption, INIFileName) Result12 = WritePrivateProfileString("BAWAH", "Servo6", Label14(6).Caption, INIFileName) FileCopy INIFileName, filetujuan End Sub Private Sub Command3_Click() CommonDialog1.Filter = "Text Files (*.txt) *.txt" CommonDialog1.InitDir = "C:\" CommonDialog1.ShowOpen If Trim(CommonDialog1.FileName) = "" Then Exit Sub Label10.Caption = Trim(CommonDialog1.FileName) INIFileName = Trim(CommonDialog1.FileName) getisistr abisload = True Label8(7).Caption = nsa1 Label8(8).Caption = nsa2 Label8(9).Caption = nsa3 Label8(10).Caption = nsa4 Label8(11).Caption = nsa5 Label8(12).Caption = nsa6 End Sub

26 L26 Private Sub Command36_Click(Index As Integer) Label8(2).Caption = Command36(Index).Caption If Index = 0 Then Label14(2).Caption = "2,0" ElseIf Index = 1 Then Label14(2).Caption = "2,1" ElseIf Index = 2 Then Label14(2).Caption = "2,2" ElseIf Index = 3 Then Label14(2).Caption = "2,3" ElseIf Index = 4 Then Label14(2).Caption = "2,4" ElseIf Index = 5 Then Label14(2).Caption = "2,5" ElseIf Index = 6 Then Label14(2).Caption = "2,7" ElseIf Index = 7 Then Label14(2).Caption = "2,8" ElseIf Index = 8 Then Label14(2).Caption = "2,8" ElseIf Index = 9 Then Label14(2).Caption = "2,9" ElseIf Index = 10 Then Label14(2).Caption = "2,a" ElseIf Index = 11 Then Label14(2).Caption = "2,b" ElseIf Index = 12 Then Label14(2).Caption = "2,c" End If End Sub Private Sub Command4_Click() abisload = True If abisload = True Then ' urut = 1 ' Timer2.Enabled = True Label8(1).Caption = nsa1 Label8(2).Caption = nsa2 Label8(3).Caption = nsa3 Label8(4).Caption = nsa4

27 L27 Label8(5).Caption = nsa5 Label8(6).Caption = nsa6 Label14(1).Caption = nsb1 Label14(2).Caption = nsb2 Label14(3).Caption = nsb3 Label14(4).Caption = nsb4 Label14(5).Caption = nsb5 Label14(6).Caption = nsb6 DoEvents Label10.Caption = "" Label8(7).Caption = "" Label8(8).Caption = "" Label8(9).Caption = "" Label8(10).Caption = "" Label8(11).Caption = "" Label8(12).Caption = "" abisload = False End If End Sub Private Sub Command5_Click() Form2.Show 1 End Sub Private Sub Command54_Click(Index As Integer) Label8(3).Caption = Command54(Index).Caption If Index = 0 Then Label14(3).Caption = "3,0" ElseIf Index = 1 Then Label14(3).Caption = "3,1" ElseIf Index = 2 Then Label14(3).Caption = "3,2" ElseIf Index = 3 Then Label14(3).Caption = "3,3" ElseIf Index = 4 Then Label14(3).Caption = "3,4" ElseIf Index = 5 Then Label14(3).Caption = "3,5"

28 L28 ElseIf Index = 6 Then Label14(3).Caption = "3,6" ElseIf Index = 7 Then Label14(3).Caption = "3,7" ElseIf Index = 8 Then Label14(3).Caption = "3,8" ElseIf Index = 9 Then Label14(3).Caption = "3,9" ElseIf Index = 10 Then Label14(3).Caption = "3,a" ElseIf Index = 11 Then Label14(3).Caption = "3,b" ElseIf Index = 12 Then Label14(3).Caption = "3,c" End If End Sub Private Sub Command6_Click() jumlahfile = List1.ListCount hitfile = 1 INIFileName = pathload & List1.List(0) getisistr Label8(7).Caption = nsa1 Label8(8).Caption = nsa2 Label8(9).Caption = nsa3 Label8(10).Caption = nsa4 Label8(11).Caption = nsa5 Label8(12).Caption = nsa6 Label8(1).Caption = nsa1 Label8(2).Caption = nsa2 Label8(3).Caption = nsa3 Label8(4).Caption = nsa4 Label8(5).Caption = nsa5 Label8(6).Caption = nsa6 Label14(1).Caption = nsb1 Label14(2).Caption = nsb2 Label14(3).Caption = nsb3 Label14(4).Caption = nsb4 Label14(5).Caption = nsb5 Label14(6).Caption = nsb6

29 L29 Label8(7).Caption = "" Label8(8).Caption = "" Label8(9).Caption = "" Label8(10).Caption = "" Label8(11).Caption = "" Label8(12).Caption = "" DoEvents Timer3.Enabled = True End Sub Private Sub Timer3_Timer() If hitfile <= (jumlahfile - 1) Then INIFileName = pathload & List1.List(hitfile) getisistr Label8(7).Caption = nsa1 Label8(8).Caption = nsa2 Label8(9).Caption = nsa3 Label8(10).Caption = nsa4 Label8(11).Caption = nsa5 Label8(12).Caption = nsa6 Label8(1).Caption = nsa1 Label8(2).Caption = nsa2 Label8(3).Caption = nsa3 Label8(4).Caption = nsa4 Label8(5).Caption = nsa5 Label8(6).Caption = nsa6 Label14(1).Caption = nsb1 Label14(2).Caption = nsb2 Label14(3).Caption = nsb3 Label14(4).Caption = nsb4 Label14(5).Caption = nsb5 Label14(6).Caption = nsb6 Label8(7).Caption = "" Label8(8).Caption = "" Label8(9).Caption = "" Label8(10).Caption = "" Label8(11).Caption = "" Label8(12).Caption = ""

30 L30 DoEvents hitfile = hitfile + 1 ElseIf hitfile > (jumlahfile - 1) Then List1.Clear Timer3.Enabled = False End If End Sub Private Sub Command72_Click(Index As Integer) Label8(4).Caption = Command72(Index).Caption If Index = 0 Then Label14(4).Caption = "4,c" ElseIf Index = 1 Then Label14(4).Caption = "4,b" ElseIf Index = 2 Then Label14(4).Caption = "4,a" ElseIf Index = 3 Then Label14(4).Caption = "4,9" ElseIf Index = 4 Then Label14(4).Caption = "4,8" ElseIf Index = 5 Then Label14(4).Caption = "4,8" ElseIf Index = 6 Then Label14(4).Caption = "4,7" ElseIf Index = 7 Then Label14(4).Caption = "4,5" ElseIf Index = 8 Then Label14(4).Caption = "4,4" ElseIf Index = 9 Then Label14(4).Caption = "4,3" ElseIf Index = 10 Then Label14(4).Caption = "4,2" ElseIf Index = 11 Then Label14(4).Caption = "4,1" ElseIf Index = 12 Then Label14(4).Caption = "4,0" End If End Sub Private Sub Command90_Click(Index As Integer)

31 L31 Label8(5).Caption = Command90(Index).Caption If Index = 0 Then Label14(5).Caption = "5,0" ElseIf Index = 1 Then Label14(5).Caption = "5,1" ElseIf Index = 2 Then Label14(5).Caption = "5,2" ElseIf Index = 3 Then Label14(5).Caption = "5,3" ElseIf Index = 4 Then Label14(5).Caption = "5,4" ElseIf Index = 5 Then Label14(5).Caption = "5,5" ElseIf Index = 6 Then Label14(5).Caption = "5,6" ElseIf Index = 7 Then Label14(5).Caption = "5,7" ElseIf Index = 8 Then Label14(5).Caption = "5,8" ElseIf Index = 9 Then Label14(5).Caption = "5,9" ElseIf Index = 10 Then Label14(5).Caption = "5,a" ElseIf Index = 11 Then Label14(5).Caption = "5,b" ElseIf Index = 12 Then Label14(5).Caption = "5,c" End If End Sub Private Sub Form_Load() For i = 1 To 6 Label8(i).Caption = 0 Label14(i).Caption = CStr(i) & ",7" Next i Combo1.ListIndex = 0 End Sub Private Sub Timer1_Timer() 'If urut = 1 Then MSComm1.Output = Label14(1).Caption ' urut = urut + 1

32 L32 'ElseIf urut = 2 Then MSComm1.Output = Label14(2).Caption ' urut = urut + 1 'ElseIf urut = 3 Then MSComm1.Output = Label14(3).Caption ' urut = urut + 1 'ElseIf urut = 4 Then MSComm1.Output = Label14(4).Caption ' urut = urut + 1 'ElseIf urut = 5 Then MSComm1.Output = Label14(5).Caption ' urut = urut + 1 'ElseIf urut = 6 Then MSComm1.Output = Label14(6).Caption ' urut = 1 'End If End Sub Private Sub Timer2_Timer() If urut = 1 Then Label8(1).Caption = LCase(nSa1) Label14(1).Caption = LCase(nSb1) Label8(7).Caption = "" urut = urut + 1 ElseIf urut = 2 Then Label8(2).Caption = LCase(nSa2) Label14(2).Caption = LCase(nSb2) Label8(8).Caption = "" urut = urut + 1 ElseIf urut = 3 Then Label8(3).Caption = LCase(nSa3) Label14(3).Caption = LCase(nSb3) Label8(9).Caption = "" urut = urut + 1 ElseIf urut = 4 Then Label8(4).Caption = LCase(nSa4) Label14(4).Caption = LCase(nSb4) Label8(10).Caption = "" urut = urut + 1 ElseIf urut = 5 Then Label8(5).Caption = LCase(nSa5) Label14(5).Caption = LCase(nSb5) Label8(11).Caption = "" urut = urut + 1 ElseIf urut = 6 Then

33 L33 Label8(6).Caption = LCase(nSa6) Label14(6).Caption = LCase(nSb6) Label8(12).Caption = "" urut = 1 Timer2.Enabled = False End If DoEvents End Sub 3. Listing Porgram Form 2 Private Sub Command1_Click() Form1.List1.Clear If File1.ListCount > 0 Then For i = 0 To File1.ListCount - 1 'File1.ListIndex = i Form1.List1.AddItem File1.List(i) Next i End If pathload = Dir1.Path If Right(pathload, 1) <> "\" Then pathload = pathload & "\" End If 'Form1.Command6.Value = True Unload Me End Sub Private Sub Dir1_Change() File1.Path = Dir1.Path pathload = Dir1.Path If Right(pathload, 1) <> "\" Then pathload = pathload & "\" End If Label1.Caption = pathload End Sub Private Sub Drive1_Change() Dir1.Path = Left(Drive1.Drive, 2) & "\"

34 L34 End Sub Private Sub Form_Load() Drive1.Drive = "C" Dir1.Path = Left(Drive1.Drive, 2) & "\" File1.FileName = "*.txt" File1.Path = Dir1.Path If File1.ListCount > 0 Then For i = 0 To File1.ListCount - 1 'File1.ListIndex = i List1.AddItem File1.List(i) Next i End If End Sub

35 L35 LAMPIRAN PROGRAM CODE MATLAB Lampiran Listing Program Menu1.m function varargout = Menu1(varargin) % MENU1 Application M-file for Menu1.fig % FIG = MENU1 launch Menu1 GUI. % MENU1('callback_name',...) invoke the named callback. % Last Modified by GUIDE v Oct :22:37 % Latest Modified by FA2 v Nov-2008 if nargin == 0 % LAUNCH GUI fig = openfig(mfilename,'reuse'); % Generate a structure of handles to pass to callbacks, and store it. handles = guihandles(fig); guidata(fig, handles); if nargout > 0 varargout{1} = fig; if ischar(varargin{1}) % INVOKE NAMED SUBFUNCTION OR CALLBACK try if (nargout) [varargout{1:nargout}] = feval(varargin{:}); % FEVAL switchyard feval(varargin{:}); % FEVAL switchyard catch disp(lasterr); %Function untuk tombol masuk ke menu Direct Kinematics function varargout = Pilih_Direct_Callback(h, eventdata, handles, varargin) Menu21 %buka window menu input direct Kinematics delete(handles.menu1) % hapus menu pilihan simulasi (direct atau inverse) %Function untuk tombol masuk ke menu Inverse Kinematics function varargout = Pilih_Inverse_Callback(h, eventdata, handles, varargin) Menu31 % buka window menu input inverse Kinematics

36 L36 Petunjuk % buka window menu petunjuk didepan window input inverse Kinematics delete(handles.menu1) % hapus menu pilihan simulasi (direct atau inverse) Menu21.m function varargout = Menu21(varargin) % MENU1 Application M-file for Menu21.fig % FIG = MENU1 launch Menu21 GUI. % MENU1('callback_name',...) invoke the named callback. % Last Modified by GUIDE v Nov :14:31 % Latest Modified by FA2 v Nov-2008 if nargin == 0 % LAUNCH GUI fig = openfig(mfilename,'reuse'); % Generate a structure of handles to pass to callbacks, and store it. handles = guihandles(fig); guidata(fig, handles); if nargout > 0 varargout{1} = fig; if ischar(varargin{1}) % INVOKE NAMED SUBFUNCTION OR CALLBACK try if (nargout) [varargout{1:nargout}] = feval(varargin{:}); % FEVAL switchyard feval(varargin{:}); % FEVAL switchyard catch disp(lasterr); %function untuk memilih salah satu arah pada setiap joint function mutual_exclude(off) set(off,'value',0) % jika pilih radio button arah positif untuk joint 1 function varargout = Positif_J1_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j1]; mutual_exclude(off)

37 L37 % jika pilih radio button arah negatif untuk joint 1 function varargout = Negatif_J1_Callback(h, eventdata, handles, varargin) off = [handles.positif_j1]; mutual_exclude(off) % jika pilih radio button arah positif untuk joint 2 function varargout = Positif_J2_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j2]; mutual_exclude(off) % jika pilih radio button arah negatif untuk joint 2 function varargout = Negatif_J2_Callback(h, eventdata, handles, varargin) off = [handles.positif_j2]; mutual_exclude(off) % jika pilih radio button arah positif untuk joint 3 function varargout = Positif_J3_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j3]; mutual_exclude(off) % jika pilih radio button arah negatif untuk joint 3 function varargout = Negatif_J3_Callback(h, eventdata, handles, varargin) off = [handles.positif_j3]; mutual_exclude(off) % jika pilih radio button arah positif untuk joint 4 function varargout = Positif_J4_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j4]; mutual_exclude(off) % jika pilih radio button arah negatif untuk joint 4 function varargout = Negatif_J4_Callback(h, eventdata, handles, varargin) off = [handles.positif_j4]; mutual_exclude(off) % jika pilih radio button arah positif untuk joint 5 function varargout = Positif_J5_Callback(h, eventdata, handles, varargin) off = [handles.negatif_j5]; mutual_exclude(off) % jika pilih radio button arah negatif untuk joint 5 function varargout = Negatif_J5_Callback(h, eventdata, handles, varargin) off = [handles.positif_j5]; mutual_exclude(off) % function untuk mem-validasi dan memasukkan sudut dari joint 1 function varargout = Input_J1_Callback(h, eventdata, handles, varargin)

38 L38 global user_entry_j1 user_entry_j1 = str2double(get(h,'string')); if isnan(user_entry_j1) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j1 > 90) (user_entry_j1 < 0) errordlg('input Joint 1 tidak boleh lebih dari 90 derajat atau Kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j1,'value') == get(handles.positif_j1,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string',''); ; ; % function untuk mem-validasi dan memasukkan sudut dari joint 2 function varargout = Input_J2_Callback(h, eventdata, handles, varargin) global user_entry_j2 user_entry_j2 = str2double(get(h,'string')); if isnan(user_entry_j2) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j2 > 90) (user_entry_j2 < 0) errordlg('input Joint 2 tidak boleh lebih dari 90 derajat atau Kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j2,'value') == get(handles.positif_j2,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string',''); ; ; % function untuk mem-validasi dan memasukkan sudut dari joint 3 function varargout = Input_J3_Callback(h, eventdata, handles, varargin) global user_entry_j3 user_entry_j3 = str2double(get(h,'string')); if isnan(user_entry_j3) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j3 > 90) (user_entry_j3 < 0)

39 L39 errordlg('input Joint 3 tidak boleh lebih dari 90 derajat atau Kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j3,'value') == get(handles.positif_j3,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string',''); ; ; % function untuk mem-validasi dan memasukkan sudut dari joint 4 function varargout = Input_J4_Callback(h, eventdata, handles, varargin) global user_entry_j4 user_entry_j4 = str2double(get(h,'string')); if isnan(user_entry_j4) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j4 > 90) (user_entry_j4 < 0) errordlg('input Joint 4 tidak boleh lebih dari 90 derajat atau Kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j4,'value') == get(handles.positif_j4,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string',''); ; ; % function untuk mem-validasi dan memasukkan sudut dari joint 5 function varargout = Input_J5_Callback(h, eventdata, handles, varargin) global user_entry_j5 user_entry_j5 = str2double(get(h,'string')); if isnan(user_entry_j5) errordlg('masukkan Angka!','Harus Angka','modal') set(h,'string',''); if (user_entry_j5 > 0) (user_entry_j5 < 0) errordlg('input Joint 5 tidak boleh lebih atau kurang dari 0 derajat','batas derajat','modal') set(h,'string',''); if (get(handles.negatif_j5,'value') == get(handles.positif_j5,'value')) errordlg('tentukan dulu arahnya','arah','modal'); set(h,'string','');

40 L40 ; ; % Function bagi tombol reset yang akan menghapus semua input baik arah maupun sudut-sudut joint function varargout = Reset_Callback(h, eventdata, handles, varargin) set(handles.negatif_j1,'value',0); set(handles.positif_j1,'value',0); set(handles.negatif_j2,'value',0); set(handles.positif_j2,'value',0); set(handles.negatif_j3,'value',0); set(handles.positif_j3,'value',0); set(handles.negatif_j4,'value',0); set(handles.positif_j4,'value',0); set(handles.negatif_j5,'value',0); set(handles.positif_j5,'value',0); set(handles.input_j1,'string',''); set(handles.input_j2,'string',''); set(handles.input_j3,'string',''); set(handles.input_j4,'string',''); set(handles.input_j5,'string',''); % Funtion untuk mengambil input, memproses melalui perhitungan direct Kinematics, lalu hasilnya ditampilkan function varargout = Kalkulasi_Direct_Callback(h, eventdata, handles, varargin) global user_entry_j1 user_entry_j2 user_entry_j3 user_entry_j4 user_entry_j5 Theta1 Theta2 Theta3 Theta4 Theta5 if isempty(get(handles.input_j1,'string')) isempty(get(handles.input_j2,'string')) isempty(get(handles.input_j3,'string')) isempty(get(handles.input_j4,'string')) isempty(get(handles.input_j5,'string')), errordlg('masih ada input yang kurang nih!','kurang lengkap','modal') %Mengambil input untuk Theta1, Theta2, Theta3, Theta4 dan Theta5 if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics

41 L41 if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1;

42 L42 Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))...

43 L43 & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics

44 L44 Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'));

45 L45 Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'max')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string')); HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))...

46 L46 & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'min'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'max'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string'))*-1; Theta4 = str2double(get(handles.input_j4,'string')); Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'min'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'max'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string'))*-1; Theta2 = str2double(get(handles.input_j2,'string')); Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1; Theta5 = str2double(get(handles.input_j5,'string'))*-1; HitDirect %Function untuk menghitung input direct Kinematics Menu22 %buka menu tampilan hasil perhitungan Direct Kinematics if (get(handles.positif_j1,'value') == get(handles.positif_j1,'max'))... & (get(handles.positif_j2,'value') == get(handles.positif_j2,'min'))... & (get(handles.positif_j3,'value') == get(handles.positif_j3,'max'))... & (get(handles.positif_j4,'value') == get(handles.positif_j4,'min'))... & (get(handles.positif_j5,'value') == get(handles.positif_j5,'min')) Theta1 = str2double(get(handles.input_j1,'string')); Theta2 = str2double(get(handles.input_j2,'string'))*-1; Theta3 = str2double(get(handles.input_j3,'string')); Theta4 = str2double(get(handles.input_j4,'string'))*-1;

Program di computer (visual basic) Private Sub Command1_Click() End Sub. Private Sub Command2_Click() End Sub. Private Sub Command3_Click() End Sub

Program di computer (visual basic) Private Sub Command1_Click() End Sub. Private Sub Command2_Click() End Sub. Private Sub Command3_Click() End Sub Program di computer (visual basic) Private Sub Command1_Click() MSComm1.Output = "a" 'kirimkan nilai a ke port serial Private Sub Command2_Click() MSComm1.Output = "b" 'kirimkan nilai b ke port serial

Lebih terperinci

DAFTAR PUSTAKA. Mikrokontroler AT89S51. Jakarta: Universitas Mercubuana. Christanto, Danny Panduan Dasar Mikrokontroler Keluarga MCS-51.

DAFTAR PUSTAKA. Mikrokontroler AT89S51. Jakarta: Universitas Mercubuana. Christanto, Danny Panduan Dasar Mikrokontroler Keluarga MCS-51. DAFTAR PUSTAKA Halim, Abdul. 2009. Sistem Absensi Kelas Menggunakan RFID Berbasis Mikrokontroler AT89S51. Jakarta: Universitas Mercubuana. Christanto, Danny. 2004. Panduan Dasar Mikrokontroler Keluarga

Lebih terperinci

Cropping_Merging_Transparent

Cropping_Merging_Transparent PRAKTIKUM VI Cropping_Merging_Transparent Tujuan Memberikan pengertian perlunya dilakukan penggabungan gambar Memberikan contoh penggabungan gambar Teori Penunjang Gambar Percobaan Prosedur Percobaan 1.

Lebih terperinci

LAMPIRAN. Percobaan Untuk Mendapatkan Parameter Parameter Motor induksi 3 Fasa

LAMPIRAN. Percobaan Untuk Mendapatkan Parameter Parameter Motor induksi 3 Fasa LAMPIRAN Percobaan Untuk Mapatkan Parameter Parameter Motor induksi 3 Fasa Untuk dapat menentukan parameter parameter motor induksi 3 fasa rotor sangkar, maka dapat dilakukan dengan percobaan berikut ini:

Lebih terperinci

BAB III PEMBAHASAN MASALAH

BAB III PEMBAHASAN MASALAH BAB III PEMBAHASAN MASALAH Aplikasi yang dibuat oleh penulis adalah aplikasi yang dapat menjalankan atau memainkan file file multimedia khusus bereksientensi *.mp3, *.mpg, dan *.avi, karena itu penulis

Lebih terperinci

BAB IV PENGUJIAN DAN ANALISA

BAB IV PENGUJIAN DAN ANALISA BAB IV PENGUJIAN DAN ANALISA 4.1 Analisa dan Pengujian Alat lunak. Pada bab pengujian dan analisa dilakukan pada perangkat keras dan perangkat 4.2 Perangkat Keras Adapun perangkat keras yang akan dianalisi

Lebih terperinci

Private Sub cmdprint_click() WebBrowser1.ExecWB OLECMDID_PRINT,OLECMDEXECOPT_DODEFAULT End Sub

Private Sub cmdprint_click() WebBrowser1.ExecWB OLECMDID_PRINT,OLECMDEXECOPT_DODEFAULT End Sub Lampiran 1 Form Utama Aplikasi Web Browser Dim counter As Integer Private Sub cmdback_click() WebBrowser1.GoBack Private Sub cmdbuka_click() CommonDialog1.CancelError = True On Error GoTo Cancel CommonDialog1.Filter

Lebih terperinci

PENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51

PENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51 PENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51 Penghitung waktu yang dimulai dengan menekan tombol start dan stop atau lebih dikenal dengan stop watch sudah banyak terdapat pada arloji-arloji digital

Lebih terperinci

Pre Processing. Memberikan gambaran jenis-jenis pre-processing

Pre Processing. Memberikan gambaran jenis-jenis pre-processing PRAKTIKUM II Pre Processing Tujuan Memberikan gambaran jenis-jenis pre-processing Teori Penunjang Prosedur Percobaan 1. Berikut ini percobaan konversi dari gambar RGB menjadi Gray Scale. 2. Gunakan proyek

Lebih terperinci

PERCOBAAN 2 SAKLAR PUSH BUTTON

PERCOBAAN 2 SAKLAR PUSH BUTTON TUJUAN: PERCOBAAN 2 SAKLAR PUSH BUTTON 1. Memahami rangkaian mikrokontroller dengan interface ke saklar 2. Memahami program assembly untuk mengambil data saklar dan mengeluarkan data ke LED. 3. Memahami

Lebih terperinci

Kompensasi Pencahayaan

Kompensasi Pencahayaan PRAKTIKUM III Kompensasi Pencahayaan Tujuan Memberikan pengertian perlunya dilakukan pengaturan pencahayaan Memberikan contoh macam-macam cara pengaturan pencahayaan Teori Penunjang Gambar Percobaan Prosedur

Lebih terperinci

PENAMPIL TOMBOL-TOMBOL REMOTE CONTROL SONY PADA M1632 LCD OLEH MODUL DST-52

PENAMPIL TOMBOL-TOMBOL REMOTE CONTROL SONY PADA M1632 LCD OLEH MODUL DST-52 PENAMPIL TOMBOL-TOMBOL REMOTE CONTROL SONY PADA M1632 LCD OLEH MODUL DST-52 Pada artikel-artikel sebelumnya, banyak dibahas penggunaan keypad ataupun PC keyboard sebagai media input data dari suatu system

Lebih terperinci

Praktekum VB 6.0 I. KOTAK PESAN. Contoh syntax kotak pesan

Praktekum VB 6.0 I. KOTAK PESAN. Contoh syntax kotak pesan Praktekum VB 6.0 Oleh : Bohal K. Simorangkir, S.Kom STMIK Parna Raya, Manado ========================== I. KOTAK PESAN Contoh syntax kotak pesan Private Sub Command2_Click() Dim pesan As String pesan =

Lebih terperinci

E-Trick Visual Basic 6.0

E-Trick Visual Basic 6.0 DISCLAIMER Seluruh dokumen E-Trik di dalam CD ini dapat digunakan dan disebarkan secara bebas untuk tujuan belajar bukan komersial (non-profit), dengan syarat tidak menghapus atau merubah atribut penulis

Lebih terperinci

Pengendalian 8 buah Motor oleh DST-51

Pengendalian 8 buah Motor oleh DST-51 Ib2 Pengendalian 8 buah Motor oleh DST-51 Pada aplikasinya, seringkali suatu sistem mikrokontroler digunakan untuk mengendalikan beberapa buah motor secara bersamaan. Berikut ini adalah pengendalian delapan

Lebih terperinci

Wireless Infrared Printer dengan DST-51 (Pengambilan Data dari Standard Parallel Port)

Wireless Infrared Printer dengan DST-51 (Pengambilan Data dari Standard Parallel Port) Wireless Infrared Printer dengan DST-51 (Pengambilan Data dari Standard Parallel Port) Untuk merancang sebuah perangkat yang dapat mengirimkan data dari PC Parallel Port ke Printer secara wireless, maka

Lebih terperinci

Universitas Sumatera Utara

Universitas Sumatera Utara ; = = = = = = = = = = = = = = = ; ; prog.pengaman rumah ; ; = = = = = = = = = = = = = = = ; ;== initialisasi port uc ==; motor1 bit p1.0 motor2 bit p1.1 motor3 bit p1.2 motor4 bit p1.3 alarm bit p2.3 hape

Lebih terperinci

OPERASI FILE Operasi File Dalam Visual Basic Membuka File

OPERASI FILE Operasi File Dalam Visual Basic Membuka File 9 OPERASI FILE 9.1. Operasi File Dalam Visual Basic Visual Basic menyediakan suatu fasilitas untuk membaca, menyimpan dan memperbaiki file data, sehingga memungkinkan untuk memisahkan data dengan program,

Lebih terperinci

Lampiran A. Program Visualisasi Cuaca Otomatis

Lampiran A. Program Visualisasi Cuaca Otomatis Lampiran A. Program Visualisasi Cuaca Otomatis Form1-1 'Fungsi Explicit menggunakan lybrary yang telah tersedia Option Explicit Private Declare Function joygetdevcaps Lib "winmm.dll" Alias "joygetdevcapsa"

Lebih terperinci

PENGGUNAAN KEYPAD 4X3 DAN PC KEYBOARD PADA MODUL DST-52 DENGAN TAMPILAN M1632 LCD

PENGGUNAAN KEYPAD 4X3 DAN PC KEYBOARD PADA MODUL DST-52 DENGAN TAMPILAN M1632 LCD PENGGUNAAN KEYPAD 4X3 DAN PC KEYBOARD PADA MODUL DST-52 DENGAN TAMPILAN M1632 LCD Setelah kita bahas penggunaan keypad 4x3 (tipe KP-43865) dengan metode penulisan karakter pada keypad handphone di mana

Lebih terperinci

PENULISAN KARAKTER DENGAN MENGGUNAKAN TEKNIK PENULISAN PADA KEYPAD HANDPHONE OLEH MODUL DST-51, KEYPAD 4X3 DAN M1632 LCD

PENULISAN KARAKTER DENGAN MENGGUNAKAN TEKNIK PENULISAN PADA KEYPAD HANDPHONE OLEH MODUL DST-51, KEYPAD 4X3 DAN M1632 LCD PENULISAN KARAKTER DENGAN MENGGUNAKAN TEKNIK PENULISAN PADA KEYPAD HANDPHONE OLEH MODUL DST-51, KEYPAD 4X3 DAN M1632 LCD Keypad 4x3 adalah merupakan keypad dengan konfigurasi 4 baris dan 3 kolom dan terdiri

Lebih terperinci

MENAMPILKAN 1000 KARAKTER PESAN PADA MODUL M1632 LCD OLEH MODUL DST-51

MENAMPILKAN 1000 KARAKTER PESAN PADA MODUL M1632 LCD OLEH MODUL DST-51 MENAMPILKAN 1000 KARAKTER PESAN PADA MODUL M1632 LCD OLEH MODUL DST-51 Aplikasi ini akan membahas bagaimana proses penampilan pesan sebanyak 1000 karakter pada layar M1632 LCD. Untuk menampilkan pesan

Lebih terperinci

MESIN KETIK ELEKTRONIK DENGAN TAMPILAN M1632 LCD OLEH MODUL DST-52

MESIN KETIK ELEKTRONIK DENGAN TAMPILAN M1632 LCD OLEH MODUL DST-52 MESIN KETIK ELEKTRONIK DENGAN TAMPILAN M1632 LCD OLEH MODUL DST-52 Akhir-akhir ini, keberadaan mesin ketik sudah mulai tergusur dengan adanya printer. Namun sebuah printer membutuhkan komputer untuk mengendalikannya.

Lebih terperinci

Teknik Interface Keypad 4x3 ke DST-51

Teknik Interface Keypad 4x3 ke DST-51 Teknik Interface Keypad 4x3 ke DST-51 Keypad 4x3 di sini adalah sebuah keypad matrix dengan susunan empat baris dan tiga kolom dengan sebuah common. R1 R2 R3 R4 1 2 3 4 5 6 7 8 9 * 9 # C1 C2 C3 Gambar

Lebih terperinci

PERCOBAAN 3. KONTROL DISPLAY 7-SEGMENT Menggunakan DT-51 MinSys

PERCOBAAN 3. KONTROL DISPLAY 7-SEGMENT Menggunakan DT-51 MinSys PERCOBAAN 3 KONTROL DISPLAY 7-SEGMENT Menggunakan DT-5 MinSys Membuat proses kontrol display seven segment menggunakan SWITC sebagai set () dan reset (L) program. Membuat program Counter baik Up Counter

Lebih terperinci

PROGRAM INTERFACING AUDIO DAN VIDEO DENGAN PROGRAM VISUAL BASIC LAPORAN TUGAS KARYA TULIS INTERFACING

PROGRAM INTERFACING AUDIO DAN VIDEO DENGAN PROGRAM VISUAL BASIC LAPORAN TUGAS KARYA TULIS INTERFACING PROGRAM INTERFACING AUDIO DAN VIDEO DENGAN PROGRAM VISUAL BASIC LAPORAN TUGAS KARYA TULIS INTERFACING Di susun oleh Nama : Andy Budi Setiawan NIM : 13081324 Kelas : 13.5B.11 Dosen : Juniar Sinaga Jurusan

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN. dan menjelasan berbagai hal yang berhubungan dengan pengujian.

BAB IV IMPLEMENTASI DAN PENGUJIAN. dan menjelasan berbagai hal yang berhubungan dengan pengujian. BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Setelah tahap analisis dan perancangan sistem sebagai tindak lanjut penyelesaian perancangan aplikasi tersebut. Maka dilakukan implementasi dari program

Lebih terperinci

Menjelaskan variabel aksi sebagai data string nilai,hasil dan simpan sebagai data double.

Menjelaskan variabel aksi sebagai data string nilai,hasil dan simpan sebagai data double. 1. Public Class Form1 Dim aksi As String Dim nilai As Double Dim hasil As Double Dim simpan As Double Menjelaskan variabel aksi sebagai data string nilai,hasil dan simpan sebagai data double. 2. Private

Lebih terperinci

DAFTAR PUSTAKA. Agfianto Eko Putra, BELAJAR MIKROKONTROLLER AT89C51/52/53, Gava Media, 2005.

DAFTAR PUSTAKA. Agfianto Eko Putra, BELAJAR MIKROKONTROLLER AT89C51/52/53, Gava Media, 2005. DAFTAR PUSTAKA Dr.Sjukri Karim, Dr Peter Kabo, EKG dan Penanggulangan beberapa penyakit jantung untuk dokter umum, Fakultas Kedokteran Unversitas Indonesia, 1996. Hendra Marwazi ST. MT, Anshor Usman Ibrahim

Lebih terperinci

Kompensasi Pencahayaan

Kompensasi Pencahayaan PRAKTIKUM IV Kompensasi Pencahayaan Tujuan Memberikan pengertian perlunya dilakukan pengaturan pencahayaan Memberikan contoh macam-macam cara pengaturan pencahayaan Teori Penunjang Gambar Percobaan Prosedur

Lebih terperinci

PENGATURAN KECEPATAN MOTOR DENGAN PC OLEH DST-5 2

PENGATURAN KECEPATAN MOTOR DENGAN PC OLEH DST-5 2 PENGATURAN KECEPATAN MOTOR DENGAN PC OLEH DST-5 2 Penggunaan motor DC dewasa ini sudah sangatlah umum, salah satu kelebihan motor DC adalah relatif gampang didapat dan mudah diatur kecepatan putarnya.

Lebih terperinci

LAMPIRAN A: LISTING PROGRAM

LAMPIRAN A: LISTING PROGRAM LAMPIRAN A: LISTING PROGRAM function varargout = FigUtama(varargin) % FIGUTAMA M-file for FigUtama.fig % FIGUTAMA, by itself, creates a new FIGUTAMA or raises the % existing % singleton*. % % H = FIGUTAMA

Lebih terperinci

Pre Processing. Memberikan gambaran jenis-jenis pre-processing

Pre Processing. Memberikan gambaran jenis-jenis pre-processing PRAKTIKUM IIb Pre Processing Tujuan Memberikan gambaran jenis-jenis pre-processing Teori Penunjang Prosedur Percobaan. Pada percobaan beikut ini merupakan kelanjutan dari percobaan berikutnya mengenai

Lebih terperinci

MODUL IV PERULANGAN ( LOOPING )

MODUL IV PERULANGAN ( LOOPING ) MODUL IV PERULANGAN ( LOOPING ) beberapa jenis perulangan dalam pemrograman Visual Basic pada umumnya tidak jauh berbeda dengan bahasa pemrograman lainnya, berikut ialah beberapa jenis looping ( perulangan

Lebih terperinci

DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51

DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51 DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51 (Dikemas oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail : sumarna@uny.ac.id) No. Instruksi Deskripsi Contoh 1. ADD A,R n Menambahkan isi A dengan isi

Lebih terperinci

BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN

BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN 4.1 Prinsip Kerja Rangkaian Rangkaian ini bekerja berdasarkan dua buah sensor yang di pasang secara berdampingan, dengan memanfaatkan Phototransistor sebagai

Lebih terperinci

BAB III PERANCANGAN ALAT DAN PROGRAM. Gambar 3.1. Blok Diagram

BAB III PERANCANGAN ALAT DAN PROGRAM. Gambar 3.1. Blok Diagram BAB III PERANCANGAN ALAT DAN PROGRAM 3.1. Blok Diagram Sistem Blok diagram merupakan penyederhanaan dari rangkaian yang menyatakan hubungan berurutan dari satu atau lebih rangkaian yang memiliki kesatuan

Lebih terperinci

INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER

INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER INSTRUKSI DAN BAHASA PEMOGRAMAN MIKROKONTROLER Yoyo Somantri dan Erik Haritman Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia Pendahuluan Dalam bab ini akan dibahas tujuan

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS

BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS 29 BAB III ANALISIS DAN PERANCANGAN APLIKASI 3.1 ANALISIS Dengan menggunakan Visual Basic 6.0 aplikasi perangkat ajar pengelolaan dan perhitungan ekspresi matematika yang akan dibangun dalam penelitian

Lebih terperinci

DAFTAR PUSTAKA. Multimedia Control, Steven Holzner. Diakses pada tanggal 14/09/2011 Dari

DAFTAR PUSTAKA. Multimedia Control, Steven Holzner. Diakses pada tanggal 14/09/2011 Dari DAFTAR PUSTAKA CommonDialog Control, 2011.Visual Basic 6.0. Diakses pada tanggal 14/09/2011 http://msdn.microsoft.com/en-us/library/aa259661%28v=vs.60%29.aspx Forrest Moon Production, 2010. The Birth Of

Lebih terperinci

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN (132 05 110)/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius Abstrak pada praktikum kali ini, praktikan diharapkan mampu membuat

Lebih terperinci

DT-51 Application Note

DT-51 Application Note DT-51 Application Note AN14 - How 2 Use DT-51 KND with DT-51 MinSys ver 3.0 oleh: Tim IE & Sapto Jayadi Sutandi (Universitas Kristen Petra) Sesuai namanya, application note ini menjelaskan tentang penggunaan

Lebih terperinci

Program absen dengan menggunakan visual basic 6.0

Program absen dengan menggunakan visual basic 6.0 Program absen dengan menggunakan visual basic 6.0 Pajrin Wurika Sahara Wurika.sahara@gmail.com Abstrak Visual Basic merupakan sebuah bahasa pemrograman yang menawarkan Integrated Development Environment

Lebih terperinci

Memprogram Port sebagai Output dan Input Sederhana

Memprogram Port sebagai Output dan Input Sederhana BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram Port sebagai Input dan Output sederhana menggunakan bahasa pemrograman assembly Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami Konstruksi

Lebih terperinci

Lampiran 2 Rangkaian Lengkap

Lampiran 2 Rangkaian Lengkap Lampiran 2 Rangkaian Lengkap Lampiran 1 Program Rangkaian di mikrokontroler AT89S52 bil0 equ 21h bil1 equ 0edh bil2 equ 19h bil3 equ 89h bil4 equ 0c5h bil5 equ 83h bil6 equ 3h bil7 equ 0e9h bil8 equ 01h

Lebih terperinci

LAMPIRAN D DATA SHEET

LAMPIRAN D DATA SHEET LAMPIRAN D DATA SHEET D-1 D-2 D-3 D-4 D-5 D-6 D-7 D-8 D-9 D-10 D-11 Instruksi-instruksi Keluarga MCS51 A. Operasi Aritmatika 1. ADD ADD A,Rn Tambahkan Akumulator A dengan Rn di mana n = 0 7 dan simpan

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN. dan tempat implementasi dari perangkat lunak ini adalah sebagai berikut :

BAB IV IMPLEMENTASI DAN PENGUJIAN. dan tempat implementasi dari perangkat lunak ini adalah sebagai berikut : BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 IMPLEMENTASI PERANGKAT LUNAK Lingkungan perangkat keras yang digunakan untuk perancangan sistem dan tempat implementasi dari perangkat lunak ini adalah sebagai berikut

Lebih terperinci

MODUL 2 Variabel, Val, If tunggal dan If bersarang + case

MODUL 2 Variabel, Val, If tunggal dan If bersarang + case MODUL 2 Variabel, Val, If tunggal dan If bersarang + case 1. variabel suatu tempat dalam memori yang diberi nama (sebagai pengenal) dan dialokasikan untuk menampung data. Sintax : Dim_namavariabel_As_typedata

Lebih terperinci

Register-register MT8888

Register-register MT8888 Register-register MT8888 MT8888 mempunyai 3 buah register yaitu Register Kontrol untuk mengatur kerja IC MT8888, Register Status untuk melihat status IC MT8888 dan Register Data untuk mengirim dan menerima

Lebih terperinci

LISTING PROGRAM. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) ShowInputForm End Sub

LISTING PROGRAM. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) ShowInputForm End Sub LISTING PROGRAM 1. Listing Menu Utama Option Explicit Private ntime As Integer Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) ShowInputForm Private Sub Form_Load() ntime = 0 Private Sub

Lebih terperinci

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut :

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut : BAB III PERANCANGAN SISTEM 3.1. Diagram Blok Secara garis besar rangkaian pengendali peralatan elektronik dengan menggunakan PC, memiliki 6 blok utama, yaitu personal komputer (PC), Mikrokontroler AT89S51,

Lebih terperinci

LISTING PROGRAM FORM MENU UTAMA. Private Sub Command1_Click() Unload Me Form2.Show End Sub. Private Sub Command3_Click() Form10.

LISTING PROGRAM FORM MENU UTAMA. Private Sub Command1_Click() Unload Me Form2.Show End Sub. Private Sub Command3_Click() Form10. LISTING PROGRAM FORM MENU UTAMA Form2.Show Form10.Show Form11.Show Private Sub Command5_Click() Private Sub Command6_Click() Form12.Show Private Sub Timer1_Timer() Label3.Caption = Time Label4.Caption

Lebih terperinci

LAMPIRAN. Kode Program Menu Utama

LAMPIRAN. Kode Program Menu Utama 1 LAMPIRAN Kode Program Menu Utama Dim LetakTengah As Integer Private Declare Function PlaySound Lib "winmm.dll" Alias _ "PlaySoundA" (ByVal lpszname As String, ByVal hmodule As Long, _ ByVal dwflags As

Lebih terperinci

KOMUNIKASI DATA DENGAN MENGGUNAKAN TEKNIK RS485

KOMUNIKASI DATA DENGAN MENGGUNAKAN TEKNIK RS485 KOMUNIKASI DATA NGAN MENGGUNAKAN TEKNIK RS485 RS485 adalah teknik komunikasi data serial yang dikembangkan di tahun 1983 di mana dengan teknik ini, komunikasi data dapat dilakukan pada jarak yang cukup

Lebih terperinci

BAB IV PENGUJIAN DAN EVALUASI SISTEM. Pengujian dan evaluasi sistem pada tugas akhir ini meliputi perangkat

BAB IV PENGUJIAN DAN EVALUASI SISTEM. Pengujian dan evaluasi sistem pada tugas akhir ini meliputi perangkat BAB IV PENGUJIAN DAN EVALUASI SISTEM Pengujian dan evaluasi sistem pada tugas akhir ini meliputi perangkat keras elektonika dan perangkat lunak yang telah dibuat. Pengujian pada perangkat keras elektronika

Lebih terperinci

MENGELOLA FILE. - Untuk menampilkan file, perlu membuka direktori penyimpanannya.

MENGELOLA FILE. - Untuk menampilkan file, perlu membuka direktori penyimpanannya. MENGELOLA FILE Menampilkan File - Untuk menampilkan file, perlu membuka direktori penyimpanannya. - File disimpan pada susunan bertingkat-tingkat dan akan lebih mudah apabila organisasi file menggunakan

Lebih terperinci

Penggunaan Struktur Kontrol Pengulangan. Adi Rachmanto,S.Kom Prodi Akuntansi - UNIKOM

Penggunaan Struktur Kontrol Pengulangan. Adi Rachmanto,S.Kom Prodi Akuntansi - UNIKOM Penggunaan Struktur Kontrol Pengulangan Adi Rachmanto,S.Kom Prodi Akuntansi - UNIKOM Struktur kontrol di dalam bahasa pemrograman adalah perintah dengan bentuk (struktur) tertentu yang digunakan untuk

Lebih terperinci

PEMROGRAMAN VISUAL BASIC

PEMROGRAMAN VISUAL BASIC PEMROGRAMAN VISUAL BASIC Setelah memahami bahasa Visual Basic dasar untuk menuliskan kode program, langkah selanjutnya adalah mempelajari pemrograman VB itu sendiri. 6.1 Sub Procedure Sejauh ini, Anda

Lebih terperinci

AD Channel AD Conversion

AD Channel AD Conversion AD-0809 8 Channel AD Conversion Fitur: - 8 Channel Multiplex Analog Input - 0 5 Volt Analog Input - 4 Interrupt Output Selector - 4 Address Selector - Kompatibel DST-51 Minimum System & SC-51 - Free Running

Lebih terperinci

Mengenal bahasa assembly

Mengenal bahasa assembly Mengenal bahasa assembly adiatma adiatma@raharja.info Abstrak Komputer adalah mesin penghitung elektronik yang cepat dan dapat menerima informasi input digital, kemudian memprosesnya sesuai dengan program

Lebih terperinci

Sesi/Perkuliahan ke: XII

Sesi/Perkuliahan ke: XII Sesi/Perkuliahan ke: XII Tujuan Instruksional Khusus : 1. Mahasiswa mengerti dan memahami penggunaan Database dalam Visual Basic 2. Mahasiswa mengerti cara menampilkan file 3. Mahasiswa mengerti cara menyaring

Lebih terperinci

Pengenalan Dan Contoh Penggunaan Sederhana Fungsi Looping Pada Visual Basic

Pengenalan Dan Contoh Penggunaan Sederhana Fungsi Looping Pada Visual Basic Pengenalan Dan Contoh Penggunaan Sederhana Fungsi Looping Pada Visual Basic Muhamad Burhanudin Muhamadburhanudin981@gmail.com Abstrak Looping atau perulangan merupakan salah satu hal terpenting yang harus

Lebih terperinci

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT)

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT) PERCOBAAN 2 DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT) Menggunakan DT-51 MinSys Mengamati keluaran data berupa nyala LED setelah proses pemindahan data (akses eksternal) dari sebuah

Lebih terperinci

LISTING PROGRAM. Public Declare Sub PortOut Lib "io.dll" (ByVal Port As Integer, ByVal Value As Byte)

LISTING PROGRAM. Public Declare Sub PortOut Lib io.dll (ByVal Port As Integer, ByVal Value As Byte) 43 LISTING PROGRAM Skrip Modul pada Server Public Declare Sub PortOut Lib "io.dll" (ByVal Port As Integer, ByVal Value As Byte) Kode Program Aplikasi Server Option Explicit Private Sub Form_Load() Winsock1.LocalPort

Lebih terperinci

1. Buka Visual Basic 6 sobat. Buat project baru, masukkan componen Microsoft Winsock Control 2. Masukkan coding berikut

1. Buka Visual Basic 6 sobat. Buat project baru, masukkan componen Microsoft Winsock Control 2. Masukkan coding berikut Membuat Sendiri DDoS Tool Dengan Visual Basic 6 Saat ini banyak bertebaran DDoS Tool yang bisa kita jumpai di dunia maya ini. DDoS ( Distributed Denial of Service ) adalah sebuah tipe serangan dari hacker

Lebih terperinci

BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR

BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR BAB-2 : TIPE DATA, VARIABEL DAN OPERATOR Setelah selesai pembahasan pada bab ini, diharapkan Anda dapat : Mengenal dan dapat menggunakan tipe data Mengenal dan menggunakan variable Mengenal dan menggunakan

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN BAB IV IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan dijelaskan mengenai perancangan aplikasi Traffic Light Control System berbasis jaringan dan pengawasan traffic dengan kamera berdasarkan jam kantor sampai

Lebih terperinci

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

ANTAR MUKA DST-51 DENGAN MODUL AD-0809 ANTAR MUKA DST-51 DENGAN MODUL AD-0809 ADC0809 ADC0809 adalah IC pengubah tegangan analog menjadi digital dengan masukan berupa 8 kanal input yang dapat dipilih. IC ADC0809 dapat melakukan proses konversi

Lebih terperinci

Akuisasi data dengan remote host AT89s51 melalui serial RS232

Akuisasi data dengan remote host AT89s51 melalui serial RS232 Akuisasi data dengan remote host AT89s51 melalui serial RS232 I. Tujuan 1. Mahasiswa mampu merealisasikan sebuah system data jarak jauh dengan remote host berbasis MCS51 yang terhubung pada pc melalui

Lebih terperinci

APLIKASI MODUL DST -52 SEBAGAI JAM DIGITAL DENGAN INPUT DARI PC KEYBOARD DAN M1632 LCD SEBAGAI PENAMPIL

APLIKASI MODUL DST -52 SEBAGAI JAM DIGITAL DENGAN INPUT DARI PC KEYBOARD DAN M1632 LCD SEBAGAI PENAMPIL APLIKASI MODUL DST -52 SEBAGAI JAM DIGITAL DENGAN INPUT DARI PC KEYBOARD DAN M1632 LCD SEBAGAI PENAMPIL Pada artikel kali ini akan dibahas contoh bagaimana menggabungkan antara modul RTC-1287, modul LCD

Lebih terperinci

de KITS Application Note AN24 - How 2 Use de KITS Phone Interface with DT-51 MinSys ver 3.0

de KITS Application Note AN24 - How 2 Use de KITS Phone Interface with DT-51 MinSys ver 3.0 de KITS Application Note AN24 - How 2 Use de KITS Phone Interface with DT-51 MinSys ver 3.0 oleh: Tim IE & Stevy Suwarno (Universitas Kristen Petra) Application note ini menjelaskan tentang penggunaan

Lebih terperinci

Memprogram Interface Motor

Memprogram Interface Motor BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram interface motor Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami dasar-dasar interface motor stepper 2. Mahasiswa memahami pemrograman

Lebih terperinci

LISTING PROGRAM. Script Menu Utama Pada Game Tebak Kata

LISTING PROGRAM. Script Menu Utama Pada Game Tebak Kata LISTING PROGRAM Script Menu Utama Pada Game Tebak Kata Dim kesempatan As Integer Dim nilai As Integer Dim arrkataasli(20) As String Dim kataasli As String Dim arrhurufharushilang(20) As String Dim hurufharushilang

Lebih terperinci

BAB IV PERANCANGAN. Gambar diatas adalah tampilang awal ketika ingin memulai project baru. Pilih Standart EXE untuk memulai project.

BAB IV PERANCANGAN. Gambar diatas adalah tampilang awal ketika ingin memulai project baru. Pilih Standart EXE untuk memulai project. BAB IV PERANCANGAN 4.1 Perancangan Visual Basic 6.0 Dalam perancangan aplikasi perancangan data menggunakan visual basic 6.0 langkah pertama adalah dengan membuat Form Home Gambar 4.1 New Project Gambar

Lebih terperinci

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD Pada aplikasi-aplikasi menggunakan saluran telephone, proses deteksi nada DTMF maupun sinyal dering seringkali dibutuhkan,

Lebih terperinci

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys Percobaan 5 TIMER/COUNTER Menggunakan DT-51 MinSys Menggunakan Timer/Counter pada DT-51 Mininum System sebagai timer ataupun sebagai counter. Memanfaatkan Special Fungtion Register (SFR) untuk mengatur

Lebih terperinci

BAB III PERENCANAAN DAN REALISASI

BAB III PERENCANAAN DAN REALISASI BAB III PERENCANAAN DAN REALISASI 3.1 Deskripsi Sistem Nama Sistem :Simulasi Monitoring Downtime Mesin Dengan Visual Basic 6.0 Fungsi :Pencatatan Downtime Mesin. Keunggulan : Mencatat Downtime Mesin Secara

Lebih terperinci

PROGRAMMABLE TIMER DENGAN TAMPILAN M1632 LCD MENGGUNAKAN MODUL DST-51

PROGRAMMABLE TIMER DENGAN TAMPILAN M1632 LCD MENGGUNAKAN MODUL DST-51 PROGRAMMABLE TIMER DENGAN TAMPILAN M1632 LCD MENGGUNAKAN MODUL DST-51 Perangkat timer adalah merupakan sebuah perangkat yang seringkali digunakan untuk sebuah sistem elektronik. Artikel berikut ini akan

Lebih terperinci

FUNGSI PENCABANGAN DAN PERULANGAN

FUNGSI PENCABANGAN DAN PERULANGAN Hal - 1 - FUNGSI PENCABANGAN DAN PERULANGAN Kedua fungsi ini sangat banyak digunakan dalam proses pemrograman. Kita akan mencobanya dalam sebuah program non database. Fungsi pencabangan dan perulangan

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN 63 BAB IV IMPLEMENTASI DAN PENGUJIAN Implementasi adalah tahapan yang dilakukan oleh penulis setelah perancangan, implementasi merupakan pengkodean dari hasil perancangan. aplikasi Bantu untuk mengukur

Lebih terperinci

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT)

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT) Percobaan DASAR INPUT/OUTPUT () (PORT PPI DAN PORT SEBAGAI OUTPUT) Menggunakan DT-5 MinSys Mengamati keluaran data berupa nyala LED setelah proses pemindahan data (akses eksternal) dari sebuah register

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Aplikasi Secara sederhana implementasi bisa diartikan pelaksanaan atau penerapan (Kamus Besar Bahasa Indonesia 374). Pengertian tersebut memperlihatkan

Lebih terperinci

Flowchart Bagian Pemancar

Flowchart Bagian Pemancar Flowchart Bagian Pemancar START Baca Nilai EEPROM pemancar Masukkan Nilai EEPROM ke Counter BACA SENSOR TIDAK Nilai Sensor = 1? YA Counter + 1 Masukkan Nilai Counter Ke EEPROM Biaya = Nilai Counter x 3

Lebih terperinci

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode ) Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode ) Mikroprosessor 8051, sebagaimana terdaftar dalam 8051 set instruction in numerical order memiliki sekumpulan instruksi yang terintegrasi

Lebih terperinci

VISUAL BASIC 6.0 SETYO BUDI, M.KOM.

VISUAL BASIC 6.0 SETYO BUDI, M.KOM. VISUAL BASIC 6.0 SETYO BUDI, M.KOM 1 Pendahuluan Program adalah suatu proses yang saling menyambung. Untuk mencapai tujuan program harus melalui tahap-tahap tertentu, sehingga dibutuhkan alur program yang

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN BAB IV IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan dijelaskan tentang implementasi dari perangkat lunak mikrokontroler dan komputer, kemudian akan dilakukan proses pengujian terhadap perangkat lunak dengan

Lebih terperinci

Pertemuan 11 type data, deklarasi variabel dan array 1.1 Mengenal Data dan Variabel

Pertemuan 11 type data, deklarasi variabel dan array 1.1 Mengenal Data dan Variabel Pertemuan 11 type data, deklarasi variabel dan array 1.1 Mengenal Data dan Variabel Ketika seorang user (pengguna) menggunakan sebuah program komputer, seringkali komputer memintanya untuk memberikan informasi.

Lebih terperinci

Krisna D. Octovhiana. 1.1 Mengenal Struktur Kontrol.

Krisna D. Octovhiana. 1.1 Mengenal Struktur Kontrol. Cepat Mahir Visual Basic 6.0 mail4krisna@yahoo.com Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit),

Lebih terperinci

Oleh : Uus Rusmawan Hal - 1 Melihat Struktur Tabel Dalam Database Buatlah form dengan bentuk seperti gambar di bawah ini Coding Dim BukaFile As New ADODB.Connection Dim BukaTabel As ADODB.Recordset Dim

Lebih terperinci

PERCOBAAN 3 DISPLAY 7 SEGMEN

PERCOBAAN 3 DISPLAY 7 SEGMEN PERCOBAAN 3 DISPLAY 7 SEGMEN TUJUAN: 1. Memahami rangkaian interface mikrokontroller dengan 7 segmen 2. Memahami program assembly untuk menampilkan data ke 7 segment 3. Memahami beberapa instruksi assembly

Lebih terperinci

LAMPIRAN 1 PROGRAM PADA MIKROKONTROLER ATMEGA 89S52

LAMPIRAN 1 PROGRAM PADA MIKROKONTROLER ATMEGA 89S52 LAMPIRAN 1 PROGRAM PADA MIKROKONTROLER ATMEGA 89S52 MOV TMOD,#20H ; boutrate 9600 stopbit 1, data bit 8, parity none, flow control none MOV SCON,#50H MOV TH1,#-3 SETB TR1 rs equ p2.5 rw equ p2.6 en equ

Lebih terperinci

Menggunakan Bahasa Pemrograman Assembly

Menggunakan Bahasa Pemrograman Assembly BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil menggunakan bahasa pemrograman assembly Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami konstruksi program assembly 2. Mahasiswa memahami proses

Lebih terperinci

1. Rancangan Input Program Form Menu Utama Form Data Barang [ Input Barang ]

1. Rancangan Input Program Form Menu Utama Form Data Barang [ Input Barang ] 1. Rancangan Input Program Form Menu Utama Form Data Barang [ Input Barang ] L-1 Form Data Barang [ Browse ] Form Produksi L-2 Form Faktur Penjualan Form Pembeli L-3 Form Pembeli [ Browse ] Properti Form

Lebih terperinci

Manifold Pressure. Engine Temp

Manifold Pressure. Engine Temp LAMPIRAN 64 Lampiran 1 Data ECU pada data latih Nomor RPM Manifold Pressure Engine Temp Inlet Air Temp Lambda 1 4892 84.2 83 30.9 1.00 2 4927 78.7 83 30.9 0.98 3 5221 72.2 83 30.9 1.01 4 5285 56.1 83 30.9

Lebih terperinci

'...mengambil dan menjalankan perintah yang dituliskan oleh user...

'...mengambil dan menjalankan perintah yang dituliskan oleh user... L1 Listing Program Modul Server Dim counter As Integer Dim StatusData As Integer Dim DataPilahWinsock(0 To 5) As String Dim temp As Variant Dim SendData_Winsock As String Dim MSCOMMBuffer As String Dim

Lebih terperinci

BAB IV PERANCANGAN SISTEM INFORMASI AKUNTANSI BELANJA

BAB IV PERANCANGAN SISTEM INFORMASI AKUNTANSI BELANJA BAB IV PERANCANGAN SISTEM INFORMASI AKUNTANSI BELANJA 4.1 Sistem Informasi Akuntansi Belanja Yang Diusulkan 4.1.1 Kebijakan Sistem Informasi Akuntansi Belanja Yang Diusulkan Adapun kebijakan Kantor Kecamatan

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN BAB IV IMPLEMENTASI DAN PENGUJIAN Pada bab ini akan dijelaskan mengenai implementasi dari sistem yang dibuat. Pembahasan implementasi sistem akan meliputi tampilan koding beserta penjelasannya dan perancangan

Lebih terperinci

Visual Basic 6.0 For Beginners

Visual Basic 6.0 For Beginners Visual Basic 6.0 For Beginners Febryan Hari Purwanto fharipurwanto@gmail.com Chapter 6 Alur Program Kondisi Percabangan Sebuah aplikasi harus memiliki alur program yang baik sehingga tidak akan terjadi

Lebih terperinci

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN 54 BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Setelah melakukan analisis dan perancangan terhadap aplikasi yang akan dibangun, tahapan selanjutnya adalah implementasi dan pengujian. Untuk mengimplementasikan

Lebih terperinci

DISUSUN OLEH : : Friska Rosalina NIM :

DISUSUN OLEH : : Friska Rosalina NIM : DISUSUN OLEH : Nama : Friska Rosalina NIM : 061130500419 2013 PROGRAM BILLING WARNET MICROSOFT VISUAL BASIC Program billing merupakan sistem yang membantu para usahawan untuk mengatur dan mencatat segala

Lebih terperinci