alat penakar berat berbasis mikrokontroler · i tugas akhir alat penakar berat berbasis...
TRANSCRIPT
i
TUGAS AKHIR
ALAT PENAKAR BERATBERBASIS MIKROKONTROLER
Diajukan untuk memenuhi salah satu syaratMemperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
disusun oleh :
RAHMAT TRI HARTANTONIM : 125114053
PROGRAM STUDI TEKNIK ELEKTROJURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGIUNIVERSITAS SANATA DHARMA
YOGYAKARTA2015
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
FINAL PROJECT
WEIGHT MEASURING DEVICEUSING MICROCONTROLLER
In partial fulfilment of the requirementsfor the degree of Sarjana Teknik
In Electrical Engineering Study Program
RAHMAT TRI HARTANTONIM : 125114053
ELECTRICAL ENGINEERING STUDY PROGRAMELECTRICAL ENGINEERING DEPARTMENTFACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY2015
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
!!!
£0tl lZT : WIN OlNVl1IVH nil lVWHW
ll'JI'l OlILN:0)1 Qll)IIW SISVIDl'JIH L Vll'JIH lIV)IVN:'Jld L V'IV
111IDIV svoru
xvnrnrrsaaa NVWV1VH
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
"!
·3s·w '·1s·s 'Bsoll B
UWJUqQ UlUUUS st?l!SJgA!Ufl !150JOID(gl, trap Sll!US SUlJID(Ud
s I OZ Jgqwgsga .!>J 'uµm1uiGo A
·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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
Motto :
Semua Adalah Kasih Karunia Allah
Skripsi ini kupersembahkan untuk …
Yesus Kristus Penolongku
Keluargaku yang tercinta
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 Y ogyakarta
Pada tanggal : 14 Desember 2015
Yang menyatakan
(Rahmat Tri Hartanto)
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Menakar bahan makanan untuk pembuatan makanan atau minuman merupakan halyang 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 kerjanyamenggunakan sensor berat strain gauge. Pengguna memasukkan nilai berat melaui keypadlalu diproses oleh mikrokontroler untuk proses penakaran. Pengaturan on off penakarandilakukan oleh mikrokontroler dan solenoid valve. Sensor berat strain gauge akanmendeteksi berat yang akan dikeluarkan sesuai dengan berat yang diinginkan. Dasarpenakaran 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 denganberat minimal 50 gram dan kelipatan 10 gram serta berat maksimal 2.000 gram. Ketelitianalat ini diharapkan bisa membaca berat terkecil sampai dengan 2,5 gram. Alat yang dibuatmemiliki error yang besar pada beban di bawah 500 gram dan error di bawah 4% padabeban di atas 1.600 gram. Penyebab ketidakstabilan sistem adalah tegangan keluaransensor yang sangat kecil dan berosilasi tinggi serta memiliki frekuensi tidak stabil, jugaterjadinya interferensi tegangan pada sistem.
Kata Kunci : Sensor berat, Timbangan, Strain gauge, Solenoid Valve, ADC,Mikrokontroler.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
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 istime consuming, unstable and less efficient.
In this final project has been made weight measuring device that works using aweight sensor with strain gauge. Users enter a weight value through the keypad and thenprocessed by a microcontroller to measurement process. On-off settings of measurement isdone by the microcontroller and the solenoid valve. Weight sensors with strain gauge willdetect the weight to be issued in accordance with the desired weight. Basic measurement inthis study is the ADC system that is already owned by ATMega8535. With automaticmeasurement process is expected to be more efficient.
The device in this study only used to measure the weight of the water with aminimum weight of 50 grams and multiples of 10 grams and a maximum weight of 2,000grams. 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 isvery small with high oscillating and has an unstable frequency, also the interferencevoltage on the system.
Keywords: Weight sensor, Scales, Strain gauge, Solenoid Valve, ADC, Microcontroller
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 Y ogyakarta. 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 Y ogyakarta 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.
Y ogyakarta, 14 Desember 2015
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
1.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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
`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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
4. 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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-Modify-
Write pada ADCSRA, interrupt yang tertunda dapat dibatalkan. Hal ini juga
berakibat sama bila instruksi SBI dan CBI digunakan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 free-
running 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
2.2. 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
2.4. 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 Register Select (0 = Register instruksi 1 = Register data)
5 R/W Read / Write, untuk memilih mode tulis atau baca0 = mode tulis dan 1 = mode baca
6 E 0 = enable (mulai menahan data ke LCD) dan 1 = disabled
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
2.6. 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
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.
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.
LCDMicrocontroller
Keypad
Solenoid ValvePowerSupply
Bagian yangmembutuhkan
Sensor Berat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
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.
a
d
e
b
c
f
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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
e (mV) 0 0,2 0,4 0,6 0,8 1,0 1,2 1,4 1,6 1,8 2,0 2,1
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
0
0.5
1
1.5
2
2.5
0 1000 2000 3000 4000 5000 6000
e (m
V)
Berat (Gram)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
3.2. 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.
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.
Mulai
Inisialisasi PortMikrokontroler
Kalibrasi
Penakaran
Selesai
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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.
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
Mulai
Inisialisasi PortMikrokontroler
Timbangwadah
Tampilan LCD
Selesai
Input tombolReset (*)
Tampilan LCD
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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.
Mulai
Inisialisasi PortMikrokontroler
Tampilan LCD
Inputkeypad
TombolA=250 gr
TombolB=500 gr
TombolC=1000 gr
TombolD=2000 gr
Pilihansendiri
Tidak
Tidak
Tidak
Tidak
Ya
A
Tampilan LCD
Solenoid ON
Berat >= inputkeypad
Solenoid OFF
Selesai
Ya
Ya
Ya
A
Ya
B
B
Tidak
Tampilan LCD
Gambar 3.11. Flowchart Proses Penakaran
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 batasan-
batasan 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 PortMikrokontroler
InputKeypad
Tampilan LCD
Apakahkelipatan
10?
Apakah ≥ 50?
Apakah ≤ 2000?
Selesai
Ya
Ya
Ya
Tidak
Tidak
Tidak
Gambar 3.12. Flowchart Proses Pilihan Sendiri
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
Berikut ini adalah uraian ketelitian penakaran dengan berdasarkan pada ketelitian
ADC 10 bit dan tegangan referensi internal ADC :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
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.
Gambar 4.1. Tampak Depan Alat Penakar Berat
Dispenserbox
LCD
Keypad
Pipakeluaran
Galon air19 liter
GelasUkur 2L
Modulsensorberat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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.
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
Relay
Solenoidvalve
Pompa akuarium220 AC
Supply 5V DCdan 12/-12 V DC
Salurankeluaran
Supply 12V DCuntuk driver
Saluran daritampungan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
mikrokontroler ATMega 8535, keypad 4x4, sensor berat strain gauge, penguat instrumentasi
dan driver.
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
LCD 2x16
Inputkeypad
SistemmikrokontrolerATMega 8535
Driver untukvalve danpompa
Potensiokontras LCD
Penguatinstrumentasi
Masukan darisensor berat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
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
250
500
1.000
2.000ClearON
Enter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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.
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.
Multiplex
BebanTimba
ngan
Power Supply
PenguatInstrumentasi
Mikrokontroler
ModulTimbanga
n
LCD 2x16
Masukan220V AC
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
Tabel 4.1. Data Set Point dan Keluaran Sistem
Hubungan antara perubahan step ADC terhadap perubahan nilai berat dicari
persamaan garis linear yang berguna dalam pembuatan program perhitungan berat ADC
Set PointBerat Min Maks Sensor Penguat Sensor Penguat
(gram) Min Maks Rata-rata Min Maks Rata-rata (%) (%) (mV) (V) (mV) (V)0 67 80 73.5 15 118 66.5 - - 0.10 -2.60 0.10 1.1550 72 88 80.0 47 160 103.5 6.00 220.00 0.10 -2.55 0.10 1.18
100 81 93 87.0 90 190 140.0 10.00 90.00 0.10 -2.49 0.10 1.20150 85 102 93.5 115 231 173.0 23.33 54.00 0.10 -2.43 0.10 1.22200 91 107 99.0 146 263 204.5 27.00 31.50 0.10 -2.37 0.10 1.24250 100 117 108.5 210 307 258.5 16.00 22.80 0.10 -2.31 0.10 1.26300 107 128 117.5 265 346 305.5 11.67 15.33350 118 133 125.5 318 405 361.5 9.14 15.71500 141 154 147.5 461 535 498.0 7.80 7.00 0.20 -2.00 1.35550 148 164 156.0 501 582 541.5 8.91 5.82600 157 170 163.5 553 614 583.5 7.83 2.33650 167 180 173.5 589 658 623.5 9.38 1.23700 175 186 180.5 645 699 672.0 7.86 -0.14750 181 196 188.5 696 747 721.5 7.20 -0.40 0.25 -1.69 0.25 1.45800 194 205 199.5 730 813 771.5 8.75 1.63850 200 212 206.0 774 852 813.0 8.94 0.241000 229 236 232.5 936 1002 969.0 6.40 0.20 0.30 -1.34 0.30 1.561050 238 244 241.0 997 1065 1031.0 5.05 1.431100 245 253 249.0 1040 1092 1066.0 5.45 -0.731150 248 261 254.5 1085 1140 1112.5 5.65 -0.871200 258 267 262.5 1149 1209 1179.0 4.25 0.751250 266 277 271.5 1195 1254 1224.5 4.40 0.32 0.35 -1.00 0.35 1.661300 277 284 280.5 1242 1304 1273.0 4.46 0.311350 288 295 291.5 1282 1346 1314.0 5.04 -0.301500 310 320 315.0 1433 1507 1470.0 4.47 0.47 0.40 -0.65 0.40 1.761550 319 328 323.5 1479 1578 1528.5 4.58 1.811600 326 336 331.0 1564 1635 1599.5 2.25 2.191650 334 343 338.5 1607 1685 1646.0 2.61 2.121700 341 350 345.5 1663 1729 1696.0 2.18 1.711750 350 362 356.0 1707 1776 1741.5 2.46 1.49 0.45 -0.29 0.45 1.851800 359 370 364.5 1755 1813 1784.0 2.50 0.721850 367 378 372.5 1809 1863 1836.0 2.22 0.702000 394 405 399.5 1941 2024 1982.5 2.95 1.20 0.50 0.05 0.50 1.932050 402 416 409.0 2002 2048 2025.0 2.34 -0.102100 410 425 417.5 2035 2107 2071.0 3.10 0.332150 421 432 426.5 2090 2147 2118.5 2.79 -0.142200 428 442 435.0 2142 2205 2173.5 2.64 0.232250 438 448 443.0 2180 2245 2212.5 3.11 -0.22 0.55 0.42 0.55 2.012300 445 458 451.5 2254 2326 2290.0 2.00 1.132350 453 468 460.5 2262 2361 2311.5 3.74 0.472500 478 489 483.5 2436 2459 2447.5 2.56 -1.64 0.60 0.77 0.60 2.09
Step Berat (gr)
Tegangan KeluaranKeluaran Error Tanpa Mikrokontroler Dengan Mikrokontroler
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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.
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.
Gambar 4.9. Hubungan Antara Penguat Terhadap Sensor
y = 6.0142x - 399.64R² = 0.9996
0
500
1000
1500
2000
2500
3000
0 100 200 300 400 500 600
Rata
-rat
a St
ep (s
tep)
Berat (gram)
Hubungan Antara Step Terhadap Berat
-3
-2
-1
0
1
2
3
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7
Tega
ngan
Kel
uara
n Pe
ngua
t (V)
Tegangan Keluaran Sensor (mV)
Hubungan Antara Penguat Terhadap Sensor
Penguat tanpa mikrokontroler Penguat dengan mikrokontroler
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
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.
-4000
-2000
0
2000
4000
0 500 1000 1500 2000 2500 3000Te
gang
an K
elua
ran
(mV)
Berat (gr)
Hubungan Antara Tegangan Terhadap Berat
Sensor Penguat tanpa mikrokontroler
Penguat dengan mikrokontroler
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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
(k)
R2
(k)
Tegangan
Keluaran Sensor
(V)
Tegangan
Keluaran Penguat
(V)
Penguatan
(kali)
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
(k)
R2
(k)
Tegangan
Keluaran Sensor
Tegangan
Keluaran Penguat
Penguatan
(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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
Tabel 4.4. Data Linearitas Sensor Pada Penguat Dua Tahap
Tegangan Keluaran Sensor Tegangan Keluaran Penguat Step ADC(mV) (V) (step)0.10 0.00 400 (min)0.10 0.020.10 0.050.10 0.110.15 0.210.20 0.310.30 0.510.35 0.610.40 0.710.45 0.820.55 1.020.60 1.120.65 1.220.70 1.320.80 1.530.85 1.630.90 1.720.95 1.821.05 2.02 690 (maks)
Gambar 4.13. Hubungan Antara Keluaran Sensor Terhadap Perubahan Berat
y = 0.0005x + 0.0668R² = 0.9985
0
0.2
0.4
0.6
0.8
1
1.2
0 500 1000 1500 2000 2500
Out
put S
enso
r (m
V)
Berat (gram)
Keluaran Sensor Terhadap Berat
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
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 ADCBerat (gram) Step ADC (step)
0 250
150 420
700 610
1350 680
1800 860
Gambar 4.15. Hubungan Antara Perubahan Berat Terhadap Step ADC
y = 0.001x + 0.0046R² = 1
0
0.5
1
1.5
2
2.5
0 500 1000 1500 2000 2500
Out
put O
pam
p (V
)
Berat (gram)
Keluaran Penguat Terhadap Berat
y = 3.1458x - 974.22R² = 0.9272
-500
0
500
1000
1500
2000
2500
0 200 400 600 800 1000
Bera
t (gr
)
Step ADC (step)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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.
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.
y = 6.8966x - 2758.6R² = 1
-500
0
500
1000
1500
2000
2500
0 200 400 600 800
Bera
t (gr
am)
Step ADC (step)
Berat Terhadap Step ADC
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
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
560
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
if(ulang2<=20) // 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
4.5. 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 parameter-
parameter 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
65
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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.solenoid-
valve-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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-1
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);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-2
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-3
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;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-5
// 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-6
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; //hasil setting ADC - register
SFIOR&=0xEF;
// SPI initialization
// SPI disabled
SPCR=0x00;
// TWI initialization
// TWI disabled
TWCR=0x00;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-7
// 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-8
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-13
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"); // tampil “Terlalu Berat”
lcd_gotoxy(0,1); // 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-14
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;
elselcd_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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1-15
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2-1
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;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2-2
// 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;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2-3
// 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2-4
// 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2-5
// 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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK 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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2-7
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
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 MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L3
Rangkaian Total :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L4
Rangkaian Sederhana :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L5
Data sheet halaman 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L6
Data sheet halaman 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI