Pengujian Sensor Kecepatan Angin dengan Tampilan LCD

transistor terdapat sebuah lempeng propeler yang dapat bergerak berputar. Output rangkaian sensor kecepatan angin dihubungkan dengan port 1.0 mikrokontroler AT89S51. Apabila lempeng propeler tepat tegak lurus terhadap tranceiver infra merah maka sinar infra merah akan terhalang oleh lempeng sehingga sinar infra merah tersebut tidak dapat diterima oleh phototransisto r. Jika phototransistor tidak menerima sinar infra merah maka output rangkaian sensor inframerah yang masuk ke mikrokontroler AT89S51 adalah bit 1. Begitu juga sebaliknya, jika lempeng penghalang sudah tidak lagi menghalangi sinar infra merah dari infrared emitting diode menuju phototransistor maka output rangkaian sensor kecepatan angin yang masuk ke mikrokontroler AT89S51 adalah bit 0. Untuk menguji bekerja tidaknya sensor kecepatan ini dilakukan dengan pengukuran tegangan pada port 1.0 mikrokontroler AT89S51. Pada saat phototransistor terhalang lempeng dan tidak menerima sinyal infra merah maka port 1.0 mikrokontroler AT89S51 harus mendapat bit 1 yang ditandai dengan menyalanya LED dan sebaliknya pada saat phototransistor tidak terhalang lempeng maka pada port 1.0 mendapat bit 0 dan LED padam. Diagram blok pengujian rangkaian sensor kecepatan angin dapat dilihat pada gambar 5.9. Gambar 5.9 Blok diagram pengujian sensor kecepatan angin Untuk mengetahui kecepatan angin, maka harus ada data mengenai hubungan kecepatan angin dengan jumlah putaran propeler kincir angin yang dirancang. Data ini akan menjadi dasar dalam pembuatan data base software anemometer digital yang akan di- download ke dalam mikrokontroler AT89S51. Untuk mendapatkan data korelasi antara kecepatan angin dan jumlah putaran AT89S51 LCD Sensor Kecepatan Voltmeter Port 1.0 Port 0 propeler maka penulis melakukan uji banding dengan peralatan anemometer yang ada di Stasiun Meteorologi dan Geofisika yang secara rutin telah dikalibrasi. Tabel 5.4 Korelasi kecepatan angin dan jumlah putaran propeler dalam 3 detik . KECEPATAN ANGIN Knots JUMLAH PUTARAN 0,5 1 1 2 1,5 3,5 2 4 2,5 5,5 3 6 3,5 7 4 8 5 10,5 6 12 Data mengenai korelasi antara kecepatan angin dan jumlah putaran propeler diperoleh dengan cara menghitung jumlah putaran propeler dalam jangka waktu 3 detik pada saat kecepatan tertentu. Pengukuran juga tidak dapat dilakukan pada semua level kecepatan mengingat kecepatan angin yang tidak menentu dan ada kecepatan angin yang bersifat ekstrim yang sangat jarang terjadi. Hasil pengukuran korelasi antara kecepatan angin dan jumlah putaran propeler dapat dilihat pada tabel 5.5 dan grafik 5.1. 2 4 6 8 10 12 14 0,5 1 1,5 2 2,5 3 3,5 4 4,5 5 5,5 6 Putaran Grafik 5.1 Korelasi kecepatan angin dan jumlah putaran propeler dalam 3 detik . Kecepatan angin Jml. Putaran knot Setelah diperoleh data korelasi antara kecepatan angin dan jumlah putaran propeler langkah selanjutnya yaitu menggunakan data pada tabel 5.5 sebagai acuan dalam membuat software data base kecepatan angin. Karena data mengenai korelasi antara kecepatan angin dan jumlah putaran propeler tidak lengkap maka data kecepatan yang tidak tercantum pada tabel 5.5 dibuat dengan perkiraan korelasi data secara linier . Cuplikan program untuk kecepatan angin adalah sebagai berikut: baca: clr P1.0 ;port 1.0 dibuat kondisi low jnb P1.0,cek ;jika P1.0 low maka lompat ke cek jnb P1.0, ;jika P1.0 high maka tunggu hingga low lg inc r5 ;R5 + 1 call cek ;panggil cek cek: jb P1.1,speed_0;jika P1.1 high lompat ke speed_0 call speed_z ;panggil speed_z speed_z: CJNE R4,0b,speed_1 ;jika isi R4 ≠ nol lompat ke speed_1 Mov DPTR,kecepatan_0 ;isi DPTR pesan kecepatan_0 Lcall Posisi ;panggil Posisi Ljmp Startarah ;loncat ke Startarah speed_0: mov a,r5 ;copy data R5 ke accumulator mov r4,a ;copy data accumulator ke R4 mov r5,0 ;kosongkan R5 CJNE R4,0b,speed_1 ;jika R4 ≠ nol lompat ke speed_1 Mov DPTR,kecepatan_0 ;isi DPTR pesan kecepatan_0 Lcall Posisi ;panggil Posisi Ljmp Startarah ;loncat ke Startarah speed_1: CJNE R4,1,speed_2 ;jika isi R4 ≠ 1 lompat ke speed_2 Mov DPTR,kecepatan_1 ;isi DPTR pesan kecepatan_1 Lcall Posisi ;panggil Posisi Ljmp Startarah ;loncat ke Startarah speed_2: CJNE R4,2,speed_3 ;jika isi R4 ≠ 2 lompat ke speed_3 Mov DPTR,kecepatan_2 ;isi DPTR pesan kecepatan_2 Lcall Posisi ;panggil Posisi Ljmp Startarah ;loncat ke Startarah speed_3: CJNE R4,3,speed_4 ;jika isi R4 ≠ 3 lompat ke speed_4 Mov DPTR,kecepatan_3 ;isi DPTR pesan kecepatan_3 Lcall Posisi ;panggil Posisi Ljmp Startarah ;loncat ke Startarah kecepatan_0: DB 0.0knot calm kecepatan_1: DB 0.5knot calm kecepatan_2: DB 1.0knot calm dst ........................................... Berikut adalah penjelasan mengenai cuplikan program di atas: Setelah anemometer berhasil melakukan pembacaan arah mata angin, langkah berikutnya yaitu menghitung kecepatan angin. Pertama kali yang dilakukan adalah me- reset port 1.0 menjadi berlogika 0. Langkah selanjutnya yaitu mikrokontroler AT89S51 akan menunggu input bit 1 pada port 1.0 yang berasal dari sensor kecepatan angin. Apabila port 1.0 masih dalam kondisi low maka langsung loncat ke subrutin cek untuk memeriksa apakah pada port 1.1 telah menerima input dari timer .Apabila pada port 1.0 nantinya diterima bit 1 maka ditunggu sampai bit ini kembali ke kondisi low kembali. Hal ini bertujuan untuk memisahkan antara bit 1 dengan bit lainnya karena pada kecepatan tertentu panjang bit 1 yang diterima tentunya juga berbeda-beda. Hal ini juga bertujuan untuk mengenali jika pada suatu saat sensor kecepatan angin dalam kondisi nyangkut. Setelah bit 1 kembali lagi ke kondisi low maka mikrokontroler AT89S51 akan melakukan increment terhadap isi register R5 data R5 +1. Langkah ini untuk menghitung dan menyimpan bit 1 yang telah terbaca di register R5. Setelah itu dilanjutkan dengan sub rutin cek. Sub rutin ini berfungsi mengecek port 1.1 apakah sudah menerima bit 1 dari rangkaian timer . Jika yang diterima masih bit 0 maka langkah dilanjutkan ke speed_z. Langkah ini bertujuan pada saat aneometer pertama kali dihidupkan dan belum ada data kecepatan angin yang diproses karena belum menerima bit 1 dari timer maka pada LCD ditampilkan kecepatan saat itu adalah 0 knot. Jika pada saat sub rutin cek dijalankan ternyata port 1.1 telah menerima bit 1 dari rangkaian timer maka langkah selanjutnya langsung loncat ke sub rutin speed_0. Pada sub rutin speed_0 data dari register R5 di- copy ke accumulator A untuk kemudian di- copy ke register R4. Setelah data di- copy ke R4 kemudian data di R5 dihapus reset untuk mulai menghitung bit 1 dari awal lagi yang akan digunakan untuk menghitung kecepatan angin pada 3 detik berikutnya. Langkah berikutnya yaitu membandingkan data jumlah bit yang telah di- copy ke R4 dengan data base kecepatan angin. Jika misalnya ternyata di R4 tercatat ada 1 buah bit 1 dalam 3 detik maka sub rutin yang cocok adalah sub rutin speed_1 dan pada data pointer DPTR akan di- copy pesan kecepatan_1. Setelah itu dilanjutkan dengan memanggil sub rutin posisi yang berisi rangkaian perintah untuk menampilkan pesan di DPTR pada baris pertama LCD. Setelah pesan mengenai kecepatan angin dan kategori angin berhasil ditampilkan di LCD maka langkah berikutnya yaitu loncat kembali ke Startarah untuk mulai lagi pembacaan arah angin. Softwar e yang sudah benar dan lengkap kemudian di- download ke dalam mikrokontroler AT89S51 dengan ISP flash programing . Hasil dari pengujian rangkaian sensor kecepatan angin dapat dilihat pada tabel 5.5. Tabel 5.5 Hasil pengujian sensor kecepatan KONDISI PHOTOTRANSISTOR TEGANGAN Port 1.0 KONDISI LED Tidak terhalang 0 V Padam Terhalang propeler 2,74 V Menyala Foto pengujian rangkaian sensor kecepatan angin dapat dilihat pada gambar 5.10 Gambar 5.10 Gambar pengukuran tegangan sensor kecepatan angin Dari hasil pengujian rangkaian sensor kecepatan angin didapat hasil yang sesuai dengan rancangan pada bab IV sehingga anemometer digital dapat digunakan untuk mengukur kecepatan angin. 2,74 Volt Sensor infra merah propeler

5.2.5 Pengujian Alarm

Rangkaian alarm di dalam rancangan ini berfungsi memberikan peringatan apabila kecepatan angin yang terukur tergolong ekstrim. Rangkaian alarm terhubung dengan port 3.1 mikrokontroler AT89S51. Pada saat berhembus angin yang tergolong badai dan topan 10 sd 12 knot maka port 3.1 yang semula berlogika 0 low akan berubah menjadi berlogika 1 high dengan tegangan sekitar 4,36 Volt. Karena port 3.1 yang merupakan Vcc bagi rangkaian alarm mendapat tegangan sekitar +5V maka akan menyebabkan IC 555 di dalam rangkaian alarm berosilasi. Proses osilasi ini terus berlangsung selama Port 3.1 dalam kondisi high karena rangkaian alarm ini adalah rangkaian osilator astable . Output dari rangkaian alarm ini berupa gelombang square yang dihubungkan dengan speaker . Gelombang listrik berupa gelombang square IC 555 diubah menjadi gelombang suara oleh speaker sehingga dapat didengar oleh telinga manusia berupa suara alarm . Diagram blok pengujian rangkaian dapat dilihat pada gambar 5.12. Pengujian ini untuk mengetahui kondisi port 3.1 mikrokontroler AT89S51 pada saat kecepatan angin yang ekstrim dilakukan dengan cara mengukur tegangan pada port 3.1 mikrokontroler AT89S51 dengan menggunakan voltmeter dan mengamati kondisi speaker. Gambar 5.11 Blok diagram pengujian rangkaian alarm Hasil pengukuran port 3.1 mikrokontroler AT89S51 dengan menggunakan voltmeter dapat dilihat pada tabel 5.6. AT89S51 Alarm Voltmeter Port 3.1 Speaker Tabel 5.6 Pengujian port 3.1 dan rangkaian alarm Kondisi Port Tegangan P3.1 Kondisi Alarm Low 0 V Diam High 4,36 V Bunyi

5.3 Cara Kerja Anemometer secara Keseluruhan

Perangkat lunak yang telah dirancang pada Bab IV ditulis ke dalam EPROM internal mikrokontroler AT89S51 melalui port 1 yang dihubungkan dengan port paralel LPT1 komputer. Software yang digunakan untuk download program ke mikrokontroler AT89S51 yaitu ISP flash programing . Isi lengkap software anemometer digital berbasis mikrokontroler AT89S51 ini dapat dilihat di halaman lampiran. Gambar 5.12 Download program anemometer digital ke dalam AT89S51 Untuk mengetahui apakah perangkat lunak yang dirancang telah sesuai dengan yang direncanakan, maka dilakukan pengujian dengan menggabungkan antara perangkat keras dan lunak. Setelah perangkat keras dan lunak terhubung dengan baik maka anemometer digital bisa dihidupkan untuk pengujian. Pada saat pertama kali Buka file .hex dengan software ISP lalu tekan A