PENYEMPROT ANTISEPTIK TANGAN OTOMATIS



KELOMPOK D6

Disusun Oleh :

    1. Andini Ayuning P        (3.32.19.3.04)

    2. Fikri Darmawan          (3.32.19.3.11)

    3. Novereza Dwiky S      (3.32.19.3.19)

    4. Riska Dwi Aulia          (3.32.19.3.23)

Input : Sensor Infra Merah

Output : LCD 16x2 dan Motor DC

   LATAR BELAKANG

    Pada awal tahun 2020, Indonesia mulai dilanda pandemi virus mematikan yang bernama Corona Virus atau yang disebut juga dengan COVID-19 (Corona Virus Disesea 2019). Hal ini menunjukkan COVID-19 merupakan masalah serius. Penularan COVID-19 menurut WHO dapat melalui berbagai cara yaitu melalui droplet saat seseorang batuk, bersin, bernyanyi, berbicara, hingga bernapas,selain itu melalui udara, melalui permukaan yang terkontaminasi, dan melalui fecal-oral atau limbah manusia. Salah satu media penularan yang rentan tersebar yaitu tangan yang telah melakukan berbagai aktivitas. Hal ini menjadi inspirasi untuk membuat suatu sistem yang dapat mencegah penularan dan memutus rantai penyebaran COVID-19. 

    Terdapat berbagai penelitian yang menunjukan bahwa membersihkan tangan dengan menggunakan antiseptik dapat membunuh kuman dan bakteri. Namun, penggunaan bersama antiseptik ditempat umum dapat berpotensi dalam menularkan COVID-19. Potensi ini terjadi ketika pengeluran cairan antiseptik dari kemasan dengan menekan botol antiseptik. Berdasarkan hal tersebut, kelompok kami akan membuat suatu alat pengeluaran antiseptik dari kemasan dengan otomatis. Tujuan dari pembuatan alat tersebut adalah untuk mengurangi kontak yang dilakukan oleh pengguna pada botol antiseptik

    Komponen yang biasa digunakan dalam pembuatan antiseptik otomatis terdiri dari sensor infra merah, IC AT89S51 , modul relay,motor,dan LCD 2 x 16. Sensor infra merah mendeteksi objek dan mengirimkan input ke IC AT89S51 . IC AT89S51  menerima input dan mengirimkan data ke modul program untuk di proses. Modul program melakukan pemprosesan data dan menghasilkan instruksi-instruksi yang kemudian dikirim kembali ke IC AT89S51 . Sedangkan IC AT89S51  memberikan output ke modul relay,motor dan menampilkanya di LCD.

Presentasi Power Point (Download Power Point)


Program Bahasa Assembly : (Download Program)


;=== Deklarasi variabel ===
  kar1    equ       'B'             ;karakter X sesuai kelompok
  pos1    equ       10000000b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar2    equ       'A'             ;karakter Y sesuai kelas
  pos2    equ       10000001b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]
  kar3    equ       'S'             ;karakter X sesuai kelompok
  pos3    equ       10000010b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar4    equ       'U'             ;karakter Y sesuai kelas
  pos4    equ       10000011b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]
  kar5    equ       'H'             ;karakter X sesuai kelompok
  pos5    equ       10000100b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
 
  kar6    equ       'T'             ;karakter X sesuai kelompok
  pos6    equ       10000110b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar7    equ       'A'             ;karakter Y sesuai kelas
  pos7    equ       10000111b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]
  kar8    equ       'N'             ;karakter X sesuai kelompok
  pos8    equ       10001000b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar9    equ       'G'             ;karakter Y sesuai kelas
  pos9    equ       10001001b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]
  kar10    equ       'A'             ;karakter X sesuai kelompok
  pos10    equ       10001010b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar11    equ       'N'             ;karakter X sesuai kelompok
  pos11    equ       10001011b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar12    equ       'M'             ;karakter Y sesuai kelas
  pos12   equ        10001100b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]
  kar13    equ       'U'             ;karakter X sesuai kelompok
  pos13    equ       10001101b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]

;===================================='
  kar14    equ       'T'             ;karakter X sesuai kelompok
  pos14    equ       10000000b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar15    equ       'E'             ;karakter Y sesuai kelas
  pos15    equ       10000001b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]
  kar16    equ       'R'             ;karakter X sesuai kelompok
  pos16    equ       10000010b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar17    equ       'I'             ;karakter Y sesuai kelas
  pos17    equ       10000011b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]
  kar18    equ       'M'             ;karakter X sesuai kelompok
  pos18    equ       10000100b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar19    equ       'A'             ;karakter X sesuai kelompok
  pos19    equ       10000101b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar20    equ       'K'             ;karakter Y sesuai kelas
  pos20    equ       10000111b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]

  kar21    equ       'A'             ;karakter X sesuai kelompok
  pos21    equ       10001000b      ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar22    equ       'S'             ;karakter Y sesuai kelas
  pos22    equ       10001001b       ;  posisi 1yxxxxxxb [1+baris1(1)+kolomY(6)]
  kar23    equ       'I'             ;karakter X sesuai kelompok
  pos23    equ       10001010b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]
  kar24    equ       'H'             ;karakter X sesuai kelompok
  pos24    equ       10001011b       ;  posisi 1yxxxxxxb [1+baris0(1)+kolomX(6)]

 
;====================================;

  lcd     equ       P0              ;LCD dipasang pada P0
  RS      equ       P3.5            ;Reg.Select (RS) 0:perintah/1:data
  En      equ       P3.7            ;Enable (En) transisi turun H->L

  perda   equ       3Ch             ;var perintah/data
  jeda    equ       1               ;lama jeda

;=== Pengesetan Awal ====
ORG 0                               ;alamat awal
AWAL:
  CALL    init  
;=== Program Utama ===
START:
SETB P2.6
SETB P2.7

MAIN :
JB P2.0,$

        CLR P2.6
SETB P2.7
        call DELAY
        CALL STOP
JNB P2.0 , $
        CLR P2.7
SETB P2.6
        call DELAY
CALL STOP 
    JMP mulai


STOP:
SETB P2.6
SETB P2.7
RET
DELAY: MOV R0,#0FFH
DELAY1: MOV R1,#0FFH
DELAY2:
NOP
nop
nop
nop
nop
nop
    DJNZ R1,DELAY2
    DJNZ R0,DELAY1
    RET
;=============================================;
mulai:

                    ;inisialisasi LCD



  MOV     perda,#pos1               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar1               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos2               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar2               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos3               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar3               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos4               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar4               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos5               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar5               ;tampilkan karakter
  CALL    tulisData                 ; data

  MOV     perda,#pos6               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar6               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos7               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar7               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos8               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar8               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos9               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar9               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos10               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar10               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos11               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar11               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos12               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar12               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos13               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar13               ;tampilkan karakter
  CALL    tulisData                 ; data

   MOV     perda,#00000001b
    CALL    tulisPerintah



  SJMP    TERIMAKASIH                         ;stop di sini
;-----------------------------------------------------------------------




TERIMAKASIH:
  MOV     perda,#pos14               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar14               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos15               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar15               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos16               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar16               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos17               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar17               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos18               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar18               ;tampilkan karakter
  CALL    tulisData                 ; data

  MOV     perda,#pos19               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar19               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos20               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar20               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos21               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar21               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos22               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar22               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos23               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar23               ;tampilkan karakter
  CALL    tulisData                 ; data
  MOV     perda,#pos24               ;posisi pada LCD
  CALL    tulisPerintah             ; perintah
  MOV     perda,#kar24               ;tampilkan karakter
  CALL    tulisData                 ; data
 
 CALL DELAY
 CALL DELAY
 MOV     perda,#00000001b
 CALL    tulisPerintah

JMP AWAL

;=== Sub program ===
;- init: inisialisasi tampilan LCD -------------------------------------
init:
;DB5-Set Fungsi       (001D NFxx) D:8bit N:baris0 F:kecil
  MOV     perda,#00111000b
  CALL    tulisPerintah
;DB3-Kontrol Tampilan (0000 1DCB) D:tampilan nyala C:kursor tidak B:berkedip tidak
  MOV     perda,#00001111b
  CALL    tulisPerintah
;DB0-Hapus Layar      (0000 0001)
  MOV     perda,#00000001b
  CALL    tulisPerintah
;DB2-Mode Entri       (0000 01IS) I:inkremen S:geser tidak
  MOV     perda,#00000110b
  CALL    tulisPerintah
RET                                  ;kembali
;-------------------------------------------------------------------------

;- tulisPerintah/Data: menulis perintah / data ke LCD --------------------
tulisPerintah:
  CLR     RS                            ;RS=0 Perintah
  SJMP    tulisPerda
tulisData:
  SETB    RS                            ;RS=1 Data
tulisPerda:
  MOV     LCD,perda                     ;kirim ke LCD <== perda
  SETB    En                            ;buat pulsa Enable sesaat
  CALL    tunda
  CLR     En
RET                                     ;kembali
;---------------------------------------------------------------------------

;- tunda: penunda waktu ----------------------------------------------------
tunda:                                  ;tunda:
  MOV 71h,#jeda                         ;nilai awal t1 (sesuai jeda)
tunda1:                                 ; tunda1
  MOV 72h,#0                            ;nilai awal t2
tunda2:                                 ; tunda2:
  MOV 73h,#0                            ;nilai awal t3
tunda3:                                 ; tunda3:
  NOP                                 ;diam
  DJNZ 73h,tunda3                       ;balik ke tunda3
  DJNZ 72h,tunda2                       ;balik ke tunda2
  DJNZ 71h,tunda1                       ;balik ke tunda1

RET                                     ;kembali
;----------------------------------------------------------------------------
;=== Tabel Konversi ===
END                                     ;selesai
Video Presentasi : (Download Video Presentasi)



Video Demonstrasi Alat : (Download Video Demonstrasi)







Subscribe to receive free email updates:

0 Response to "PENYEMPROT ANTISEPTIK TANGAN OTOMATIS "

Posting Komentar