BAB 5 KESIMPULAN
5.2 Saran
Saran dari penulis untuk pengembangan penelitian selanjutnya yaitu 1. Pengembangan sistem dengan metode IoT yang dapat menyimpan dan
mengakses basis data dari server dinas perhubungan darat dan dapat diakses pemilik kendaraan supaya tidak terjadi kecurangan.
2. Bisa dikembangkan alat uji kendaraan bermotor sistem portable, sehingga bisa digunakan untuk pengujian keliling.
3. Bisa dikembangkan pengujian dengan sistem full automatic, yaitu kendaraan masuk kemudian alat siap untuk pengujian secara otomatis tanpa operator.
43
[2] Undang-Undang Republik Indonesia, Undang-Undang Republik Indonesia Nomor 22 Tahun 2009 Tentang Lalu Lintas Dan Angkutan Jalan. Indonesia, 2009, hal. 1–203.
[3] K. Publik dan P. K. Bermotor, “Implementasi Kebijakan Pengujian Kendaraan Bermotor Di Dinas Perhubungan Kabupaten Kepulauan Sangihe,” J. Polit., vol. 10, no. 4, 2021.
[4] C. De Saxe, R. J. Berman, A. Clarke, dan J. D. Reinecke, “Camera-based side-slip measurement for tyre testing,” no. July, 2019.
[5] J. Shao, F. Lin, dan Z. Ye, “Research on automatic verification device for vehicle sideslip tester,” Appl. Mech. Mater., vol. 215–216, hal. 1263–1266, 2012, doi: 10.4028/www.scientific.net/AMM.215-216.1263.
[6] Y. Wu, L. Meng, J. Liu, J. Dai, dan J. Xie, “Research on calibration device based on laser displacement measurement technology for automobile side slip tester,” Guangxue Jishu/Optical Tech., vol. 44, hal. 630–633, Sep 2018.
[7] M. Gadola, D. Chindamo, M. Romano, dan F. Padula, “Development and validation of a Kalman filter-based model for vehicle slip angle estimation,”
Veh. Syst. Dyn., vol. 52, no. 1, hal. 68–84, 2014, doi:
10.1080/00423114.2013.859281.
[8] T. C. Evans, E. Gavrilovich, R. C. Mihai, I. Isbasescu, dan L. Easyg, “( 12 ) Patent Application Publication ( 10 ) Pub . No .: US 2006 / 0222585 A1 Figure 1,” 2015.
[9] A. Gajek dan P. Strzępek, “The analysis of the accuracy of the wheel alignment inspection method on the side-slip plate stand,” IOP Conf. Ser.
Mater. Sci. Eng., vol. 148, hal. 012037, 2016, doi: 10.1088/1757- 899X/148/1/012037.
[10] W. Luty, “Experimental research on tyres in transient sideslip conditions,”
Arch. Motoryz., vol. 66, 2014.
[11] H. F. Grip, L. Imsland, T. A. Johansen, T. I. Fossen, J. C. Kalkkuhl, dan A.
Suissa, “Nonlinear vehicle side-slip estimation with friction adaptation,”
Automatica, vol. 44, no. 3, hal. 611–622, 2008, doi:
10.1016/j.automatica.2007.06.017.
[12] S. G. Barhe dan B. G. Gawalwad, “Measurement of Wheel Alignment using IR,” hal. 8689–8693, 2016, doi: 10.15680/IJIRCCE.2016.
[13] B. L. Boada, M. J. L. Boada, A. Gauchía, E. Olmeda, dan V. Díaz, “Sideslip angle estimator based on ANFIS for vehicle handling and stability,” J. Mech.
Sci. Technol., vol. 29, no. 4, hal. 1473–1481, 2015, doi: 10.1007/s12206- 015-0320-x.
[14] N. Corporation, “Basic Wheel Alignment Fundamentals.” Latest Undercar Service Equipment Luse, Prineville, Oregon, US, hal. 1–11, [Daring].
Tersedia pada: http://lusequip.com/site/1212late/Alignment_Basics.pdf.
[15] G. Stanley, “Exponential Filter,” 2010.
https://gregstanleyandassociates.com/whitepapers/FaultDiagnosis/Filtering/
Exponential-Filter/exponential-filter.htm (diakses Mar 05, 2020).
[16] R. M. Firdaus, B. Supriyo, dan A. Suharjono, “Electronic and GUI Development of Roller Brake Tester,” J. Phys. Conf. Ser., vol. 1273, no. 1, 2019, doi: 10.1088/1742-6596/1273/1/012070.
[17] R. M. Firdaus, B. Supriyo, dan A. Suharjono, “Sistem untuk Analisis Variasi Tindakan Pengereman,” Semin. Nas. aptikom, 2019.
[18] R. Ristiana, A. S. Rohman, A. S. Prihatmanto, dan C. Machbub, “Sistem Kendali Kendaraan untuk Keselamatan Aktif : Review Paper,” vol. 3, no. 1, 2017.
[19] I. H. Siahaan, N. Djonoadji, dan A. Sugondo, “ANALISA GAYA PADA
RODA KENDARAAN PADA BERBAGAI KECEPATAN
KENDARAAN,” TEKNO SIM, no. September, hal. 1–7, 2007.
[20] J. S. Young, H. Y. Hsu, dan C. Y. Chuang, “Camber angle inspection for vehicle wheel alignments,” Sensors (Switzerland), vol. 17, no. 2, 2017, doi:
10.3390/s17020285.
[21] I. INSTRUMENTATION, “KTC LINEAR MOTION POSITION
SENSORS.” https://www.reichelt.com/de/en/linear-potentiometer-100-mm- max-60-v-ktc-100-p-p152223.html (diakses Jul 09, 2021).
[22] R. C. AB, “Ktc, ktf, ktp Linear sensor 75-1000mm,” vol. 1, no. 4, Swedia, 2013, hal. 4–7.
[23] J. V. Vijay dan B. Bansode, “ARM Processor Architecture,” Int. J. Sci. Eng.
Technol. Res., vol. 4, no. 10, hal. 243–268, 2015, doi: 10.1016/b978-0-12- 410414-3.00008-6.
[24] R. M. Firdaus, “Analisis variasi tindakan pengereman terhadap pengukuran efisiensi gaya rem dan perlambatan pada rol penguji rem,” Politeknik Negeri Semarang, 2019.
[25] G. Brown, “Discovering the STM32 Microcontroller,” Cortex, vol. 85, hal.
1–244, 2012, doi: 10.1.1.251.2645.
[26] STMicroelectronics, STM32F103x8 STM32F103xB Datasheet, REV 17.
Geneva, Switzerland: www.st.com, 2015.
[27] H96TVBox, “Android TV Box H96 Mini.”
https://www.h96tvbox.com/home/87-446-rk3228a-ram-1gb-rom-8gb- cheap-4k-smart-tv-box.html#/29-rom-8gb/35-wifi-24g5gbluetooth/36- plug_type-au_plug/42-ram-1gb (diakses Jul 09, 2021).
46
47
#VersionName:
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: landscape
#CanInstallToExternalStorage: True
#End Region
#Region Activity Attributes
#FullScreen: True
#IncludeTitle: False
#BridgeLogger: True
#End Region
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
Private usbserial As felUsbSerial Private manager As UsbManager Private bc As ByteConverter Dim AStreams As AsyncStreams
Dim Socket1 As Socket
Dim tcpStream As AsyncStreams
Dim Printer1 As EscPosPrinter
Dim Version As Double = 2.0 ' Demo program version End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.
'Public Caranim(121) As Bitmap
Dim Caranim(30) As Bitmap Dim gaugebmp(121) As Bitmap
Private Gauge_V As ImageView Private L_Gauge As Label Private EditText1 As EditText Private SeekBar1 As SeekBar Private Caranimasi As ImageView
Dim data As CacheCleaner
Private Level_Left As ImageView Private IN_L As Label
Private Level_Right As ImageView Private OUT_L As Label
Private ImageL0 As ImageView Private ImageL1 As ImageView Private ImageL2 As ImageView Private ImageL4 As ImageView
Dim panel_gerak As Int Private Panel_Bg As Panel
Dim inc_pgerak,delay_sebentar As Boolean Private Imagecar As ImageView
'usb
Dim usbvendor_id(8) As String Dim usbproduct_id(8) As String Dim init_Timerser As Timer Dim init_permission As Boolean Dim chek_usb As Timer
Dim alat_available As Boolean Dim ft As Boolean
Dim usbvendor_id(8) As String Dim usbproduct_id(8) As String Dim usbSerial_port As Int
Private DevSer_State As Label Private DevSerBaudRate As Label Private LPrinterSerialState As Label Private LPrinterSerialBaudR As Label Private L_state As Label
'tcp
Dim chek_tcp As Timer Dim ipTcp As String Dim portTcp=23 As Int
Dim jumlah_sumbu(7) As String Dim jenis_mobil(9) As String Dim count_sumbu=0 As Int Dim count_jenis=0 As Int Dim TStartDef(2) As Int Dim TResetDef(2) As Int
Dim pengukuran_mulai=False As Boolean
Dim carReduceMuter As Int 'view baru
'Menu input data kendaraan
Private E_Sumbu As EditText Private E_uji As EditText Private E_Nama As EditText Private E_Kend As EditText Private E_jenis As EditText Private E_merk As EditText Private Save_BT As Button Private B_Metu As Button Private PanelMenu As Panel Private PanT_Start As Panel Private PanT_Reset As Panel Private PanT_Print As Panel Private PanT_InpuData As Panel Private Panel_Standby As Panel Private Panel_Gauge As Panel Private Panel_Stop As Panel Private T_Stop As Button Private L_start As Label Private L_Reset As Label Private L_Print As Label Private L_InputData As Label Private v_no_uji As Label Private v_no_kend As Label Private v_merk As Label Private v_jenis As Label
Private v_jumlah_sumbu As Label Private v_nama_penguji As Label Private b_change_jenis As Button Private nilai_Result As Label Private ket_kondisi As Label Private Ket_Result As Label Private LButtonPrint As Label Private gaugeResult As ImageView End Sub
Sub isi_idusb
' <usb-device vendor-id="1027" product-id="24577" />
usbvendor_id(0)="1027"
usbproduct_id(0)="24577"
'
' <!-- 0x0403 / 0x6015: FTDI FT231X -->
' <usb-device vendor-id="1027" product-id="24597" />
usbvendor_id(1)="1027"
usbproduct_id(1)="24597"
'
' <!-- 0x2341 / Arduino -->
' <usb-device vendor-id="9025" />
usbvendor_id(2)="1027"
usbproduct_id(2)="24577"
'
' <!-- 0x16C0 / 0x0483: Teensyduino -->
' <usb-device vendor-id="5824" product-id="1155" />
usbvendor_id(3)="9025"
usbproduct_id(3)="0"
'
' <!-- 0x10C4 / 0xEA60: CP210x UART Bridge -->
' <usb-device vendor-id="4292" product-id="60000" />
usbvendor_id(4)="4292"
usbproduct_id(4)="60000"
'
' <!-- 0x067B / 0x2303: Prolific PL2303 -->
' <usb-device vendor-id="1659" product-id="8963" />
usbvendor_id(5)="1659"
usbproduct_id(5)="8963"
'
' <!-- 0x1a86 / 0x7523: Qinheng CH340 -->
' <usb-device vendor-id="6790" product-id="29987" />
usbvendor_id(6)="6790"
usbproduct_id(6)="29987"
End Sub
Sub Activity_Create(FirstTime As Boolean)
'Do not forget to load the layout file created with the visual designer. For example:
Activity.LoadLayout("Main") Gauge_def
isi_jenis
E_jenis.Text=jenis_mobil(0) TStartDef(0)=PanT_Start.Left TStartDef(1)=PanT_Start.Top TResetDef(0)=PanT_Reset.Left TResetDef(1)=PanT_Reset.Top TPrintDef(0)=PanT_Print.Left TPrintDef(1)=PanT_Print.Top TInputDef(0)=PanT_InpuData.Left TInputDef(1)=PanT_InpuData.Top If FirstTime Then
manager.Initialize
Printer1.Initialize(Me, "Printer1") ft=True
reset__
End If
ipTcp="192.168.31.190"
isi_idusb usb_timer_init inc_pgerak=False delay_sebentar=False panel_gerak=0
carM.Initialize("CarMT",50) carM.Enabled=True
End Sub
Sub Activity_Resume End Sub
Sub Activity_Pause (UserClosed As Boolean) If UserClosed Then
AStreams.Close Socket1.Close End If
End Sub
Sub usb_timer_init
chek_usb.Enabled=True
'chek_tcp.Initialize("initTcp",200) 'chek_tcp.Enabled=True
End Sub
Sub initTcp_Tick
If Socket1.Connected=False Then Socket1.Initialize("Socket1")
Socket1.Connect(ipTcp,portTcp,5000)' IP, Port, Timeout chek_tcp.Interval=6000
End If End Sub
Sub Socket1_Connected(connected As Boolean)As Boolean If connected = True Then
ToastMessageShow("Terkoneksi Dengan Server",True)
tcpStream.Initialize(Socket1.InputStream,Socket1.OutputStream,"tcpStream") Else
ToastMessageShow("Gagal Terkoneksi Dengan Server",True) End If
End Sub
Sub tcpStream_NewData (Buffer() As Byte) Dim DM As String
Dim DF As Double Dim DI As Int EditText1.Text=""
EditText1.Text=BytesToString(Buffer, 0, Buffer.Length, "UTF8") Log(EditText1.Text)
EditText1.SelectionStart=EditText1.Text.Length 'L_Gauge.Text=DM
If EditText1.Text.Contains("]") Then
DM=EditText1.Text.SubString2(EditText1.Text.IndexOf("[")+1,EditText1.Text .IndexOf("]"))
Log(DM) Try
DF=DM DI=DF
L_Gauge.Text=Round2(DF,1) disp_gauge(DF)
Catch
End If End Sub
Sub initSerial_Tick
If manager.GetDevices.Length >0 Then
Dim device As UsbDevice = manager.GetDevices(usbSerial_port) If manager.HasPermission(device) = True Then
usbserial.Initialize("serial", device, -1) usbserial.BaudRate = 115200
usbserial.DataBits = usbserial.DATA_BITS_8 usbserial.StartReading
init_Timerser.Enabled=False DevSer_State.Text="Ready"
End If End If
End Sub
Sub chek_usb_Tick
If manager.GetDevices.Length >0 Then Dim usbg() As UsbDevice usbg=manager.GetDevices For i=0 To usbg.Length-1
Dim usbid As UsbDevice usbid=usbg(i)
For j=0 To 6
Dim vendor_idint,product_idint As Int Dim cs As String
vendor_idint=usbvendor_id(j) product_idint=usbproduct_id(j)
If (usbid.VendorId=vendor_idint) And (usbid.ProductId=product_idint) Then
alat_available=True usbSerial_port=i End If
Next Next
Else
alat_available=False 'ft=True
If ((Socket1.Connected=False)Or(AStreams.IsInitialized=False)) Then DevSer_State.Text="No Device"
End If End If
manager.HasPermission(manager.GetDevices(usbSerial_port))=False Then Permission_add
ft=False End If
If alat_available=True And
manager.HasPermission(manager.GetDevices(usbSerial_port))=True And ft=True Then init_Timerser.Enabled=True
ft=False End If
End Sub
Sub Permission_add
init_Timerser.Enabled=True
If manager.GetDevices.Length = 0 Then Else
Dim device As UsbDevice = manager.GetDevices(usbSerial_port) 'assuming that there is exactly one device
If manager.HasPermission(device) = False Then manager.RequestPermission(device) DevSer_State.Text="Request..."
End If End If
End Sub
Private Sub serial_DataAvailable (Buffer() As Byte) ' Log("New data: " & bc.HexFromBytes(Buffer)) Dim DM As String
Dim DF As Double Dim DI As Int
If pengukuran_mulai=True Then
DM=BytesToString(Buffer, 0, Buffer.Length, "UTF8") 'L_Gauge.Text=DM
Try
DF=DM DI=DF
L_Gauge.Text=Round2(DF,1) disp_gauge(DF)
Catch
Log(LastException) End Try
End If
End Sub
Sub CarMT_Tick
Dim intstr As String
If Panel_Gauge.Visible=False Then
carReduceMuter=carReduceMuter+1 If(carReduceMuter>1) Then
carReduceMuter=0 carcount=carcount+1 If(carcount>29) Then
carcount=0 End If
If(PanelMenu.Visible=True) Then
Caranimasi.Bitmap=Caranim(carcount) End If
End If
'Caranim(carcount)
'Imagecar.Bitmap=Caranim(29) If delay_sebentar=True Then
panel_gerak=panel_gerak+1 If panel_gerak>50 Then
panel_gerak=0 delay_sebentar=False End If
End If
If(delay_sebentar=False) Then If inc_pgerak=True Then
Panel_Bg.Left=Panel_Bg.Left+0.1%x Else If inc_pgerak=False Then
Panel_Bg.Left=Panel_Bg.Left-0.1%x End If
If(Panel_Bg.Left>-5%x) Then inc_pgerak=False delay_sebentar=True End If
If(Panel_Bg.Left<-40%x) Then inc_pgerak=True delay_sebentar=True End If
End If
' EditText1.Text=intstr End If
End Sub
Sub disp_gauge(xgvalue As Double) Dim xb As Bitmap
Dim xsintstr As String Dim xsstr As String Dim nilai_gv As Double Dim vgvalue As Int
If xgvalue<0 Then
nilai_gv=((-1)*xgvalue)*(60/15) nilai_gv=60-nilai_gv
IN_L.Text=L_Gauge.Text
If(xgvalue<0) And (xgvalue>=-3) Then Level_Left.Bitmap=ImageL1.Bitmap 'L_state.TextColor=Colors.White L_state.Text="GOOD"
End If
If(xgvalue<-3) And (xgvalue>=-5) Then Level_Left.Bitmap=ImageL2.Bitmap 'L_state.TextColor=Colors.White L_state.Text="GOOD"
End If
If(xgvalue<-5) And (xgvalue>=-16) Then Level_Left.Bitmap=ImageL4.Bitmap 'L_state.TextColor=Colors.Red L_state.Text="BAD"
End If End If
If xgvalue>0 Then
nilai_gv=(xgvalue)*(60/15) nilai_gv=nilai_gv+60
OUT_L.Text=L_Gauge.Text
If(xgvalue>0) And (xgvalue<=3) Then
Level_Right.Bitmap=ImageL1.Bitmap 'L_state.TextColor=Colors.White L_state.Text="GOOD"
End If
'L_state.TextColor=Colors.White L_state.Text="GOOD"
End If
If(xgvalue>5) And (xgvalue<=16) Then Level_Right.Bitmap=ImageL4.Bitmap 'L_state.TextColor=Colors.Red
L_state.Text="BAD"
End If End If
If xgvalue=0 Then nilai_gv=60
'L_state.TextColor=Colors.White L_state.Text="GOOD"
IN_L.Text="0.0"
OUT_L.Text="0.0"
Level_Left.Bitmap=ImageL0.Bitmap Level_Right.Bitmap=ImageL0.Bitmap End If
vgvalue=nilai_gv xsintstr=vgvalue If vgvalue<10 Then
xsstr="jarum_00"&xsintstr&".png"
End If
If vgvalue>=10 And vgvalue<100 Then xsstr="jarum_0"&xsintstr&".png"
End If
If vgvalue>=100 And vgvalue<1000 Then xsstr="jarum_"&xsintstr&".png"
End If
' Level_Left.Bitmap=ImageL1.Bitmap If xgvalue<0 Then
Level_Right.Bitmap=ImageL0.Bitmap End If
If xgvalue>=0 Then
Level_Left.Bitmap=ImageL0.Bitmap End If
EditText1.Text=xsstr ' xsstr="Caranim_000.png"
xb.Initialize(File.DirAssets,xsstr)
Sub Circle_gauge(xgvalue As Double)
Dim xb As Bitmap Dim xsintstr As String Dim xsstr As String Dim xsstrout As String Dim nilai_gv As Double Dim vgvalue As Int
If xgvalue<0 Then
nilai_gv=((-1)*xgvalue)*(100/15) 'nilai_gv=100-nilai_gv
End If
If xgvalue>0 Then
nilai_gv=(xgvalue)*(100/15) 'nilai_gv=nilai_gv+100 End If
If xgvalue=0 Then nilai_gv=0 End If
'ket_kondisi.Text=nilai_gv
vgvalue=nilai_gv xsintstr=vgvalue If vgvalue<10 Then
xsstr="GaugeIn_00"&xsintstr&".png"
xsstrout="gauge_00"&xsintstr&".png"
End If
If vgvalue>=10 And vgvalue<100 Then xsstr="GaugeIn_0"&xsintstr&".png"
xsstrout="gauge_0"&xsintstr&".png"
End If
If vgvalue>=100 And vgvalue<1000 Then xsstr="GaugeIn_"&xsintstr&".png"
xsstrout="gauge_"&xsintstr&".png"
End If
' Level_Left.Bitmap=ImageL1.Bitmap If xgvalue<0 Then
If xgvalue>=0 Then
xb.Initialize(File.DirAssets,xsstrout) End If
'EditText1.Text=xsstr 'xsstr="Caranim_000.png"
'Log(xsstr)
gaugeResult.Bitmap=xb End Sub
Sub Gauge_def '1
Caranim(0).Initialize(File.DirAssets,"Caranim_000.png") '1 Caranim(1).Initialize(File.DirAssets,"Caranim_001.png") '2 Caranim(2).Initialize(File.DirAssets,"Caranim_002.png") '3 Caranim(3).Initialize(File.DirAssets,"Caranim_003.png") '4 Caranim(4).Initialize(File.DirAssets,"Caranim_004.png") '5 Caranim(5).Initialize(File.DirAssets,"Caranim_005.png") '6 Caranim(6).Initialize(File.DirAssets,"Caranim_006.png") '7 Caranim(7).Initialize(File.DirAssets,"Caranim_007.png") '8 Caranim(8).Initialize(File.DirAssets,"Caranim_008.png") '9 Caranim(9).Initialize(File.DirAssets,"Caranim_009.png") '10 '2
Caranim(10).Initialize(File.DirAssets,"Caranim_010.png") '1 Caranim(11).Initialize(File.DirAssets,"Caranim_011.png") '2 Caranim(12).Initialize(File.DirAssets,"Caranim_012.png") '3 Caranim(13).Initialize(File.DirAssets,"Caranim_013.png") '4 Caranim(14).Initialize(File.DirAssets,"Caranim_014.png") '5 Caranim(15).Initialize(File.DirAssets,"Caranim_015.png") '6 Caranim(16).Initialize(File.DirAssets,"Caranim_016.png") '7 Caranim(17).Initialize(File.DirAssets,"Caranim_017.png") '8 Caranim(18).Initialize(File.DirAssets,"Caranim_018.png") '9 Caranim(19).Initialize(File.DirAssets,"Caranim_019.png") '10 '3
Caranim(20).Initialize(File.DirAssets,"Caranim_020.png") '1 Caranim(21).Initialize(File.DirAssets,"Caranim_021.png") '2 Caranim(22).Initialize(File.DirAssets,"Caranim_022.png") '3 Caranim(23).Initialize(File.DirAssets,"Caranim_023.png") '4 Caranim(24).Initialize(File.DirAssets,"Caranim_024.png") '5 Caranim(25).Initialize(File.DirAssets,"Caranim_025.png") '6 Caranim(26).Initialize(File.DirAssets,"Caranim_026.png") '7 Caranim(27).Initialize(File.DirAssets,"Caranim_027.png") '8 Caranim(28).Initialize(File.DirAssets,"Caranim_028.png") '9
End Sub
Sub SeekBar1_ValueChanged (Value As Int, UserChanged As Boolean) Dim xsb As Int
Dim ssb As String
Try
xsb=Value-15 ssb=xsb
L_Gauge.Text=ssb disp_gauge(xsb) Catch
End Try End Sub
Sub nav_kiri_Click
count_sumbu=count_sumbu-1 If(count_sumbu<0) Then
count_sumbu=6 End If
E_Sumbu.Text=jumlah_sumbu(count_sumbu) End Sub
Sub nav_kanan_Click
count_sumbu=count_sumbu+1 If(count_sumbu>6) Then
count_sumbu=0 End If
E_Sumbu.Text=jumlah_sumbu(count_sumbu) End Sub
Sub B_Metu_Click
PanelMenu.Visible=False Panel_Standby.Visible=True End Sub
Sub isi_sumbu
jumlah_sumbu(0)="2-Sumbu"
jumlah_sumbu(1)="3-Sumbu"
jumlah_sumbu(2)="4-Sumbu"
jumlah_sumbu(3)="5-Sumbu"
jumlah_sumbu(4)="6-Sumbu"
End Sub
Sub isi_jenis
jenis_mobil(0)="Mobil Penumpang"
jenis_mobil(1)="Mobil Bus JBB s/d 2500 kg"
jenis_mobil(2)="Mobil Bus JBB 2501 s/d 7500 kg"
jenis_mobil(3)="Mobil Bus Barang 7501 kg keatas"
jenis_mobil(4)="Mobil Bus Barang s/d 2500 kg"
jenis_mobil(5)="Mobil Bus Barang 2501 s/d 7500 kg"
jenis_mobil(6)="Mobil Bus Barang 7501 kg keatas"
jenis_mobil(7)="Kereta Tempelan dan Kereta Gandeng"
jenis_mobil(8)="Kendaraan khusus"
End Sub
Sub PanT_Start_Touch (Action As Int, X As Float, Y As Float) PanT_Start.Left=TStartDef(0)-10
PanT_Start.Top=TStartDef(1)-10 PanT_Reset.Left=TResetDef(0) PanT_Reset.Top=TResetDef(1) PanT_Print.Left=TPrintDef(0) PanT_Print.Top=TPrintDef(1) PanT_InpuData.Left=TInputDef(0) PanT_InpuData.Top=TInputDef(1) End Sub
Sub PanT_Reset_Touch (Action As Int, X As Float, Y As Float) PanT_Reset.Left=TResetDef(0)-10
PanT_Reset.Top=TResetDef(1)-10 PanT_Start.Left=TStartDef(0) PanT_Start.Top=TStartDef(1) PanT_Print.Left=TPrintDef(0) PanT_Print.Top=TPrintDef(1) PanT_InpuData.Left=TInputDef(0) PanT_InpuData.Top=TInputDef(1) End Sub
PanT_Print.Top=TPrintDef(1)-10 PanT_Reset.Left=TResetDef(0) PanT_Reset.Top=TResetDef(1) PanT_Start.Left=TStartDef(0) PanT_Start.Top=TStartDef(1) PanT_InpuData.Left=TInputDef(0) PanT_InpuData.Top=TInputDef(1) End Sub
Sub PanT_InpuData_Touch (Action As Int, X As Float, Y As Float) PanT_InpuData.Left=TInputDef(0)-10
PanT_InpuData.Top=TInputDef(1)-10 PanT_Start.Left=TStartDef(0)
PanT_Start.Top=TStartDef(1) PanT_Reset.Left=TResetDef(0) PanT_Reset.Top=TResetDef(1) PanT_Print.Left=TPrintDef(0) PanT_Print.Top=TPrintDef(1) End Sub
Sub PanT_Start_Click
Panel_Standby.Visible=False Panel_Gauge.Visible=True End Sub
Sub PanT_InpuData_Click End Sub
Sub PanT_Print_Click End Sub
Sub PanT_Reset_Click End Sub
Panel_Stop.Visible=True Panel_Standby.Visible=False carM.Enabled=False
pengukuran_mulai=True End Sub
Sub pengukuran_stop
Panel_Gauge.Visible=False Panel_Stop.Visible=False Panel_Standby.Visible=True carM.Enabled=True
pengukuran_mulai=False End Sub
Sub T_Stop_Click pengukuran_stop
nilai_Result.Text=L_Gauge.Text Dim ketInOut As Int
ketInOut=nilai_Result.Text If(ketInOut<0) Then
ket_kondisi.Text="IN"
End If
If(ketInOut>0) Then
ket_kondisi.Text="OUT"
End If
If(ketInOut=0) Then
ket_kondisi.Text="-"
End If
Ket_Result.Text=L_state.Text Circle_gauge(ketInOut) End Sub
Sub L_InputData_Click
PanelMenu.Visible=True Panel_Standby.Visible=False End Sub
Sub L_Print_Click test_print End Sub
reset__
End Sub
Sub reset__
L_Gauge.Text="0.0"
L_state.Text=""
nilai_Result.Text="0.0"
ket_kondisi.Text="-"
Ket_Result.Text="-"
Dim xb As Bitmap
xb.Initialize(File.DirAssets,"gauge_000.png") gaugeResult.Bitmap=xb
xb.Initialize(File.DirAssets,"jarum_060.png") Gauge_V.Bitmap=xb
Level_Right.Bitmap=ImageL0.Bitmap Level_Left.Bitmap=ImageL0.Bitmap End Sub
Sub L_start_Click pengukuran_start End Sub
Sub Save_BT_Click
v_no_uji.Text=E_uji.Text v_no_kend.Text=E_Kend.Text v_merk.Text=E_merk.Text v_jenis.Text=E_jenis.Text
v_nama_penguji.Text=E_Nama.Text v_jumlah_sumbu.Text=E_Sumbu.Text End Sub
Sub b_change_jenis_Click count_jenis=count_jenis+1 If(count_jenis>8) Then
count_jenis=0 End If
E_jenis.Text=jenis_mobil(count_jenis) End Sub
Sub LButtonPrint_Click
If Printer1.IsConnected=True Then Printer1.DisConnect
LButtonPrint.Color=Colors.DarkGray