bab iii perancangan 3.1 umumeprints.umm.ac.id/39499/4/bab iii.pdf · 2018. 11. 7. · perancangan...

15
13 BAB III PERANCANGAN 3.1 Umum Pada bab ini akan dibahas mengenai perancangan sistem, yang meliputi perangkat keras dan perangkat lunak, dimana kedua bagian dari sistem ini saling menunjang dalam pengoperasian sistem sehingga akan diperoleh hasil yang diinginkan. Perancangan perangkat keras meliputi perancangan rangkaian loadcell, pengkondisi sinyal, rangkaian modem gsm sim 800, Lcd dan keypad, sementara itu pada perancangan perangkat lunak mengacu pada algoritma pembacaan sistem dari masing masing perangkat yang dikontrol beserta sistem keseluruhan. 3.2 Blok Diagram Blok diagram sistem terdiri atas loadcell, pengkondisi sinyal HX711, keypad, LCD, microcontroller, modem gsm dan buzzer. Blok diagram sistem menunjukkan hubungan antara microcontroller Atmega32 sebagai pusat kontrol dengan peripheral lainnya. Adapun perancagan Blok diagram sistem ditunjukkan dalam Gambar 3.1. ATMEGA 32 Modem GSM SIM800 Pengkondisi sinyal HX711 Load cell 50KG LCD 16X2 Buzzer Keypad HP Gambar 3.1 Blok Diagram Sistem 3.3 Prinsip Kerja Pada blok diagram diatas ditunjukkan dalam gambar 3.1, sistem melakukan pembacaan keypad dan menampilkan informasi pada LCD. Funsgi keypad dan LCD ini sebagai interaksi antara user dengan sistem dalam pengaturan

Upload: others

Post on 02-Feb-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

  • 13

    BAB III

    PERANCANGAN

    3.1 Umum

    Pada bab ini akan dibahas mengenai perancangan sistem, yang meliputi

    perangkat keras dan perangkat lunak, dimana kedua bagian dari sistem ini saling

    menunjang dalam pengoperasian sistem sehingga akan diperoleh hasil yang

    diinginkan. Perancangan perangkat keras meliputi perancangan rangkaian

    loadcell, pengkondisi sinyal, rangkaian modem gsm sim 800, Lcd dan keypad,

    sementara itu pada perancangan perangkat lunak mengacu pada algoritma

    pembacaan sistem dari masing masing perangkat yang dikontrol beserta sistem

    keseluruhan.

    3.2 Blok Diagram

    Blok diagram sistem terdiri atas loadcell, pengkondisi sinyal HX711,

    keypad, LCD, microcontroller, modem gsm dan buzzer. Blok diagram sistem

    menunjukkan hubungan antara microcontroller Atmega32 sebagai pusat kontrol

    dengan peripheral lainnya. Adapun perancagan Blok diagram sistem ditunjukkan

    dalam Gambar 3.1.

    ATMEGA 32

    Modem GSM

    SIM800Pengkondisi sinyal

    HX711

    Load cell

    50KG

    LCD 16X2

    BuzzerKeypad

    HP

    Gambar 3.1 Blok Diagram Sistem

    3.3 Prinsip Kerja

    Pada blok diagram diatas ditunjukkan dalam gambar 3.1, sistem

    melakukan pembacaan keypad dan menampilkan informasi pada LCD. Funsgi

    keypad dan LCD ini sebagai interaksi antara user dengan sistem dalam pengaturan

  • 14

    dan pemantauan, dimana pada pengontrolan ini user dapat melakukan pengontrol

    penyimpanan nomor tertentu sebagai nomor emergency yang akan dihubungi via

    SMS saat terjadi indikasi pencurian yang dideteksi sensor, sementara pemantauan

    merupakan hasil pembacaan berat secara realtime dari loadcell yang ditampilkan

    pada LCD.

    Pada kondisi awal saat sistem dinyalakan, maka microcontroller

    Atmega32 melakukan inisialisasi input output untuk perangkat yang digunakan,

    dimana pada kondisi ini sistem melakukan komunikasi serial pada SIM800 untuk

    mengaktifkan modul SIM800, selanjutnya inisialisasi LCD agar lcd dapat

    difungsikan sebagai penampil informasi 16X2 karakter. Selanjutnya sistem

    melakukan pembacaan memori nomor emergency yang disimpan sistem untuk

    digunakan pada proses komunikasi SMS jika terjadi indikasi pencurian. Pada

    proses selanjutnya sistem berada pada mode siaga, dimana pada kondisi sistem

    melakukan pembacaan ADC HX711 untuk mengetahui informasi berat yang

    dibaca oleh loadcell, hasil pembacaan selanjutnya ditampilkan pada LCD. Jika

    terjadi perubahan berat yang drastis dari berat awal yang dibaca loadcell maka

    sistem akan mendeteksi pencurian dan memberikan laporan kepada user pemilik

    nomor emergency yang telah disimpan sebelumnya pada sistem. Pada kondisi ini

    juga alarm akan berbunyi. Sistem akan kembali normal saat user mereset sistem

    dari menu keypad sebagai tanda keamanan telah dikendalikan.

    3.4 Perancangan Perangkat Keras (Hardware)

    Untuk perancangan perangkat keras (Hardware) meliputi perancangan

    rangkaian sistem serta analisis rancangannya. Adapun perancangan masing

    masing bagian perangkat keras diuraikan dengan mengacu pada blok diagram

    sebagaimana pembahasan berikut:

    3.4.1 Perancangan Loadcell dan pengkondisi sinyal HX711

    Untuk membaca berapa besar berat massa maka digunakan sensor berat.

    Sensor berat yang digunakan adalah 4 buah Load Cell yang masing – masing

    memiliki kapasitas berat maksimum 50 kg. Pada rancangan mekanik load cell

    digunakan dengan diberi alas di bawahnya dan tempat di atasnya seperti

    ditunjukkan pada Gambar 3.2:

  • 15

    Gambar 3.2 Load Cell Tampak Samping

    Agar sistem dapat mengamati perubahan berat, maka diperlukan sensor berat

    berupa loadcell. Loadcell merupakan komponen elektronika instrument yang

    merubah besaran berat menjadi perubahan resistansi, sementara itu rangkaian

    resistansi dari loadcell membentuk jembatan weithstone atau terdiri dari 4 resistor

    yang membentuk susunan jembatan dengan 4 terminal keluaran. Agar keluaran

    Loadcell menjadi perubahan tegangan, maka 2 terminal loadcell diberikan

    tegangan DC dengan demikian 2 terminal lainnya merupakan output dengan

    tegangan berubah - ubah sesuai perubahan resistansi sensor. Pada output loadcell

    tegangan yang dihasilkan belum dapat dibaca langsung melalui ADC karena 2

    output tersebut mempunyai selisih tegangan yang akan berubah saat output

    lainnya berubah sehingga diperlukan rakaian pengkondisi sinyal menggunakan

    modul HX711. Modul HX711 merupakan modul ADC 14 bit yang digunakan

    untuk melakukan pembacaan presisi pada 2 input difrensial yang dihasilkkan dari

    loadcell sehingga didapat hasil kalibrasi data yang maksimal dalam melakukan

    pengukuran. Adapun perancangan rangkaian pengkodisi sinyal HX711 untuk

    loadcell ditunjukkan sebagaimana Gambar 3.3:

    Gambar 3.3 Rangkaian Loadcell dan Pengkondisi Sinyal

    Vcc

    SCL

    SDA

    GND

    +

    A

    B

    -

    HX711

    Loadcell ADC modul

    +

    A

    -

    LOADCEL50Kg

    5V

    PB0/T0/XCK1

    PB1/T12

    PB2/AIN0/INT23

    PB3/AIN1/OC04

    PB4/SS5

    PB5/MOSI6

    PB6/MISO7

    PB7/SCK8

    RESET9

    XTAL212

    XTAL113

    PD0/RXD14

    PD1/TXD15

    PD2/INT016

    PD3/INT117

    PD4/OC1B18

    PD5/OC1A19

    PD6/ICP120

    PD7/OC221

    PC0/SCL22

    PC1/SDA23

    PC2/TCK24

    PC3/TMS25

    PC4/TDO26

    PC5/TDI27

    PC6/TOSC128

    PC7/TOSC229

    PA7/ADC733

    PA6/ADC634

    PA5/ADC535

    PA4/ADC436

    PA3/ADC337

    PA2/ADC238

    PA1/ADC139

    PA0/ADC040

    AREF32

    AVCC30

    U6

    ATMEGA32

    +

    A

    -

    LOADCEL50Kg

    +

    A

    -

    LOADCEL50Kg

    +

    A

    -

    LOADCEL50Kg

  • 16

    3.4.2 Perancangan Rangkaian LCD 16x2

    Perancangan penampil informasi dan tampilan menu Setting pada

    perancangan ini menggunakan LCD 16X2 karakter dengan type LM016M02

    buatan seiko. LCD ini dirancang dengan menggunakan mode 4 bit untuk

    pengiriman byte instruksi maupun data, sehingga hanya memerlukan 4 jalur data,

    1 bit untuk jalur pin RS dan 1 bit untuk jalur pin Enable LCD. Adapun

    perancangan rangkaian LCD 16X2 ditunjukkan dalam Gambar 3.4.

    Gambar 3.4 Rangkaian LCD 16X2

    VR1 pada rangkaian LCD digunakan untuk mengatur tingkat

    kecerahan dari contrast LCD 16X2. Sementara itu pin RS dihubungkan pada

    PORTC.5 untuk proses pengaturan mode instruksi atau data yang akan dituliskan

    pada LCD melalui microcontroller sedangkan Pin E LCD yang dihubungkan ke

    PORTC.4 digunakan untuk mengunci data atau perintah yang dikirim dari

    microcontroller. Sementara itu byte data dikirim dari PORTC.0 hingga PORTC.3

    sebagai masukan data atau perintah yang dikirim 4 bit MSB dan 4 bit LSB secara

    bergantian setelah Pin E diaktifkan. Untuk lebih jelasnya, fungsi pin pengendali

    LCD ditunjukkan dalam Tabel 3.1.

    R1

    33K

    5V

    D7

    14

    D6

    13

    D5

    12

    D4

    11

    D3

    10

    D2

    9D

    18

    D0

    7

    E6

    RW

    5R

    S4

    VS

    S1

    VD

    D2

    VE

    E3

    LCD1LM016L

    PB0/T0/XCK1

    PB1/T12

    PB2/AIN0/INT23

    PB3/AIN1/OC04

    PB4/SS5

    PB5/MOSI6

    PB6/MISO7

    PB7/SCK8

    RESET9

    XTAL212

    XTAL113

    PD0/RXD14

    PD1/TXD15

    PD2/INT016

    PD3/INT117

    PD4/OC1B18

    PD5/OC1A19

    PD6/ICP120

    PD7/OC221

    PC0/SCL22

    PC1/SDA23

    PC2/TCK24

    PC3/TMS25

    PC4/TDO26

    PC5/TDI27

    PC6/TOSC128

    PC7/TOSC229

    PA7/ADC733

    PA6/ADC634

    PA5/ADC535

    PA4/ADC436

    PA3/ADC337

    PA2/ADC238

    PA1/ADC139

    PA0/ADC040

    AREF32

    AVCC30

    U3

    ATMEGA32

    RESET

  • 17

    No Pin ATMEGA32 Pin LCD Fungsi

    1 PORTC.0 RS

    Pengendali mode untuk penulisan

    instruksi atau data pada LCD:

    0 :Tulis data

    1:Tulis Instruksi

    2 PORTC.1 E

    Enable LCD, digunakan untuk

    melakukan akses pada LCD baik

    penulisan instruksi maupun data.

    EN= active transisi tinggi (aktif

    pada saat input naik dari logika 0

    menuju 1)

    3 PORTC.2 D.4

    4 bit masukan data LCD 4 PORTC.3 D.5

    5 PORTC.4 D.6

    6 PORTC.5 D.7

    Tabel 3.1 Pin Antarmuka Microcontroller dan LCD

    3.4.3 Perancangan Rangkaian Keypad Matrix 4x4

    Sebagai antarmuka antara user dengan sistem dalam pemasukan input,

    maka pada perancangan ini digunakan keypad guna melakukan pengaturan menu

    dan perubahan Setting pada sistem. Keypad yang digunakan pada perancangan ini

    adalah keypad 4X4 matrix yang diproses secara scanning dalam melakukan

    pembacaan tombol yang ditekan oleh user, adapun perancangan rangkaian keypad

    4X4 ditunjukkan dalam Gambar 3.5.

    Gambar 3.5 Rangkaian Keypad Matrix 4x4

    1 2 3

    654

    8 9

    =

    7

    ++CON

    0

    A

    B

    C

    D

    1 2 43

    R1

    10k

    5V

    PB0/T0/XCK1

    PB1/T12

    PB2/AIN0/INT23

    PB3/AIN1/OC04

    PB4/SS5

    PB5/MOSI6

    PB6/MISO7

    PB7/SCK8

    RESET9

    XTAL212

    XTAL113

    PD0/RXD14

    PD1/TXD15

    PD2/INT016

    PD3/INT117

    PD4/OC1B18

    PD5/OC1A19

    PD6/ICP120

    PD7/OC221

    PC0/SCL22

    PC1/SDA23

    PC2/TCK24

    PC3/TMS25

    PC4/TDO26

    PC5/TDI27

    PC6/TOSC128

    PC7/TOSC229

    PA7/ADC733

    PA6/ADC634

    PA5/ADC535

    PA4/ADC436

    PA3/ADC337

    PA2/ADC238

    PA1/ADC139

    PA0/ADC040

    AREF32

    AVCC30

    U1

    ATMEGA32

  • 18

    Untuk lebih jelasnya konfigurasi pin antarmuka microcontroller dan

    keypad ditunjukkan dalam Tabel 3.2.

    No PORT

    ATMEGA32

    Nomor Pin

    ATMEGA32 Pin Keypad

    1 PORTB.0 10 A

    2 PORTB.1 11 B

    3 PORTB.2 12 C

    4 PORTB.3 13 D

    5 PORTB.4 14 1

    6 PORTB.5 15 2

    7 PORTB.6 16 3

    8 PORTB.7 17 4

    Tabel 3.2 Pin Antarmuka Microcontroller dan Keypad

    3.4.4 Perancangan Rangkaian modul GSM SIM800

    Pada perancangan sistem komunikasi data antara user dengan sistem,

    digunakan Modem SIM800L yang difungsikan sebagai media pengirim SMS.

    Modul SIM800L merupakan jenis modem yang bekerja pada jaringan GSM dan

    pada perancangan ini digunakan sebagai media pengirim SMS yang dikontrol

    melalui sistem Microcontroller. Agar dapat saling berkomunikasi antara Modem

    dengan microcontroller, maka modul SIM800L yang bekerja menggunakan

    komunikasi serial dihubungkan dengan pin komunkasi pada pin RX TX

    ATMega32. Adapun perancangan rangkaian pada modul SIM800 ditunjukkan

    dalam Gambar 3.6.

    Gambar 3.6 Rangkaian Modem SIM800L

    Vcc

    RXD

    TXD

    Ant

    ANTENNA

    Modul GSM SIM800L

    SIM

    CARD

    GND

    5V

    PB0/T0/XCK1

    PB1/T12

    PB2/AIN0/INT23

    PB3/AIN1/OC04

    PB4/SS5

    PB5/MOSI6

    PB6/MISO7

    PB7/SCK8

    RESET9

    XTAL212

    XTAL113

    PD0/RXD14

    PD1/TXD15

    PD2/INT016

    PD3/INT117

    PD4/OC1B18

    PD5/OC1A19

    PD6/ICP120

    PD7/OC221

    PC0/SCL22

    PC1/SDA23

    PC2/TCK24

    PC3/TMS25

    PC4/TDO26

    PC5/TDI27

    PC6/TOSC128

    PC7/TOSC229

    PA7/ADC733

    PA6/ADC634

    PA5/ADC535

    PA4/ADC436

    PA3/ADC337

    PA2/ADC238

    PA1/ADC139

    PA0/ADC040

    AREF32

    AVCC30

    U4

    ATMEGA32

  • 19

    No PORT

    ATMEGA32

    Nomor Pin

    ATMEGA32 Pin modul SIM800

    1 PORTD.0/RXD0 14 TXD

    2 PORTD.1/TXD1 15 RXD

    Tabel 3.3 Pin Antarmuka Microcontroller dan SIM800

    3.4.5 Perancangan Rangkaian Driver Buzzer

    Pada perancangan ini Buzzer yang digunakan mempunyai tegangan

    supplay sebesar 12VDC, sementara itu tegangan sistem ATMEGA32 yang

    bertindak sebagai pengendali Buzzer adalah 5V, maka untuk mengontrol Buzzer

    diperlukan rangkaian Driver yang pada rancangan ini menggunakan perantara

    Optocoupler sebagai pemisah beda tegangan antara rangkaian driver Buzzer dan

    minimum sistem ATMEGA32. Pada perencanaan Driver Buzzer dari alat yang

    akan dirancang, Buzzer yang digunakan mempunyai resistansi coil sekitar 50Ω

    dan membutuhkan catu daya sebesar 12 Volt DC, dengan demikian, maka arus

    yang diperlukan Buzzer adalah :

    I = BuzzerRcoil

    VCC

    _ =

    50

    12 = 0,24 Amper.

    Sementara itu perancangan rangkaian driver Buzzer ditunjukkan dalam

    Gambar 3.7.

    Gambar 3.7 Rangkaian Driver Buzzer

    Alasan pengunaan IC optocoupler ini adalah untuk pengisolasian

    rangkaian kontrol dengan beban supaya tidak terjadi gangguan pada saat sistem

    bekerja. Dalam rangkaian ini juga terdapat dioda yang berfungsi untuk

    melewatkan arus balik Coil Buzzer pada saat perubahan kondisi dari keadaan ON

    R1

    270

    6

    5

    4

    1

    2

    U2

    OPTOCOUPLER-NPN

    R2

    27K

    Q1PN2222

    Q2PN2222

    D1DIODE

    12V

    BUZ1

    BUZZER

    5V

    PB0/T0/XCK1

    PB1/T12

    PB2/AIN0/INT23

    PB3/AIN1/OC04

    PB4/SS5

    PB5/MOSI6

    PB6/MISO7

    PB7/SCK8

    RESET9

    XTAL212

    XTAL113

    PD0/RXD14

    PD1/TXD15

    PD2/INT016

    PD3/INT117

    PD4/OC1B18

    PD5/OC1A19

    PD6/ICP120

    PD7/OC221

    PC0/SCL22

    PC1/SDA23

    PC2/TCK24

    PC3/TMS25

    PC4/TDO26

    PC5/TDI27

    PC6/TOSC128

    PC7/TOSC229

    PA7/ADC733

    PA6/ADC634

    PA5/ADC535

    PA4/ADC436

    PA3/ADC337

    PA2/ADC238

    PA1/ADC139

    PA0/ADC040

    AREF32

    AVCC30

    U5

    ATMEGA32

  • 20

    ke OFF supaya tidak merusak transistor (2N2222). Dioda yang digunakan

    sebaiknya yang mempunyai kemampuan melewatkan arus lebih besar dari

    besarnya arus balik Coil Buzzer yang akan melewatinya.

    Transistor yang digunakan sebagai driver dipilih dengan pertimbangan

    arus collector maksimum yang besarnya 3 kali. Dengan kebutuhan arus tersebut

    maka dipilih transistor type 2N2222A sebagai driver Buzzer. Dari datasheet

    diketahui bahwa transistor tipe 2N2222A memiliki arus kolektor sebesar 800mA.

    Dalam perencanaannya kedua transistor (2N2222A) didarlington untuk penguatan

    yang besar yakni perkalian dari penguatan kedua transistor tersebut. Ditetapkan

    drop tegangan pada Vce opto = 1V (saturation).

    Maka R2 atau RB dapat dicari dengan rumus:

    Rb= Ib

    VbeoptoVceVcc .2)(

    Dimana Ib= Ic_opto

    Untuk Ic dapat dicari dengan menetapkan berapa Ib / β dari tiap- tiap

    transistor.

    Ic= Ib. (β1. β2)

    Sedangkan Iint dapat dicari dengan :

    Iint= intR

    Vcc

    Untuk semua perencanaannya dapat dilihat sebagai berikut:

    Dalam pengukuran diketahui Rint= 50 Ω

    Maka:

    Iint= 50

    12V = 0,24 A= 240mA

    Maka harus dicari transistor yang mempunyai Ic lebih besar dari Iint. Untuk

    itu dipilih transistor 2N2222A yang memiliki Ic = 800mA.

    Karena Ib2 = Ic TR1, Maka:

  • 21

    Ic TR1=

    2IcTR

    =50

    800mA = 0,016A

    Ib TR1=

    1IcTR

    =50

    016,0 A = 0,00032A

    Maka dapat dicari nilai Rb dengan rumus:

    Rb = 1

    2)(

    IbTR

    VbeoptoVceVcc

    =A

    V

    00032,0

    )3,1*23,012(

    = A

    V

    00032,0

    1,9 = 28437 Ω ≈ 27KΩ (harga R dipasaran)

    Untuk nilai Rpull_up dapat dicari dengan rumus:

    R1 =Iol

    VdVcc

    Dimana nilai Vd sama dengan 1- 1,5 V dan Iol sebesar 16mA

    Maka R1 = mA

    V

    16

    )5,15( = 221.87Ω ≈ 270Ω

    sehingga didapat nilai R1 = 270Ω.

  • 22

    3.4.6 Perancangan Rangkaian Keseluruhan

    Setelah merancangan bagian bagian dari sistem perangkat keras, maka

    hasil keseluruhan dari rangkaian menjadi suatu minimum sistem yang saling

    berkaitan. Adapun konfigurasi rangkain keseluruhan sistem ditunjukkan pada

    gambar 3.8:

    Gambar 3.8 Rangkaian Keseluruhan

    3.5 Perancangan Perangkat Lunak (Software)

    Agar seluruh hardware yang dirancang dapat dikontrol dan dimonitor oleh

    microcontroller, maka diperlukan software pengendali yang didownloadkan pada

    microcontroller tersebut. Perancangan software pada sistem pengaman gudang

    gabah menggunakan loadcell dan system SMS dirancang menggunakan software

    BASCOMM AVR. Sedangkan proses dari kerja masing-masing software

    mengacu pada algoritma kerja sistem sebagaimana pembahasan berikut:

    3.5.1 Perancangan Perangkat Lunak Baca SMS Pada Modem

    Pada perancangan ini SMS masuk dan proses pengiriman SMS ditangani

    sepenuhnya oleh mikrokontroller ATmega64 melalui modem SMS dengan

    komunikasi serial 9600bps. Adapun prosedur pembacaan dan penerimaan SMS

    R1

    33K

    5V

    D7

    14

    D6

    13

    D5

    12

    D4

    11

    D3

    10

    D2

    9D

    18

    D0

    7

    E6

    RW

    5R

    S4

    VS

    S1

    VD

    D2

    VE

    E3

    LCD1LM016L

    PB0/T0/XCK1

    PB1/T12

    PB2/AIN0/INT23

    PB3/AIN1/OC04

    PB4/SS5

    PB5/MOSI6

    PB6/MISO7

    PB7/SCK8

    RESET9

    XTAL212

    XTAL113

    PD0/RXD14

    PD1/TXD15

    PD2/INT016

    PD3/INT117

    PD4/OC1B18

    PD5/OC1A19

    PD6/ICP120

    PD7/OC221

    PC0/SCL22

    PC1/SDA23

    PC2/TCK24

    PC3/TMS25

    PC4/TDO26

    PC5/TDI27

    PC6/TOSC128

    PC7/TOSC229

    PA7/ADC733

    PA6/ADC634

    PA5/ADC535

    PA4/ADC436

    PA3/ADC337

    PA2/ADC238

    PA1/ADC139

    PA0/ADC040

    AREF32

    AVCC30

    U3

    ATMEGA32

    RESET

    Vcc

    RXD

    TXD

    Ant

    ANTENNA

    Modul GSM SIM800L

    SIM

    CARD

    GND

    5V

    R1

    270

    6

    5

    4

    1

    2

    U2

    OPTOCOUPLER-NPN

    R2

    27K

    Q1PN2222

    Q2PN2222

    D1DIODE

    12V

    BUZ1

    BUZZER

    5V

    Vcc

    SCL

    SDA

    GND

    +

    A

    B

    -

    HX711

    Loadcell ADC modul

    +

    A

    B

    -

    LOADCEL1Kg

    5V

    123

    6 5 4

    89

    =

    7

    ++ CON

    0

    A

    B

    C

    D

    124 3

  • 23

    pada modem dilakukan dengan cara mengirim perintah AT Command

    sebagaimana ditunjukkan dalam Gambar 3.9.

    Mulai

    Inisialisasi Serial

    Baca Data Serial

    Data Serial

    =”+CMTI=X”?

    Baca Balasan Serial

    (Baca SMS) Kirim Perintah

    AT + CMGR = X

    Data header

    =”+CGMR=REC

    UNREAD”?

    Baca nomor pengirim

    pada line 3

    Baca nomor pengirim

    pada line 2

    Selesai

    Tidak

    Tidak

    Ya

    Ya

    Gambar 3.9 Fowchart Pembacaan SMS

    3.5.2 Perancangan Perangkat Lunak Kirim SMS Pada Modem

    Untuk melakukan pengiriman SMS melalui modem yang dapat dikontrol

    melalui mikrokontroller, maka diperlukan perancangan perangkat lunak yang

    bertugas sebagai pengirim text SMS ke nomor tujuan. Pada modem SMS proses

    pengiriman SMS juga diatur melalui AT Command yaitu “AT+CMGS=nomor”,

    contoh: AT+CMGS=08123456789 lalu enter (char 13), kemudian modem akan

    membalas dengan karakter “>” sebagai tanda modem siap menerima text. Pada

    kondisi tersebut, maka mikrokontroller dapat mengirimkan text yang akan dikirim

  • 24

    via SMS lalu diakhiri karakter 26 dan selanjutnya menunggu balasan OK atau

    ERROR. Jika balasan berupa OK, maka pengiriman SMS berhasil, tapi jika

    balasan yang diterima ERROR, maka SMS gagal terkirim yang disebabkan oleh

    jaringan GSM, kesalahan nomor service center atau pulsa tidak mencukupi.

    Adapun prosedur pengiriman SMS pada modem ditunjukkan dalam Gambar 3.10.

    Gambar 3.10 Fowchart Pengiriman SMS

    Tidak

    Tidak

    Ya

    Ya Ya

    Tidak

    Mulai

    Selesai

    Inisialisasi Serial

    Balasan =

    ‘>’?

    Kirim serial

    AT+CMGS=nomor_tujuan

    Kirim Text SMS + Karakter 26

    Baca Balasan Modem

    Balasan=

    ’OK’ ?

    SMS Terkirim

    Balasan=

    ’ERROR’ ?

    SMS Gagal Terkirim

  • 25

    3.5.3 Perancangan Perangkat Lunak Pembacaan Matrix Keypad

    Pembacaan keypad matrix 4X4 dalam perancangan ini menggunakan

    metode scan. Adapun prosesnya ditunjukkan sebagaimana flowchart dalam

    Gambar 3.11

    Start

    Inisialisasi

    PD.7 = Baris 1/output

    PD.6 = Baris 2/output

    Scan baris 1

    Data baris = 01111111

    Kolom1=0? Kolom2=0? Kolom4=0 ?Kolom3=0 ?

    Data keypad =

    ‘1’

    Data keypad = ‘2’

    Data keypad = ‘3’

    Data keypad =COR

    Scan baris 2 Data baris = 10111111

    Kolom1=0 ? Kolom2=0 ? Kolom4=0 ?Kolom3=0 ?

    Data keypad = ‘4’

    Data keypad = ‘5’

    Data keypad = ‘6’

    Data keypad = MEN

    A

    AB

    Yes Yes Yes Yes

    Yes Yes Yes Yes

    No No No

    NoNoNo

    No

    No

    Scan baris 3 Data baris = 11011111

    Kolom1=0 ? Kolom2=0 ? Kolom4=0 ?Kolom3=0 ?

    Data keypad = ‘7’

    Data keypad = ‘8’

    Data keypad = ‘9’

    Data keypad = UP

    Yes Yes Yes Yes

    No No No No Scan baris 4 Data baris = 11101111

    Kolom1=0 ? Kolom2=0 ? Kolom4=0 ?Kolom3=0 ?

    Data keypad = CAN

    Data keypad = ‘0’

    Data keypad = ENT

    Data keypad = DOWN

    Yes Yes Yes Yes

    No No No No

    B

    End

    Gambar 3.11 Algoritma Pembacaan Keypad Dengan Sistem Matrik

    Proses scanning keypad matrix 4X4 pada perancangan sebagaimana

    ditunjukkan pada flowchat gambar 3.10 merupakan proses pencarian data

    penekanan tombol yang diakses secara terus menerus, dimana proses yang

  • 26

    dilakaukan adalah dengan memberikan data baris yang hanya memebrikan logika

    nol pada salah satu baris sementara baris lainnya 1 (high), kemudian jika ada

    penekenan tombol pada area kolom 1 hingga kolom 4, maka nilai input pada

    kolom tersebut akan ikut berlogika nol, hasil input tersebut selanjutnya

    dihubungkan dengan nomor matrix dari keypad untuk mendapatkan data dari

    masukan keypad, contoh untuk scan baris 1, data yang diberikan pada

    PORTD=01111111B, dimana baris 1 ditempati PORTD.7 yang berlogika 0, jika

    pada saat tersebut terdapat penekanan tombol, maka salah satu dari input kolom

    akan berlogika 0 akibat short ke 0 dari PORTD.7, seuatu kolom 1 ditekan (tombol

    1 atau baris 1 kolom 1), maka PORTD.3 yang ditempati kolom 1 akan berlogika 0

    dana data PORTD menjadi 01110111B yaitu PORTD.3 short dengan PORTD.7,

    hasil ini selanjutnya digunakan sebagai acuan data penekanan tombol dari baris 1

    kolom 1 dan memberikan hasil data keypad 1 sebagai tanda angka 1 ditekan.

    Begitu seterusnya untuk scan baris 2 dan selanjutnya.

    3.5.4 Perancangan Perangkat Lunak Tulis Intruksi LCD

    Prinsip kerja dari proses penampil LCD ditunjukkan pada flowchart

    dalam Gambar 3.12.

    Mulai

    Aktifkan RS LCD (1)

    Set Enable LCD

    Masukkan Data intruksi LCD

    Keluarkan Data 4bit pada port LCD

    Enable LCD di isi 0

    Enable LCD di isi 1

    Selesai

    Gambar 3.12 Algoritma Tulis Instruksi Pada LCD

  • 27

    Sementara itu proses tulis karakter/data pada baris LCD caranya sama

    ditunjukkan dalam Gambar 3.12, hanya saja pada proses penulisan data karakter

    RS diberi logika rendah (0).

    3.6 Flow Chart Sistem Keseluruhan

    Setelah perancangan dari hardware dan software, maka prinsip kerja

    keseluruhan dari alat ditunjukkan sebagaimana gambar 3.13:

    Start

    Inisialisasi

    Baca keypad

    Data keypad=’A’ ?

    Data keypad=’B’ ? Tampil Menu Menu = edit user?Y

    Menu = delete

    user?

    Isi nomor HP

    dari keypad

    Save to

    EEPROMY

    Baca user index

    Delete

    from

    EEPROMY

    T

    T

    Set berat =

    berat sekarangY

    Baca loadcell

    T

    Berat < seting

    berat?

    Power=OFF?

    T

    END

    Y

    T

    T

    YBaca nomor User

    Kirim SMS

    Gambar 3.13 Flowchart Sistem