• Tidak ada hasil yang ditemukan

Perancangan Sistem Kendali Posisi Kesetimbangan Dan Navigasi Untuk Prototipe Satelit

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perancangan Sistem Kendali Posisi Kesetimbangan Dan Navigasi Untuk Prototipe Satelit"

Copied!
65
0
0

Teks penuh

(1)

iv

A satellite requires a system to control that is used to reach a set point or balance that is required to get information, so it can be implemented into the satellite prototype. The purpose of this satellite prototype design is control system in changing the target area, balance and speed inside a building and outside.

To move and reach the setpoint, it uses a brushless motor with a Electronic Speed Control as its controllers of the electricity voltage and currents, a compass censor to make its destination, and an accelerometer censor as its balancer in the satellite prototype. As the control center, this satellite uses a basic stamp microcontroller, that is programmed using the basic language. Receiving data is done by air (wireless) and received by a computer.

The shape of this satellite prototype is like a tube with wings that can be spread in order to get ready for controlling the satellite. To get a setpoint, the satellite is hanged so it can fly. Receiving the data can be checked in the computer screen, that includes changing the value of the setpoint that is sent to this satellite prototype.

Keywords: Basic Stamp 2p40, Compass Censor HM55B, Accelerometer Sensor

(2)

iii

Sebuah satelit memerlukan sistem pengendalian yang berguna untuk mengejar setpoint atau kesetimbangan yang diperlukan untuk mendapatkan informasi, sehingga dapat diimplementasikan pada prototipe satelit. Tujuan perancangan prototipe satelit yaitu untuk sistem kendali dalam perubahan arah target gerak, kesetimbangan dan kecepatan baik dalam ruangan maupun luar ruangan.

Penggerak menggunakan brushless motor untuk mengejar setpoint dengan

Electronic Speed Control sebagai pengendali tegangan dan arus motor, sensor kompas sebagai penentu arah dan sensor accelerometer sebagai mengejar kesetimbangan dalam prototipe satelit. Sedangkan sebagai pusat kendali, prototipe satelit menggunakan mikrokontroler basic stamp, yang diprogram menggunakan bahasa basic. Penerimaan data dilakukan melalui jalur udara (wireless) yang diterima komputer.

Bentuk dari prototipe satelit seperti tabung dengan sayap atau tangan yang dapat dibentangkan untuk memulai kendali prototipe satelit. Dalam hal ini, untuk mengejar setpoint yang diinginkan maka prototipe satelit digantungkan agar melayang-layang. Penerimaan data sensor dari prototipe satelit dapat dilihat pada tampilan dikomputer termasuk perubahan nilai setpoint yang dikirim ke prototipe satelit.

Kata kunci : Basic stamp 2p40, Sensor kompas HM55B, Sensor accelerometer

MMA3201, brushless motor, Radio frekuensi YS1020UB.

(3)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Sistem pengendalian merupakan salah satu hal yang dibutuhkan dalam teknologi. Seperti teknologi penerbangan maupun antariksa, dengan sistem kendali teknologi tersebut mendapatkan informasi yang diinginkan atau posisi dari suatu benda dapat sesuai keinginan.

Teknologi satelit merupakan salah satu teknologi yang mendapatkan informasi diudara. Untuk mendapatkan informasi dibutuhkan teknologi kendali pada satelit agar titik koordinat dan orbit yang diinginkan tidak berubah-ubah, sehingga penentuan arah gerak atau kendali posisi sangat diperlukan dalam teknologi satelit agar mengarah kepada posisi atau titik koordinat dengan benar. Dalam menentukan arah gerak atau kendali posisi diudara sangat sulit, untuk mencapainya diperlukan kendali yang benar. Bahkan dalam mencapai kesetimbangan saja sangat sulit karena beban dan gangguan dari luar seperti angin. Kesetimbangan merupakan keadaan dimana 2 proses yang berlawanan terjadi dengan laju yang sama, akibatnya tidak terjadi perubahan.

Selain menentukan arah gerak dan kesetimbangan, dalam teknologi satelit sistem navigasi juga sangat penting, karena navigasi dalam satelit merupakan sistem yang menggunakan sinyal radio yang disalurkan kepenerima dipermukaan tanah untuk menentukan lokasi sebuah titik dipermukaan bumi. Sehingga penentuan arah gerak, kesetimbangan dan kecepatan sesuai dengan setpoint atau posisi yang dibutuhkan merupakan hal yang ingin dicapai.

Untuk mencapai hal tersebut, dapat diimplementasikan pada sebuah prototipe satelit. Dengan tujuan agar arah gerak, kesetimbangan dan kecepatan prototipe satelit dalam mencapai setpoint tepat. Dalam hal ini untuk mengejar

(4)

Manfaat prototipe satelit dapat digunakan sebagai pengendali posisi payload

roket atau mikro satelit. Sebagai pengendali atau kontrol dari prototipe satelit di gunakan kontrol PID. Pengontrolan PID merupakan perpaduan dari pengontrol

proporsional (untuk memepercepat respon), pengontrol integral (untuk

menghilangkan error steady) dan pengontrol derivatif (untuk memperbaiki sekaligus mempercepat respon transien). Cara kerja pengontrol PID pada dasarnya dilatarbelakangi oleh kesederhanaan struktur kontrol.

1.2 Maksud dan Tujuan

Maksud dari tugas akhir ini adalah merancang sistem kendali untuk perubahan arah target gerak, kesetimbangan baik dalam ruangan maupun luar ruangan pada prototipe satelit. Tujuan perancangan prototipe satelit sebagai mikro satelit yang dapat mengejar arah target gerak adalah untuk mendapatkan informasi diudara.

1.3 Rumusan Masalah

Berdasarkan latar belakang di atas maka, rumusan masalah pada penelitian ini adalah bagaimana merancang sistem kendali posisi, kesetimbangan baik dalam ruangan maupun luar ruangan pada prototipe satelit.

1.4 Batasan Masalah

Pada perancangan prototipe satelit yang dibuat ini terdapat beberapa batasan masalah yaitu:

1. Mikrokontroler yang akan digunakan pada perancangan pra pototipe satelit ini adalah basic stamp.

2. Adapun sensor-sensor yang digunakan pada pra pototipe satelit: a. Kompas : HITACHI HM55B

b. Accelerometer : MMA3201

(5)

a. Brushless motor dan electronic speed controller

b. Propeler

4. Tenaga sumber yang dipakai adalah LIPO (Lithium Polymer)

5. Mode komunikasi lewat radio dengan secara half duplex, di mana data dapat ditransmisikan atau diterima secara dua arah tetapi tidak dapat secara bersama-sama.

6. Pengontrolan menggunakan PID.

7. Mengejar setpoint prototipe satelit digantungkan.

1.5 Metode Penelitian

Metodologi penelitian yang dilakukan dalam penyelesaian tugas akhir ini meliputi:

1. Studi literatur

Suatu metode pengumpulan data dengan membaca atau mempelajari buku yang berhubungan dengan masalah yang menjadi topik tugas akhir.

2. Perancangan

Mengaplikasikan teori yang didapat dalam perancangan sistem untuk perangkat keras, perangkat lunak dan pengujian sistem.

3. Eksperimen

Melakukan eksperimen atau uji coba alat, komponen dan kerja prototipe satelit.

4. Analisa data

Analisa yang dilakukan dari pengujian sistem dan mengambil sebuah simpulan dari penelitian ini

1.6 Sistematika Penulisan

Sistematika penulisan laporan Tugas Akhir ini adalah sebagai berikut : BAB I : Pendahuluan

(6)

BAB II : Landasan Teori

Bab ini membahas tentang teori-teori pendukung yang digunakan dalam perencanaan dan pembuatan tugas akhir

BAB III : Perancangan Sistem

Bab ini berisikan tentang perancangan alat yang dibuat untuk tugas akhir ini, meliputi garis besar sistem, perancangan perangkat keras dan perancangan software yang digunakan.

BAB IV : Pengujian dan Analisa Sistem

Bab ini berisi tentang pengujian–pengujian dan analisa data pada tugas akhir ini.

BAB V : Simpulan dan Saran

(7)

5 2.1 Pengertian dan Sejarah Satelit

Perkembangan teknologi satelit semakin maju, hal tersebut ditandai dengan perubahan desain satelit yang berukuran besar menjadi berukuran kecil dengan mempunyai teknologi yang sama. Satelit mempermudah kita dalam mendapatkan informasi secara cepat memperoleh berita serta berbagai kejadian yang diperlukan manusia melalui udara, tanpa harus melibatkan manusia dalam bahaya.

Satelit buatan manusia pertama adalah Sputnik 1, diluncurkan oleh Soviet pada tanggal 4 Oktober 1957. Sputnik 2 diluncurkan pada tanggal 3 November 1957 dan membawa awak mahluk hidup pertama ke dalam orbit yaitu seekor anjing bernama Laika. Satelit buatan manusia terbesar pada saat ini yang mengorbit bumi adalah International Space Station. Mikro satelit merupakan salah satu jenis satelit yang ringan dan kecil sehingga biaya pembuatannya lebih murah dibandingkan satelit yang lainnya. Mikro satelit yang telah diluncurkan adalah satelit Lapan-TubSat pada tahun 2007 dan dikembangkan juga satelit kembar yakni Saletit Lapan-A2 dan Satelit Lapan-A3 yang akan diluncurkan pada tahun 2011.

(8)

2.2 Perangkat Keras (Hardware) 2.2.1 Mikrokontroler Basic Stamp

Basic stamp adalah suatu mikrokontroler yang dikembangkan oleh Parallax Inc yang diprogram menggunakan bahasa pemrogrograman basic dan populer sekitar pada tahun 1990an. Mikrokontroler basic stamp membutuhkan power supply saat men-download dan program di-download melaui port serial.

Kode PBasic (pemrograman basic) disimpan di dalam EEPROM serial pada

board basic stamp. EEPROM digunakan dalam basic stamp 1 dan 2 yang dijamin menyimpan selama 40 tahun ke depan dan mampu ditulisi ulang 10.000.000 kali perlokasi memori.

Mikrokontroler basic stamp memiliki beberapa versi yang berbeda – beda, yaitu basic stamp 1, basic stamp 2, basic stamp 1e, basic stamp 2P, basic stamp

2Pe dan basic stamp 2sx. Basic stamp jalan pada tegangan DC 5 sampai 15 volt.

Basic stamp yang dipakai adalah basic stamp BS2P40 yang mempunyai 40 pin I/O. Pemilihan basic stamp ini karena membutuhkan banyak input atau output

yang dipakai dalam pengontrolan prototipe satelit. Berikut ini adalah tampilan

basic stamp BS2P40.

Gambar 2.2. Modul basic stamp (BS2P40)

Modul basic stamp 2p40 mempunyai spesifikasi hardware sebagai berikut: 1. Mikrokontroler basic stamp 2P40 Interpreter Chip (PBASIC48W/P40) 2. 8 x 2Kbyte EEPROM yang mampu menampung hingga 4000 instruksi. 3. Kecepatan prosesor 20MHz Turbo dengan kecepatan eksekusi program

(9)

4. RAM sebesar 38byte (12 I/O, 26 variabel) dengan Scratch Pad sebesar 128

byte.

5. Jalur input / output sebanyak 32 pin.

6. Tersedia jalur komunikasi serial UART RS-232 dengan konektor DB9. 7. Tegangan input 9 – 12 VDC dengan tegangan output 5 VDC.

Berikut ini adalah alokasi pin yang terdapat pada mikrokontroler basic stamp BS2P40.

Gambar 2.3. Alokasi pin basic stamp

Adapun hubungan antara komputer dengan modul BS2P40 memiliki konfigurasi sebagai berikut :

Tabel 2.1. Hubungan pin antara komputer dengan BS2P40 (DB9) COM Port

Komputer DB9

Modul BS2P40 DB9 RX (Pin 2) RX (Pin 2) TX (pin 3) TX (pin 3) DTR (pin 4) DTR (pin 4) GND (pin 5) GND (pin 5) DSR (Pin 6) DSR (Pin 6) RTS (Pin 7) RTS (Pin 7)

2.2.2 Sensor Kompas HM55B

(10)

menjadi 3 V dan itu merupakan daerah kerja kompas ini. Pada saat program dijalankan kecepatan sensitivitas 30-40 ms. Dengan mikrokontroler memudahkan untuk menampilkan arah dalam format 3600. Berikut ini adalah tampilan dan konfigurasi pin kompas hitachi HM55B.

(a) (b)

Gambar 2.4. (a) Bentuk fisik sensor kompas HM55B, (b) konfigurasi pin sensor kompas HM55B

Berikut di bawah ini spesifikasi modul Hitachi HM55B: 1. Tegangan sumber: 3V (Onboard regulator).

2. Sensitivitas: 1.0 - 1.6 uT/lsb. 3. Resolusi: 6 bit (64 direction). 4. Waktu konversi: 30 - 40 ms. 5. Synchronous serial interface.

6. Dimensi: 0.3 inci, 6-pin DIP package. 7. Range pengoperasian: 0 - 70oC.

2.2.3 Sensor Accelerometer MMA3201EG

Accelerometer berfungsi untuk mengukur percepatan, mendeteksi getaran, dan mengukur percepatan akibat gravitasi bumi. Pada satelit accelerometer

(11)

(a) (b)

Gambar 2.5. (a) Bentuk fisik Sensor accelerometer MMA3201EG, (b) konfigurasi pin sensor accelerometer MMA3201EG

Berikut ini adalah tabel yang menjelaskan konfigurasi pin pada sensor MMA3201EG diperlihatkan pada tabel 2.2.

Tabel 2.2. Konfigurasi pin MMA3201EG

No. Pin Nama Pin Keterangan

1 sampai 3 - Leave unconnected.

4 - Tidak ada koneksi internal. Leave unconnected.

5 ST Logika masukan pin yang digunakan untuk memulai self-test.

6 XOUT Data outputaccelerometer, untuk arah X.

7 STATUS Logika keluaran untuk menujukan kesalahan.

8 VSS The power supply ground.

9 VDD The power supply input.

10 AVDD Power supply input (Analog).

11 YOUT Data output accelerometer, untuk arah Y.

12 sampai 16 - Used factory trim. Leave unconnected.

17 sampai 19 - Tidak ada koneksi internal. Leave

unconnected.

20 GND Ground.

2.2.4 ADC (Analog to Digital Converter)

(12)

diskrit. Karena prinsip kerja ADC adalah mengkonversi sinyal analog ke dalam bentuk besaran yang merupakan rasio perbandingan sinyal input dan tegangan referensi. Sebagai contoh, bila tegangan referensi 5 volt, tegangan input 3 volt, rasio input terhadap referensi adalah 60%. Jadi, jika menggunakan ADC 8 bit dengan skala maksimum 255, akan didapatkan sinyal digital sebesar 60% x 255 = 153 (bentuk desimal) atau 10011001 (bentuk biner).

ADC yang digunakan adalah ADC0832, ADC ini merupakan sebuah ADC serial yang datanya langsung dapat diterima mikrokontroler pada satu pin saja. ADC ini memiliki resolusi sampai dengan 8 bit dengan 2 channel analog

multiplaxer, dapat bekerja dengan supply tegangan sebesar 0-5 Volt. Berikut konfigurasi pin IC ADC0832 seperti pada gambar 2.6.

(a) (b)

Gambar 2.6. (a) Bentuk fisik IC ADC0832, (b) konfigurasi pin IC ADC0832 Spesifikasi yang dimiliki ADC0832 sebagai berikut:

1. Jangkauan input berkisar 0-5 volt dengan satu buah catu daya 5 volt

2. Mempunyai 2 channelmultiplexer dengan 2 buah alamat logika. 3. Mudah interface untuk semua mikroprosesor.

4. Beroperasi dengan link data serial.

(13)

2.2.5 Penggerak Prototipe satelit 2.2.5.1 Brushless motor

Brushless motor merupakan motor yang mempunyai permanen magnet pada

bagian "rotor" sedangkan elektro-magnet pada bagian "stator"-nya. Secara umum, kecepatan putaran brushless motor yang keluar dari ESC diatur oleh pulsa dari mikrokontroler, sehingga berbeda dengan brushed.

Gambar 2.7. Brushless motor Keuntungan dari brushless motor sebagai berikut :

1. Komputer dapat mengatur kecepatan motor lebih baik sehingga membuat

brushless motor lebih efisien.

2. Tidak adanya storing atau electrical noise.

3. Tidak menggunakan brushes yang dapat rusak setelah lamanya pemakaian. 4. Dengan posisi electromagnets dibagian stator, maka pendinginan motor

menjadi lebih mudah.

5. Jumlah electromagnets di stator dapat sebanyak mungkin untuk mendapatkan kontrol yang lebih akurat.

2.2.5.2 ESC (Electronic Speed Control)

ESC (Electronic Speed Control) berfungsi sebagai pengatur kecepatan motor, juga untuk menaikan jumlah arus yang diperlukan oleh motor. ESC dapat dikatakan juga sebagai driver motor dengan mengeluarkan pulsa untuk brushless

(14)

Gambar 2.8. ESC (Electronic Speed Control) 2.2.5.3 Propeler

Baling-baling atau propeler merupakan jenis kipas yang menghasilkan tenaga dengan mengkonversi gerakan rotasi menjadi daya dorong untuk menggerakkan sebuah benda atau kendaraan. Propeler tersebut adalah salah satu yang sering dipakai pada aermodelling untuk daya dorong.

Gambar 2.9. Propeler

2.2.6 Catu Daya dan Regulator

Catu daya merupakan bagian penting dalam perancangan prototipe satelit. Sehingga tanpa bagian catu daya, prototipe sateli tidak akan berfungsi. Pemilihan catu daya sangat penting karena jika salah dalam pemilihan maka prototipe satelit tidak akan berfungsi dengan maksimal.

Penentuan sistem catu daya yang akan digunakan ditentukan oleh beberapa faktor, diantaranya :

1. Tegangan

Setiap aktuator tidak memiliki tegangan yang sama. Hal ini akan berpengaruh terhadap desain catu daya.

2. Arus

Arus memiliki satuan Ah (Ampere-hour). Semakin besar Ah, semakin lama daya tahan baterai bila digunakan pada beban yang sama.

3. Teknologi Baterai

(15)

dapat dilakukan hanya apabila benar-benar kosong, dan ada pula yang dapat diisi ulang kapan saja tanpa harus menunggu baterai tersebut benar-benar kosong.

Baterai yang digunakan pada prototipe satelit ini berjenis lithium polymer

(LiPo). Baterai ini dapat diisi ulang (rechargeable). Baterai yang digunakan memiliki tegangan 11,1 Volt dan arus sebesar 2200 mAh dengan 3 cell di dalamnya. Cell merupakan teknologi konversi energi elektrokimia yang mampu mengubah senyawa hidrogen dan oksigen menjadi air, dan dalam prosesnya menghasilkan listrik. Berikut ini adalah contoh sebuah lithium polymer.

Gambar 2.10. Lithium Polymer

Pemakaian baterai jenis ini harus dihentikan atau dilepas jika tegangan baterai turun mendekati batas tegangan 11,1 Volt, sehingga harus diisi ulang agar melebihi tegangan 11,1 Volt. Selain jenis baterai lithium polymer terdapat juga jenis baterai lainnya, antara lain baterai Ni-cd, Alkaline, Lead Acid dan sebagainya.

Komponen-komponen yang terdapat pada prototipe satelit seperti sensor membutuhkan regulator untuk mengatur tegangan yang dikeluarkan lithium polymer agar turun dan mempunyai nilai yang tetap. Karena komponen tersebut hanya dapat bekerja dengan tegangan tertentu yaitu di bawah 11,1 Volt. Untuk menurunkan tegangan yang tetap, maka digunakan IC regulator yaitu LM2940. Berikut bentuk fisik LM2940 :

(16)

2.2.7 Motor Servo

Sebuah motor servo adalah alat yang dapat mengendalikan posisi, dapat membelokkan dan menjaga suatu posisi berdasarkan penerimaan pada suatu

signal elektronik itu. Pada perancangan prototipe satelit digunakan 2 buah motor

servo pada bagian kanan dan kiri. Pada saat pra prototipe dijalankan motor servo

akan mengangkat dan membentangkan bagian yang seperti sayap dengan beban

brushless motor dan propeler.

Gambar 2.12. Hitec HS-5245MG

HS-5245MG adalah motor servo yang dibuat oleh hitec. Berikut merupakan spesifikasi dari motor servo tersebut :

1. Jenis motor adalah 3 pole ferrite 2. Jenis bearing adalah dual ball bearing 3. Torsi 4.8/6.0v adalah 4,4kg atau 5.5kg

4. Speed 4.8/6.0 v adalah 0.15 detik atau 0.12 detik 5. Ukuran 32.4 X 16.8 X 30.8mm

6. Berat 32g

Karena motor servo merupakan alat untuk mengubah energi listrik menjadi energi mekanik, maka magnet permanen motor servo yang mengubah energi listrik ke dalam energi mekanik melalui interaksi dari dua medan magnet.

(17)

Bagian-bagian dari sebuah motor servo standard adalah sebagai berikut:

1. Konektor yang digunakan untuk menghubungkan motor servo dengan Vcc,

Ground dan signalinput yang dihubungkan ke basic stamp.

2. Kabel menghubungkan Vcc, Ground dan signalinput dari konektor ke motor

servo.

3. Tuas menjadi bagian dari motor servo yang kelihatan seperti suatu bintang

four-pointed. Ketika motor servo berputar, tuas motor servo akan bergerak ke bagian yang dikendalikan sesuai dengan program.

Cassing berisi bagian untuk mengendalikan kerja motor servo yang pada dasarnya berupa motor DC dan gear. Bagian ini bekerja untuk menerima instruksi dari basic stamp dan mengkonversi ke dalam sebuah pulsa untuk menentukan arah atau posisi motor servo.

2.2.8 Komunikasi Radio

Sistem komunikasi radio tidak menggunakan kabel dalam penyampaian informasi atau data, melainkan melalui udara sebagai pengantarnya. Dalam komunikasi radio memiliki sebuah pemancar Tx yang memencarkan dayanya menggunakan antena ke arah tujuan, sinyal yang dipancarkan berbentuk gelombang elektromagnetik. Pada penerima gelombang elektromagnetik ini diterima oleh sebuah antena yang sesuai. Sinyal yang diterima kemudian diteruskan ke sebuah pesawat penerima Rx. Jenis komunikasi dapat dibedakan berdasarkan aliran datanya, antara lain :

1. Simplex communication merupakan komunikasi satu arah, aliran data hanya satu arah. Contoh sistem komunikasi TV, Radio broadcast.

2. Half duplex communication merupakan komunikasi dua arah, data dapat mengalir kedua arah secara bergantian, hanya satu arah saja pada suatu saat. Contoh pada Sistem Walkie-talkies,

(18)

Pada perancangan prototipe satelit menggunakan half duplex dengan radio yang dipakai dalam pengiriman data ini adalah YS-1020UB.

Gambar 2.14. Modem Radio YS-1020UB Modem radio ini mempunyai spesifikasi sebagai berikut :

1. Mempunyai 8 channel untuk pengiriman atau penerimaan data 2. Dapat menggunakan level TTL (Transistor-Transistor Logic).

3. Integrasi antara receiver dan transmiter memerlukan waktu 10 ms antara pengiriman dan penerima.

4. Tipe modulasi yang dipakai adalah GFSK (Gaussian Frequensy Shift Keying). GFSK adalah jenis modulasi Frequency Shift Keying (FSK) yang menggunakan Gaussian Filter untuk melancarkan penyimpangan frekuensi positif/negatif, yang diwakili dengan biner 1 atau 0. Gaussian Filtering merupakan salah satu cara yang sangat standar untuk mengurangi lebar spectral yang disebut dengan " pulse shaping ".

(19)

2.2.9 IC Max232

IC Max232 adalah sebuah IC yang berfungsi untuk mengubah tegangan dari TTL menjadi level RS232. Komunikasi pada radio menggunakan serial pada level TTL sedangkan komputer pada level RS232. Berikut tampilan dan rangkaian IC max232 :

Gambar 2.16. Bentuk fisik IC MAX232

Dalam standard RS232, tegangan antara +3 sampai +15 Volt pada input line receiver dianggap sebagai level tegangan ‘0’ dan tegangan antara –3 sampai –15 Volt dianggap sebagai level tegangan ‘1’. Agar output line driver bisa dihubungkan dengan baik, tegangan output line driver antara +5 sampai +15 Volt untuk menyatakan level tegangan ‘0’, dan antara –5 sampai –15 Volt untuk menyatakan level tegangan ‘1’.

(a) (b)

Gambar 2.17. (a) Level tegangan RS232, (b) Level tegangan TTL

(20)

dan tegangan lebih dari 2.0 Volt dianggap sebagai level tegangan ‘1’. Level tegangan ini sering dikatakan sebagai level tegangan TTL. Untuk menjamin output bisa diumpankan ke input dengan baik, tegangan output TTL saat level ‘0’ yaitu lebih rendah dari 0,4 Volt. Sedangkan tegangan output TTL pada saat level ‘1’ yaitu lebih tinggi dari 2,4 Volt

2.2.10 Pengontrol PID

Sistem kontrol merupakan proses pengendalian error dengan cara memasukkan nilai error tersebut untuk dibandingkan dengan sistem pengendalian. Tujuannya untuk mengurangi error tersebut dan menghasilkan

output atau keluaran yang sesuai dengan setpoint yang akan dicapai. Pada perancangan prototipe satelit menggunakan cara pengontrolan PID (Proporsional Integral dan Derivatif). Secara umum, pengontrolan PID menggunakan close loop

atau umpan balik yaitu program diolah pada mikrokontroler lalu menjalankan

actuator setelah itu mengeluarkan output. Hasil output akan terus diperiksa oleh sensor agar dapat mencapai setpoint atau keluaran yang diinginkan. Jika tidak sesuai dengan setpoint yang diinginkan maka proses dari prototipe satelit akan terus berputar sampai bertemu dengan setpoint yang diinginkan seperti pada gambar 2.16 :

Penggerak Proses

Sensor

Set Point Output

Kontrol PID

MV CO

ERROR

+

-Gambar 2.18. Pengontrolan PID dengan close loop

Berikut adalah penjelasan gambar di atas:

1. Setpoint merupakan nilai proses yang diinginkan, terdapat dua pengaturan

(21)

2. Error merupakan nilai set point yang dikurangi dengan hasil pengukuran sensor.

3. Kontrol PID di atas menggunakan close loop atau umpan balik pada prosesnya dan terjadi pada mikrokontroler.

4. Conroller Output (CO) merupakan keluaran dari kontrol.

5. Penggerak merupakan elemen akhir sistem kontrol yang menerjemahkan sinyal kontrol yang keluar dari unit kontol ke plant atau proses, berupa

brushless motor dan propeler.

6. Manipulated variable (MV) merupakan variabel yang besarannya secara langsung dapat dimanipulasi oleh kontroler.

7. Proses merupakan kejadian fisis yang variabelnya ingin dikontrol.

8. Output merupakan hasil keluaran dari proses. Hasil output akan terus diperiksa oleh sensor agar dapat mencapai setpoint yang diinginkan dan kesetimbangan yang tepat. Jika tidak sesuai dengan setpoint yang diinginkan maka proses dari benda yang dibuat akan terus berputar seperti pada blok diagram di atas, sehingga proses tersebut dapat dikatakan cloose loop (terjadi umpan balik untuk sensor) dan terjadi pada kontrol PID.

9. Sensor merupakan alat yang melakukan hubungan langsung dengan proses yang ingin ditinjau. Pada tahap ini sensor akan terus menerus memproses sampai set point yang diinginkan tercapai. Serta memeperkecil error yang terjadi sebelum masuk ke pengontrolan PID.

Berikut merupakan persamaan dari kontrol PID yang diperlihatkan pada persamaan:

...2.1 Keterangan :

: output kontroler

: gain proporsional

: gain integral

: gain derivatif

: error

(22)

Persamaan kontrol PID dapat diimplementasikan ke dalam bahasa pemrograman, berikut penjabaran persamaan kontrol PID ke dalam bahasa pemrograman.

1. Kontrol Proposional

a. Persamaan proposional :

...2.2 b. Jika dalam bahasa pemrograman menjadi :

P = KP*error(current) 2. Kontrol Integral

a. Persamaan integral :

...2.3 b. Jika dalam bahasa pemrograman menjadi :

error(accummulator) = error(accummulator)+ error(current) I=KI* error(accummulator)

3. Kontrol Derivatif a. Persamaan derivatif :

...2.4 b. Jika dalam bahasa pemrograman menjadi:

error(delta) = error(current)-error(previous) D = KD*error(delta)

error(previous) = error(current)

Pada dasarnya aksi kontrol PID bertujuan untuk menggabungkan kelebihan-kelebihan yang dimiliki komponen PID. Komponen yang dimiliki antara lain:

1. Pengontrol proporsional berfungsi untuk mempercepat respon 2. Pengontrol Integral berfungsi untuk menghilangkan error steady.

3. Pengontrol derivatif berfungsi untuk memperbaiki sekaligus mempercepat

(23)

Dalam pengaturan tunning dalam kontrol PID akan berpengaruh terhadap kerja proses yang dikeluarkannya. Pengaruh dari tuning dapat dilihat pada tabel :

Tabel 2.3. Pengaruh tunning salah satu parameter PID terhadap kerja proses Nilai Waktu

Tanjakan Overshoot

Waktu

Penetapan Kestabilan Pembesaran KP Berkurang Bertambah Sedikit

bertambah Menurun Pembesaran KI Sedikit

berkurang Bertambah Bertambah Menurun Pembesaran KD Sedikit

berkurang Berkurang Berkurang Meningkat

Dari tabel 2.3 dapat dijelaskan parameter PID terhadap kerja proses dan dapat dilihat pada gambar 2.18

1. Waktu tanjakan adalah waktu yang diperlukan respon untuk naik dari 0 sampai 100% harga akhirnya.

2. Overshoot adalah lonjakan maksimum yang dialami oleh respon proses. 3. Waktu penetapan adalah waktu yang diperlukan respon untuk mencapai dan

menetap disekitar 95%-98% dari harga akhirnya.

Gambar 2.19. Parameter PID terhadap kerja proses

(24)

Jika kontroler tidak memiliki anti windup dengan terjadinya beban berlebihan, maka output integrator pada kontroler PID akan terus menerus membesar. Untuk menghindari kejadian tersebut dalam kontroler dapat dipasang anti windup. Anti

windup dapat diimplementasikan ke dalam bahasa pemrograman menjadi :

If (input<=min) then

Output = min

Else if (input>=max)

Output = max Else

Output =input

2.3 Perangkat Lunak (Software) 2.3.1 Pengenalan Basic StampEditor

Perangkat lunak merupakan faktor penting dalam tahap perancangan prototipe satelit. Perangkat lunak ini merupakan algoritma atau listing program yang ditanamkan kedalam mikrokontroler. Program dapat bermacam - macam bentuk dan bahasanya sesuai dengan spesifikasi dari mikrokontroler yang digunakan.

Mikrokontroler basic stamp BS2P40 menggunakan bahasa pemrograman

basic. Software yang digunakan adalah basic stamp editor. Basic stamp editor

adalah sebuah editor yang dibuat oleh Paralax Inc untuk menulis listing program, meng-compile dan men-download-nya ke mikrokontroler keluarga basic stamp. Program ini memungkinkan penggunanya memprogram basic stamp dengan bahasa basic yang relatif ringan dibandingkan bahasa pemrograman lainnya. Berikut ini beberapa instruksi-instruksi dasar yang dapat digunakan pada mikrokontroler basic stamp.

Tabel 2.4. Beberapa instruksi dasar basic stamp

Instruksi Keterangan DO...LOOP Perulangan

(25)

PAUSE Waktu tunda milidetik IF...THEN Perbandingan

PULSOUT Pembangkit pulsa PULSIN Menerima pulsa

GOTO Loncat ke alamat memori tertentu HIGH Menset pin I/O menjadi 1

LOW Menset pin I/O menjadi 0 SEROUT Mengirim data secara serial SERIN Menerima data secara serial

Gambar 2.20. Tampilan basic stamp editor

2.3.2 Memprogram Basic Stamp

Dalam membuat sebuah program secara umum, dapat dibagi menjadi empat bagian penting, yaitu :

1. Header

(26)

4. Prosedur

Pemrograman dalam basic stamp editor, secara blok dibagi menjadi empat bagian penting.

Directive

Deklarasi variabel

Program utama

Prosedur

Gambar 2.21. Urutan bagian dari program dalam basic stamp

2.3.2.1 Directive

Directive ditulis paling awal listing program yang dibuat. Bagian ini menentukan tipe prosesor yang digunakan dan versi dari compiler PBASIC yang digunakan untuk meng-compilebahasa basic menjadi bahasa mesin. Tampilannya adalah seperti gambar berikut :

Gambar 2.22. Tampilan bagian directive

2.3.2.2 Menentukan Variabel

Beberapa ketentuan untuk mendeklarasikan variabel dalam mikrokontroler yaitu :

1. PIN : PIN dari mikrokontroler (0-15) 2. VAR : Variabel

3. CON : Konstanta

PIN yang digunakan sudah ditentukan sesuai dengan konfigurasi hardware /

(27)

Gambar 2.23. Tampilan bagian deklarasi variabel

2.3.2.3 Bagian Program Utama

Pada bagian program utama bisa melakukan dua mode, yaitu mode pengetikan langsung atau mode pemanggilan prosedur. Mode pengetikan langsung akan efektif jika program tidak terlalu banyak dan kasus yang sederhana. Tetapi jika program sudah mulai banyak atau rumit, maka sebaiknya program utama memanggil prosedur. Pemanggilan prosedur akan mempermudah dalam pemeriksaan dan lebih terkendali. Listing programnya dapat dilihat pada gambar berikut.

Gambar 2.24. Tampilan bagian program utama yang memanggil prosedur

2.3.2.4 Bagian Prosedur

(28)

Gambar 2.25. Tampilan bagian prosedur

Sebuah prosedur harus mempunyai nama prosedur yang disimpan dibagian paling atas prosedur itu sendiri, serta harus diakhiri dengan return agar kembali lagi ke program utama dan melanjutkan kembali urutan program berikutnya.

2.3.2.5 Memeriksa Sintaks Program

Sangat penting untuk memeriksa sintaks program, hal ini kita lakukan untuk memastikan semua syntax sudah benar. Untuk memeriksa sintaks ini bisa pilih menu RUN, Cek Syntax atau kombinasi tombol CTRL+T. Berikut ini adalah tampilan jika listing program yang kita buat sudah benar.

Gambar 2.26. Hasil pemeriksaan syntax yang sukses (tokenize successful)

2.3.3 Menjalankan Program

(29)

Gambar 2.27. Tampilan jika program sukses di-download

2.3.4 Visual Basic 6.0

Visual basic 6.0 selain disebut sebagai bahasa pemrograman, juga sering disebut sebagai sarana untuk menghasilkan program-program aplikasi berbasiskan

windows. Visual basic pada dasarnya adalah bahasa pemrograman komputer. Bahasa pemrograman adalah perintah-perintah atau instruksi-instruksi yang dimengerti oleh komputer untuk melakukan tugas-tugas tertentu. Visual basic

yang dikembangkan oleh Microsoft sejak tahun 1991 merupakan pengembangan dari pendahulunya yaitu bahasa pemrograman BASIC (Baginners All-purpose Symbolic Instruction Code) yang dikembangkan pada era 1950-an. Beberapa kemampuan atau manfaat dari visual basic diantaranya :

1. Untuk membuat program aplikasi seperti windows.

2. Untuk membuat objek-objek pembantu program seperti misalnya : kontrol

activeX, file help, aplikasi internet, dan sebagainya.

3. Menguji program (debugging) dan menghasilkan program EXE yang bersifat

(30)

Gambar 2.28. Tampilan new project pada visual basic

Tampilan Itegrated Development Environment (IDE) pada sebuah project Visual Basic dengan sebuah form, label dan command button terlihat pada gambar di bawah ini :

Gambar 2.29. Tampilan IDE Visual Basic

Pada perancangan prototipe satelit visual basic berguna sebagai interface

dan penghubung antara komputer dengan prototipe satelit. Sehingga user dapat mengontrol setpoint yang baru atau gerak prototipe satelit dengan tampilan di

(31)

29 3.1 Perancangan Secara Umum

MIKROKONTROLER 1

SENSOR KOMPAS

MODEM

RADIO KOMPUTER

(b)

LEVEL CONVERTER

MIKROKONTROLER 2

MODEM RADIO

MOTOR SERVO

BRUSHLESS MOTOR 2

ADC EKSTERNAL

SENSOR ACCELEROMETER

BRUSHLESS MOTOR 1

(a)

Gambar 3.1. (a) Diagram blok sistem prototipe satelit, (b) Diagram blok sistem

interface prototipe satelit

Berikut penjelasan blok-blok yang terdapat pada gambar di atas. 1. Mikrokontroler 1

(32)

Blok ini mengatur komunikasi antara mikrokontroler 2 dan komunikasi dengan PC.

2. Mikrokontroler 2

Blok ini memuat mikrokontroler basic stamp BS2P40 yang berfungsi merima data sensor kompas dan mengolahnya untuk mengontrol brushless motor besar sehingga dapat mengejar setpoint yang diinginkan.

3. Sensor Kompas

Blok ini memuat sensor hitachi HM55B yang berfungsi mengetahui arah gerak prototipe satelit dan datanya dikirimkan mikrokontroler 2 agar dapat diolah.

4. Sensor Accelerometer

Blok ini memuat sensor MMA3201EG yang berfungsi untuk mengetahui kemiringan yang dialami oleh prototipe satelit dan datanya diubah oleh ADC eksternal lalu diolah oleh mikrokontroler 1.

5. ADC Eksternal

Blok ini memuat IC ADC0832 yang berfungsi mengubah data analog dari sensor accelerometer manjadi data digital.

6. Modem Radio

Blok ini memuat YS-1020UB yang berfungsi untuk mengirimkan data sensor yang diolah mikrokontroler 1 melaui sinyal radio.

7. Brushless motor1

Blok ini memuat brushless motor besar yang berfungsi sebagai penggerak dari prototipe satelit agar dapat mengejar dan mempertahankan setpoint, dengan data kompas yang diterima dari mikrokontroler 1.

8. Brushless motor2

Blok ini memuat brushless motor kecil yang berfungsi sebagai penggerak agar kesetimbangan pra prtotipe satelit tetap pada posisinya.

9. Motor Servo

Blok ini memuat motor servo hitec HS-5245MG yang berfungsi menggerakkan dan mempertahankan sayap pada prototipe agar saat mengejar

(33)

10.Komputer

Blok ini berfungsi menampilkan interface agar pengiriman dan penerimaan data dapat dilakukan dengan baik dan menyimpan data yang diterima dari prototipe satelit.

Pada perancangan prototipe satelit terjadi 2 input dari sensor kompas dan

accelerometer dengan output untuk mengejar setpoint dan kesetimbangan. Sehingga sistem rancangan kontrol prototipe satelit menggunakan multiple input multiple output (MIMO).

3.2 Perancangan Perangkat Keras (Hardware) 3.2.1 Perancangan Mekanik

Bentuk dari prototipe satelit menyerupai tabung dengan ukuran yaitu sebagai berikut :

1. Diameter = 100mm 2. Panjang = 210mm 3. Berat = 1200 g

210mm 100mm

Brushless motor

propeler

Motor servo Board sensor Mikrokontroler 1

propeler

Brushless motor

Mikrokontroler 2

(34)

Namun bentuk disesuaikan dengan roket yang akan diterbangkan. Sementara bentuk prototipe satelit mengadaptasi dari payload yang dilombakan pada kontes roket Indonesia. Panjang tali dari prototipe satelit ketiang gantungan 204 mm. Perancangan prototipe satelit menggunakan bahan akrilik sebagai pemberi sekat antara komponen yang digunakan dan sayap atau tangan, serta

spacer sebagai penyangga dari prototipe satelit. Peletakan komponen sangat penting sehingga tidak mengganggu jalannya prototipe satelit. Peletakan komponen sebagai berikut :

1. Bagian atas digunakan untuk peletakan basic stamp 1, modem radio, ESC untuk motor besar, sensor kompasdan sensor accelerometer .

2. Bagian bawah digunakan untuk peletakan basic stamp 2 dan sistem sumber tegangan yang diterima dari baterai lithium polymer. Brushless motor kecil dan ESCnya sebanyak 2 buah di samping.

3. Motor servo, Brushless motor dengan jumlah 2 buah masing-masing diletakkan pada bagian sayap atau tangan.

Gambar 3.3. Bentuk prototipe satelit

3.2.2 Mikrokontroler Basic Stamp (BS2P40)

Mikrokontroler yang digunakan adalah mikrokontroler jenis basic stamp

(35)

output. Pemilihan mikrokontroler jenis ini didasari kemampuannya yang cukup handal, permograman yang tidak terlalu sulit dan harganya yang relatif tidak terlalu mahal. Berikut konfigurasi port-nya yang dipakai.

Tabel 3.1. Konfigurasi port pada mikrokontroler basic stamp 1 Nama Pin No. Pin Fungsi Keterangan

MAIN I/O 0 in&out di/do (sensor kompas)

MAIN I/O 1 output Tx (komunikasi antar mikrokontroler) MAIN I/O 2 output clock (sensor kompas)

MAIN I/O 3 - -

MAIN I/O 4 output enable (sensor kompas)

MAIN I/O 5 input RX(komunikasi antar radio frekuensi) MAIN I/O 6 output cs (ADC)

MAIN I/O 7 output Tx(komunikasi antar radio frekuensi) MAIN I/O 8 input di (ADC)

MAIN I/O 9 output brushless motor kecil kiri MAIN I/O 10 output do (ADC)

MAIN I/O 11 output brushless motor kecil kanan MAIN I/O 12 output clock (ADC)

MAIN I/O 13 output motor servo kiri

MAIN I/O 14 - -

MAIN I/O 15 output motor servo kanan

Tabel 3.2. Konfigurasi port pada mikrokontroler basic stamp 2 Nama Pin No. Pin Fungsi Keterangan

MAIN I/O 0 output brushless motor besar kanan

MAIN I/O 1 input Rx (komunikasi antar mikrokontroler) MAIN I/O 2 output brushless motor besar kiri

MAIN I/O 3 s/d 15 - -

3.2.3 Sensor Kompas HM55B

(36)

Penggunaan modul hitachi HM55B juga sangat sederhana karena tidak memerlukan rangkaian tambahan dalam pemakaiannya. Berikut rangkaian hitachi HM55B dengan mikrokontroler basic stamp BS2P40 yang diperlihatkan pada gambar 3.4

Gambar 3.4. Rangkaian pin sensor kompas hitachi HM55B dihubungkan dengan BS2P40

Pada modul hitachi HM55B akan mengirimkan data axis x dan axis y, kedua data axis ini akan diolah oleh mikrokontroler basic stamp 1 yang kemudian diubahdalam satuan derajat dengan menggunakan persamaan di bawah ini.

...3.1

3.2.4 Sensor Accelerometer MMA3201EG

Sensor accelerometer yang digunakan MMA3201 dengan menghasilkan data analog.

(37)

Sensor ini berfungsi untuk mendeteksi kemiringan pada prototipe satelit sehingga kembali ke posisi yang sempurna. Karena dengan gangguan seperti angin prototipe satelit akan berada pada posisi tidak stabil atau sempurna sehingga menggunakan sensor ini, sehingga jika terjadi kemiringan yang tidak diinginkan maka motor yang berada di samping akan melakukan perputaran agar ke posisi yang stabil atau sempurna. Karena data yang di keluarkan adalah analog maka di perlukan ADC untuk mengubah datanya menjadi digital.

3.2.5 ADC (Analog to Digital Converter)

ADC yang dipilih untuk perancangan prototipe satelit adalah IC ADC0832. Pemilihan ADC jenis ini dikarenakan kebutuhan pada prototipe satelit yang memiliki 2 channel yang dipergunakan untuk sensor accelerometer yaitu axis x dan axis y. ADC0832 mempunyai tegangan Vref yang terhubung langsung dengan Vsumber, sehingga mudah dalam penggunaannya tanpa rangkaian tambahan. Berikut rangkaian ADC0832 yang dihubungkan langsung dengan basic stamp BS2P40 yang diperlihatkan pada gambar 3.6

1 8

Gambar 3.6. Rangkaian ADC0832

Bagian multiplexer ini mempunyai 2 buah masukan, setiap masukan memilki alamat sendiri sehingga dapat dipilih secara terpisah melalui address A0 dan A1. Tabel 3.3 menunjukkan alamat multiplexer dari masing-masing masukan

(38)

Tabel 3.3. Mux addressing: ADC0832 single-ended mux mode

MUX address Channel SGL/DIF ODD/SIGN 0 1

1 0 +

1 1 +

3.2.6 ESC (Electronic Speed Controller)

ESC (Electronic Speed Controller) merupakan sebuah modul rangkaian elektronik yang fungsinya mengatur putaran pada motor sesuai ampere yang dibutuhkan oleh motor. ESC dipengaruhi dan bekerja untuk untuk 2 beban yaitu bobot dan motor.

Ampere ESC harus lebih besar atau minimal sama dengan amperebrushless

motor dan ampere ESC diusahakan menyesuaikan bobot atau minimal sesuai dengan yang dibutuhkan. Jumlah ESC sesuai dengan jumlah motor yang dipakai yaitu sebanyak 4 buah ESC.

3.2.7 Brushless motor

Motor yang digunakan adalah brushless motor yang berfungsi sebagai penggerak untuk propeler atau baling-baling. Brushless motor berbeda dengan motor DC brush yang masih menggunakan sikat pada bagian dalam motor dan dapat menimbulkan electrical noise. Sedangkan dengan menggunakan brushless

motor tidak menimbulkan electrical noise dan dapat bertahan lama dibandingkan dengan motor brush.

Kecepatan putaran brushless motor yang keluar dari ESC diatur oleh pulsa dari mikrokontroler. Jika tidak diberi pulsa maka tidak akan bekerja walaupun tegangan sudah diberikan. Dengan putaran dari brushless motor maka propeler atau baling-baling akan berputar sehingga dapat menggerakkan prototipe satelit.

(39)

3.2.8 Motor Servo

Motor servo berfungsi untuk menggerakkan bagian sayap/tangan yang akan bergerak 90º. Pemilihan motor servo HS-5245MG didasarkan dengan torque

mulai 4,4 kg sampai 5,5 kg sesuai dengan tegangan yang diberikan antara 4,8 volt sampai 6 volt.

Motor servo akan bekerja dengan memberikan tegangan dan pulsa sesuai yang diinginkan. Setelah tegangan dan pulsa diberikan motor servo akan menahan dengan spesifikasi torque-nya. Jumlah motor servo yang dipakai adalah 2 buah yang dipasang pada masing-masing bagian sayap atau tangan.

Gambar 3.7. Bentuk dan ukuran motor servo HS-5245MG

3.2.9 Sumber Tegangan

(40)

Vin

Gambar 3.8. Rangkaian sumber tegangan untuk prototipe satelit

3.2.10 Modul Komunikasi

(41)

1

Gambar 3.9. RangkaianICMAx232

IC yang dipakai pada sistem ini memiliki 16 pin. Agar dapat dihubungkan dengan port serial PC dan pada terminal TTL, maka IC ini memerlukan komponen tambahan berupa kapasitor. Rangkaian di atas beroperasi dengan tegangan 5 volt.

(42)

3.2.11 Radio

Modem radio yang digunakan untuk berkomunikasi antara komputer dengan prototipe satelit adalah YS-1020UB. Modem ini berkomunikasi melalui frekuensi radio YS-1020UB yang mempunyai 8 kanal dengan frekuensi yang berbeda dan jarak jangkauannya hingga 800 meter. Berikut ini adalah tabel yang menjelaskan konfigurasi pin-pin pada radio YS-1020UB.

Tabel 3.4. Pin-Pin modul radio YS-1020UB

Pin Nama Pin Fungsi Level

1 GND Ground

2 Vcc Tegangan Input +3.3 s/d 5.5 V

3 RXD/TTL Input Serial Data TTL

4 TXD/TTL Output Serial Data TTL

5 DGND Digital Grounding

6 A(TXD) Aof RS-485 or TXD of RS-232 A (RXD) 7 B(RXD) B of RS-485, RXD or RS-232 B (TXD)

8 SLEEP Sleep Control (Input) TTL

9 Test Testing

Dari konfigurasi pin-pin radio YS-1020UB, pin yang dipakai pada sistem ini hanya terdiri dari GND, Vcc, RXD/TTL dan TXD/TTL. Penggunaan radio ini sangat penting karena pengiriman dan penerimaan data dilakukan melalui udara dengan jarak yang jauh, Sehingga dapat dilakukan tanpa adanya penggunaan kabel yang tersambung antara ground segment dan prototipe satelit.

3.3 Perangkat Lunak (Software)

3.3.1 Perancangan Algoritma Keseluruhan

(43)

1. Algoritma mikrokontroler satu

Terima data dari PC untuk variabel j

Kirim data hasil pembacaan sensor ke PC Status=1

Cek apakah command=”1e” ?

Cek apakah nilai j=22?

Kirim mati motor ke mikrokontroler 2 dengan

Kirim data sensor kompas dan setpoint ke

u Kirim data hasil pembacaan sensor ke PC

(44)

Tabel 3.5. Penjelasan diagram alir mikrokontroler satu

Urutan Keterangan

a Memulai awal program.

b Pendeklarasian program. Pengaturan nama prosesor, nama

compiler, konfigurasi pin-pin dan deklarasi variabel. c

Mengecek apakah ada command “1e” yang diterima. Jika ya akan melanjutkan ke urutan d, jika tidak akan kembali ke urutan c sampai menerima command“1e”.

d Menerima data dari PC yang disimpan pada variabel j

e Mengecek apakah nilai pada variabel j=11. Jika ya akan melanjutkan ke urutan f, jika tidak akan ke urutan j

f memberikan nilai 1 pada variabel status.

g Mengecek apakah ada command “1e” yang diterima. Jika ya akan melanjutkan ke urutan h, jika tidak akan ke urutan j. h Mengecek apakah nilai pada variabel j=22. Jika ya akan

melanjutkan ke urutan i, jika tidak akan ke urutan m

i Mengirimkan data mati motor besar ke mikrokontroler dua dengan command “1c”.

j Memanggil prosedur pembacaan sensor kompas

k Memanggil prosedur pembacaan ADC (sensor accelerometer) l Kirim data sensor kompas dan accelerometer ke PC melalui

radio frekuensi dan dikirim dengan command“1d”

m Mengecek apakah nilai variabel status = 1. Jika ya akan melanjutkan ke urutan n, jika tidak akan ke urutan q.

n Memberikan nilai variabel status=2. o Mengaktifkan motor yang kecil

p Motor servo aktif dan membuka sayap kanan dan kiri pada prototipe satelit

q Memanggil prosedur pembacaan sensor kompas

r Mengirimkan data pembacaan sensor kompas dan data setpoint ke mikrokontroler dua.

s Memanggil prosedur pembacaan ADC untuk sensor

accelerometer.

t Memenggil prosedur pembacaan kontrol dua untuk motor kecil. u Kirim data sensor kompas dan accelerometer ke PC melalui

(45)

2. Algoritma mikrokontroler dua

Mulai a

b

c

d

e

f

h g

Inisialisasi Program

Cek apakah

command=”1c” ? tidak

ya

Aktif motor besar

Terima data sensor kompas, setpoint dan nilai variabel j

dari mikrokontroler satu dengan command “1c”

kontrol 1

Cek apakah nilai j=22?

Terima data dari mikrokontroler satu untuk

variabel j

Cek apakah nilai j=11? 4

4 ya

ya

tidak i

tidak

(46)

Tabel 3.6. Penjelasan diagram alir mikrokontroler dua

Urutan Keterangan

a Memulai awal program.

b Pendeklarasian program. Pengaturan nama prosesor, nama

compiler, konfigurasi pin-pin dan deklarasi variabel.

c

Mengecek apakah ada command “1c” yang diterima dari

mikrokontroler satu . Jika ya akan melanjutkan ke urutan d, jika tidak akan kembali ke urutan c sampai menerima

command“1c”.

d Mengaktifkan motor besar

e Menerima data sensor kompas, setpoint dan nilai untuk variabel j dari mikrokontrol satu.

f Memanggil prosesur pembacaan kontrol 1

g Mengecek apakah nilai pada variabel j=22. Jika ya akan melanjutkan ke urutan i, jika tidak akan ke urutan f

h Menerima data dari mikrokontroler satu untuk variabel j i Mengecek apakah nilai pada variabel j=11. Jika ya akan

melanjutkan ke urutan d, jika tidak akan ke urutan g.

3.3.2 Perancangan Prosedur

(47)

1. Prosedur pembacaan sensor kompas variabel status = 1100 ?

Cek apakah axis y bit ke 10 =1? Memberikan nilai high pada

pin enable

Kirim perintah untuk mengaktifkan reset pada

sensor kompas Memberikan nilai low pada

pin enable

Memberikan nilai high pada pin enable

Memberikan nilai low pada pin enable

Kirim perintah untuk memulai pengukuran sensor

kompas

Nilai varibel status = 0

Memberikan nilai high pada pin enable

Memberikan nilai low pada pin enable

Kirim perintah untuk pengecekan status dari

kompas

Baca status dari kompas

Baca hasil pengukuran (nilai axis X dan nilai axis Y)

Memberikan nilai high pada pin enable

Variabel angle = x ATN -y

Variabel angle = angle */360

Return

(48)

Tabel 3.7. Penjelasan diagram alir prosedur sensor kompas

Urutan Keterangan

a Memulai prosedur diagram alir pembacaan sensor kompas b Memberikan nilai high pada pin enable sensor kompas. c Memberikan nilai low pada pin enable sensor kompas.

d Kirim perintah untuk mengaktifkan reset pada sensor kompas. e Memberikan nilai high pada pin enable sensor kompas. f Memberikan nilai low pada pin enable sensor kompas. g Kirim perintah untuk memulai pengukuran sensor kompas h Isi variabel status dengan nilai 0.

i Memberikan nilai high pada pin enable sensor kompas. j Memberikan nilai low pada pin enable sensor kompas. k Kirim perintah untuk pengecekan status dari sensor kompas.

l Kirim perintah untuk membaca status sensor kompas.

m Mengecek apakah nilai variabel status = 1100. Jika ya akan ke ururan n, jika tidak akan ke urutan i.

n Kirim perintah untuk membaca hasil pengukuran axis X dan axis Y.

o Memberikan nilai high pada pin enable sensor kompas.

p Mengecek apakah nilai pada variabel y bit ke-10 = 1. Jika ya lanjutkan ke urutan q, jika tidak lanjutkan ke urutan r.

q Nilai variabel y di-OR kan dengan nilai 1111100000000000, kemudian hasilnya disimpan kembali pada variabel y.

r Mengecek apakah nilai pada variabel x bit ke-10 = 1, jika ya lanjutkan ke urutan s, jika tidak lanjutkan ke poin t.

s Nilai variabel x di-OR kan dengan nilai 1111100000000000, kemudian hasilnya disimpan kembali pada variabel x.

t Isi variabel angle dengan hasil dari x ATN -y.

u Hasil dari ((angle)*/360) simpan pada variabel angle.

(49)

2. Prosedur pembacaan ADC

Memberikan nilai high pada pin cs

Mengirim perintah untuk

pembacaan alamat channel

0

Memberikan nilai low pada pin cs

Mengambil hasil pembacaan

ADC pada channel 0 untuk

sensor accelerometer (sumbu x)

Memberikan nilai high pada pin cs

Mengirim perintah untuk

pembacaan alamat channel

1

Memberikan nilai low pada pin cs

(50)

Tabel 3.8. Penjelasan diagram alir prosedur pembacaan ADC

Urutan Keterangan

a Memulai prosedur diagram alir pembacaan ADC

b Memberikan nilai high pada pin cs sensor accelerometer.

c Memberikan nilai low pada pin cs sensor accelerometer. d Mengirim perintah untuk pembacaan alamat channel 0

e Mengambil hasil pembacaan ADC pada channel 0 untuk sensor accelerometer (sumbu x)

f Memberikan nilai high pada pin cs sensor accelerometer.

g Memberikan nilai low pada pin cs sensor accelerometer. h Mengirim perintah untuk pembacaan alamat channel 1

i Mengambil hasil pembacaan ADC pada channel 1 untuk sensor accelerometer (sumbu y).

(51)

3. Prosedur pembacaan kontrol 2 (motor kecil)

Memberikan nilai pulsa ke motor kecil yang kanan lebih besar dari pada kiri

Cek apakah nilai variabel xaxel =128 ?

Memberikan nilai pulsa ke motor kecil yang kanan lebih besar dari pada kiri

Cek apakah nilai variabel xaxel >=132 ?

Memberikan nilai pulsa ke motor kecil yang kanan lebih kecil dari pada kiri

Cek apakah nilai variabel xaxel =131 ?

Memberikan nilai pulsa ke motor kecil yang kanan lebih kecil dari pada kiri

Cek apakah nilai variabel xaxel =129

OR xaxel = 130 ?

Memberikan nilai pulsa ke motor kecil yang kanan dan

kiri sama

(52)

Tabel 3.9. Penjelasan diagram alir prosedur kontrol 2 (motor kecil)

Urutan Keterangan

a Memulai prosedur diagram alir pembacaan kontrol 2 untuk motor kecil

b Mengecek apakah nilai variabel xaxel <= 127. Jika ya akan ke urutan c, jika tidak akan melanjutkan ke urutan d.

c Memberikan nilai pulsa ke variabel motor kanan dan kiri dengan nilai motor kanan lebih besar dari pada nilai motor kiri. d Mengecek apakah nilai variabel xaxel = 128. Jika ya akan ke

urutan e, jika tidak akan melanjutkan ke urutan f.

e Memberikan nilai pulsa ke variabel motor kanan dan kiri dengan nilai motor kanan lebih besar dari pada nilai motor kiri. f Mengecek apakah nilai variabel xaxel >= 132. Jika ya akan ke

urutan g, jika tidak akan melanjutkan ke urutan h

g Memberikan nilai pulsa ke variabel motor kanan dan kiri dengan nilai motor kanan lebih kecil dari pada nilai motor kiri. h Mengecek apakah nilai variabel xaxel = 131. Jika ya akan ke

urutan i, jika tidak akan melanjutkan ke urutan j.

i Memberikan nilai pulsa ke variabel motor kanan dan kiri dengan nilai motor kanan lebih kecil dari pada nilai motor kiri. j Mengecek apakah nilai variabel xaxel >128 or < 132. Jika ya

akan ke urutan k, jika tidak akan melanjutkan ke urutan l. k Memberikan nilai pulsa ke variabel motor kanan dan kiri

dengan nilai motor kanan sama dengan nilai motor kiri.

(53)

4. Prosedur pembacaan kontrol 1 (motor besar)

pwmkiri=1152 Variabel lasterrorkiri=error pwmkiri=1152 Cek nilai error <= 210 ?

pwmkiri=1152+I

(54)

ya Cek nilai error <= 210 ?

pwmkanan=1150+I

Kirimkan pulsa ke brushless mmotor kiri

Kirimkan pulsa ke brushless mmotor kanan

Return Cek apakah variabel error >

360 ?

Cek apakah variabel error > 360 ?

(55)

Tabel 3.10. Penjelasan diagram alir pembacaan kontrol 1 (motor besar) melanjutkan ke urutan d, jika tidak akan melanjutkan ke urutan e.

d Hasil dari (error-360) simpan kembali pada variabel error. e

Mengecek apakah variabel error > 360. Jika ya akan melanjutkan ke urutan f, jika tidak akan melanjutkan ke urutan g.

f Hasil dari (error-360) simpan kembali pada variabel error. g Hasil dari (KP*error)+((error-lasterrorkiri)*KD) simpan ke

Variabel PD.

h Hasil dari ((KI*error)+errortotalkiri) simpan ke Variabel I. i

Mengecek apakah nilai (PD+I) > 32767) dan (PD+I) < (65535-150). Jika ya akan melanjutkan ke urutan j, jika tidak akan melanjutkan ke urutan k.

j

Kurangi nilai (-150) dengan nilai pada variabel PD, lalu simpan hasilnya ke variabel errortotalkiri. Setelah itu, melanjutkan ke urutan m.

k

Mengecek apakah nilai (PD+I) > 150 dan (PD+I) <= 32767. Jika ya akan melanjutkan ke urutan l, jika tidak akan melanjutkan ke urutan n.

l

Kurangi nilai (150) dengan nilai pada variabel PD, lalu simpan hasilnya ke variabel errortotalkiri. Setelah itu, melanjutkan ke urutan m.

m Hasil dari (KI*(PD+errortotalkiri+120))/30) simpan ke variabel I. Setelah itu, lanjutkan ke urutan o.

n Isi variabel errortotalkiri dengan nilai pada variabel I. Setelah itu, melanjutkan ke urutan m.

o

Mengecek apakah nilai variabel error <= 210. Jika ya akan melanjutkan ke urutan p, jika tidak akan melanjutkan ke urutan s.

p Tambal nilai pada variabel I dengan nilai 1152 lalu hasilnya simpan kedalam variabel pwmkiri.

q

Mengecek apakah nilai (Error-lasterrorkiri) > 100. Jika ya akan melanjutkan ke urutan r, jika tidak akan melanjutkan ke urutan t.

(56)

melanjutkan ke urutan t.

s Isi variabel pwmkiri dengan nilai 1152. Setelah itu, melanjutkan ke urutan q.

t Isi variabel lasterrorkiri dengan nilai pada veriabel error. u Hasil dari ((angle+30)-setpoint+360) simpan ke variabel error. v

Mengecek apakah variabel error > 360. Jika ya akan melanjutkan ke urutan w, jika tidak akan melanjutkan ke urutan x.

w Hasil dari (error-360) simpan kembali pada variabel error. x

Mengecek apakah variabel error > 360. Jika ya akan melanjutkan ke urutan y, jika tidak akan melanjutkan ke urutan z.

y Hasil dari (error-360) akan disimpan kembali pada variabel

error.

z Hasil dari (KP*error)+((error-lasterrorkanan)*KD) simpan ke Variabel PD.

aa Hasil dari ((KI*error)+errortotalkanan) simpan ke Variabel I. ab

Mengecek apakah nilai (PD+I) > 32767) dan (PD+I) < (65535-150). Jika ya akan melanjutkan ke urutan ac, jika tidak akan melanjutkan ke urutan ad.

ac

Kurangi nilai (-150) dengan nilai pada variabel PD, lalu simpan hasilnya ke variabel errortotalkanan. Setelah itu, melanjutkan ke urutan af.

ad

Mengecek apakah nilai (PD+I) > 150 dan (PD+I) <= 32767. Jika ya akan melanjutkan ke urutan ae, jika tidak akan melanjutkan ke urutan ag.

ae

Kurangi nilai (150) dengan niali pada variabel PD, lalu simpan hasilnya ke variabel errortotalkanan. Setelah itu, melanjutkan ke urutan af.

af Hasil dari (KI*(PD+errortotalkanan+120))/30) simpan ke variabel I. setelah itu lanjutkan ke urutan ah.

ag Isi variabel errortotalkiri dengan nilai pada variabel I. Setelah itu, melanjutkan ke urutan af.

ah

Mengecek apakah nilai variabel error <= 210. Jika ya akan melanjutkan ke urutan ai, jika tidak akan melanjutkan ke urutan al.

ai Tambal nilai pada variabel I dengan nilai 1150 lalu hasilnya simpan kedalam variabel pwmkanan.

aj

(57)

ak Isi variabel pwmkanan dengan nilai 1150. Setelah itu, melanjutkan ke urutan am.

al Isi variabel pwmkanan dengan nilai 1150. Setelah itu, melanjutkan ke urutan aj.

am Isi variabel lasterrorkanan dengan nilai pada veriabel error. an Mengirimkan nilai pulsa ke brushless motor kiri.

ao Mengirimkan nilai pulsa ke brushless motor kanan.

ap Keluar dari prosedur dan kembali mengeksekusi intruksi selanjutnya pada program utama pada mikrokontroler dua.

3.3.3 Software Pendukung

Sofware merupakan pendukung dalam pembuatan program atau pembuatan

interface untuk prototipe satelit. Dalam pembuatan program untuk prototipe satelit

software pendukung yang digunakan adalah basic stamp editor v2.5 , sedangkan sofware pendukung untuk interface prototipe satelit adalah visual basic 6.0.

3.3.4 Deklarasi Variabel dan Tipe Data

Setiap program terdapat deklarasi variabel yang berguna untuk mendefinisikan pengenal yang akan digunakan di dalam program. Dalam pemrograman, suatu variabel harus memiliki kejelasan tentang data apa yang dapat disimpannya. Suatu variabel tidak bisa menyimpan semua jenis nilai atau data, melainkan hanya satu jenis tipe saja. Berikut deklarasi variabel dan tipe data pada perancangan prototipe satelit

Tabel 3.11. Deklarasi variabel dan tipe data pada mikrokontroler satu Deklarasi variabel Tipe Data

setpoint word

x word

y word

angle word

status nib

Xaxel byte

Yaxel byte

(58)

j byte

stat nib

Tabel 3.12. Deklarasi variabel dan tipe data pada mikrokontroler dua Deklarasi variabel Tipe Data

angle word

motorkiri word

motorkanan word

error word

errortotalkanan word

errortotalkiri word

lasterrorkanan word

lasterrorkiri word

PD word

I word

setpoint word

f byte

j byte

3.3.5 Perancangan Interface di Visual Basic 6.0

Dalam perancangan interface untuk prototipe satelit menggunakan visual basic 6.0. Interface yang ditampilkan adalah sebagai berikut:

a

b c d f g h

i j k

l m

n

o

p

(59)

Tabel 3.13. Penjelasan interface prototipe satelit

Urutan Keterangan

a Mengaktifkan port yang akan dipakai dan telemetri hidup b Data sensor kompas yang diterima dari prototipe satelit c

Mengirimkan data untuk menghidupkan motor pada prototipe satelit dengan memberikan nilai pada variabel j di prototipe satelit.

d

Mengirimkan data untuk mematikan motor pada prototipe sateli dengan memberikan nilai pada variabel j di prototipe satelit

e Keluar dari program interface prototipe satelit

f Tampilan grafik untuk data sensor kompas yang di terima dari prototipe satelit

g Garis yang merupakan referensi untuk mengejar kesetimbangan pada grafik accelerometer.

h Tampilan inputsetpoint

i Slider untuk mengubah setpoint baru pada prototipe satelit. j Data sensor kompas yang ditampilkan dalam bentuk kompas

analog.

k Semua data yang dikirimkan ke prototipe satelit dengan command “1e”

l

Data asli sensor kompas dan accelerometer yang diterima dari prototipe satelit Tampilan database untuk sensor kompas dan

accelerometer.

m Data sensor kompas dan accelerometer yang disimpan pada

datebase dan ditampilkan pada tabel

n Menghapus database yang sudah tersimpan.

o Tampilan grafik untuk data sensor accelerometer yang diterima dari prototipe satelit.

3.3.6 Perancangan DFD (Data Flow Diagram)

DFD adalah salah satu alat pembuatan model yang sering digunakan, khususnya bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan kompleks dari pada data yang dimanipulasi oleh sistem. Berikut adalah DFD utuk

(60)

Autonomous payload

User Pra prototipe

satelit ON telemetri, hidup motor, mati

motor, setpoint baru

Kompas, accelerometer

Kompas, accelerometer

ON telemetri, hidup motor, mati motor, setpoint baru

Gambar 3.19. Diagram konteks

0.1 Memberi perintah User

Payload 0.2

Mengirim data

Kompas, accelerometer Kompas,

accelerometer

ON telemetri, hidup motor, mati motor, setpoint baru

ON telemetri, hidup motor, mati motor, setpoint baru

(61)

76 5.1 Simpulan

Berdasarkan pembahasan dari bab-bab sebelumnya, akhirnya dapat diambil beberapa simpulan :

1. Berdasarkan tabel 4.4 modul radio YS-1020UB yang digunakan hanya berkomunikasi dengan jarak sampai 300 meter, itu dikarenakan pelemahan sinyal yang disebabkan gangguan atau penghalang.

2. Berdasarkan tabel 4.2 pengujian data sensor kompas Hitachi HM55B dengan maksimal rata-rata error 7,2 terhadap kompas analog. Pengujian tersebut penting karena sebagai acuan dari prototipe satelit.

3. Berdasarkan tabel 4.7 dan tabel 4.8 pengujian mengejar setpoint atau pencarian arah gerak terhadap prototipe satelit berhasil dilakukan dengan tingkat keberhasilan 79,62% dari jumlah rata-rata keberhasilan dari tiap percobaan tanpa gangguan dari luar dengan rentang error yaitu 10⁰ dari

setpoint. Jika terjadi gangguan dari luar tingkat keberhasilannya adalah 19,5% dari jumlah rata-rata keberhasilan dari tiap percobaan

4. Berdasarkan tabel 4.13 pengujian waktu mengejar kesetimbangan mendapatkan hasil rata-rata waktu dari sebelah kanan 7,11 detik sedangkan jika dari sebelah kiri 14,92. Pemakaian sensor accelerometer MMA3201EG kurang maksimal dalam mendeteksi kemiringan untuk mengejar kesetimbangan.

5.2 Saran

Penulis memberikan saran bagi yang akan mengembangkan tugas akhir ini yaitu sebagai berikut :

Gambar

Gambar 2.29. Tampilan IDE Visual Basic
Gambar 3.1. (a) Diagram blok sistem prototipe satelit, (b) Diagram blok sistem
Gambar 3.2. Bentuk prototipe satelit dalam 3D
Tabel 3.1. Konfigurasi port pada mikrokontroler basic stamp 1
+7

Referensi

Dokumen terkait

Melakukan sosialiasi tentang rencana dana penelitian, anugerah iptek, dan anugerah penelitian Pemerintah Kota Yogyakarta kepada perguruan tinggi, lembaga/organisasi masyarakat

Student Teams Achievement Division ( STAD ) merupakan salah satu metode dalam pembelajaran kooperatif yang sederhana dan baik untuk guru yang baru mulai menggunakan

Kejelian nabi Amos dalam melihat situasi Israel yang tampak makmur kala itu disorotinya dari kaca mata yang sama sekali berbeda, dan tidak dapat dipungkiri

Suatu proses yang menggunakan model statistika dalam menghubungkan hasil survei dengan sekelompok variabel prediktor yang diketahui untuk domain (area) kecil, dalam rangka

Arief Effendi, SE,Ak,M.Si,QIA,CPMA,CA Ignes Januar Cahyadi, SE.,M.,Ak,CPSAK Metode

Merujuk hasil penelitian di atas, maka penelitian ini berhasil mendukung hipotesis yang menyatakan bahwa terdapat pengaruh positif antara faktor kebermanfaatan terhadap penerimaan

Bagi Pemegang Saham yang merupakan Wajib Pajak Luar Negeri yang akan menggunakan tarif berdasarkan Persetujuan Penghindaran Pajak Berganda (P3B) wajib memenuhi

bimbingan pribadi biasanya sendiri dipanggil gini gini misalnya nanti dia malu, misalnya pada saat solat bersama- sama kadang anak malu kalo sudah dibikin kayak gitu,