BAB II LANDASAN TEORI 2.1 Sensor pH pH adalah derajat keasaman yang digunakan untuk menyatakan tingkat keasaman atau kebasaan yang dimiliki oleh suatu larutan. Ia didefinisikan sebagai kologaritma aktivitas ion hidrogen (H+) yang terlarut. Koefisien aktivitas ion hidrogen tidak dapat diukur secara eksperimental, sehingga nilainya didasarkan pada perhitungan teoritis. Skala pH bukanlah skala absolut. Ia bersifat relatif terhadap sekumpulan larutan standar yang pH-nya ditentukan berdasarkan persetujuan internasional. Bila pH < 7 larutan bersifat asam, pH > 7 larutan bersifat basa. Dalam larutan neutral pH=7. 2.1.1 Sifat-sifat Asam Basa Sifat Asam :
Mempunyai rasa asam (awas jangan sekali-sekali mencicipinya!). Kata asam berasal dari bahasa Latin acere yang berarti asam.
Mengubah lakmus dari warna biru ke merah.
Larutan asam menghantarkan arus listrik (bersifat elektrolit).
Bereaksi dengan basa membentuk garam dan air.
Menghasilkan gas hidrogen ketika bereaksi dengan logam (seperti logam alkali, alkali tanah, seng, aluminium).
Sifat Basa :
Mempunyai rasa pahit (awas jangan sekali-sekali mencicipinya!).
Terasa licin atau bersabun (awas jangan secara langsung menyentuhnya!).
6
7
Mengubah lakmus dari warna merah ke biru.
Larutan basa menghantarkan arus listrik (bersifat elektrolit).
Bereaksi dengan asam membentuk garam dan air.
2.1.2 Contoh Asam Basa Contoh asam dalam kehidupan sehari-hari:
Vitamin C (asam askorbat)
Asam cuka (mengandung sekitar 5% asam asetat)
Asam karbonat (terdapat pada minuman ringan)
Contoh basa dalam kehidupan sehari-hari:
2.2
Deterjen
Sabun
Amonia rumah tangga
Mikrokontroler basis Arduino Arduino merupakan inovasi dibidang elektronika yang telah membuat
perubahan besar dalam dunia mikrokontroler sehingga seorang yang awam ataupun amatir sekalipun bisa membuat proyek-proyek elektronika atau rebotika dengan relatif mudah dan cepat. Arduino lahir dari lingkungan mahasiswa dan dosen yang merasakan sulitnya mempelajari mikrokontroler. Kemudian mereka mengembangkan sebuah sistem minimum berbasis AVR yang dilengkapi dengan bootloader dan
software yang user friedly.Hasilnya adalah sebuah board
mikrokontroler yang bersifat open source yang bisa dipelajari atau dikembangkan oleh mahasiswa, professional atau penggemar mikrokontroler diseluruh dunia.
8
2.2.1 Pengertian Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang didalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Mikrokontroler itu sendiri adalah chip atau IC (Integrated Circuit) yang bisa diprogram menggunakan komputer. Tujuan menanamkan program pada mikrokontroler adalah agar rangkaian elektronik dapat membaca input, proses dan output sebuah rangkaian elektronik.
Konon arduino sudah lebih popular dibandingkan Basic Stamp yang lahir lebih awal yang harganya relatif mahal dan close source. Penjualan board arduino bisa menghasilkan milyaran rupiah pada penjualan kit online seperti Sparkfun. Karena komponen utama arduino adalah mikrokontroler, maka arduino pun dapat diprogram menggunakan komputer sesuai dengan kebutuhan pengguna. Adapun data teknis board Arduino Uno sebagai berikut:
Mikrokontroler
: Arduino UNO
Tegangan operasi
:5V
Tegangan input (recomended)
: 7 – 12 V
Tegangan input (limit)
: 6 – 20 V
Pin digital I/0
: 14 (6 diantaranya pin PWM)
Pin analog input
:6
Arus DC per pin I/0
: 40 mA
Arus DC untuk pin 3.3 V
: 150 mA
9
Flash memory
: 32 Kb dengan 0.5 Kb digunakan
untuk bootloader
SRAM
: 2 KB
EEPROM
: 1 KB
Kecepatan pewaktu
: 16 Mhz
Gambar 2.1 Bentuk fisik Arduino UNO Walaupun bahasa pemrograman arduino adalah bahasa C/C++, akan tetapi dengan penambahan library dan fungsi – fungsi standar membuat pemrogramam arduino sangat lebih mudah untuk dipelajari dan lebih manusiawi. Contoh, untuk mengirimkan nilai HIGH pada pin 10 pada arduino, cukup menggunakan fungsi digital writter (10, HIGH), sedangkan kalau menggunakan bahasa C aslinya adalah PORTB I=(1<<2).
10
Tersedia banyak library untuk menghubungkan arduino dengan macammacam sensor, actuator maupun modul komunikasi. Misalnya library untuk mouse, keybord, servo, GPS dsb. Berhubung arduino adalah open source, maka library – library ini juga open cource dan dapat di download gratis di website arduino. Dengan bahasa yang lebih mudah dan adanya dasar yang lengkap, maka mengembangkan aplikasi elektronik relatif sangat mudah. Arduino tidak membuat bahasa pemrograman khusus, melainkan menggunakan bahasa C yang sudah ada, lebih tepatnya Bahasa C yang menggunakan compiler AVG – GCC (AVR GNU C – Compiler). Bahasa C adalah bahasa yang sangat lazim dipakai sejak awal – awal komputer diciptakan dan sangat berperan dalam pengembangan software. Bahasa C juga telah membuat bermacam-macam sistem operasi Unix, Linux, dsb. Bahasa C juga biasanya diakademi dan perguruan tinggi selain bahasa pemrograman Basic atau Pascal. Bahasa C adalah bahasa pemrograman yang sangat ampuh yang kekuatannya mendekati bahasa assembler. Bahasa C menghasilkan file kode objek yang sangat kecil dan dapat dieksekusi dengan sangat cepat. Karena itu bahasa C sering digunakan pada sistem operasi dan pemrograman mikrokontroler. Bahasa C adalah multi- platform bahasa C bisa diterapkan pada lingkungan Windows, Unix, Linux atau sistem operasi lain tanpa mengalami perubahan sorce code (kalaupun ada perubahan, biasanya sangat minim). Karena arduino menggunakan bahasa C yang multiplatform maka software arduino pun bisa dijalankan pada semua sistem operasi yang umum dipakai misalnya : Wndows, Linux, MacOS. Bahasa C mudah dipelajari dalam arti relatif tergantung kemampuan setiap user. Kalau anda sudah mengerti bahasa C maka anda bisa melakukan pengembangan dengan board lain
11
atau mikrokontroler lain dengan lebih mudah. Di internet banyak library bahasa C untuk arduino yang bisa di download dengan gratis. Setiap library arduino biasanya disertai dengan contoh pemakaiannya. Keberadaan library-library ini bukan hanya membantu kita membuat proyek mikrokontroler, tetapi bisa dijadikan sarana untuk mendalami pemrograman bahasa C pada mikrokontroler. 2.2.2 Mikrokontroller AVR ATMega328 Mikrokontroler adalah suatu trobosan dalam teknologi mikroprosesor dan mikrokomputer,
perbedaannya
mikrokontroler
hanya
digunakan
untuk
menangani suatu aplikasi tertentu. Perbedaan mikrokontroler lain terletak pada perbandinganRAM dan ROM. Komputer mempunyai RAM dan ROM yang besar, tetapi pada mikrokontroler sangat terbatas. ROM digunakan oleh mikrokontroller untuk menyimpan program sedangkan RAM untuk menyimpan data sementara. Mikrokontroller terdiri dari ALU (Arithmetic and Logical Unit), CU (Control Unit), PC (Program Counter), SP (Stack Pointer), registerregister, sebuah rangkaian pewaktu dan rangkaian penyela (interrupt). Mikrokontroller juga dilengkapi dengan beberapa piranti pendukung lain seperti ROM(Read Only Memory), RAM (Random Access Memory), decoder, port komunikasi input/output serial dan atau paralel dan tambahan khusus seperti interrupt handler dan timer/counter.
12
Gambar 2.2 Konfigurasi Pin ATMega328 AVR adalah mikrokontroller CMOS 8-bit buatan Atmel berbasis arsitektur RISC (Reduced Instruction Set Computer). Kebanyakan instruksi dikerjakan pada satu siklus clock, AVR mempunyai register general-purpose, timer/counter fleksibel dengan mode copare, interupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan mode power saving. Beberapa diantaranya mempunyai ADC dan PWM internal. AVR juga mempunyai InSystem Programmable Flash on-chip yang mengijinkan memori program untukdiprogram ulang dalam system menggunakan hubungan serial SPI. Chip AVR yang digunakan untuk tugas akhir ini adalah ATmega328.
2.2
Soket USB Soket USB adalah soket untuk kabel USB yang disambungkan ke
komputer atau laptop yang berfungsi untuk mengirimkan program ke arduino dan juga sebagai port komunikasi serial.
13
Gambar 2.3 Soket USB Sambungan dari komputer ke board Arduino menggunakan USB, bukan serial atau parallel port, sehingga akan mudah menghubungkan Arduino ke PC atau laptop yang tidak memiliki serial/parallel port. Arduino Uno menggunakan chip AVR Atmega 328 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan 12C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protokol yang berbeda-beda.
2.3 Komunikasi Bluetooth Bluetooth bekerja menggunakan frekuensi radio, dan didalam bekerja tidak harus line of sight seperti halnya infrared. Bluetooth frekuensi radio ISM 2.4 GHz. Kelebihan lain dari Bluetooth adalah kemampuannya untuk menembus dinding penghalang. Sedangkan jraknya mencapai 10 meter dengan kecepatan transfer data mencapai 800 Kbps. Namun Bluetooth tetap mempunyai kekurangan, yaitu interferensi dari frekuensi radio lainnya. Namun dari perkembangan teknologi, Bluetooth lebih banyak digunakan dari pada IrDa. Komunikasi menggunkan Bluetooth ini dikenal pula dengan istilah PAN (Personal Area Network) yang diatur berdasarkan standar IEEE 802.15. Saat ini,
14
Bluetooth yang digunakan adalah versi 4.0 yang mengkonsumsi lebih sedikit energi.
2.4 Android Android adalah sebuah software open-source yang dibuat untuk beragam perangkat dengan faktor bentuk yang berbeda. Tujuan utama dari Android adalah untuk menciptakan sebuah platform perangkat lunak open tersedia untuk operator, OEM, dan pengembang untuk membuat ide-ide inovatif mereka menjadi kenyataan dan untuk memperkenalkan sukses, produk dunia nyata yang meningkatkan pengalaman mobile bagi pengguna.
Android juga ingin
memastikan bahwa tidak ada titik pusat kegagalan, di mana satu pemain industri dapat membatasi atau mengontrol inovasi yang lain. Hasilnya adalah penuh, produk konsumen produksi berkualitas dengan kode sumber terbuka untuk kustomisasi.
2.5 Bahasa Pemrograman Arduino Bahasa pemrograman Arduino adalah bahasa C. Tetapi bahasa ini sudah dipermudah menggunakan fungsi-fungsi yang sederhana sehingga pemula pun bisa mempelajarinya dengan cukup mudah. Untuk membuat program Arduino dan mengupload ke dalam board Arduino, anda membutuhkan software Arduino IDE (Integrated Development Enviroment) yang bisa di download secara gratis dari wesite http://arduino.cc/en/Main/Software. Panduan bahasa pemograman Arduino beserta dengan contoh-contohnya bisa dibaca di halaman http://arduino.cc/en/Reference/HomePage.
15
2.6 Aplikasi BlueTerm Aplikasi ini merupakan VT-100 terminal emulator untuk berkomunikasi dengan perangkat serial menggunakan bluetooth serial adaptor. RFCOMM / SPP protokol mengemulasi komunikasi serial melalui bluetooth. Anda memerlukan adaptor bluetooth serial. Ini adalah sebuah aplikasi opensource. Kita bisa mendapatkan info lebih lanjut dan kode sumber dari: http://pymasde.es/blueterm/ http://openjungle.cc/