alat penakar berat berbasis mikrokontroler

advertisement
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
TUGAS AKHIR
ALAT PENAKAR BERAT
BERBASIS MIKROKONTROLER
Diajukan untuk memenuhi salah satu syarat
Memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
disusun oleh :
RAHMAT TRI HARTANTO
NIM : 125114053
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2015
i
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
FINAL PROJECT
WEIGHT MEASURING DEVICE
USING MICROCONTROLLER
In partial fulfilment of the requirements
for the degree of Sarjana Teknik
In Electrical Engineering Study Program
RAHMAT TRI HARTANTO
NIM : 125114053
ELECTRICAL ENGINEERING STUDY PROGRAM
ELECTRICAL ENGINEERING DEPARTMENT
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
2015
ii
!!!
£�0tl l�ZT : WIN
OlNVl1IVH nil lVWHW
ll'JI'l OlILN:0)1 Qll)IIW SISVIDl'JIH
L Vll'JIH lIV)IVN:'Jld LV'IV
111IDIV
svoru
xvnrnrrsaaa NVWV1VH
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
"!
·3s·w '·1s·s 'Bsoll B�
UWJUqQ UlUUUS st?l!SJgA!Ufl
!150JOID(gl, trap Sll!US SUlJID(Ud
'uµm1uiGo A
s I OZ Jgqwgsga .!>J
·wo)rW '01pugf1 ·11 : sµulgnps
lUlBAS rqnucurour UB){RlUAU!P unp
s;JQZ JgqmgAON f7Z JU1515UBl npnd
!fn15ugd U!l!UUd usdop !P mn1uuquµgd!P qup1,
fSOtllSZI: WIN
O.LNV.LlIVH IB.L .LVWHVH
ll'Jl'IOllLNO)IOIDIIW SISVffil'JIH
LVll'JIH llV)IVN'Jld LV'IV
1IIIDIV SYDflL
NYHYS3DN3dNYWY1YH
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat
karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan
daftar pustaka sebagaimana layaknya karya ilmiah.
Yogyakarta, 14 Desember 2015
Rahmat Tri Hartanto
v
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
Motto :
Semua Adalah Kasih Karunia Allah
Skripsi ini kupersembahkan untuk …
Yesus Kristus Penolongku
Keluargaku yang tercinta
vi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
LEMBAR PERSETUJUAN PUBLIKASI KARYA ILMIAH
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama
: Rahmat Tri Hartanto
NIM
: 125114053
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan
Universitas Sanata Dharma karya ilmiah saya yang berjudul :
Alat Penakar Berat Berbasis Mikrokontroler (Weight Measuring Device
Using
Microcontroller).
Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak
untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk
pangkalan data, mendistribusikan secara terbatas dan mempublikasikannya di internet atau
di media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya ataupun
memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.
Demikian pemyataan ini yang saya buat dengan sebenamya.
Dibuat di Yogyakarta
Pada tanggal : 14 Desember 2015
Yang menyatakan
(Rahmat Tri Hartanto)
vii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
INTISARI
Menakar bahan makanan untuk pembuatan makanan atau minuman merupakan hal
yang sangat penting. Timbangan yang beredar di pasaran masih menakar secara manual.
Cara ini memakan waktu, tidak stabil dan kurang efisien.
Pada tugas akhir ini telah dibuat alat penakar berat yang sistem kerjanya
menggunakan sensor berat strain gauge. Pengguna memasukkan nilai berat melaui keypad
lalu diproses oleh mikrokontroler untuk proses penakaran. Pengaturan on off penakaran
dilakukan oleh mikrokontroler dan solenoid valve. Sensor berat strain gauge akan
mendeteksi berat yang akan dikeluarkan sesuai dengan berat yang diinginkan. Dasar
penakaran pada penelitian ini adalah sistem ADC yang sudah dimiliki oleh ATMega8535.
Dengan proses penakaran yang otomatis diharapkan akan lebih efisien.
Alat penakar pada penelitian ini hanya digunakan untuk menakar berat air dengan
berat minimal 50 gram dan kelipatan 10 gram serta berat maksimal 2.000 gram. Ketelitian
alat ini diharapkan bisa membaca berat terkecil sampai dengan 2,5 gram. Alat yang dibuat
memiliki error yang besar pada beban di bawah 500 gram dan error di bawah 4% pada
beban di atas 1.600 gram. Penyebab ketidakstabilan sistem adalah tegangan keluaran
sensor yang sangat kecil dan berosilasi tinggi serta memiliki frekuensi tidak stabil, juga
terjadinya interferensi tegangan pada sistem.
Kata Kunci : Sensor berat, Timbangan,
Mikrokontroler.
viii
Strain
gauge,
Solenoid
Valve,
ADC,
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
ABSTRACT
Measuring food ingredients for the manufacture of food or drink is very important.
Weight measuring device on the market is still measured out manually. This method is
time consuming, unstable and less efficient.
In this final project has been made weight measuring device that works using a
weight sensor with strain gauge. Users enter a weight value through the keypad and then
processed by a microcontroller to measurement process. On-off settings of measurement is
done by the microcontroller and the solenoid valve. Weight sensors with strain gauge will
detect the weight to be issued in accordance with the desired weight. Basic measurement in
this study is the ADC system that is already owned by ATMega8535. With automatic
measurement process is expected to be more efficient.
The device in this study only used to measure the weight of the water with a
minimum weight of 50 grams and multiples of 10 grams and a maximum weight of 2,000
grams. The accuracy of this device is expected to read the smallest weight up to 2.5 grams.
The device that has made has a big error on the load below 500 grams and error below 4 %
at load above 1,600 grams . Causes system instability is the output voltage of the sensor is
very small with high oscillating and has an unstable frequency, also the interference
voltage on the system.
Keywords: Weight sensor, Scales, Strain gauge, Solenoid Valve, ADC, Microcontroller
ix
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
KATA PENGANTAR
Puji syukur kepada Tuhan Yesus Kristus atas segala karuniaNya, sehingga tugas
akhir ini dapat diselesaikan dengan baik.
Penelitian yang berupa tugas akhir ini merupakan salah satu syarat bagi mahasiswa
Jurusan Teknik Elektro untuk memperoleh gelar Sarjana Teknik di Universitas Sanata
Dharma Yogyakarta. Penelitian ini dapat diselesaikan dengan baik atas bantuan, gagasan
dan dukungan dari berbagai pihak. Oleh karena itu, peneliti ingin mengucapkan terima
kasih kepada :
1. Tuhan Y esus yang adalah penolongku.
2. Romo T. Agus Sriyono SJ, M.A., M. Hum. yang telah memberikan kesempatan untuk
belajar lebih tinggi.
3. Ibu Paulina Herningsih Prima Rosa, S.Si., M.Sc. selaku Dekan Fakultas Sains dan
Teknologi Universitas Sanata Dharma yang telah mengijinkan penulis belajar.
4. Bapak Petrus Setyo Prabowo, S.T., M.T. selaku Kaprodi Teknik Elektro, Fakultas
Sains dan Teknologi Universitas Sanata Dharma Yogyakarta yang telah memberikan
kesempatan kepada penulis untuk menyelesaikan skripsi.
5. Ir. Tjendro, M.Kom. selaku pembimbing yang telah bersedia memberikan pengarahan
dan bimbingan selama penulis mengerjakan tugas akhir.
6. Bapak dan Ibu Dosen Pengajar Teknik Elektro yang penuh kesabaran.
7. Keluargaku yang selalu memberi semangat dan doa.
8. Semua pihak yang tidak bisa disebutkan satu per satu atas bantuan dan saran yang
diberikan.
Peneliti sangat mengharapkan kritik dan saran yang dapat membangun serta
menyempurnakan tulisan. Semoga tugas ini dapat dimanfaatkan dan dikembangkan lebih
lanjut oleh peneliti lain sehingga tulisan ini dapat lebih bermanfaat.
Yogyakarta, 14 Desember 2015
x
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
DAFTAR ISI
Halaman Sampul (Bahasa Indonesia) ............................................................................
i
Halaman Sampul (Bahasa Inggris) ................................................................................
ii
Halaman Persetujuan .....................................................................................................
iii
Halaman Pengesahan .....................................................................................................
iv
Pernyataan Keaslian Karya ............................................................................................
v
Halaman Persembahan dan Motto Hidup ......................................................................
vi
Lembar Persetujuan Publikasi Karya Ilmiah ..................................................................
vii
Intisari ............................................................................................................................
viii
Abstract ..........................................................................................................................
ix
Kata Pengantar ..............................................................................................................
x
BAB I
PENDAHULUAN
1.1. Latar Belakang ..............................................................................................
1
1.2. Tujuan dan Manfaat Penelitian .....................................................................
2
1.3. Batasan Masalah ............................................................................................
2
1.4. Metodologi Penelitian ...................................................................................
2
BAB II
DASAR TEORI
2.1. Mikrokontroler AVR ATmega8535 ..............................................................
4
2.1.1. Konfigurasi Pin ATmega8535 ...................................................................
4
2.1.2. Fitur ATmega8535 .....................................................................................
5
2.1.3. Port pada ATmega8535 ..............................................................................
6
2.1.4. ADC ...........................................................................................................
9
2.1.4.1. Fitur ADC ATmega8535 ........................................................................
10
2.1.4.2.Pengaturan Register ADC ........................................................................
10
2.1.5. Reset ...........................................................................................................
15
2.2. Strain Gauge .................................................................................................
17
2.3. Pengkondisi Sinyal ........................................................................................
18
2.4. Keypad 4x4 ...................................................................................................
19
2.5. LCD 2x16 ......................................................................................................
19
xi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2.6. Solenoid Valve ...............................................................................................
21
2.6.1. Cara Kerja Solenoid Valve .........................................................................
21
2.6.2. Electric Solenoid Valve G1/2 (Normally Closed) ......................................
22
2.7. Transistor Sebagai Saklar...............................................................................
22
BAB III RANCANGAN PENELITIAN
3.1. Perancangan Hardware .................................................................................
25
3.1.1. Komponen Mekanik ...................................................................................
25
3.1.2. Minimum System ATmega8535 ................................................................
26
3.1.3. Sensor Berat (Modul Timbangan Digital) ..................................................
28
3.1.4. Penguat Instrumentasi ................................................................................
29
3.1.5. Solenoid Driver (Transistor Sebagai Saklar) .............................................
31
3.1.6. Wiring Keypad 4x4......................................................................................
32
3.1.7. Wiring LCD 2x16 .......................................................................................
33
3.2. Perancangan Program ...................................................................................
34
3.2.1. Sistem .........................................................................................................
34
3.2.2. Kalibrasi .....................................................................................................
34
3.2.3. Penakaran ...................................................................................................
35
3.2.4. Pilihan Sendiri ............................................................................................
37
BAB IV HASIL DAN PEMBAHASAN
4.1. Hardware Mekanik dan Elektronik ..............................................................
39
4.1.1. Hardware Mekanik dan Supply Tegangan .................................................
39
4.1.2. Hardware Elektronik .................................................................................
40
4.2. Cara penggunaan Alat Penakar Berat ...........................................................
42
4.3. Percobaan Alat ..............................................................................................
44
4.3.1. Percobaan Alat Dengan Rangkaian Lengkap .............................................
44
4.3.2. Percobaan Alat Dengan Rangkaian Yang Disederhanakan .......................
44
4.4. Analisa ..........................................................................................................
48
4.4.1. Analisa Pada Rangkaian Lengkap ..............................................................
48
4.4.2. Analisa Pada Rangkaian Yang Disederhanakan ........................................
60
4.5. Pembahasan Software ....................................................................................
62
4.6. Program .........................................................................................................
62
xii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
4.6.1. Program Pada Rangkaian Lengkap ............................................................
62
4.6.2. Program Pada Rangkaian Sederhana .........................................................
63
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan ...................................................................................................
66
5.2. Saran ..............................................................................................................
66
DAFTAR PUSTAKA ....................................................................................................
67
LAMPIRAN
xiii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
DAFTAR GAMBAR
Gambar 2.1. Konfigurasi Pin ATMega8535 .................................................................
5
Gambar 2.2. Register ADMUX .....................................................................................
10
Gambar 2.3. Register ADCSRA ....................................................................................
12
Gambar 2.4. ADC Data Register jika ADCLAR = 0 ....................................................
13
Gambar 2.5. ADC Data Register jika ADCLAR = 1 ....................................................
14
Gambar 2.6. Special Function I/O Register ..................................................................
14
Gambar 2.7. Rangkaian Charge dan Discahrge pada Kapasitor ...................................
16
Gambar 2.8. RC Time Constant .....................................................................................
16
Gambar 2.9. Struktur Strain Gauge ...............................................................................
17
Gambar 2.10. Jembatan Wheatstone .............................................................................
17
Gambar 2.11. Rangkaian Penguat Instrumentasi ..........................................................
18
Gambar 2.12. Keypad Matriks 4x4 ................................................................................
19
Gambar 2.13. LCD 2x16 ...............................................................................................
20
Gambar 2.14. Prinsip Kerja Solenoid Valve ..................................................................
21
Gambar 2.15. Electric Solenoid Valve G1/2 (Normally Closed) ...................................
22
Gambar 2.16. Transistor Sebagai Saklar .......................................................................
23
Gambar 2.17. Transistor pada Kondisi Cutt-off dan Saturasi ........................................
23
Gambar 3.1. Diagram Blok Perancangan Hardware .....................................................
25
Gambar 3.2. Skema Perancangan Komponen Mekanik ................................................
26
Gambar 3.3. Minimum System ATmega8535 dengan Masukan ADC ...........................
27
Gambar 3.4. Modul Timbangan Digital Camry EK5055 ..............................................
28
Gambar 3.4. Hubungan Antara Berat Ditimbang dan Tegangan Keluaran Sensor ........
29
Gambar 3.5. Rancangan Penguat Instrumentasi ............................................................
30
Gambar 3.6. Rangkaian Solenoid Driver ......................................................................
31
Gambar 3.7. Rangkaian Keypad 4x4 pada ATmega8535...............................................
32
Gambar 3.8. Rangkaian LCD 2x16 pada ATmega8535 ................................................
33
Gambar 3.9. Flowchart Sistem ......................................................................................
34
Gambar 3.10. Flowchart Proses Kalibrasi .....................................................................
35
Gambar 3.11. Flowchart Proses Penakaran ...................................................................
36
Gambar 3.12. Flowchart Proses Pilihan Sendiri ............................................................
37
xiv
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 4.1. Tampak Depan Alat Penakar Berat ...........................................................
39
Gambar 4.2. Tampak Dalam Sistem Penakar Berat Air.................................................
40
Gambar 4.3. Panel Elektronik .......................................................................................
41
Gambar 4.4. Penguatan 2 Tahap dengan IC OP07 CP ..................................................
41
Gambar 4.5. Rangakaian PCB Penguatan 2 Tahap dan Driver ......................................
42
Gambar 4.6. Tampilan Sistem dan Tombol Keypad ......................................................
43
Gambar 4.7. Alat Yang Sudah Disederhanakan .............................................................
45
Gambar 4.8. Hubungan Antara Step ADC Terhadap Berat ..........................................
47
Gambar 4.9. Hubungan Antara Penguat Terhadap Sensor ............................................
47
Gambar 4.10. Hubungan Antara Tegangan Terhadap Berat .........................................
48
Gambar 4.11. Inverting Amplifier..................................................................................
49
Gambar 4.12. Offset Regulator.......................................................................................
50
Gambar 4.13. Hubungan Antara Keluaran Sensor Terhadap Perubahan Berat..............
51
Gambar 4.14. Hubunagn Antara Keluaran Penguat Terhadap Perubahan Berat ...........
52
Gambar 4.15. Hubungan Antara Perubahan Berat Terhadap Step ADC .......................
52
Gambar 4.16. Hubungan Antara Perubahan Berat Terhadap Step ADC (2)..................
53
Gambar 4.17. Tegangan Pada Keluaran Sensor Tanpa Beban .......................................
54
Gambar 4.18. Tegangan Pada Keluaran Sensor Terbebani ...........................................
54
Gambar 4.19. Rangkaian RC Filter ................................................................................
55
Gambar 4.20. Tegangan Pada Keluaran Sensor Tanpa Beban Dengan RC Filter .........
55
Gambar 4.21. Tegangan Pada Keluaran Sensor Terbebani Dengan RC Filter ..............
56
Gambar 4.22. Tegangan Pada Keluaran Penguat Tanpa Beban Dengan RC Filter .......
56
Gambar 4.23. Tegangan Pada Keluaran Penguat Terbebani Dengan RC Filter ............
57
Gambar 4.24. Rangkaian Optocoupler ..........................................................................
59
Gambar 4.25. Cuplikan Program Tampilan Awal dan Masukan Berat .........................
63
xv
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
DAFTAR TABEL
Tabel 2.1. Tegangan Referensi ADC .............................................................................
11
Tabel 2.2. Input Chanel and Gain Selections ................................................................
11
Tabel 2.3. ADC Prescaler ..............................................................................................
13
Tabel 2.4. ADC Auto Triger Source Selections ..............................................................
15
Tabel 2.5. Fungsi dan Konfigurasi Pin LCD 2x16 ........................................................
20
Tabel 3.1. Hubungan Antara Berat Ditimbang dan Tegangan Keluaran Sensor ...........
29
Tabel 3.2. Wiring keypad 4x4 pada ATmega8535 .........................................................
32
Tabel 3.3. Wiring LCD 2x16 pada ATmega8535...........................................................
33
Tabel 4.1. Data Set Point dan Output System ................................................................
46
Tabel 4.2. Penguatan dengan IC LM741 .......................................................................
49
Tabel 4.3. Penguatan dengan IC OP07 CP ....................................................................
49
Tabel 4.4. Data Linearitas Sensor Pada Penguat Dua Tahap .........................................
51
Tabel 4.5. Hubungan Antara Perubahan Berat Terhadap Step ADC .............................
52
Tabel 4.6. Data Ketidakstabilan ADC ............................................................................
53
xvi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Dunia industri sangat banyak jenisnya, salah satunya adalah industri makanan atau
minuman baik dalam skala kecil maupun besar. Setiap industri tersebut selalu melakukan
kegiatan menakar bahan baku supaya produk yang dihasilkan memiliki rasa dan tekstur yang
diinginkan.
Alat penakar yang sekarang ini digunakan adalah timbangan, baik yang manual atau
konvensional sampai dengan yang digital. Pada penimbangan selalu dilakukan penambahan
atau pengurangan sampai diperoleh berat yang sesuai. Waktu yang dibutuhkan cukup lama
sehingga mengurangi waktu produksi karena masih dilakukan secara manual.
Alat penakar berat otomatis masih sangat jarang ditemui bahkan mungkin belum
banyak dijual dipasaran. Kesimpulan ini didapatkan karena selama pencarian data oleh
penulis belum ditemui alat penakar yang dimaksudkan.
Penelitian ini pernah dilakukan oleh Yuliant Rochmatin Nuresa pada tahun 2011[1].
yang dipakai adalah sensor berat flexi force, mikrokontroler ATmega8535, masukan data
dilakukan melalui keypad dan untuk penampil digunakan LCD. Stepper motor dipergunakan
sebagai pengontrol jumlah bahan baku yang akan ditakar. Tiga jenis bahan dapat ditakar
oleh alat ini dengan maksimal berat 500 gram saja dikarenakan keterbatasan sensor yang
digunakan. Akurasi yang dicapai sebesar 70% dibandingkan timbangan digital lainnya.
Untuk penggunaan selama satu jam berturut – turut diperoleh nilai akurasi 60%.
Perbedaan dengan penelitian kali ini adalah menggunakan sensor berat strain gauge,
pengontrol takaran solenoid valve dan berat maksimal 2 Kg. Media pengujian yang dipakai
yaitu air. Diharapkan dengan metode ini akan memiliki ketelitian yang lebih baik.
Penelitian ini dimaksudkan supaya dapat diciptakan alat penakar berat yang teliti dan
pasti akan sangat berguna bagi industri makanan atau minuman. Alat ini diharapkan bisa
dipergunakan dalam bidang lain yang harus melakukan kegiatan penakaran.
1
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
1.2.
2
Tujuan dan Manfaat
Tujuan dari penelitian ini adalah menghasilkan model alat penakar berat yang teliti.
Manfaat penelitian ini bagi dunia industri makanan yaitu membantu dalam menakar bahan
makanan atau minuman yang akan diolah menjadi suatu produk yang berkualitas serta
menjadi acuan bagi penelitian selanjutnya sehingga mampu manghasilkan alat penakar berat
yang lebih teliti dan lebih baik.
1.3.
Batasan Masalah
Dalam penelitian ini akan dibatasi supaya lebih mengarah pada tujuan yang
dikehendaki. Adapun batasan –batasan masalah tersebut adalah :
1.
Mikrokontroler keluarga AVR ATmega digunakan sebagai pengolah data.
2.
Sensor yang digunakan adalah modul strain gauge.
3.
Data dimasukkan melalui keypad 4x4.
4.
Data masukan dan hasil ditampilkan pada LCD 2x16.
5.
Aliran bahan akan diatur oleh solenoid valve.
6.
Kalibrasi berat wadah sangat diperlukan.
7.
Media yang dipakai dalam penelitian adalah air.
8.
Batasan berat yang diteliti : minimal 50 gram dan berat maksimal 2000 gram.
9.
Ketelitian penakaran adalah 10 gram.
1.4.
Metodologi Penelitian
Metode-metode yang dipergunakan untuk mencapai tujuan dalam penyusunan tugas
akhir ini adalah :
1.
Studi literatur, yaitu dengan mencari data dan informasi dengan membaca jurnal-jurnal
yang sudah diterbitkan serta membaca buku-buku yang berkaitan dengan permasalahan
yang akan dibahas dalam tugas akhir ini.
2.
Dokumenter, yaitu dengan mendapatkan dokumen, data penelitian atau arsip lainnya
yang dapat membantu penulis mengerjakan tugas akhir ini.
3.
Perancangan subsistem hardware, yaitu mencari model sistem yang baik sesuai batasan
masalah yang sudah ditentukan untuk mencapai tujuan penelitian ini.
4.
Pembuatan subsistem hardware. Diharapkan rangkaian hardware akan bekerja ketika
data diberikan melalui keypad. Solenoid valve akan terutup sehingga aliran berhenti
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
3
setelah tercapai berat yang diinginkan dan terbaca oleh sensor. Data dari keypad dan
hasil akan ditampilkan pada LCD.
5.
Proses pengambilan data. Pengambilan data dengan berbagai input nilai berat yang
berbeda-beda dilakukan setelah hardware selesai dibuat. Data yang diambil adalah nilai
berat yang diinginkan dan berat sesungguhnya yang dihasilkan. Berat hasil penakaran
ditera dengan timbangan digital Camry EK5055 yang memiliki ketelitian 1 gram [2].
6.
Analisa dan kesimpulan. Data-data yang diperoleh dibandingkan dan dilakukan analisa.
Ketepatan penutupan solenoid valve juga perlu diperhitungkan serta ketinggian keluaran
terhadap wadah sangat mempengaruhi nilai berat yang dihasilkan. Hal ini penting
karena masih terdapat bahan yang akan jatuh ke wadah setelah solenoid tertutup.
Perbandingan antara nilai yang diinginkan dengan nilai sesungguhnya adalah besar
error yang terjadi dan menunjukkan tingkat ketelitian alat yang telah dibuat.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
`BAB II
DASAR TEORI
2.1.
Mikrokontroler AVR ATmega8535 [3]
Mikrokontroller AVR memiliki arsitektur RISC (Reduced Instruction Set
Computing) 8 bit. Semua instruksi dikemas dalam kode 16 bit (16-bits word) dan sebagian
besar instruksi dieksekusi dalam satu siklus instruksi clock.
Keluarga AVR yang akan dipakai dalam penelitian ini adalah ATmega8535. Tipe ini
memiliki performa yang sangat baik dengan tegangan kerja rendah. ATmega8535 mampu
mengolah program yang besar dengan multi instruksi. Konfigurasi, fitur, fungsi dan lainnya
yang dipakai dalam penelitian ini akan dibahas lebih lanjut.
2.1.1. Konfigurasi Pin ATmega8535
Konfigurasi pin ATMega8535 pada gambar 2.1 adalah sebagai berikut :
1.
VCC merupakan pin yang berfungsi sebagai masukan catudaya.
2.
GND merupakan ground pin.
3.
Port A (PA0...PA7) merupakan pin I/O dan pin masukan ADC.
4.
Port B (PB0...PB7) merupakan pin I/O dan pin yang mempunyai fungsi khusus yaitu
timer/counter, analog comparator dan SPI.
5.
Port C (PC0...PC7) merupakan port I/O dan pin yang mempunyai fungsi khusus, yaitu
analog comparator dan timer oscillator.
6.
Port D (PD0...PD1) merupakan port I/O dan pin fungsi khusus yaitu analog comparator
dan external interrupt serta komunikasi serial.
7.
RESET merupakan pin yang digunakan untuk mereset mikrokontroler.
8.
XTAL1 dan XTAL2 merupakan pin masukan external clock.
9.
AVCC merupakan pin masukan untuk tegangan ADC.
10. AREF merupakan pin masukan tegangan referensi untuk ADC.
4
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
5
Gambar 2.1. Konfigurasi Pin ATMega8535
2.1.2. Fitur ATmega8535
Beberapa fitur yang disediakan ATmega8535 adalah :
1. Performa tinggi, termasuk mikrokontroler 8-bit AVR daya rendah.
2. Arsitektur RISC yang telah maju
a. 130 instruksi kuat – Most Single Clock Cycle Execution
b. 32 x 8 Register kerja multifungsi
c. Operasi statis penuh
d. Throughput hingga 16 MIPS pada 16 MHz
e. Multiplier 2-cycle on-chip
3. Program nonvolatile dan data memori
a. 8 kbytes In-System Self-Programmable Flash dengan kemampuan 10.000 write/erase
cycle
b. 512 bytes EEPROM dengan kemampuan 10.000 wirte/erase cycle
c. 512 bytes RAM internal
d. Penguncian program untuk keamanan sistem
4. I/O dan paket
a. 32 programmable I/O lines
b. 40 pin PDIP, 44-lead TQFP, 44-lead PLCC, 44-pad QFN/MLF
5. Tingkat kecepatan
a. 0 – 8 MHz untuk ATmega8535L
b. 0 - 16 MHz untuk ATmega8535
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
6
6. Tegangan operasi
a. 2,7 – 5,5 Volt untuk ATmega8535L
b. 4,5 – 5,5 Volt untuk ATmega8535
7. Fitur spesial mikrokontrolernya
a. Power-on reset dan deteksi programmable brown-out
b. Osilator RC kalibrasi internal
c. Interupt source external dan internal
d. Enam mode Sleep: Idle, ADC noise reduction, Power-save, Power-down, Stand-by,
dan Extended Stand-by.
8. Fitur Pheripheral
a. Dua timer/counter 8-bit dengan Separate Prescalers dan Compare Modes
b. Satu timer/counter 16-bit dengan Separate Prescalers, Compare Modes, dan
Capture Modes.
c. Counter real time dengan osilator terpisah
d. Empat channel PMW
e. 8 channel, 10-bit ADC
f. Serial interface dwikabel byte-oriented
g. Programmable serial USART
h. Master/slave SPI serial interface
i. On-chip analog comparator
2.1.3. Port pada ATmega8535
Dalam I/O lines terdapat empat port, yaitu port A, port B, port C dan port D yang
masing-masing mempunyai 8 pin I/O. Deskripsi tiap port adalah sebagai berikut :
1.
Port A (PA7.. PA0) merupakan port yang digunakan sebagai masukan ADC (Analog to
Digital Converter), jika ADC tidak digunakan maka port A merupakan 8-bit port I/O
dua arah. Internal Pull-up Resistor terdapat pada port A, ketika pin di-set low “0” maka
arus akan mengalir jika Internal Pull-up Resistor diaktifkan.
2.
Port B (PB7..PB0) merupakan 8-bit port I/O dua arah. Internal Pull-up Resistor juga
dimiliki oleh port B.
3.
Port C (PC7..PC0) merupakan 8-bit port I/O dua arah. Internal Pull-up Resistor juga
dimiliki oleh port C.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
4.
7
Port D (PD7..PD0) merupakan 8-bit port I/O dua arah. Internal Pull-up Resistor juga
dimiliki oleh port D.
5.
RESET merupakan pin jika diberikan masukan low “0” maka program yang telah dibuat
akan kembali dari awal.
Spesifikasi detil masing-masing port adalah sebagai berikut :
a)
Port A
Fungsi tambahan Port A :
1) PA.0 ADC0 ( input ADC channel 0 )
2) PA.1 ADC1 ( input ADC channel 1 )
3) PA.2 ADC2 ( input ADC channel 2 )
4) PA.3 ADC3 ( input ADC channel 3 )
5) PA.4 ADC4 ( input ADC channel 4 )
6) PA.5 ADC5 ( input ADC channel 5 )
7) PA.6 ADC6 ( input ADC channel 6 )
8) PA.7 ADC7 ( input ADC channel 7 )
Fungsi khusus Port A :
-
Pada seri AVR ATmega8535 telah dilengkapi 8 saluran ADC internal dengan
fidelitas 10 bit. Dalam mode operasinya, ADC dapat dikonfigurasi baik secara
single ended input maupun differrential input. Selain itu, ADC ATmega8535
memiliki konfigurasi pewaktuan, tegangan referensi, mode operasi, dan
kemampuan filter derau yang sangat fleksibel, sehingga mudah disesuaikan dengan
kebutuhan ADC itu sendiri.
b) Port B
Fungsi tambahan pada Port B :
1) PB.0 T0 (Timer/Counter0 External Counter Input)
XCK (USART External Clock Input/Output)
2) PB.1 T1 (Timer/Counter1 External Counter Input)
3) PB.2 AIN0 (Analog Comparator Positive Input)
INT2 (External Interrupt 2 Input)
4) PB.3 AIN1 (Analog Comparator Negative Input)
OC0 (Timer/Counter0 Output Compare Match Output)
5) PB.4 SS (SPI Slave Select Input)
6) PB.5 MOSI (SPI Bus Master Output/Slave Input)
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
8
7) PB.6 MISO (SPI Bus Master Input/Slave Output)
8) PB.7 SCK (SPI Bus Serial Clock)
Fungsi khusus Port B :
1) MOSI, MISO, SCK berguna sebagai masukan downloader ISP.
2) T0/T1 sebagai masukan external timer atau external counter.
3) AIN0 dan AIN1 sebagai masukan komparator, AIN0 sebagai masukan positif (+)
sedangkan AIN1 sebagai masukan negatif (-).
c)
Port C
Fungsi tambahan pada Port C :
1) PC.0 SCL (Two-wire Serial Bus Clock Line)
2) PC.1 SDA (Two-wire Serial Bus Data Input/Output Line)
3) PC.2 TCK (JTAG Test Clock)
4) PC.3 TMS (JTAG Test Mode Select)
5) PC.4 TDO (JTAG Test Data Out)
6) PC.5 TDI (JTAG Test Data In)
7) PC.6 TOSC1 (Timer Oscillator Pin 1)
8) PC.7 TOSC2 (Timer Oscillator Pin 2)
Fungsi khusus Port C :
1) SCL dan SDA merupakan pin yang dapat berfungsi sebagai pengatur interface
serial 2 jalur.
2) TCK merupakan pin yang dapat berfungsi sebagai operasi sinkronisasi dari JTAG
ke TCK. Jika pin ini digunakan seperti fungsi periferal tersebut maka pin ini tidak
dapat berfungsi sebagai I/O.
3) TMS merupakan pin yang dapat berfungsi sebagai pengontrol navigasi mesin TAP.
Jika pin ini digunakan seperti fungsi periferal tersebut maka pin ini tidak dapat
berfungsi sebagai I/O.
4) TD0 merupakan pin yang dapat berfungsi sebagai keluaran data serial dari data
register. Jika pin ini digunakan seperti fungsi periferal tersebut maka pin ini tidak
dapat berfungsi sebagai I/O.
5) TD1 merupakan pin yang dapat berfungsi sebagai masukan data serial ke register
atau data register. Jika pin ini digunakan seperti fungsi periferal tersebut maka pin
ini tidak dapat berfungsi sebagai I/O.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
9
6) TOSC1 dan TOSC2 jika disambungkan dengan kristal dan bit ASR serta bit ASSR
di-set “1” (high) untuk mengaktifkan asyncronous clocking dari Timer/Counter2
maka pin ini dapat digunakan sebagai masukan penguat osilator. Dalam keadaan
ini pin tidak dapat berfungsi sebagai I/O.
d) Port D
Fungsi tambahan pada Port D :
1) PD.0 RXD (USART Input Pin)
2) PD.1 TXD (USART Output Pin)
3) PD.2 INT0 (External Interrupt 0 Input)
4) PD.3 INT1 (External Interrupt 1 Input)
5) PD.4 OC1B (Timer/Counter1 Output Compare B Match Output)
6) PD.5 OC1A (Timer/Counter1 Output Compare A Match Output)
7) PD.6 ICP1 (Timer/Counter1 Input Capture Pin)
8) PD.7 OC2 (Timer/Counter2 Output Compare Match Output)
Fungsi khusus Port D :
1) RXD dan TXD merupakan pin yang digunakan untuk komnikasi serial.
2) INT0 dan INT1 merupakan pin yang digunakan sebagai masukan interupsi eksternal
0 dan masukan interupsi eksternal 1.
3) OC1A dan OC1B merupakan output untuk PWM mode fungsi timer dan OC1A/B
juga berfungsi sebagai output eksternal dari pembanding timer/counter A/B.
4) ICP1 merupakan pin yang berfungsi sebagai penampung input timer/counter 1.
5) OC2 merupakan pin yang dapat berfungsi sebagai output untuk PWM mode fungsi
timer dan OC2 juga berfungsi sebagai output eksternal dari pembanding
timer/counter.
2.1.4. ADC
ADC (Analog to Digital Converter) adalah suatu sistem yang merubah besaran
analog menjadi data digital. Fasilitas ini digunakan untuk mengambil data analog dari luar.
Fitur ADC yang terdapat pada ATmega8535 memiliki 8 input channel ADC dengan
resolusi 10 bit. ATmega8535 mampu diberi masukan tegangan analog sampai 8 saluran
secara bersamaan dengan ketelitian maksimal 10 bit (1024). Masukan tersebut berupa
tegangan yang dihasilkan dari sensor atau rangkaian pendukung lainnya.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
10
2.1.4.1. Fitur ADC ATmega8535
Berikut ini adalah fitur ADC yang dimiliki oleh ATmega8535 :
a) Resolusi 10-bit
b) 0.5 LSB Integral Non-linearity
c) Akurasi mutlak ±2 LSB
d) Waktu konversi : 65 - 260 µs
e) Maksimum resolusi sampai dengan 15 kSPS
f) 8 Multiplexed Single Ended Input Channels
g) 7 Differential Input Channels
h) 2 Differential Input Channels with Optional Gain of 10x and 200x
i) Optional Left Adjustment for ADC Result Readout
j) Rentang tegangan masukan : 0 - VCCADC
k) Selectable 2.56V ADC Reference Voltage
l) Free Running or Single Conversion Mode
m) ADC Start Conversion by Auto Triggering on Interrupt Sources
n) Interrupt on ADC Conversion Complete
o) Sleep Mode Noise Canceler
2.1.4.2. Pengaturan Register ADC
Register-register I/O yang dipakai untuk konversi ADC antara lain ADMUX,
ADCSRA, ADCH-ADCL, ADCLAR dan SFIOR.
2.1.4.2.1. ADMUX – ADC Multiplexer Selection Register.
Register ADMUX berisi bit-bit yang mengatur pilihan kanal (MUX4:0), bit pengatur
penyajian data (ADLAR), dan bit-bit pemilih tegangan referensi (REFS1:0)
Gambar 2.2. Register ADMUX
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
a. Bit 7:6 – REFS1:0 : Bit pemilih tegangan referensi
Tabel 2.1. Tegangan Referensi ADC
b. Bit 5 – ADLAR : ADC Left Adjust Result
c. Bit 4:0 – MUX4:0 : Bit pemilih analog channel dan gain (lihat tabel 2.2)
Tabel 2.2. Input Channel and Gain Selections
11
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
12
2.1.4.2.2. ADCSRA – ADC Control and Status Register A
Register ADCSRA berisi bit-bit yang mengatur nilai prescaler (ADPS2:0), bit
aktivasi interupsi selesainya ADC (ADIE), bit penanda (flag) selesainya konversi (ADIF),
bit aktivasi penyulut otomatis ADC (ADATE), bit pemulai konversi (ADSC), dan bit
aktivasi ADC (ADEN).
Gambar 2.3. Register ADCSRA
a. Bit 7 – ADEN : ADC Enable
Diisi 1 untuk mengaktifkan ADC, diisi 0 untuk mematikan ADC sekaligus
memberhentikan konversi yang sedang berlangsung.
b. Bit 6 – ADSC : ADC Start Conversion
Pada mode single-conversion, set bit ini untuk memulai tiap konversi. Pada mode
free-running, set bit ini untuk konversi pertama kalinya. Bit ADSC bila dibaca akan
bernilai 1 selama proses konversi, dan bernilai 0 bila konversi selesai. Mengisi bit
ini dengan nilai 0 tidak akan mempunyai dampak.
c. Bit 5 – ADATE : ADC Auto Trigger Enable
Bila bit ini di-set 1 maka auto trigger ADC akan diaktifkan. ADC akan
memulai konversi pada saat tepi positif dari sumber sinyal trigger yang dipilih.
Sumber sinyal trigger ditentukan dengan mengatur bit ADTS pada register SFIOR.
d. Bit 4 – ADIF : ADC Interrupt Flag
Bit ini akan bernilai 1 pada saat ADC selesai mengkonversi dan data register telah
diperbarui. ADC Conversion Complete Interrupt akan dijalankan bila bit ADIE dan
bit-I pada register SREG di-set 1. ADIF akan di-clear secara hardware bila
mengerjakan penanganan vektor interrupt yang bersesuaian. Alternatifnya, ADIF
dapat di-clear dengan menuliskan 1. Hati-hati bila bekerja dengan Read-ModifyWrite pada ADCSRA, interrupt yang tertunda dapat dibatalkan. Hal ini juga
berakibat sama bila instruksi SBI dan CBI digunakan.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
13
e. Bit 3 – ADIE : ADC Interrupt Enable
Mengisi bit ini dan bit-I pada register SREG menjadi 1 akan mengaktifkan ADC
Conversion Complete Interrupt.
f. Bit 2:0 – ADPS2:0 – Bit pemilih ADC Prescaler
Menentukan bilangan pembagi antara sumber clock XTAL ke clock ADC.
Tabel 2.3. ADC Prescaler
2.1.4.2.3. ADCL and ADCH – ADC Data Register
Register ADCH (ADC High-byte data) berisi data hasil konversi. Bentuk
penyajiannya ditentukan oleh bit ADLAR. Jika dibiarkan bernilai 0 (clear), register ini berisi
bit MSB dan MSB-1 dari data hasil konversi. Register ADCL (ADC Low-byte data) berisi
data hasil konversi. Bentuk penyajiannya ditentukan oleh bit ADLAR. Jika dibiarkan
bernilai 0 (clear), register ini berisi bit LSB+7 hingga LSB dari data hasil konversi.
Terdapat 2 kondisi ADCLAR, yaitu :
a. Bila ADCLAR = 0
Gambar 2.4. ADC Data Register jika ADCLAR = 0
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
14
b. Bila ADCLAR = 1
Gambar 2.5. ADC Data Register jika ADCLAR = 1
Setelah ADC selesai melakukan konversi, kedua register ini berisi hasil konversi.
Bila channel differensial dipilih maka hasilnya dalam format two’s complement. Saat ADCL
dibaca, data register tidak akan update data sampai ADCH dibaca. Jika hasilnya dirata
kiri (left adjust) dan hanya butuh 8-bit maka cukuplah dengan membaca ADCH. Jika butuh
10-bit, baca ADCL dahulu kemudian ADCH. ADC9:0: Hasil konversi ADC.
Resolusi 10 bit pada fitur ADC ATmega8535 artinya nilai ADC memiliki rentang
dari 0 sampai dengan 210 (0 – 1024). Berdasarkan resolusi tersebut maka hasil konversi pada
masukan tunggal (single ended conversion) adalah perbandingan Vin terhadap Vref dikalikan
dengan 1024.
2.1.4.2.4. SFIOR – Special Function Input/Output Register
Register SFIOR berisi beberapa bit yang terlibat dalam ADC, dan beberapa bit yang
terlibat dalam fitur lain. Bit-bit yang terlibat dalam ADC adalah bit-bit pemilih sumber
penyulut otomatis (ADTS2:0).
Gambar 2.6. Special Function I/O Register
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
15
a. Bit 7:5 – ADTS2:0 : ADC Auto Trigger Source
Bila ADATE dalam register ADCSRA di-set 1, maka nilai dalam bit-bit ini akan
menentukan sumber mana yang akan menyulut konversi ADC. Bila bit ADATE
bernilai 0, maka bit-bit ini tidak akan mempunyai efek. Sebuah konversi disulut oleh
sinyal tepi positif dari interrupt flag yang dipilih. Perlu diingat bahwa
memindah sumber trigger yang diberi nilai 0 ke sumber trigger lain yang di-set akan
menyebabkan
tepi positif pada sinyal trigger. Bila ADEN dalam register
ADCSRA di-set, juga akan memulai konversi. Memindah mode ke mode freerunning tidak akan menyebabkan pulsa trigger, meskipun bila flag interrupt ADC
di-set.
Tabel 2.4. ADC Auto Trigger Source Selections
b. Bit 4 – RES : Reserved bit
Bit cadangan, bila dibaca hasilnya nol.
2.1.5. Reset
Pin reset digunakan untuk mengembalikan mikrokontroler ke kondisi semula.
Rangkaian reset merupakan bagian dari sistem minimum pada mikrokontroler. Komponen
yang dipakai adalah tombol reset dan kapasitor. Tidak menggunakan resistor karena sudah
ada Reset Pull-up Resistor di dalam ATmega8535 sebesar 30 kΩ - 60 kΩ [3].
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
16
Gambar 2.7. Rangkaian Charge dan Discharge pada Kapasitor [4]
Rangkaian reset pada dasarnya adalah rangkaian seri antara resistor dan kapasitor
seperti pada gambar 2.7. Pada saat terhubung ke sumber tegangan (posisi 1) maka kapasitor
akan menyimpan arus listrik sampai tegangan kapasitor sama dengan tegangan sumber.
Namun saat antar kedua kaki terhubung singkat (posisi 2) maka kapasitor akan membuang
muatannya sampai tegangan kapasitor habis[4]. Grafik charge dan discharge dapat dilihat
pada gambar 2.8.
Gambar 2.8. RC Time Constant [4]
Waktu yang diperlukan untuk pengisian dan pengosongan disebut RC time
constant. Kondisi pengosongan yang dipergunakan dalam sistem reset. Time constant ( )
dan tegangan (VC) pada waktu (t) tertentu sangat tergantung dengan nilai hambatan (R) dan
kapasitansinya (C) pada sumber tegangan E [4].
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2.2.
17
Strain Gage [5]
Strain gage adalah sensor yang digunakan untuk mengukur perubahan fisik
(deformasi) dan perubahan resistansi pada material tertentu. Struktur dari strain gage
ditunjukkan pada gambar 2.9. Sensor ini dipasang pada bagian yang hendak diukur besar
strain yang terjadi. Perubahan penampang permukaan akan mempengaruhi perubahan
penampang strain gage.
Gambar 2.9. Struktur Strain Gage
Setiap material memiliki resistansi yang berbeda-beda. Gaya yang diberikan akan
merubah besarnya resistansi karena terjadi deformasi pada penampang. Perubahan nilai
hambatan (R) sangatlah kecil maka diperlukan rangkaian Wheatstone Bridge untuk
merubahnya menjadi tegangan keluaran. Rangkaian Wheatstone Bridge ditunjukkan pada
gambar 2.10.
Gambar 2.10. Jembatan Wheatstone
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
18
Tegangan keluaran sensor (e) adalah perbandingan antar hambatan dikalikan dengan
tegangan masukan (E). Perhitungan untuk mencari tegangan keluaran pada Jembatan
Wheatstone ditunjukkan pada persamaan 2.3.
2.3.
Pengkondisi Sinyal [6]
Rangkaian pengkondisi sinyal merupakan rangkaian untuk mengubah level tegangan
sesuai dengan yang diinginkan. Ketidaksesuaian level tegangan antara keluaran analog
sensor dan masukan mikrokontroler dapat diatasi dengan membuat rangkaian pengkondisi
sinyal. Rangkaian yang dipakai adalah rangkaian penguat atau amplifier.
Penguat yang dipakai dalam penelitian ini adalah penguat instrumentasi. Rangkaian
penguat instrumentasi memiliki nilai-nilai hambatan dengan kondisi R1 = R4, R2 = R5 dan
R6 = R7 sehingga diperoleh besar penguatan (Av) :
Gambar 2.11. Rangkaian Penguat Instrumentasi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2.4.
19
Keypad 4x4 [7]
Pada penelitian ini digunakan keypad matrix 4x4 yang berfungsi sebagai perangkat
input data ke dalam sistem melalui mikrokontroler. Keypad memiliki fungsi sebagai
interface antara perangkat (mesin) elektronik dengan manusia.
Keypad matriks merupakan tombol normally open yang disusun berdasarkan baris
dan kolom yang bertujuan untuk dapat mengurangi penggunaan pin masukan pada
mikrokontroler. Sebagai contoh pada Gambar 2.12 ditunjukan bahwa pada keypad matriks
4x4 cukup menggunakan 8 pin untuk 16 tombol yang disediakan. Hal tersebut dapat
dimungkinkan karena konfigurasi rangkaian yang disusun saling terhubung setiap satu
kolom dan satu baris.
Konfigurasi yang ada menjadikan penggunaan baris atau kolom secara bersama, maka
tidak mungkin untuk dapat dilakukan pengecekan dua tombol atau lebih secara bersama
dalam satu siklus waktu. Untuk mengetahui tombol mana yang ditekan maka dilakukan
teknik scanning dari bagian kolom terhadap baris atau sebaliknya. Jika semua kolom diberi
nilai awal low, pada saat terdapat tombol yang ditekan maka akan bernilai high. Misal kolom
1 baris 1 bernilai high berarti yang ditekan adalah tombol 1, dan seterusnya.
Gambar 2.12. Keypad Matriks 4x4
2.5.
LCD 2x16
Setiap data masukan dari keypad dan hasil keluaran dari sensor akan ditampilkan
melalui sebuah perangkat yaitu LCD. Liquid crystal display (LCD) adalah suatu jenis media
tampilan yang menggunakan kristal cair sebagai penampil utama. Sumber cahaya di dalam
perangkat LCD adalah lampu neon berwarna putih yang berada di bagian belakang
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
20
susunan kristal cair. LCD 2x16 menandakan bahwa LCD dapat menampilkan sebanyak
2x16 karakter. Gambar 2.13 menunjukan contoh dari LCD 2x16.
Gambar 2.13. LCD 2x16 [8]
LCD akan berfungsi dengan baik jika kita memasang sesuai dengan konfigurasi pin
yang sudah ditentukan seperti pada table di bawah ini.
Tabel 2.5. Fungsi dan Konfigurasi Pin LCD 2x16 [8]
Pin
Nama
Fungsi
1
VSS
Ground
2
VDD
+5V
3
VEE
Tegangan kontras (kira-kira 0V)
4
RS
5
R/W
6
E
7
D0
Data bit 0, LSB
8
D1
Data bit 1
9
D2
Data bit 2
10
D3
Data bit 3
11
D4
Data bit 4
12
D5
Data bit 5
13
D6
Data bit 6
14
D7
Data bit 7, MSB
Register Select (0 = Register instruksi 1 = Register data)
Read / Write, untuk memilih mode tulis atau baca
0 = mode tulis dan 1 = mode baca
0 = enable (mulai menahan data ke LCD) dan 1 = disabled
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2.6.
21
Solenoid Valve
Solenoid valve adalah perangkat elektromekanis digunakan untuk mengendalikan
cairan atau aliran gas. Solenoid valve dikendalikan oleh arus listrik, yang dijalankan melalui
koil. Ketika kumparan diberi energi, medan magnet dibuat, menyebabkan sebuah pendorong
dalam kumparan untuk bergerak. Tergantung pada desain katup, plunger akan membuka
atau menutup katup. Ketika arus listrik dihentikan dari kumparan, katup akan kembali ke
kondisi semula [9].
2.6.1. Cara kerja Solenoid Valve [9]
Pada direct-acting solenoid valves, plunger langsung membuka dan menutup sebuah
lubang di dalam katup. Pada katup yang dioperasikan pilot (juga disebut tipe servo), plunger
membuka dan menutup lubang pilot. Tekanan jalur masuk, yang dipimpin melalui lubang
pilot, membuka dan menutup segel katup.
Cara kerja solonid valve seperti ditunjukkan pada gambar 2.14. Media dikontrol oleh
katup dan masuk melalui lubang masukan (2). Media harus mengalir melalui lubang orifice
(9) sebelum menuju ke lubang keluaran (3). Orifice ditutup dan dibuka oleh plunger (7).
Katup seperti gambar di atas adalah solenoid valve normal tertutup. Katup biasanya
tertutup menggunakan pegas (8) yang menekan ujung plunger terhadap pembukaan lubang.
Sealing di ujung plunger membuat media memasuki lubang, sampai plunger terangkat oleh
medan elektromagnetik yang diciptakan oleh koil (5).
Gambar 2.14. Prinsip Kerja Solenoid Valve
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
22
2.6.2. Electric Solenoid Valve G1/2 (Normally Closed) [10]
Solenoid valve yang akan digunakan adalah electric solenoid valve G1/2 (normally
closed). Katup ini dengan catu daya 12 VDC yang memiliki 1 port masukan dan 1 port
keluaran dengan ukuran 1/2 inchi. Sangat baik untuk cairan dengan viskositas rendah dan
katup ini banyak digunakan diberbagai aplikasi, contohnya pada kran otomatis. Gambar
2.15 menunjukkan bentuk fisik dari electric solenoid valve G1/2-normally closed.
Gambar 2.15. Electric Solenoid Valve G1/2 (Normally Closed)
Spesifikasi electric solenoid valve G1/2 (normally closed) :
1.
Tegangan kerja : 12VDC
2.
Arus maksimum: 450mA
3.
Mode operasi : normally closed
4.
Inlet/Outlet ports: G1/2”
5.
Material / bahan : nylon / stainless steel / Polyoxymethylene
6.
Value type : diaphragm valve (dioperasikan oleh servo)
7.
Filter screen: stainless steel inlet filter
8.
Suhu kerja maksimum : 120°C
9.
Range tekanan operasi : 0.02 – 0.8 MPa
10. Umur pakai : 200.000+
2.7.
Transistor Sebagai Saklar [11]
Salah satu fungsi transistor yang sederhana adalah sebagai saklar. Pada rangkaian ini
terdapat hambatan RB pada kaki basis dan RC pada kaki kolektor, sedangkan kaki emitor
dihubungkan ke ground. Skema rangkaian dapat dilihat pada gambar 2.16.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
23
Gambar 2.16. Transistor Sebagai Saklar
Fungsi saklar bisa dilihat pada gambar 2.17 yang menjelaskan kondisi transistor saat
cutt-off dan saturation. Pada bagian (a), basis dan emitor tidak dalam kondisi bias maju
sehingga memiliki kondisi saklar terbuka antara kolektor dengan emitor. Kebalikan dengan
itu, pada bagian (b) terdapat bias maju sehingga kolektor dan emitor dalam kondisi saklar
tertutup. Arus pada kolektor mencapai saturasi sehingga ada tegangan yang mengalir dari
kaki kolektor ke emitor, kondisi ini pula yang membuat Vout terhadap ground memiliki nilai
tegangan yang dapat dipergunakan untuk mengaktifkan komponen atau alat tertentu.
Gambar 2.17. Transistor pada Kondisi Cutt-off dan Saturation
Pada saat cut-off (basis-emitor tidak bias maju) dan IB = 0 maka tegangan antara
kolektor-emitor (VCE) sama dengan tegangan catu dayanya (VCC).
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
24
Basis-emitor bias maju akan menyebabkan arus kolektor maksimal sehingga tercipta
kondisi saturasi (VCE dianggap nol). Arus pada kaki kolektor (IC) adalah tegangan catu daya
(VCC) dibagi dengan nilai hambatan (RC) pada kaki kolektor. Arus pada kaki basis (IB) sama
dengan arus pada kaki kolektor dibagi dengan besar penguatan transistor (βdc).
Pada saat transistor aktif maka tegangan pada RB (VRB) adalah tegangan input (Vin)
dikurangi tegangan bias maju transistor (VBE).
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB III
RANCANGAN PENELITIAN
3.1.
Perancangan Hardware
Hardware dirancang untuk memenuhi tujuan penelitian. Hubungan antar masing-
masing hardware dan fungsinya dalam sistem dapat dilihat dalam diagram blok pada gambar
3.1. Masukan diberikan oleh keypad dan sensor berat, pengolah data dilakukan oleh
mikrokontroler. Keluaran mikrokontroler terhubung dengan solenoid valve sebagai aktuator.
Masukan dari keypad dan hasil pengukuran dari sensor berat ditampilkan melalui LCD.
Semua hardware membutuhkan supply tegangan sesuai dengan kebutuhan masing-masing.
Keypad
Sensor Berat
Power
Supply
Bagian yang
membutuhkan
Microcontroller
LCD
Solenoid Valve
Gambar 3.1. Diagram Blok Perancangan Hardware
3.1.1. Komponen Mekanik
Komponen mekanik adalah komponen-komponen yang mendukung hardware lain
sehinggga peralatan penelitian dapat berfungsi dengan baik. Yang termasuk dalam kelompok
ini adalah kerangka, saluran, wadah dan komponen lain yang diperlukan dalam sistem.
Wadah penampung terletak di atas kerangka. Pada bagian bawah wadah penampung terdapat
keluaran berupa saluran yang akan melewati sebuah solenoid valve. Cairan akan keluar dan
jatuh ke dalam wadah takar yang diletakkan di atas sensor berat. Skema dapat dilihat pada
gambar 3.2.
25
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
26
a
c
b
d
e
f
Gambar 3.2. Skema Perancangan Komponen Mekanik
Keterangan gambar :
a. Wadah penampung (galon air 19 liter / Ø22cm x 45cm).
b. Saluran (pipa atau selang Ø0,5 inch).
c. Solenoid valve.
d. Wadah takar plastic (Ø15cm x 20cm).
e. Sensor berat / modul timbangan digital EK5055 (48cm x 36cm x 26,5cm).
f. Kerangka plastik (25cm x 25cm x 40cm).
3.1.2. Minimum System ATmega8535
Sistem minimum mikrokontroler adalah sistem elektronika yang terdiri dari
komponen-komponen dasar yang dibutuhkan oleh suatu mikrokontroler untuk dapat
berfungsi dengan baik. Mikrokontoler membutuhkan dua elemen (selain power supply)
untuk berfungsi: Kristal Oscillator (XTAL) dan rangkaian RESET. Fungsi dari XTAL adalah
memompa data. Rangkaian RESET digunakan untuk memulai kembali pembacaan program
pada saat mikrokontroler mengalami gangguan dalam mengeksekusi program.
Pada sistem minimum AVR khususnya ATmega8535 terdapat elemen rangkaian
pengendalian ADC: AGND (= GND ADC), AVCC (VCC ADC), dan AREF (= Tegangan
Referensi ADC). Konektor ISP untuk mengunduh (download) program ke mikrokontroler.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
27
Rangkaian sistem minimum mikrokontroler AVR ATmega8535 dapat dilihat pada gambar
3.3.
Komponen yang dibutuhkan dalam pembuatan sistem minimum untuk ATmega8535
adalah :
a. Dua buah kapasitor 22 pF untuk rangkaian XTAL [2].
b. Sebuah XTAL 16MHz sebagai external clock.
c. Sebuah kapasitor 22 pF untuk rangkaian RESET.
d. Sebuah push button sebagai tombol RESET.
AREF
tidak dihubungkan ke sumber tegangan karena dalam rancanagn ini
dipergunakan tegangan referensi internal sebesar 2,56 volt [3]. AVCC tetap terhubung ke
sumber tegangan +5 volt.
Gambar 3.3. Minimum System ATmega8535 dengan Masukan ADC
Rangkaian RESET menggunakan Reset Pull-up Resistor yang sudah ada pada
mikrokontroler dan sebuah external capacitor. Perhitungan untuk menentukan nilai
kapasitor tersebut dengan mengacu pada datasheet ATmega8535 sebagai berikut [3]:
a. Tegangan kerja mikrokontroler = E = 5 volt.
b. Reset Pull-up Resistor = RRST = 30 kΩ - 60 kΩ.
c. VRST = VC = 0,9 volt.
d. tRST = 1,5 µs.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
28
3.1.3. Sensor Berat (Modul Timbangan Digital)
Pada penelitian ini sensor berat yang dipergunakan adalah strain gauge yang terdapat
dalam sebuah modul timbangan digital Camry EK5055 seperti pada gambar 3.4[2]. Nilai
resistansi (R) yang terdapat dalam modul seperti pada persamaan 2.3. dan gambar 2.10 tidak
diketahui, namun bisa dilakukan pengukuran tegangan keluaran sensor (e) dengan
pembebanan yang berbeda-beda. Data diambil dengan tegangan masukan (E) sebesar 3 volt
DC dari 2 buah batere 1,5 volt.
Gambar 3.4. Modul Timbangan Digital Camry EK5055 [2]
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
29
Hubungan antara berat ditimbang dengan tegangan keluaran yang dihasilkan dari
sensor adalah sebagai berikut :
Tabel 3.1. Hubungan antara Berat Ditimbang dan Tegangan Keluaran Sensor
Berat (Gram) 0 350 740 1189 1660 2151 2623 3130 3690 4256 4752 5000
0 0,2 0,4 0,6
0,8
1,0
1,2
1,4
1,6
1,8
2,0
2,1
e (mV)
2.5
e (mV)
2
1.5
1
0.5
0
0
1000
2000
3000
4000
5000
6000
Berat (Gram)
Gambar 3.4. Hubungan antara Berat Ditimbang dan Tegangan Keluaran Sensor
Grafik hubungan antara berat ditimbang dengan tegangan keluaran sensor
merupakan garis linear. Dengan y sebagai nilai tegangan keluaran (mV) dan x sebagai nilai
berat (gram) yang ditimbang serta m adalah gradient garis maka diperoleh persamaan dan
hasil perhitungan sebagai berikut :
3.1.4. Penguat Instrumentasi
Pada bagian ini dilakukan perhitungan untuk mencari nilai hambatan yang akan
dipakai pada penguat instrumentasi. Dasar dari perhitungan adalah tegangan maksimal
keluaran yang diharapkan dari pengondisi sinyal adalah sama dengan tegangan referensi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
30
internal ADC dari ATmega8535 sebesar 2,56 volt [3]. Penguat yang dipergunakan adalah
LM741 dengan tegangan masukan 15 volt DC [12].
Perhitungan kembali :
Gambar 3.5. Rancangan Penguat Instrumentasi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
31
3.1.5. Solenoid Driver (Transistor Sebagai Saklar)
Solenoid driver dihubungkan pada portB.4 mikrokontroler ATmega8535. Arus
maksimal IC yang melewati solenoid valve sebesar 450 mA [10]. Transistor yang dipakai
adalah TIP31 dengan IC maksimal 3A. Berdasarkan spesifikasi TIP31 didapatkan besar β =
hFE = 150 pada saat IC = 450mA [13]. Untuk menghindari arus balik maka dipasang diode
1N4001 yang mampu menahan tegangan balik sebesar 50V DC [14].
Gambar 3.6. Rangkaian Solenoid Driver
Berdasarkan data di atas maka dapat dihitung nilai RBasis = R8 :
Perhitungan kembali :
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
32
3.1.6. Wiring Keypad 4x4
Keypad 4x4 sebagai perangkat untuk memberikan masukan data dihubungkan ke
portD pada ATmega8535. Pada perancangan ini pin-pin kolom (portD.0-3) sebagai masukan
sedangkan pin-pin baris (portD.4-7) sebagai keluaran. Koneksi antara keypad 4x4 dengan
mikrokontroler ATmega8535 adalah sebagai berikut :
Tabel 3.2. Wiring keypad 4x4 pada ATmega8535
ATMEGA 8535
KEYPAD 4X4
PORTD.0
Pin 1 (input)
PORTD.1
Pin 2 (input)
PORTD.2
Pin 3 (input)
PORTD.3
Pin 4 (input)
PORTD.4
Pin A (output)
PORTD.5
Pin B (output)
PORTD.6
Pin C (output)
PORTD.7
Pin D (output)
Gambar 3.7. Rangkaian Keypad 4x4 pada ATmega8535
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
33
3.1.7. Wiring LCD 2x16
LCD berfungsi menampilkan data yang diberikan dari perangkat pengolah data,
misalnya mikrokontroler. Pada perancangan ini LCD dihubungkan ke portC dari
ATmega8535. Koneksi antara LCD 2x16 dengan ATmega8535 ditunjukkan pada tabel 3.3
dan gambar 3.8. Pin VSS terhubung ke ground dan pin VDD terhubung ke VCC (+5V).
Tabel 3.3. Wiring LCD 2x16 pada ATmega8535
ATMEGA 8535
LCD 2x16
PORTC.0
Pin RS
PORTC.1
Pin R/W
PORTC.2
Pin E
PORTC.3
Tidak tersambung
PORTC.4
Pin D4
PORTC.5
Pin D5
PORTC.6
Pin D6
PORTC.7
Pin D7
Gambar 3.8. Rangkaian LCD 2x16 pada ATmega8535
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
3.2.
34
Perancangan Program
Program dirancang dengan berdasarkan flowchart yang telah dibuat yaitu :
a. Sistem
b. Kalibrasi
c. Penakaran
d. Pilihan sendiri
3.2.1. Sistem
Sistem adalah rancangan secara umum program yang akan dibuat. Di dalamnya
memuat seluruh sub-sub program. Sistem dimulai dengan inisialisasi pada port
mikrokontroler. Langkah selanjutnya selanjutnya adalah kalibrasi untuk memastikan berat
yang ditakar sesuai dengan keluaran hasil. Proses kalibrasi selesai dan dilanjutkan dengan
proses penakaran hingga berat sesuai dengan yang diinginkan. Flowchart dari sistem dapat
dilihat pada gambar 3.9.
Mulai
Inisialisasi Port
Mikrokontroler
Kalibrasi
Penakaran
Selesai
Gambar 3.9. Flowchart Sistem
3.2.2. Kalibrasi
Program selalu diawali dengan inisialisasi pada port mikrokontroler. Wadah yang
diletakkan di atas sensor berat akan ditimbang dan nilainya akan ditampilkan pada LCD.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
35
Tombol bintang (*) adalah sebagai tombol reset yang berarti membuat nilai awal adalah nol.
Angka 0 (nol) akan ditampilkan pada layar LCD. Flowchart proses kalibrasi dapat dilihat
pada gambar 3.10.
Mulai
Inisialisasi Port
Mikrokontroler
Timbang
wadah
Tampilan LCD
Input tombol
Reset (*)
Tampilan LCD
Selesai
Gambar 3.10. Flowchart Proses Kalibrasi
3.2.3. Penakaran
Program proses penakaran diawali dengan inisialisasi port mikrokontroler. Pada awal
sebelum penakaran terjadi, LCD akan menampilkan informasi tentang tombol-tombol menu.
Pilihan pertama adalah tombol huruf yang sudah menyediakan nilai berat tertentu (250 gram,
500 gram, 1.000 gram, 2.000 gram). Pilihan kedua adalah pilihan sendiri (customize) dengan
langsung menekan tombol-tombol angka.
Setiap tombol yang ditekan akan ditampilkan pada LCD. Proses penakaran dimulai
dengan solenoid valve yang aktif dan membuka katupnya sehingga cairan mengalir. Cairan
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
36
akan jatuh dalam wadah yang diletakkan diatas sensor berat. Setelah nilai berat tercapai
maka mikrokontroler memberikan perintah off sehingga katup tertutup dan cairan berhenti
mengalir. Hasil penakaran ditampilkan pada LCD dan proses penakaran selesai. Flowchart
proses penakaran dapat dilihat pada gambar 3.11.
A
Mulai
Inisialisasi Port
Mikrokontroler
B
Pilihan
sendiri
Tampilan LCD
Tampilan LCD
Input
keypad
Solenoid ON
Tombol
A=250 gr
Ya
Berat >= input Tidak
keypad
Tidak
Ya
Tombol
B=500 gr
Ya
Solenoid OFF
Tidak
Tombol
C=1000 gr
Tampilan LCD
Ya
Tidak
Tombol
D=2000 gr
Tidak
Selesai
Ya
B
A
Gambar 3.11. Flowchart Proses Penakaran
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
37
3.2.4. Pilihan Sendiri
Program yang mengatur input keypad pada penelitian ini dimulai dengan inisialisasi
port mikrokontroler. Data masukan diperoleh dari tombol keypad yang ditekan saat
memasukkan nilai berat yang akan ditakar. Satuan berat yang dipakai dalam program ini
adalah gram. Data tersebut kemudian akan ditampilkan pada LCD jika memenuhi batasanbatasan dalam program.
Nilai berat yang dimasukkan harus merupakan kelipatan dari 10 gram, minimal 50
gram dan maksimal 2.000 gram. Kelipatan 10 dipakai karena ketelitian yang diharapkan
adalah 10 gram. Penakaran dibatasi dari 50 – 2000 gram untuk mengatasi galat pada saat
penakaran. Flowchart proses pilihan sendiri dapat dilihat pada gambar 3.12.
Mulai
Inisialisasi Port
Mikrokontroler
Input
Keypad
Tampilan LCD
Apakah
kelipatan
10?
Tidak
Ya
Apakah ≥ 50?
Tidak
Ya
Apakah ≤ 2000?
Tidak
Ya
Selesai
Gambar 3.12. Flowchart Proses Pilihan Sendiri
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
38
Berikut ini adalah uraian ketelitian penakaran dengan berdasarkan pada ketelitian
ADC 10 bit dan tegangan referensi internal ADC :
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB IV
HASIL DAN PEMBAHASAN
Bab ini membahas hasil dari sistem yang telah dirancang sebelumnya. Alat dan
sistem tersebut diuji dan diambil data untuk mengetahui apakah sesuai dengan tujuan awal
dari pembuatan alat. Data yang diambil adalah berat air yang keluar dan diukur dengan alat
ukur yang standar atau alat pembanding. Nilai masukan pada sistem dibandingkan dengan
hasil keluaran sistem untuk mengetahui error.
4.1.
Hardware Mekanik dan Elektronik
Hardware alat penakar berat air terdiri dari tiga bagian utama, yaitu mekanik, supply
tegangan dan bagian elektronik. Berikut uraian masing-masing bagian.
4.1.1. Hardware Mekanik dan Supply Tegangan
Alat penakar berat air berbasis mikrokontroler dibuat dari dispenser yang memiliki
bagian-bagian seperti ditunjukkan pada gambar 4.1. dan gambar 4.2.
Dispenser
box
Galon air
19 liter
LCD
Gelas
Ukur 2L
Keypad
Pipa
keluaran
Modul
sensor
berat
Gambar 4.1. Tampak Depan Alat Penakar Berat
39
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
40
Bagian-bagian dari alat terdiri dari dispenser sebagai rangka utama, galon air 19 liter sebagai
tampungan, LCD 2x16 untuk menampilkan karakter data, keypad membran matrik 4x4
untuk masukan data, pipa sebagai saluran keluaran air yang akan ditakar dan timbangan
sebagai sensor berat.
Untuk mendapatkan hasil yang baik dari sistem maka rancangan alat dan sistem telah
dirubah. Pompa akuarium ditambahkan karena tekanan air tidak cukup membuka katub pada
solenoid valve. Pengujian telah dilakukan tanpa pompa dengan hasil aliran yang sangat kecil
bahkan kadang air tidak keluar.
Saluran dari
tampungan
Supply 12V DC
untuk driver
Solenoid
valve
Supply 5V DC
dan 12/-12 V DC
Saluran
keluaran
Pompa akuarium
220 AC
Relay
Gambar 4.2. Tampak Dalam Sistem Penakar Berat Air
Gambar di atas menunjukkan alat bagian dalam dispenser yang terdiri atas power supply,
pompa akuarium, solenoid valve, relay dan saluran masukan maupun keluaran air.
4.1.2. Hardware Elektronik
Hardware elektronik dari alat penakar berat air berbasis mikrokontroler ditunjukkan pada
gambar 4.3. Elektronik pada sistem penakar berat air ini terdiri dari LCD 2x16, sistem
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
41
mikrokontroler ATMega 8535, keypad 4x4, sensor berat strain gauge, penguat instrumentasi
dan driver.
LCD 2x16
Potensio
kontras LCD
Masukan dari
sensor berat
Sistem
mikrokontroler
ATMega 8535
Penguat
instrumentasi
Driver untuk
valve dan
pompa
Input
keypad
Gambar 4.3. Panel Elektronik
LDC 2x16 sebagai penampil, mikrokontroler ATMega 8535 sebagai kendali utama,
keypad 4x4 sebagai masukan data dari pengguna alat, modul timbangan sebagai sensor berat,
penguat instrumentasi sebagai penguat tegangan dari sensor menuju mikrokontroler dan
driver yang mengendalikan relay, pompa dan solenoid valve.
Gambar 4.4. Penguatan 2 Tahap dengan OP07 CP
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
42
Terdapat perubahan rancangan pada penguat instrumentasi. Penguatan 2.392,52 kali
yang dikuatkan satu tahap diubah menjadi dua tahap, penguatan instrumentasi dan inverting.
Dilakukan perubahan karena hasil pengujian yang tidak stabil pada penguatan satu tahap
dengan masukan tegangan yang sangat kecil dari sensor yaitu di bawah 0,1 mV. Gambar 4.5.
merupakan rangkaian PCB dari skema gambar 4.4.
Gambar 4.5. Rangkaian PCB Penguatan 2 Tahap dan Driver
Perubahan kedua adalah IC yang semula menggunakan LM741 diubah menjadi
OP07 CP [15] yang memiliki karakter ultralow offset, low noise, cocok untuk aplikasi
instrumentasi dan sensor strain gauges. Hasil pengujian dengan LM741 menunjukkan derau,
noise dan offset yang terlalu besar pada sistem. Besar penguatan menjadi tidak sesuai dengan
harapan dan tidak stabil, bahkan selalu lebih besar dari penguatan yang seharusnya. OP07
CP lebih sesuai untuk penguatan strain gauge dan instrumentasi.
4.2.
Cara Penggunaan Alat Penakar Berat
Cara penggunaan alat penakar berat bisa dilihat pada bagian depan panel seperti
gambar 4.6. atau mengikuti petunjuk yang diberikan pada layar LCD.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
43
250
500
1.000
Clear
ON
2.000
Enter
Gambar 4.6. Tampilan Sistem dan Tombol Keypad
1. Masukkan steker ke stop kontak jaringan listrik 220VAC.
2. Letakkan wadah ke atas sensor berat.
3. Tekan saklar yang terdapat pada bagian belakang dispenser pada posisi On.
4. Pada layar LCD 2x16 akan muncul tulisan “Selamat Datang” dan “Tekan ON”
5. Permintaan kalibrasi wadah akan muncul.
6. Petunjuk kalibrasi muncul berupa perintah “Tekan Clear” dan layar akan menunjukkan
tampilan berat wadah yang dipergunakan.
7. Tekan tombol Clear dan nilai berat berubah menjadi 0 (nol).
8. Muncul perintah berikutnya untuk memasukkan nilai berat tertentu.
9. Cara memasukkan berat ada 2 :
a. Tekan tombol instan 250, 500, 1.000 dan 2.000 gram.
b. Tekan tombol angka sesuai keinginan dengan syarat berat minimal adalah 50 gram
dan kelipatan 10 gram. Berat maksimal yang bisa ditimbang adalah 2.000 gram.
Angka yang ditekan pertama akan muncul paling kiri (angka ke-1) dan seterusnya ke
kanan sampai angka ke-3 dan akan kembali ke angka ke-1 pada penekanan ke-4 dan
terus berulang.
c. Tekan tombol Clear untuk mereset menjadi nol.
10. Tekan Enter(ON) untuk menyatakan selesai. Jika nilai berat kurang dari 50 gram maka
akan muncul peringatan “Terlalu Ringan” dan “Berat Min 50 gr”. Sebaliknya jika nilai
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
44
berat lebih besar dari 2.000 gram maka akan muncul peringatan “Terlalu Berat” dan
“Berat Max 2.000 gr”
11. Jika nilai berat sesuai dengan batasan alat maka akan diproses.
12. Setelah penakaran selesai maka akan akan muncul sesaat tampilan “proses selesai” dan
nilai hasil penakaran.
13. Tampilan kembali ke awal dan bisa mulai kalibrasi untuk penakaran berikutnya.
4.3.
Percobaan Alat
4.3.1. Percobaan Alat Dengan Rangkaian Lengkap
Percobaan alat berupa pengambilan data dilakukan namun tidak dilanjutkan karena
tidak stabilnya sistem. Setiap kali dijalankan sistem penakaran, perintah yang diberikan
selalu memiliki hasil yang berubah-ubah sangat ekstrim. Setelah nilai berat dimasukkan baik
dengan pilihan sendiri atau instan, kadang proses dianggap selesai tanpa ada hasil diperoleh,
namun kadang terjadi proses penakaran yang terlalu lama, seakan tidak tercapai berat yang
diminta. Pengambilan data bisa dianggap tidak berhasil dari sistem dan hardware yang telah
dibuat. Untuk seterusnya akan dibahas pada bagian analisa.
4.3.2. Percobaan Alat Dengan Rangkaian Yang Disederhanakan
Sistem yang telah dibuat begitu komplek, sehingga mempengaruhi hasil keluaran
yang tidak stabil. Untuk mengetahuinya maka dilakukan percobaan berupa perubahan alat
menjadi lebih sederhana. Masukan keypad dan keluaran driver dihilangkan. Mikrokontroler
hanya memiliki satu masukan dari penguat instrumentasi dan satu keluaran ke LCD 2x16.
Program mikrokontroler hanya untuk membaca ADC dari sensor yang tetap dilewatkan
melalui penguat instrumentasi dua tahap. Hasil pembacaan data dan konversi berat
ditampilkan pada LCD.
Alat dibuat pada sebuah multiplex tebal 5 mm dan disusun seperti pada gambar 4.7.
Sistem keypad dan driver yang merupakan perangkat penakaran dihilangkan pada percobaan
ini. Rangkaian lebih sederhana dengan satu power supply dan kabel lebih sedikit.
Diharapkan dengan rangkaian dan sistem yang lebih sederhana akan diperoleh hasil yang
lebih stabil.
Pada intinya perubaan alat menjadi lebih sederhana adalah untuk melihat apakah
sensor berat bekerja ketika diberikan beban yang berubah-ubah. Penguat yang dirancang
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
45
juga diamati apakah bekerja sesuai dengan perubahan berat dan perubahan tegangan pada
sensor berat. Untuk mengetahuinya dilakukan dengan pengukuran tegangan keluaran pada
sensor dan penguat serta terjadinya perubahan nilai pada LCD.
Multiplex
LCD 2x16
Beban
Timba
ngan
Mikrokontroler
Modul
Timbanga
n
Penguat
Instrumentasi
Power Supply
Masukan
220V AC
Gambar 4.7. Alat Yang Sudah Disederhanakan
Dilakukan percobaan dan pengambilan data pada alat baru yang telah
disederhanakan. Pengambilan data dilakukan untuk mengetahui hubungan antara nilai berat
yang diminta dengan nilai step ADC, nilai berat yang dihasilkan dan error yang terjadi. Nilai
tegangan keluaran pada sensor dan penguat instrumentasi juga diambil untuk memastikan
adanya perubahan tegangan saat nilai beban berubah. Data hasil percobaan ditunjukkan pada
tabel 4.1. dan grafik hubungan antara step ADC dengan nilai set point berat ditunjukkan
pada gambar 4.8. Hubungan antara tegangan keluaran sensor terhadap penguat instrumentasi
ditunjukkan pada gambar 4.9. Hubungan antara tegangan keluaran baik pada sensor maupun
penguat instrumentasi terhadap nilai berat ditunjukkan pada gambar 4.10.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
46
Tabel 4.1. Data Set Point dan Keluaran Sistem
Set Point
Berat
(gram)
0
50
100
150
200
250
300
350
500
550
600
650
700
750
800
850
1000
1050
1100
1150
1200
1250
1300
1350
1500
1550
1600
1650
1700
1750
1800
1850
2000
2050
2100
2150
2200
2250
2300
2350
2500
Keluaran
Min
67
72
81
85
91
100
107
118
141
148
157
167
175
181
194
200
229
238
245
248
258
266
277
288
310
319
326
334
341
350
359
367
394
402
410
421
428
438
445
453
478
Error
Step
Berat (gr)
Min Maks
Maks Rata-rata Min Maks Rata-rata (%) (%)
80
73.5
15 118
66.5
88
80.0
47 160
103.5
6.00 220.00
93
87.0
90 190
140.0 10.00 90.00
102
93.5
115 231
173.0 23.33 54.00
107
99.0
146 263
204.5 27.00 31.50
117
108.5
210 307
258.5 16.00 22.80
128
117.5
265 346
305.5 11.67 15.33
133
125.5
318 405
361.5
9.14 15.71
154
147.5
461 535
498.0
7.80 7.00
164
156.0
501 582
541.5
8.91 5.82
170
163.5
553 614
583.5
7.83 2.33
180
173.5
589 658
623.5
9.38 1.23
186
180.5
645 699
672.0
7.86 -0.14
196
188.5
696 747
721.5
7.20 -0.40
205
199.5
730 813
771.5
8.75 1.63
212
206.0
774 852
813.0
8.94 0.24
236
232.5
936 1002
969.0
6.40 0.20
244
241.0
997 1065 1031.0
5.05 1.43
253
249.0 1040 1092 1066.0
5.45 -0.73
261
254.5 1085 1140 1112.5
5.65 -0.87
267
262.5 1149 1209 1179.0
4.25 0.75
277
271.5 1195 1254 1224.5
4.40 0.32
284
280.5 1242 1304 1273.0
4.46 0.31
295
291.5 1282 1346 1314.0
5.04 -0.30
320
315.0 1433 1507 1470.0
4.47 0.47
328
323.5 1479 1578 1528.5
4.58 1.81
336
331.0 1564 1635 1599.5
2.25 2.19
343
338.5 1607 1685 1646.0
2.61 2.12
350
345.5 1663 1729 1696.0
2.18 1.71
362
356.0 1707 1776 1741.5
2.46 1.49
370
364.5 1755 1813 1784.0
2.50 0.72
378
372.5 1809 1863 1836.0
2.22 0.70
405
399.5 1941 2024 1982.5
2.95 1.20
416
409.0 2002 2048 2025.0
2.34 -0.10
425
417.5 2035 2107 2071.0
3.10 0.33
432
426.5 2090 2147 2118.5
2.79 -0.14
442
435.0 2142 2205 2173.5
2.64 0.23
448
443.0 2180 2245 2212.5
3.11 -0.22
458
451.5 2254 2326 2290.0
2.00 1.13
468
460.5 2262 2361 2311.5
3.74 0.47
489
483.5 2436 2459 2447.5
2.56 -1.64
Tegangan Keluaran
Tanpa Mikrokontroler Dengan Mikrokontroler
Sensor
Penguat
Sensor
Penguat
(mV)
(V)
(mV)
(V)
0.10
-2.60
0.10
1.15
0.10
-2.55
0.10
1.18
0.10
-2.49
0.10
1.20
0.10
-2.43
0.10
1.22
0.10
-2.37
0.10
1.24
0.10
-2.31
0.10
1.26
0.20
-2.00
1.35
0.25
-1.69
0.25
1.45
0.30
-1.34
0.30
1.56
0.35
-1.00
0.35
1.66
0.40
-0.65
0.40
1.76
0.45
-0.29
0.45
1.85
0.50
0.05
0.50
1.93
0.55
0.42
0.55
2.01
0.60
0.77
0.60
2.09
Hubungan antara perubahan step ADC terhadap perubahan nilai berat dicari
persamaan garis linear yang berguna dalam pembuatan program perhitungan berat ADC
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
47
pada mikrokontroler dan ditampilkan pada LCD 2x16. Nilai step yang dipakai adalah nilai
rata-rata karena nilai step yang tertampil pada layar LCD mengalami osilasi.
Hubungan Antara Step Terhadap Berat
Rata-rata Step (step)
3000
y = 6.0142x - 399.64
R² = 0.9996
2500
2000
1500
1000
500
0
0
100
200
300
400
500
600
Berat (gram)
Gambar 4.8. Hubungan Antara Step ADC Terhadap Berat
Pengambilan data nilai tegangan pada keluaran sensor dan keluaran penguat
instrumentasi dimaksudkan untuk melihat tanggapan sistem terhadap perubahan berat.
Tegangan diambil pada kondisi penguat terhubung dan tidak terhubung ke mikrokontroler.
Percobaan ini untuk melihat kemungkinan terjadinya interferensi tegangan pada sistem yang
memiliki kemungkinan mempengaruhi nilai akhir.
Tegangan Keluaran Penguat (V)
Hubungan Antara Penguat Terhadap Sensor
3
2
1
0
-1
0
0.1
0.2
0.3
0.4
0.5
0.6
-2
-3
Tegangan Keluaran Sensor (mV)
Penguat tanpa mikrokontroler
Penguat dengan mikrokontroler
Gambar 4.9. Hubungan Antara Penguat Terhadap Sensor
0.7
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
48
Tegangan Keluaran (mV)
Hubungan Antara Tegangan Terhadap Berat
4000
2000
0
-2000
0
500
-4000
1000
1500
2000
2500
3000
Berat (gr)
Sensor
Penguat tanpa mikrokontroler
Penguat dengan mikrokontroler
Gambar 4.10. Hubungan Antara Tegangan Terhadap Berat
4.4.
Analisa
4.4.1. Analisa Pada Rangkaian Lengkap
Percobaan pengambilan data tidak dilakukan karena sistem tidak stabil. Berikut
adalah proses yang telah dilalui untuk menganalisa ketidaksempurnaan sistem :
a. Power supply dari awal sudah dibuat terpisah antara sistem mikrokontroler dan penguat
dengan relay dan solenoid valve. Pemisahan dimaksudkan supaya tidak terjadi
interferensi tegangan pada sistem.
b. Rangkaian untuk driver, penguat, sensor selesai dibuat serta saling dihubungkan. Ground
yang berbeda membuat sistem tidak punya referensi tegangan yang sama, maka akhirnya
ground dijadikan satu dan sistem sementara tidak mengambang.
c. Gain dari penguat yang diharapkan dalam perhitungan adalah 2.392,52 kali. Besar
penguatan tersebut dibuat hanya 1 tahap dengan LM741. Hasil yang didapatkan adalah
saturasi antara 8 - 9 VDC. Analisa sementara adalah karena keluaran sensor yang sangat
kecil yaitu dibawah 0,1 mV sebelum mendapat beban dan dengan penguatan 1 tahap
untuk nilai sebesar itu adalah tidak mampu. Diputuskan penguatan 2 tahap.
d. Penguatan 2 tahap dengan LM741 dibuat dengan hasil yang masih saturasi.
e. Pengecekan ulang dilakukan : keluaran sensor muncul dan bekerja dengan baik, namun
selang dengan waktu memiliki hasil keluaran yang berbeda. Berdasarkan pengecekan
diperoleh hasil bahwa tegangan berubah sehingga membuat nilai tegangan keluaran
sensor juga berubah. Diputuskan catu daya akan dibuat dari adaptor yang sudah
diturunkan sebesar 3,3VDC dengan IC AMS1117 3,3.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
49
f. Penguatan instrumentasi 2 tahap dengan LM741 diteliti satu per satu. Diperoleh hasil
bahwa salah satu keluaran sensor tersambung dengan In+ penguat sedangkan keluaran
sensor lainnya dan In- penguat harus tersambung dengan ground. Negatif dari catu sensor
harus terpisah dengan ground sehingga floating.
g. Penguatan dengan LM741 mendapat hasil keluaran tdk stabil dan besar penguatan lebih
tinggi dari seharusnya walaupun tidak saturasi. Dicoba dengan OP07CP dan memperoleh
penguatan mendekati yang diinginkan secara teori. Nilai aktual dari resistor yang dipakai
belum diperhitungkan. Hasil percobaan bisa dilihat pada gambar 4.11. dan tabel 4.2. serta
4.3.
Gambar 4.11. Inverting Amplifier
Tabel 4.2. Penguatan dengan LM741
R1
R2
Tegangan
Tegangan
Penguatan
(k)
(k)
Keluaran Sensor
Keluaran Penguat
(kali)
(V)
(V)
1
10
0,0002
0.0038
19
1
10
0,011
0,214
19,45
1
200
0,003
0,969
323
Tabel 4.3. Penguatan dengan OP07CP
R1
R2
Tegangan
Tegangan
Penguatan
(k)
(k)
Keluaran Sensor
Keluaran Penguat
(V)
(V)
(kali)
1
10
0,0002
0.002
10
1
10
0,011
0,12
10,9
1
200
0,003
0,578
192,67
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
50
h. Penggantian variable resistor RV4 pada gambar 4.4. yang semula menggunakan Trimpot
dengan Multiturn Resistor supaya lebih mudah dalam gain setting.
i. Penambahan rangkaian pengatur offset seperti gambar di bawah. Prinsip pembagi
tegangan dipakai pada rangkaian ini. Rv merupakan multiturn resistor sebesar 10 kohm.
Nilai R17 dan R18 juga 10 kohm. Pada kedua ujung kaki R17 dan R18 terhubung ke
+12VDC dan -12VDC sebagai offset range. Rangkaian ini diperlukan karena terdapat
offset pada sensor. Saat sensor tidak terbebani, sudah ada tegangan tertentu (0,1 mV
menurut multimeter) pada keluaran sensor sehingga harus diatur menjadi nol pada
keluran penguat.
Gambar 4.12. Offset Regulator
j. Pengambilan data untuk mencari hubungan antara berat, keluaran sensor, dan keluaran
penguat instrumentasi. Penguatan yang diukur adalah penguatan 2 tahap dengan OP07CP,
sedangkan alat ukur yang digunakan adalah 2 buah multimeter, untuk keluaran sensor dan
keluaran penguat. Data diambil dan dibuat grafik seperti ditunjukkan pada tabel 4.4. dan
gambar 4.13. dan 4.14.
k. Pengambilan data mengalami kendala karena kemampuan baca dari multimeter paling
kecil hanya 0,1 mVDC, sedangkan perubahan pada keluaran sensor seharusnya sampai
0.01 mVDC. Saat berat benda ditambah kurang dari 50 gram, sudah terjadi perubahan
nilai pada keluaran penguat namun belum berubah pada keluaran sensor. Data ini
tentunya akan mempengaruhi linearitas dari keluaran penguat. Formula yang muncul
tidak begitu sesuai dengan kondisi sebenarnya dari sensor. Pada hasil penakaran tentu
akan muncul error yang cukup besar sehubungan dengan formula yang dipakai untuk
perhitungan.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Tabel 4.4. Data Linearitas Sensor Pada Penguat Dua Tahap
Tegangan Keluaran Sensor Tegangan Keluaran Penguat
(mV)
(V)
0.10
0.00
0.10
0.02
0.10
0.05
0.10
0.11
0.15
0.21
0.20
0.31
0.30
0.51
0.35
0.61
0.40
0.71
0.45
0.82
0.55
1.02
0.60
1.12
0.65
1.22
0.70
1.32
0.80
1.53
0.85
1.63
0.90
1.72
0.95
1.82
1.05
2.02
Step ADC
(step)
400 (min)
690 (maks)
Keluaran Sensor Terhadap Berat
Output Sensor (mV)
1.2
y = 0.0005x + 0.0668
R² = 0.9985
1
0.8
0.6
0.4
0.2
0
0
500
1000
1500
2000
2500
Berat (gram)
Gambar 4.13. Hubungan Antara Keluaran Sensor Terhadap Perubahan Berat
51
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
52
Keluaran Penguat Terhadap Berat
Output Opamp (V)
2.5
y = 0.001x + 0.0046
R² = 1
2
1.5
1
0.5
0
0
500
1000
1500
2000
2500
Berat (gram)
Gambar 4.14. Hubungan Antara Keluaran Penguat Terhadap Perubahan Berat
l. Penguat dihubungkan ke pin mikrokontroler, keluaran yang tampil pada LCD adalah nilai
step ADC. Hasil sangat fluktuatif sehingga sulit untuk menentukan linearitas dari sistem,
bahkan sangat jauh dari harapan. Contoh pengambilan data ditunjukkan pada tabel 4.5.
dan gambar 4.15.
Tabel 4.5. Hubungan Antara Perubahan Berat Terhadap Step ADC
Berat (gram)
Step ADC (step)
0
250
150
420
700
610
1350
680
1800
860
2500
Berat (gr)
2000
y = 3.1458x - 974.22
R² = 0.9272
1500
1000
500
0
-500
0
200
400
600
800
1000
Step ADC (step)
Gambar 4.15. Hubungan Antara Perubahan Berat Terhadap Step ADC
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
53
m. Dilakukan pengambilan data saat tidak terbebani dan terbebani maksimal untuk
menentukan formula perhitungan ADC. Hal ini dilakukan karena tidak stabilnya tegangan
keluaran dari sensor. Data terlihat pada tabel 4.4. dan grafik pada gambar 4.16.
Berat Terhadap Step ADC
2500
y = 6.8966x - 2758.6
R² = 1
Berat (gram)
2000
1500
1000
500
0
-500
0
200
400
600
800
Step ADC (step)
Gambar 4.16. Hubungan Antara Perubahan Berat Terhadap Step ADC (2)
n. Formula linear yang sudah diperoleh dipakai untuk pengambilan data untuk mencari
kestabilan sistem ADC ternyata hasil sangat fluktuatif, bahkan kadang sangat jauh dari
harapan seperti diitunjukkan pada tabel 4.6.
Tabel 4.6.Data Kestabilan ADC
Berat sebenarnya
Hasil terkecil
Hasil terbesar
150 gram
34 gram
210 gram
500 gram
330 gram
750 gram
1.000 gram
783 gram
1.312 gram
Pada pengambilan data berikutnya pada berat yang sama setelah sistem dimatikan
diperoleh hasil yang berbeda. Sistem sangat tidak stabil.
o. Keluaran sensor dan keluaran penguat dilihat dengan oscilloscope. Perangkat yang
digunakan adalah Picoscope 6 beserta driver software. Data diambil pada dua kondisi,
tidak ada beban dan saat dibebani. Data diambil pada skala mendatar 200 ms/div. Hasil
pengamatan ditunjukkan pada gambar 4.17. dan 4.18.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
54
Gambar 4.17. Tegangan Pada Keluaran Sensor Tanpa Beban
Gambar 4.18. Tegangan Pada Keluaran Sensor Terbebani
p. Hasil percobaan dengan keluaran sensor yang langsung masuk ke masukan penguat
adalah tidak stabil. Dilakukan percobaan berikutnya yaitu keluaran sensor diperhalus
dengan RC filter. Frekuensi sinyal keluaran sensor sebesar 287Hz dan kapasitor yang
dipakai adalah 100nF, nilai R yang dihasilkan adalah 570 ohm sesuai yang ada di pasaran.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
560
Gambar 4.19. Rangkaian RC Filter
Perhitungan mencari nilai R19 :
Hasil dari penambahan filter tampak pada gambar 4.20. dan 4.21.
Gambar 4.20. Tegangan Pada Keluaran Sensor Tanpa Beban Dengan RC Filter
55
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
56
Gambar 4.21. Tegangan Pada Keluaran Sensor Terbebani Dengan RC Filter
q. Hasil keluaran sensor sudah lebih baik namun tetap muncul penyimpangan yang
membesar saat dibebani. Keluaran penguat setelah ditambah RC filter ternyata tetap tidak
baik, hasil masih sangat fluktuatif seperti pada gambar 4.22. dan 4.23.
Gambar 4.22. Tegangan Pada Keluaran Penguat Tanpa Beban Dengan RC Filter
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
57
Gambar 4.23. Tegangan Pada Keluaran Penguat Terbebani Dengan RC Filter
r. Percobaan dengan hardware sementara dihentikan. Keluaran ADC coba diperbaiki
dengan program rata-rata pada mikrokontroler. Dasar dari pemikiran ini adalah terjadinya
loncatan naik dan turun tegangan secara periodik dan hasil yang tidak selalu sama.
Harapan dari percobaan ini adalah nilai yang berbeda-beda namun periodik jika
dijumlahkan maka akan mendapat hasil yang mendekati sama atau merata. Berikut ini
program perhitungan berat ADC dengan sistem rata-rata.
void abot() // program perhitungan berat ADC
{
ulang1++;
//counter 1
input1=read_adc(0);
// membaca ADC
delay_us(120);
// waktu pembacaan ADC
sumInput1=sumInput1+input1;
// menjumlah inputan ADC
if(ulang1>=20)
//sampai 20 kali
{
sumInput1=sumInput1/20;
//diambil rata-rata
ulang1=0;
//counter 1 kembali nol
ulang2++;
//counter 2
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
if(ulang2<=20)
58
// sampai 20 kali
{
rata1=rata1+sumInput1;
//rata-rata dari suminput ditambah sebanyak 20x
}
else
{
rata1=rata1/20;
//diambil rata-rata lagi yang ke2
ulang2=0;
//counter 2 kembali nol
ulang3++;
//counter 3
if(ulang3<=20)
//sampai 20 kali
{
rata2=rata2+rata1;
//rata-rata dari rata1 ditambah sebanyak 20x
}
else
{
rata2=rata2/20;
//diambil rata-rata lagi yang ke 2
berat=6.8966*rata2-2758.6;
//masukkan rumus berat ADC
if(berat<=0){berat=0;}
//jika berat perhitungan di bawah 0 dianggap 0
lcd_gotoxy(0,1);
// LCD baris 1 kolom 0
ftoa(berat,3,adece);
// desimal berat ADC
lcd_puts(adece);
// tampil ADC
delay_ms(300);
// waktu tampil LCD
ulang3=rata2=0;
//counter 3 dan rata2 kembali nol
}
rata1=0;
// rata 1 kembali ke 0
}
sumInput1=0;
// suminput kembali ke 0
}
}
s. Hasil lebih baik jika dibandingkan dengan percobaan sebelumnya, namun terjadi masalah
baru yaitu terlambatnya penakaran saat PINB.4 yang mengaktifkan driver bernilai high
(aktif). Driver pada rangkaian ini mengaktifkan solenoid valve dan relay yang
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
59
mengendalikan pompa AC. Dugaan yang muncul adalah timbul gangguan tegangan atau
turunnya arus sehingga sistem tidak bekerja semestinya. Beberapa baris program dicoba
tidak diaktifkan, namun saat driver aktif, penakaran tetap terlambat atau bahkan berhenti.
Saat program lain diaktifkan dan perintah untuk driver dimatikan, penakaran berjalan
normal. Ketika program lain dan perintah driver aktif namun sambungan pada PINB.4
dimatikan, program berjalan normal. Kesimpulan yang diambil adalah diperlukan power
supply yang terpisah namun referensi tegangan tidak mengambang.
t. Diputuskan untuk menambah rangkaian optocoupler yang berfungsi memisahkan PINB.4
dengan driver.
Gambar 4.24. Rangkaian Optocoupler
Arus yang diijinkan melalui optocoupler maksimal 200 mA, tegangan yang masuk dari
pin mikrokontroler 5 VDC, maka besar R21 minimal yang dipasang adalah 25 ohm.
Resistor dipasang 100 ohm. Arus IB maksimal diijinkan adalah 1 A, untuk bisa
mengaktifkan solenoid valve dengan IC = 450 mA, pada perhitungan sebelumnya IB = 3
mA. Dengan tegangan masukan 5VDC maka diperoleh nilai resistor adalah 4 kohm.
Dalam rangkaian dipasang resistor masing-masing 1 kohm seri sehingga besar arus yang
lewat adalah sebesar 6 mA.
u. Setelah rangkaian optocoupler dipasang, sistem dijalankan, maka kendala saat perintah
driver aktif sudah teratasi, perhitungan penakaran bisa berjalan normal.
v. Percobaan pengambilan data dilanjutkan, saat sistem dijalankan, penakaran sudah tidak
terlambat namun hasil tetap tidak stabil. Masukan nilai berat tertentu terhadap sistem
tidak menghasilkan nilai yang diharapkan. Bahkan sering terjadi proses penakaran
dianggap selesai sesaat setelah tombol Enter ditekan. Nilai yang tertampil juga sangat
jauh dari nilai masukan, bisa sangat rendah, bisa mendekati, namun bisa dua kali lipatnya.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
60
Kontrol setiap sambungan antar kabel dan pin, kontrol tegangan catu daya pada titik
tertentu apakah sudah sesuai, kontrol saklar dan kontrol program. Cek kembali kalibrasi
formula dengan aktual saat tidak ada beban dan saat beban tertentu. Cek program
pengulangan terutama pada bagian rata-rata data masukan dan kalibrasi. Pergantian
formula dilakukan baik pada ADC, rata-rata, kalibrasi dan yang lain. Hasil tetap tidak
baik. Percobaan dihentikan dan dibuat analisa ketidakstabilan sistem.
4.4.2. Analisa Pada Rangkaian Yang Disederhanakan
a. Rangkaian yang lebih sederhana tidak menggunakan sistem keypad dan driver. Kabel dan
rangkaian lebih sederhana. Program yang dijalankan juga lebih sederhana, hanya program
pembacaan ADC dan penampilan ke LCD. Hardware driver dan program untuk
mengaktifkan juga tidak ada pada rangkaian ini. Respon sistem dalam melakukan
penimbangan menjadi lebih cepat.
b. Power supply hanya satu sehingga memiliki satu referensi tegangan. Pembacaan oleh
penguat maupun ADC mikrokontroler lebih jelas referensinya.
c. Percobaan dan pengambilan data dilakukan, dimulai dari tanpa beban sampai dengan
berat 2.500 gram. Beban yang dikapai adalah anak timbangan yang sudah dikalibrasi
dengan timbangan digital yang memiliki ketelitian 1 gram.
d. Program pembacaan ADC yang dibuat ditampilkan berupa step ADC 10 bit. Beban
ditimbang dan dicatat (tabel 4.1.) yang untuk selanjutnya dibuat grafik seperti gambar
4.8. Hasil dari grafik tersebut adalah formula garis linear yang dipergunakan dalam
perhitungan konversi berat ADC. Nilai step yang tertampil ternyata berosilasi seperti
ditunjukkan tabel 4.1. sehingga diambil nilai rata-ratanya.
e. Dilakukan pengukuran tegangan keluaran pada sensor dan penguat untuk melihat
tanggapan sistem. Pengukuran menggunakan multimeter dengan ketelitian 0,1 mV. Sama
seperti pada analisa sebelumnya pada rangkaian lengkap, ketelitian alat ukur seharusnya
sampai 0,01 mV. Sangat jelas belum terjadi perubahan pada keluaran sensor pada saat
diberi beban 0 – 250 gram, masih menunjukkan angka 0,1 mV sedangkan pada keluaran
penguat sudah berubah. Kondisi ini terulang terus secara periodik setiap 250 gram seperti
ditunjukkan grafik pada gambar 4.9.
f. Pengukuran tegangan keluaran dilakukan pada dua kondisi, saat penguat terhubung ke
mikrokontroler dan saat tidak terhubung. Sangat jelas pada tabel 4.1. dan grafik pada
gambar 4.9. dan 4.10. bahwa nilai tegangan sangatlah berbeda. Pada saat tidak terhubung
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
61
ke mikrokontroler memiliki nilai – 2,6 V sampai dengan 0,77 V. Saat terhubung memiliki
nilai 1,15 sampai dengan 2.09 V. Nilai negative saat tanpa beban bisa diubah menjadi 0V
dengan memutar multiturn resistor pada offset regulator, namun nilai 1,15 V juga akan
berubah naik, begitu pula nilai 0,77 V dan 2.09 V. Perbedaan tegangan pada saat
terhubung ke mikrokontroler dan tidak terhubung menunjukkan bahwa adanya
interferensi tegangan saat terhubung ke hardware lain, dalam hal ini mikrokontroler.
Bahkan terjadi interferensi tegangan saat probe multimeter terhubung karena multimeter
memiliki catu daya sendiri. Ini ditunjukkan adanya perubahan nilai tampilan pada LCD
saat multimeter terhubung dan tidak terhubung ke sistem.
g. Tidak stabilnya nilai step ADC yang muncul sangat mempengaruhi nilai berat yang
dihasilkan. Tabel 4.1. dengan jelas menunjukkan besar error yang terjadi pada setiap set
point dari nilai berat yang diinginkan.
Contoh perhitungan pada berat 1.000 gr :
Error terbesar terjadi saat beban 50 gram sebesar 220% yang dihasilkan oleh berat
maksimal 103,5 gram, dan error terkecil saat beban 2.050 gram sebesar 0,1% yang
dihasilkan oleh berat maksimal 2.025 gram.
h. Jika diamati dengan seksama maka terdapat 3 kelompok besar, kelompok pertama adalah
0 gr – 1.000 gr dengan error di atas 6%, kelompok ke dua adalah 1.050 gr – 1.550 gr
dengan error antara 4 – 5%, kelompok ke tiga adalah 1.600 gr- 2.500 gr dengan error 1,5
– < 4%. Error paling besar terjadi pada beban di bawah 500 gram yaitu diatas 8%.
i. Semakin berat set point semakin stabil nilai keluaran berat, semakin stabil sensor berat.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
4.5.
62
Pembahasan Software
Pada tugas akhir ini software yang digunakan adalah CodeVisionAVR versi 2.05.3.
dengan compiler bahasa C. Program dibuat melalui software ini sesuai dengan parameterparameter yang dikehendaki. Chip yang digunakan adalah ATmega 8535 yang terpasang
pada rangkaian minimum system.
Software simulasi yang digunakan adalah Proteus ISIS release 7.0 SPO build 12325.
Simulasi diperlukan untuk mengetahui rangkaian apakah berjalan dengan baik, minimal
dalam simulasi.
Pembuatan rangkaian PCB menggunakan software Eagle version 6.5.0. for
Windows. Penentuan komponen yang hendak digunakan sampai dengan desain rangkaian,
dilanjutkan dengan merubah menjadi rangkaian PCB dan mengaturnya sampai rapi.
Program yang telah dibuat dan disimulasikan dengan benar bisa dimasukkan ke
dalam chip. Alat yang dipergunakan adalah unit downloader K-125 USB AVR Programer.
Proses download program dilakukan dengan bantuan komputer yang sudah terpasang driver
PL2303 Profilic v1417.
Alat yang dipakai untuk melihat bagaimana tegangan keluaran pada titik tertentu
adalah Picoscope 6 yang sebelumnya install driver pada komputer. Ini merupakan
oscilloscope tanpa display sehingga diperlukan computer sebagai penampil.
4.6.
Program
4.6.1. Program Pada Rangkaian Lengkap
Program pada rangkaian lengkap terdiri dari 4 bagian yaitu :
a. Program keypad (urutan proses, tombol instan dan pilihan sendiri).
b. Program perhitungan berat ADC termasuk kalibrasi.
c. Program on-off driver.
d. Program tampilan.
Berikut ini cuplikan program tampilan awal saat sistem dinyalakan. Pada bagian atas
kiri LCD 2x16 atas akan tertampil “Selamat Datang” dan bagian bawah kiri akan tampil
“Tekan ON”.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
63
Program dibawahnya adalah saat perintah untuk memasukkan berat melalui keypad.
Baris ke dua dari kiri LCD akan menampilkan angka sesuai masukan dari keypad dan di
sebelah kanannya akan tertampil satuan berat gram.
Gambar 4.25. Cuplikan Program Tampilan Awal dan Masukkan Berat
Program selengkapnya terdapat pada lampiran 1.
4.6.2. Program Pada Rangkaian Sederhana
Program dalam rangakaian sederhana adalah program rata-rata pembacaan masukan
ADC dan menampilkan ke layar LCD.
void main(void)
{
ulang1=ulang2=ulang3=0;
// set awal counter = 0
while (1)
{
// Place your code here
baca=read_adc(0);
// membaca ADC
delay_us(120);
// waktu untuk pembacaan ADC
ulang1++;
// counter 1 aktif
if(ulang1<=10)
// syarat pengulangan 1
{
sum1=sum1+baca;
// penambahan baca ADC
}
else
// jika melewati syarat
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
{
rata1=sum1/10;
// rata-rata 1
ulang1=0;
// counter 1 kembali ke 0
ulang2++;
// counter 2 aktif
if(ulang2<=10)
// syarat pengulangan 2
{
sum2=sum2+rata1;
// penambahan rata-rata 1
}
else
// jika melewati syarat
{
rata2=sum2/10;
// rata-rata 2
ulang2=0;
// counter 2 kembali ke 0
ulang3++;
// counter 3 aktif
if(ulang3<=10)
// syarat pengulangan 3
{
sum3=sum3+rata2; // penambahan rata-rata 2
}
else
// jika melewati syarat
{
rata3=sum3/10;
// rata-rata 3
berat=6.0142*rata3-399.64;
// konversi berat ADC
if(berat<=0){berat=0;}
// jik berat kurang dari 0 maka dianggap 0
lcd_gotoxy(0,0);
// LCD baris 0 (atas) rata kiri (kolom 0)
ftoa(rata3,3,adece); // desimal step ADC dari rata-rata terakhir
lcd_puts(adece);
// adece tampil ke LCD
lcd_gotoxy(10,0); // LCD baris 0 kolom 10
lcd_putsf("step"); // tulisan “step” tampil pada LCD
lcd_gotoxy(0,1);
// LCD baris 1 (bawah) kolom 0
ftoa(berat,3,adece); // desimal konversi berat dari rata-rata terakhir
lcd_puts(adece);
// adece tampil ke LCD
lcd_gotoxy(10,1); // LCD baris 1 kolom 10
lcd_putsf("gram"); // tulisan “gram” tampil pada LCD
delay_ms(200);
// waktu untuk tampil
64
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
ulang3=sum3=rata3=0;
// nilai counter, jumlah dan rata-rata 3 kembali ke 0
}
sum2=rata2=0;
// nilai jumlah dan rata-rata 2 kembali ke 0
}
sum1=rata1=0; // nilai jumlah dan rata-rata 1 kembali ke 0
}
}
}
Program selengkapnya terdapat pada lampiran 2.
65
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB V
KESIMPULAN DAN SARAN
5.1.
Kesimpulan
Berdasarkan proses perancangan, pembuatan sampai dengan pengujian alat penakar
berat air berbasis mikrokontroler dapat diambil kesimpulan sebagai berikut :
1.
Alat penakar berat yang telah dibuat dapat bekerja dengan hasil yang tidak stabil
terutama pada nilai beban di bawah 500 gram dengan error 8 – 220 % pada alat yang
sudah disederhanakan.
2.
Semakin berat beban yang ditimbang maka semakin stabil sistem sehingga dapat
memiliki error di bawah 4% untuk beban di atas 1.600 gram.
3.
Tegangan keluaran sensor berat berupa modul strain gauge yang dipakai dalam
penelitian sangat kecil dan fluktuatif, yaitu dibawah 0.1 mV dengan rentang osilasi
±60 mV dengan frekuensi yang tidak stabil.
4.
Penguat instrumentasi dan filter yang dirancang tidak mampu menstabilkan tegangan
keluaran sensor yang sangat kecil dan tidak stabil.
5.
Power supply, grounding dan rangkaian yang komplek dapat menimbulkan
interferensi tegangan yang sangat mempengaruhi keberhasilan sistem.
5.2.
Saran
Setelah melewati seluruh proses maka diperoleh beberapa saran yang bisa
digunakan untuk perkembangan penelitian lebih lanjut yaitu :
1.
Penguat instrumentasi yang mampu mengolah tegangan sangat kecil dengan frekuensi
tidak stabil sangat diperlukan dalam membangun alat penakar berat dengan sensor
berat strain gauge.
2.
Sistem dan rangkaian yang dapat mengurangi atau menghilangkan interferensi
tegangan harus dirancang dengan baik dan cermat sehingga sistem menjadi stabil serta
memberikan hasil yang teliti.
3.
Alat ukur dengan ketelitian 0,01 mV sangat dibutuhkan dalam pengukuran tegangan
keluaran sensor strain gauge yang sangat kecil, yaitu di bawah 0,1 mV.
66
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
67
DAFTAR PUSTAKA
[1]
Nuresa, Y.R., 2011, Penakar Bahan Makanan Otomatis Berbasis Mikrokontroler,
Skripsi Tugas Akhir, Institut Teknologi Telkom, Jakarta.
[2]
Camry
Electronic
Ltd.,
2011,
Electronic
Kitchen
Scales
EK5055,
http://www.camryscale.com/showroom/ek5055.html, diakses pada 10 Juni 2013.
[3]
Atmel, 2007, Data Sheet 8-bit AVR with 8K Bytes In System Programmable Flash
ATMega8535-ATMega8535L, Atmel, San Jose.
[4]
Boylestad R., 2002, Introductory Circuit Analysis, 10th Edition, hal 390-397.
[5]
Tokyo Sokki Kenkyojo Co., Ltd.,_______, Strain Gauges, Tokyo Sokki Kenkyojo
Co., Ltd., Tokyo, Japan.
[6]
Karris, S.T., 2005, Electronic Devices and Amplifier Circuits with MATLAB®
Applications, Orchard Publications,. California, United States of America, chapter
5.16.
[7]
Parallax Inc., 2011, Data Sheet of 4x4 Matrix Membrane Keypad, Parallax Inc.
[8]
NetMedia, 2002, Data Sheet of 2x16 Serial LCD Display Module, v1.2, NetMedia
Inc., Stallard Place, Tucson.
[9]
Solenoid-Valve-Info.com, 2013, What is Solenoid Valve?, http://www.solenoidvalve-info.com, diakses pada 7 November 2013.
[10] Seeed Studio Works, 2014, Data Sheet of G1/2 Electric Solenoid Valve (Normally
Closed),
http://www.seeedstudio.com/depot/electric-solenoid-valve-p-636.html,
diakses 8 Februari 2014.
[11] Floyd, T.L., 2012, Electronic Devices : Conventional Current Version, 9th ed,
Prentice Hall, New Jersey, hal 193-194.
[12] Texas Instrument, 2013, Data sheet of LM741 Operasional Amplifier, Texas
Instrument, Texas.
[13] Fairchild Semiconductor International, 2000, Data Sheet of TIP31 Series, Fairchild
Semiconductor Corporation.
[14] Fairchild Semiconductor International, 2000, Data Sheet of 1N4001, Fairchild
Semiconductor Corporation.
[15] Analog Device Inc, 2002-2011, data Sheet of OP07, Analog Devices.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PROGRAM DENGAN RANGKAIAN LENGKAP
Chip type
: ATmega8535
Program type
: Application
AVR Core Clock frequency : 12.000000 MHz
Memory model
: Small
External RAM size
:0
Data Stack size
: 128
*****************************************************/
#include <mega8535.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <delay.h>
// Alphanumeric LCD functions
#include <alcd.h>
#define ADC_VREF_TYPE 0xC0 // setting referensi tegangan internal 2,56 V
int a,b,d,angka1,angka2,angka3,angka4,input;
int baca,ulang1,ulang2,ulang3;
float sum1,sum2,sum3,rata1,rata2,rata3,berat,htakar;
long kalib;
char adece[20];
char angka[20];
// Read the ADC conversion result
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
L1-1
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
ADCSRA|=0x10;
return ADCW;
}
// Declare your global variables here
void abot() // program perhitungan berat ADC
{
baca=read_adc(0);
// baca ADC
delay_us(120);
// waktu pembacaan ADC
ulang1++;
// counter 1 aktif
if(ulang1<=20)
// syarat pengulangan 1
{
sum1=sum1+baca;
// penambahan baca ADC
}
else
// jika melewati syarat
{
rata1=sum1/20;
// rata-rata1
ulang1=0;
// counter 1 kembali 0
ulang2++;
// counter 2 aktif
if(ulang2<=20)
// syarat pengulangan 2
{
sum2=sum2+rata1;
// penambahan rata-rata1
}
else
// jika melewati syarat
{
rata2=sum2/20;
// rata-rata 2
berat=3.16*rata2-505.6;
// konfersi berat ADC
if(berat<=0){berat=0;}
// jika berat kurang dari 0 maka dianggap 0
lcd_gotoxy(0,1);
// LCD baris 1 kolom 0
ftoa(berat,3,adece);
// decimal ADC
lcd_puts(adece);
// tampil ADC
delay_us(200);
// waktu tampil ADC
ulang2=sum2=rata2=0;
// counter 2, jumlah 2 dan rata-rata 2 kembali 0
L1-2
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
}
sum1=rata1=0;
// jumlah 1 dan rata-rata 2 kembali 0
}
}
void tampil1()
// sub program tampil 1
{
lcd_gotoxy(0,0);
// LCD baris 0 kolom 0
lcd_putsf("Selamat Datang"); // tampil “Selamat Datang”
lcd_gotoxy(0,1);
// LCD baris 1 kolom 0
lcd_putsf("Tekan ON");
// tampil “Tekan ON”
}
void tampil3()
// sub program tampil 3
{
lcd_gotoxy(0,0);
// LCD baris 0 kolom 0
lcd_putsf("Masukan Berat!!"); // tampil “Masukkan Berat”
lcd_gotoxy(0,1);
// LCD baris 1 kolom 0
lcd_puts(angka);
// tampil angka (nilai berat ADC)
lcd_gotoxy(6,1);
// LCD baris 1 kolom 6
lcd_putsf("gr");
// tampil “gr” (satuan)
}
void main(void)
// program utama
{
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;
L1-3
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L1-4
// Port B initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out
Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0
PORTB=0x00;
DDRB=0xFF;
// Port C initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out
Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0
PORTC=0x00;
DDRC=0xFF;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=Out Func2=Out Func1=Out Func0=Out
// State7=T State6=T State5=T State4=T State3=0 State2=0 State1=0 State0=0
PORTD=0x00;
DDRD=0x0F;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
L1-5
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
MCUCR=0x00;
MCUCSR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;
// USART initialization
// USART disabled
UCSRB=0x00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency: 750.000 kHz
// ADC Voltage Reference: AREF pin
// ADC High Speed Mode: Off
// ADC Auto Trigger Source: ADC Stopped
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x87;
SFIOR&=0xEF;
// SPI initialization
// SPI disabled
SPCR=0x00;
// TWI initialization
// TWI disabled
TWCR=0x00;
//hasil setting ADC - register
L1-6
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
// Alphanumeric LCD initialization
// Connections are specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTC Bit 0
// RD - PORTC Bit 1
// EN - PORTC Bit 2
// D4 - PORTC Bit 4
// D5 - PORTC Bit 5
// D6 - PORTC Bit 6
// D7 - PORTC Bit 7
// Characters/line: 16
lcd_init(16);
awal:
while (b==0)
{
tampil1();
// panggil sub program tampil 1
PORTD=4;
// kolom 3 ( 2^2=4)
if(PIND==132)
// tombol # (ON/Enter)(2^7 +4 = 132)
{
while(PIND.7==1){tampil1();}
lcd_clear();
// membersihkan LCD
lcd_gotoxy(0,0);
// LCD baris 0 kolom 0
lcd_putsf("Kalibrasi"); // tampil “Kalibrasi”
lcd_gotoxy(0,1);
// LCD baris 1 kolom 0
lcd_putsf("Wadah Anda");
// tampil “Wadah Anda”
delay_ms(1000);
// waktu tampil 1.000 ms
lcd_clear();
// membersihkan LCD
lcd_gotoxy(0,0);
// LCD baris 0 kolom 0
lcd_putsf("Tekan Clear");
// tampil “Tekan Clear”
while(1)
{
abot();
// panggil program sub program abot
delay_us(100);
// waktu jeda
L1-7
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
kalib=berat;
// berat wadah disimpan menjadi kalib
lcd_gotoxy(0,1);
// LCD baris 1 kolom 0
ftoa(kalib,3,adece);
// decimal untuk kalibrasi
lcd_puts(adece);
// tampil ADC (berat wadah)
delay_us(100);
// waktu tampil ADC
PORTD=1;
// keypad kolom 1 (2^0=1)
if(PIND==129)
// tombol * (clear) untuk kalibrasi
{
goto kalibrasi;
// lompat ke kalibrasi
}
}
kalibrasi:
b=1;
}
}
while(b==1)
// kalibrasi wadah
{
for(a=1;a<=8;a=a*2)
{
PORTD=a;
if(a==1)
{
if(PIND.7==1)
{ while(PIND.7==1){};
// berat wadah disimpan
lcd_clear();
// memory tampilan lcd clear
lcd_gotoxy(0,0);
// LCD baris 0 kolom 0
lcd_putsf("Menyimpan"); // tampil “menyimpan”
lcd_gotoxy(0,1);
// LCD baris 1 kolom 0
ftoa(kalib,3,adece);
// decimal ADC untuk kalibrasi
lcd_puts(adece);
// tampil ADC (nilai wadah)
delay_ms(500);
// waktu tampil 500 ms
b=2;
// masuk ke b=2
L1-8
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L1-9
}
}
lcd_clear();
// membersihkan tampilan LCD
angka[0]='0';
//tampilan nol setelah kalibrasi, angka pertama, dan seterusnya
angka[1]='0'
angka[2]='0';
angka[3]='0';
}
}
while (b==2) // input keypad pada pilihan sendiri
{
atas:
for(a=1;a<=8;a=a*2)
{
PORTD=a;
tampil3(); // tampilan saat perintah masukkan berat
if(a==1)
// keypad kolom1
{
// angka ke 1
if(PIND.7==1&&d==0){while(PIND.7==1&&d==0){tampil3();};d=0;b=4;}
if(PIND.6==1&&d==0){while(PIND.6==1&&d==0){tampil3();};angka[0]='7';an
gka1=7;d=1;}
if(PIND.5==1&&d==0){while(PIND.5==1&&d==0){tampil3();};angka[0]='4';an
gka1=4;d=1;}
if(PIND.4==1&&d==0){while(PIND.4==1&&d==0){tampil3();};angka[0]='1';an
gka1=1;d=1;}
// angka ke 2
if(PIND.7==1&&d==1){while(PIND.7==1&&d==1){tampil3();};d=0;b=4;}
if(PIND.6==1&&d==1){while(PIND.6==1&&d==1){tampil3();};angka[1]='7';an
gka2=7;d=2;}
if(PIND.5==1&&d==1){while(PIND.5==1&&d==1){tampil3();};angka[1]='4';an
gka2=4;d=2;}
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L1-10
if(PIND.4==1&&d==1){while(PIND.4==1&&d==1){tampil3();};angka[1]='1';an
gka2=1;d=2;}
// angka ke 3
if(PIND.7==1&&d==2){while(PIND.7==1&&d==2){tampil3();};d=0;b=4;}
if(PIND.6==1&&d==2){while(PIND.6==1&&d==2){tampil3();};angka[2]='7';an
gka3=7;d=0;}
if(PIND.5==1&&d==2){while(PIND.5==1&&d==2){tampil3();};angka[2]='4';an
gka3=4;d=0;}
if(PIND.4==1&&d==2){while(PIND.4==1&&d==2){tampil3();};angka[2]='1';an
gka3=1;d=0;}
// angka ke 4
if(PIND.7==1&&d==3){while(PIND.7==1&&d==3){tampil3();};d=0;b=4;}
if(PIND.6==1&&d==3){while(PIND.6==1&&d==3){tampil3();};angka[3]='7';an
gka4=7;d=0;}
if(PIND.5==1&&d==3){while(PIND.5==1&&d==3){tampil3();};angka[3]='4';an
gka4=4;d=0;}
if(PIND.4==1&&d==3){while(PIND.4==1&&d==3){tampil3();};angka[3]='1';an
gka4=1;d=0;}
}
if(a==2) // kolom2
{
//angka 1
if(PIND.7==1&&d==0){while(PIND.7==1&&d==0){tampil3();};angka[0]='0';an
gka1=0;d=1;}
if(PIND.6==1&&d==0){while(PIND.6==1&&d==0){tampil3();};angka[0]='8';an
gka1=8;d=1;}
if(PIND.5==1&&d==0){while(PIND.5==1&&d==0){tampil3();};angka[0]='5';an
gka1=5;d=1;}
if(PIND.4==1&&d==0){while(PIND.4==1&&d==0){tampil3();};angka[0]='2';an
gka1=2;d=1;}
//angka 2
if(PIND.7==1&&d==1){while(PIND.7==1&&d==1){tampil3();};angka[1]='0';an
gka2=0;d=2;}
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L1-11
if(PIND.6==1&&d==1){while(PIND.6==1&&d==1){tampil3();};angka[1]='8';an
gka2=8;d=2;}
if(PIND.5==1&&d==1){while(PIND.5==1&&d==1){tampil3();};angka[1]='5';an
gka2=5;d=2;}
if(PIND.4==1&&d==1){while(PIND.4==1&&d==1){tampil3();};angka[1]='2';an
gka2=2;d=2;}
//angka 3
if(PIND.7==1&&d==2){while(PIND.7==1&&d==2){tampil3();};angka[2]='0';an
gka3=0;d=0;}
if(PIND.6==1&&d==2){while(PIND.6==1&&d==2){tampil3();};angka[2]='8';an
gka3=8;d=0;}
if(PIND.5==1&&d==2){while(PIND.5==1&&d==2){tampil3();};angka[2]='5';an
gka3=5;d=0;}
if(PIND.4==1&&d==2){while(PIND.4==1&&d==2){tampil3();};angka[2]='2';an
gka3=2;d=0;}
//angka 4
if(PIND.7==1&&d==3){while(PIND.7==1&&d==3){tampil3();};angka[3]='0';an
gka4=0;d=0;}
if(PIND.6==1&&d==3){while(PIND.6==1&&d==3){tampil3();};angka[3]='8';an
gka4=8;d=0;}
if(PIND.5==1&&d==3){while(PIND.5==1&&d==3){tampil3();};angka[3]='5';an
gka4=5;d=0;}
if(PIND.4==1&&d==3){while(PIND.4==1&&d==3){tampil3();};angka[3]='2';an
gka4=2;d=0;}
}
if(a==4) //kolom3
{
//angka 1
if(PIND.7==1&&d==0){while(PIND.7==1&&d==0){tampil3();};b=3;}
if(PIND.6==1&&d==0){while(PIND.6==1&&d==0){tampil3();};angka[0]='9';an
gka1=9;d=1;}
if(PIND.5==1&&d==0){while(PIND.5==1&&d==0){tampil3();};angka[0]='6';an
gka1=6;d=1;}
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L1-12
if(PIND.4==1&&d==0){while(PIND.4==1&&d==0){tampil3();};angka[0]='3';an
gka1=3;d=1;}
//angka 2
if(PIND.7==1&&d==1){while(PIND.7==1&&d==1){tampil3();};b=3;}
if(PIND.6==1&&d==1){while(PIND.6==1&&d==1){tampil3();};angka[1]='9';an
gka2=9;d=2;}
if(PIND.5==1&&d==1){while(PIND.5==1&&d==1){tampil3();};angka[1]='6';an
gka2=6;d=2;}
if(PIND.4==1&&d==1){while(PIND.4==1&&d==1){tampil3();};angka[1]='3';an
gka2=3;d=2;}
//angka 3
if(PIND.7==1&&d==2){while(PIND.7==1&&d==2){tampil3();};b=3;}
if(PIND.6==1&&d==2){while(PIND.6==1&&d==2){tampil3();};angka[2]='9';an
gka3=9;d=0;}
if(PIND.5==1&&d==2){while(PIND.5==1&&d==2){tampil3();};angka[2]='6';an
gka3=6;d=0;}
if(PIND.4==1&&d==2){while(PIND.4==1&&d==2){tampil3();};angka[2]='3';an
gka3=3;d=0;}
//angka 4
if(PIND.7==1&&d==3){while(PIND.7==1&&d==3){tampil3();};b=3;}
if(PIND.6==1&&d==3){while(PIND.6==1&&d==3){tampil3();};angka[3]='9';an
gka4=9;d=0;}
if(PIND.5==1&&d==3){while(PIND.5==1&&d==3){tampil3();};angka[3]='6';an
gka4=6;d=0;}
if(PIND.4==1&&d==3){while(PIND.4==1&&d==3){tampil3();};angka[3]='3';an
gka4=3;d=0;}
}
if(a==8) //kolom4 untuk menu instan, tampil3 >>masukkan berat
{
if(PIND.7==1){while(PIND.7==1){tampil3();} //baris 4
angka[0]='2';angka[1]='0';angka[2]='0';angka[3]='0';angka1=2;}
if(PIND.6==1){while(PIND.6==1){tampil3();} //baris 3
angka[0]='1';angka[1]='0';angka[2]='0';angka[3]='0';angka1=1;}
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
if(PIND.5==1){while(PIND.5==1){tampil3();} //baris 2
angka[0]='0';angka[1]='5';angka[2]='0';angka[3]='0';angka2=5;}
if(PIND.4==1){while(PIND.4==1){tampil3();} //baris 1
angka[0]='0';angka[1]='2';angka[2]='5';angka[3]='0';angka2=2;angka3=5;}
}
}
}
while(b==3) //ribuan, ratusan, puluhan, satuan
{
input=(angka1*1000)+(angka2*100)+(angka3*10)+(angka4*1);
delay_ms(500);
//jeda 500 ms
if(input>2000) //jika berat lebih dari 2.000 gram
{
lcd_clear();
//memory LCD clear
lcd_gotoxy(0,0);
//LCD baris 0 kolom 0
lcd_putsf("Terlalu Berat");
lcd_gotoxy(0,1);
// tampil “Terlalu Berat”
// LCD baris 1 kolom 0
lcd_putsf("Berat Max 2000gr");
//tampil “Berat Max 2000gr”
delay_ms(1000);
// jeda waktu tampil
lcd_clear();
// memory lCD clear
b=2;
//kembali ke pilihan sendiri
angka[0]='0'; //tampilan kembali nol
angka[1]='0';
angka[2]='0';
angka[3]='0';
angka1=angka2=angka3=angka4=0;
goto atas;
//loncat ke pilihan sendiri
}
if(input<50) //jika masukan kurang dari 50 gram
{
lcd_clear();
//memory LCD clear
L1-13
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
lcd_gotoxy(0,0);
//LCD baris 0 kolom 0
lcd_putsf("Terlalu Ringan");
//tampil “Terlalu Ringan”
lcd_gotoxy(0,1);
//LCD baris 1 kolom 0
lcd_putsf("Berat Min 50gr");
//tampil “Berat Min 50gr”
delay_ms(1000);
//jeda waktu tampil
lcd_clear();
//memory LCD clear
//d=0;
b=2;
angka[0]='0';
//nilai kembali ke 0
angka[1]='0';
angka[2]='0';
angka[3]='0';
angka1=angka2=angka3=angka4=0;
goto atas;
}
else{lcd_clear();b=5;}
}
while(b==4)
{
angka[0]='0';
angka[1]='0';
angka[2]='0';
angka[3]='0';
angka1=angka2=angka3=angka4=d=0;
b=2;
goto atas;
}
lcd_gotoxy(0,0);
//LCD baris 0 kolom 0
lcd_putsf("Memproses");
// taampil “memproses”
PORTB.4=0;
//perintah driver on (NOT dengan optocoupler)
delay_ms(100);
//jeda
L1-14
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
while(b==5)
{
abot();
//panggil sub program abot (proses penakaran)
if(berat>=input+kalib)
// berat terhitung adalah wadah ditambah isi
{
lcd_clear();
// memory LCD clear
b=6;
// masuk ke b=6
}
}
while(b==6)
{
htakar=berat-kalib;
// berat actual adalah berat total dikurangi wadah
PORTB.4=1;
// driver off (optocoupler)
lcd_gotoxy(0,0);
// LCD baris 0 kolom 0
lcd_putsf("proses selesai");// tampil “proses selesai”
lcd_gotoxy(0,1);
//LCD baris 1 kolom 0
ftoa(htakar,3,adece);
//desimal hasil penakaran
lcd_puts(adece);
//hasil penakaran ditampilkan
delay_ms(3000);
// jeda waktu tampil
b=0;
goto awal;
}
}
//kembali ke kalibrasi awal
L1-15
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PROGRAM DENGAN RANGKAIAN SEDERHANA
Chip type
: ATmega8535
Program type
: Application
AVR Core Clock frequency : 12.000000 MHz
Memory model
: Small
External RAM size
:0
Data Stack size
: 128
*****************************************************/
#include <mega8535.h>
#include <stdio.h>
#include <delay.h>
#include <stdlib.h>
#include <math.h>
// Alphanumeric LCD functions
#include <alcd.h>
#define ADC_VREF_TYPE 0xC0
// Read the AD conversion result
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}
L2-1
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
// Declare your global variables here
char adece[30];
int baca,ulang1,ulang2,ulang3;
float berat,rata1,rata2,rata3,sum1,sum2,sum3;
void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x00;
DDRD=0x00;
L2-2
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
L2-3
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;
// USART initialization
// USART disabled
UCSRB=0x00;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency: 187.500 kHz
// ADC Voltage Reference: Int., cap. on AREF
// ADC High Speed Mode: Off
L2-4
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
// ADC Auto Trigger Source: ADC Stopped
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x87;
SFIOR&=0xEF;
// SPI initialization
// SPI disabled
SPCR=0x00;
// TWI initialization
// TWI disabled
TWCR=0x00;
// Alphanumeric LCD initialization
// Connections are specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTC Bit 0
// RD - PORTC Bit 1
// EN - PORTC Bit 2
// D4 - PORTC Bit 4
// D5 - PORTC Bit 5
// D6 - PORTC Bit 6
// D7 - PORTC Bit 7
// Characters/line: 16
lcd_init(16);
ulang1=ulang2=ulang3=0;
while (1)
{
baca=read_adc(0);
// membaca ADC
delay_us(120);
// waktu untuk pembacaan ADC
ulang1++;
// counter 1 aktif
if(ulang1<=10)
// syarat pengulangan 1
L2-5
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L2-6
{
sum1=sum1+baca;
// penambahan baca ADC
}
else
// jika melewati syarat
{
rata1=sum1/10;
// rata-rata 1
ulang1=0;
// counter 1 kembali ke 0
ulang2++;
// counter 2 aktif
if(ulang2<=10)
// syarat pengulangan 2
{
sum2=sum2+rata1;
// penambahan rata-rata 1
}
else
// jika melewati syarat
{
rata2=sum2/10;
// rata-rata 2
ulang2=0;
// counter 2 kembali ke 0
ulang3++;
// counter 3 aktif
if(ulang3<=10)
// syarat pengulangan 3
{
sum3=sum3+rata2; // penambahan rata-rata 2
}
else
// jika melewati syarat
{
rata3=sum3/10;
// rata-rata 3
berat=6.0142*rata3-399.64;
// konversi berat ADC
if(berat<=0){berat=0;}
// jik berat kurang dari 0 maka dianggap 0
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
lcd_gotoxy(0,0);
L2-7
// LCD baris 0 (atas) rata kiri (kolom 0)
ftoa(rata3,3,adece); // desimal step ADC dari rata-rata terakhir
lcd_puts(adece);
// adece tampil ke LCD
lcd_gotoxy(10,0); // LCD baris 0 kolom 10
lcd_putsf("step"); // tulisan “step” tampil pada LCD
lcd_gotoxy(0,1);
// LCD baris 1 (bawah) kolom 0
ftoa(berat,3,adece); // desimal konversi berat dari rata-rata terakhir
lcd_puts(adece);
// adece tampil ke LCD
lcd_gotoxy(10,1); // LCD baris 1 kolom 10
lcd_putsf("gram"); // tulisan “gram” tampil pada LCD
delay_ms(200);
// waktu untuk tampil
ulang3=sum3=rata3=0;
// nilai counter, jumlah dan rata-rata 3 kembali ke 0
}
sum2=rata2=0;
// nilai jumlah dan rata-rata 2 kembali ke 0
}
sum1=rata1=0; // nilai jumlah dan rata-rata 1 kembali ke 0
}
}
}
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Rangkaian Total :
L3
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Rangkaian Sederhana :
L4
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Data sheet halaman 1
L5
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Data sheet halaman 1
L6
Download