42
3.4 Perancangan Software
Perangkat lunak yang digunakan pada mikrokontroler AT89S51 menggunakan bahasa pemograman standar yaitu bahasa assembly. Program dibuat dan disesuaikan sehingga
dapat berjalan dengan baik. Secara umum flowchart utama program otomasi pengukuran volume minyak menggunakan mikrokontroler dapat dilihat pada gambar
3.8.
STAR Cek Jarak
Terima Data Sensor
Kirim Data RS232 Terima Data PC
274 ?
Tampil 274 275 ?
Tidak
Tampil 275 276 ?
Tampil 276
…..
289 ?
Tampil 289
Pompa Hidup Pompa Mati
Ya
Pompa Hidup
Simpan Data
END Tidak
Ti d
ak
Tidak
Ti d
ak
Ya Ya
Ya
Ya Ya
Gambar 3.8 Diagram Alir Sistem
Universitas Sumatera Utara
43
Ketika sensor ping parallax bekerja, sensor mendeteksi dan mengukur jarak untuk mengambil data, setelah data volume dan tinggi permukaan minyak diterima
dari sensor data dikirim melalui port RS232 untuk ditampilkan ke PC. Jika data yang diterima adalah 274 cm data ditampilkan dan pompa hidup on jika tidak sensor tetap
mengukur jarak sampai data yang didapat oleh sensor adalah 289 cm. Jika data yang diterima sensor adalah 289 data ditampilkan ke pc lalu disimpan ke database dalam
rentang waktu per 5 detik dan pompa mati off, selanjutnya sensor terus mengukur jarak, jika jarak data yang diterima dari sensor adalah lebih kecil atau sama dengan
289 maka program mengeksekusi apakah pompa hidup on, jika tidak maka data akan disimpan ke database sampai data yang diterima sensor adalah 274 cm. Jika data yang
diterima sensor adalah 274 maka pompa hidup on dan program mengesekusi apakah pompa hidup, jika ya maka sensor mengukur kembali lagi seperti sebelumnya.
3.4.1 Perancangan permodelan sistem dengan use case diagram Permodelan sistem berfungsi untuk memperoleh prototipe atau gambaran yang jelas
mengenai objek apa saja yang saling berinteraksi dengan sistem dan hal-hal apa saja yang akan dilakukan oleh sistem sehingga sistem dapat berfungsi dengan baik sesuai
dengan fungsi dan tujuannya. Perancangan fungsional perangkat lunak untuk dapat mengakuisisi data
pengukuran dari hardware yang dapat dikembangkan dan di modelkan dengan diagram use case. Aktor yang akan berinteraksi dengan sistem adalah pengguna user
dimana pengguna dikatagorikan sebagai entitas yang melakukan proses akuisisi data pengukuran volume minyak.
Ditinjau dari analisis kebutuhan sistem, beberapa hal yang nantinya harus dilakukan sistem adalah:
1. Melakukan koneksi port akuisisi data untuk menampilkan data hasil perhitungan dari pengukuran volume minyak.
2. Melakukan penyimpanan hasil perhitungan dari pengukuran volume minyak. Berdasarkan informasi kebutuhan sistem serta aktor yang berperan di dalamnya,
diagram use case berikut dirancang sebagai permodelan persyaratan sistem, seperti pada gambar 3.9.
Universitas Sumatera Utara
44
USER US
ES
U SES
Mengoneksikan data Proses Pengukuran
volume Minyak Menampilkan Data
Hasil Pengukuran Volume Minyak
Menyimpan Data Kedalam DataBase
Hasil pengukuran Volume Minyak
SIMULASI SISTEM OTOMASI POMPA UNTUK PENGUKURAN VOLUME MINYAK PADA TANKI DISESL MENGGUNAKAN
SENSOR ULTRASONIK
PING PARALLAX
BERBASIS MIKROKONTROLLER AT89S51
Gambar 3.9 Use Case Diagram Sistem Aplikasi
Jika dilihat pada diagram tersebut tampak bahwa seorang pengguna user hanya dapat mengakses use case sistem akuisisi data pengukuran volume minyak.
Dengan demikian untuk menentukan proses apa saja yang nantinya dilakukan pada setiap tahapan sistem, maka ditentukanlah dokumentasi naratif untuk use case sistem
akuisisi data pengukuran volume minyak, sehingga langkah demi langkah dapat berjalan dengan semestinya. Berikut ini dokumen naratif untuk use case sistem
akuisisi data pengukuran volume minyak dapat dilihat pada tabel.3.2.
Universitas Sumatera Utara
45
Tabel 3.2 Dokumentasi Naratif Use Case Sistem Akuisisi Data Pengukuran Volume Minyak
Nama Use Case
Simulasi Sistem Otomasi Pompa Untuk Pengukuran Volume Minyak pada Tanki Diesel Menggunakan Sensor Ultrasonik
PING Parallax Berbasis Mikrokontroler AT89S51
Aktor User
Deskripsi Use Case mendeskripsikan tentang fungsional sistem pengukuran
volume minyak kemudian menampilkan data hasil pengukuran tersebut pada user interface lalu menyimpan data tersebut ke
dalam database
Pre-condition Menerima data yang dikirimkan oleh sistem hardware
Microkontroller
Typical course of event
Aksi Aktor Respon Sistem
Langkah 1 : User memilih tombol koneksi port.
Langkah 2 : Sistem akan merespon dengan memanggil program untuk
menampilkan form koneksi data pada port serial.
Langkah 3 : User memilih Boud Rate dan Coom Port
dan memilih Connecting.
Langkah 4 : User Memilih tombol Acquisition Data
Langkah 5 : Sistem akan merespon dengan memanggil program pada
form Acquisition Data untuk menerima data hasil pengukuran.
Langkah 6
: Sistem
akan menampilkan data hasil pengukuran
volume minyak di kolom level dan liter.
Langkah 7 : User akan melakukan fungsi untuk
menyimpan data
hasil pengukuran
volume minyak pada database.
Alternate Course
Aksi Aktor Respon Sistem
- -
Post Condition - -
Universitas Sumatera Utara
46
Activity diagram untuk Use Case kontrol sistem akuisisi data pengukuran volume minyak dapat dilihat pada gambar 3.10.
Pilih Koneksi Port
Mulai Tampilkan
form koneksi port
Pilih boundrate dan port
Koneksikan port
Simpan Data Selesai
Y T
Pilih Aquisisi Data
Tampilkan form aquisisi data dan
hasil
Gambar 3.10 Activity diagram sistem akuisisi data pengukuran volume minyak
3.4.2 Perancangan Data Flow Diagram DFD Data Flow Diagram DFD adalah alat pembuatan model network dengan
menggunakan notasi-notasi untuk menggambarkan arus dari data sistem yang bertujuan untuk membantu memahami sistem secara logika, terstruktur dan jelas.
Berdasarkan definisi diatas maka untuk perancangan software pada sistem otomasi pompa pengukuran volume minyak dapat terlihat dalam diagram DFD level 0 berikut.
User Sistem
Universitas Sumatera Utara
47
3.4.2.1 DFD Level 0
User
Sistem akuisisidata pendeteksi volume
minyak Akses data volume minyak
Data volume minyak
Gambar 3.11 DFD Level 0 Proses Sistem Pengukuran Volume Minyak
3.4.2.2
DFD Level 1
User
1.0 Menampilkan Data
Aquisition Volume minyak
Akses data Volume minyak
Tampilan data volume minyak
Data Base
Data hasil pengukuran
Data Volume minyak
Gambar 3.12 DFD Level 1 Proses Tampilan Data Volume Minyak Dan Database
Universitas Sumatera Utara
48
3.4.3 Perancangan antar muka interface
Perancangan Antar muka adalah perancangan suatu tampilan yang dapat menghubungkan pengguna user, komputer, dan mikrokontroller dengan berbantuan
program. Syarat untuk perancangan pembuatan antar muka adalah berorientasi pada Grapic User Interface GUI, informatif dan mudah digunakan User Friendly.
3.4.3.1 Rancangan menu utama
Rancangan tampilan utama yaitu sebuah tampilan yang pertama muncul pada saat sistem diaktifkan. Pada perancangan antar muka terdapat menu koneksi port yang
berfungsi sebagai form untuk mengoneksikan port serial computer agar dapat menerima data, Akuisisi Data yang berfungsi untuk menampilkan data volume dan
tinggi permukaan minyak yang telah didapat dari pengukuran serta Tentang dan Keluar. Berikut rancangan menu utama dapat dilihat pada gambar 3.13.
2
Akuisisi Data
1
Koneksi Port
3
Tentang
4
Keluar
Judul Penelitian
Xxxxxxxxxxxxxxx Xxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxx
Xxxxxxxxxxxxxxx
5
Xxxxxxxxxxxxxxx xxxxxxxxxx Xxxxxxxxxxxxxxx
Xxxxxxx
Gambar 3.13 Rancangan Tampilan Utama
Keterangan:
1. Menu koneksi port berfungsi sebagai form untuk mengkoneksi data dari port
serial. 2. Menu akuisisi data berfungsi untuk menampilkan hasil pengukuran.
3. Menu tentang berfungsi sebagai menampilkan informasi atau cara penggunaan
aplikasi.
Universitas Sumatera Utara
49
4. Menu keluar berfungsi untuk menutup form menu utama dan keluar dari
aplikasi.
5. Logo Universias Sumatera Utara.
3.4.3.2 Rancangan form connection port
Perencanaan form connection port bertujuan untuk membuka atau menutup flow data dari port serial. Form ini juga berfungsi sebagai penyamaan bout rate data sinkron
antara mikrokontroler sebagai pengirim data dan port serial sebagai media in flow data. Berikut rancangan form untuk koneksi data pada port serial, dapat dilihat pada
gambar 3.14.
KONEKSI PORT SERIAL
BOUD RATE COMM PORT
1 2
3
Connecting
Disconnecting
Exit
Gambar 3.14 Rancangan Form Koneksi Port Serial Keterangan:
1. Boud Rate berfungsi untuk memilih besarnya kecepatan transfer data antar
modul mikrokontroler dan PC
2. Comm Port berfungsi untuk memilih port yang terhubung dengan port serial
oleh mikrokontroler.
3. Label berisi keterangan tentang konektivitas yang terjadi.
Universitas Sumatera Utara
50
3.4.3.3 Rancangan form hasil pengukuran acquisition data
Form Acquisition data berfungsi sebagai form yang menampilkan hasil pengukuran volume minyak yang tersisa dan terpakai di dalam tanki serta memberikan informasi
status pompa dalam keadaan hidup atau mati on off. Rancangan hasil pengukuran volume minyak dapat dilihat pada gambar 3.15.
Acquisition Data
Data Realtime Status Pompa
Reset Data
MASTER CONTROL DATA FORM MIKROCONTROLLER
1 3
4 2
5 6
7
8
Gambar 3.15 Rancangan Form Acquisition Data Keterangan:
1. Lebel berisi Real time Date berupa penampil hari dan tanggal. 2. Lebel berisi Real timer penampil waktu.
3. Label Liter I berisi data realtime tentang hasil pengukuran volume minyak berdasarkan ruang yang kosong pada tanki terpakai.
4. Label Level I berisi data realtime tentang hasil pengukuran tinggi minyak berdasarkan ruang yang kosong pada tanki terpakai.
5. Label Liter II berisi data realtime tentang hasil pengukuran volume minyak berdasarkan ruang yang terisi pada tanki tersisa.
6. Label Level II berisi data realtime tentang hasil pengukuran tinggi minyak berdasarkan ruang yang terisi pada tanki tersisa..
7. Status Pompa untuk mengetahui apakah pompa dalam keadaan hidup on atau mati off.
Universitas Sumatera Utara
51
8. Tampilan data yang tersimpan di databased dalam rentang waktu per 5 detik dari data realtime.
3.4.3.4 Rancangan tentang about
Preancangan about ini berfungsi sebagai penampil informasi tentang cara kerja sistem mikrokontroller dan informasi aplikasi pada penelitian ini. Rancangan About dapat
dilihat pada gambar 3.16.
TENTANG INFORMASI
SIMULASI SISTEM OTOMASI POMPA UNTUK PENGUKURAN VOLUME MINYAK PADA TANKI DIESEL DENGAN MENGGUNAKAN
SENSOR ULTRASONIK PING PARALLAX BERBASIS MIKROKONTROLER AT89S51
Gambar 3.16 Rancangan Tentang About
Universitas Sumatera Utara
52
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1 Pengujian Perangkat Hardware
Pengujian perangkat keras meliputi pengujian rangkaian Mikrokontroler, Sensor, Power supply.
4.1.3 Pengujian Mikrokontroler AT89S51
Pengujian pada rangkaian mikrokontroler AT89S51 ini dilakukan dengan menghubungkan rangkaian minimum mikrokontroler AT89S51 dengan power suplay
sebagai sumber tegangan. Kaki 40 dihubungkan dengan sumber tegangan +5 Volt, sedangkan kaki 20 dihubungkan dengan negatif ground. Seperti yang terlihat pada
gambar 4.1.
Gambar 4.1 Pengujian Rangkaian Mikrokontroler AT89S51
[3]
Universitas Sumatera Utara
67
Kemudian tegangan pada pin 40 diukur menggunakan Voltmeter. Dari hasil pengujian didapatkan tegangan pada pin 40 sebesar +4,9 Volt. Selanjutnya langkah
pengujian dengan cara menghubungkan pin17 P3.7 dengan sebuah transistor C945 yang dihubungkan dengan sebuah LED indikator.
Langkah ini bertujuan apakah rangkaian minimum sistem mikrokontroler ini dapat bekerja apabila diberikan program.
Transistor C945 berfungsi sebagai saklar untuk mengendalikan hidupmati LED. Dengan demikian LED akan menyala jika transistor aktif dan sebaliknya LED
akan mati jika transistor tidak aktif. Tipe transistor yang digunakan adalah NPN C945, dimana transistor ini akan aktif saturasi jika pada basis diberi tegangan 5 volt logika
high dan transistor ini akan tidak aktif jika pada basis diberi tegangan 0 volt logika low. Basis transistor ini dihubungkan ke resistor 4,7 Kohm. resistor ini berfungsi
agar arus yang dikeluarkan oleh pin17 P3.7 cukup besar untuk men-trigger transistor C945. Selanjutnya program sederhana diisikan pada mikrokontroler AT89S51.
Program yang diisikan adalah sebagai berikut: Loop:
Setb p3.7 Call delay
Clr p3.7 Call delay
Jmp loop Delay:
Mov r7,255 Dly:
Mov r6,255 Djnz r6,
Djnz r7,dly Ret
End
Universitas Sumatera Utara
54
Pada program di atas bertujuan untuk menghidupkan LED yang terhubung ke P3.7 beberapa saat dan kemudian mematikannya. Perintah Setb P3.7 akan menjadikan
P3.7 berlogika high yang menyebabkan transistor C945 aktif dan LED akan menyala. Call delay akan menyebabkan LED ini hidup selama beberapa saat. Perintah
Clr P3.7 akan menjadikan P3.7 berlogika low kembali sehingga menyebabkan transistor tidak aktif dan LED akan mati. Perintah jmp Loop akan menjadikan
program tersebut berulang, sehingga akan tampak LED tersebut berkedip. Jika program tersebut diisikan ke mikrokontroller AT89S51, kemudian
mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian minimum mikrokontroller AT89S51 telah bekerja dengan baik.
4.1.1 Pengujian sensor ultrasonik
Pengujian sensor ultrasonik dilakukan dengan merancang program yang dapat menjadikan mikrokontroler sebagai pembacaan bit data output sensor dengan
menyambungkan LED pada port 0.0 hingga port 0.7. Fungsi LED merupakan karakteristik indikator pada setiap varian jarak pengukuran. Dari indikasi ini dapat
disimpulkan bahwa led yang hidup merupakan varian jarak membentuk pembacaan data secara biner. Berikut gambar rangkaian pengujian sensor ultra sonik pada
gambar 4.2.
Gambar 4.2 Rangkaian pengujian sensor ultrasonic
[6]
Universitas Sumatera Utara
55
Rangkaian di atas dapat berjalan dengan memprogram mikrokontroler untuk memberikan set-intruksi ke sensor agar dapat bekerja untuk mengukur dan mendeteksi
sinyal pantulannya. Hasil pengukuran berupa pulsa berupa varian frekwensi data level bit high 1 dan low 0 yang mewakili dari setiap varian jarak yang terdeteksi dari
sensor. Program pengujian sensor ultrasonik yaitu:
transmitter bit p1.0 tringer bit p 1.1
receiver bit p1.2 Start:
Setb transmitter ; Aktifkan logika high 1 pada port 1.0 Nop
; jeda 1µs Clr transmitter
; Clear pengiriman data port 1.0 logika low 0 kembali.
Jnb tringer, start ; lompat ke rutin printah selanjutnya jika data =
1, dan kembali start jika data bernilai 0 pada port 1.1 Jb receiver,
; Terima data sampai selesai Jarak:
Mov a,0h ; isi nilai 0 ke register A.
Inc a ; Tambahi 1 nilai pada register A.
Mov p0,a ; isi data pada register A ke port p0.
Call delay ; Panggil rutin delay jeda waktu.
Jnb receiver, jarak ; Data masih diterima ? jika ya ulangi tampil data.
Jmp start ; jika tidak lompat ke rutin Start.
delay: Mov r110
; Isi nilai 10 ke register 1. Djnz r1,
; kurangi 1 nilai pada register 1R1 sampai bernilai 0 Ret
Program di atas bekerja untuk mengatur kerja dari sensor untuk mengukur jarak dimana port 1.0 diberi logika high 1 sebanyak 1 siklus untuk memancarkan
gelombang ultrasonik dengan intruksi Setb transmitter lalu port 1.0 kembali ke logika low 0 kembali pada intruksi Nop no operation .
Universitas Sumatera Utara
56
Selanjutnya instruksi Jnb receiver, jarak akan membaca data yang diterima kemudian menampilkan data tersebut pada led yang dikoneksikan pada port p0.0
hingga p0.7 sebagai level bit data untuk pembacaan hasil data pengukuran. Sebagai contoh pada pengukuran jarak 1 Cm dari aktual data sensor didapat data 254 dimana
led pada port 0.1 hingga port 0.7 berlogika high led menyala, dan led pada port 0.0 berlogika low let tidak menyala. Dari pengujian didapat beberapa data dari varian
jarak dari 288 cm hingga 270 Cm dapat dilihat pada tabel 4.1.
Tabel 4.1 Hasil data bit aktual dari jarak sensor 300cm – 274 cm
NO JARAK
cm
JARAK SELISIH
cm DATA
AKTUAL cm
DATA DALAM
BINARY BIT HEXADESIMAL
1 300
255 11111111
0FF h 2
299 254
11111110 0FE h
3 298
253 11111101
0FD h 4
297 252
11111100 0FC h
5 296
251 11111011
0FB h 6
295 250
11111010 0FA h
7 294
249 11111001
0F9 h 8
293 248
11111000 0F8 h
9 292
247 11110111
0F7 h 10
291 246
11110110 0F6 h
11 290
245 11110101
0F5 h 12
289 11
244 11110100
0F4 h 13
288 12
242 11110010
0F2 h 14
287 13
241 11110001
0F1 h 15
286 14
240 11110000
0F0 h 16
285 15
239 11101111
0EF h 17
284 16
238 11101110
0EE h 18
283 17
236 11101100
0EC h 19
282 18
235 11101011
0EB h 20
281 19
234 11101010
0EA h 21
280 20
233 11101001
0E9 h 22
279 21
232 11101000
0E8 h 23
278 22
231 11100111
0E7 h 24
277 23
230 11100110
0E6 h 25
276 24
229 11100101
0E5 h 26
275 25
227 11100011
0E3 h 27
274 26
226 11100010
0E2 h
Universitas Sumatera Utara
57
Data biner yang didapat pada pembacaan aktual pada sensor dengan melihat led- led yang hidup dapat diubah menjadi data secara hexadesimal. Data hexadesimal
inilah yang digunakan sebagai data untuk memprogram untuk setiap varian jarak. Dari lima kali percobaan sebanyak 300 varian jarak dapat dilihat hasil
karakteristik sensor berupa grafik rata – rata ketelitian data sensor yang didapat dari
data aktual dengan jarak dan data data secara teori dengan jarak.
Gambar 4.3 Grafik data teori VS jarak
Jika dilihat dari grafik di atas maka didapat bahwa data yang dihasilkan konstan dari mulai jarak 2 Cm hingga 300 Cm. Jika mengacu pada data rata-rata aktual maka
terdapat beberapa pergeseran data diakibatkan persen ralat yang mempengaruhi kinerja sensor. Hal tersebut dapat di lihat pada grafik berikut.
Universitas Sumatera Utara
58
Gambar 4.4 Grafik data aktual praktek VS jarak
4.1.2.1 Analisa ketelitian alat Untuk mengetahui tingkat ketelitian pada alat ini, maka dilakukan percobaan pertama
pada alat sebanyak 300 varian jarak, dari percobaan dihitung berapa kali kesalahan yang terjadi pada alat, lalu dilakukan percobaan kedua sebanyak 300 kali varian jarak,
lalu dihitung kembali kesalahan yang terjadi pada alat. Demikian percobaan dilakukan hingga 5 kali, kemudian dihitung deviasi standar untuk mengetahui persentase
kesalahan pada alat. Berikut hasil percobaan pada tabel 4.2.
Universitas Sumatera Utara
59
Tabel 4.2 Hasil Analisa ketelitian alat
NO JARAK
cm
JARAK SELISIH
cm DATA
AKTUAL cm
HEXADESIMAL KESALAHAN
1 300
255 0FF h
2 299
254 0FE h
3 298
253 0FD h
4 297
252 0FC h
5 296
251 0FB h
6 295
250 0FA h
7 294
249 0F9 h
8 293
248 0F8 h
9 292
247 0F7 h
10 291
246 0F6 h
11 290
245 0F5 h
12 289
11 244
0F4 h 13
288 12
242 0F2 h
1 14
287 13
241 0F1 h
15 286
14 240
0F0 h 16
285 15
239 0EF h
17 284
16 238
0EE h 18
283 17
236 0EC h
1 19
282 18
235 0EB h
20 281
19 234
0EA h 21
280 20
233 0E9 h
22 279
21 232
0E8 h 23
278 22
231 0E7 h
24 277
23 230
0E6 h 25
276 24
229 0E5 h
26 275
25 227
0E3 h 1
27 274
26 226
0E2 h
Dengan demikian dapat dihitung deviasi standar sebagai berikut :
1
2 1
n
d d
d
n
1 16
3
15 3
Universitas Sumatera Utara
60
2 .
44 .
;
Perhitungan di atas menunjukkan bahwa standar deviasi dari alat rancangan adalah
sebesar 0.44 . Perhitungan ini didapat dari kesalahan pada tingkat ketelitian sensor
setiap nilai pengujian dari pengukuran yang didapat.
4.1.2 Pengujian Power Supply
Pada pengujian power supply, tegangan keluaran diukur menggunakan Volt meter dari hasil keluaran tegangan dari trafo CT step down yaitu sebesar +15 Volt, sebelum dan
sesudah regulator 7805 dan 7812 untuk masing – masing keluaran tegangan +5 Volt
dan +12 Volt. Dari hasil yang didapat diperoleh menunjukkan tegangan yang didapat pada keluaran tegangan setelah dioda bridge menghasilkan tegangan 13,8 Volt. Hal
ini dikarenakan dioda bridge membutuhkan tegangan sebesar 0,6 Volt untuk dapat bekerja.
Tegangan keluaran pada power supply ini digunakan untuk memberikan tegangan keseluruh rangkaian . keluaran tegangan +5 V digunakan untuk supply
tegangan pada mikrokontroller. Mikrokontroller dapat bekerja pada tegangan 4,0 Volt sampai dengan 5,0 Volt, sehingga keluaran untuk tegangan +5Volt ini cukup untuk
supply tegangan ke Mirokontroller AT89S51. Sedangkan keluaran tegangan +12 V digunakan untuk supply tegangan pada penerima infra merah yang memerlukan
tegangan + 9 Volt sehingga keluaran +12 Volt cukup untuk supply tegangan pada ranngkaian penerima infra merah.
4.2 Pengujian Perangkat Lunak