Universitas Kristen Maranatha
SISTEM PENDETEKSI KETINGGIAN MUATAN ROKET
BERBASIS MIKROKONTROLER
Gelar Kharisma Rhamdani / 0522092
Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha, Jln. Prof. Drg. Surya Sumantri 65, Bandung 40164, Indonesia
Email : [email protected]
ABSTRAK
Teknologi roket sebagai wahana luar angkasa, peluru kendali, atau kendaraan terbang kian hari kian berkembang. Indonesia merupakan salah satu negara yang sedang mengembangkan teknologi roket. Salah satu yang menjadi perhatian peneliti di bidang roket adalah seberapa jauh roket tersebut dapat terbang. Untuk menjawab pertanyaan tersebut dibutuhkan suatu sistem yang dapat mendeteksi ketinggian dari roket yang diluncurkan.
Pada tugas akhir ini, telah dibuat sebuah sistem pendeteksi ketinggian jarak jauh berbasis mikrokontroler dimana piranti ini menggunakan dua buah sensor yang dapat dirancang untuk memperoleh data ketinggian pada roket uji muatan, yaitu Global positioning system (GPS) dan sensor tekanan. Selain dapat mendeteksi ketinggian, sistem ini juga dapat mengirimkan data ketinggian tersebut melalui radio frekuensi ke penerima yang ada di stasiun pemantau. Pada bagian penerima, data tersebut dapat ditampilkan pada PC melalui program Visual Basic 6.0 sehingga data yang diterima dapat dibaca dengan mudah.
Setelah dilakukan pengujian pada sistem maka didapat kesalahan rata-rata pengukuran ketinggian dari GPS adalah 1,798 m. Sedangkan kesalahan rata-rata pada sensor tekanan adalah 1,935 m.
.
Universitas Kristen Maranatha
ALTITUDE DETECTOR SYSTEM OF ROCKET PAYLOAD
BASE ON MICROCONTROLLER
Gelar Kharisma Rhamdani / 0522092
Department of Electrical Engineering, Faculty of Engineering, Maranatha Christian University, Jln. Prof. Drg. Surya Sumantri 65, Bandung 40164,
Indonesia participant in developing rocket. One of the concern of this field is to tell how far the rocket can fly. Answering the problem, there will be a need of system that has capability for detecting the altitude the launched rocket.
In this final project, A detector system of altitude is built using microcontroller which in order for getting a data in the trial rocket, two sensors are needed. They are Global Positioning System (GPS) and pressure sensor. Beside of detecting altitude, the system also is able to send a data of altitude in frequency of radio to the receiver in the base. In the receiving part, the data is shown in the PC monitor through application built in Visual Basic 6.0, so the data can be easily be read.
After testing the system, the Average error measurements of GPS altitude 1.798 m. While the average error in pressure sensor 1.935 m.
Universitas Kristen Maranatha
BAB I PENDAHULUAN I.1 Latar Belakang ... 1
Universitas Kristen Maranatha
Universitas Kristen Maranatha
III.4. Realisasi Sistem Pendeteksi Ketinggian Muatan Roket Berbasis
Mikrokontroler ... 42
BAB IV PENGUJIAN DAN ANALISA DATA IV.1 Pengujian Perangkat Yang Digunakan ... 45
IV.2 Pengujian Sensor Tekanan ... 45
IV.3 Pengujian GPS Argent Data ... 46
IV.4 Pengujian Perangkat Lunak Visual Basic ... 47
IV.5 Pengujian Sistem ... 48
IV.6 Analisa Hasil Pengujian Sistem ... 58
BAB V KESIMPULAN DAN SARAN V.1 Kesimpulan ... 59
V.2 Saran ... 59
DAFTAR PUSTAKA ... 60 LAMPIRAN A GAMBAR SISTEM
LAMPIRAN B PROGRAM AVR ATMEGA 128 LAMPIRAN C CODE VISUAL BASIC
Universitas Kristen Maranatha
DAFTAR TABEL
Halaman
Tabel 2.1 Format data GPS dengan Header $GPGGA ... 10
Tabel 2.2 Konfigurasi pin ATMega128 ... 13
Tabel 2.3 Konektor interface ... 15
Tabel 2.4 Alamat I2C untuk kombinasi jumper ... 16
Tabel 2.5 Pembagian Band Frekuensi Radio ... 21
Tabel 3.1 Konversi tekanan udara terhadap ketinggian ... 33
Tabel 3.2 Pin antarmuka yang terdapat pada YS-1020U ... 37
Tabel 3.3 Frekuensi yang sesuai pada 433MHz dari 1-8 channel ... 38
Tabel 3.4 Frekuensi yang sesuai pada 868MHz dari 1-8 channel ... 39
Tabel 4.1 Hasil Pengujian sistem di Stasiun Geofisika Klas 1 Bandung . 48 Tabel 4.2 Hasil Pengujian sistem di POS Observasi Geofisika Lembang 49
Tabel 4.3 Hasil Pengukuran Gedung GWM ... 56
Tabel 4.4 Selisih pengukuran tiap lantai gedung GWM dengan GPS ... 57
Universitas Kristen Maranatha
DAFTAR GAMBAR
Halaman
Gambar 2.1 Cara satelit GPS mengirim sinyal ... 6
Gambar 2.2 Penjelasan sinyal satelit terhadap kondisi geografi ... 8
Gambar 2.3 Penjelasan tampilan layar GPS tentang sinyal satelit ... 9
Gambar 2.4 Pin Konfigurasi Output pada ATMEGA128 ... 13
Gambar 2.5 Tata letak komponen DT-Sense Barometric Pressure Sensor . 15 Gambar 2.6 Jumper PULL-UP J2 ... 16
Gambar 2.7 Diagram Transmisi Radio ... 18
Gambar 2.8 Antar muka Visual Basic 6.0... 22
Gambar 2.9 Komponen standar dalam Toolbox ... 23
Gambar 3.1Blok Diagram Sistem ... 26
Gambar 3.2GPS Argent Data Sytem (AGS-GM1) ... 27
Gambar 3.3 Skematik perancangan mikrokontroler AVR ATMega128 .... 28
Gambar 3.4 Skematik port mikrokontroler AVR ATMega128 ... 29
Gambar 3.5 Diagram alir sistem ... 33
Gambar 3.6 Diagram alir GPS ... 31
Gambar 3.7 Diagram alir Sensor Tekanan ... 31
Gambar 3.8 Bentuk dan Penjelasan Serial Port ... 36
Gambar 3.9 Dimensi dari YS-1020U ... 37
Gambar 3.10 Tampilan program YSPRG.EXE ... 38
Gambar 3.11 Diagram alir program visual basic ... 40
Gambar 3.12 Gambar rangkaian konverter Radio Modem ... 41
Gambar 3.13 Gambar Aplikasi Visual Basic ... 41
Gambar 3.14 Konstruksi Akhir Perancangan Hardware Tampak Luar ... 42
Gambar 3.15 Konstruksi Akhir Perancangan Hardware Tampak Dalam .. 43
Gambar 3.16 Realisasi software ... 44
Gambar 4.1 Hasil pengujian Sensor Tekanan ... 45
Gambar 4.2 Data keluaran GPS Argent Data ... 46
Universitas Kristen Maranatha
Gambar 4.4 Hasil Pengujian sistem di Stasiun Geofisika Klas 1 Bandung 48 Gambar 4.5 Hasil Pengujian sistem di POS Observasi Geofisika Lembang 49
Gambar 4.6 Gedung GWM ... 50
Gambar 4.7 Hasil Pengujian sistem di Lantai 1 gedung GWM ... 50
Gambar 4.8 Hasil Pengujian sistem di Lantai 2 gedung GWM ... 51
Gambar 4.9 Hasil Pengujian sistem di Lantai 3 gedung GWM ... 51
Gambar 3.10 Hasil Pengujian sistem di Lantai 4 gedung GWM ... 52
Gambar 3.11 Hasil Pengujian sistem di Lantai 5 gedung GWM ... 52
Gambar 3.12 Hasil Pengujian sistem di Lantai 6 gedung GWM ... 53
Gambar 4.13 Hasil Pengujian sistem di Lantai 7 gedung GWM ... 53
Gambar 3.14 Hasil Pengujian sistem di Lantai 8 gedung GWM ... 54
Gambar 3.15 Hasil Pengujian sistem di Lantai 9 gedung GWM ... 54
Gambar 3.16 Hasil Pengujian sistem di Lantai 10 gedung GWM ... 55
Gambar 4.17 Hasil Pengujian sistem di Lantai 11 gedung GWM ... 55
LAMPIRAN A
SISTEM OBJEK TAMPAK DALAM
LAMPIRAN B
/***************************************************** #include <delay.h> #include <math.h> #include <stdlib.h>
unsigned char g[16]; //tampungan data // Alphanumeric LCD Module functions // I2C Bus functions
#asm
#define UDRE 5
// Get a character from the USART1 Receiver #pragma used+
// Write a character to the USART1 Transmitter #pragma used+
void putchar1(char c) {
while ((UCSR1A & DATA_REGISTER_EMPTY)==0); UDR1=c;
#pragma used-
// Standard Input/Output functions #include <stdio.h>
// Declare your global variables here
void main(void) {
unsigned char string[10]; unsigned char buf,x; float h_bar;
unsigned int temp,pressure; // bilangan bulat 0-6355 unsigned char temp1,temp2;
// Input/Output Ports initialization // Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0x00;
DDRB=0x00;
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0x00;
DDRD=0x00;
// Port E initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTE=0x00;
DDRE=0x00;
// Port F initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTF=0x00;
DDRF=0x00;
// Port G initialization
// Func4=In Func3=In Func2=In Func1=In Func0=In // State4=T State3=T State2=T State1=T State0=T PORTG=0x00;
// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected ASSR=0x00;
TCCR0=0x00; TCNT0=0x00; OCR0=0x00;
// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // OC1C output: Discon. // Noise Canceler: Off
OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; OCR1CH=0x00; OCR1CL=0x00;
// Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected TCCR2=0x00;
TCNT2=0x00; OCR2=0x00;
// Timer/Counter 3 initialization // Clock source: System Clock // Clock value: Timer 3 Stopped // Mode: Normal top=FFFFh // Noise Canceler: Off
// Input Capture on Falling Edge // OC3A output: Discon.
// OC3B output: Discon. // OC3C output: Discon.
// Timer 3 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off // Compare C Match Interrupt: Off TCCR3A=0x00;
TCNT3L=0x00;
// External Interrupt(s) initialization // INT0: Off
// Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00;
ETIMSK=0x00;
// USART0 initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity // USART0 Receiver: On
// USART0 Baud Rate: 9600
// Communication Parameters: 8 Data, 1 Stop, No Parity // USART1 Receiver: On
// USART1 Transmitter: On // USART1 Mode: Asynchronous // USART1 Baud Rate: 4800 UCSR1A=0x00;
UCSR1B=0x18; UCSR1C=0x06; UBRR1H=0x00; UBRR1L=0x8F;
// Analog Comparator initialization // Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;
SFIOR=0x00;
// LCD module initialization lcd_init(16);
// I2C Bus initialization i2c_init();
while (1) // looping {
printf("Pressure: "); temp=pressure/10; printf("%u",temp); putchar('.');
temp=pressure%10; printf("%u",temp); printf(" hpa ");
printf("H_Bar:"); printf("%7s",string); printf(" m\n\r ");
sprintf(g,"H_Bar=%s M ",string); //data ketinggian dari tekanan lcd_gotoxy(0,1);
lcd_puts(g); } };
LAMPIRAN C
Public Dat_payload As Integer Public sercount As Integer Public buff_ser As Byte
Private Sub Command10_Click() RichTextBox1.SaveFile Text13.Text MsgBox ("DATA TERSIMPAN") End Sub
Private Sub Command5_Click()
If MSComm1.PortOpen = False Then MSComm1.PortOpen = True End Sub
Private Sub Command6_Click()
If MSComm1.PortOpen = True Then MSComm1.PortOpen = False End Sub
Private Sub Command8_Click() End
End Sub
Private Sub Command9_Click() MSComm1.CommPort = Text9.Text
MSComm1.Settings = Text12.Text & ",n,8,1" MSComm1.Handshaking = comNone
End Sub
Private Sub MSComm1_OnComm()
Text7.Text = buff_ser End Sub
Private Sub Text10_Change() Dim a As String
Dim b As String Dim c As String
a = Mid(Text10.Text, 5, 6) ' indikasi GPS Text1(1).Text = a
b = Mid(Text10.Text, 23, 6) ' indikasi PREASURE Text1(2).Text = b
c = Mid(Text10.Text, 40, 6) ' indikasi H_BAR Text1(3).Text = c
End Sub
Private Sub Timer2_Timer()
If MSComm1.PortOpen = True Then
Text10.Text = MSComm1.Input
RichTextBox1.Text = Time & " ; " & Text10.Text & " ; " & Chr$(13) & RichTextBox1.Text
LAMPIRAN D
Data Sheet GPS
ADS-GM1 GPS Receiver
The ADS-GM1 is a high-sensitivity GPS receiver based on the SiRFstar III chipset. It has a 2-meter long cable terminated in a female DB9 connector that allows direct connection to an OpenTracker+, Tracker2, or any other device that provides regulated 5-volt power on pin 4.
SiRFstar III high-sensitivity chipset Waterproof housing (IPX7 rating) Built-in low noise, high gain antenna Magnetic base
LED clearly indicates positioning status No configuration required
20 channel all-in-view tracking
Sensitivity: -159 dBm typical
Accuracy: < 10 meters 2D RMS, < 7 meters WAAS corrected, time to 1 microsecond
Datum: WGS84
Acquisition Rate: 1 sec hot start, 42 sec cold start
Dynamic Limits: < 18,000 meters, < 1000 knots, < 4G acceleration
Power Supply: 5 VDC +/- 5%, 80 mA max, 55 mA typical
Interface: NMEA-0183 at 4800 baud, optional SiRF binary
NMEA Messages: GGA, GSA, GSV, RMC, and optionally VTG, GLL, and ZDA
Weight: 85 grams
LED flashes red to indicate valid GPS fix. Made in Taiwan.
Konversi Ketinggian Terhadap Tekanan
Altitude Units to Pressure Units Conversion Table
Convert from an altitude in feet or metres above sea
level to a pressure reading in millibar (mbar, mb or mbr), hectopascals (hPa), pounds per square inch (psi), millimetres of mercury at zero degrees celsius (mmHg @ 0 deg C) or inches of mercury at zero degrees celsius ( inHg @ 0 deg C).
The height relative to sea level conversions are derived using the US Standard Atmosphere 1976 barometric
formula for geopotential altitude with the following physical constants and multi-valued (*) constants for sea level up to a height of 36,089 ft (11,000m)
1. *Standard atmospheric pressure of 1013.25 mb absolute at sea level
2. *Standard temperature of 288.15 K (15°C)
3. *Standard thermal gradient or lapse rate of -0.0065 K/m increase in altitude
4. Standard acceleration due to gravity of 9.80665 m/s2
5. Gas constant for air of 8.31432 J/Kmol K
6. Molar mass of air of 0.0289644 kg/mole
Please note that the calculated altitude values are not absolutely precise conversions and should not be treated as such.
Altitude to Pressure Conversion Table
Rumus Ketinggian Terhadap Tekanan
Z meters = ( 1 - ( P/ 1013.25 )^ 0.19 ) ) / 22.558 E-6
Altitude = (10^(log(P/P_0)/5.2558797)-1)/-6.8755856*10^-6.
1 Universitas Kristen Maranatha
BAB I
PENDAHULUAN
Bab ini berisi tentang latar belakang, identifikasi masalah, perumusan masalah, tujuan, pembatasan masalah, spesifikasi alat, dan sistematika penulisan laporan tugas akhir.
I.1 Latar Belakang
Perkembangan dunia teknologi kian hari, akan terus meningkat. Seiring semakin tingginya kebutuhan manusia akan informasi, para peneliti di Lembaga Penerbangan dan Antariksa Nasional (LAPAN) sedang mengusahakan agar indonesia dapat meluncurkan satelit sendiri. Sebenarnya Indonesia sudah mulai meneliti dan mengusahakan agar dapat meluncurkan satelit sendiri. Seperti yang baru-baru ini saja kita saksikan, Indonesia melalui LAPAN sudah meluncurkan Roket uji muatan yang terbilang besar. Roket ini diberi nama RX-420 dengan spesifikasi roket: diameter 420 mm, berat luncur 1000 kg, panjang roket 6200 mm, jenis propelan solid-komposit, waktu bakar 13 detik, waktu terbang 205 detik, maksimum kecepatan 4,5 mach, prediksi jangkau 101 km, prediksi ketinggian 53 km. Roket ini berhasil meluncur dengan sempurna, akan tetapi para peneliti tidak mudah menerima sinyal yang dipancarkan oleh muatan yang dipasangkan dalam roket tersebut. Dengan demikian jangkauan dari roket tersebut tidak mudah diketahui. Untuk mengatasi permasalahan diatas, dibutuhkan alat yang dapat memberi data ketinggian jarak jauh, dan dapat diterima dengan baik di bumi.
I.2 Identifikasi Masalah
BAB I PENDAHULUAN
Universitas Kristen Maranatha
2
I.3 Perumusan Masalah
• Bagaimana merancang dan merealisasikan sistem pendeteksi ketinggian berbasis mikrokontroller?
• Bagaimana mengirimkan data ketinggian melalui radio frekuensi? • Bagaimana menampilkan data ketinggian dari benda yang bergerak?
I.4 Tujuan
• Merancang dan merealisasikan sistem pendeteksi ketinggian berbasis mikrokontroller.
• Mengirimkan data ketinggian melalui radio frekuensi. • Menampilkan data ketinggian dari benda yang bergerak.
I.5 Pembatasan Masalah
Agar permasalahan yang dibahas terfokus dan tidak melebar, maka Tugas
Akhir dengan judul “Sistem Pendeteksi Ketinggian Muatan Roket Berbasis
Mikrokontroler” mengambil batasan masalah sebagai berikut:
• Sistem ini hanya prototype dari pendeteksi ketinggian roket. • Tidak mendalami pembahasan mengenai radio modem dan antena.
• Pengujian tidak ditumpangkan pada benda yang bergerak seperti hal nya roket karena keterbatasan sarana.
• Pengiriman data sistem pendeteksi ketinggian ini menggunakan radio modem pada frekuensi 436.0325 MHz.
• Data yang diterima oleh receiver akan ditampilkan pada PC dengan program Visual Basic 6.0.
I.6 Spesifikasi Alat
Spesifikasi alat yang dibuat pada Tugas Akhir ini adalah sebagai berikut: 1. GPS Argent Data System
2. Sensor tekanan DT-Sense Barometric Pressure Sensor 3. Satu set Radio modem KYL 1020U
BAB I PENDAHULUAN
Universitas Kristen Maranatha
3
I.7 Sistematika Penulisan
Laporan terdiri dari beberapa bab dengan garis besar sebagai berikut:
BAB I PENDAHULUAN
Pada bab ini berisi tentang latar belakang, identifikasi masalah, perumusan masalah, tujuan, pembatasan masalah, spesifikasi alat, dan sistematika penulisan laporan tugas akhir.
BAB II LANDASAN TEORI
Pada bab ini dijelaskan mengenai teori-teori penunjang yang diperlukan dalam merancang dan membangun sistem ketinggian jarak jauh berbasis mikrokontroler
BAB III PERANCANGAN DAN REALISASI
Pada bab ini membahas perancangan dan realisasi sistem pendeteksi ketinggian jarak jauh pada roket uji muatan dengan menggunakan sensor GPS dan sensor tekanan yang berbasis pada mikrokontroler ATMega 128 dan dapat di trasnmisikan melalui radio frekuensi. Selain itu, pada bab ini jg membahas perancangan pada sistem pemantau yang menggunakan program Visual Basic 6.0
BAB IV ANALISA DAN DATA PENGAMATAN
Pada bab ini dijelaskan tentang proses pengambilan data pengamatan, pengujian kemampuan Sistem pendeteksi ketinggian jarak jauh berbasis mikrokontroler pada roket uji muatan, dan analisisnya.
BAB V KESIMPULAN DAN SARAN
Universitas Kristen Maranatha
59
BAB V
KESIMPULAN DAN SARAN
V.1. Kesimpulan
Dari hasil realisasi, pengujian dan analisa yang dilakukan pada sistem, dapat disimpulkan sebagai berikut :
1. Sistem pendeteksi ketinggian dapat beroprasi dengan tingkat kesalahan rata-rata 1,798 m pada GPS dan 1,935 m pada sensor tekanan.
2. Data ketinggian berhasil dikirimkan ke stasiun pemantau melalui RF (Radio Frekuensi).
3. Data ketinggian berhasil ditampilkan secara informatif menggunakan program Visual Basic 6.0.
V.2. Saran
Pada tugas akhir ini masih terdapat beberapa kekurangan sehingga perlu dilakukan pengembangan.
1. Agar data ketinggian dari GPS lebih akurat, sebaiknya menggunakan GPS untuk high Altitude seperti Garmin GPS 18x LVC.
Universitas Kristen Maranatha
60
DAFTAR PUSTAKA
1. Abidin,H. Z DR. 2007. Penentuan Posisi Dengan GPS dan Aplikasinya. Jakarta : PT. Pradnya Paramita.
2. Andrianto, Heri. 2008. Pemrograman Mikrokontroler AVR ATMEGA16 Menggunakan Bahasa C (Code Vision AVR). Bandung : Informatika.
3. Basuki, Achmad. 2006. Algoritma Pemrograman 2 Menggunakan Visual Basic 6.0. Surabaya: ITS
4. Hanafi, Donni. 2006. Mengungkap Cara Kerja GPS Receiver (Global Positioning System). Jakarta: ORARI
5. Parkinson, B.W. 1996. Global Positioning System: Theory and Applications. American Institute of Aeronautics and Astronautics, Washington, D.C.
6. Prasetia, Retna. Interfacing Port Paralel dan Port Serial Komputer dengan Visual Basic 6.0. Semarang : ANDI.