remote unit dengan rfm12-433s untuk sistem … filelembar perseturuan tu.gas akhir remote...

131
TUGAS AKHIR REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM TELEMETRI KUALITAS AIR KOLAM IKAN Diajukan untuk memenuhi salah satu syarat Memperoleh gelar Sarjana Teknik pada Program Studi Teknik Elektro Jurusan Teknik Elektro Fakultas Sains dan Teknologi Universitas Sanata Dharma disusun oleh: ANDREAS BAGUS SADEWO NIM : 115114008 PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2015 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Upload: vungoc

Post on 13-Jul-2019

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

TUGAS AKHIR

REMOTE UNIT DENGAN RFM12-433S

UNTUK SISTEM TELEMETRI KUALITAS AIR

KOLAM IKAN

Diajukan untuk memenuhi salah satu syarat

Memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

Jurusan Teknik Elektro

Fakultas Sains dan Teknologi Universitas Sanata Dharma

disusun oleh:

ANDREAS BAGUS SADEWO

NIM : 115114008

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2015

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 2: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

FINAL PROJECT

REMOTE UNIT WITH RFM12-433S

FOR FISH POND WATER QUALTY TELEMETRY

SYSTEM

In partial fulfillment of requirements

For the degree of Sarjana Teknik

In Electrical Engineering Study Program

ANDREAS BAGUS SADEWO

NIM : 115114008

ELECTRICAL ENGINERING STUDY PROGRAM

ELECTRICAL ENGINERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGI FACULTY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2015

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 3: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

LEMBAR PERSETUruAN

TU.GAS AKHIR

REMOTE (TNTI'DENGAN RFM12.433S UNTUK SISTEM

TELEMETRI KU KOLAM AIRIKAN

Pius Yo,zy Mmucahyo M T. Taaggal: 3O J,.li Zotg

iii

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 4: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

HALAMAN PENGESAHAN

TUGAS AKHIR

REMOTE UNIT DENGAN RFM12.433S UNTUK SISTEM

TELEMETRI KUALITAS KOLAM AIR IKAN

Ketua

Sekretaris

Anggota

.,, t .

"'tt 't:'t '

'disusun oleh:

,,AfiS S n,lcus.s re,${Q

',r'',' 1\[IM : 115114008 "',,,'.',l: ,. ',,.',,.

j. ,.

Telah dipertahankan di depan panitia penguji

Pada tanggal'30 Juli 2015

dan dinyatakan-'rrr€menuhi syarat ., .,€ifr.:. -

: ,, ) -i t,'':' .u#;.* '. r,;

7!l

,.., :,- iil ,..:lti;::it,,,-,11, ,, glt;

":_ "."- ",fdr_ .i":. . . ! ,

-n"t-**i'"-',,"1

#gry samarno

_*,'.ji#- -Y ozy ltfdyuqahyo, ST.M.T.

t :'l .''t , .. .:' r;i "''''

$ryOnJOnO j" 4 ' :.: .1:

j+ ;l

!.i::1{;iL*,

i&*id.:l'.;!i,1

Yogyakarta, t9 fijvrtus 2ol5

{*

Fakultas Sains dan TeknologiUniversitas Sa nata Dharma

Rosa, S. Si, M. Sc.

tv

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 5: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

fn_r ::: t:):.... : 'i.1rll1-

PER}IYATAAI\I KEASLTAN KARYA

Saya menyatakan dengan sesungguhnya bahwa tugas akfiir ini ti,tak me,muat karya

atau bagian karya orang lain" kecuali yang telah disebutkan dalam kutipan dan daftar

pustaka sebagaimana layaknla karya ilmiab-

Yogyakarta, 14 Juni 2015

MAndreas Bagus Sadewo

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 6: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

HALAMAN PERSEMBAHAN DAht MOTTO HIDI}P

1do{{o:

Kegagaf,m,$&nyafniaffi

tsitn Kita ffi nyerafi.

*Lesstng

Sbr'q ti/ int bq e"r wnln h*-a,w or*tfu*r:

Yeru*Kri&l*JurwSl*mat?'*tsapa*4 flrw da,vv Adikl<,u" *rwy a,ng

rcdrui,nk, k**a,*ihk* furqhlta/S alu,l>at da,w brna,w - @rn^a,$*.w

:;i'i: .r.:-

vt

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 7: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

LEMBAR PER]\ YATAAI\ PERSETUJUAI\T

PT'BLIKASI KARYA ILMIAII [}NT"TIK

KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma:

Nama : Andreas Bagus Sadewo

Nomor Mahasiswa : 115114008

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan

Universitas Sanata Dharma karya ilmiah saya yang berjudul:

REMOTE UNIT DENGAN RFMI2.433S UNTUK SISTEM

TELEMETRI KUALITAS KOLAM AIR IKANBeserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada

Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam

bentuk media lain, mengolanya dalam bentuk pangkalan data, mendistribusikan secara

terbatas, dan mempublikasikannya di Intemet atau media lain untuk kepentingan akademis

tanpa perlu meminta ijin dari saya maupun memberikan royalty kepada saya selamatelap

mencantumkan nama saya sebagai penulis.

Demikian pemyataan ini saya buat dengan sebenarnya.

Yogyakarta, 14 Juni 2015

WAndreas Bagus Sadewo

vil

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 8: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

viii

INTISARI

Untuk membudidayakan ikan air tawar, kualitas air menjadi faktor yang paling

mendukung dalam perkembangan ikan. Banyak alat pengukur kualitas air yang sudah

dibuat, tetapi dalam penggunaannya masih secara manual dan data yang didapat tidak

dapat direkam. Oleh karena itu, dibuat sistem yang dapat mengambil data dari setiap

sensor kualitas air secara otomatis dan dapat dikirimkan ke pusat data secara wireless.

Sistem ini menggunakan ATMega128 sebagai pusat kontrol dan menggunakan

RFM12-433S untuk transmitter. Sensor yang diukur adalah sensor suhu, kekeruhan,

keasaman dan kandungan oksigen. Sistem akan mengambil data secara wireless

menggunakan komunikasi USART setiap beberapa waktu sesuai dengan pengaturan

pengguna, kemudian data tersebut dibandingkan dengan standar kualitas air ikan untuk

mengendalikan sistem kendali agar kualitas air bisa diatur sesuai dengan standar kualitas

air kolam ikan yang baik untuk pertumbuhan ikan. Setelah itu, data yang dikumpulkan dari

setiap sensor dikirimkan ke bagian pusat data untuk disimpan dan ditampilkan secara

visual.

Remote unit dengan RFM12-433S untuk sistem telemetri kualitas kolam air ikan

sudah berhasil dibuat dengan menggunakan 3 pilihan frekuensi dan 3 pilihan kecepatan

transfer data. Frekuensi yang digunakan adalah 432MHz, 435MHz dan 437MHz,

sedangkan kecepatan transfer data yang digunakan 1kbps, 2kbps dan 5kbps. Sistem ini

sudah diuji dengan jarak maksimum pengujian pada jarak 15 meter untuk pengiriman paket

data.

Kata kunci: Kualitas air, Kolam ikan, RFM12-433S

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 9: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

ix

ABSTRACT

To cultivate freshwater fish , the quality of water as the factor that most support in

the development of fish. Many a measuring instrument the quality of water already made,

but the use of still manually and data obtained not can be recorded. Because of that, made

system can take s data of any water quality sensors automatically and may be transmitted

to the center data is wireless.

This system uses atmega128 as central control and use RFM12-433S to

transmitter. The sensor is measured temperature sensors, cloudiness, the acidity and

oxygen content. The system will take data is a wireless use every communication USART

some time in accordance with the users, then the data compared with standard fish water

quality control system to control to the quality of water can be arranged in accordance with

standard quality of the pond water fish is good for the growth of fish. After that, the data

collected from each sensor was sent to the center of the data to be stored and displayed

visually.

The remote unit with RFM12-433S for telemetry system of the quality of the fish

ponds was successfully created by using 3 option frequency and 3 option speed of data

transfer. Frequencies used are 432MHz, 435MHz and 437MHz, while the speed of data

transfer that is used 1kbps, 2kbps and 5 Kbps. This system has been tested in a maximum

of 15 meters range for the package delivery.

The keywords: Water quality, Fish farm, RFM12-433S

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 10: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

x

KATA PENGANTAR

Syukur dan terima kasih kepada Tuhan Yesus Kristus karena dengan segala rahmat

dan bimbingan-Nya maka tugas akhir dengan judul “Remote Unit Dengan Rfm12-433S

Untuk Sistem Telemetri Kualitas Kolam Air Ikan” dapat diselesaikan dengan baik. Selama

menulis tugas akhir ini, penulis menyadari bahwa ada begitu banyak pihak yang telah

memberikan bantuan dengan cara masing – masing, sehingga tugas akhir ini bisa

diselesaikan. Oleh karena itu penulis ingin mengucapkan terima kasih kepada:

1. Ibu P. H. Prima Rosa, S. Si., M. Sc., selaku Dekan Fakultas Sains dan Teknologi

Univesitas Sanata Dharma.

2. Bapak Pius Yozy Merucahyo, ST.,M.T., selaku dosen pembimbing yang dengan

penuh kesabaran membimbing, memberikan saran dan kritik yang membantu

penulis dalam menyelesaikan tulisan ini.

3. Bapak Dr. Linggo Sumarno dan Bapak Dr. Iswanjono selaku dosen penguji.

4. Bapak Martanto, M.T. dan Ibu Bernadeta Wuni Harini, M.T. yang telah

memberikan saran dan kritik yang membantu penulis dalam menyelesaikan

tulisan ini.

5. Seluruh dosen prodi Teknik Elektro dan laboran yang telah memberikan ilmu

pengetahuan kepada penulis selama kuliah.

6. Bapak dan Ibu tercinta, terima kasih untuk semua perhatian dan dukungan baik

spiritual maupun material.

7. Christin Karuru, terima kasih karena telah memberikan motivasi dan semangat

untuk segera menyelesaikan penulisan tugas akhir ini.

8. Teman – teman prosi Teknik Elektro angkatan 2011, atas kebersamaannya selama

penulis menjalani studi.

9. Semua pihak yang tidak bisa disebutkan satu persatu atas bantuan, bimbingan,

kritik dan saran.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 11: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

xi

Dengan rendah hati penulis menyadari bahwa tugas akhir ini masih jauh dari

sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas akhir ini sangat

diharapkan. Akhir kata, semoga tugas akhir ini dapat bermanfaat bagi semua pihak. Terima

kasih.

Yogyakarta, 14 Juni 2015

Andreas Bagus Sadewo

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 12: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

xii

DAFTAR ISI

Halaman

HALAMAN JUDUL (Bahasa Indonesia) ................................................................... i

HALAMAN JUDUL (Bahasa Inggris) ....................................................................... ii

HALAMAN PERSETUJUAN ..................................................................................... iii

HALAMAN PENGESAHAN ...................................................................................... iv

PERNYATAAN KEASLIAN KARYA ....................................................................... v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ........................................... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA

ILMIAH UNTUK KEPENTINGAN AKADEMIS ................................................... vii

INTISARI ...................................................................................................................... viii

ABSTRACT .................................................................................................................... ix

KATA PENGANTAR .................................................................................................. x

DAFTAR ISI ................................................................................................................. xii

DAFTAR GAMBAR .................................................................................................... xv

DAFTAR TABEL ......................................................................................................... xvii

BAB I PENDAHULUAN

1.1. Latar Belakang .................................................................................................... 1

1.2. Tujuan dan Manfaat Penelitian ........................................................................... 2

1.3. Batasan Masalah ................................................................................................. 2

1.4. Metodologi Penelitian ........................................................................................ 3

BAB II DASAR TEORI ............................................................................................... 4

2.1. Kualitas Air Kolam Ikan..................................................................................... 4

2.1.1 Temperatur Air........................................................................................ 4

2.1.2 Keasaman (pH) ....................................................................................... 4

2.1.3 Kekeruhan ............................................................................................... 4

2.1.4 Kandungan Oksigen ................................................................................ 5

2.2. Mikrokontroler ATmega128............................................................................... 5

2.2.1 Port Input / Output ................................................................................. 6

2.2.2 Serial Periperal Interface (SPI) ............................................................. 7

2.2.3 – Two-Wire Serial Communication ................................................. 9

2.2.4 EEPROM (Electrical Erasable Programmable Read-Only Memory) ... 10

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 13: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

xiii

2.3. RFM12-433S ...................................................................................................... 10

2.4. LCD 16x2 ........................................................................................................... 12

2.5. Modulasi Digital ................................................................................................. 13

2.5.1. Modulasi FSK ......................................................................................... 13

2.5.2. Demodulasi FSK ..................................................................................... 14

2.6. IC DS1307 – Real Time Clock (RTC) ................................................................ 15

2.7. Catu Daya ........................................................................................................... 16

2.8. LED (Light – Emitting Diode) ............................................................................ 17

2.9. Sistem Pengendali Air Kolam ............................................................................ 18

BAB III RANCANGAN PENELITIAN ..................................................................... 19

3.1. Perancangan Perangkat Keras ............................................................................. 20

3.1.1. Rangkaian RTC – IC DS1307 .............................................................. 20

3.1.2. Rangkaian LCD .................................................................................... 21

3.1.3. Rangkaian DT-AVR ATMEGA128 CPU Module ............................... 21

3.1.4. Rangkaian Catu Daya ........................................................................... 23

3.2. Perancangan Perangkat Lunak ............................................................................ 24

3.2.1. Diagram Alir Program Utama .............................................................. 24

3.2.2. Diagram Alir Program Menu ................................................................ 25

3.2.3. Diagram Alir Subrutin Pengaturan Sistem Kendali ............................. 27

3.2.4. Diagram Alir Subrutin Pengiriman Paket data ..................................... 28

3.2.5. Diagram Alir Subrutin Pengambilan Data Sensor ................................ 29

3.2.6. Diagram Alir Subrutin Ping .................................................................. 30

3.2.7. Diagram Alir Subrutin Kendali ............................................................ 31

3.2.8. Format Paket Data ................................................................................ 33

3.2.9. Pengaturan Frekuensi Kerja RFM12 .................................................... 33

3.2.10. Prosedur Pengiriman Data dengan RFM12 .......................................... 34

3.2.11. Prosedur Penerimaan Data dengan RFM12.......................................... 35

3.2.12. Data Dummy ......................................................................................... 36

BAB IV HASIL DAN PEMBAHASAN ...................................................................... 38

4.1. Bentuk Fisik Remote Unit dan Hardware Elektronik ......................................... 38

4.1.1. Bentuk Fisik Remote Unit .................................................................... 38

4.1.2. Subsistem Elektronik Alat .................................................................... 39

4.2. Pengujian Alat .................................................................................................... 40

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 14: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

xiv

4.2.1. Pengujian Rangkaian Catu Daya .......................................................... 40

4.2.2. Pengujian Pengontrol Waktu ................................................................ 40

4.2.3. Pengujian Pogram Pengambilan dan Penggabungan Data Sensor ....... 40

4.2.4. Pengujian Komunikasi RFM12-433S 1 Arah ....................................... 42

4.2.5. Pengujian Komunikasi RFM12-433S 2 Arah Bergantian .................... 46

4.2.6. Pengujian Pengiriman Paket data ke Central Unit ............................... 47

4.2.7. Pengujian Pengiriman Data Eeprom..................................................... 50

4.3. Pembahasan Perangkat Lunak ............................................................................ 51

4.3.1. Inisialisai ............................................................................................... 51

4.3.2. Program Utama ..................................................................................... 52

4.3.3. Subrutin Pengambilan Data Semua Sensor .......................................... 53

4.3.4. Subrutin Kendali ................................................................................... 54

4.3.5. Subrutin PING ...................................................................................... 54

4.3.6. Subrutin Pengiriman Paket Data .......................................................... 54

4.3.7. Subrutin Menu ...................................................................................... 54

BAB V KESIMPULAN DAN SARAN ....................................................................... 56

5.1. Kesimpulan ......................................................................................................... 56

5.2. Saran ................................................................................................................... 56

DAFTAR PUSTAKA ................................................................................................... 57

LAMPIRAN .................................................................................................................. 58

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 15: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

xv

DAFTAR GAMBAR

Halaman

Gambar 1.1. Blok Diagram Sistem Telemetri Kualitas Air Kolam Ikan ....................... 1

Gambar 2.1. Konfigurasi Pin Atmega128 ...................................................................... 6

Gambar 2.2. Koneksi Master – Slave dengan SPI .......................................................... 7

Gambar 2.3. SPI Control Register .................................................................................. 7

Gambar 2.4. SPI Status Register .................................................................................... 9

Gambar 2.5. SPI Data Register ....................................................................................... 9

Gambar 2.6. Register TWCR ......................................................................................... 10

Gambar 2.7. Konfigurasi Pin RFM12-433S ................................................................... 11

Gambar 2.8. LCD 16x2 .................................................................................................. 12

Gambar 2.9. Bentuk Gelombang Modulasi Digital ........................................................ 13

Gambar 2.10. Modulasi FSK .......................................................................................... 14

Gambar 2.11. Demodulasi FSK ...................................................................................... 14

Gambar 2.12. Rangkaian Umum IC DS1307 ................................................................. 15

Gambar 2.13. Konfigurasi LED ..................................................................................... 17

Gambar 2.14. Rangkaian Indikator LED ........................................................................ 18

Gambar 3.1. Blok Diagram Sistem ................................................................................. 19

Gambar 3.2. Rangkaian RTC IC DS1307 ...................................................................... 21

Gambar 3.3. Rangkaian LCD 16x2 ................................................................................ 21

Gambar 3.4. Rangkaian DT-AVR ATmega128 CPU Module ....................................... 22

Gambar 3.5. Rangkaian Keseluruhan Mikrokontroler ................................................... 22

Gambar 3.6. Rangkaian Catu Daya ................................................................................ 23

Gambar 3.7. Diagram Alir Program Utama ................................................................... 25

Gambar 3.8. Diagram Alir Subrutin Menu ..................................................................... 26

Gambar 3.9. Diagram Alir Subrutin Pengaturan Sistem Kendali................................... 27

Gambar 3.10. Diagram Alir Subrutin Pengiriman Paket Data ....................................... 28

Gambar 3.11. Diagram Alir Subrutin Pengambilan Data ............................................... 29

Gambar 3.12. Diagram Alir Subrutin Pengambilan Data Semua Sensor ....................... 30

Gambar 3.13. Diagram Alir Subrutin Ping ..................................................................... 30

Gambar 3.14. Diagram Alir Subrutin Sistem Kendali.................................................... 31

Gambar 3.15. Diagram Alir Subrutin Aksi..................................................................... 32

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 16: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

xvi

Gambar 3.16. Diagram Alir Subrutin Matikan Aksi ...................................................... 32

Gambar 3.17. Diagram Alir Pengiriman Data RFM12 .................................................. 35

Gambar 3.18. Diagram Alir Penerimaan Data RFM12 .................................................. 36

Gambar 4.1. Kotak Sistem Tampak Atas ....................................................................... 38

Gambar 4.2. Kotak Sistem Tampak Belakang ............................................................... 38

Gambar 4.3. Kotak Sistem Tampak Kiri ........................................................................ 38

Gambar 4.4. Kotak Sistem Tampak Kanan .................................................................... 38

Gambar 4.5. Rangkaian Pengontrol Waktu, Sistem Mikrokontroler, dan LCD ............. 39

Gambar 4.6. Rangkaian Pemancar dan Antena .............................................................. 39

Gambar 4.7. Rangkaian Catu Daya ................................................................................ 39

Gambar 4.8. Rangkaian Pengontrol Waktu .................................................................... 40

Gambar 4.9. Hasil Pengambilan Paket Data .................................................................. 41

Gambar 4.10. Sinyal Diterima Central Unit Untuk Pengiriman 1 byte

Dengan Baudrate 1kbps .......................................................................... 43

Gambar 4.11. Sinyal Diterima Central Unit Untuk Pengiriman 1 byte

Dengan Baudrate 2kbps .......................................................................... 43

Gambar 4.12. Sinyal Diterima Central Unit Untuk Pengiriman 1 byte

Dengan Baudrate 5kbps .......................................................................... 44

Gambar 4.13. Sinyal Diterima Central Unit Dengan Jarak Pengujian 1 Meter ............. 44

Gambar 4.14. Sinyal Diterima Central Unit Dengan Jarak Pengujian 10 Meter ........... 44

Gambar 4.15. Sinyal Diterima Central Unit Dengan Jarak Pengujian 20 Meter ........... 45

Gambar 4.16. Sinyal Diterima Central Unit Dengan Jarak Pengujian 40 Meter ........... 45

Gambar 4.17. Cara Membaca Sinyal Yang Diterima ..................................................... 46

Gambar 4.18. Sinyal Penerimaan Paket Data Dengan Baudrate 1kbps ......................... 49

Gambar 4.19. Sinyal Penerimaan Paket Data Dengan Baudrate 2kbps ......................... 49

Gambar 4.20. Sinyal Penerimaan Paket Data Dengan Baudrate 5kbps ......................... 49

Gambar 4.21. Tampilan Data Berhasil Diterima ............................................................ 50

Gambar 4.22. Tampilan Program Utama........................................................................ 53

Gambar 4.23. Tampilan Ketika Tombol OK Ditekan .................................................... 53

Gambar 4.24. Tampilan Ketika Tombol UP Ditekan ..................................................... 53

Gambar 4.25. Tampilan Ketika Tombol BACK Ditekan ............................................... 53

Gambar 4.26. Tampilan Ketika Tombol DOWN Ditekan.............................................. 53

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 17: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

xvii

DAFTAR TABEL

Halaman

Tabel 2.1. Hubungan SCK dan Frekuensi Osilator ........................................................ 8

Tabel 2.2. Fungsi Pin RFM12-433S ............................................................................... 11

Tabel 2.3. Konfigurasi Pin LCD M1632 ........................................................................ 12

Tabel 2.4. Memori Data IC DS1307 .............................................................................. 16

Tabel 2.5. Pengaturan dan keluaran pin SQW/OUT ...................................................... 16

Tabel 2.6. Aksi Pengendalian ......................................................................................... 19

Tabel 3.1. Format Paket Data ......................................................................................... 33

Tabel 3.2. Format Pengaturan Frekuensi ........................................................................ 33

Tabel 4.1. Contoh Pengambilan Paket Data ................................................................... 41

Tabel 4.2. Hasil Pengujian RFM12-433S 1 Arah ........................................................... 42

Tabel 4.3. Hasil Pengujian RFM12-433S 2 Arah Bergantian ........................................ 47

Tabel 4.4. Hasil Pengujian Paket Data ........................................................................... 48

Tabel 4.5. Parameter Pada Memori Eeprom................................................................... 52

Tabel 4.6. Fungsi Tombol Dalam Program Utama ........................................................ 52

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 18: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Konsumsi ikan air tawar di masyarakat semakin meningkat setiap tahun, sehingga

permintaan produksi di pasar semakin meningkat juga. Berdasarkan hal tersebut, banyak

masyarakat yang mencoba membudidayakan ikan air tawar. Untuk membudidayakan ikan

air tawar, kualitas air menjadi faktor yang paling mendukung dalam perkembangan ikan.

Banyak ikan yang mati karena kualitas air yang buruk, sehingga produksi ikan pun menjadi

menurun dan pengusaha mengalami kerugian yang besar [1].

Berdasarkan hal tersebut, diperlukan sebuah alat yang digunakan untuk monitoring

kualitas air kolam ikan. Alat ini terbagi menjadi 3 bagian, yaitu bagian pertama yang terdiri

dari kolam ikan, sensor, dan pengendali kualitas air, bagian kedua yang terdiri dari remote

unit, dan bagian ketiga yeng terdiri dari central unit seperti ditunjukkan pada gambar 1.1.

Gambar 1.1. Blok Diagram Sistem Telemetri Kualitas Kolam Air Ikan

Pada sistem ini, penulis lebih berkonsentrasi pada bagian remote unit. Banyak

penelitian yang sudah membuat sistem untuk memonitoring kualitas kolam air ikan. Salah

satu penelitian yang sudah ada dilakukan oleh Charles Wilianto, dalam penelitian berjudul

“Sistem Komunikasi Pengendalian Kualitas Air Kolam Ikan Berbasis ATMega 128”.

Dalam penelitian yang dilakukan Charles Wilianto apabila central unit mengirimkan

perintah untuk mengambil data ke remote unit, remote unit mengumpulkan data dari setiap

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 19: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

2

sensor dan disatukan menjadi paket data yang kemudian dikirimkan ke central unit

menggunakan kabel untuk kemudian dipisahkan kembali dan ditampilkan dalam bentuk

tabel dan grafik. Metode pengiriman paket data masih secara manual dan mengunakan

kabel untuk menghubungkan antara remote unit dengan central unit [2].

Dengan menggunakan konsep yang sama tetapi dengan metode yang berbeda,

penulis mengubah metode pengiriman paket data secara otomatis dan menggunakan

wireless untuk menghubungkan antara remote unit dengan central unit. Data setiap sensor

akan dikumpulkan oleh mikrokontroler dan dirubah menjadi paket data, kemudian paket

data tersebut akan dikirimkan ke central unit dengan pemancar secara otomatis. Proses

pengambilan data sensor dan pengiriman paket data setiap 60 menit [3]. Pengaturan

pengambilan data sensor dan pengiriman paket data bisa dirubah pada pengaturan di

remote unit atau central unit.

Sensor yang terhubung dengan sistem ini untuk mengukur kualitas air kolam ikan

seperti tingkat derajat keasaman (pH), kekeruhan, kandungan oksigen (DO), dan

temperatur. Sistem ini juga bisa dihubungkan dengan sistem pengendali kualitas air kolam

ikan yang meliputi pintu air masuk, pintu air keluar dan pengendali pompa air agar

pengguna bisa mengatur kualitas air kolam ikan melalui remote unit atau central unit.

Sistem ini menggunakan modul RFM12-433S untuk transceiver. Dengan sistem ini maka

pemilik kolam bisa menjaga kualitas kolam untuk mendapatkan kualitas ikan yang baik.

Semua data bisa dilihat melalui monitor di central unit ataupun melalui LCD pada remote

unit tanpa harus melihat kepinggir kolam dan mengukurnya sendiri.

1.2. Tujuan dan Manfaat Penelitian

Tujuan penelitian ini adalah menghasilkan suatu sistem yang dapat mengirimkan

data sensor kualitas air kolam ikan secara otomatis dari remote unit ke central unit dengan

menggunakan wireless. Manfaat dari penelitian ini adalah mempermudah monitoring

kualitas air kolam ikan.

1.3. Batasan Masalah

Batasan masalah dalam penelitian ini adalah:

a. Menggunakan ATMega 128 sebagai pusat kontrol.

b. Paket data yang akan dikirimkan ditampilkan dalam LCD 16x2.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 20: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

3

c. Proses pengambilan data di setiap sensor secara bergantian dan menggunakan

komunikasi USART.

d. Setiap sensor mengirimkan data dengan diawali karakter khusus yang mewakili

sensor tersebut dan diakhiri dengan karakter pagar (#).

e. Menggunakan modul RFM12-433S sebagai pemancar.

f. Batas pengujian 5 meter, 10 meter dan 15 meter.

1.4. Metodologi Penelitian

Metode penulisan yang digunakan adalah:

a. Studi lineatur berupa pengumpulan referensi buku, internet, jurnal, dan artikel.

b. Studi kasus terhadap alat yang sudah dibuat sebelumnya. Tahap ini dilakukan untuk

memahami prinsip kerja dari alat yang telah dibuat sebelumnya.

c. Perancangan sistem hardware dan software. Tahap ini bertujuan mencari bentuk

model yang optimal dari sistem yang dibuat dengan mempertimbangkan dari

berbagai faktor permasalahan dan kebutuhan yang telah ditentukan.

d. Pembuatan sistem hardware dan software. Sistem bekerja apabila, remote unit

mengambil data setiap sensor untuk dijadikan paket data kemudian mengirimkan

paket data tersebut ke central unit melalui modul RFM12-433S dan dapat diterima

pada central unit.

e. Proses pengambilan data dilakukan dengan bantuan central unit. Central unit

berfungsi untuk mengirim perintah dan menerima paket data pada saat sistem ini

berjalan. Data yang dicatat dalam proses pengambilan data ini adalah data yang di

dapat setiap sensor menggunakan data dummy, paket data yang ditampilkan pada

LCD remote unit, bentuk gelombang output RFM12-433S pada remote unit, bentuk

gelombang input RFM12-433S pada central unit, dan tampilan pada LCD central

unit.

f. Analisa dan pengambilan kesimpulan. Analisa data dilakukan dengan memeriksa

semua data yang dikirimkan remote unit dapat diterima oleh central unit dan

pengaruh pengiriman data dengan jarak jangkauan yang berbeda. Penyimpulan

hasil perancangan dapat dilakukan dengan cara menghitung kesalahan yang terjadi.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 21: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

4

BAB II

DASAR TEORI

2.1. Kualitas Air Kolam Ikan

Kondisi lingkungan sangat mempengaruhi kualitas air kolam ikan. Banyak faktor

yang dapat mempengaruhi kualitas air tersebut, seperti temperatur, keasaman (pH),

kekeruhan, dan kandungan oksigen (DO). Semakin baik kondisi air, maka perkembangan

lingkungan di dalam air dan sekitar kolam sangat cepat dan baik, tetapi apabila kondisi

kualitas air tidak sesuai dapat menghambat pertumbuhan di dalam kolam [4].

2.1.1. Temperatur Air

Suhu rendah dibawah normal dapat menyebabkan ikan kehilangan nafsu makan,

dan lebih mudah terkena penyakit. Sebaliknya, jika pada suhu yang terlalu tinggi ikan

dapat mengalami gangguan pernapasan dan bisa menyebabkan kerusakan ingsang

permanen[4]. Temperatur yang cocok untuk pertumbuhan ikan adalah sekitar 15ºC - 30ºC

sedangkan perbedaan temperatur antara siang dan malam harus kurang dari 5ºC.

2.1.2. Keasaman (pH)

Keasaman (pH) merupakan suatu ekspresi dari konsentrasi ion hidrogen (H+) di

dalam air. Besarnya dinyatakan dalam minus logaritma dari konsentrasi ion H. Keasaman

(pH) sangat penting sebagai parameter kualitas air karena dapat mengontrol tipe dan laju

kecepatan reaksi beberapa bahan di dalam air. Besaran pH berkisar dari 0 (sangat asam)

sampai dengan 14 (sangat basa/alkalis). Nilai pH kurang dari 7 menunjukkan lingkungan

yang asam sedangkan nilai diatas 7 menunjukkan lingkungan yang basa (alkalin).

Sedangkan nilai pH samadengan 7 disebut sebagai netral[4].

2.1.3. Kekeruhan

Beberapa jenis ikan yang mampu bertahan dan beradaptasi pada tingkat kekeruhan

tertentu. Air dengan tingkat kekeruhan yang tinggi dapat menyebabkan gangguan

pernapasan dan penglihatan pada ikan yang mengakibatkan ikan menjadi sulit untuk

bernafas karena ingsangnya terganggu oleh kotoran, atau ikan menjadi sulit untuk mencari

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 22: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

5

makan. Kekeruhan dapat diukur dengan memasukkan benda yang terang (berwarna putih)

sampai kedalaman 40 cm [4]. Apabila benda tersebut masih terlihat, maka kekeruhan air

masih belum mengganggu kehidupan ikan.

Satuan yang biasa dipakai dalam kekeruhan ialah Nephelometric Turbidity Units

(NTU). Kekeruhan sering digambarkan dalam satuan Total Suspended Solids (TSS) atau

mg/l (miligram per liter). Air murni memiliki NTU kurang dari 1 atau 0 mg/l [5]. Standar

kekeruhan air yang baik bagi ikan harus kurang dari 500 NTU [5], bila kekeruhan berada

di atas 500 NTU dapat mengganggu pertumbuhan ikan.

2.1.4. Kandungan Oksigen

Oksigen sangat diperlukan untuk pernapasan dan metabolisme ikan di dalam air.

Kandungan oksigen yang tidak mencukupi kebutuhan ikan dan biota lainya dapat

menyebabkan penurunan daya hidup ikan. Satuan untuk kandungan oksigen adalah part

per million (ppm). Kandungan oksigen terlarut dalam air cocok untuk kehidupan dan

pertumbuhan ikan gurami sebesar 5ppm, untuk ikan nila lebih dari 3ppm, dan ikan mas

berkisar 5 – 7ppm (5 – 7cc /liter air)[4]. Pengaliran air yang baik dan permukaan kolam

yang selalu terbuka dapat meningkatkan kadar oksigen dalam air.

2.2. Mikrokontroler ATmega128

Mikrokontroller ATmega 128 merupakan mikrokontroller keluarga AVR yang

mempunyai kapasitas flash memori 128KB. Alf and Vegard’s Risc Processor (AVR)

merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur Reduced

Instruction Set Computer (RISC). AVR dapat terbagi menjadi 4 kelas, yaitu keluarga

ATtiny, keluarga AT90Sxx, keluarga AT-Mega, dan AT86RFxx. Pada dasarnya yang

membedakan masing-masing kelas adalah memori dan fungsinya. Dari segi arsitektur dan

instruksi yang digunakan, bisa dikatakan hampir sama.

Semua jenis AVR dilengkapi dengan flash memori untuk memori program.

Kapasitas dari flash memori ini berbeda antara chip yang satu dengan chip yang lain

tergantung dari jenis IC yang digunakan. Untuk flash memori yang paling kecil adalah 1

kbytes (ATtiny11, ATtiny12, dan ATtiny15) dan paling besar adalah 128 kbytes

(ATmega128). Mikrokontroler AVR ATmega128 memiliki spesifikasi sebagai berikut:

a. Saluran I/O sebanyak 56 buah, yaitu Port A, Port B, Port C, Port D, Port E, Port F

dan Port G.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 23: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

6

b. ADC 10 bit sebanyak 8 saluran.

c. 2 buah Timer/Counter 8 bit dan 2 buah Timer/Counter 16 bit.

d. Dua buah PWM 8 bit.

e. Watchdog Timer dengan osilator internal.

f. Internal SRAM sebesar 4 kbyte.

g. Memori flash sebesar 128 kBytes.

h. Interupsi Eksternal.

i. Port antarmuka SPI.

j. EEPROM sebesar 4 kbyte.

k. Real time counter.

l. 2 buah Port USART untuk komunikasi serial.

m. Enam kanal PWM.

n. Tegangan operasi sekitar 4,5 V sampai dengan 5,5V.

Gambar 2.1 merupakan gambar konfigurasi pin ATmega128 [6]:

Gambar 2.1. Konfigurasi Pin Atmega128 [6]

2.2.1. Port Input / Output

ATmega128 mempunyai 53 pin I/O yang terbagi menjadi tujuh port dan mampu

difungsikan sebagai masukan atau keluaran. Setiap pin I/O mempunyai tiga register yaitu

DDRxn, PORTxn dan PINxn yang nilainya tergantung dari aplikasi pin I/O itu sendiri.

Huruf “x” mewakili Port I/O tersebut, sedangkan huruf “n” mewakili nomor pin I/O yang

dituju. Untuk mengatur sebuah pin I/O menjadi sebuah keluaran maka register DDR pada

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 24: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

7

pin tersebut harus diberi logika tinggi, sedangkan agar berfungsi sebagai masukan, maka

DDR pada pin tersebut diberi logika rendah [6].

Saat berfungsi sebagai pin masukan, maka register PINxn digunakan untuk membaca

nilai pada pin tersebut. Sedangkan saat berfungsi sebagai sebuah pin keluaran, register

PORTxn digunakan untuk mengatur nilai keluaran pin I/O tersebut.

2.2.2. Serial Peripheral Interface (SPI)

Transfer data dengan SPI digunakan antara Master (Microcontroller) dgn slave

(microcontroller atau SPI device seperti MMC card, SPI ADC , dll) dalam jarak dekat

dan kecepatan cukup tinggi. Komunikasi serial data antara master dan slave pada SPI

diatur melalui 4 buah pin yang terdiri dari SCLK, MOSI, MISO, dan SS , sebagai berikut

[6]:

a. SCLK dari master ke slave yang berfungsi sebagai clock.

b. MOSI jalur data dari master dan masuk ke dalam slave.

c. MISO jalur data keluar dari slave dan masuk ke dalam master.

d. SS (slave select) merupakan pin yang berfungsi untuk mengaktifkan slave.

Ada dua maca SPI, yaitu satu master dengan satu slave dan satu master dengan banyak

slave. Pada gambar 2.2 ditunjukkan sambungan antar master dan slave dengan SPI.

Gambar 2.2. Koneksi Master-Slave dengan SPI [6]

Register yang berhubungan dengan SPI terdapat seperti gambar 2.3.

Gambar 2.3. SPI Control Register [6]

Setiap bit dari register SPCR mempunyai fungsinya masing-masing. Dan untuk

mengaktifkan SPI, maka perlu diketahui setiap bit register tersebut, sebagai berikut:

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 25: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

8

a. Bit 7 – SPIE: SPI Interrupt Enable. SPIE digunakan untuk mengaktifkan

interupsi SPI.

b. Bit-6 SPE (SPI Enable). SPE digunakan untuk mengaktifkan dan menonaktifkan

komunikasi SPI dimana jika SPI bernilai 1 maka komunikasi SPI aktif sedangkan

jika bernilai 0 maka komunikasi SPI tidak aktif.

c. Bit 5 – DORD: Data Order. DORD digunakan untuk memilih urutan pengiriman

data, dari LSB atau MSB terlebih dahulu. Nilai satu untuk LSB dan nilai nol untuk

MSB.

d. Bit-4 MSTR (Master or Slave Select). MSTR digunakan untuk mengkonfigurasi

sebagai master atau slave secara software dimana jika MSTR bernilai 1 maka

terkonfigurasi sebagai master sedangkan MSTR bernilai 0 maka terkonfigurasi

sebagai slave. Pengaturan bit MSTR ini tidak akan bisa dilakukan jika pin SS

dikonfigurasi sebagai input karena jika pin SS dikonfigurasi sebagai input maka

penentuan master atau slavenya otomatis dilakukan secara hardware yaitu dengan

membaca level tegangan pada SS.

e. Bit-3 CPOL dan Bit-2 CPHA digunakan untuk pengaturan polaritas dan fasa dari

clock.

f. Bit-1 SPR1/0 (SPI Clock Rate Select) SPR1 dan SPR0 digunakan untuk

menentukan kecepatan clock yang digunakan dalam komunikasi SPI.

Tabel 2.1. Hubungan SCK dan Frekuensi Osilator [6]

SPI2x SPR1 SPR0 SCK Frequency

0 0 0 4

0 0 1 16

0 1 0 64

0 1 1 128

1 0 0 2

1 0 1 8

1 1 0 32

1 1 1 64

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 26: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

9

Gambar 2.4. SPI Status Register [6]

SPIF (SPI Interrupt Flag) SPIF merupakan bendera yang digunakan untuk mengetahui

bahwa proses pengiriman data 1 byte sudah selesai. Jika proses pengiriman data sudah

selesai maka SPIF akan bernilai satu (high). SPIF ini berada dalam SPI Status Register

(SPSR).

Gambar 2.5. SPI Data Register [6]

SPI Data Register (SPDR) SPDR merupakan register yang digunakan untuk menyimpan

data yang akan dikirim atau diterima pada komunikasi SPI.

2.2.3. – Two-Wire Serial Communication

Two-wire serial communication (TWI) adalah salah satu fitur yang sering dipakai

pada aplikasi mikrokontroler. TWI memungkinkan pengguna untuk terhubung dengan 128

perangkat yang berbeda dengan hanya menggunakan dua jalur data, SCL sebagai pengatur

clock dan SDA sebagai jalur utama [6].

Terdapat lima register yang digunakan untuk mengatur penggunaan TWI, yaitu

TWI Bit Rate Register (TWBR), TWI Control Register (TWCR), TWI Status Register

(TWSR), TWI Data Register (TWDR), dan TWI (Slave) Address Register (TWAR).

Register TWBR digunakan sebagai pengatur bit rate dari komunikasi serial. Nilai

TWBR dapat dihitung dari rumus [6]:

(2.1)

Register TWCR digunaakn sebagai pengatur operasi TWI. Register ini terdiri dari

8-bit data seperti ditunjukkan gambar 2.6.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 27: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

10

Gambar 2.6. Register TWCR [6]

Memberi logika high pada bit TWSTA membuat perangkat menjadi master device

pada jalur data. Perangkat akan mendeteksi keberadaan jalur data, apabila jalur data

tersedia, maka perangkat akan menginisialisai kondisi START. Apabila jalur data sedang

digunakan oleh perangkat lain, maka perangkat akan menunggu sampai terdeteksi kondisi

STOP kemudian menginisialisasi kondisi START dan mengambil alih jalur data.

Sedangkan bit TWSTA digunakan untuk menginisialisasi kondisi STOP pada jalur

data. Apabila perangkat diatur sebagai slave device, maka bit ini dapat digunakan untuk

memulihkan kondisi eror. Bit TWEN digunakan untuk mengaktifkan antarmuka TWI, saat

TWEN bernilai 1, maka antarmuka TWI akan mengambil alih pin I/O SDA dan SCL dan

menggunakannya sebagai jalur data.

2.2.4. EEPROM (Electrical Erasable Programmable Read-Only Memory)

Mikrokontroler Atmega128 mempunyai memori EEPROM sebesar 4 kBytes.

Memori ini dapat dibaca dan ditulis melalui program data yang tersimpan tidak akan hilang

walaupun mikrokontroler kehilangan catu daya. Alamat memori yang dituju oleh program

sebelum membaca atau menulis data pada EEPROM ditunjukkan oleh register EEARH dan

EEARL. Register ini adalah register 11-bit yang menyimpan alamat EEPROM dari alamat

0 sampai dengan alamat 4095 [6]. Register EEDR digunakan untuk membaca dan menulis

pada alamat yang dituju oleh register EEAR.

2.3. RFM12-433S

RFM12 dengan pita frekuensi 433 MHz dapat menggunakan frekuensi antara

430,24 MHz – 439,7575 MHz [7]. Karena modul ini merupakan transceiver maka modul

ini bisa dioperasikan menjadi transmitter maupun sebagai receiver. Koneksi pin RFM12-

433S dapat dilihat pada gambar 2.7 dan fungsi setiap pin yang digunakan dapat dilihat

pada tabel 2.2. RFM12-433S memiliki spesifikasi, diantaranya sebagai berikut [7]:

a. Harganya relatif murah

b. Menggunakan teknologi PLL

c. Datarate sampai 115,200 kbps menggunakan demodulator didalam modul

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 28: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

11

d. Differential antenna

e. Tuning antena otomatis dilakukan oleh modul

f. Deviasi frekuensi TX dapat diatur

g. Bandwidth dapat diatur

h. AFC dan DQD

i. Internal data fltering

j. Dapat menggunakan pola sinkronisasi pada modul penerima

k. Antarmuka SPI

Tabel 2.2. Fungsi Pin RFM12-433S [7]

Definisi Tipe Fungsi

nINT/VDI DI/ DO Input interupsi (aktif rendah) / indikator data benar

VDD S Positif power supply

SDI DI SPI data input

SCK DI SPI clock input

nSel DI Chip select (aktif rendah)

SDO DO Serial data output dengan bus

nIRQ DO Intereups request output (aktif rendah)

FSK/DATA/Nffs DI/DO/DI Transmit FSK data input/ Received data output (FIFO

not used)/ FIFO select

DCLK/CFIL/FFIT DO/AIO/DO

Clock output (no FIFO )/ external filter

capacitor(analog mode)/ FIFO

interrupts(active high)when FIFO level set to 1, FIFO

empty interruption can

be achieved

CLK DO Clock output for external microcontroler

z DIO Reset output (active low)

GND S Power ground

Gambar 2.7. Konfigurasi Pin RFM12-433S [7]

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 29: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

12

2.4. LCD 16x2

LCD (liquid cell display) merupakan salah satu alat komponen elektronika yang

berfungsi untuk menampilkan data berupa karakter [8]. LCD yang digunakan adalah tipe

M1632 yang ditunjukkan pada Gambar 2.8.

Gambar 2.8. LCD 16x2 [8]

LCD tipe ini memiliki 2 baris dimana masing-masing baris memuat 16 karakter.

Selain sangat mudah dioperasikan, kebutuhan daya LCD ini sangat rendah[8]. Konfigurasi

pin LCDM1632 dapat dilihat pada Tabel 2.3.

Tabel 2.3. Konfigurasi Pin LCD M1632 [8]

No. Nama Fungsi

1 Vss 0V (GND)

2 Vcc 5V

3 VLC LCD Contrast Voltage

4 RS Register Select; H: Data Input; L: Instruction Input

5 RD H: Read; L: Write

6 EN Enable Signal

7 D0 Data Bus

8 D1 Data Bus

9 D2 Data Bus

10 D3 Data Bus

11 D4 Data Bus

12 D5 Data Bus

13 D6 Data Bus

14 D7 Data Bus

15 V+BL Positif backlight voltage (4-4,2V; 50-200mA)

16 V–BL Negative backlight voltage (0V; GND)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 30: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

13

2.5. Modulasi Digital

Modulasi merupakan proses penumpangan sinyal masukan ke dalam sinyal carrier.

Modulasi digital adalah proses mengubah-ubah karakteristik dan sifat gelombang

pembawa (carrier) yang sedemikian rupa sehingga bentuk hasilnya memiliki ciri-ciri dari

bit-bit (0 atau 1) yang dikandungnya, proses ini dinamakan Modulasi Carrier. Sehingga

dengan mengamati modulasi carriernya kita dapat mengetahui urutan bit-bit yang

ditumpangkan pada carrier.

Melalui proses modulasi digital, sinyal-sinyal digital pada setiap tingkatan dapat

dikirim ke penerima dengan baik. Untuk pengiriman ini dapat digunakan media transmisi

fisik (logam atau optik) atau non fisik (gelombang-gelombang radio).Yang termasuk

modulasi digital diantaranya ialah : Amplitude Shift Keying (ASK), Frequency Shift Keying

(FSK), Phase Shift Keying (PSK).

Gambar 2.9. Bentuk Gelombang Modulasi Digital

2.5.1 Modulasi FSK

Modulasi Frequency Shift Keying (FSK) atau pengiriman sinyal melalui

penggeseran frekuensi. Besarnya frekuensi gelombang pembawa berubah-ubah sesuai

dengan perubahan ada atau tidak adanya sinyal informasi digital. Untuk memperoleh bit 1

dan bit 0, frekuensi pembawa digeser kesamping sehingga memperoleh kerapatan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 31: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

14

frekuensi yang berbeda.

Modulasi FSK hanya 2 kemungkinan, yaitu More atau Less (High atau Low, Mark

atau Space). Teknik modulasi FSK banyak digunakan untuk informasi pengiriman jarak

jauh atu teletype. Standar FSK untuk teletype sudah dikembangkan selama bertahun-tahun,

yaitu untuk frekuensi 1070 Hz merepresentasikan mark atau 1, dan 1270 Hz

merepresentasikan space atau 0. Rangkaian yang digunakan untuk proses modulasi disebut

dengan Modulator.

Gambar 2.10. Modulasi FSK

2.5.2 Demodulasi FSK

Konsep dasar Demodulasi adalah proses pemisahan sinyal antara sinyal pembawa

(Carrier) dengan sinyal data yang dikirim oleh suatu pemancar. Untuk melakukan proses

demodulasi ini, maka dibutuhkan Suatu rangkaian yang disebut Demodulator.

Demodulator ini berada pada sisi penerima untuk melakukan proses pemisahan sinyal

tersebut, sehingga data yang diterima dapat sesuai dengan data yang dikirim sebelumnya.

Gambar 2.11. Demodulasi FSK

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 32: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

15

2.6. IC DS1307 – Real Time Clock (RTC)

IC DS1307 adalah sebuah IC RTC yang dapat digunakan untuk menyimpan waktu.

Perangkat ini mampu menyimpan data waktu, mulai dari detik, menit, jam, hari, hingga

tanggal, bulan, dan tahun. IC DS1307 bekerja dengan menggunakan komunikasi serial .

Ketika catu utama tidak aktif, maka IC ini secara otomatis akan berpindah ke catuan dari

baterai 3,2 V.

Gambar 2.12. Rangkaian umum dari IC DS1307 [9]

Semua data yang diterima dari IC DS1307 sudah berupa data Binary Coded

decimal (BCD). Pertukaran data menggunakan antarmuka , yang setiap memulai

pertukaran data, master device harus mengisialisai keadaan START dan diakhiri dengan

keadaan STOP. Keadaan START terjadi apabila pin SDA berubah dari logika satu ke

logika nol saat pin SCL berada pada logika satu. Sedangkan keadaan STOP terjadi saat pin

SDA berubah dari logika nol ke logika satu saan pin SCL berada pada logika satu.

Sedangkan pertukaran data terjadi pada saat pin SCL berada pada logika nol.

Memori IC DS1307 terdiri dari dua register utama, yaitu Timekeeper Register dan

Control Register. Timekeeper Register berisi data-data pewaktuan, mulai dari detik, menit,

jam, tanggal, bulan, tahun hingga hari. Sedangkan Control Register berisi bit untuk

mengatur keluaran pin SQW/OUT. Saat Square Wave Output tidak aktif, bila bit Out

bernilai satu, maka keluaran pin SQW/OUT juga bernilai satu, sedangkan apabila bit Out

bernilai nol, maka keluaran pin SQW/OUT juga bernilai nol. Bit SQWE berfungsi untuk

mengaktifkan Square Wave Output. Apabila bit ini bernilai satu, maka Square Wave

Output akan aktif. Sedangkan nilai frekuensi yang dihasilkan tergantung dari kombinasi bit

RS1 dan RS0.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 33: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

16

Tabel 2.4. Memori pada IC DS1307 [9]

Tabel 2.5. Pengaturan dan keluaran pin SQW/OUT [9]

2.7. Catu daya

Catu daya adalah sebuah piranti elektronika yang berfungsi sebagai penyearah arus

AC menjadi DC untuk memberikan sumber daya untuk piranti lain. Rangkaian catu daya

bisa disusun dari transformator, penyearah, dan sebuah IC regulator tegangan.

Tegangan AC dari jala-jala PLN diturunkan nilainya oleh transformator step down,

kemudian disearahkan dengan diode brige. Keluaran diode brige diratakan dengan

rangkaian filter untuk memperkecil tegangan ripple. Kemudian digunakan regulator

tegangan untuk menstabilkan tegangan yang keluar [10].

Alamat Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Fungsi Rentang

00h CH 10 detik detik Detik 00-59

01h 0 10 menit menit Menit 00-59

02h

12 10

jam 10 jam jam Jam

1-12

+AM/PM

00-23

02h 24 AM

/ PM 10 jam jam Jam

1-12

+AM/PM

00-23

03h 0 0 0 0 0 hari Hari 01-07

04h 0 0 10 tanggal tanggal Tanggal 01-31

05h 10

bulan bulan Bulan 01-12

06h 10 tahun tahun Tahun 00-99

07h Out 0 0 SQWE 0 0 RS1 RS0 Kontrol -

08h-3Fh RAM

56x8 00h-FFh

RS1 RS0 Frekuensi

SQW/OUT

SQWE OUT

0 0 1 Hz 1 X

0 1 4096 Hz 1 X

1 0 8,192 kHz 1 X

1 1 32,768 kHz 1 X

X X 0 0 0

X X 1 0 1

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 34: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

17

Filter dalam rangkaian penyearah digunakan untuk memperkecil tegangan ripple,

sehingga dapat diperoleh tegangan keluaran yang lebih rata, dengan memanfaatkan proses

pengisian dan pengosongan muatan kapasitor [10]. Harga kapasitansi kapasitor ditentukan

dengan persamaan berikut :

√ (2.2)

Vr(p - p) = Vm – VDCmin (2.3)

Dengan IDC adalah arus maksimal penyearah (ampere), C adalah kapasitor yang

digunakan sebagai filter (Farad). VM adalah tegangan arus bolak balik, Vr(PP) tegangan

ripple puncak ke puncak dan Vr(rms) adalah tegangan ripple efektif. VDC MIN adalah

tegangan minimal yang dibutuhkan oleh IC regulator.

2.8. LED (Light - Emitting Diode)

LED adalah komponen elektronika yang terbuat dari bahan semi konduktor jenis

dioda yang mampu memancarkan cahaya. LED mampu menghasilkan cahaya yang

berbeda menurut semi konduktor yang digunakan dan jenis bahan semi konduktor tersebut

akan menghasilkan panjang gelombang yang berbeda sehingga cahaya yang dihasilkan

berbeda pula. LED adalah salah satu jenis dioda, maka LED memiliki 2 kutub yaitu anoda

dan katoda. Dalam hal ini LED akan menyala bila ada arus listrik mengalir dari anoda

menuju katoda.

Pemasangan kutub LED tidak boleh terbalik karena apabila terbalik kutubnya maka

LED tersebut tidak akan menyala. LED memiliki karakteristik berbeda-beda menurut

warna yang dihasilkan. Semakin tinggi arus yang mengalir pada LED maka semakin terang

pula cahaya yang dihasilkan, namun perlu diperhatikan bahwa arus yang diperbolehkan

10mA-20mA dan pada tegangan 1,6V-3,5V menurut karakter warna yang dihasilkan.

Apabila arus yang mengalir lebih dari 20mA, maka LED akan terbakar. Untuk menjaga

agar LED tidak terbakar perlu digunakan resistor sebagai penghambat arus. LED

ditunjukkan pada gambar 2.13.

Gambar 2.13. Konfigurasi LED

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 35: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

18

Berdasarkan gambar 2.14, persamaan untuk mencari nilai tegangan menggunakan

hokum ohm adalah V = I.R, sehingga persamaan untuk mencari nilai resistor yang

digunakan sebagai indikator adalah :

(2.4)

Gambar 2.14. Rangkaian indikator LED

Dimana :

V = Tegangan

I = Arus Listrik

R = Resistor

Vs = Tegangan sumber

= Tegangan LED

Tegangan kerja pada sebuah LED menurut warna yang dihasilkan [11]:

1. Infra merah : 1,6 V

2. Merah : 1,8 V – 2,1 V

3. Oranye : 2,2 V

4. Kuning : 2,4 V

5. Hijau : 2,6 V

6. Biru : 3,0 V – 3,5 V

7. Putih : 3,0 V – 3,6 V

8. Ultraviolet : 3,5 V

Pada umumnya tegangan yang digunakan pada perancangan adalah tegangan minimal LED

( ), tegangan minimal LED adalah sebesar 1,5 V.

2.9. Sistem Pengendali Air Kolam

Sistem pengendalian kualitas air terdiri dari pintu masuk air kolam, pintu keluar air

kolam dan pompa air. Sistem ini akan bekerja berdasarkan data sensor yang didapatkan

dan standar yang telah ditentukan. Setiap jenis ikan memiliki perbedaan standar kualitas

air, maka ditetapkan standar air yang dikendalikan sistem ini. Hal ini ditetapkan agar

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 36: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

19

sistem dapat digunakan untuk semua jenis ikan seperti pada tabel 2.6. Pada tabel tersebut

juga ditentukan aksi pengendalian berdasarkan standar yang ditentukan [12];

Tabel 2.6. Aksi Pengendalian

Kualiatas Yang diamati Standar air Aksi Pengendalian

Suhu 18-28 ºC Jika suhu air kolam >28 ºC atau <18 maka: - Inlet off (pintu masuk air tertutup)

- Outlet on (pintu keluar air terbuka)

- Pompa sumur on

Dengan asumsi suhu air sumur selalu

berada pada suhu 18ºC – 28ºC.

pH 5-8,5 Jika pH air kolam >8.5 atau <5 maka:

- Inlet off (pintu masuk air tertutup)

- Outlet on (pintu keluar air terbuka)

- Pompa sumur on

Dengan asumsi PH air sumur selalu berada

diantara 5 – 8,5

Kekeruhan <380 NTU Jika kekeruhan air kolam >380 NTU maka: - Inlet off (pintu masuk air tertutup)

- Outlet on (pintu keluar air terbuka)

- Pompa sumur on

Dengan asumsi kekeruhan air sumur < 380

NTU

DO > 5 ppm Jika DO air kolam < 5ppm maka: -Inlet off (pintu masuk air tertutup)

- Outlet on (pintu keluar air terbuka)

- Pompa sumur on

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 37: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

19

BAB III

RANCANGAN PENELITIAN

Perancangan sistem telemetri kualitas kolam air ikan ini dibagi menjadi menjadi

dua bagian utama, yaitu:

1. Perancangan hardware yang terdiri dari mikrokontroler dan perangkat pendukung

seperti, IC RTC DS1307, power supply dan rangkaian LCD. Gambar 3.1

menunjukkan blok diagram sistem yang akan dibuat.

2. Perancangan software yang terdiri dari pemograman utama, dan subrutin-

subrutinnya seperti subrutin menu dan subrutin pengambilan data sensor dan

subrutin pengiriman paket data.

Gambar 3.1. Blok Diagram Sistem

Berikut merupakan keterangan cara kerja sistem yang ditunjukkan gambar 3.1:

1. Pengambilan data setiap sensor dilakukan dengan menggunakan prosedur USART

secara bergantian. Data sensor yang diambil adalah sensor temperatur, sensor

keasaman, sensor kekeruhan, dan sensor kandungan oksigen Data tersebut

kemudian diolah oleh mikrokontroler untuk dijadikan sebuah paket data yang siap

untuk dikirim kembali ke sistem lain menggunakan modul RFM12-433S.

2. Dari data yang didapat, mikrokontroler mengontrol sistem untuk pengendalian,

dalam hal ini penulis tidak membuat hardware untuk sistem pengendalian kualitas

air tersebut tetapi penulis membuat software yang akan menampilkan status dari

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 38: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

20

setiap sistem kendali. Status tersebut ditampilkan pada LCD pada menu utama

dengan simbol “I” untuk pintu air masuk, “O” untuk pintu air keluar dan “P” untuk

pompa air.

3. Tombol push-bottom berfungsi untuk memberikan masukan berupa pengaturan dari

pengguna. Pengaturan ini memungkinkan pengguna untuk mengubah konfigurasi

dan mode – mode pengendalian yang dilakukan sistem.

4. IC RTC DS1307 digunakan sebagai penjaga waktu mikrokontroler, sehingga

pengiriman paket data bisa disesuaikan sesuai keinginan pengguna.

5. RFM12-433S berfungsi sebagai transmitter yang digunakan untuk menerima data

dari central unit untuk menjalankan sistem dan mengirimkan paket data ke sistem

central unit melalui wireless.

6. Secara keseluruhan, pertama mikrokontroler akan mengambil data dari setiap

sensor yang kemudian di tampilkan di LCD sekaligus dirubah menjadi paket data

yang siap untuk dikirim ke central unit. Ketika waktu sesuai dengan jadwal

pengiriman paket data, maka transmitter difungsikan sebagai pengirim kemudian

mengirim paket data ke central unit setelah data dikirim transmitter difungsikan

kembali menjadi penerima, kemudian mikrokontroler menngontrol sistem

pengendalian kualitas air kolam dari data yang sudah didapat.

3.1. Perancangan Perangkat Keras

3.1.1. Rangkaian RTC – IC DS1307

Berdasarkan datasheet , IC DS1307 terdapat rangkaian standar untuk menggunakan

IC ini. Untuk dapat bekerja dengan baik, maka pada jalur data dan sumber clock

komunikasi dua jalu diperlukan tambahan hambatan pull-up. Pull-up yang digunakan

hambatan sebesar 4,7 kOhm. Kristal oscillator yang digunakan adalah Kristal yang

memiliki frekuensi 32,768 kHz. Ditambahkan baterai tipe CR2032 sebagai sumber daya IC

ini ketika sumber daya utama tidak tersedia. Berikut gambar rangkaian RTC dengan IC

DS1307 ditunjukkan pada gambar 3.2:

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 39: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

21

Gambar 3.2. Rangakaian RTC IC DS1307

3.1.2. Rangkaian LCD

LCD yang digunakan pada perancangan ini adalah LCD character 16x2 yang

berfungsi untuk menampilkan data setiap sensor. Berdasarkan datasheet tegangan kontras

(pin Vo) maksimum LCD ini adalah 5 volt, sehingga digunakan sebuah variable resistor

sebesar 10 kOhm yang digunakan untuk mebatasi tegangan pada pin ini. Rangkaian LCD

character 16x2 ditunjukkan pada gambar 3.3.

Gambar 3.3. Rangkain LCD 16x2

3.1.3. Rangkaian DT-AVR ATMEGA 128 CPU Module

Dalam perancangan sistem telemetri ini, penulis menggunakan DT-AVR

ATMEGA 128 CPU Module sebagai minimum sistem. DT-AVR ATMEGA 128 CPU

Module ini dilengkapi dengan ATmega 128, dan setiap pinnya sudah dihubungkan dengan

konektor female yang terpasang di dalam board pcb, sehingga pemakaiannya lebih akan

lebih mudah. Rangkaian DT-AVR ATMEGA 128 CPU Module ditunjukkan pada gambar

3.4, sedangkan untuk rangkaian keseluruhan mikrokontroler ditunjukkan pada gambar 3.6.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 40: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

22

Gambar 3.4. Rangkaian DT-AVR ATMEGA 128 CPU Module [13]

Gambar 3.5. Rangkaian Keseluruhan Mikrokontroler

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 41: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

23

3.1.4. Rangkaian Catu Daya

Rangkaian ini dibutuhkan untuk memberikan sumber tegangan ke mikrokontroler,

LCD 16x2, dan piranti lainnya yang digunakan dalam sistem telemetri kualitas air kolam

ikan ini. Sehingga rangkaian ini akan terus beroperasi selama sistem dijalankan. Sebelum

di distribusikan ke piranti lainnya, tegangan keluaran dari catu daya ini harus disesuaikan

dengan piranti lainnya.

Karena piranti yang akan didistribusikan hanya memerlukan tegangan 5v, maka

akan dirancang sebuah catu daya 5v. rangkaian catu daya 5v ditunjukkan pada gambar 3.6.

Gambar 3.6. Rangkaian Catu Daya

Gambar 3.6. merupakan rangkaian regulator tegangan yang menggunakan

komponen 7805 yang dapat meregulasi tegangan output. Berdasarkan datasheet,

komponen 7805 memiliki arus output atau Io sebesar 500mA. Nilai kapasitor C2 sesuai

dengan datasheet 7805 agar tegangan output lebih stabil. Perhitungan nilai kapasitor C1

untuk penyearah 5VDC, dilakukan seperti persamaan 2.3 dengan nilai tegangan output

trafo diketahui sebesar 12VAC (VM), arus maksimal yang diinginkan sebesar 1A dan

tegangan input minimal IC regulator sebesar 7,5VDC (VMIN), sehingga diperoleh nilai

minimal kapasitor C1 sebagai berikut :

( √ )

( ) ( )

( )

C1=1239 uF

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 42: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

24

Pada perhitungan nilai minimal C1 diperoleh sebesar 1239μF, nilai tersebut tidak terdapat

di pasaran sehingga digunakan nilai kapasitor C1 sebesar 2200μF yang mendekati nilai

perhitungan dan terdapat di pasaran. Pemilihan nilai C1 sebesar 2200μF berdampak

memperkecil ripple.

Untuk indikator power digunakan dua buah LED berwarna merah untuk indikator

12 volt dan warna hijau untuk indikator 5 volt. Untuk menyalakan kedua LED ini

dibutuhkan tegangan sebesar 1,5 volt dengan arus minimal 10mA, sehingga dibutuhkan

sebuah resistor untuk menurunkan tegangan input tersebut dan digunakan rumus pembagi

tegangan, maka didapat hasilnya seperti berikut:

dari persamaan di atas didapat R1 sebesar 1k dan R2 sebesar 330 .

3.2. Perancangan Perangkat Lunak

3.2.1. Diagram Alir Program Utama

Diagram alir program utama ditunjukkan pada gambar 3.7. diagram alir tersebut

menunjukkan proses sistem ini secara keseluruhan. Mulai dari program melakukan

inisialisasi I/O dan fitur – fitur yang digunakan. Proses pengambilan data setiap sensor

akan dilakukan sebelum proses pengiriman data. Pengiriman paket data dilakukan setiap 1

jam, tetapi pengguna bisa merubah pengaturan pengiriman data pada menu. Setelah

mengambil data, mikro memeriksa setiap data dan membandingkannya dengan standar

kualitas air yang sudah ditentukan pada BAB II untuk mengendalikan sistem kendali.

Sebelum melakukan pengiriman paket data, remote unit akan mengirimkan “ping” untuk

memeriksa sambungan dengan central unit. Apabila central unit memberikan jawaban

dengan mengirimkan karakter “y” maka paket data langsung dikirim, jika tidak ada

jawaban dari central unit maka paket data tidak akan dikirimkan ke central unit tetapi akan

disimpan di eeprom. Data yang disimpan di eeprom dikirimkan pada jadwal pengiriman

selanjutnya jika koneksi dengan central unit sudah terhubung, jika tidak data akan kembali

disimpan pada eeprom tanpa menimpa data sebelumnya.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 43: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

25

Gambar 3.7. Diagram Alir Program Utama

3.2.2. Diagram Alir Subrutin Menu

Diagram alir subrutin menu ditunjukkan oleh gambar 3.8.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 44: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

26

Gambar 3.8. Diagram Alir Subrutin Menu

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 45: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

27

Dari diagram alir subrutin menu , pengguna dapat langsung merubah waktu sistem,

mengubah pengaturan waktu pengiriman paket data ke central unit, pengecekan data setiap

sensor, pengaturan frekuensi, kecepatan transfer paket data, perubahan pengaturan sistem

kendali dan pengecekan koneksi wireless ke central unit. Untuk melakukan pengaturan

tersebut, pengguna hanya perlu menekan tombol “menu” pada kotak sistem bagian atas

dan melihat hasilnya pada LCD.

3.2.3. Diagram Alir Subrutin Pengaturan Sistem Kendali

Di dalam subrutin menu, pengguna dapat mengatur sistem kendali, tetapi sistem

pengendali dilakukan secara manual dan sistem hanya memberikan tegangan output yang

kemudian diteruskan ke driver sistem kendali. Sistem kendali dibagi menjadi 3 bagian,

yaitu pintu air masuk, pintu air keluar dan pompa air. Setiap bagian dilengkapi dengan

symbol untuk menampilkan status dari sistem tersebut, dimana karakter “I” untuk pintu air

masuk, “O” untuk pintu air keluar dan “P” untuk pompa air. Berikut diagram alir sistem

kendali ditunjukkan pada gambar 3.9.

Gambar 3.9. Diagram Alir Subrutin Pengaturan Sistem Kendali

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 46: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

28

3.2.4. Diagram Alir Subrutin Pengiriman Paket Data

Pengiriman paket data diawali dengan karakter “@” dan diakhiri karakter “$”

sesuai dengan kesepakatan dengan central unit. Setelah 1 paket data selesai dikirimkan,

central unit memeriksa paket data yang diterima dengan mencocokkan karakter pertama,

karakter terakhir dan jumlah karakter yang diterima. Jika sesuai central unit mengirimkan

karakter “y” yang berarti paket data berhasil diterima, tetapi jika tidak sesuai central unit

tidak akan mengirimkan jawaban apapun dan paket data yang dikirimkan tersebut

disimpan di eeprom untuk dikirimkan pada jadwal pengiriman paket data selanjutnya jika

komunikasi dengan central unit terhubung kembali.

Setelah 1 paket data selesai dikirim, remote unit memeriksa apabila ada paket data

yang belum dikirimkan atau tidak, jika ada remote unit mengirimkan kembali paket data

yang belum dikirim tersebut mulai dari prosedur pengiriman paket data yang pertama.

Berikut diagram alir pengiriman paket data ditunjukkan pada gambar 3.10.

Gambar 3.10. Diagram Alir Subrutin Pengiriman Paket Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 47: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

29

3.2.5. Diagram Alir Subrutin Pengambilan Data Sensor

Pengambilan data sensor dilakukan dengan mengirimkan karakter perintah ke slave

yang mewakili sensor. Karakter perintah untuk mengambil data sensor suhu adalah “a”,

sensor keasaman adalah “b”, sensor kekeruhan adalah “c” dan sensor kandungan oksigen

adalah “d”. Format data setiap 1 sensor yang dikirim sebanyak 6 karakter. Format data

yang dikirim dari slave sebagai berikut: “S0015#”. Karakter pertama mewakili inisial

sensor, karakter ke 2 sampai ke 5 adalah data sensor yang dikirimkan, dan karakter ke-6

adalah karakter pagar “#”. Sensor termperatur diwakili dengan karakter “S”, sensor

keasaman diwakili dengan karakter “K”, sensor kekeruhan diwakili dengan karakter “H”,

dan sensor DO diwakili dengan karakter “D.

Remote unit akan memeriksa data yang diterima dengan mengecek karater

pertama, karakter terakhir, dan jumlah karakter yang diterima, jika data tidak sesuai

dengan format tersebut maka data dianggap salah dan pengambilan data diulangi lagi.

Pengambilan data maksimal sebanyak 3 kali, apabila data sudah diminta sebanyak 3 kali

dan data masih belum sesuai format data yang ditampilkan adalah 0000. Berikut diagram

alir subrutin pengambilan data sensor ditunjukkan gambar 3.11, sedangkan subrutin

pengambilan data setiap sensor ditunjukkan pada gambar 3.12.

Gambar 3.11. Diagram Alir Subrutin Pengambilan Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 48: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

30

Gambar 3.12. Diagram Alir Subrutin Pengambilan Data Semua Sensor.

3.2.6. Diagram Alir Subrutin Ping

Berikut diagram alirnya ditunjukkan pada gambar 3.13.

Gambar 3.13. Diagram Alir Subrutin Ping

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 49: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

31

Diagram ini berfungsi untuk mememeriksa sambungan wireless dengan central

unit. Remote unit mengirimkan karakter “p” ke central unit untuk perintah “ping”, jika

terhubung central unit memberikan jawaban berupa karakter “y”.

3.2.7. Diagram Alir Subrutin Kendali

Pada subrutin ini, data monitoring sibandingkan dengan standar yang telah

ditentukan (lihat tabel 2.6). hasil perbandingan menentukan aksi pengendalian. Gambar

3.14 merupakan diagram alir program kontrol sistem.

Gambar 3.14. Diagram Alir Subrutin Sistem Kendali

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 50: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

32

Gambar 3.15. Diagram Alir Subrutin Aksi

Gambar 3.16. Diagram Alir Subrutin Matikan Aksi

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 51: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

33

3.2.8. Format Paket Data

Jumlah karakter di dalam paket data sebanyak 46 karakter, terdiri dari nomor

penyimpanan, tanggal, jam, penggabungan 4 data sensor, yang diawali dengan karakter

“@” dan diakhiri dengan karakter ”$”. Format data tersebut disesuaikan dengan kebutuhan

dan sesuai dengan yang dibutuhkan oleh central unit, berikut format data di dalam paket

data:

@01#dd-MM-yyyy#HH:mm#Saaaa#Kbbbb#Hcccc#Ddddd#$

Dari format paket data tersebut bisa dijelaskan pada tabel 3.1 seperti berikut:

Tabel 3.1. Format Paket Data

Nomor

penyimpanan Tanggal Waktu Suhu Keasaman Kekeruhan DO

Jumlah

karakter 2 10 5 5 5 5 5

Paket data yang disimpan di dalam eeprom memiliki kapasitas 50 kbyte setiap 1

paket data, hal ini bertujuan untuk mempermudah untuk memberikan alamat setiap paket

data yang disimpan di dalam eeprom. Jumlah memori eeprom Atmega 128 adalah 4 kbyte.

Memori eeprom juga digunakan untuk menyimpan pengaturan lainnya sehingga array yang

disediakan untuk penyimpanan paket data sebanyak 4000 karakter, jadi apabila pengaturan

pengambilan data diatur selama 1 jam, paket data yang mampu disimpan sebanyak 80 kali

pengambilan data atau selama 3 hari 8 jam, dihitung dari:

3.2.9. Pengaturan Frekuensi Kerja RFM12

Pengaturan frekuensi kerja RFM12 (baik pancar maupun terima) menggunakan

perintah “Frequency Setting Command”. Instruksi ini memiliki format :

Tabel 3.2. Format Pengaturan Frekuensi [7]

Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1

Data 1 0 1 0 F, menyatakan frekuensi

Nilai F ditentukan melalui persamaan [7]:

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 52: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

34

(

) MHz (3.1)

Frekuensi yang akan digunakan adalah 432 MHz, dari persamaan 3.1. dapat dihitung untuk

mencari nilai F seperti berikut:

(

)

Nilai F yang didapat dirubah ke dalam bentuk heksadesimal menjadi:

Nilai heksadesimal yang didapat dimasukkan ke dalam register “Frequency Setting

Command” untuk mengatur frekuensi yang digunakan.

3.2.10. Prosedur Pengiriman Data dengan RFM12

Prosedur pengiriman data melibatkan instruksi “Power Management Command”

dan “Transmitter Register Write Command”. “Power Management Command” berfungsi

menghidupkan dan mematikan komponen – komponen pemancar RF pada RFM12.

”Transmitter Register Write Command” berfungsi mengirimkan satu byte data ke register

data pemancar pada RFM12.

Prosedur pengiriman data dimulai dengan menghidupkan bagian pemancar

menggunakan instruksi “Power Management Command” dengan nilai 0x8238. Instruksi

dengan nilai tersebut akan menghidupkan penguat daya RF (Radio Frequency), synthesizer

dan osilator. Selanjutnya, lima paket data pembuka dikirim secara urut : 0xB8AA,

0xB8AA, 0xB8AA, 0xB82D dan 0xB8D4. Kemudian satu byte data dikirim menggunakan

perintah “Transmitter Register Write Command” yaitu dengan melakukan operasi OR

antara bilangan heksadesimal 0xB800 dengan data yang bersangkutan.

Langkah ini dapat diulangi jika data yang dikirim berjumlah lebih dari satu byte.

Jika data sudah dikirim semuanya, prosedur ditutup dengan mematikan pemancar

menggunakan perintah 'Power Management Command' dengan nilai 0x8208. Instruksi

dengan nilai tersebut akan mematikan penguat daya RF, synthesizer dan osilator. Diagram

alir prosedur pengiriman data ditampilkan pada gambar 3.17.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 53: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

35

Gambar 3.17. Diagram Alir Pengiriman Data RFM12

3.2.11. Prosedur Penerimaan Data dengan RFM12

Prosedur penerimaan data melibatkan tiga instruksi. “Power Management

Command” berfungsi menghidupkan dan mematikan komponen – komponen penerima RF

dari RFM12. “FIFO dan Reset Mode Command' berfungsi mengatur pemakaian register

data FIFO. “Receiver FIFO Read Command” berfungsi menerima satu byte data yang

ditampung pada register FIFO.

Prosedur penerimaan data dimulai dengan menghidupkan komponen – komponen

penerima meliputi RF front end, baseband, synthesizer dan osilator. Hal ini dilakukan

menggunakan instruksi 'Power Management Command' dengan nilai 0x82C8. Mode FIFO

diatur dan FIFO diaktifkan menggunakan perintah 'FIFO and Reset Mode Command'

dengan nilai 0xCA81 dan 0xCA83. Pengambilan data dilakukan pada register FIFO

menggunakan instruksi “Receiver FIFO Read Command”. Hal ini dilakukan dengan

mengirimkan nilai 0xB000 dan menampung data kembalian dari RFM12.

Untuk data yang hendak diterima berjumlah lebih dari satu byte langkah diatas bisa

diulangi sampai semua data diterima. Terakhir, setelah data selesai dikirimkan, prosedur

diakhiri dengan mematikan komponen – komponen penerima menggunakan instruksi

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 54: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

36

Power Management Command' dengan nilai 0x8208. Diagram alir prosedur penerimaan

data tampak pada Gambar 3.18.

Gambar 3.18. Diagram Alir Penerimaan Data RFM12

3.2.12. Data Dummy

Data dummy adalah data yang menyerupai data aslinya tetapi tidak memiliki fungsi

aslinya. Data ini akan digunakan untuk menggantikan data setiap sensor dalam pengujian

dan pengambilan data. Data yang digunakan disimpan pada eeprom setiap mikro untuk

menggantikan sensor. Sensor suhu untuk kualitas kolam batas pengukurannya adalah 15ºC

- 39ºC dengan perbedaan data setiap 1,5ºC, untuk sensor keasaman batas pengukurannya

adalah 4 pH – 10,5 pH dengan perbedaan data setiap 0,5 pH, sensor kekeruhan memiliki

batas pengukuran sebesar 25 NTU – 475 NTU dengan perbedaan data sebesar 25 NTU,

dan sensor DO memiliki batas pengukuran 3 ppm – 9,5 ppm dengan perbedaan data setiap

0,5 ppm [2]. Setiap sensor memiliki waktu pengukuran yang berbeda. Sensor kekeruhan,

dan keasaman waktu yang dibutuhkan untuk mendapatkan data yang valid selama 5 setik

[14]. Untuk sensor kadar oksigen waktu yang dibutuhkan untuk mendapatkan data yang

valid sekitar 20 menit [15].

Dalam pengujian, data yang digunakan mengikuti data yang sudah pernah didapat

dari tugas akhir Charles Wilianto yang berjudul Sistem Komunikasi Pengendalian Kualitas

Air Kolam Ikan Berbasis Atmega128. Setiap mikro mewakili 1 sensor yang memiliki

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 55: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

37

jumlah data yang berbeda. Mikro yang mewakili sensor suhu memiliki 17 data dari 15ºC -

39ºC dengan perbedaan data setiap 1,5º, untuk mikro yang mewakili sensor keasaman

memiliki 14 data dari 4 pH – 10,5 pH dengan perbedaan data setiap 0,5 pH, sedangkan

mikro yang mewakili sensor kekeruhan mimiliki 19 data dari 25 NTU – 475 NTU dengan

perbedaan data sebesar 25 NTU, dan untuk mikro yang mewakili sensor DO memiliki 14

data dari 3 ppm – 9,5 ppm dengan perbedaan data setiap 0,5 ppm.

Setiap mikro menampilkan data yang sudah disimpan di eeprom ke LCD yang

terhubung ke mikro tersebut. Mikro yang mewakili sensor kekeruhan dan keasaman data

yang ditampilkan berubah setiap 5 detik, untuk mikro yang mewakili sensor DO datanya

berubah setiap 20 menit. Waktu tersebut mengikuti waktu sebenarnya yang diperlukan

sensor untuk mendapatkan data yang valid. Untuk mikro yang mewakili sensor suhu, data

yang ditampilkan berubah setiap 5 detik mengikuti waktu dari sensor kekeruhan dan

keasaman karena tidak ada referensi yang menunjukan waktu untuk mendapatkan data

yang valid.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 56: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

38

BAB IV

HASIL DAN PEMBAHASAN

Bab ini berisi gambar fisik hardware yang dibuat, pembahasan tentang perbagian

hardware, hasil pengujian rangkaian, hasil pengambilan data, pembahasan tentang data

yang diperoleh, dan pembahasan tentang program yang digunakan di mikrokontroler. Data

yang akan dibahas terdiri dari data hasil pengambilan data sensor dan pengiriman paket

data ke cental unit. Hasil pengujian berupa data-data yang diperoleh dapat memperlihatkan

bahwa hardware atau software yang dirancang telah bekerja dengan baik atau tidak.

Berdasarkan data-data tersebut dapat dilakukan analisis terhadap proses kerja alat yang

kemudian dapat digunakan untuk menarik kesimpulan akhir.

4.1. Bentuk Fisik Remote Unit dan Hardware Elektronik

4.1.1. Bentuk Fisik Remote Unit

Bentuk fisik remote unit secara keseluruhan ditunjukkan pada gambar 4.1 sampai

gambar 4.4. Bentuk fisik remote unit ini terdiri dari 1 box yang bertujuan untuk melindungi

dan merapikan rangkaian elektronik di dalamnya.

Gambar 4.1. Kotak Sistem Tampak Atas Gambar 4.2. Kotak Sistem Tampak Belakang

Gambar 4.3. Kotak Sistem Tampak Kiri Gambar 4.4. Kotak Sistem Tampak Kanan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 57: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

39

4.1.2. Subsistem Elektonik Alat

Subsistem elektronik alat terdiri atas rangkaian pengontrol waktu, rangkaian sistem

mikrokontroler, LCD karakter, rangkaian tombol, indikator sistem kendali, rangkaian

pemancar, rangkaian antena, dan catu daya. Penulis membuat rangkaian sistem

mikrokontroler, LCD karakter, dan pengontrol waktu dalam 1 PCB, rangkaian tersebut bisa

dilihat pada gambar 4.5, sedangkan untuk rangkaian pemancar, rangkaian antena, dan catu

daya ditampilkan pada gambar 4.6 dan gambar 4.7.

Gambar 4.5. Rangkaian Pengontrol Waktu, Sistem Mikrokontroler, dan LCD karakter

Gambar 4.6. Rangkaian Pemancar dan Antena

Gambar 4.7. Rangkain Catu Daya

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 58: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

40

4.2. Pengujian Alat

4.2.1. Pengujian Rangkaian Catu Daya

Pengujian rangkaian catu daya ini bertujuan mengetahui tegangan keluaran yang

dihasilkan dan menguji kemampuan catu daya sudah bekerja dengan baik atau tidak.

Pengujian dilakukan dengan mengukur tegangan keluaran pada pin keluaran IC LM7805

dan dibandingkan dengan nilai tegangan pada datasheet.

Pada pengujian rangkaian catu daya mendapatkan tegangan keluaran sebesar 4,93

volt, sedangkan keluaran dari IC LM7805 pada datasheet sebesar 4,75-5,25 volt. Pengujian

catu daya dapat berkerja dengan baik.

4.2.2. Pengujian Pengontrol Waktu

Pengontrol waktu berfungsi untuk menjaga agar waktu alat kontrol sesuai dengan

waktu sesungguhnya. Hal ini berhubungan dengan pengandaiian yang bersifat real-time.

Pada bagian ini terdiri dari IC DS1307 dan sebuah baterai yang digunakan sebagai sumber

energi IC saat sumber listrik utama tidak tersedia. Berikut gambar rangkaian pengontrol

waktu:

Gambar 4.8. Rangkaian Pengontrol Waktu

Pengujian dilakukan dengan mematikan semua sistem beberapa kali selama 10

detik. Setelah 10 detik, sistem dinyalakan kembali, dan waktu yang ditunjukkan oleh

sistem bertambah 10 detik. Dari pengujian ini didapat kesimpulan bahwa sistem pengontrol

waktu sudah dapat bekerja dan mempertahankan waktu dari sistem.

4.2.3. Pengujian Program Pengambilan dan Penggabungan Data Sensor

Pengujian program pengambilan dan penggabungan data sensor dilakukan untuk

mengetahui keberhasilan dari program ini. Pengujian dilakukan dengan membuat program

pengambilan data setiap sensor secara otomatis ketika tombol “OK” ditekan dan data yang

diterima ditampilkan di LCD. Setiap sensor dilakukan maksimal 3 kali pengambilan data

secara otomatis apabila tidak ada data masuk, tetapi jika setelah 3 kali tetap tidak ada data

masuk, nilai dari data tersebut ditampilkan menjadi “0000”. Dalam pengambilan data ini,

penulis tidak menggunakan sensor sebenarnya, tetapi menggunakan mikrokontroler

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 59: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

41

ATMega8535 yang berisi berisi data dummy dan pengambilan data dilakukan setiap 10

detik sekali dengan mengubah data pada mikrokontroler ATMega8535 menggunakan

potensio yang berada pada ATMega8535 sebelum dilakukan pengambilan data. Hasil

pengujian pengambilan dan penggabungan data sensor ditampilkan pada gambar 4.9, dan

tabel 4.1.

Tabel 4.1. Pengambilan Paket Data

No Data Sensor

Data Terima Suhu Keasaman Kekeruhan DO

1 15,0 4,00 0025 3,00 S15,0#K4,00#H0025#D3,00#

2 16,5 4,50 0050 3,50 S16,5#K4,50#H0050#D3,50#

3 18,0 5,00 0075 4,00 S18,0#K5,00#H0075#D4,00#

4 19,5 5,50 0100 4,50 S19,5#K5,50#H0100#D4,50#

5 21,0 6,00 0125 5,00 S21,0#K6,00#H0125#D5,00#

6 22,5 6,50 0150 5,50 S22,5#K6,50#H0150#D5,50#

7 24,0 7,00 0175 6,00 S24,0#K7,00#H0175#D6,00#

8 25,5 7,50 0200 6,50 S22,5#K7,50#H0200#D6,50#

9 27,0 8,00 0225 7,00 S27,0#K8,00#H0225#D7,00#

10 28,5 8,50 0250 7,50 S285#K8,50#H0250#D7,50#

11 30,0 9,00 0275 8,00 S30,0#K9,00#H0275#D8,00#

12 31,5 9,50 0300 8,50 S31,5#K9,50#H0300#D8,50#

13 33,0 10,0 0325 9,00 S33,0#K10,0#H0325#D9,00#

14 34,5 10,5 0350 9,50 S34,5#K10,5#H0350#D9,50#

15 36,0 4,00 0375 3,00 S36,0#K4,00#H0375#D3,00#

16 37,5 4,50 0400 3,50 S37,5#K4,50#H0400#D3,50#

17 39,0 5,00 0425 4,00 S39,0#K5,00#H0425#D4,00#

18 15,0 5,50 0450 4,50 S15,0#K5,50#H0450#D4,50#

19 16,5 6,00 0475 5,00 S16,5#K6,00#H0475#D5,00#

Gambar 4.9. Hasil Pengambilan Paket Data

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 60: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

42

Berdasarkan tabel 4.1 tampak bahwa pengambilan paket data setiap sensor dapat

bekerja karena hasil penerimaan paket data sudah sesuai dengan data yang dikirimkan

setiap sensor yang ditampilkan pada LCD dan tidak ada kesalahan yang didapat.

4.2.4. Pengujian Komunikasi RFM12-433S 1 Arah

Pengujian komunikasi RFM12-433S 1 arah dilakukan untuk mengetahui jarak

maksimum dari modul pemancar tersebut. Pengujian dilakukan pada ruang terbuka dengan

cara mengirimkan 1 karakter “O” secara terus menerus dari pemancar ke penerima, apabila

penerima dapat menerima karakter tersebut, penerima akan menampilkan tulisan “Koneksi

OK”, tetapi apabila tidak LCD penerima akan menampilkan karakter “Koneksi Gagal”.

Pada pengujian ini dilakukan dengan 3 frekuensi berbeda dan 3 kecepatan transfer data

yang berbeda. Frekuensi yang digunakan untuk pengujian ini adalah 432MHz, 435MHz,

dan 437MHz, sedangkan kecepatan transfer data yang digunakan adalah 1kbps, 2kbps, dan

5kbps. Hasil pengujian komunikasi RFM12-433S 1 arah ditampilkan pada dan tabel 4.2.

Tabel 4.2. Hasil Pengujian RFM12-433S 1 Arah

No. Frekuensi

(MHz)

Kecepatan

(kbps)

Jarak

maksimum

(m)

1 432 1 122

2 432 2 120

3 432 5 118

4 435 1 120

5 435 2 115

6 435 5 110

7 437 1 122

8 437 2 119

9 437 5 118

Berdasarkan tabel 4.2, frekuensi yang digunakan pada 432MHz mampu mencapai

jarak maksimum pengiriman 1 byte sejauh 120 meter, sedangkan untuk frekuensi 435MHz

jarak terjauh sebesar 120 meter dan untuk frekuensi 437MHz jarah terjauh untuk

pengiriman 1 byte sebesar 122 meter. Berdasarkan tabel 4.2, jarak terjauh dapat dicapai

dengan menggunakan baudrate terkecil yaitu sebesar 1kbps, sedangkan untuk baudrate

terbesar yaitu sebesar 5kbps hanya mencapai jarak paling pendek.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 61: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

43

Hal tersebut dikarenakan semakin besar baudrate yang digunakan atau semakin

jauh jarak jangkauan pengiriman data, maka semakin besar juga noise yang didapat,

sehingga mengakibatkan kemungkinan pembacaan data yang diterima salah. Berikut

gambar pengaruh baudrate dengan sinyal yang diterima ditampilkan pada gambar 4.10 –

4.12 dengan jarak pengiriman sejauh 40 meter, sedangkan pengaruh jarak pengiriman data

dengan sinyal yang diterima ditampilkan pada gambar 4.13 - 4.16 yang menggukan

pengaturan frekuensi 432MHz dan baudrate 5kbps.

Gambar 4.10. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate

1kbps

Gambar 4.11. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate

2kbps

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 62: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

44

Gambar 4.12. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate

5kbps

Gambar 4.13. Sinyal Diterima Central Unit Dengan Jarak Pengujian 1 Meter

Gambar 4.14. Sinyal Diterima Central Unit Dengan Jarak Pengujian 10 Meter

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 63: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

45

Gambar 4.15. Sinyal Diterima Central Unit Dengan Jarak Pengujian 20 Meter

Gambar 4.16. Sinyal Diterima Central Unit Dengan Jarak Pengujian 40 Meter

Untuk memeriksa data yang diterima dengan data yang dikirim sudah sesuai bisa

dilakukan dengan mengecek sinyal data yang diterima dan clock yang dihasilkan dari

sistem penerima, tetapi untuk pengambilan data sangat sulit untuk mensinkronkan antara

sinyal data yang diterima dengan clock yang dihasilkan, karena clock akan bergeser ke kiri

atau ke kanan.

Dalam pengambilan data ini, penulis mengambil data secara terpisah. Pertama

mengambil data sinyal yang diterima kemudian mengambil data clock yang dihasilkan.

Setelah kedua data tersebut diambil, maka penulis menyatukan kedua gambar tersebut agar

sinkron sehingga tampak seperti gambar 4.17. Dari gambar 4.17, bisa diambil nilai bit

yang diditerima setiap perubahan clock naik, sehingga didapat hasilnya adalah

1011100010101010b. Kemudian dari nilai tersebut dikonversikan menjadi bilangan heksa

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 64: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

46

dan didapat hasilnya adalah 0xB8AA. Nilai tersebut sesuai dengan yang dikirimkan dari

remote unit. Nilai “B8” merupakan alamat untuk pengiriman data, dan nilai “AA”

merupakan nilai inisialisasi sebelum atau sesudah mengirim data.

Gambar 4.17. Cara Membaca Sinyal Yang Diterima

4.2.5. Pengujian Komunikasi RFM12-433S 2 Arah Secara Bergantian

Pengujian komunikasi RFM12-433S 2 arah secara bergantian dilakukan untuk

mengetahui kestabilan modul RFM12-433S untuk berkomunikasi. Pengujian dilakukan di

ruang terbuka dengan cara mengirimkan 1 karakter dari remote unit ke central unit.

Karakter yang dikirimkan remote unit adalah karakter “p”, apabila karakter tersebut

diterima oleh central unit maka central unit mengirimkan karakter balik ke remote unit.

Karakter tersebut adalah karakter “y”, apabila karakter “y” tersebut diterima kembali oleh

remote unit, maka LCD pada remote unit akan menampilkan tulisan “Koneksi OK”, tetapi

apabila tidak LCD penerima akan menampilkan karakter “Koneksi Gagal”. Pada pengujian

ini dilakukan dengan 3 frekuensi berbeda dan 3 kecepatan transfer data yang berbeda.

Frekuensi yang digunakan untuk pengujian ini adalah 432MHz, 435MHz, dan 437MHz,

sedangkan kecepatan transfer data yang digunakan adalah 1kbps, 2kbps, dan 5kbps. Hasil

pengujian komunikasi RFM12-433S 2 arah bergantian ditampilkan pada dan tabel 4.3.

Berdasarkan tabel 4.3, jarak terjauh yang mampu ditempuh sebesar 30 meter

dengan pengaturan frekuensi sebesar 435MHz dan kecepatan transfer sebesar 5kbps. Dari

tabel 4.3 apabila dibandingkan dengan tebel 4.2, hasil yang didapatkan berbeda jauh. Hal

ini disebabkan karena untuk komunikasi 2 arah secara bergantian dibutuhkan komunikasi

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 65: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

47

yang stabil, dan kestabilan dari modul RFM12-433S ini berada pada jangkauan maksimum

sebesar 30 meter.

Tabel 4.3. Hasil Pengujian Pengujian RFM12-433S 2 Arah Bergantian

No. Frekuensi

(MHz)

Kecepatan

(kbps)

Jarak

maksimum

(m)

1 432 1 30

2 432 2 22,6

3 432 5 20

4 435 1 23,1

5 435 2 24

6 435 5 15

7 437 1 24,5

8 437 2 28

9 437 5 23,8

4.2.6. Pengujian Pengiriman Paket Data ke Central Unit

Pengujian pengiriman paket data ke central unit dilakukkan untuk mengetahui

peforma dari pemancar yang digunakan untuk mengetahui frekuensi dan kecepatan transfer

data dengan jarak terjauh dan dapat diterima dengan benar oleh central unit untuk

pengiriman paket data. Pengujian dilakukan di tempat terbuka setiap 5 meter yaitu pada

jarak 1 meter, 5 meter, 10 meter dan 15 meter.

Metode pengujian adalah dengan cara menjalankan program utama dan megatur

jadwal pengiriman paket data setiap 1 menit, sehingga setiap 1 menit alat ini akan

mengambil data dari setiap sensor dan mengirimkannya ke central unit sesuai dengan

format yang ditentukan pada bab III. Frekuensi yang digunakan untuk pengujian ini adalah

432MHz, 435MHz, dan 437MHz, sedangkan kecepatan transfer data yang digunakan

adalah 1kbps, 2kbps, dan 5kbps. Hasil pengujian paket data ke central unit ditampilkan

pada dan tabel 4.4.

Berdasarkan tabel 4.4, semua data yang dikirim remote unit berhasil diterima

central unit. Walaupun semakin besar baudrate yang digunakan noise yang dihasilkan

semakin besar, tetapi untuk jarak 15 meter noise tersebut belum mengganggu proses

pengiriman paket data. Berdasarkan hal tersebut, membuktikan bahwa modul RFM12-

433S bisa digunakan untuk proses pengiriman 1 byte atau lebih.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 66: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

48

Tabel 4.4. Hasil Pengujian Pengiriman Paket Data

Frekuensi 432MHz 432MHz 432MHz

Baudrate 1kbps 2kbps 5kbps

Jarak (m) Keterangan Keterangan Keterangan

1 berhasil berhasil berhasil

5 berhasil berhasil berhasil

10 berhasil berhasil berhasil

15 berhasil berhasil berhasil

Frekuensi 435MHz 435MHz 435MHz

Baudrate 1kbps 2kbps 5kbps

Jarak (m) Keterangan Keterangan Keterangan

1 berhasil berhasil berhasil

5 berhasil berhasil berhasil

10 berhasil berhasil berhasil

15 berhasil berhasil berhasil

Frekuensi 437MHz 437MHz 437MHz

Baudrate 1kbps 2kbps 5kbps

Jarak (m) Keterangan Keterangan Keterangan

1 berhasil berhasil berhasil

5 berhasil berhasil berhasil

10 berhasil berhasil berhasil

15 berhasil berhasil berhasil

Berikut gambar gelombang yang diterima central unit ditampilkan pada gambar

4.18 – gambar 4.20, dan tampilan data yang berhasil diterima ditampilkan pada gambar

4.21. Sama halnya dengan proses pengiriman data 1 byte, pengiriman paket data bisa

dilakukan dengan mengirim data satu per satu sampai semua data dikirim. Dari hasil

pengujian ini, semakin besar baudrate yang digunakan maka semakin besar juga noise

yang dihasilkan. Tetapi pada pengujian ini jarak terjauh untuk pengujian paket data sebesar

15 meter. Pada jarak tersebut, noise yang diterima pada central unit tidak mempengaruhi

proses pengiriman paket data karena semua data masih bisa diterima walaupun noise

tersebut cukup besar.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 67: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

49

Gambar 4.18. Sinyal Penerimaan Paket Data Dengan Baudrate 1kbps

Gambar 4.19. Sinyal Penerimaan Paket Data Dengan Baudrate 2kbps

Gambar 4.20. Sinyal Penerimaan Paket Data Dengan Baudrate 5kbps

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 68: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

50

Gambar 4.21. Tampilan Data Berhasil Diterima

Berdasarkan gambar 4.21. tidak ada kesalahan data yang diterima pada central unit,

hal ini dikarenakan pada central unit sudah dilakukan pengecekan format data yang masuk

sebelum memberikan jawaban ke remote unit setelah menerima data.

4.2.7. Pengujian Pengiriman Data Eeprom

Pengujian pengiriman data eeprom dilakukan untuk memeriksa kapasitas dari

jumlah paket data yang mampu disimpan di dalam eeprom. Pengiriman data eeprom ada 2

jenis model pengiriman, yaitu pengiriman secara otomatis ketita waktu sesuai dengan

jadwal kirim dan pengiriman secara manual dengan memilih mode kirim data pada

“Menu”. Berdasarkan hal tersebut dilakukan 4 model pengujian.

Pengujian pertama dilakukan dengan cara menjalankan program utama dengan

pengaturan pengambilan data setiap satu menit, tetapi sistem central unit di non-aktifkan

selama 80 menit dan pada menit ke 80 detik ke 30 central unit diaktifkan kembali. Setiap

satu menit alat ini akan mengambil data dari setiap sensor, karena tidak terhubung dengan

central unit data yang sudah diambil dari sensor tidak bisa dikirim ke central unit. Data

inilah yang disimpan di dalam eeprom.Hasilnya pada menit ke 81, karena central unit aktif

kembali alat ini mengirim semua paket data ke central unit. Proses pengiriman semua

paket data ini dilakukan selama 4 menit 30 detik sampai semua paket data terkirim.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 69: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

51

Pengujian kedua dilakukan dengan cara menjalankan program utama dengan

pengaturan pengambilan data setiap satu menit, tetapi sistem central unit di non-aktifkan

selama 100 menit dan pada menit ke 100 detik ke 30 central unit diaktifkan kembali.

Hasilnya data yang mampu tersimpan hanya sampai menit ke 80, pada menit ke 81 alat ini

masil belum bisa mengirimkan paket data sehingga paket data tersebut harus tetap

disimpan, tapi memori yang disediakan sudah penuh sehingga data terakrir disimpan pada

alamat penyimpanan paket data terakhir. Dan pada menit ke 101, central unit sudah

diaktifkan kembali sehingga paket data bisa dikirimkan.

Pada pengiriman data eeprom ini, dilakukan pengujian ketiga dengan cara ketika

pengiriman paket data yang tersimpan dikirimkan, salah satu sistem dinonaktifkan

sehingga proses pengiriman berhenti ditengah proses pengiriman dan dinyalakan kembali

10 detik kemudian. Hasilnya, ketika waktu sudah sesuai jadwal kirim alat ini kembali

mengirimkan paket data yang belum terkirim ke central unit.

Pengujian keempat dilakukan dengan cara menjalankan program utama dengan

pengaturan pengambilan data setiap satu menit, tetapi sistem central unit di non-aktifkan

selama 100 menit dan pada menit ke 100, detik ke 30 central unit diaktifkan kembali dan

pada saat itu alat ini dipilih untuk mode pengiriman manual pada “menu”, sehingga alat ini

mengirimkan paket semua paket data yang sudah disimpan selama koneksi masih

terhubung ke central unit.

Berdasarkan keempat pengujian tersebut sistem sudah bekerja sesuai dengan yang

diharapkan karena alat ini mampu menampung paket data selama paket data tidak bisa

dikirimkan ke central unit dan akan dikirimkan apabila alat ini bisa terhubung kembali

dengan central unit.

4.3. Pembahasan Perangkat Lunak

Program yang dibuat pada perancangan ini terdiri dari beberapa subrutin dan

mengacu pada gambar diagram alir pada Bab sebelumnya. Program ini sudah berfungsi

seperti yang diharapkan. Berikut merupakan penjelasan lengkap dari program yang dibuat:

4.3.1. Inisialisasi

Inisialisasi dimulai dengan memasukkan library fitur-fitur yang digunakan dalam

program, seperti library ATmega128, LCD, I2C, dan seterusnya. Pada inisialisasi LCD,

I2C menggunakan fitur Code Wizard AVR yang ada pada software Code Vision AVR,

sehingga kode program akan terinisialisasi secara otomatis.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 70: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

52

Tabel 4.5. Parameter pada memori EEPROM

Subsistem Parameter Fungsi

Pengiriman Paket

frek Berisi pengaturan frekuensi yang digunakan

kec Berisi pengaturan baudrate yang digunakan

jadwal Berisi pengaturan jadwal pengiriman paket

data

datasimpan Berisi urutanpenyimpanan paket data

hitung Berisi urutan data yang dikirim

ingat Berisi paket data yang disimpan

Kontrol Sistem

Kendali

pintumasuk Berisi pengaturan kendali pintu air masuk

kolam

Pintukeluar Berisi pengaturan kendali pintu air keluar

kolam

pompaair Berisi pengaturan pompa air kolam

Pada bagian ini, program juga akan mengambil variabel – variabel dari memori

EEPROM yang dibutuhkan dalam pengendalian masing – masing subsistem. Variabel –

variabel yang digunakan untuk menyimpan pengaturan pengguna disimpan dalam struktur

data sehingga lebih mudah untuk digunakan dalam program. Tabel 4.5 menunjukkan

variabel –variable yang tersimpan di memori EEPROM.

4.3.2. Program Utama

Program utama berisi alur perintah utama, yang berikutnya akan memanggil

subrutin – subrutin lainnya. Perintah yang ada pada program utama pertama akan

menginisialisasi fitur- fitur yang digunakan. Setelah inisialisasi, program akan memanggil

satu per satu subrutin yang ada secara terus menerus.

Pada tampilan utama sistem menampilkan jam, tanggal dan status sistem kendali,

pengguna juga dapat melihat pengaturan yang sudah diatur pada alat ini seperti

ditampilkan pada tabel 4.6 dan tampilan setiap pemilihan tombol ditampilkan pada gambar

4.22 – gambar 4.26.

Tabel 4.6. Fungsi Tombol Dalam Program Utama

Tombol Fungsi

RESET Berfungsi untuk mengulang sistem

MENU Berfungsi untuk mengubah pengaturan

OK Berfungsi untuk menampilkan frekuensi dan baudrate yang digunakan

UP Berfungsi untuk menampilkan waktu pengiriman paket selanjutnya

BACK Berfungsi untuk menampilkan waktu kirim dan jadwal kirim paket

DOWN Berfungsi untuk menampilkan jumlah paket data yang belum terkirim

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 71: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

53

Gambar 4.22. Tampilan Program Utama

Gambar 4.23. Tampilan Ketika Tombol OK Ditekan

Gambar 4.24. Tampilan Ketika Tombol UP Ditekan

Gambar 4.25. Tampilan Ketika Tombol BACK Ditekan

Gambar 4.26. Tampilan Ketika Tombol DOWN Ditekan

Pada gambar 4.22 merupakan tampilan utama dari sistem ini yang menampilkan

jam, tanggal dan status dari sistem kendali dimana “I” mewakili pintu masuk air, “O”

mewakili pintu keluar air dan “P” mewakili pompa air. Nilai 0 berarti tidak aktif atau sama

dengan pintu tertutup dan nilai 1 berarti aktif atau sama dengan pintu terbuka.

Pada gambar 4.25 merupakan tampilan ketika tombol back ditekan. Pada bagian ini

LCD menampilkan pengaturan jadwal pengiriman paket yang digunakan dalam menit dan

total merupakan waktu yang sudah dilewati dari pengiriman paket data terakhir.

4.3.3. Subrutin Pengambilan Data Semua Sensor

Subrutin pengambilan data dipanggil ketika waktu sesuai dengan jadwal

pengiriman paket data atau pengguna melakukan pengambilan paket data secara manual di

dalam subrutin menu. Di dalam subrutin ini sistem akan mengambil semua data sensor

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 72: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

54

secara bergantian dan mengubahnya menjadi paket data kemudian disimpan di dalam

EEPROM. Satu paket data disediakan array sebanyak 50 byte.

4.3.4. Subrutin Kendali

Subrutin kendali dipanggil setelah sistem mengambil data dari setiap sensor. Sistem

akan membandingkan data yang didapat dari setiap sensor dengan data kualitas air yang

baik sesuai dengan tabel 2.12. Apabila data tidak sesuai maka sistem akan menutup pintu

air masuk, membuka pintu air keluar dan mengaktifkan pompa air sampai data setiap

sensor sesuai dengan kualitas air yang baik. Jika data sensor sesuai dengan kualitas air

yang baik, maka sistem akan membuka pintu air masuk, menutup pintu air keluar dan

menonaktifkan pompa air.

4.3.5. Subrutin PING

Subrutin ping dilakukan untuk memeriksa sambungan dengan central unit. Subrutin

ini dipanggil sebelum mengirimkan paket data ke central unit atau dilakukan secara

manual dengan memilih pengaturan di dalam subrutin menu. Pengiriman ping dilakukan

dengan cara mengirimkan karakter “p”, apabila central unit menerima karakter tersebut

maka central unit akan mengirimkan kembali karakter “y”. Karakter inilah yang akan

dicek oleh sistem, apabila setelah mengirimkan karakter “p” tidak ada data masuk maka

sistem tidak terhubung dengan central unit, tetapi apabila ada balalas berupa karakter “y”

berarti sistem terhubung dengan central unit.

4.3.6. Subrutin Pengiriman Paket Data

Subrutin pengiriman paket data dipanggil ketika waktu sesuai dengan jadwal

pengiriman paket data apabila status setelah subrutin ping “terhubung”. Di dalam subrutin

ini, sistem mengambil satu paket data di dalam EEPROM mulai dari alamat paket data 0

kemudian dikirmkan ke central unit. Apabila masih ada data yang belum dikirim, sistem

mengambil paket data selanjutnya sampai semua paket data terkirim.

4.3.7. Subrutin Menu

Subrutin menu dipanggil apabila pengguna menekan tombol menu. Di dalam

subrutin ini setelah tombol menu ditekan pengguna, program akan menampilkan

pertanyaan untuk mengubah pengaturan yang ingin dirubah mulai dari pengaturan waktu,

pengaturan jadwal kirim paket data, percobaan pengambilan data sensor suhu, sensor asam,

sensor kekeruhan, sensor kadar oksigen, pengambilan paket data, pengiriman ping ke

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 73: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

55

central unit, hapus paket data yang tersimpan di EEPROM, pengaturan frekuensi yang

digunakan, pengaturan kecepatan transfer paket data, pengiriman paket data yang

tersimpan di EEPROM, dan pengaturan sistem kendali.

Setelah pertanyaan ditampilkan, apabila pengguna ingin memilih pengaturan

tersebut pengguna memilih tombol OK, tetapi jika tidak ingin mengubahnya, pengguna

menekan tombol UP untuk mengubah pengaturan lainnya dan untuk keluar dari subrutin

ini pengguna tinggal menekan tombol BACK sampai tampilan utama LCD menampilkan

waktu dan tanggal utama.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 74: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

56

BAB V

KESIMPULAN DAN SARAN

5.1. Kesimpulan

Dari hasil pengujian dan pengambilan data pada sitem telemetri kualitas kolam air

ikan dengan RFM12-433S sebagai remote unit, didapatkan kesimpulan sebagai berikut:

1. Semakin besar baudrate yang digunakan atau semakin jauh jarak pengiriman data

yang dilakukan, maka semakin banyak noise yang diterima central unit.

2. Penggunaan modul RFM12 dapat digunakan untuk komunikasi dengan baik pada

jarak maksimum 30 meter di ruang terbuka.

3. Semakin besar baudrate yang digunakan, maka semakin dekat jarak jangkauan

pengiriman data.

5.2. Saran

Saran – saran dari pengembangan sistem telemetri ini selanjutnya adalah:

1. Mengatasi noise yang didapat agar jarak jangkauan penerimaan paket data bisa

lebih jauh.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 75: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

57

DAFTAR PUSTAKA

[1] http://www.produknaturalnusantara.com/panduan-teknis-budidaya-

perikanan/budidaya-ikan-patin/ , diakses tanggal 12 Oktober 2014

[2] Wilianto, C., 2014, Sistem Komunikasi Pengendalian Kualitas Air Kolam Ikan

Berbasis Atmega128, Skripsi, Universitas Sanata Dharma, Yogyakarta.

[3] Wahjono, H. D., 2009, Jurnal Pemantauan Kualitas Air Online Dan Realtime Di

Intake PDAM Taman Kota Cengkareng Drain Di DKI Jakarta, BPP Teknologi,

Jakarta.

[4] Bambang, C., 2000, Budi Daya Ikan Air Tawar , Kanisius, Yogyakarta.

[5] Direktorat Jendral Perikanan Budidaya dan Direktorat Perbebihan., 2006, Petunjuk

Teknis Balai Benih Ikan (BBI), Balai Benih Ikan Sentral (BBIS), Balai Benih

Udang (BBU), Blai Benih Udang Galah (BBUG),Dan Balai Benih Ikan Pantai

(BBIP), Direktorat Jendral Perikanan Budidaya, Jakarta

[6] ----------, 2011, Data Sheet Microcontroller ATmega128, Atmel.

[7] ----------, 2006, RFM12 Universal ISM Band FSK Transceiver, HOPE

MICROELECTRONICS.

[8] Heryanto, M. A dan Adi, P. W., 2008, Pemrograman Bahasa C Untuk

Mokrokontroler ATMEGA 8535, ANDI Yogyakarta.

[9] ----------, 2008, Data Sheet DS1307, Maxim.

[10] Boylestad, R., Nashelsky, L., 1996, Electronic Devices and Circuit Theory sixth

edition, New Jersey : Prentice Hall.

[11] https://www.led-tech.de/en/3mm-LEDs_DB-3.pdf, diakses 16 April 2015.

[12] Payara, M.F., 2014, Rancang Bangun Pengendalian Kualitas Air Pada Sistem

Minitoring Kualitas Air Kolam Ikan, Skripsi, Universitas Sanata Dharma,

Yogyakarta.

[13] ----------, 2009, Innovative Electronics.

[14] Saputri, D., 2014, Alat Ukur Kadar Keasaman Pada Sistem Monitoring Kualitas

Air Kolam Ikan, Skripsi, Universitas Sanata Dharma, Yogyakarta.

[15] Wijatmika, S.H., Alat Ukur Kadar Oksigen Terlarut Dengan Metode Elektrolisis

Berbasis ATMega8535, Skripsi, Universitas Sanata Dharma, Yogyakarta.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 76: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

58

LAMPIRAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 77: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L1

LAMPIRAN

Data Yang Digunakan Dalam Pengambilan Data Dan Pengujian

Data sensor suhu

No. Data Suhu

1 15,0

2 16,5

3 18,0

4 19,5

5 21,0

6 22,5

7 24,0

8 25,5

9 27,0

10 28,5

11 30,0

12 31,5

13 33,0

14 34,5

15 36,0

16 37,5

17 39,0

Data sensor keasaman

No Data Keasaman

1 4,00

2 4,50

3 5,00

4 5,50

5 6,00

6 6,50

7 7,00

8 7,50

9 8,00

10 8,50

11 9,00

12 9,50

13 10,0

14 10,5

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 78: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L2

Data sensor kekeruhan

No Data kekeruhan

1 0025

2 0050

3 0075

4 0100

5 0125

6 0150

7 0175

8 0200

9 0225

10 0250

11 0275

12 0300

13 0325

14 0350

15 0375

16 0400

17 0425

18 0450

19 0475

Data sensor kadar oksigen

No Data kadar oksigen

1 3,00

2 3,50

3 4,00

4 4,50

5 5,00

6 5,50

7 6,00

8 6,50

9 7,00

10 7,50

11 8,00

12 8,50

13 9,00

14 9,50

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 79: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L3

Skematik Mikro Untuk Mewakili Setiap Sensor

Untuk setiap sensor diwakili oleh 1 mikro dan 1 LCD, sehingga ada 4 rangkaian

tambahan yang digunakan untuk pengujian. Mikro yang digunakan adalah Atmega8, dan

LCD yang digunakan adalah LCD 2 x 16.

Pengaturan Timer Mikro Untuk Mewakili Setiap Sensor

Untuk mengubah data yang ditampilkan pada LCD, setiap mikro yang mewakili

sensor membutuhkan waktu yang sama untuk sensor suhu, keasaman dan kekeruhan yaitu

sebesar 5 detik, tetapi untuk sensor DO waktu yang dibutuhkan adalah 20 menit. mikro

yang digunakan untuk menggantikan sensor tersebut adalah Atmega 8535, di dalam

Atmega 8535 sudah disediakan 3 timer, 2 timer 16 bit dan 1 timer 8 bit. Untuk membuat

timer tersebut dilakukan pengaturan pada register TCNT timer 1. Untuk mempermudah

dalam pembuatan program dibuat timer selama 1 detik, apabila digunakan waktu 5 detik,

maka timer 1 detik tersebut diulang sebanyak 5x, berikut rumus untuk mencari nilai TCNT

pada timer 16 bit pada timer 1 :

TCNT=65536 - (Ttunda/(1/freq.Osc * prescaler))

Frekuensi osiloskop yang digunakan mikrokontroler sebesar 12 MHz, nilai prescaler

sebesar 1024, dan nilai tundanya sebesar 1 s, jadi bisa dicari:

TCNT = 65536 - (Ttunda / (1 /freq.osc*Prescaler))

TCNT = 65536-(1/(1/12000000*1024))

TCNT = 53817,25 (bulatkan ke atas)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 80: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L4

TCNT = 53818 (konversikan ke hexadesimal)

TCNT = D23A

Nilai TCNT tersebut yang di masukkan untuk mengatur timer sebesar 1 s.

Diagram Alir Slave Temperatur dan Keasaman

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 81: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L5

Diagram Alir Slave Kekeruhan dan DO

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 82: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L6

Kotak Sistem Tampak Atas

Kotak Sistem Tampak Belakang

Kotak Sistem Tampak Samping Kanan

Kotak Sistem Tampak Samping Kiri

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 83: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L7

Rangkaian Pengontrol Waktu

Rangkaian LCD

Rangkaian Catu Daya

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 84: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L8

Rangkaian Keseluruhan Mikrokontroler

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 85: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L9

Listing Program ATMega128

1. /*****************************************************

2. This program was produced by the

3. CodeWizardAVR V2.05.3 Standard

4. Automatic Program Generator

5. © Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.

6. http://www.hpinfotech.com

7.

8. Project : Sistem Telemetri Kualitas Air Kolam Ikan Dengan RFM12-433S Sebagai

Remote Unit

9. Version :

10. Date : 5/11/2015

11. Author : ANDREAS BAGUS SADEWO

12. Company : Universitas Sanata Dharma

13. Comments:

14.

15.

16. Chip type : ATmega128

17. Program type : Application

18. AVR Core Clock frequency: 8.000000 MHz

19. Memory model : Small

20. External RAM size : 0

21. Data Stack size : 1024

22. *****************************************************/

23.

24. #include <mega128.h>

25.

26. // I2C Bus functions

27. #include <i2c.h>

28.

29. // DS1307 Real Time Clock functions

30. #include <ds1307.h>

31.

32. // Alphanumeric LCD functions

33. #include <alcd.h>

34. #include <stdio.h>

35. #include <delay.h>

36. #include <stdlib.h>

37.

38. #define SCK 2 // SPI clock

39. #define SDO 0 // SPI Data output (RFM12B side) //MOSI

40. #define SDI 1 // SPI Data input (RFM12B side) //MISO

41. #define CS 3 // SPI SS (chip select)

42. #define NIRQ 4 // (PORTD)

43.

44.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 86: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L10

45. #define HI(x) PORTA |= (1<<(x))

46. #define LO(x) PORTA &= ~(1<<(x))

47. #define WAIT_NIRQ_LOW() while(PINA&(1<<NIRQ))

48.

49. #define level_rendah PINF.0

50. #define level_normal PINF.1

51. #define level_tinggi PINF.2

52. #define kirim_data PIND.0

53. unsigned char total, simpan,terimadata_rf[2];

54. unsigned int data,z;

55. bit airmasuk,airkeluar, pompa, logika, terhubung;

56.

57. // Declare your global variables here

58. unsigned char a, b, e, f, g,j,k,l,aa;

59. unsigned char h, m, s, w, d, mo, y, mm;

60. unsigned char temp[60], tampildata[32], waktu[16], wk[16], ss[3], tanggal[16],

data_rf[70];

61. unsigned char suhu[5], keasaman[5], kekeruhan[5], oksigen[5], buff[6];

62. float ssuhu,skeasaman,skekeruhan, soksigen;

63.

64. /*

65. h=hour, m=minute, s=second

66. d=day, mo=month, y=year

67. */

68.

69. int c,i;

70.

71. eeprom unsigned char frek, kec;

72. eeprom unsigned char jadwal, datasimpan, hitung;

73. eeprom unsigned char pintumasuk, pintukeluar, pompaair;

74. eeprom unsigned char ingat[4000];

75. int count;

76.

77. // Timer1 overflow interrupt service routine

78. interrupt [TIM1_OVF] void timer1_ovf_isr(void)

79. {

80. // Reinitialize Timer1 value

81. TCNT1H=0xE17B >> 8;

82. TCNT1L=0xE17B & 0xff;

83. // Place your code here

84. count++;

85. }

86.

87.

88. void cekkendali()

89. {

90. if ((pintumasuk==1)&&(pintukeluar==1)&&(pompaair==1))

91. {

92. PORTF=0x70;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 87: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L11

93. }

94. else if ((pintumasuk==1)&&(pintukeluar==1)&&(pompaair==0))

95. {

96. PORTF=0x60;

97. }

98. else if ((pintumasuk==1)&&(pintukeluar==0)&&(pompaair==1))

99. {

100. PORTF=0x50;

101. }

102. else if ((pintumasuk==1)&&(pintukeluar==0)&&(pompaair==0))

103. {

104. PORTF=0x40;

105. }

106. else if ((pintumasuk==0)&&(pintukeluar==1)&&(pompaair==1))

107. {

108. PORTF=0x30;

109. }

110. else if ((pintumasuk==0)&&(pintukeluar==1)&&(pompaair==0))

111. {

112. PORTF=0x20;

113. }

114. else if ((pintumasuk==0)&&(pintukeluar==0)&&(pompaair==1))

115. {

116. PORTF=0x10;

117. }

118. else

119. {

120. PORTF=0x00;

121. }

122. }

123.

124. void kendali()

125. {

126.

if((ssuhu>28)||(ssuhu<18)||(skeasaman>8.5)||(skeasaman<4.5)||(skekeruhan>380)||(s

oksigen<=5))

127. {

128. pintumasuk=0;

129. pintukeluar=1;

130. pompaair=1;

131. }

132. else

133. {

134. pintumasuk=1;

135. pintukeluar=0;

136. pompaair=0;

137. }

138. }

139.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 88: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L12

140.

141. void portInit()

142. {

143. HI(CS);

144. HI(SDI);

145. LO(SCK);

146. PORTA.4=1;

147. DDRA = (1<<CS) | (1<<SDI) | (1<<SCK);

148. //DDRD = (1<<LED);

149.

150. }

151.

152. unsigned int writeCmd(unsigned int cmd)

153. {

154. unsigned char i;

155. unsigned int recv;

156. recv = 0;

157. LO(SCK);

158. LO(CS);

159. for(i=0; i<16; i++) {

160. if(cmd&0x8000) HI(SDI); else LO(SDI);

161. HI(SCK);

162. recv<<=1;

163. if( PINA&(1<<SDO) ) {

164. recv|=0x0001;

165. }

166. LO(SCK);

167. cmd<<=1;

168. }

169. HI(CS);

170. return recv;

171. }

172.

173. void pilihkec()

174. {

175. //kecepatan transfer (1kbps=0xC6AA ; 2kbps=0xC695; 5kbps=0xC681;

10kbps=0xC683; 20kbps=0xC681; 50kbps=0xC606)

176. switch(kec)

177. {

178. case 1: writeCmd(0xC6AA); break;

179. case 2: writeCmd(0xC695); break;

180. case 3: writeCmd(0xC688); break;

181. }

182. }

183.

184. void pilihfrek()

185. {

186. //frequency select (432MHz=0xA320 ; 455MHz=0xA7D0 ; 437MHz=0xAAF0)

187. switch(frek)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 89: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L13

188. {

189. case 1: writeCmd(0xA320); break;

190. case 2: writeCmd(0xA7D0); break;

191. case 3: writeCmd(0xAAF0); break;

192. }

193. }

194.

195. void rfInit()

196. {

197. pilihfrek();

198. pilihkec();

199. writeCmd(0x94A0); //VDI,FAST,134kHz,0dBm,-103dBm

200. writeCmd(0xC2AC); //AL,!ml,DIG,DQD4

201. writeCmd(0xCA81); //FIFO8,SYNC,!ff,DR

202. writeCmd(0xCED4); //SYNC=2DD4•G

203. writeCmd(0xC483); //@PWR,NO RSTRIC,!st,!fi,OE,EN

204. writeCmd(0x9850); //!mp,90kHz,MAX OUT

205. writeCmd(0xCC17); //OB1•COB0, LPX,•Iddy•CDDIT•CBW0

206. writeCmd(0xE000); //NOT USE

207. writeCmd(0xC800); //NOT USE

208. writeCmd(0xC040); //1.66MHz,2.2V

209. }

210.

211. void rfSend(unsigned char data)

212. {

213. WAIT_NIRQ_LOW();

214. writeCmd(0xB800 + data);

215. }

216.

217. void FIFOReset()

218. {

219. writeCmd(0xCA81);

220. writeCmd(0xCA83);

221. }

222.

223. unsigned char rfRecv()

224. {

225.

226. portInit();

227. writeCmd(0x80D7); //EL,EF,433band,12.0pF

228. writeCmd(0x8299); //er,!ebb,ET,ES,EX,!eb,!ew,DC

229. rfInit();

230. FIFOReset();

231. z=0; count=0; TIMSK=0x04;

232. while(1&&z<=10000)

233. {

234. data = writeCmd(0x0000);

235. if ( (data&0x8000) )

236. {

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 90: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L14

237. data = writeCmd(0xB000);

238. return (data&0x00FF);

239. }

240. z++;

241. }

242. TIMSK=0x00;

243. }

244.

245. void kirimdata()

246. {

247. portInit();

248. writeCmd(0x80D7); //EL,EF,433band,12.0pF

249. writeCmd(0x8239); //!er,!ebb,ET,ES,EX,!eb,!ew,DC

250. rfInit();

251. FIFOReset();

252. writeCmd(0x0000);

253. rfSend(0xAA); // PREAMBLE

254. rfSend(0xAA);

255. rfSend(0xAA);

256. rfSend(0x2D); // SYNC

257. rfSend(0xD4);

258. rfSend(data_rf[0]);

259. rfSend(0xAA); // DUMMY BYTES

260. rfSend(0xAA);

261. rfSend(0xAA);

262. //delay_ms(10);

263. }

264.

265. void terimadata()

266. {

267. terimadata_rf[0] = rfRecv();

268. FIFOReset();

269. }

270.

271. void ping()

272. {

273. data_rf[0]='p';

274. kirimdata();

275. lcd_clear();

276. terimadata();

277. lcd_gotoxy(0,0);

278. if(terimadata_rf[0]=='y')

279. {

280. lcd_putsf(" Koneksi OK.. ");

281. terhubung=1;

282. }

283. else

284. {

285. lcd_putsf(" Koneksi Gagal ");

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 91: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L15

286. terhubung=0;

287. }

288. }

289.

290.

291. // PENGATURAN JAM

292. void ubahjam()

293. {

294.

295. delay_ms(200);

296. z=0;

297. lcd_clear();

298. while (z==0)

299. {

300. if (PINF.0==1) { z++; delay_ms(200);}

301. if (PINF.1==1) { lcd_clear(); h++; delay_ms(200);}

302. if (PINF.2==1) { lcd_clear(); h--; delay_ms(200);}

303. if (PINF.3==1) { z=5; delay_ms(200);}

304. if (h>24) {h=0; lcd_clear();}

305. lcd_gotoxy(0,0);

306. sprintf(temp,"Jam : %d",h);

307. lcd_puts(temp);

308. }

309. lcd_clear();

310. while (z==1)

311. {

312. if (PINF.0==1) { z++; delay_ms(200);}

313. if (PINF.1==1) { lcd_clear(); m++; delay_ms(200);}

314. if (PINF.2==1) { lcd_clear(); m--; delay_ms(200);}

315. if (PINF.3==1) { z=5; delay_ms(200);}

316. if (m>60) {m=0; lcd_clear();}

317. lcd_gotoxy(0,0);

318. sprintf(temp,"Menit : %d",m);

319. lcd_puts(temp);

320. }

321. while (z==2)

322. {

323. if (PINF.0==1) { z++; delay_ms(200);}

324. if (PINF.1==1) { lcd_clear(); d++; delay_ms(200);}

325. if (PINF.2==1) { lcd_clear(); d--; delay_ms(200);}

326. if (PINF.3==1) { z=5; delay_ms(200);}

327. if (d>31) {d=0; lcd_clear();}

328. lcd_gotoxy(0,0);

329. sprintf(temp,"Tanggal : %d",d);

330. lcd_puts(temp);

331. }

332. lcd_clear();

333. while (z==3)

334. {

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 92: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L16

335. if (PINF.0==1) { z++; delay_ms(200);}

336. if (PINF.1==1) { lcd_clear(); mo++; delay_ms(200);}

337. if (PINF.2==1) { lcd_clear(); mo--; delay_ms(200);}

338. if (PINF.3==1) { z=5; delay_ms(200);}

339. if (mo>12) {mo=0; lcd_clear();}

340. lcd_gotoxy(0,0);

341. sprintf(temp,"Bulan : %d",mo);

342. lcd_puts(temp);

343. }

344. while (z==4)

345. {

346. if (PINF.0==1) { z++; delay_ms(200);}

347. if (PINF.1==1) { lcd_clear(); y++; delay_ms(200);}

348. if (PINF.2==1) { lcd_clear(); y--; delay_ms(200);}

349. if (PINF.3==1) { y=15; lcd_clear();delay_ms(200);}

350. lcd_gotoxy(0,0);

351. sprintf(temp,"Tahun : %d",y);

352. lcd_puts(temp);

353. }

354. rtc_set_time(h,m,d);

355. rtc_set_date(w,d,mo,y);

356. lcd_clear();

357. lcd_gotoxy(1,0);

358. lcd_putsf("Jam Berhasil");

359. lcd_gotoxy(5,1);

360. lcd_putsf("Dirubah");

361. delay_ms(1000);

362. lcd_clear();

363.

364. }

365.

366. void tampiljam()

367. {

368. if (m!=mm) {lcd_clear(); total++;}

369.

370. lcd_gotoxy(0,1);

371. sprintf(waktu,"%d:%d:%d",h,m,s);

372. if(h<10&&m<10) {sprintf(wk,"0%d:0%d",h,m); }

373. else if(h<10&&m>=10) {sprintf(wk,"0%d:%d",h,m); }

374. else if(h>=10&&m<10) {sprintf(wk,"%d:0%d",h,m); }

375. else {sprintf(wk,"%d:%d",h,m); }

376. lcd_puts(waktu);

377.

378. lcd_gotoxy(0,0);

379. if(d<10&&mo<10) { sprintf(tanggal,"0%d-0%d-20%d",d,mo,y); }

380. else if(d<10&&mo>=10) { sprintf(tanggal,"0%d-%d-20%d",d,mo,y); }

381. else if(d>=10&&mo<10) { sprintf(tanggal,"%d-0%d-20%d",d,mo,y); }

382. else { sprintf(tanggal,"%d-%d-20%d",d,mo,y); }

383. lcd_puts(tanggal);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 93: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L17

384.

385. mm=m;

386. }

387.

388. void tampilkec()

389. {

390. switch(e)

391. {

392. case 1: lcd_putsf("1 kbps"); break;

393. case 2: lcd_putsf("2 kbps"); break;

394. case 3: lcd_putsf("5 kbps"); break;

395. }

396. }

397.

398. void editkec()

399. {

400. delay_ms(400);

401. z=0;

402. lcd_clear();

403. while (z==0)

404. {

405. if (PINF.0==1) { z++; delay_ms(200);}

406. if (PINF.1==1) { lcd_clear(); e++; delay_ms(200);}

407. if (PINF.2==1) { lcd_clear(); e--; delay_ms(200);}

408. if (PINF.3==1) { lcd_clear(); e=1; delay_ms(200);}

409. if (e>3) {e=1;}

410. lcd_gotoxy(0,0);

411. lcd_puts("Kecepatan");

412. lcd_gotoxy(0,1);

413. tampilkec();

414. }

415. kec=e;

416. lcd_clear();

417. }

418.

419. void tampilfrek()

420. {

421. switch(e)

422. {

423. case 1: lcd_putsf("432 MHz"); break;

424. case 2: lcd_putsf("435 MHz"); break;

425. case 3: lcd_putsf("437 MHz"); break;

426. }

427. }

428.

429. void editfrek()

430. {

431. delay_ms(400);

432. z=0;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 94: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L18

433. lcd_clear();

434. while (z==0)

435. {

436. if (PINF.0==1) { z++; delay_ms(200);}

437. if (PINF.1==1) { lcd_clear(); e++; delay_ms(200);}

438. if (PINF.2==1) { lcd_clear(); e--; delay_ms(200);}

439. if (PINF.3==1) { lcd_clear(); e=1; delay_ms(200);}

440. if (e>3) {e=1;}

441. lcd_gotoxy(0,0);

442. lcd_puts("Frekuensi");

443. lcd_gotoxy(0,1);

444. tampilfrek();

445. }

446. frek=e;

447. lcd_clear();

448. }

449.

450. void jadwalkirim()

451. {

452. delay_ms(400);

453. z=0;

454. lcd_clear();

455. while (z==0)

456. {

457. if (PINF.0==1) { z++; delay_ms(200);}

458. if (PINF.1==1) { lcd_clear(); e++; delay_ms(200);}

459. if (PINF.2==1) { lcd_clear(); e--; delay_ms(200);}

460. if (PINF.3==1) { lcd_clear(); e=60; delay_ms(200);}

461. lcd_gotoxy(0,0);

462. lcd_putsf("Jadwal");

463. lcd_gotoxy(0,1);

464. sprintf(temp,"%d menit",e);

465. lcd_puts(temp);

466. }

467. jadwal=e;

468. total=0;

469. lcd_clear();

470. }

471.

472. void ambildata()

473. {

474. UCSR0B=0x10; //matikan tx nyalakan rx

475. PORTE.2=0;

476. c=0;

477. i=0;

478. while ((i<=5)&&(c<=10000))

479. {

480. while ((!(UCSR0A & (1<<RXC0)))&&(c<=10000))

481. {

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 95: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L19

482. c++;

483. }

484. while ((UCSR0A & (1<<RXC0)))

485. {

486. buff[i]=getchar(); c=0;

487. i++;

488. }

489. }

490. for (i=0; i<=3; i++)

491. {

492. switch(f)

493. {

494. case 1: suhu[i]= buff[i+1]; break;

495. case 2: keasaman[i]= buff[i+1]; break;

496. case 3: kekeruhan[i]= buff[i+1]; break;

497. case 4: oksigen[i]= buff[i+1]; break;

498. }

499. }

500.

501. delay_ms(10);

502. if ((c>10000)||(buff[5]!='#'))

503. {

504.

505. if (f==1){ sprintf(suhu,"0000");ssuhu=0;}

506. if (f==2){ sprintf(keasaman,"0000");skeasaman=0;}

507. if (f==3){ sprintf(kekeruhan,"0000");skekeruhan=0;}

508. if (f==4){ sprintf(oksigen,"0000");soksigen=0;}

509.

510. }

511.

512. UCSR0B=0x08; //matikan rx dan nyalakan tx

513. PORTE.2=1;

514. };

515.

516. void datasuhu()

517. {

518. aa=0;

519. while(aa<3)

520. {

521. f=1;

522. printf("a");

523. ambildata();

524. if (buff[5]=='#')

525. {aa=4; ssuhu=atof(suhu);}

526. else {aa++; delay_ms(10);}

527.

528. }

529. }

530.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 96: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L20

531. void datakeasaman()

532. {

533. aa=0;

534. while(aa<3)

535. {

536. f=2;

537. printf("b");

538. ambildata();

539. if (buff[5]=='#') {aa=4; skeasaman=atof(keasaman);}

540. else {aa++; delay_ms(10);}

541.

542. }

543. }

544.

545. void datakekeruhan()

546. {

547. aa=0;

548. while(aa<3)

549. {

550. f=3;

551. printf("c");

552. ambildata();

553. if (buff[5]=='#') {aa=4; skekeruhan=atof(kekeruhan);}

554. else {aa++; delay_ms(10);}

555.

556. }

557. }

558.

559. void dataoksigen()

560. {

561. aa=0;

562. while(aa<3)

563. {

564. f=4;

565. printf("d");

566. ambildata();

567. if (buff[5]=='#') {aa=4; soksigen=atof(oksigen);}

568. else {aa++; delay_ms(10);}

569.

570. }

571. }

572.

573. void paketdata()

574. {

575. datasuhu(); delay_ms(100);

576. datakeasaman(); delay_ms(100);

577. datakekeruhan(); delay_ms(100);

578. dataoksigen(); delay_ms(100);

579.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 97: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L21

580. }

581.

582.

583. void atursistemkendali()

584. {

585. delay_ms(400);

586. z=0;

587. while(z==0)

588. {

589. cekkendali();

590. delay_ms(400);

591. lcd_clear();

592. while(g==0)

593. {

594. if(airmasuk==1)

595. {

596. lcd_gotoxy(0,0);

597. lcd_putsf("Pintu Masuk Air Terbuka, Tutup?");

598. }

599. else

600. {

601. lcd_gotoxy(0,0);

602. lcd_putsf("Pintu Masuk Air Tertutup, Buka?");

603. }

604. if(PINF.0==1)

605. {

606. delay_ms(400);

607. airmasuk=logika^airmasuk;

608. pintumasuk=airmasuk;

609. lcd_clear();

610. }

611. cekkendali();

612. if(PINF.1==1) {g++;}

613. if(PINF.3==1) {z++;g=3;}

614. }

615. lcd_clear();

616. delay_ms(400);

617. airkeluar=pintukeluar;

618. while(g==1)

619. {

620. if(airkeluar==1)

621. {

622. lcd_gotoxy(0,0);

623. lcd_putsf("Pintu Keluar AirTerbuka, Tutup?");

624. }

625. else

626. {

627. lcd_gotoxy(0,0);

628. lcd_putsf("Pintu Keluar AirTertutup, Buka?");

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 98: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L22

629. }

630. if(PINF.0==1)

631. {

632. delay_ms(400);

633. airkeluar=logika^airkeluar;

634. lcd_clear();

635. pintukeluar=airkeluar;

636. }

637. cekkendali();

638. if(PINF.1==1) {g++;}

639. if(PINF.3==1) {z++;g=3;}

640. }

641. lcd_clear();

642. delay_ms(400);

643. pompa=pompaair;

644. while(g==2)

645. {

646. if(pompa==1)

647. {

648. lcd_gotoxy(0,0);

649. lcd_putsf("Pompa Air ON,");

650. lcd_gotoxy(0,1);

651. lcd_putsf("OFF?");

652. }

653. else

654. {

655. lcd_gotoxy(0,0);

656. lcd_putsf("Pompa Air OFF,");

657. lcd_gotoxy(0,1);

658. lcd_putsf("ON?");

659. }

660. if(PINF.0==1)

661. {

662. delay_ms(400);

663. pompa=logika^pompa;

664. lcd_clear();

665. pompaair=pompa;

666. }

667. cekkendali();

668. if(PINF.1==1) {g=0;}

669. if(PINF.3==1) {z++;g=3;}

670. }

671. }

672. }

673.

674. void kirimpaket()

675. {

676. if(ingat[0]=='@')

677. {

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 99: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L23

678. while((hitung<datasimpan)&&(terhubung==1))

679. {

680.

681. ping();

682. j=0;

683. for((i=hitung*50); i<((hitung*50)+47); i++)

684. {

685. portInit();

686. writeCmd(0x80D7); //EL,EF,433band,12.0pF

687. writeCmd(0x8239); //!er,!ebb,ET,ES,EX,!eb,!ew,DC

688. rfInit();

689. FIFOReset();

690. writeCmd(0x0000);

691. rfSend(0xAA); // PREAMBLE

692. rfSend(0xAA);

693. rfSend(0xAA);

694. rfSend(0x2D); // SYNC

695. rfSend(0xD4);

696. data_rf[j]=ingat[i];

697. rfSend(data_rf[j]);j++;

698. delay_ms(10);

699. }

700.

701. terimadata();

702. lcd_gotoxy(0,0);

703. lcd_clear();

704. if(terimadata_rf[0]=='y')

705. {

706. lcd_putsf(" Kirim OK.. ");

707. hitung++;

708. terhubung=1; delay_ms(100);

709. }

710. else

711. {

712. lcd_putsf("PENGIRIMAN GAGAL");

713. terhubung=0; delay_ms(1000);

714. }

715.

716. }

717. if(hitung>datasimpan)

718. {

719. hitung=0;

720. datasimpan=0;

721. ingat[0]='&';

722. }

723. }

724. else

725. {

726. lcd_gotoxy(0,0);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 100: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L24

727. lcd_putsf(" Tidak Ada Data ");

728. terhubung=0; delay_ms(1000);

729. }

730. }

731.

732. void menu()

733. {

734. a=0; b=0;

735. while (b==0)

736. {

737. lcd_clear();

738. delay_ms(200);

739. while (a==0)

740. {

741. lcd_gotoxy(0,0);

742. lcd_putsf("Atur Jam?");

743. delay_ms(200);

744. if (PINF.0==1) { ubahjam(); }

745. if (PINF.1==1) { a++; delay_ms(200);}

746. if (PINF.2==1) { a=12; delay_ms(200);}

747. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

748. }

749. lcd_clear();

750. delay_ms(200);

751. while (a==1)

752. {

753. lcd_gotoxy(0,0);

754. lcd_putsf("Edit Jadwal?");

755. e=jadwal;

756. lcd_gotoxy(0,1);

757. sprintf(temp,"%d menit",e);

758. lcd_puts(temp);

759. if (PINF.0==1) { jadwalkirim();}

760. if (PINF.1==1) { a++; delay_ms(200);}

761. if (PINF.2==1) { a--; delay_ms(200);}

762. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

763. }

764. lcd_clear();

765. delay_ms(200);

766. lcd_gotoxy(0,0);

767. lcd_putsf("Ambil Data Suhu?");

768. while (a==2)

769. {

770. if (PINF.0==1)

771. {

772. lcd_clear(); delay_ms(200);

773. datasuhu();

774. lcd_gotoxy(0,0);

775. sprintf(tampildata,"Suhu = %s",suhu);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 101: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L25

776. lcd_puts(tampildata);

777. lcd_gotoxy(11,1);

778. lcd_putsf("Lagi?");

779. }

780. if (PINF.1==1) { a++; delay_ms(200);}

781. if (PINF.2==1) { a--; delay_ms(200);}

782. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

783. }

784. lcd_clear();

785. delay_ms(200);

786. lcd_gotoxy(0,0);

787. lcd_putsf("Ambil Data Asam?");

788. while (a==3)

789. {

790. if (PINF.0==1)

791. {

792. lcd_clear(); delay_ms(200);

793. datakeasaman();

794. lcd_gotoxy(0,0);

795. sprintf(tampildata,"Keasaman = %s",keasaman);

796. lcd_puts(tampildata);

797. lcd_gotoxy(11,1);

798. lcd_putsf("Lagi?");

799. }

800. if (PINF.1==1) { a++; delay_ms(200);}

801. if (PINF.2==1) { a--; delay_ms(200);}

802. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

803. }

804. lcd_clear();

805. delay_ms(200);

806. lcd_gotoxy(0,0);

807. lcd_putsf("Ambil Data Kruh?");

808. while (a==4)

809. {

810. if (PINF.0==1)

811. {

812. lcd_clear(); delay_ms(200);

813. datakekeruhan();

814. lcd_gotoxy(0,0);

815. sprintf(tampildata,"Kekeruhan = %s",kekeruhan);

816. lcd_puts(tampildata);

817. lcd_gotoxy(11,1);

818. lcd_putsf("Lagi?");

819. }

820. if (PINF.1==1) { a++; delay_ms(200);}

821. if (PINF.2==1) { a--; delay_ms(200);}

822. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

823. }

824. lcd_clear();

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 102: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L26

825. delay_ms(200);

826. lcd_gotoxy(0,0);

827. lcd_putsf("Ambil Data Osgn?");

828. while (a==5)

829. {

830. if (PINF.0==1)

831. {

832. lcd_clear(); delay_ms(200);

833. dataoksigen();

834. lcd_gotoxy(0,0);

835. sprintf(tampildata,"Oksigen = %s",oksigen);

836. lcd_puts(tampildata);

837. lcd_gotoxy(11,1);

838. lcd_putsf("Lagi?");

839. }

840. if (PINF.1==1) { a++; delay_ms(200);}

841. if (PINF.2==1) { a--; delay_ms(200);}

842. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

843. }

844. lcd_clear();

845. delay_ms(200);

846. lcd_gotoxy(0,0);

847. lcd_putsf("Ambil Paket Data?");

848. while (a==6)

849. {

850. if (PINF.0==1)

851. {

852. lcd_clear(); delay_ms(200);

853. paketdata();

854. lcd_gotoxy(0,0);

855.

sprintf(tampildata,"S%s#K%s#H%s#D%s#",suhu,keasaman,kekeruhan,oksigen);

856. lcd_puts(tampildata);

857. lcd_gotoxy(11,1);

858. lcd_putsf("Lagi?");

859. }

860. if (PINF.1==1) { a++; delay_ms(200);}

861. if (PINF.2==1) { a--; delay_ms(200);}

862. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

863. }

864. lcd_clear();

865. delay_ms(200);

866. lcd_gotoxy(0,0);

867. lcd_putsf("Ping ke Central Unit?");

868. while (a==7)

869. {

870. if (PINF.0==1)

871. {

872. lcd_clear();

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 103: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L27

873. ping();

874. lcd_gotoxy(11,1);

875. lcd_putsf("Lagi?");

876. }

877. if (PINF.1==1) { a++; delay_ms(200);}

878. if (PINF.2==1) { a--; delay_ms(200);}

879. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

880. }

881. lcd_clear();

882. delay_ms(200);

883. lcd_gotoxy(0,0);

884. lcd_putsf("Hapus Data?");

885. while (a==8)

886. {

887. if (PINF.0==1) { datasimpan=0;lcd_gotoxy(11,1);lcd_putsf("Lagi?");}

888. if (PINF.1==1) { a++; delay_ms(200);}

889. if (PINF.2==1) { a--; delay_ms(200);}

890. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

891. }

892. lcd_clear();

893. delay_ms(200);

894. lcd_gotoxy(0,0);

895. lcd_putsf("Edit FREK?");

896. while (a==9)

897. {

898. e=frek;

899. lcd_gotoxy(0,1);

900. tampilfrek();

901. if (PINF.0==1) { editfrek();lcd_gotoxy(11,1);lcd_putsf("Edit?");}

902. if (PINF.1==1) { a++; delay_ms(200);}

903. if (PINF.2==1) { a--; delay_ms(200);}

904. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

905. }

906. lcd_clear();

907. delay_ms(200);

908. lcd_gotoxy(0,0);

909. lcd_putsf("Edit BAUD?");

910. while (a==10)

911. {

912. e=kec;

913. lcd_gotoxy(0,1);

914. tampilkec();

915. if (PINF.0==1) { editkec();lcd_gotoxy(11,1);lcd_putsf("Edit?");}

916. if (PINF.1==1) { a++; delay_ms(200);}

917. if (PINF.2==1) { a--; delay_ms(200);}

918. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

919. }

920. lcd_clear();

921. delay_ms(200);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 104: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L28

922. lcd_gotoxy(0,0);

923. lcd_putsf("Kirim Paket?");

924. while (a==11)

925. {

926. if (PINF.0==1) { ping(); if(terhubung==1){kirimpaket();}

lcd_gotoxy(11,1);lcd_putsf("Lagi?");}

927. if (PINF.1==1) { a++; delay_ms(200);}

928. if (PINF.2==1) { a--; delay_ms(200);}

929. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

930. }

931. lcd_clear();

932. delay_ms(200);

933. lcd_gotoxy(0,0);

934. lcd_putsf("Atur Sistem Kendali?");

935. while (a==12)

936. {

937. if (PINF.0==1)

938. {

939. lcd_clear();

940. atursistemkendali();

941. lcd_gotoxy(11,1);

942. lcd_putsf("Lagi?");

943. }

944. if (PINF.1==1) { a=0; delay_ms(200);}

945. if (PINF.2==1) { a--; delay_ms(200);}

946. if (PINF.3==1) { a=30; b=1; delay_ms(200);}

947. }

948. }

949. lcd_clear();

950. }

951.

952. void tampilstatus()

953. {

954. lcd_gotoxy(11,0);

955. lcd_putsf("I O P");

956. lcd_gotoxy(11,1);

957. sprintf(temp,"%d %d %d",pintumasuk, pintukeluar, pompaair);

958. lcd_puts(temp);

959. }

960.

961. // External Interrupt 0 service routine

962. interrupt [EXT_INT0] void ext_int0_isr(void)

963. {

964. lcd_clear();

965. menu();

966. lcd_clear();

967. }

968.

969. // Declare your global variables here

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 105: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L29

970.

971. void main(void)

972. {

973. // Declare your local variables here

974.

975. // Input/Output Ports initialization

976. // Port A initialization

977. // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In

Func0=In

978. // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

979. PORTA=0x00;

980. DDRA=0x00;

981.

982. // Port B initialization

983. // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In

Func0=In

984. // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

985. PORTB=0x00;

986. DDRB=0x00;

987.

988. // Port C initialization

989. // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In

Func0=In

990. // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

991. PORTC=0x00;

992. DDRC=0x00;

993.

994. // Port D initialization

995. // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In

Func0=In

996. // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

997. PORTD=0x00;

998. DDRD=0x00;

999.

1000. // Port E initialization

1001. // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In

Func0=In

1002. // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

1003. PORTE=0x00;

1004. DDRE=0xFF;

1005.

1006. // Port F initialization

1007. // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In

Func0=In

1008. // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

1009. PORTF=0x00;

1010. DDRF=0xF0;

1011.

1012. // Port G initialization

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 106: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L30

1013. // Func4=In Func3=In Func2=In Func1=In Func0=In

1014. // State4=T State3=T State2=T State1=T State0=T

1015. PORTG=0x00;

1016. DDRG=0x00;

1017.

1018. // Timer/Counter 0 initialization

1019. // Clock source: System Clock

1020. // Clock value: Timer 0 Stopped

1021. // Mode: Normal top=0xFF

1022. // OC0 output: Disconnected

1023. ASSR=0x00;

1024. TCCR0=0x00;

1025. TCNT0=0x00;

1026. OCR0=0x00;

1027. /*

1028. // Timer/Counter 1 initialization

1029. // Clock source: System Clock

1030. // Clock value: 7.813 kHz

1031. // Mode: Normal top=0xFFFF

1032. // OC1A output: Discon.

1033. // OC1B output: Discon.

1034. // OC1C output: Discon.

1035. // Noise Canceler: Off

1036. // Input Capture on Falling Edge

1037. // Timer1 Overflow Interrupt: On

1038. // Input Capture Interrupt: Off

1039. // Compare A Match Interrupt: Off

1040. // Compare B Match Interrupt: Off

1041. // Compare C Match Interrupt: Off

1042. TCCR1A=0x00;

1043. TCCR1B=0x05;

1044. TCNT1H=0xE1;

1045. TCNT1L=0x7B;

1046. ICR1H=0x00;

1047. ICR1L=0x00;

1048. OCR1AH=0x00;

1049. OCR1AL=0x00;

1050. OCR1BH=0x00;

1051. OCR1BL=0x00;

1052. OCR1CH=0x00;

1053. OCR1CL=0x00;

1054. */

1055. // Timer/Counter 2 initialization

1056. // Clock source: System Clock

1057. // Clock value: Timer2 Stopped

1058. // Mode: Normal top=0xFF

1059. // OC2 output: Disconnected

1060. TCCR2=0x00;

1061. TCNT2=0x00;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 107: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L31

1062. OCR2=0x00;

1063.

1064. // Timer/Counter 3 initialization

1065. // Clock source: System Clock

1066. // Clock value: Timer3 Stopped

1067. // Mode: Normal top=0xFFFF

1068. // OC3A output: Discon.

1069. // OC3B output: Discon.

1070. // OC3C output: Discon.

1071. // Noise Canceler: Off

1072. // Input Capture on Falling Edge

1073. // Timer3 Overflow Interrupt: Off

1074. // Input Capture Interrupt: Off

1075. // Compare A Match Interrupt: Off

1076. // Compare B Match Interrupt: Off

1077. // Compare C Match Interrupt: Off

1078. TCCR3A=0x00;

1079. TCCR3B=0x00;

1080. TCNT3H=0x00;

1081. TCNT3L=0x00;

1082. ICR3H=0x00;

1083. ICR3L=0x00;

1084. OCR3AH=0x00;

1085. OCR3AL=0x00;

1086. OCR3BH=0x00;

1087. OCR3BL=0x00;

1088. OCR3CH=0x00;

1089. OCR3CL=0x00;

1090.

1091. // External Interrupt(s) initialization

1092. // INT0: On

1093. // INT0 Mode: Falling Edge

1094. // INT1: Off

1095. // INT2: Off

1096. // INT3: Off

1097. // INT4: Off

1098. // INT5: Off

1099. // INT6: Off

1100. // INT7: Off

1101. EICRA=0x02;

1102. EICRB=0x00;

1103. EIMSK=0x01;

1104. EIFR=0x01;

1105.

1106. // Timer(s)/Counter(s) Interrupt(s) initialization

1107. TIMSK=0x00;

1108.

1109. ETIMSK=0x00;

1110.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 108: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L32

1111. // USART0 initialization

1112. // Communication Parameters: 8 Data, 1 Stop, No Parity

1113. // USART0 Receiver: Off

1114. // USART0 Transmitter: On

1115. // USART0 Mode: Asynchronous

1116. // USART0 Baud Rate: 9600

1117. UCSR0A=0x00;

1118. UCSR0B=0x08;

1119. UCSR0C=0x06;

1120. UBRR0H=0x00;

1121. UBRR0L=0x33;

1122.

1123. // USART1 initialization

1124. // USART1 disabled

1125. UCSR1B=0x00;

1126.

1127. // Analog Comparator initialization

1128. // Analog Comparator: Off

1129. // Analog Comparator Input Capture by Timer/Counter 1: Off

1130. ACSR=0x80;

1131. SFIOR=0x00;

1132.

1133. // ADC initialization

1134. // ADC disabled

1135. ADCSRA=0x00;

1136.

1137. // SPI initialization

1138. // SPI disabled

1139. SPCR=0x00;

1140.

1141. // TWI initialization

1142. // TWI disabled

1143. TWCR=0x00;

1144.

1145. // I2C Bus initialization

1146. // I2C Port: PORTB

1147. // I2C SDA bit: 0

1148. // I2C SCL bit: 1

1149. // Bit Rate: 100 kHz

1150. // Note: I2C settings are specified in the

1151. // Project|Configure|C Compiler|Libraries|I2C menu.

1152. i2c_init();

1153.

1154. // DS1307 Real Time Clock initialization

1155. // Square wave output on pin SQW/OUT: Off

1156. // SQW/OUT pin state: 0

1157. rtc_init(0,0,0);

1158.

1159. // Alphanumeric LCD initialization

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 109: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L33

1160. // Connections are specified in the

1161. // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:

1162. // RS - PORTC Bit 0

1163. // RD - PORTC Bit 1

1164. // EN - PORTC Bit 2

1165. // D4 - PORTC Bit 4

1166. // D5 - PORTC Bit 5

1167. // D6 - PORTC Bit 6

1168. // D7 - PORTC Bit 7

1169. // Characters/line: 16

1170. lcd_init(16);

1171. logika=1;

1172. total=0;

1173.

1174. cekkendali();

1175.

1176. rtc_get_time(&h,&m,&s);

1177. mm=m;

1178.

1179. // Global enable interrupts

1180. #asm("sei")

1181.

1182. while (1)

1183. {

1184. rtc_get_time(&h,&m,&s); // mengakses jam

1185. rtc_get_date(&w,&d,&mo,&y); //mengakses tanggal

1186. tampiljam();

1187. kendali();

1188. cekkendali();

1189. tampilstatus();

1190.

1191. if (total==jadwal)

1192. {

1193. paketdata();

1194. ping();

1195. lcd_clear();

1196. if(datasimpan>=79) {datasimpan=79;}

1197. simpan=datasimpan;

1198. if (simpan<10) {sprintf(ss,"0%d",simpan);}

1199. if (simpan>=10) {sprintf(ss,"%d",simpan);}

1200.

sprintf(data_rf,"@%s#%s#%s#S%s#K%s#H%s#D%s#$",ss,tanggal,wk,suhu,keasa

man,kekeruhan,oksigen);

1201. lcd_gotoxy(0,0);

1202. lcd_puts(data_rf);

1203. j=0;

1204. for(i=datasimpan*50; i<(datasimpan*50)+47; i++)

1205. {

1206. ingat[i]=data_rf[j]; j++;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 110: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L34

1207. }

1208.

1209. if (terhubung==1)

1210. {

1211. while((hitung<=datasimpan)&&(terhubung==1))

1212. {

1213. ping();

1214. j=0;

1215. for((i=hitung*50); i<((hitung*50)+47); i++)

1216. {

1217. portInit();

1218. writeCmd(0x80D7); //EL,EF,433band,12.0pF

1219. writeCmd(0x8239); //!er,!ebb,ET,ES,EX,!eb,!ew,DC

1220. rfInit();

1221. FIFOReset();

1222. writeCmd(0x0000);

1223. rfSend(0xAA); // PREAMBLE

1224. rfSend(0xAA);

1225. rfSend(0xAA);

1226. rfSend(0x2D); // SYNC

1227. rfSend(0xD4);

1228. data_rf[j]=ingat[i];

1229. rfSend(data_rf[j]);j++;

1230. //delay_ms(10);

1231. }

1232.

1233. terimadata();

1234. lcd_gotoxy(0,0);

1235. lcd_clear();

1236. if(terimadata_rf[0]=='y')

1237. {

1238. lcd_putsf(" Kirim OK.. ");

1239. hitung++;

1240. terhubung=1; delay_ms(100);

1241. }

1242. else

1243. {

1244. lcd_putsf("PENGIRIMAN GAGAL");

1245. datasimpan++; terhubung=0; delay_ms(1000);

1246. }

1247.

1248. }

1249. if(hitung>datasimpan)

1250. {

1251. hitung=0;

1252. datasimpan=0;

1253. ingat[0]='&';

1254. }

1255. }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 111: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L35

1256. else

1257. {

1258. lcd_clear();

1259. lcd_gotoxy(0,0);

1260. lcd_putsf("Koneksi Gagal");

1261. datasimpan++;

1262. delay_ms(100);

1263. }

1264.

1265.

1266. lcd_clear();

1267. total=0;

1268.

1269. }

1270.

1271.

1272. if(PINF.0==1)

1273. {

1274. e=frek;

1275. lcd_clear();

1276. lcd_gotoxy(0,0);

1277. lcd_puts("Frek : ");

1278. lcd_gotoxy(7,0);

1279. tampilfrek();

1280. e=kec;

1281. lcd_gotoxy(0,1);

1282. lcd_puts("BAUD : ");

1283. lcd_gotoxy(7,1);

1284. tampilkec();

1285. delay_ms(1000);

1286. lcd_clear();

1287. }

1288.

1289.

1290. if(PINF.1==1)

1291. {

1292. k=jadwal-total;

1293. lcd_clear();

1294. lcd_gotoxy(0,0);

1295. lcd_putsf("Pengiriman paket");

1296. lcd_gotoxy(0,1);

1297. sprintf(temp,"%d menit lagi",k);

1298. lcd_puts(temp);

1299. delay_ms(1000);

1300. lcd_clear();

1301. }

1302.

1303. if(PINF.2==1)

1304. {

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 112: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L36

1305. l=datasimpan;

1306. lcd_clear();

1307. lcd_gotoxy(0,0);

1308. lcd_putsf("Jmlh paket belum");

1309. lcd_gotoxy(0,1);

1310. sprintf(temp,"terkirim = %d",l);

1311. lcd_puts(temp);

1312. delay_ms(1000);

1313. lcd_clear();

1314. }

1315.

1316. if(PINF.3==1)

1317. {

1318. lcd_clear();

1319. lcd_gotoxy(0,0);

1320. sprintf(temp,"total = %d%",total);

1321. lcd_puts(temp);

1322. lcd_gotoxy(0,1);

1323. sprintf(temp,"jadwal = %d%",jadwal);

1324. lcd_puts(temp);

1325. delay_ms(1000);

1326. lcd_clear();

1327. }

1328.

1329.

1330. }

1331.

1332. }

1333.

1334.

1335.

Listing Program Sensor Suhu

1. /*****************************************************

2. This program was produced by the

3. CodeWizardAVR V2.05.3 Standard

4. Automatic Program Generator

5. © Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.

6. http://www.hpinfotech.com

7.

8. Project : Sistem Telemetri Kualitas Air Kolam Ikan Dengan RFM12-433S Sebagai

Remote Unit

9. Version :

10. Date : 5/11/2015

11. Author : ANDREAS BAGUS SADEWO

12. Company : Universitas Sanata Dharma

13. Comments: Sensor Suhu

14.

15.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 113: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L37

16. Chip type : ATmega8535

17. Program type : Application

18. AVR Core Clock frequency: 12.000000 MHz

19. Memory model : Small

20. External RAM size : 0

21. Data Stack size : 128

22. *****************************************************/

23.

24. #include <mega8535.h>

25.

26. // Alphanumeric LCD functions

27. #include <alcd.h>

28.

29. #include <stdlib.h>

30. #include <delay.h>

31. #include <stdio.h>

32.

33. unsigned char temp[16], temp1[16],tampilkeadaan[16];

34. int

data[]={15,0,16,5,18,0,19,5,21,0,22,5,24,0,25,5,27,0,28,5,30,0,31,5,33,0,34,5,36,0,

37,5,39,0};

35. unsigned char a, n, nn, z;

36. bit logika, keadaan;

37. eeprom unsigned int simpankeadaan;

38. int second, input, i;

39.

40.

41. #define ADC_VREF_TYPE 0x20

42.

43. // Read the 8 most significant bits

44. // of the AD conversion result

45. unsigned char read_adc(unsigned char adc_input)

46. {

47. ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

48. // Delay needed for the stabilization of the ADC input voltage

49. delay_us(10);

50. // Start the AD conversion

51. ADCSRA|=0x40;

52. // Wait for the AD conversion to complete

53. while ((ADCSRA & 0x10)==0);

54. ADCSRA|=0x10;

55. return ADCH;

56. }

57.

58. // Timer 1 overflow interrupt service routine

59. interrupt [TIM1_OVF] void timer1_ovf_isr(void)

60. {

61. TCNT1H=0xD23A >> 8;

62. TCNT1L=0xD23A & 0xff;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 114: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L38

63. second++; //setelah 1 detik increament data

64. }

65. // Declare your global variables here

66.

67. void tampildata()

68. {

69. lcd_gotoxy(0,0);

70. lcd_putsf("SUHU");

71. sprintf(tampilkeadaan,"K%d",keadaan);

72. lcd_gotoxy(14,0);

73. lcd_puts(tampilkeadaan);

74. if(PINA.7==1)

75. {

76. delay_ms(400);

77. keadaan=logika^keadaan;

78. lcd_clear();

79. simpankeadaan=keadaan;

80. }

81. if (keadaan==1)

82. {

83. n=read_adc(0);

84. n=n/10;

85. second=0;

86. TIMSK=0x00;

87. if(n>17){n=17;}

88. if(n<1){n=1;}

89. }

90. else if (keadaan==0)

91. {

92. if(second==5)

93. {

94. n++; second=0;

95. }

96. TIMSK=0x04;

97. sprintf(temp,"T:%d",second);

98. lcd_gotoxy(10,0);

99. lcd_puts(temp);

100. if((n<1)||(n>17)){n=1;lcd_clear();}

101. }

102.

103. if(n!=nn){ lcd_clear(); }

104.

105. nn=n;

106.

107. z=0;

108. for (a=1; a<n; a++)

109. {

110. z=z+2;

111. }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 115: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L39

112.

113. sprintf(temp,"Data ke-%d",n);

114. lcd_gotoxy(6,1);

115. lcd_puts(temp);

116. sprintf(temp1,"%d.%d",data[z],data[z+1]);

117. lcd_gotoxy(0,1);

118. lcd_puts(temp1);

119. }

120.

121. void ambil()

122. {

123. input = getchar();

124. if(input=='a')

125. {

126. UCSRB=0x08;

127. delay_ms(10);

128. for(i=0;i<=3;i++)

129. {putchar(temp1[i]);}

130. putchar('#');

131. UCSRB=0x10;

132. }

133.

134. }

135.

136.

137. void main(void)

138. {

139.

140. DDRA=0x80;

141.

142. DDRD=0x04;

143.

144. // ADC initialization

145. // ADC Clock frequency: 750.000 kHz

146. // ADC Voltage Reference: AREF pin

147. // Only the 8 most significant bits of

148. // the AD conversion result are used

149. ADMUX=ADC_VREF_TYPE & 0xff;

150. ADCSRA=0x84;

151.

152. // Timer/Counter 1 initialization

153. // Clock source: System Clock

154. // Clock value: 11.719 kHz

155. // Mode: Normal top=FFFFh

156. // OC1A output: Discon.

157. // OC1B output: Discon.

158. // Noise Canceler: Off

159. // Input Capture on Falling Edge

160. // Timer 1 Overflow Interrupt: On

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 116: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L40

161. // Input Capture Interrupt: Off

162. // Compare A Match Interrupt: Off

163. // Compare B Match Interrupt: Off

164. TCCR1A=0x00;

165. TCCR1B=0x05;

166. TCNT1H=0xD2;

167. TCNT1L=0x3A;

168. ICR1H=0x00;

169. ICR1L=0x00;

170. OCR1AH=0x00;

171. OCR1AL=0x00;

172. OCR1BH=0x00;

173. OCR1BL=0x00;

174.

175. // Timer(s)/Counter(s) Interrupt(s) initialization

176. TIMSK=0x04;

177.

178. // USART initialization

179. // Communication Parameters: 8 Data, 1 Stop, No Parity

180. // USART Receiver: On

181. // USART Transmitter: Off

182. // USART Mode: Asynchronous

183. // USART Baud Rate: 9600

184. UCSRA=0x00;

185. UCSRB=0x10;

186. UCSRC=0x86;

187. UBRRH=0x00;

188. UBRRL=0x4D;

189.

190. // Alphanumeric LCD initialization

191. // Connections are specified in the

192. // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:

193. // RS - PORTC Bit 0

194. // RD - PORTC Bit 1

195. // EN - PORTC Bit 2

196. // D4 - PORTC Bit 4

197. // D5 - PORTC Bit 5

198. // D6 - PORTC Bit 6

199. // D7 - PORTC Bit 7

200. // Characters/line: 16

201. lcd_init(16);

202.

203. // Global enable interrupts

204. #asm("sei")

205.

206.

207. logika=1;

208. keadaan=simpankeadaan;

209. n=1;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 117: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L41

210.

211. while (1)

212. {

213. tampildata();

214. if (UCSRA.7==1)

215. {

216. ambil();

217. }

218. }

219. }

Listing Program Sensor Keasaman

1. /*****************************************************

2. This program was produced by the

3. CodeWizardAVR V2.05.3 Standard

4. Automatic Program Generator

5. © Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.

6. http://www.hpinfotech.com

7.

8. Project : Sistem Telemetri Kualitas Air Kolam Ikan Dengan RFM12-433S Sebagai

Remote Unit

9. Version :

10. Date : 5/11/2015

11. Author : ANDREAS BAGUS SADEWO

12. Company : Universitas Sanata Dharma

13. Comments: Sensor Keasaman

14.

15.

16. Chip type : ATmega8535

17. Program type : Application

18. AVR Core Clock frequency: 12.000000 MHz

19. Memory model : Small

20. External RAM size : 0

21. Data Stack size : 128

22. *****************************************************/

23.

24. #include <mega8535.h>

25.

26. // Alphanumeric LCD functions

27. #include <alcd.h>

28.

29. #include <stdlib.h>

30. #include <delay.h>

31. #include <stdio.h>

32.

33. unsigned char temp[16], temp1[16],tampilkeadaan[16];

34. int data[]={ 4,0,4,5,5,0,5,5,6,0,6,5,7,0,7,5,8,0,8,5,9,0,9,5,10,0,10,5};

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 118: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L42

35. unsigned char a, n, nn, z;

36. bit logika, keadaan;

37. eeprom unsigned int simpankeadaan;

38. int second, input, i;

39.

40.

41. #define ADC_VREF_TYPE 0x20

42.

43. // Read the 8 most significant bits

44. // of the AD conversion result

45. unsigned char read_adc(unsigned char adc_input)

46. {

47. ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

48. // Delay needed for the stabilization of the ADC input voltage

49. delay_us(10);

50. // Start the AD conversion

51. ADCSRA|=0x40;

52. // Wait for the AD conversion to complete

53. while ((ADCSRA & 0x10)==0);

54. ADCSRA|=0x10;

55. return ADCH;

56. }

57.

58. // Timer 1 overflow interrupt service routine

59. interrupt [TIM1_OVF] void timer1_ovf_isr(void)

60. {

61. TCNT1H=0xD23A >> 8;

62. TCNT1L=0xD23A & 0xff;

63. second++; //setelah 1 detik increament data

64. }

65. // Declare your global variables here

66.

67. void tampildata()

68. {

69. lcd_gotoxy(0,0);

70. lcd_putsf("ASAM");

71. sprintf(tampilkeadaan,"K%d",keadaan);

72. lcd_gotoxy(14,0);

73. lcd_puts(tampilkeadaan);

74. if(PINA.7==1)

75. {

76. delay_ms(400);

77. keadaan=logika^keadaan;

78. lcd_clear();

79. simpankeadaan=keadaan;

80. }

81. if (keadaan==1)

82. {

83. n=read_adc(0);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 119: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L43

84. n=n/10;

85. second=0;

86. TIMSK=0x00;

87. if(n>14){n=14;}

88. if(n<1){n=1;}

89. }

90. else if (keadaan==0)

91. {

92. if(second==5)

93. {

94. n++; second=0;

95. }

96. TIMSK=0x04;

97. sprintf(temp,"T:%d",second);

98. lcd_gotoxy(10,0);

99. lcd_puts(temp);

100. if((n<1)||(n>14)){n=1;lcd_clear();}

101. }

102.

103. z=0;

104. for (a=1; a<n; a++)

105. {

106. z=z+2;

107. }

108.

109. if(n!=nn){ lcd_clear(); }

110.

111. nn=n;

112.

113. sprintf(temp,"Data ke-%d",n);

114. lcd_gotoxy(6,1);

115. lcd_puts(temp);

116.

117. if (data[z]>=10) {sprintf(temp1,"%d.%d",data[z],data[z+1]);}

118. if (data[z]<10) {sprintf(temp1,"%d.%d0",data[z],data[z+1]);}

119. lcd_gotoxy(0,1);

120. lcd_puts(temp1);

121. }

122.

123. void ambil()

124. {

125. input = getchar();

126. if(input=='b')

127. {

128. UCSRB=0x08;

129. delay_ms(10);

130. for(i=0;i<=3;i++)

131. {putchar(temp1[i]);}

132. putchar('#');

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 120: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L44

133. UCSRB=0x10;

134. }

135.

136. }

137.

138.

139. void main(void)

140. {

141.

142. DDRA=0x80;

143. // ADC initialization

144. // ADC Clock frequency: 750.000 kHz

145. // ADC Voltage Reference: AREF pin

146. // Only the 8 most significant bits of

147. // the AD conversion result are used

148. ADMUX=ADC_VREF_TYPE & 0xff;

149. ADCSRA=0x84;

150.

151. // Timer/Counter 1 initialization

152. // Clock source: System Clock

153. // Clock value: 11.719 kHz

154. // Mode: Normal top=FFFFh

155. // OC1A output: Discon.

156. // OC1B output: Discon.

157. // Noise Canceler: Off

158. // Input Capture on Falling Edge

159. // Timer 1 Overflow Interrupt: On

160. // Input Capture Interrupt: Off

161. // Compare A Match Interrupt: Off

162. // Compare B Match Interrupt: Off

163. TCCR1A=0x00;

164. TCCR1B=0x05;

165. TCNT1H=0xD2;

166. TCNT1L=0x3A;

167. ICR1H=0x00;

168. ICR1L=0x00;

169. OCR1AH=0x00;

170. OCR1AL=0x00;

171. OCR1BH=0x00;

172. OCR1BL=0x00;

173.

174. // Timer(s)/Counter(s) Interrupt(s) initialization

175. TIMSK=0x04;

176.

177. // USART initialization

178. // Communication Parameters: 8 Data, 1 Stop, No Parity

179. // USART Receiver: On

180. // USART Transmitter: Off

181. // USART Mode: Asynchronous

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 121: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L45

182. // USART Baud Rate: 9600

183. UCSRA=0x00;

184. UCSRB=0x10;

185. UCSRC=0x86;

186. UBRRH=0x00;

187. UBRRL=0x4D;

188.

189. // Alphanumeric LCD initialization

190. // Connections are specified in the

191. // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:

192. // RS - PORTC Bit 0

193. // RD - PORTC Bit 1

194. // EN - PORTC Bit 2

195. // D4 - PORTC Bit 4

196. // D5 - PORTC Bit 5

197. // D6 - PORTC Bit 6

198. // D7 - PORTC Bit 7

199. // Characters/line: 16

200. lcd_init(16);

201.

202. // Global enable interrupts

203. #asm("sei")

204.

205.

206. logika=1;

207. keadaan=simpankeadaan;

208. n=1;

209.

210.

211. while (1)

212. {

213. tampildata();

214. if (UCSRA.7==1)

215. {

216. ambil();

217. }

218. }

219. }

Listing Program Sensor Kekeruhan

1. /*****************************************************

2. This program was produced by the

3. CodeWizardAVR V2.05.3 Standard

4. Automatic Program Generator

5. © Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.

6. http://www.hpinfotech.com

7.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 122: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L46

8. Project : Sistem Telemetri Kualitas Air Kolam Ikan Dengan RFM12-433S Sebagai

Remote Unit

9. Version :

10. Date : 5/11/2015

11. Author : ANDREAS BAGUS SADEWO

12. Company : Universitas Sanata Dharma

13. Comments: Sensor Kekeruhan

14.

15.

16. Chip type : ATmega8535

17. Program type : Application

18. AVR Core Clock frequency: 12.000000 MHz

19. Memory model : Small

20. External RAM size : 0

21. Data Stack size : 128

22. *****************************************************/

23.

24. #include <mega8535.h>

25.

26. // Alphanumeric LCD functions

27. #include <alcd.h>

28.

29. #include <stdlib.h>

30. #include <delay.h>

31. #include <stdio.h>

32.

33. unsigned char temp[16], temp1[16],tampilkeadaan[16];

34. int

data[]={0,25,0,50,0,75,10,0,12,5,15,0,17,5,20,0,22,5,25,0,27,5,30,0,32,5,35,0,37,5,

40,0,42,5,45,0,47,5 };

35. unsigned char a, n, nn, z;

36. bit logika, keadaan;

37. eeprom unsigned int simpankeadaan;

38. int second, input, i;

39.

40.

41. #define ADC_VREF_TYPE 0x20

42.

43. // Read the 8 most significant bits

44. // of the AD conversion result

45. unsigned char read_adc(unsigned char adc_input)

46. {

47. ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

48. // Delay needed for the stabilization of the ADC input voltage

49. delay_us(10);

50. // Start the AD conversion

51. ADCSRA|=0x40;

52. // Wait for the AD conversion to complete

53. while ((ADCSRA & 0x10)==0);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 123: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L47

54. ADCSRA|=0x10;

55. return ADCH;

56. }

57.

58. // Timer 1 overflow interrupt service routine

59. interrupt [TIM1_OVF] void timer1_ovf_isr(void)

60. {

61. TCNT1H=0xD23A >> 8;

62. TCNT1L=0xD23A & 0xff;

63. second++; //setelah 1 detik increament data

64. }

65. // Declare your global variables here

66.

67. void tampildata()

68. {

69. lcd_gotoxy(0,0);

70. lcd_putsf("KERUH");

71. sprintf(tampilkeadaan,"K%d",keadaan);

72. lcd_gotoxy(14,0);

73. lcd_puts(tampilkeadaan);

74. if(PINA.7==1)

75. {

76. delay_ms(400);

77. keadaan=logika^keadaan;

78. lcd_clear();

79. simpankeadaan=keadaan;

80. }

81. if (keadaan==1)

82. {

83. n=read_adc(0);

84. n=n/10;

85. second=0;

86. TIMSK=0x00;

87. if(n>19){n=19;}

88. if(n<1){n=1;}

89. }

90. else if (keadaan==0)

91. {

92. if(second==5)

93. {

94. n++; second=0;

95. }

96. TIMSK=0x04;

97. sprintf(temp,"T:%d",second);

98. lcd_gotoxy(10,0);

99. lcd_puts(temp);

100. if((n<1)||(n>19)){n=1;lcd_clear();}

101. }

102.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 124: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L48

103. z=0;

104. for (a=1; a<n; a++)

105. {

106. z=z+2;

107. }

108.

109. if(n!=nn){ lcd_clear(); }

110.

111. nn=n;

112.

113. sprintf(temp,"Data ke-%d",n);

114. lcd_gotoxy(6,1);

115. lcd_puts(temp);

116.

117. if (data[z]==0) {sprintf(temp1,"0%d%d",data[z],data[z+1]);}

118. if (data[z]>0) {sprintf(temp1,"0%d%d",data[z],data[z+1]);}

119. lcd_gotoxy(0,1);

120. lcd_puts(temp1);

121. }

122.

123. void ambil()

124. {

125. input = getchar();

126. if(input=='c')

127. {

128. UCSRB=0x08;

129. delay_ms(10);

130. for(i=0;i<=3;i++)

131. {putchar(temp1[i]);}

132. putchar('#');

133. UCSRB=0x10;

134. }

135.

136. }

137.

138.

139. void main(void)

140. {

141.

142. DDRA=0x80;

143. // ADC initialization

144. // ADC Clock frequency: 750.000 kHz

145. // ADC Voltage Reference: AREF pin

146. // Only the 8 most significant bits of

147. // the AD conversion result are used

148. ADMUX=ADC_VREF_TYPE & 0xff;

149. ADCSRA=0x84;

150.

151. // Timer/Counter 1 initialization

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 125: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L49

152. // Clock source: System Clock

153. // Clock value: 11.719 kHz

154. // Mode: Normal top=FFFFh

155. // OC1A output: Discon.

156. // OC1B output: Discon.

157. // Noise Canceler: Off

158. // Input Capture on Falling Edge

159. // Timer 1 Overflow Interrupt: On

160. // Input Capture Interrupt: Off

161. // Compare A Match Interrupt: Off

162. // Compare B Match Interrupt: Off

163. TCCR1A=0x00;

164. TCCR1B=0x05;

165. TCNT1H=0xD2;

166. TCNT1L=0x3A;

167. ICR1H=0x00;

168. ICR1L=0x00;

169. OCR1AH=0x00;

170. OCR1AL=0x00;

171. OCR1BH=0x00;

172. OCR1BL=0x00;

173.

174. // Timer(s)/Counter(s) Interrupt(s) initialization

175. TIMSK=0x04;

176.

177. // USART initialization

178. // Communication Parameters: 8 Data, 1 Stop, No Parity

179. // USART Receiver: On

180. // USART Transmitter: Off

181. // USART Mode: Asynchronous

182. // USART Baud Rate: 9600

183. UCSRA=0x00;

184. UCSRB=0x10;

185. UCSRC=0x86;

186. UBRRH=0x00;

187. UBRRL=0x4D;

188.

189. // Alphanumeric LCD initialization

190. // Connections are specified in the

191. // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:

192. // RS - PORTC Bit 0

193. // RD - PORTC Bit 1

194. // EN - PORTC Bit 2

195. // D4 - PORTC Bit 4

196. // D5 - PORTC Bit 5

197. // D6 - PORTC Bit 6

198. // D7 - PORTC Bit 7

199. // Characters/line: 16

200. lcd_init(16);

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 126: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L50

201.

202. // Global enable interrupts

203. #asm("sei")

204.

205.

206. logika=1;

207. keadaan=simpankeadaan;

208. n=1;

209.

210.

211. while (1)

212. {

213. tampildata();

214. if (UCSRA.7==1)

215. {

216. ambil();

217. }

218. }

219. }

Listing Program Kandungan Oksigen

1. /*****************************************************

2. This program was produced by the

3. CodeWizardAVR V2.05.3 Standard

4. Automatic Program Generator

5. © Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.

6. http://www.hpinfotech.com

7.

8. Project : Sistem Telemetri Kualitas Air Kolam Ikan Dengan RFM12-433S Sebagai

Remote Unit

9. Version :

10. Date : 5/11/2015

11. Author : ANDREAS BAGUS SADEWO

12. Company : Universitas Sanata Dharma

13. Comments: Sensor Kandungan Oksigen

14.

15.

16. Chip type : ATmega8535

17. Program type : Application

18. AVR Core Clock frequency: 12.000000 MHz

19. Memory model : Small

20. External RAM size : 0

21. Data Stack size : 128

22. *****************************************************/

23.

24. #include <mega8535.h>

25.

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 127: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L51

26. // Alphanumeric LCD functions

27. #include <alcd.h>

28.

29. #include <stdlib.h>

30. #include <delay.h>

31. #include <stdio.h>

32.

33. unsigned char temp[16], temp1[16],tampilkeadaan[16];

34. int data[]={ 3,0,3,5,4,0,4,5,5,0,5,5,6,0,6,5,7,0,7,5,8,0,8,5,9,0,9,5};

35. unsigned char a, n, nn, z;

36. bit logika, keadaan;

37. eeprom unsigned int simpankeadaan;

38. int second, input, i;

39.

40.

41. #define ADC_VREF_TYPE 0x20

42.

43. // Read the 8 most significant bits

44. // of the AD conversion result

45. unsigned char read_adc(unsigned char adc_input)

46. {

47. ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);

48. // Delay needed for the stabilization of the ADC input voltage

49. delay_us(10);

50. // Start the AD conversion

51. ADCSRA|=0x40;

52. // Wait for the AD conversion to complete

53. while ((ADCSRA & 0x10)==0);

54. ADCSRA|=0x10;

55. return ADCH;

56. }

57.

58. // Timer 1 overflow interrupt service routine

59. interrupt [TIM1_OVF] void timer1_ovf_isr(void)

60. {

61. TCNT1H=0xD23A >> 8;

62. TCNT1L=0xD23A & 0xff;

63. second++; //setelah 1 detik increament data

64. }

65. // Declare your global variables here

66.

67. void tampildata()

68. {

69. lcd_gotoxy(0,0);

70. lcd_putsf("DO");

71. sprintf(tampilkeadaan,"K%d",keadaan);

72. lcd_gotoxy(14,0);

73. lcd_puts(tampilkeadaan);

74. if(PINA.7==1)

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 128: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L52

75. {

76. delay_ms(400);

77. keadaan=logika^keadaan;

78. lcd_clear();

79. simpankeadaan=keadaan;

80. }

81. if (keadaan==1)

82. {

83. n=read_adc(0);

84. n=n/10;

85. second=0;

86. TIMSK=0x00;

87. if(n>14){n=14;}

88. if(n<1){n=1;}

89. }

90. else if (keadaan==0)

91. {

92. if(second==1200)

93. {

94. n++; second=0;

95. }

96. TIMSK=0x04;

97. sprintf(temp,"T:%d",second);

98. lcd_gotoxy(7,0);

99. lcd_puts(temp);

100. if((n<1)||(n>14)){n=1;lcd_clear();}

101. }

102.

103. z=0;

104. for (a=1; a<n; a++)

105. {

106. z=z+2;

107. }

108.

109. if(n!=nn){ lcd_clear(); }

110.

111. nn=n;

112.

113. sprintf(temp,"Data ke-%d",n);

114. lcd_gotoxy(6,1);

115. lcd_puts(temp);

116.

117. if (data[z]>=10) {sprintf(temp1,"%d.%d",data[z],data[z+1]);}

118. if (data[z]<10) {sprintf(temp1,"%d.%d0",data[z],data[z+1]);}

119. lcd_gotoxy(0,1);

120. lcd_puts(temp1);

121. }

122.

123. void ambil()

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 129: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L53

124. {

125. input = getchar();

126. if(input=='d')

127. {

128. UCSRB=0x08;

129. delay_ms(10);

130. for(i=0;i<=3;i++)

131. {putchar(temp1[i]);}

132. putchar('#');

133. UCSRB=0x10;

134. }

135.

136. }

137.

138.

139. void main(void)

140. {

141.

142. DDRA=0x80;

143. // ADC initialization

144. // ADC Clock frequency: 750.000 kHz

145. // ADC Voltage Reference: AREF pin

146. // Only the 8 most significant bits of

147. // the AD conversion result are used

148. ADMUX=ADC_VREF_TYPE & 0xff;

149. ADCSRA=0x84;

150.

151. // Timer/Counter 1 initialization

152. // Clock source: System Clock

153. // Clock value: 11.719 kHz

154. // Mode: Normal top=FFFFh

155. // OC1A output: Discon.

156. // OC1B output: Discon.

157. // Noise Canceler: Off

158. // Input Capture on Falling Edge

159. // Timer 1 Overflow Interrupt: On

160. // Input Capture Interrupt: Off

161. // Compare A Match Interrupt: Off

162. // Compare B Match Interrupt: Off

163. TCCR1A=0x00;

164. TCCR1B=0x05;

165. TCNT1H=0xD2;

166. TCNT1L=0x3A;

167. ICR1H=0x00;

168. ICR1L=0x00;

169. OCR1AH=0x00;

170. OCR1AL=0x00;

171. OCR1BH=0x00;

172. OCR1BL=0x00;

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 130: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L54

173.

174. // Timer(s)/Counter(s) Interrupt(s) initialization

175. TIMSK=0x04;

176.

177. // USART initialization

178. // Communication Parameters: 8 Data, 1 Stop, No Parity

179. // USART Receiver: On

180. // USART Transmitter: Off

181. // USART Mode: Asynchronous

182. // USART Baud Rate: 9600

183. UCSRA=0x00;

184. UCSRB=0x10;

185. UCSRC=0x86;

186. UBRRH=0x00;

187. UBRRL=0x4D;

188.

189. // Alphanumeric LCD initialization

190. // Connections are specified in the

191. // Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:

192. // RS - PORTC Bit 0

193. // RD - PORTC Bit 1

194. // EN - PORTC Bit 2

195. // D4 - PORTC Bit 4

196. // D5 - PORTC Bit 5

197. // D6 - PORTC Bit 6

198. // D7 - PORTC Bit 7

199. // Characters/line: 16

200. lcd_init(16);

201.

202. // Global enable interrupts

203. #asm("sei")

204.

205.

206. logika=1;

207. keadaan=simpankeadaan;

208. n=1;

209. DDRD.2=1;

210. PORTD.2=0;

211.

212.

213. while (1)

214. {

215. tampildata();

216. if (UCSRA.7==1)

217. {

218. ambil();

219. }

220. }

221. }

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

Page 131: REMOTE UNIT DENGAN RFM12-433S UNTUK SISTEM … filelembar perseturuan tu.gas akhir remote (tnti'dengan rfm12.433s untuk sistem telemetri ku kolam airikan pius yo,zy mmucahyo m t. taaggal:

L55

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI