LAPORAN PRAKTIKUM KONTROL HVAC KOMUNIKASI MATLAB BERBASIS ARDUINO MENGGUNAKAN SENSOR LM 35 DAN LED SEBAGAI INDIKATOR
LENNY SYLVIA 3B/141611051 Hari/Tgl.Praktikum : Kamis, 27 Oktober 2016 Hari/Tgl.Penyerahan : Jumat, 04 November 2016 Dosen Pembimbing : Ir. Edy Erham, MT
PROGRAM STUDI D3 TEKNIK PENDINGIN DAN TATA UDARA JURUSAN TEKNIK REFRIGERASI DAN TATA UDARA POLITEKNIK NEGERI BANDUNG 2016 I.
Tujuan Mampu menghubungkan MATLAB dan arduino.
Mampu merangkai sensor dengan arduino. Mampu membuat konstruksi simulink state space model. Mampu menganalisa pengaruh temperatur terhadap LED. II.
Dasar Teori MATLAB dan Simulink mengatasi beberapa tantangan dengan pemrograman Arduino tradisional. Produk mendukung dua alur kerja utama:
Membaca, menulis, dan menganalisis data dari sensor Arduino
Mengembangkan algoritma yang berjalan mandiri pada perangkat Arduino
Membaca, menulis, dan menganalisis data dari sensor Arduino MATLAB dukungan paket untuk Arduino memungkinkan Anda menulis program Matlab yang membaca dan menulis data ke Arduino dan perangkat yang terhubung seperti Adafruit bermotor perisai, I2C, dan perangkat SPI. Karena MATLAB adalah bahasa tingkat tinggi ditafsirkan, pemrograman dengan lebih mudah dibandingkan dengan C / C ++ dan bahasa dikompilasi lainnya, dan Anda dapat melihat hasil dari I / O instruksi langsung - tidak ada kompilasi. MATLAB meliputi ribuan built-in matematika, teknik, dan merencanakan fungsi yang dapat Anda gunakan untuk cepat menganalisis dan memvisualisasikan data yang dikumpulkan dari Arduino Anda.
Gambar 1. MATLAB dan Arduino
Dengan paket dukungan MATLAB untuk Arduino, Arduino adalah terhubung ke MATLAB komputer berjalan. Pengolahan dilakukan pada komputer dengan MATLAB. Manfaat menggunakan MATLAB untuk pemrograman Arduino:
Membaca dan menulis data sensor secara interaktif tanpa menunggu kode Anda untuk mengkompilasi
Menganalisis data sensor Anda menggunakan ribuan fungsi pra-dibangun untuk pemrosesan sinyal , pembelajaran mesin , pemodelan matematika , dan lebih
Cepat memvisualisasikan data Anda menggunakan array yang luas MATLAB
Paket dukungan Simulink untuk Arduino memungkinkan Anda mengembangkan algoritma dalam Simulink, lingkungan blok-diagram untuk pemodelan sistem dinamis dan mengembangkan algoritma, dan menjalankannya mandiri pada Arduino Anda. Paket dukungan meluas Simulink dengan blok untuk mengkonfigurasi sensor Arduino dan membaca dan menulis data dari mereka. Setelah membuat Model Simulink Anda, Anda dapat mensimulasikan itu, parameter algoritma lagu sampai Anda mendapatkannya tepat, dan men- algoritma selesai untuk eksekusi mandiri pada perangkat. Dengan MATLAB Fungsi blok , Anda dapat menggabungkan kode MATLAB ke dalam model Simulink Anda.
Gambar 2. Program simulink pada MATLAB dan Arduino
Dengan paket dukungan Simulink untuk Arduino, Anda mengembangkan algoritma dalam Simulink dan menyebarkan ke Arduino menggunakan generasi kode otomatis. Pengolahan kemudian dilakukan pada Arduino. Manfaat menggunakan Simulink untuk pemrograman Arduino: Mengembangkan dan mensimulasikan algoritma Anda di Simulink dan menggunakan generasi kode otomatis untuk menjalankan mereka pada perangkat Menggabungkan pemrosesan sinyal, desain kontrol , logika negara , dan lainnya maju matematika dan rekayasa rutinitas dalam proyek hardware Anda Interaktif tune dan mengoptimalkan parameter algoritma Anda berjalan pada perangkat Mudah memodifikasi algoritma untuk berjalan di lain murah dan platform perangkat keras komersial
1. Arduino Uno Arduino Uno adalah board mikrokontroler berbasis ATmega328. Uno memiliki 14 pin digital input / output (dimana 6 dapat digunakan sebagai output PWM), 6 input analog, resonator keramik 16 MHz, koneksi USB, jack listrik, header ICSP, dan tombol reset. Uno dibangun berdasarkan
apa
yang
diperlukan
untuk
Gambar 3. Arduino Uno
mendukung mikrokontroler, sumber daya bisa menggunakan power USB (jika terhubung ke komputer dengan kabel USB) dan juga dengan adaptor atau baterai. 2. Sensor LM35 Sensor suhu LM35 adalah komponen elektronika yang memiliki fungsi untuk mengubah besaran suhu menjadi besaran listrik dalam bentuk tegangan. Sensor Suhu LM35 merupakan komponen elektronika berbentuk integrated circuit
(IC)
dengan 3 pin yang diproduksi oleh National Semiconductor.
Sensor
suhu LM35 memiliki keakuratan tinggi dan kemudahan perancangan jika dibandingkan dengan sensor suhu yang lain, sensorsuhu LM35 juga mempunyai keluaran
Gambar 4. Sensor LM35
impedansi yang rendah dan linieritas yang tinggi sehingga dapat dengan mudah dihubungkan dengan rangkaian kendali khusus serta tidak memerlukan penyetelan lanjutan. Meskipun tegangan sensor suhu LM35 ini dapat mencapai30 volt akan tetapi yang diberikan ke sensor adalah sebesar 5 volt, sehingga dapat digunakan dengan catu daya tunggal dengan ketentuan bahwa LM35 hanya membutuhkan arus sebesar 60 μA, hal ini berarti LM35 mempunyai kemampuan menghasilkan panas (self-heating) dari sensor yang dapat menyebabkan kesalahan pembacaan yang rendah yaitu kurang dari 0,5 ºC pada suhu 25 ºC. Secara prinsip sensor akan melakukan penginderaan pada saat perubahan suhu setiap suhu 1 ºC akan menunjukan tegangan sebesar 10 mV. Pada penempatannya LM35 dapat ditempelkan dengan perekat atau dapat pula disemen pada permukaan akan tetapi suhunya akan sedikit berkurang sekitar 0,01 ºC karena terserap pada suhu permukaan tersebut. Dengan cara seperti ini diharapkan selisih antara suhu udara
dan suhu permukaan dapat dideteksi oleh sensor LM35 sama dengan suhu disekitarnya, jika suhu udara disekitarnya jauh lebih tinggi atau jauh lebih rendah dari suhu permukaan, maka LM35 berada pada suhu permukaan dan suhu udara disekitarnya. 3. LED LED merupakan keluarga Dioda yang terbuat dari bahan semikonduktor. Warna-warna Cahaya yang dipancarkan oleh LED tergantung pada jenis bahan
semikonduktor
yang
dipergunakannya.Ketika LED dialiri tegangan maju atau bias forward yaitu dari Anoda (P)
Gambar 5. LED
menuju ke Katoda (K), Kelebihan Elektron pada NType material akan berpindah ke wilayah yang kelebihan Hole (lubang) yaitu wilayah yang bermuatan positif (P-Tpe material). Saat Elektron berjumpa dengan Hole akan melepaskan photon dan memancarkan cahaya monokromatik (satu warna).LED atau Light Emitting Diode yang memancarkan cahaya ketika dialiri tegangan maju ini juga dapat digolongkan sebagai Transd yang dapat mengubah Energi Listrik menjadi Energi Cahaya. 4. Resistor Resistor
adalah
komponen
elektronik
yang
berfungsi menahan arus litrik, dan karena arus listrik berhubungan dengan tegangan listrik, sehingga jika suatu tegangan listrik dilewatkan pada resistor maka
Gambar 6. Resistor
akan terjadi penurunan pada tegangan tersebut.Rumah resistor biasanya dibuat dari keramik/ semen dimana bahan yang berfungsi sebagai hambatanya biasanya dari karbon, logam atau lilitankawat,besar-kecilnya nilai hambatan ditentukan oleh tebal dan panjangnya lintasan karbon, logam atau lilitan kawat tersebut. III.
Alat dan Bahan 1. Laptop 2. Arduino Uno 3. Sensor LM 35 4. LED merah
IV.
5. 1 buah resistor 220v 6. Kabel male-male 7. Protoboard Langkah Praktikum 1. Untuk dapat mengkomunikasikan MATLAB dengan Arduino, hal pertama yang harus dilakukan adalah dengan menginstall pemodelan arduino pada MATLAB. 1) Buka Program MATLAB
2) Klik Open dan buka file install_arduino.m, yang dapat di dari arduino.cc
3) Setelah itu akan muncul kotak script seperti berikut, kemudian klik run.
4) Setelah berhasil di run, close program MATLAB. 5) Buka kembali program MATLAB, yang telah diinstallpemodelan arduino. 6) Untuk mengetahui apakah pemodelan arduino berhasil di install atau tidak, buka simulink pada MATLAB.
7) Lihat pada simulink library, Jika pemodelan arduino berhasil di install maka padasimulink library akan muncul Arduino IO.
2. Arduino menggunakan bahasa C pada scriptnya. Untuk dapat membuat arduino terhubung dengan MATLAB maka diperlukan meng script pada arduino. 1) Pastikan anda memiliki arduino, dan arduino telah terinstall pada laptop dengan port yang benar. 2) Buka program Arduino IDE.
3) Klik open lalu buka file pde.
4) Pilih file adioes.
5) Maka akan muncul script sebagai berikut, script ini bertujuan untuk menhubungkan arduino dengan MATLAB, sehingga pemodelan arduino pada MATLAB dapat dimengerti oleh MATLAB.
6) Kemudian, script adioes tersebut pada arduino.
3. MATLAB dan Arduino telah terhubung selanjutnya adalah merangkai pemodelan sesuai dengan project yang ditentukan yaitu menggunkan sensor LM 35 dan LED.
4. Merangkai sensor temperatur LM 35, LED, resistor dan arduino. 1) Identifikasi kaki-kaki dari sensor LM 35.
2) Identifikasi kaki untuk LED, kaki yang lebih panjang terhubung dengan ground dan yang lainnya terhubung dengan pin digital output pada arduino. Dalam merangkai LED diperlukan untuk menggunakan resistor sebagai pengaman agar LED tidak mudah rusak.
3) Setelah menidentifikasi kaki-kaki dari sensor LM35 dan LED, maka rangkailah seperti pada gambar berikut. :dari Vs ke 5V :dari GND ke GNDarduino :dari Vout ke A0
: ke pin digital output : ke GND
4) Setelah rangkaian selesai, dilanjutkan dengan membuat pemodelan pada MATLAB.
5. Langkah selanjutnya adalah membuat pemodelan dengan menggunakan MATLAB. 1) Buka simulink pada MATLAB
2) Buat pemodelan baru, di new model.
3) Buka arduino IO library, kemudian add arduino analog read dan set up arduino.
4) Atur port COM yang terdeteksi oleh Laptop, pada set up arduino dan pin arduino alnalog read sesuai dengan pin yang digunakan untuk merangkai sensor LM35. Menggunakan port COM18 sesuai dengan port arduino yang terdeteksi pada laptop.
Pada rangkaian yang digunakan untuk mendeteksisensor LM35 adalah pin A0 seingga, analog read yang digunakan adalah 0.
5) Add gain, constant, devide dan scope. Kemudian hubungkan seperti gambar di bawah ini.
Pada gain diberi angka 500 sedangkan pada constant diberi angka 1024, hal ini dilakukan untuk mempermudah pembacaan dari sensor LM35 (sebagai nilai untuk mengkonversi). Sensor LM 35 adalah
sensor temperatur dengan input tegangan, sehingga nilai tegangan tersebut diubah untuk mendapatkan derajat celcius yang tepat.
Scope berfungsi untuk menampilkan grafik dari output sensor LM35. 6) Add display, untuk dapat mempermudah pembacaan sensor tanpa perlu melihat grafik.
7) Untuk menambahkan LED sebgai indikator dari sensor temperatur LM35, add if, sine wave, if action subsystem, dan arduino digital write.
8) Double klik kotak if, sehingga muncul kotak fuction blok parameters, kemudian isi dengan nilai angaka yang di inginkan (30). Angka ini sebagai indikator LED akan menyala, jika nilai hasil keluaran dari sensor temperatur LM 35 di atas 30 C.
9) Double klik pada arduino digital write untuk menentukan pin yang digunakan pada LED. Pin yang digunakan ini, sesuai dengan rangkaian yang telah terpasang yaitu pin 4.
6. Ubah nilai stop simulation dari 10 menjadi inf, untuk mendapatkan hasil output dari sensor yang berkelanjutan.
7. Klik run, untuk memulai simulasi.
V.
Data dan Analisa 1. Temperatur di bawah 30 C Setelah di run, maka simulasi akan bekerja. Sensor LM35 akan mengukur temperatur yang berada disekitarnya, untuk dapat mengetahui berapa
temperatur yang terukur dapat dilihat pada display yang terdapat pada pemodelan MATLAB.
Selain dengan menggunakan display, nilai temperatur yang terukur oleh sensor LM35 dapat di lihat pada scope, dengan cara double clik pada kotak scope sehingga akan muncul garfik output dari pemodelan yang dilakukan.
Dengan menggunakan fungsi if pada pemodelan maka saat temperatur yang terukur oleh sensor LM35 dibawah 30 C (Pada display temperatur yang terukur = 26, 86 C), maka indikator LED tidak akan menyala. Hal ini dikarenakan pengunaan fungsi if, yang hanya bernilai benar jika sesuai dengan nilai yang telah di setting sebelumnya sehingga tegangan yang keluar (V out), tidak cukup untuk menyalakan LED karena nilai yang keluar adalah salah (0), sehingga LED tidak menyala.
2. Temperatur di atas 30 C Untuk mendapatkan nilai temperatur yang terukur oleh LM 35 di atas 30 C, maka pegang sensor LM35 dengan menggunkan jari, sehingga temperatur yang terukur bertambah (tidak mengukur temperatur lingkungan, melainkan mengukur temperatur tubuh karena hasil sentuhan). Temperatur yang terukur dapat dilihat pada display yang terdapat pada pemodelan MATLAB.
Selain dengan menggunakan display, nilai temperatur yang terukur oleh sensor LM35 dapat di lihat pada scope, dengan cara double clik pada kotak scope sehingga akan muncul garfik output dari pemodelan yang dilakukan.
Dengan menggunakan fungsi if pada pemodelan maka saat temperatur yang terukur oleh sensor LM35 diatas 30 C (Pada display temperatur yang terukur = 30, 27 C), maka indikator LED akan menyala. Hal ini dikarenakan pengunaan fungsi if, yang hanya bernilai benar jika sesuai dengan nilai yang telah di setting sebelumnya sehingga tegangan yang keluar (V out), memenuhi untuk menyalakan LED karena nilai yang keluar adalah benar (1), sehingga LED menyala.
VI.
Kesimpulan Pengunaan MATLAB untuk pemrograman Arduino dapat bermanfaat untuk membaca dan menulis data sensor secara interaktif tanpa menunggu script kode untuk mengkompilasi serta dapat memvisualisasikan data menggunakan model yang luas MATLAB, seperti dispaly dan scope. LM 35 adalah sensor temperatur dengan prinsip kerja mengubah besaran suhu menjadi besaran listrik dalam bentuk tegangan. Saat temperatur terukur di bawah 30 C, maka indikator LED tidak menyala. Karena pada fungsi if yang telah di setting, hasil keluaran output bernilai salah sehingga tegangan (Vout) tidak mampu untuk menghidupkan LED. Saat temperatur terukur di atas 30 C, maka indikator LED akan menyala. Karena pada fungsi if yang telah di setting, hasil keluaran output bernilai benar sehingga tegangan (Vout) yang keluar memenuhi untuk menghidupkan LED.