Maaf, artikel ini sedang dalam tahap persiapan.
Silakan kembali beberapa waktu kembali.
Rohmadi
Maaf, artikel ini sedang dalam tahap persiapan.
Silakan kembali beberapa waktu kembali.
Rohmadi
Grafik sebuah data yang didapatkan dari pengukuran dapat disajikan dalam sebuah grafik pada Visual Basic. Pada tulisan sebelumnya telah diberikan sedikit contoh bagaimana cara menyajikan data dengan menggunakan Visual Basic. Pada kesempatan ini akan diberikan contoh pengembangannya dengan menyajikan data sebanyak 8 channel data. Selain penyajian dalam grafik, diberikan juga sebuah indikator pada tiap-tiap channel dengan menentukan batas atas dan batas bawah. Batas atas disini, untuk memberitahukan bawah titik atas tersebut sudah tercapai dengan ditandai berubah warnah merah pada penanda.
Selain disajikan dalam bentuk grafik, data ditampilkan pula dalam grid yang menyajikan data dalam bentuk numerik. Sehingga secara visual dan numerik dapat diamati dengan lebih mudah. Masing-masing channel dibedakan dengan warna yang berbeda.
Pada dasarnya, proses delapan channel data tersebut adalah sama dengan proses satu grafik yang dibuat parallel. Dalam pengambilan data, ditangani oleh MCU yang membaca data analog dengan menggunakan ADC internal ATMega16. MCU mengambil data dengan sistem polling, ADC yang jumlahnya 8 channel dibaca dari channel 1 sampai channel 8. Kemudian data yang didapatkan dibuat paket data menjadi satu frame data.
Data disusun dengan skema berikut:
1. Header = #
2 Delimiter = $ – ?
3. Data = 0 s/d 5000
4. End of Data = &@
#$ADC1?$ADC2?$ADC3?$ADC4?$ADC5?$ADC6?$ADC7?$ADC8?&@ + [ENTER]
dalam contoh dengan data numerik:
#$520?$1040?$1560?$2080?$2600?$3120?$3640?$4160?&@ + [ENTER]
Header, delimiter dan End of data diperlukan untuk parameter bahwa data yang ada adalah valid dan dapat digunakan.
Untuk dapat mengambil data menjadi delapan data kembali, maka diperlukan identifikasi. Proses yang dilakukan adalah membaca parameter-parameter di atas. Pertama, membaca header, kemudian membaca delimiter, kemudian membaca end of data, baru membaca datanya.
Untuk membaca header, langkahnya adalah membaca karakter #. Pada visual basic, untuk membaca karakter tertentu digunakan syntax:
[sourcecode]
Kres = InStr(PaketData, "#")
[/sourcecode]
membaca end of data:
[sourcecode]
At = InStr(PaketData, "@")
[/sourcecode]
Terakhir untuk mengetahui sebuah data, maka kita perlu mengetahui posisi delimiter.
[sourcecode]
Dollar = InStr(PaketPecah, "$")
Tanya = InStr(PaketPecah, "?")
[/sourcecode]
baru kita bisa mendapatkan data pengukuran tersebut.
Selanjutnya baru kita membuat tampilan dalam bentuk grafik seperti telah dibahas pada tulisan sebelumnya.
Demikian semoga bermanfaat.
14 . Pilih menu Add –> Wire (Ctrl + W)
Kemudian klik dari ujung pin CE, tarik garis lurus kea rah kiri kemudian klik sampai membentuk wire, klik Esc.
15. Tambahkan wire untuk semua pin yang ada seperti berikut
16. Pilih menu Add –> I/O marker (Ctrl + G), kemudian select pin CE, C dan CLR seperti tampilan berikut
17. Ulangi untuk pin Q0 s/d pin Q3, CEO, TC
Secara default masing-masing pin akan memiliki nama dari XLXN_1
18. Klik kanan pada I/O marker XLXN_1, pilih Object Properties, pilih Nets, XLXN_1
19. Pada kolom Value, baris Name ganti dengan CE
20. Ganti nama masing-masing pin sesuai tampilan berikut
21. Klik kanan pada xc3s400an-4fgg400 kemudian pilih New Source
Tambahkan VHDL Test Bench, beri nama pada File name Counter4bit_tb, kemudian klik Next >
22. Klik Next >
23. Klik Finish
24. Selanjutnya akan muncuk code HDL disebelah kanan
25. Edit code berikut:
tb : PROCESS
BEGIN
WAIT;
END PROCESS;
Menjadi seperti berikut:
C1 : PROCESS
BEGIN
C <= ‘1’; wait for 10ns;
C <= ‘0’; wait for 10ns;
END PROCESS;
26. Pada tab Hierarchy, klik Counter4bit.sch, kemudian pada tab Processes: Counter4bit, klik kanan Synthesize – XST kemudian pilih Run
27. Pada tab View pilih Simulation. Pada tab Hierarchy pilih Counter4bit_tb.vhd
Pada tab Processes pilih Isim Simulator à Behavioral Check Syntax
28. Kemudian klik kanan Simulate Behavioral Model à Run
29. Kemudian akan muncul layar window baru seperti berikut
30. Kemudian klik icon no 1 diikuti no 2.
Demikian, petunjuk singkat membuat clock pada FPGA dengan gambar rangkaian dan VHDL.
Semoga bermanfaat.
Rental Play Station (PS), kebanyakan masih menggunakan timer bawaan dari layar Televisi yang dipakai. Sebenarnya menggunakan timer TV tersebut bisa saja digunakan untuk timer, namun keterbatasannya adalah, kita tidak bisa mengetahui biaya yang sudah ada dan tidak ada log pembukuannya.
Berbeda dengan billing yang berupa software di PC, kita bisa mendapatkan nilai lebih. Misalnya, bisa dilakukan pembukuan secara otomatis, untuk mendapatkan analisa pendapatan rental. Kemudian, keuntungan lain, bisa mengetahui unit yang selalu dipakai dan unit yang jarang dipakai, ataupun yang lainnya.
Pada kesempatan kali ini, akan disampaikan sedikit pembuatan sebuah billing rental Play Station (PS) sebanyak 4 unit dengan mengontrol switch ON/OFF pada sumber listriknya. Pada sistem ini, billing menghitung biaya dan durasi yang dipakai user. Kemudian untuk mengaktifkan dan menghentikan PS, digunakan metode On/Off power AC dari unit PS menggunakan relay yang dikendalikan oleh MCU/mikrokontroller.
Cara kerja billing adalah, saat billing di mulai, maka software akan mengirim perintah ke MCU untuk menyalakan relay sesuai dengan nomer billing yang diaktifkan. Kemudian MCU akan mengaktifkan relay sehingga aliran listrik ke unit yang dimaksud akan mengalir. PS dapat digunakan setelah billing aktif. Demikian juga untuk unit yang lain, dapat diaktifkan dan dimatikan dengan melalui software billing di PC. Pada software, akan tercatat waktu mulai unit dan menampilkan biaya tagihan.
Harga sewa unit juga dapat diatur melalui setting harga yang disediakan, dan dapat disesuaikan dengan mudah. Selain itu, semua unit dapat dimatikan dan dinyalakan secara bersamaan melalui sebuah tombol.
Demikian, semoga bermanfaat.
Jika sebelumnya telah dijelaskan bagaimana konsep membuat sebuah billing, maka pada kesempatan ini akan dijelaskan contoh membuat billing yang jumlahnya lebih dari satu unit. Billing yang akan dibuat, sejumlah empat dalam satu form. Billing yang akan dibuat bisa digunakan untuk billing PS, ataupun yang sejenisnya. Dimana billing disini tidak ditampilkan pada client/user, namun billing hanya terdapat pada PC Admin. Output dari PC dapat ditambahkan switch untuk memutuskan sumber listrik pada masing-masing user. Sebagai catatan, peralatan listrik user yang akan dimatikan tidak rentan terhadap mati/nyala, misalnya yang berupa TV atau yang lain.
Switch dapat berupa sebuah MCU (Microcontroller Centrol Unit) ataupun sebuah sirkuit logic yang lain. MCU kemudian mengendalikan sebuah relay ataupun model switch yang lain, misalnya solid state. Jika menggunakan sebuah MCU misalnya mikrokontroller ATMega8535 atau yang lain yang memiliki pin I/O 32 jalur, maka dapat digunakan untuk membuat billing sejumlah 30 unit peralatan rental.
Prinsip billing disini sama dengan billing yang telah dibahas sebelumnya, yang berbeda adalah jumlah unitnya. Masing-masing unit dapat dilihat durasi dan biaya sendiri-sendiri. Billing yang akan dibuat sangat sederhana dan mudah digunakan. Indikator billing sedang berjalan ditunjukkan oleh sebuah simbol lingkaran dengan kode warna merah mununjukkan billing sedang berhenti, sementara warna hijau menunjukkan billing sedang jalan.
Untuk membuatnya, siapkan tampilan seperti diatas yang terdiri dari komponen:
|
Komponen |
Properties |
Value |
| Frame1 | Caption | PS 1 |
| Label1 | Caption | Pemakai: User 1 |
| Label2 | Caption | Biaya |
| Label3 | Caption | Jam Mulai |
| Label4 | Caption | Jam Sekarang |
| lblDurasi1 | Caption | 00:00:00 |
| lblBiaya1 | Caption | : Rp. 0,- |
| lblMulai1 | Caption | : 00:00 |
| lblSkrg1 | Caption | : 00:00 |
| Command1 | Caption | Mulai |
| Timer1 | Interval | 1000 |
| Enabled | False | |
| Shape1 | BackColor | vbRed |
Buatlah komponen di atas sejumlah empat kali sehingga akan menghasilkan tampilan seperti di atas.
Coding Billing
Pada bagian atas code, buatlah variabel berikut:
Dim Start1 As Date, Stop1 As Date
Dim Start2 As Date, Stop2 As Date
Dim Start3 As Date, Stop3 As Date
Dim Start4 As Date, Stop4 As Date
Dim Harga As Integer
Dim Biaya1 As Integer
Dim Biaya2 As Integer
Dim Biaya3 As Integer
Dim Biaya4 As Integer
kemudian tambahkan fungsi berikut untuk menghitung selisih dari dua buah waktu:
Function DateDiffX(dStart As Date, dEnd As Date, Optional bDetailed As Boolean) As Variant
Dim TotalDays
Dim Years, Months, Days, hours, minutes, secondsIf bDetailed Then
TotalDays = dEnd – dStart
hours = Hour(dEnd – dStart)
minutes = Minute(dEnd – dStart)
seconds = Second(dEnd – dStart)If hours < 10 Then
hours = “0” & hours
ElseIf hours > 9 Then
hours = hours
End If
If minutes < 10 Then
minutes = “0” & minutes
ElseIf minutes > 9 Then
minutes = minutes
End If
If seconds < 10 Then
seconds = “0” & seconds
ElseIf seconds > 9 Then
seconds = seconds
End If
DateDiffX = hours & “:” & minutes & “:” & seconds
Exit Function
End IfEnd Function
sub rutin di atas digunakan untuk menghitung selisih dari dua waktu. Selisih ini disebut sebagai durasi dan akan digunakan sebagai hasil penggunaan waktu sewa.
Kemudian pada Command1_Click() tambahkan code berikut:
Private Sub Command1_Click()
If Command1.Caption = “Mulai” Then
Command1.Caption = “Stop”
Timer1.Enabled = True
lblMulai1 = “: ” & Format(Time, “hh:mm:ss”)
Shape1.BackColor = vbGreen
Start1 = Format(Time, “hh:mm:ss”)
ElseIf Command1.Caption = “Stop” Then
Command1.Caption = “Mulai”
Timer1.Enabled = False
lblSkrg1 = “: ” & Format(Time, “hh:mm:ss”)
Shape1.BackColor = vbRed
End If
End Sub
Pada Sub Timer1_Timer(), tambahkan code berikut:
Private Sub Timer1_Timer()
Stop1 = Format(Time, “hh:mm:ss”)
lblSkrg1 = “: ” & Format(Time, “hh:mm:ss”)
lblDurasi1 = DateDiffX(Start1, Stop1, True)
Timer1.Tag = Biaya1 + Harga
lblBiaya1 = “: Rp. ” & Timer1.Tag & “,-“
Biaya1 = Timer1.Tag
End Sub
Dan pada sub Form_Load(), tambahkan code berikut:
Private Sub Form_Load()
Harga = 10
End Sub
Ulangi langkah-langkah di atas untuk unit yang ke-2, 3 dan 4.
Semoga bermanfaat.
kalo pake finger print (mesin absen sidik jari ) bisa bos ?
saya mau tanya , saya kesulitan untuk menaruh code yang sudah jadi di salah satu axis yang ada , semisal…
kapan dong mas diuploadnya?lagi butuh pencerahan banget ni mas.sy butuh bantuan mas ni.maf klo kedengaran sprt memaksa.makasih y mas. sy…
Sangat mungkin dilakukan. Dan secara sistem hanya membutuhkan sebuah mikrokontroller dan tambahan modem beserta interface dengan mikrokontroller. Ini kebutuhan selain…
source code mikrokontrolernya dong mas, sangat butuh ini sudah berminggu - minggu saya monitor koq belum di upload juga.....