• Tidak ada hasil yang ditemukan

RANCANG BANGUN PENGUKUR BERAT BADAN DAN TINGGI BADAN DIGITAL BERBASIS MIKROKONTROLER ATMEGA 8535 DENGAN PEMROGRAMAN VISUAL BASIC SKRIPSI

N/A
N/A
Protected

Academic year: 2022

Membagikan "RANCANG BANGUN PENGUKUR BERAT BADAN DAN TINGGI BADAN DIGITAL BERBASIS MIKROKONTROLER ATMEGA 8535 DENGAN PEMROGRAMAN VISUAL BASIC SKRIPSI"

Copied!
94
0
0

Teks penuh

(1)

RANCANG BANGUN PENGUKUR BERAT BADAN DAN TINGGI BADAN DIGITAL BERBASIS MIKROKONTROLER

ATMEGA 8535 DENGAN PEMROGRAMAN VISUAL BASIC

SKRIPSI

ARI WISAJANA BARUS 170821011

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2019

(2)

RANCANG BANGUN PENGUKUR BERAT BADAN DAN TINGGI BADAN DIGITAL BERBASIS MIKROKONTROLER

ATMEGA 8535 DENGAN PEMROGRAMAN VISUAL BASIC

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Sains

ARI WISAJANA BARUS 170821011

DEPARTEMEN FISIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2019

(3)
(4)

PERNYATAAN ORISINALITAS

RANCANG BANGUN PENGUKUR BERAT BADAN DAN TINGGI BADAN DIGITAL BERBASIS MIKROKONTROLER ATMEGA 8535 DENGAN

PEMROGRAMAN VISUAL BASIC

SKRIPSI

Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Agustus 2019

Ari Wisajana Barus 170821011

(5)

RANCANG BANGUN PENGUKUR BERAT BADAN DAN TINGGI BADAN DIGITAL BERBASIS MIKROKONTROLER ATMEGA 8535 DENGAN

PEMROGRAMAN VISUAL BASIC

ABSTRAK

Telah dirancang alat untuk mengukur berat badan dan tinggi badan digital dimana memakai sensor load cell dan sensor ultrasonic. Sensor load cell untuk mengukur berat badan. Output dari load cell kecil sehingga perlu penguat yaitu hx 711. Sensor ultrasonic dengan memanfaatkan pancaran gelombang, jadi maksimal untuk mengukur tinggi badan adalah 2 meter, maka diperlukan penghalang dari permukaan kepala. Untuk mengukur tinggi badan panjang triplek 2 meter dikurang pembacaan sensor. Dari kedua sensor tersebut diolah oleh mikrokontroler8535 dengan program visual basic dan data nya dikirim ke komputer.

Kata kunci : Sensor Load cell, Sensor Ultrasonic, IMT (Indeks Massa Tubuh)

(6)

DESIGN OF A DIGITAL WEIGHT METER AND HEIGHT BASED ON THE MICROCONTROLLER ATMEGA8535

WITH A VISUAL BASIC PROGRAM

ABSTRACT

Has designed a tool to measure digital body weight and height which uses load cell sensors and ultrasonic sensors. Load cell sensor for measuring body weight. The output of the load cell is small so that the amplifier needs to be hx 711.

Ultrasonic sensors using waveforms, so the maximum for measuring height is 2 meters, so that a barrier is needed from the surface of the head. To measure the length of a 2 meter plywood length minus sensor readings. Of the two sensors processed by the microcontroller 8535 with visual basic programs and data sent to the computer.

Keywords: Load cell sensor, Ultrasonic Sensor, BMI (Body Mass Index)

(7)

PENGHARGAAN

Puji dan Syukur penulis panjatkan kepada Tuhan Yang Maha Esa, dengan limpahan berkat-Nya penyusunan skripsi ini dapat diselesaikan.

Dalam kesempatan ini penulis mengucapkan rasa hormat maupun ucapan terimakasih yang sebesar-besarnya kepada pihak yang telah membantu hingga terselesaikannya skripsi ini. Terimakasih penulis ucapkan terkhusus untuk kedua orang tua tercinta, atas do‟a, kepercayaan, dukungan, semangat, dan materi yang telah diberikan kepada penulis. Dan tak lupa pula penulis ingin mengucapkan terimakasih kepada :

1. Bapak Dr. Perdinan Sinuhaji, MS, sebagai ketua Departemen Fisika FMIPA USU

2. Bapak Dr. Bisman Perangin-angin, M.Eng.Sc, selaku sebagai pembimbing 1 yang telah membantu penulis dalam memberikan ide, saran, kritik dan juga bimbingannya.

3. Bapak Dr. Perdinan Sinuhaji, MS, selaku sebagai pembimbing 2 yang telah membantu penulis dalam memberikan ide, saran, kritik dan juga bimbingannya.

4. Dosen-dosen di Departemen Fisika yang telah memberikan ilmu selama dalam perkuliahan.

5. Pegawai-pegawai di Departemen Fisika yang telah memberikan petunjuk dan arahan selama dalam perkuliahan.

6. Teman-teman dan para sahabat yang telah menjadi keluarga kedua penulis selama ini.

7. Arwedy Adeja Barus dan Aganta Brian Barus yang telah memberikan semangat dan motivasi kepada penulis.

8. Ellyasta Ridhona Florence Br Ginting yang telah menjadi sosok seorang yang paling banyak membantu dalam penulisan skripsi ini. Dan sekaligus menjadi keluarga dalam kehidupan penulis.

Penulis menyadari sepenuhnya bahwa dalam pembuatan skripsi ini masih jauh dari kesempurnaan, untuk itu kritik dan saran yang bersifat membangun sangat penulis harapkan dari para pembaca.

Medan, Agustus 2019

Ari Wisajana Barus

(8)

DAFTAR ISI

Halaman

PENGESAHAN SKRIPSI i

PERNYATAAN ORISINALITAS ii

ABSTRAK iii

ABSTRACT iv

PENGHARGAAN v

DAFTAR ISI vi

DAFTAR GAMBAR viii

DAFTAR TABEL ix

DAFTAR LAMPIRAN x

BAB 1 PENDAHULUAN 1

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 2

1.4. Tujuan Penelitian 2

1.5 Manfaat Penelitian 3

1.6 Sistematika Penulisan 3

BAB 2 LANDASAN TEORI 4

2.1 Mikrokontroler 4

2.1.1 Apa Itu Mikrokontor 4

2.1.2 Pemanfaatan Mikrokontroler 6

2.1.3 Jenis-jenis Mikrokontroler 8

2.1.4 Komponen Penyusun Mikrokontroler 8

2.1.5 Cara Kerja Mikrokontroler 10

2.2 Fitur AVR ATMega8535 10

2.2.1 Deskripsi Pin 11

2.2.2 Arsitektur CPU ATMEGA8535 14

2.3 Sensor Ultrasonic 15

2.4 Sensor Load Cell 16

2.5 USB 18

2.6 Power Supply 19

2.7 LCD (Liquid Crystal Display) 20

2.8 Indeks Massa Tubuh (IMT) 21

BAB 3 METODOLOGI PENELITIAN 22

3.1 Diagram Blok 22

3.1.1 Fungsi Tiap Blok 22

3.2. Peralatan dan Komponen 22

3.2.1 Peralatan 22

(9)

3.2.2 Komponen 23

3.2 Perancangan Alat 23

3.3 Perancangan Mikrokontroler Atmega8535 24

3.4 Perancangan Rangkaian Sensor Load Cell 25

3.5 Perancangan Rangkaian Sensor Ultrasonic 26

3.6 Perancangan Rangkaian LCD 2x16 26

3.7 Perancangan Rangakian USB To Serial ( FTDI ) 27

3.8 Perancangan Rangkaian Regulator 28

3.9 Rangkaian Lengkap 28

3.10 Flowchart Sistem Mikrokontroler 29

3.11 Flowchart Sistem Visual Basic 30

BAB 4 PENGUJIAN DAN HASIL 31

4.1 Pengujian Mikrokontroller 31

4.2 Pengujian Regulator 32

4.3 Pengujian LCD 2x16 32

4.4 Pengujian Sensor Ultrasonic 33

4.5 Pengujian Sensor Load Cell 33

4.6 Pengujian USB 35

4.7 Pengujian Program Software Visual Basic 36

4.8 Pengujian Mikrokontroler 52

BAB 5 KESIMPULAN DAN SARAN 55

5.1. Kesimpulan 55

5.2. Saran 55

DAFTAR PUSTAKA 56

LAMPIRAN

(10)

DAFTAR GAMBAR

Nomor Gambar Judul Halaman 2.1 Komponen Penyusun Mikrokontroler 8 2.2 Tahap-tahap persiapan suatu mikrokontroler 10 2.3 Deskripsi Pin Mikrokontroler ATMega8535 11 2.4 Block Diagram Architecture ATmega8535 14 2.5 Sensor Ultrasonic 15 2.6 Cara kerja sensor ultrasonic 16 2.7 Sensor Load Cell 18

2.8 LCD 21

3.1 Diagram Blok Rangkaian 22 3.2 Perancangan Alat 23 3.3 Rangkaian Mikrokontroler Atmega8535 24 3.4 Rangkaian sensor load cell 25 3.5 Rangkaian sensor Ultrasonic 26 3.6 Rangkaian LCD 2x16 26 3.7 Rangkaian USB To Serial (FTDI) 27 3.8 Rangkaian Regulator 28 3.9 Rangakian Lengkap 28 3.10 Flowchart Sistem Mikrokontroler 29 3.11 Flowchart Sistem Visual Basic 30 4.1 Pengujian mikrokontroler atmega8535 31 4.2 Data base hasil 51 4.3 Data pada visual basic 52

(11)

DAFTAR TABEL

Nomor Tabel Judul Halaman

2.1 Fungsi alternatif pin-pin pada port B 12 2.2 Fungsi alternatif pin-pin pada port C 13 2.3 Fungsi alternatif pin-pin pada port D 13 4.1 Pengujian regulator 32 4.2 Persen Kesalahan 51

(12)

DAFTAR LAMPIRAN

Lampiran 1 Program Visual Basic Lampiran 2 Program Mikrokontroler Lampiran 3 Rangkaian Lengkap Lampiran 4 Gambar Alat

Lampiran 5 Datasheet

(13)

BAB 1 PENDAHULUAN

1.1 Latar Belakang

Perkembangan Teknologi Informasi dan Komunikasi yang sangat cepat berkembang pada era sekarang ini telah memberikan dampak globalisasi, persaingan bisnis, tuntutan pekerjaan, dan pola kehidupan manusia yang semakin meningkat.

Kemajuan teknologi menyebabkan manusia menciptakan banyak alat yang dapat membantu meringankan suatu pekerjaan yang dilakukan. Salah satunya adalah dengan terciptanya alat yang digunakan sebagai pengukur tinggi dan berat badan manusia. Mengukur berat badan, manusia cukup menaiki alatnya saja. Sedangkan untuk mengukur tinggi badan, pada umumnya manusia masih dilakukan secara manual dengan menggunakan alat ukur seperti meteran dan penggaris.

Hampir setiap orang mendambakan berat badan ideal, karena ini merupakan hal yang bagus, baik dari segi penampilan fisik maupun dari segi kesehatan. Terutama kaum muda lebih banyak yang mendambakannya karena dengan berat yang ideal penampilan fisik akan menjadi lebih menarik. Berbagai cara dilakukan orang agar dapat mencapai berat badan yang ideal mulai dari mengatur pola makan, diet ketat, berolahraga yang teratur sampai dengan meminum obat-obatan. Sering kali dijumpai di tempat-tempat seperti rumah sakit, apotik, dan sanggar kebugaran bahwa alat pengukur tinggi dan berat badan masih dioperasikan secara manual dan terpisah, sehingga sulit untuk mengetahui apakah berat badannya telah ideal atau belum.

Umumnya masyarakat masih banyak yang belum mengetahui berapa berat badan yang sesuai untuk dirinya dan hanya menerka-nerka saja atau melihat sebatas pandangannya hasil pengukuran berat badannya.

Alat ini bisa dikatakan penting bagi manusia karena kegunaannya berbanding lurus dengan kesehatan tubuh manusia itu sendiri. Banyak cara yang dilakukan oleh manusia untuk mendapatkan kesehatan dan bentuk badan yang ideal, seperti berolahraga dan menjaga pola makan sehari-hari. Terkadang untuk mengetahui badan yang ideal, kita harus menggunakan dua alat sekaligus untuk mengetahui tinggi dan berat badan kita. Hal ini masih berlanjut dengan mencari tahu perbandingan antara tinggi dan berat badan yang ideal di media informasi, seperti

(14)

internet, buku, makalah dll. [1][3]

Berdasarkan permasalahan yang dikemukakan diatas, penulis ingin membuat

“Rancang Bangun Pengukur Berat Badan dan Tinggi Badan Digital Berbasis Mikrokontroler ATMega 8535 Dengan Pemrograman Visual Basic” sebagai judul skripsi. Dengan tujuan agar waktu yang digunakan manusia lebih efisien untuk mengetahui tinggi dan berat badan ideal dengan menggunakan alat ini.

1.2 Rumusan Masalah

Permasalahan utama pada pembuatan Rancang Bangun Pengukur Berat Badan dan Tinggi Badan Digital Berbasis Mikrokontroler ATMega 8535 Dengan Pemrograman Visual Basic ini:

1. Bagaimana pemrograman pengukur berat badan dan tinggi badan digital.

2. Bagaimana mengaplikasikan mikrokontroller ATmega 8535 sebagai pengontrol semua sistem pada pengukur berat badan dan tinggi badan digital.

1.3 Batasan Masalah

Dalam perencanaan penulisan ini terdapat beberapa hipotesis sebagai berikut:

1. Rangakaian Mikrokontroler yang di gunakan adalah mikrokontroler ATmega 8535.

2. Sistem berbasis mikrokontroler ATmega 8535 yang bertugas mengatur seluruh kegiatan sistem yang dirakit.

3. Nilai keluaran sensor ditampilkan pada PC.

4. Sensor yang digunakan adalah Sensor Ultrasonic dan Load Cell.

5. Sistem komunikasi yang digunakan adalah RS 232.

6. Untuk mengukur tinggi badan maksimum 2 meter dan untuk berat badan maksimum 180 kg.

7. Visual Basic untuk sarana menyimpan data dan tersimpan ke database.

1.4 Tujuan Penulisan

Adapun tujuan dari penulisan penelitian ini yaitu sebagai berikut :

1. Memanfaatkan Sensor Ultrasonic dan Load Cell sebagai sistem pengukur berat badan dan tinggi badan digital.

(15)

2. Mengaplikasikan mikrokontroler atmega 8535 sebagai pusat kontrol dalam sistem elektronika.

1.5 Manfaat Penelitian

Adapun manfaat dari penelitian ini yaitu sebagai berikut:

1. Melatih kemampuan mahasiswa untuk memecahkan suatu permasalahan yang ada, yaitu membuat. Rancang Bangun Pengukur Berat Badan dan Tinggi Badan Digital Berbasis Mikrokontroler Atmega 8535 Dengan Pemrograman Visual Basic.

2. Mikrokontroler ATmega 8535 digunakan sebagai otak pada sistem elektronika pada rancangan alat.

3. Dengan perancangan alat ini diharapkan dapat membantu meminimalisi masalah pengukuran berat badan dan tinggi badan.

1.6 Sistematika Penulisan

Untuk mempermudah pembahasan dan penulisan laporan ini, penulis membuat susunan bab – bab yang membentuk laporan ini dalam sistematika penulisan laporan dengan urutan sebagai berikut :

BAB 1 PENDAHULUAN

Dalam bab ini berisikan mengenai latar belakang, rumusan masalah, tujuan penulisan, batasan masalah, metode penulisan, serta sistematika penulisan.

BAB 2 TINJAUAN PUSTAKA

Dalam babini dijelaskan tentang teori pendukung yang digunakan untuk pembahasan dan cara kerja dari rangkaian dan bahasa program yang digunakan, serta karakteristik dari komponen-komponen pendukung.

BAB 3 METODE PENELITIAN

Bab ini berisikan tentang proses perancangan dan pembuatan alat. Mulai dari perancangan dan pembuatan sistem secara hardware atau software.

(16)

BAB 4 HASIL DAN PEMBAHASAN

Dalam bab ini akan dibahas hasil analisa dari rangkaian dan sistem kerja alat, penjelasan mengenai rangkaian-rangkaian yang digunakan, penjelasan mengenai program yang diisikan ke mikrokontroller Atmega 8535.

BAB 5 KESIMPULAN DAN SARAN

Dalam bab ini menjelaskan kesimpulan dan saran dari alat ataupun data yang dihasilkan dari alat. Bab ini juga merupakan akhir dari penulisan skripsi ini.

(17)

BAB 2

TINJAUAN PUSTAKA

2.1 Mikrokontroler

2.1.1 Apa itu Mikrokontroler

Mikrokontroler adalah sebuah sistem komputer fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti prosesor, memori (sejumlah kecil RAM, memori program, atau keduanya), dan perlengkapan input output. Mikrokontroler adalah salah satu dari bagian dasar dari suatu system komputer. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu komputer pribadi dan komputer mainframe, mikrokontroler dibangun dari elemen-elemen dasar yang sama. Secara sederhana, komputer akan menghasilkan output spesifik berdasarkan inputan yang diterima dan program yang dikerjakan.

Seperti umumnya komputer, mikrokontroler adalah alat yang mengerjakan instruksi-instruksi yang diberikan kepadanya. Artinya, bagian terpenting dan utama dari suatu system terkomputerisasi adalah program itu sendiri yang dibuat oleh seorang programmer. Program ini menginstruksikan komputer untuk melakukan jalinan yang panjang dari aksi-aksi sederhana untuk melakukan tugas yang lebih kompleks yang diinginkan oleh programmer.

Dengan kata lain, mikrokontroler adalah suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis data. Sekedar contoh, bayangkan diri Anda saat mulai belajar membaca dan menulis, ketika Anda sudah bisa melakukan hal itu Anda bisa membaca tulisan apapun baik buku, cerpen, artikel dan sebagainya, dan Anda pun bisa pula menulis hal-hal sebaliknya. Begitu pula jika Anda sudah mahir membaca dan menulis data maka Anda dapat membuat program untuk membuat suatu sistem pengaturan otomatik menggunakan mikrokontroler sesuai keinginan Anda.

Mikrokontroler merupakan komputer didalam chip yang digunakan untuk mengontrol peralatan elektronik, yang menekankan efisiensi dan efektifitas biaya.

Secara harfiahnya bisa disebut “pengendali kecil” dimana sebuah sistem elektronik yang sebelumnya banyak memerlukan komponen-komponen pendukung seperti IC

(18)

TTL dan CMOS dapat direduksi/diperkecil dan akhirnya terpusat serta dikendalikan oleh mikrokontroler ini.

Mikrokonktroler digunakan dalam produk dan alat yang dikendalikan secara automatis, seperti sistem kontrol mesin, remote controls, mesin kantor, peralatan rumah tangga, alat berat, dan mainan. Dengan mengurangi ukuran, biaya, dan konsumsi tenaga dibandingkan dengan mendesain menggunakan mikroprosesor memori, dan alat input output yang terpisah, kehadiran mikrokontroler membuat kontrol elektrik untuk berbagai proses menjadi lebih ekonomis. Dengan penggunaan mikrokontroler ini maka :

a) Sistem elektronik akan menjadi lebih ringkas.

b) Rancang bangun sistem elektronik akan lebih cepat karena sebagian besar dari sistem adalah perangkat lunak yang mudah dimodifikasi.

c) Pencarian gangguan lebih mudah ditelusuri karena sistemnya yang kompak.

Agar sebuah mikrokontroler dapat berfungsi, maka mikrokontroler tersebut memerlukan komponen eksternal yang kemudian disebut dengan sistem minimum.

Untuk membuat sistem minimal paling tidak dibutuhkan sistem clock dan reset, walaupun pada beberapa mikrokontroler sudah menyediakan sistem clock internal, sehingga tanpa rangkaian eksternal pun mikrokontroler sudah beroperasi. Yang dimaksud dengan sistem minimal adalah sebuah rangkaian mikrokontroler yang sudah dapat digunakan untuk menjalankan sebuah aplikasi. Sebuah IC mikrokontroler tidakakan berarti bila hanya berdiri sendiri. Pada dasarnya sebuah sistem minimal mikrokontroler AVR memiliki prinsip yang sama. Pada pembahasan ini Mikrokntroler yang digunakan adalah AVR Atmega 8535. [10]

2.1.2 Pemanfaatan Mikrokontroler

Mikrokontroler ada pada perangkat elektronik di sekeliling kita misalnya handphone, MP3 player, DVD, televisi, AC,dll. Mikrokontroler juga dipakai untuk keperluan mengendalikan robot. Baik robot mainan, maupun robot industry.

Mikrokontroler juga digunakan dalam produk dan alat yang dikendalikan secaara otomatis, seperti system control mesin, romote control, mesin kantor, perlatan rumah tangga, alat berat, dan mainan. Dengan mengurangi ukuran, biaya, dan konsumsi tenaga kerja dibandingkan dengan mendesain menggunakan mikroprosesor memori,

(19)

dan alat input output yang terpisah, kehadiran mikrokontroler membuat control elektrik untuk berbagai proses menjadi lebih ekonomis. Dengan menggunakan mikrokontroler ini, maka :

 System elektronik akan menjadi lebih ringkas

 Rancang bangun system elektronik akan lebih cepat karena sebagian besar dari system adalah perangkat lunak yang mudah di modifikasi

 Pencarian gangguan lebih mudah ditelusuri karena system nya ynag kompak Namun demikian tidak sepenuhnya mikrokontroler bisa mereduksi komponen IC TTL dan CMOS yang sering kali masih diperlukan untuk aplikasi kecepatan tinggi atau sekadar menambah jumlah saluran masukan dan keluartan (I/O). Dengan kata lain, mikrokontroler adalah versi mini atau mikro dari sebuah komputerkarena mikrokontroler adalah mengandung beberapa peripheral yang langsung bisa dimanfaatkan, misalnya port parallel, port serial, komparator, konversi digital ke analog (DAC), mkonversi analog ke digital dan sebagainya hanya menggunakan system minimum yang tidak rumit atau kompleks.

Agar sebuah mikrokontroler dapat berfungsi, mikrokontroler tersebut memerlukan komponen eksternal yang kemudian disebut dengan system minimum.

Untuk membuat system minimal paling tidak dibutuhkan system clock dan reset, walaupun pada beberapa mikrokontroler sudah menyediakan system clock internal, sehingga tanpa rangkaian eksternal pun mikrokontroler sudah beroperasi. Untuk merancang sebuah system berbasis mikrokontroler, kita memerlukian beberapa perangkat keras dan perangkat lunak, yaitu :

 System minimal mikrokontroler

 Software pemrograman dan kompliern serta downloader

Yang di maksud dengan system minimal adalah sebuah rangkaian mikrokontroler yang sudah dapat digunakan untuk menjalankan sebuah aplikasi. Sebuah IC mikrokontroler tidak akan berarti bila hanya berdiri sendiri. Pada dasarnya sebuah system minimal mikrokontroler AVR memiliki prinsip yang sama, yang terdiri 4 bagian, yaitu :

 Prosesor, yaitu mikrokontroler itu sendiri.

 Rangkaian reset agar mikrokontroler dqapat menjalankan program mulai dari awal.

(20)

 Rangkaian clock, yang digunakan untuk memberi detak pada CPU.

 Rangkaian catu daya, yang digunakan untuk member sumber daya. [10]

2.1.3 Jenis-jenis Mikrokontroler

Secara teknis hanya ada 2 macam mikrokontroler. Pembagian ini di dasarkan pada kompleksitas instruksi-instruksi yang dapat diterapkan pada mikrokontroler tersebut. Pembagian itu yaitu, RISC dan CISC serta masing-masing mempunyai keturunan atau keluarga sendiri-sendiri.

 RISC merupakan kependekan dari Reduced Instruction Set Computer.

Instruksi ysng dimiliki terbatas, tetapi memiliki fasilitas yang lebih banyak.

 Sebaliknya, CISC kependekan dari Complex Instruction Set Computer.

Istruksi bisa dikatakan lebih lengkap tapi dengan fasilitas secukupnya.[10]

2.1.4 Komponen Penyusun Mikrokontroler

Mikrokontroler terdiri dari bagian / part seperti yang terlihat dibawah ini.

Gambar 2.1 Komponen Penyusun Mikrokontroler

Pada gambar 1 dapat dilihat suatu mikrokontroler standart yang disusun oleh komponen-komponen sebagai berikut:

a. CPU (Central Processing Unit)

CPU ini merupakan pengontrol utama dalam suatu mikrokontroler.

Jangan salah mengartikan CPU ini sebagai „CPU‟ komputer anda dirumah. CPU pada mikrokontroler ada yang berukuran 8 bit ada pula yang berukuran 16 bit. CPU ini akan membaca program yang tersimpan di dalam ROM dan melaksankannya.

(21)

b. ROM (Read Only Memory)

ROM merupakan suatu memori (alat untuk mengingat) yang memiliki sifat hanya bisa dibaca saja. Dengan demikian ROM tidak dapat ditulisi.

Dalam dunia mikrokontroler, ROM digunakan untuk menyimpan program bagi mikrokontroler tersebut. Program tersimpan dalam format biner („0‟ atau „1‟). Susunan bilangan biner tersebut bila telah dibaca oleh mikrokontroler akan memiliki arti sendiri.

c. RAM (Random Access Memory)

Berbeda dengan ROM yang bersifat hanya baca, maka RAM adalah jenis memori yang selain dapat dibaca juga dapat ditulisi berulang-kali.

Tentunya ada semacam data yang bisa berubah pada saat mikrontroler tersebut bekerja. Perubahan data tersebut tentunya juga harus disimpan ke dalam memori. Untuk itulah dipakai memori jeniks RAM. Namun RAM tersebut memiliki sifat tidak dapat mempertahankan isinya bila catu daya listrik kepadanya dihilangkan.

d. I/O (Input/Output)

Untuk berkomunikasi dengan dunia luar, maka mikrokontroler menggunakan terminal I/O (port I/O). Port tersebut disebut sebagai Input/Output karena pada umumnya port tersebut dapat dipakai sebagai masukan atau sebuah keluaran. Sebagai masukan contohnya adalah pada saat mikrokontroler harus mengawasi sebuah saklar (switch) untuk mendeteksi apakah saklar tersebut ditekan atau tidak. Sebagai keluaran contohnya adalah pada saat mikrokontroler harus menyalakan sebuah LED.

e. Komponen Lainnya

Beberapa mikrokontroler memiliki timer/counter, lainnya memiliki ADC (Analaog To Digital Converter), dan komponen-komponen lainnya.

Pemilihan komponen tambahan yang sesuai dengan tugas kerja mikrokontroler akan sangat membantu perancangan sehingga dapat mempertahankan ukuran yang kecil. Apabila komponen-komponen diatas belum ada padaa suatu mikrokontroler, umumnya komponen

(22)

tersebut masih dapat ditambahkan pada system mikrokontroler dengan melalui port-portnya.[10]

2.1.5 Cara Kerja Mikrokontroler

Untuk dapat membuat mikrokontroler bekerja, ada banyak hal yang harus dikerjakan. Pertama adalah membuat program. Program yang dibuat harus sesuai dengan jenis mikrokontroler yang digunakan, hal ini karena tiap mikrokontroler memiliki bahasa pemrograman tersendiri yang mungkin tidak kompatibel. Setelah anda membuat program dengan menggunakan editor teks, maka anda harus mengkopilasi program tersebut sesuai dengan tipe mikrokontroler yang dipakai.

Secara sederhana tujuan mengkompilasi adalah untuk merubah dari bahasa manusia (op-code) menjadi bahasa mikrokontroler.

Setelah itu program yang telah dikompilasi ( biasanya dalam format.hex) dimasukkan kedalam ROM dari mikrokontroler tersebut. Ada jenis mikrokontroler yang tidak memiliki ROM internal. Untuk itu andaharus memasukkan kedalam ROM (dalam hal ini dipakai EPROM) menggunakan EPROM programmer. Jika mikrokontroler yang anda gunakan memiliki EPROM memiliki ROM internal, maka dengan menggunakan programmer mikrokontroler, program akan dimasukkan kedalam ROM internalnya. Pada tahap ini anda sudah memiliki mikrokontroler yang dapat berfikir. Setelah memasang kristal/resonator dan catu daya, maka mikrokontroler tersebut akan bekerja sesuai dengan program yang anda berikan.[10]

Gambar 2.2 Tahap-tahap persiapan suatu mikrokontroler

2.2 Fitur AVR ATMega8535

Mikrokontroler AVR ATmega8535 merupakan mikrokontroler 8 bit dengan konsumsi daya rendah produksi ATMEL. Secara keseluruhan Mikrokontroler ATmega8535 memiliki fitur sebagai berikut :

Tulis program pada editor teks

Kompilasi program

tersebut

Masukkah program kedalam mikrokontroler

Mikokontroler ready in action

(23)

a. Arsitektur RISC (Reduced Instruction Set Computer).

b. CPU yang terdiri atas 32 buah register.

c. 16 MIPS (Mega Instruction per Second) pada 16 MHZ.

d. 8 Kbytes In-System Programmable Flash (10000 siklus hapus/tulis).

e. 512 bytes SRAM.

f. 512 bytes In-System Programmable EEPROM (100.000 siklus hapus/tulis).

g. Dua 8 bit timer/counter dengan Prescaler terpisah.

h. Satu 16 bit timer/counter dengan Preceler terpisah yang terpisah yang dapat digunakan untuk mode compare, dan mode capture.

i. 4 saluran PWM. 8 terminal, 10 bit ADC.

j. Analog comparator dalam chip.

k. Serial UART terprogram.

l. Antarmuka serial SPI master/slave

m. Mode power down dan catu rendah senggang.

n. Sumber interupsi internal dan eksternal.

o. Saluran I/O sebanyak 32 buah yaitu PORT A,PORT B, PORT C, dan PORT D. [2][10]

Gambar 2.3 Deskripsi Pin Mikrokontroler ATMega8535

2.2.1 Deskripsi Pin

Mikrokontroler AVR ATMega8535 memiliki 40 pin dengan 32 pin diantaranya digunakan sebagai port paralel. Satu port paralel terdiri dari 8 pin, sehingga jumlah port pada mikrokontroler adalah 4 port,

(24)

yaitu port A, port B, port C dan port D. Sebagai contoh adalah port A memiliki pin antara port A.0 sampai dengan port A.7, demikian selanjutnya untuk port B, port C, port D. Konfigurasi pin-pin yang terdapat pada ATmega8535 antara lain :

a. VCC

Merupakan tegangan suplai (sumber tegangan) yang dibutuhkan Mikrokontroler ATmega 8535.

b. GND Ground.

c. Port A (PA7..PA0)

Port A berfungsi sebagai input analog ke A/D Converter.Port A juga berfungsi sebagai 8-bit bi-directional I/O port. Jika port A sebagai A/D converter tidak digunakan. Pin-pin pada port dapat memberikan resistor pull-up internal ( dipilih untuk setiap bit ).

d. Port B (PB7..PB0)

Port B adalah 8-bit bi-directional I/O port dengan resistor pull-up internal (dipilih untuk setiap bit). Ketika port B digunakan sebagai input dan di pull-down secara langsung, maka port B akan mengeluarkan arus jika internal pull-up resistor diaktifkan.

Tabel 2.1 Fungsi alternatif pin-pin pada port B

Pin Fungsinya

PB7 SCK (SPI Bus Serial Clock)

PB6 MISO (SPI Bus Master Input/Slave Output) PB5 MOSI (SPI Bus Master Output/Slave Input) PB4 SS (SPI Slave Select Input)

AIN1 (Analog Comparator Negative Input)

PB3 OC0 (Timer/Counter0 Output Compare Match Output) AIN0 (Analog Comparator Positive Input)

PB2 INT2 (External Interrupt 2 Input)

PB1 T1 (Timer/Counter1 External Counter Input) T0 (Timer/Counter0 External Counter Input) PB0 XCK (USART External Clock Input/Output)

(25)

e. Port C (PC7..PC0)

Port C adalah 8-bit bi-directional I/O port yang dengan resistor pull- up internal yang (dipilih untuk setiap bit). Ketika port C digunakan sebagai input dan di pull-down secara langsung, maka port C akan mengeluarkan arus jika internal pull-up resistor diaktifkan. Pada port C terdapat fungsi berbagai fitur khusus seperti tabel berikut : f. Port D (PD7..PD0)

Port D adalah 8-bit bi-directional I/O port yang dengan resistor pull- up internal yang (dipilih untuk setiap bit). Ketika port D digunakan sebagai input dan di pull-down secara langsung, maka port D akan mengeluarkan arus jika internal pull-up resistor diaktifkan. Pada port D terdapat fungsi berbagai fitur khusus seperti tabel berikut : Tabel 2.2 Fungsi alternatif pin-pin pada port C

Pin Fungsinya

PC7 TOSC2 (Timer Oscillator Pin 2) PC6 TOSC1 (Timer Oscillator Pin 1)

SDA (Two-wire Serial Bus Data Input/Output PC1 Line)

PC0 SCL (Two-wire Serial Bus Clock Line)

Tabel 2.3 Fungsi alternatif pin-pin pada port D

Pin Fungsinya

PD7 OC2 (Timer/Counter2 Output Compare Match Output) PD6 ICP1 (Timer/Counter1 Input Capture Pin)

PD5 OC1A (Timer/Counter1 Output Compare A Match Output) PD4 OC1B (Timer/Counter1 Output Compare B Match Output) PD3 INT1 (External Interrupt 1 Input)

PD2 INT0 (External Interrupt 0 Input) PD1 TXD (USART Output Pin)

PD0 RXD (USART Input Pin) [10]

(26)

2.2.2 Arsitektur CPU ATMEGA8535

Untuk memaksimalkan kinerja dan paralelisme, AVR menggunakan arsitektur Harvard dengan memori-memori dan bus-bus terpisah untuk program dan data. Instruksi dalam program memori dijalankan dengan tingkat pipelining tunggal. Sementara satu instruksi dijalankan, instruksi berikutnya belum diambil dari memori program. Hal ini memungkinkan instruksi yang akan dieksekusi dalam setiap siklus waktu. Memori program ini disebut In System Reprogrammable Flash memory.[10]

Gambar 2.4 Block Diagram Architecture ATmega8535

(27)

2.3 Sensor Ultrasonic

Sensor Ultrasonik adalah alat elektronika yang kemampuannya bisa mengubah dari energy listrik menjadi energy mekanik dalam bentuk gelombang suara ultrasonic. Sensor ini terdiri dari rangkaian pemancar Ultrasonic yang dinamakan transmitter dan penerima ultrasonic yang disebut receiver. Alat ini digunakan untuk mengukur gelombang ultrasonic.

Gelombang ultrasonic adalah gelombang mekanik yang memiliki cirri-ciri longitudinal dan biasanya memiliki frekuensi di atas 20 Khz. Gelombong Utrasonic dapat merambat melalui zat padat, cair maupun gas. Gelombang Ultrasonicadalah gelombang rambatan energi dan momentum mekanik sehingga merambat melalui ketiga element tersebut sebagai interaksi dengan molekul dan sifat enersia medium yang dilaluinya.

Gambar 2.5 Sensor Ultrasonic

Cara kerja sensor ultrasonik adalah sinyal dipancarkan oleh pemancar ultrasonik dengan frekuensi tertentu dan dengan durasi waktu tertentu. Sinyal tersebut berfrekuensi diatas 20kHz. Untuk mengukur jarak benda (sensor jarak), frekuensi yang umum digunakan adalah 40kHz. Sinyal yang dipancarkan akan merambat sebagai gelombang bunyi dengan kecepatan sekitar 340 m/s. Ketika menumbuk suatu benda, maka sinyal tersebut akan dipantulkan oleh benda tersebut.

Setelah gelombang pantulan sampai di alat penerima, maka sinyal tersebut akan diproses untuk menghitung jarak benda tersebut.

(28)

Gambar 2.6 Cara kerja sensor ultrasonic

Jarak benda dihitung berdasarkan rumus : S = 340.t/2, dimana S merupakan jarak antara sensor ultrasonik dengan benda (bidang pantul), dan t adalah selisih antara waktu pemancaran gelombang oleh transmitter dan waktu ketika gelombang pantul diterima receiver. Fungsi Pin-pin sensor ultrasonic yaitu: VCC adalah 5V Power Supply. Pin sumber tegangan positif sensor. Trig adalah Trigger/Penyulut.

Pin ini yang digunakan untuk membangkitkan sinyal ultrasonik. Echo adalah Receive/Indikator. Pin ini yang digunakan untuk mendeteksi sinyal pantulan ultrasonik. GND adalah Ground/0V Power Supply. Pin sumber tegangan negatif sensor. Karakteristik sensor ultrasonic adalah tegangan sumber operasi tunggal 5.0 V, konsumsi arus 15 mA, frekuensi operasi 40 KHz, minimum pendeteksi jarak 0.02 m (2 cm), maksimum pendeteksian jarak 4 m, sudut pantul gelombang pengukuran 15 derajat, minimum waktu penyulutan 10 mikrodetik dengan pulsa berlevel TTL, pulsa deteksi berlevel TTL dengan durasi yang bersesuaian dengan jarak deteksi, dan Dimensi 45 x 20 x 15 mm.[4]

(29)

2.4 Sensor Load Cell

Load Cell adalah alat electromekanik yang biasa disebut Transducer, yaitu gaya yang bekerja berdasarkan prinsip deformasi sebuah material akibat adanya tegangan mekanis yang bekerja, kemudian merubah gaya mekanik menjadi sinyal listrik. Untuk menentukan tegangan mekanis didasarkan pada hasil penemuan Robert Hooke, bahwa hubungan antara tegangan mekanis dan deformasi yang diakibatkan disebut regangan. Regangan ini terjadi pada lapisan kulit dari material sehingga menungkinkan untuk diukur menggaunakan sensor regangan atau Strain Gauge.

Load cell terdiri dari beberapa tipe, diantaranya adalah Load Cell Double Ended Beam, Load Cell Single Ended Beam, Load Cell S Beam, Load Cell single Point, Load Cell type Canister, dan sebagainya. Load Cell yang paling sederhana adalah load cell yang terdiri dari Bending beam dan strain gauge.

Load Cell Bendig Beam adalah tipe load cell yang paling banyak digunakan dalam timbangan. Selama proses penimbangan, beban yang diberikan mengakibatkan reaksi terhadap elemen logam pada load cell yang mengakibatkan perubahan bentuk secara elastis. Gaya yang ditimbulkan oleh regangan ini (positif dan negatif) di conversikan kedalam sinyal listrik oleh strain gauge (pengukur regangan) yang terpasang pada spring element. Load cell yang paling sederhana adalah load cell yang terdiri dari bending beam dan strain gauge. Sering kali komponen tersebut dilengkapi dengan elemen tambahan (housing, sealing, dll) untuk melindungi elemen strain gauge. Strain gauge merupakan konduktor yang diatur dalam pola zigzag pada permukaan sebuah membrane. Ketika membrane tersebut meregang, maka resistansinya akan meningkat.

Strain Gauge merupakan sensor yang digunakan untuk mengukur berat atau beban dari suatu benda dalam ukuran besar. Sensor strain gauge ini banyak diaplikasikan pada jembatan timbang mobil/truk atau alat ukur berat dalam skala besar. Sensor strain gauge adalah grid metal foil tipis yang dilekatkan pada permukaan dari Load Cell. Apabila Load cell di beri beban, maka terjadi strain dan kemudian ditransmisikan ke foil grid. Tahanan foil grid berubah sebanding dengan strain induksi beban. Sensor strain gauge pada umumnya adalah tipe metal foil, dimana konfigurasi grid dibentuk oleh proses photoeching. Karena prosesnya sederhana, maka dapat dibuat bermacam-macam ukuran gauge dan bentuk grid.

(30)

Untuk macam gauge terpendek yang tersedia adalah 0.20mm, dan yang terpanjang 102 mm. Tahanan gauge standar adalah 120 mm dan 350Ω, bahkan untuk keperluan khusus gauge ada juga yang tersedia dengan tahanan 500Ω, 1000Ω dan 10kΩ.

Load Cell memiliki bermacam-macam karakteristik yang bisa diukur, tergantung pada jenis logam yang dipakai, bentuk load cell, dan ketahanan dari lingkungan sekitar. Strain gauge merupakan konduktor yang diatur dalam pola zigzag pada permukaan sebua membrane. Ketika membran tersebut meregang, maka resistansinya akan meningkat. Strain gauges biasanya diatur dalam formasi 4 simetris sehingga membentuk Jembatan Wheatstone. Diagram di bawah memperlihatkan peristiwa yang terjadi ketika lempengan logam yang dilengkapi dengan 4 gauge (pengukur) diberi beban atau tekanan. Pada peristiwa ini, pembengkokan lepengan logam ke arah bawah akan mengakibatkan regangan pada kedua gauge dibagaian atas dan memampatkan kedua gauge pada bagian bawah. Dalam hal ini ketika gauge mengalami peregangan, maka nilai resistansinya akan meningkat, dan sebaliknya gauge yang mengalami pemampatan nilai resistansinya akan berkurang dari nilai normal.[5]

Gambar 2.7 Sensor Load Cell

2.5 USB

Universal Serial Bus disingkat USB adalah seperangkat Interface untuk komunikasi data serial antara berbagai device dan peripheral pada suatu sistem elektronik. Pada saat ini USB menjadi suatu standar komunikasi data serial yang menggantikan komunikasi data serial RS232. Keuntungan penggunaanUSB adalah

(31)

fleksibel dan mudah digunakan, transfer data yang cepat dan andal, konsumsi daya rendah, dan biaya murah.

Komunikasi data USB mendukung 4 macam mode tarnsfer data yaitu :

1. Control Transfer, adalah pertukaran informasi mengenai konfigurasi, setup, command/ perintah antar host (komputer deskop/laptop) dengan peripheral/

device.

2. Isochronous Transfer, adalah pertukaran informasi dengan kecepatan tinggi yang bersifat “Time Critical” dan umumnya digunakan pada streaming device seperti kamera video dan speaker real time.

3. Bulk Transfer, adalah pertukaran informasi menggunakan paket data berukuran besar dan tidak bersifat “Time Critical”. Mode ini umum digunakan pada device seperti printer dan scanner.

4. Interrupt Transfer, adalah pertukaran informasi menggunakan pakat data berukuran kecil dan umumnya digunakan pada device seperti mouse dan keyboard.[8]

2.6 Power Supply

Power supply merupakan komponen yang menyebabkan komputer bisa bekerja karena arus listrik yang mengalir. Power supply berfungsi memberikan tenaga atau daya listrik agar semua komponen komputer bisa beroperasi.

Dua mode operasi dengan cara ini dapat diidentifikasi pada konverter flyback:

transfer energi penuh/lengkap (mode diskontinu), yang mana semua energi yang disimpan dalam transformer selama periode penyimpanan energi ( periode on) ditransfer ke keluaran selama periode flyback (periode off) dan transfer energi tidak penuh/tidak lengkap (mode kontinu), yang mana bagian energi tersimpan dalam transformer pada akhir periode on tinggal dalam transformer sampai pad awal periode on berikutnya.

Fungsi – fungsi transfer sinyal kecil untuk kedua mode operasi ini sangat berbeda, dan mereka dijelaskan secara terpisah. Dalam praktek, bila sebuah kisaran lebar tegangan masukan, tegangan keluaran dan beban arus dibutuhkan, konverter flyback akan dibutuhkan untuk operasi (dan stabil) pada kedua mode karena mode akan dijumpai pada beberapa titik pada jangkauan operasi. Sebagai hasil perubahan

(32)

fungsi transfer pada titik dimana terdapat perpindahan dari satu mode ke mode lainnya, bersama – sama digabungkan menjadi sebuah komponen dalam transformer, keluaran induktor dan aksi – aksi diode roda gaya/ flywheel, konverter flyback dapat menjadi yang tersulit ditengah – tenga perancangan.[9]

2.7 LCD (Liquid Crystal Display)

Liquid Crystal Display atau biasa disebut LCD adalah alat tampilan yang biasa digunakan untuk menampilkan karakter ASCII sederhana, dan gambar-gambar pada alat-alat digital seperti jam tangan, kalkulator dan lain lain. Deskripsi sederhana cara kerja dari sebuah LCD matrix adalah sebuah Twisted Nematic (TN) Liquid Crystal Display, yang terdiri dari 2 material yang terpolarisasi, 2 buah kaca, sebuah bentuk elemen elektroda untuk menentukan pixel, dan Integrated Circuit (IC) untuk mengalamatkan baris dann kolom.

Untuk menentukan posisi dari setiap pixel, sebuah jala-jala dibentuk dari Indium Tin Oxide (semi transparent metal oxide) dan arus diberikan pada posisi pixel tertentu untuk mengubah orientasi dari material Liquid Crystal yang kemudian akan mengubah pixel dari white pixel ke black pixel. Orientasi menentukan apakah cahaya akan dilewatkan atau ditolak. Jika cahaya ditolak berarti area tesebut akan menjadi gelap (black pixel). Twisted Nematic LCD cukup baik untuk menampilkan tampilan sederhana yang mempunyai informasi yang sama dan ditampilkan berulang-ulang, seperti jam tangan, kalkulator dan lain lain.

Walaupun tampilan hexagonal bar adalah bentuk paling sederhana pengaturan elektroda, hampir semua bentuk sederhana dapat ditampilkan.LCD (Liquid Crystal Display) adalah suatu jenis media tampil yang menggunakan kristal cair sebagai penampil utama. LCD sudah digunakan diberbagai bidang misalnya alal–alat elektronik seperti televisi, kalkulator, ataupun layar komputer. Pada bab ini aplikasi LCD yang dugunakan ialah LCD dot matrik dengan jumlah karakter 2 x 16.

LCD sangat berfungsi sebagai penampil yang nantinya akan digunakan untuk menampilkan status kerja alat. Adapun fitur yang disajikan dalam LCD ini adalah :

a. Terdiri dari 16 karakter dan 2 baris.

b. Mempunyai 192 karakter tersimpan.

c. Terdapat karakter generator terprogram.

(33)

d. Dapat dialamati dengan mode 4-bit dan 8-bit.

e. Dilengkapi dengan back light.[6]

Gambar 2.8 LCD

2.8 Indeks Massa Tubuh (IMT)

Indeks massa tubuh adalah cara yang baik untuk menilai apakah berat badan Anda sehat atau tidak, kata Jessica Crandall, RD, pendidik diabetes bersertifikat dan juru bicara nasional untuk Academy of Nutrition and Dietetics, dikutip dari Daily Burn. Indeks massa tubuh adalah metrik standar yang digunakan untuk menentukan siapa saja yang masuk dalam golongan berat badan sehat dan tidak sehat.

... Persamaan 2.1 Misalnya, Anda ingin mencari tahu apakah Anda normal atau obesitas. Anda memiliki berat badan 80 kilogram dan tinggi 1,75 m (175 centimeter). Pertama, kalikan tinggi badan dalam kuadrat: 1,75 x 1,75 = 3,06. Selanjutnya, bagi angkat berat badan dengan hasil kuadrat tinggi badan: 80/3,06 = 26,1. Terakhir, bandingkan angka BMI Anda (26,1) dengan kategori berat badan yang tercantum di bawah ini:

Di bawah 18,5 = Berat badan kurang

18,5 – 22,9 = Berat badan normal

23 – 29,9 = Berat badan berlebih (kecenderungan obesitas)

30 ke atas = obesitas[7]

(34)

BAB 3

METODOLOGI PENELITIAN

3.1 Diagram Blok Rangkaian

Gambar 3.1 Diagram Blok Rangkaian 3.1.1 Fungsi Tiap Blok

1. Blok Power Supply : Sebagai sumber tegangan rangkaian.

2. Blok Sensor Ultrasonic : Sebagai sensor tinggi badan.

3. Blok Sensor Load Cell : Sebagai sensor berat badan.

4. Blok HX 711 : Sebagai pengkonversi nilai tegangan load cell 5. Blok Mikrokontoler : Sebagai otak dan pengontrol pada sistem elektronika 6. Blok RS 232 : Sebagai antarmuka antara perangkat terminal data.

7. Blok Computer : Sebagai indikator menjalankan program.

8. Blok LCD : Sebagai menampilkan nilai tinggi badan dan berat

badan.

3.2 Peralatan dan Komponen 3.2.1 Peralatan

1. Bor

2. Gerenda potong 3. Multimeter 4. Obeng 5. Solder

(35)

6. Tang potong 7. Triplek 8. Komputer 3.2.2 Komponen

1. Mikrokontroler Atmega8535 2. Sensor ultrasonic

3. Sensor load cell 4. LCD 2 x 16 5. HX 711 6. Power supply

3.3 Perancangan alat

Perancangan alat merupakan rangkaian dari prototipe alat pengukur tinggi badan dan berat badan yang digunakan untuk mengimplementasikan alat tersebut nantinya, perancangan tersebut dibuat untuk memudahkan proses pengerjaan alat yang akan dibuat. Dan dari perancangan tersebut kita bisa tahu apa saja peralatan dan komponen yang dibutuhkan.

Gambar 3.2 Perancangan Alat

(36)

3.4 Perancangan Mikrokontroler Atmega8535

Gambar 3.3 Rangkaian Mikrokontroler Atmega8535

ATMega8535 memiliki 40 pin dengan 32 pin diantaranya digunakan sebagai port paralel. Satu port paralel terdiri dari 8 pin, sehingga jumlah port pada mikrokontroler adalah 4 port, yaitu port A, port B, port C dan port D., yang masing- masing pinnya memiliki fungsi yang berbeda-beda baik sebagai port maupun fungsi yang lainnya. Berikut akan dijelaskan fungsi dari masing-masing kaki ATmega8535 yaitu sebagai berikut :

i. VCC

Merupakan tegangan suplai (sumber tegangan) yang dibutuhkan Mikrokontroler ATmega 8535.

ii. GND Ground.

(37)

iii. Port A (PA7..PA0)

Port A berfungsi sebagai input analog ke A/D Converter.Port A juga berfungsi sebagai 8-bit bi-directional I/O port. Jika port A sebagai A/D converter tidak digunakan. Pin-pin pada port dapat memberikan resistor pull-up internal ( dipilih untuk setiap bit ).

iv. Port B (PB7..PB0)

Port B adalah 8-bit bi-directional I/O port dengan resistor pull-up internal (dipilih untuk setiap bit). Ketika port B digunakan sebagai input dan di pull-down secara langsung, maka port B akan mengeluarkan arus jika internal pull-up resistor diaktifkan.

v. Port C (PC7..PC0)

Port C adalah 8-bit bi-directional I/O port yang dengan resistor pull-up internal yang (dipilih untuk setiap bit). Ketika port C digunakan sebagai input dan di pull-down secara langsung, maka port C akan mengeluarkan arus jika internal pull-up resistor diaktifkan. Pada port C terdapat fungsi berbagai fitur khusus seperti tabel berikut :

vi. Port D (PD7..PD0)

Port D adalah 8-bit bi-directional I/O port yang dengan resistor pull-up internal yang (dipilih untuk setiap bit). Ketika port D digunakan sebagai input dan di pull-down secara langsung, maka port D akan mengeluarkan arus jika internal pull-up resistor diaktifkan.

3.5 Perancangan Rangkaian Sensor Load Cell

Gambar 3.4 Rangkaian sensor load cell

(38)

Sebelum mikro terhubung ke sensor load cell, HX 711 berfungsi sebagai code ampiler dari strain gauge pada load cell, yaitu mengubah signal analog yang diinputkan oleh load cell menjadi output berupa signal digital. Sensor load cell bila diberi beban pada inti besi maka nilai resistansi pada strain gauge akan berubah yang dikeluarkan melalui tiga buah kabel, dimana dua kabel sebagai eksitasi dan satu kabelnya lagi sebagai sinyal keluaran ke kontrolnya.

3.6 Perancangan Rangkaian Sensor Ultrasonic

Gambar 3.5 Rangkaian sensor Ultrasonic

Sensor ultrasonic adalah sensor yang bekerja berdasarakan prinsip pantulan gelombang suara dan digunakan untuk mendeteksi keberadaan suatu objek tertentu didepannya, frekuensi kerjanya pada daerah diatas gelombang suara dari 40 KHz hingga 400 KHz. Sensor ultrasonic terdiri dari dua unit, yaitu unit pemancar dan unit penerima.

3.7 Perancangan Rangkaian LCD 2x16

Gambar 3.6 Rangkaian LCD 2x16

(39)

LCD (Liquid Crystal Display)adalah suatu jenis media tampilan yang mengubahkristal cair sebagai penampil utama. LCD dapatmemunculkan tulisan karena terdapat banyak pixelyang terdiri dari satu buah kristal cair sebagaisebuah titik cahaya.Walau disebut sebagai titik cahaya, namunkristal cair ini tidakmemancarkan cahaya sendiri.Sumber cahaya di dalam sebuah perangkat LCDadalah sebuah lampu nenon di bagian belakangsusunan kristal cair tersebut.

3.8 Perancangan Rangakian USB To Serial ( FTDI )

Gambar 3.7 Rangkaian USB To Serial (FTDI)

Rangkaian ini berfungsi sebagai konversi USB to TTL yang menghubungkan PC ke mikrokontroller. GND dan CTS USB dihubungkan ke Ground, VCC dihubungkan ke 5 Volt, Tx dihubungkan ke kaki 14 mikrokontroller (PD0), Rx dihubungkan ke kaki 15 mikrokontroller (PD1).

3.9 Perancangan Rangkaian Regulator

Rangkaian ini berfungsi untuk mensupply tegangan keseluruh rangkaian yang ada. Rangakaian PSA (power supply adaptor) ini terdiri dari satu keluaran, yaitu 5volt. Keluaran 5volt digunakan untuk supply tegangan ke rangkaian mikrokontroler AVR Atmega 8535.

(40)

Gambar 3.8 Rangkaian Regulator

3.10 Rangkaian Lengkap

Gambar 3.9 Rangakian Lengkap

(41)

3.11 Flowchart Sistem Mikrokontroler

3.10 Flowchart sistem Mikrokontroler

(42)

3.12 Flowchart Sistem Visual Basic

3.11 Flowchart sistem visual basic

(43)

BAB 4

PENGUJIAN DAN HASIL

4.1 Pengujian Mikrokontroler

Tujuan pengujan mikrokontroller yaitu untuk mengetahui kondisi mokrokontroler dalam keadaan baik atau tidak menggunakan software PROGISP.

Pengujian dilakukan dengan 2 cara yaitu dengan cara readsignature dan memprogram langsung. Untuk menguji dengan readsignature yaitu hanya dengan mengklik read (RD) maka status mukronkontroler akan muncul dibawah seperti gambar dibawah ini.

Gambar 4.1 Pengujian mikrokontroler atmega8535

(44)

4.2 Pengujian Regulator

Voltage regulator IC adalah IC yang digunakan untuk mengatur tegangan IC 7805 adalah Regulator 5V, voltage yang membatasi output tegangan 5V dan menarik 5V diatur power supply. Pengujian rangkaian regulator ini biasanya menggunakan volt meter, rangkaian IC 7805 ini akan mengeluarkan tegangan 5 volt dengan inputan 12 volt.

Tabel 4.1 Pengujian regulator

Vin Vout

12 (Teori) 5 (Teori)

12,24 (Praktek) 5,02 (Praktek)

4.3 Pengujian LCD 2x16

Pengujian LCD menggunakan sebagai alat untuk memerintahkan LCD menampilkan beberapa karakter. Dan menampilkan berat badan dan tinggi badan pada layar.

#include <LiquidCrystal.h>

LiquidCrystal lcd(23, 21, 20, 19, 18, 17);

void setup() { lcd.begin(16, 2);

lcd.print("massa, tinggi");

}

void loop() { lcd.noDisplay();

delay(500);

lcd.display();

delay(500);

}

(45)

4.4 Pengujian Sensor Ultrasonic

Pengujian sensor ini bertujuan untuk mengetahui apakah sensor berjalan dengan baik. Dengan tinggi maksimum 2 meter.

#include <Ultrasonic.h>

Ultrasonic ultrasonic(A0,A1); // (Trig PIN,Echo PIN) void setup() {

Serial.begin(9600);

}

void loop() {

Serial.print(ultrasonic.Ranging(CM)); // CM or INC Serial.println(" cm" );

delay(100);

}

4.5 Pengujian Load Cell

Pengujian sensor ini bertujuan untuk mengetahui apakah sensor berjalan dengan baik. Dengan berat badan maksimum 150 kg.

#include "HX711.h"

// HX711.DOUT - pin #A1 // HX711.PD_SCK - pin #A0

HX711 scale(A1, A0); // parameter "gain" is ommited; the default value 128 is used by the library

void setup() {

Serial.begin(38400);

Serial.println("HX711 Demo");

Serial.println("Before setting up the scale:");

Serial.print("read: \t\t");

Serial.println(scale.read()); // print a raw reading from the ADC Serial.print("read average: \t\t");

Serial.println(scale.read_average(20)); // print the average of 20 readings from the ADC

(46)

Serial.print("get value: \t\t");

Serial.println(scale.get_value(5)); // print the average of 5 readings from the ADC minus the tare weight (not set yet)

Serial.print("get units: \t\t");

Serial.println(scale.get_units(5), 1); // print the average of 5 readings from the ADC minus tare weight (not set) divided

// by the SCALE parameter (not set yet) scale.set_scale(2280.f); // this value is obtained by calibrating the scale with known weights; see the README for details

scale.tare(); // reset the scale to 0 Serial.println("After setting up the scale:");

Serial.print("read: \t\t");

Serial.println(scale.read()); // print a raw reading from the ADC Serial.print("read average: \t\t");

Serial.println(scale.read_average(20)); // print the average of 20 readings from the ADC

Serial.print("get value: \t\t");

Serial.println(scale.get_value(5)); // print the average of 5 readings from the ADC minus the tare weight, set with tare()

Serial.print("get units: \t\t");

Serial.println(scale.get_units(5), 1); // print the average of 5 readings from the ADC minus tare weight, divided

// by the SCALE parameter set with set_scale

Serial.println("Readings:");

}

void loop() {

Serial.print("one reading:\t");

Serial.print(scale.get_units(), 1);

Serial.print("\t| average:\t");

Serial.println(scale.get_units(10), 1);

scale.power_down(); // put the ADC in sleep mode

(47)

delay(5000);

scale.power_up();

}

4.6 Pengujian USB

Pengujian sensor ini bertujuan untuk mengetahui apakah sensor berjalan dengan baik. Sebagai penghubung mikrokontroler ke komputer.

#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX, TX void setup()

{

// Open serial communications and wait for port to open:

Serial.begin(57600);

while (!Serial); // wait for serial port to connect. Needed for native USB port only Serial.println("Goodnight moon!");

// Set the data rate for the SoftwareSerial port mySerial.begin(4800);

mySerial.println("Hello, world?");

}

void loop() {

if (mySerial.available()) {

Serial.write(mySerial.read());

}

if (Serial.available()) {

mySerial.write(Serial.read());

} }

(48)

4.7 Pengujian Program Software Visual Basic

Untuk memasukkan data ke komputer dan disimpan di Ms. Acces. Dengan program:

Public Class Form_Cetak

Private Sub Form_Cetak_Load(sender As Object, e As EventArgs) Handles MyBase.Load

End Sub End Class

Imports System.Data.OleDb Imports System.IO

Public Class Form_Editor Private Edit As Boolean Private SGambar As String Public Barcode As String

Private Sub Form_Editor_Load(sender As Object, e As EventArgs) Handles MyBase.Load

TT.SetToolTip(btn_simpan, "Simpan") TT.SetToolTip(btn_hapus, "Hapus")

TT.SetToolTip(btn_pilih_gambar, "Pilih Gambar") TT.SetToolTip(btn_hapus_gambar, "Hapus Gambar") Call Bersihkan()

Call Koneksi()

txt_kode.Text = Barcode End Sub

Private Sub btn_simpan_Click(sender As Object, e As EventArgs) Handles btn_simpan.Click

If txt_kode.Text = "" Then txt_kode.Focus() : TT.Show("Input Kode", txt_kode) : Exit Sub

If Edit = False Then Try

Call Simpan()

(49)

MessageBox.Show("Berhasil Di Simpan", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information) 'Call Bersihkan()

Call Form_Home.Ambil_Data() Catch ex As Exception

MessageBox.Show("Proses Gagal", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Error)

End Try Else Try

Call Ubah()

MessageBox.Show("Berhasil Di Edit", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information)

Call Form_Home.Ambil_Data() Catch ex As Exception

MessageBox.Show("Proses Gagal", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Error)

End Try End If End Sub

Private Sub btn_hapus_Click(sender As Object, e As EventArgs) Handles btn_hapus.Click

If txt_kode.Text = "" Then txt_kode.Focus() : TT.Show("Input Kode", txt_kode) : Exit Sub

Try

Call Hapus()

Catch ex As Exception

MessageBox.Show("Proses Gagal", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Error)

End Try End Sub

(50)

Private Sub btn_pilih_gambar_Click(sender As Object, e As EventArgs) Handles btn_pilih_gambar.Click

With ofd

.Filter = "Image Files |*.gif;*.jpg;*.jpeg;*.bmp;*.wmf;*.png"

End With

ofd.FileName = ""

If ofd.ShowDialog = 1 Then

pb_gambar.Image = Image.FromFile(ofd.FileName) SGambar = ofd.SafeFileName

Else

SGambar = "Temp.png"

pb_gambar.Image = Image.FromFile(Application.StartupPath & "\Gambar\"

& SGambar) End If End Sub

Private Sub btn_hapus_gambar_Click(sender As Object, e As EventArgs) Handles btn_hapus_gambar.Click

'SGambar = "Temp.png"

'pb_gambar.Image = Image.FromFile(Application.StartupPath & "\Gambar\" &

SGambar) End Sub

Private Sub Bersihkan() SGambar = "Temp.png"

'pb_gambar.Image = Image.FromFile(Application.StartupPath & "\Gambar\" &

SGambar)

txt_kode.Clear() txt_nama.Clear() txt_jumlah.Clear()

txt_tahun.Value = Date.Now() txt_gedung.Clear()

txt_ruang.Clear() txt_deskripsi.Clear()

(51)

txt_kondisi.Clear() txt_keterangan.Clear() txt_kode.Focus() End Sub

Private Sub txt_kode_TextChanged(sender As Object, e As EventArgs) Handles txt_kode.TextChanged

'Edit = Cek_Barang() End Sub

Function Cek_Barang() As Boolean

CMD = New OleDbCommand("SELECT * FROM Barang WHERE Kode = '"

& txt_kode.Text & "'", CONN) DR = CMD.ExecuteReader DR.Read()

If DR.HasRows Then

txt_nama.Text = DR.GetString(1) txt_jumlah.Text = DR.GetString(2) txt_tahun.Text = DR.GetString(3) txt_gedung.Text = DR.GetString(4) txt_ruang.Text = DR.GetString(5) txt_deskripsi.Text = DR.GetString(6) txt_kondisi.Text = DR.GetString(7) txt_keterangan.Text = DR.GetString(8) SGambar = DR.GetString(9)

'pb_gambar.Image = Image.FromFile(Application.StartupPath & "\Gambar\"

& SGambar) Return True End If

SGambar = "Temp.png"

'pb_gambar.Image = Image.FromFile(Application.StartupPath & "\Gambar\" &

SGambar)

txt_nama.Clear() txt_jumlah.Clear()

(52)

txt_tahun.Value = Date.Now() txt_gedung.Clear()

txt_ruang.Clear() txt_deskripsi.Clear() txt_kondisi.Clear() txt_keterangan.Clear() Return False

End Function

Private Sub Simpan()

If SGambar = "Temp.png" Then

Dim q As String = "INSERT INTO Barang VALUES('" & txt_kode.Text &

"','" & txt_nama.Text & "','" _

& txt_jumlah.Text & "','" & txt_tahun.Text & "','" & txt_gedung.Text & "','"

_

& txt_ruang.Text & "','" & txt_deskripsi.Text & "','" & txt_kondisi.Text &

"','" _

& txt_keterangan.Text & "','" & SGambar & "')"

CMD = New OleDbCommand(q, CONN) CMD.ExecuteNonQuery()

Else

Dim q As String = "INSERT INTO Barang VALUES('" & txt_kode.Text &

"','" & txt_nama.Text & "','" _

& txt_jumlah.Text & "','" & txt_tahun.Text & "','" & txt_gedung.Text & "','"

_

& txt_ruang.Text & "','" & txt_deskripsi.Text & "','" & txt_kondisi.Text &

"','" _

& txt_keterangan.Text & "','" & txt_kode.Text &

Path.GetExtension(ofd.FileName) & "')"

CMD = New OleDbCommand(q, CONN) CMD.ExecuteNonQuery()

My.Computer.FileSystem.CopyFile(

ofd.FileName,

(53)

Application.StartupPath & "\Gambar\" & txt_kode.Text &

Path.GetExtension(ofd.FileName), FileIO.UIOption.AllDialogs,

FileIO.UICancelOption.DoNothing) End If

End Sub

Private Sub Ubah()

If SGambar = "Temp.png" Then

Dim q As String = "UPDATE Barang SET Nama = '" & txt_nama.Text _ & "', NIK = '" & txt_jumlah.Text _

& "', `Tanggal Lahir` = '" & txt_tahun.Text _ & "', Provinsi = '" & txt_gedung.Text _ & "', Kota = '" & txt_ruang.Text _

& "', Kecamatan = '" & txt_deskripsi.Text _ & "', Alamat = '" & txt_kondisi.Text _ & "', Status = '" & txt_keterangan.Text _ & "', Gambar = '" & SGambar _

& "' WHERE Kode ='" & txt_kode.Text & "'"

CMD = New OleDbCommand(q, CONN) CMD.ExecuteNonQuery()

Else

Dim q As String = "UPDATE Barang SET Nama = '" & txt_nama.Text _ & "', NIK = '" & txt_jumlah.Text _

& "', `Tanggal Lahir` = '" & txt_tahun.Text _ & "', Provinsi = '" & txt_gedung.Text _ & "', Kota = '" & txt_ruang.Text _

& "', Kecamatan = '" & txt_deskripsi.Text _ & "', Alamat = '" & txt_kondisi.Text _ & "', Status = '" & txt_keterangan.Text _

& "', Gambar = '" & txt_kode.Text & Path.GetExtension(ofd.FileName) _ & "' WHERE Kode ='" & txt_kode.Text & "'"

CMD = New OleDbCommand(q, CONN)

(54)

CMD.ExecuteNonQuery()

My.Computer.FileSystem.CopyFile(

ofd.FileName,

Application.StartupPath & "\Gambar\" & txt_kode.Text &

Path.GetExtension(ofd.FileName), FileIO.UIOption.AllDialogs,

FileIO.UICancelOption.DoNothing) End If

End Sub

Private Sub Hapus()

If MessageBox.Show("Yakin Akan Di Hapus ?", "Konfirmasi", MessageBoxButtons.YesNo, MessageBoxIcon.Question) =

Windows.Forms.DialogResult.Yes Then

CMD = New OleDbCommand("DELETE FROM Barang WHERE Kode = '"

& txt_kode.Text & "'", CONN) CMD.ExecuteNonQuery()

MessageBox.Show("Berhasil Di Hapus", "Pesan", MessageBoxButtons.OK, MessageBoxIcon.Information)

Call Bersihkan()

Call Form_Home.Ambil_Data() End If

End Sub

Private Sub txt_jumlah_KeyPress(sender As Object, e As KeyPressEventArgs) Handles txt_jumlah.KeyPress

If Not ((e.KeyChar >= "0" And e.KeyChar <= "9") Or e.KeyChar = vbBack) Then e.Handled() = True

End Sub

Private Sub GroupBox5_Enter(sender As Object, e As EventArgs) Handles GroupBox5.Enter

End Sub

Private Sub GroupBox4_Enter(sender As Object, e As EventArgs) Handles GroupBox4.Enter

(55)

End Sub

Private Sub Label4_Click(sender As Object, e As EventArgs) End Sub

Private Sub Label1_Click(sender As Object, e As EventArgs) End Sub

Private Sub Label10_Click(sender As Object, e As EventArgs) End Sub

Private Sub Label11_Click(sender As Object, e As EventArgs) End Sub

Private Sub txt_deskripsi_TextChanged(sender As Object, e As EventArgs) Handles txt_deskripsi.TextChanged

End Sub End Class

Imports System.Data.OleDb Imports System.IO

Public Class Form_Home Public t As String Public m As String = ""

Public TEMP As String = ""

Dim Hasil As String Dim c As Char

Dim lngPos As Integer Dim indeks As String

Delegate Sub SetTextCallBack(ByVal [text] As String) Public Sub New()

InitializeComponent()

AddHandler Me.Closing, New

ComponentModel.CancelEventHandler(AddressOf Me.FormClosingEventCancle_Closing)

End Sub

(56)

Private Sub FormClosingEventCancle_Closing(sender As Object, e As System.ComponentModel.CancelEventArgs)

Dim Konfirmasi As DialogResult

Konfirmasi = MessageBox.Show("Anda Ingin keluar ?", "Konfirmasi", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

If Konfirmasi = DialogResult.No Then e.Cancel = True

Else

Application.ExitThread() End If

End Sub

Private Sub Form_Home_Load(sender As Object, e As EventArgs) Handles MyBase.Load

Call Ambil_Data() End Sub

Private Sub LogoutToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles LogoutToolStripMenuItem.Click

Dispose()

Form_Login.Show() End Sub

Private Sub ExitToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ExitToolStripMenuItem.Click

Close() End Sub

Private Sub TambahToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles TambahToolStripMenuItem.Click

Form_Editor.Barcode = ""

Form_Editor.ShowDialog() End Sub

Private Sub ScannerToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ScannerToolStripMenuItem.Click

Form_Scanner.ShowDialog()

Referensi

Dokumen terkait

Dari paparan tersebut disimpulkan bahwa ilmu pengetahuan yang berorientasi positivistik, telah digunakan manusia untuk mencari kebenaran mengenai alam semesta,

Pengecualian terhadap penggunaan mata uang rupiah dalam melakukan pembayaran bagi pelaku usaha perdagangan luar negeri, dengan dikeluarkannya Peraturan Bank

Cilj ovog rada bio je utvrditi kemijski sastav i sadržaj bioaktivnih tvari u uzorcima svježih plodova goji bobica, matičnog soka i kaše te temeljem dobivenih

Prosedur pelaksanaan pembelajaran Ilmu Pengetahuan Alam dengan menggunakan metode kerja kelompok yaitu: 1) perencanaan, pada perencanaan tindakan ada beberapa macam

Dalam bab ini akan diuraikan langkah-langkah yang dilakukan dalam penyelesaian rancangan mesin penumbuk sagu ubi untuk membuat adonan yang kenyal pada pengolahan proses beras aruk

Puji syukur penulis panjatkan kehadirat Tuhan YME yang telah memberikan rahmatNya, sehingga penyusunan skripsi yang berjudul “Peningkatan Resiliensi Siswa

Kertas saring halus memiliki pori-pori yang lebih kecil dibanding kertas saring kasar sehingga komponen yang dipisahkan menggunakan kertas saring halus memiliki

Kendala atau kekurangan yang terdapat dalam SAT Narkoba POLRES Mataram seperti kurangnya sarana (tempat dilakukannya proses pemeriksaan) dalam proses penyidikan, dan