## ALGORITMA PENGENALAN POLA BINTANG UNTUK DETEKSI POSISI BINTANG PADA STAR SENSOR SATELIT LAPAN
M. Arif Saifudin, Robertus Heru Triharjanto Peneliti Bidang Mekatronika, LAPAN e-mail: masdidin@yahoo.com, rtriharjanto@yahoo.com

## ABSTRACT
Star sensor is a high accuracy sensor for a satellite attitude determination. This sensor identifies the position of stars in celestial map by comparing the position of stars on its active sensor with the star position data contained in its catalogue. An algorithm is needed to recognize the star pattern imaged by sensoring and calculating the position of the stars. An efficient and accurate algorithm is needed to improve the performance of the star sensor for satellite attitude determination. A simple star pattern recognition algorithm  uses  the  neighbourhood  technique.  The  first  approach  of  algorithm  is detecting    the  brightest  star  and  its  neigbours  in  the  sensor  Field  of  View  (FOV)  and identifying whether the stars in image sensor are fit to the star pattern in the catalogue. The  simple  catalogue  used  contains  the  star  position  and  all  its  neighbouring  stars within  particular  distance  in  the  scope  of  FOV.  Test  result  showed  that  neighbours technique  has an  accuracy  below  1  arc  min  which  correspond  to the  typical accuracy value of star sensor.
Keywords: Satellite attitude determination, Star pattern recognition, Star Sensor

## ABSTRAK
Star Sensor merupakan sensor untuk menentukan sikap satelit dengan akurasi tinggi. Star sensor memberikan data posisi bintang dengan cara membandingkan posisi bintang yang terdapat pada sensor sebagai piksel-piksel yang aktif dengan data bintang yang  terdapat  dalam  katalog.  Suatu  algoritma  diperlukan  untuk  mengenali  pola bintang yang  ditangkap oleh  sensor  dan  melakukan  perhitungan  posisinya.  Algoritma yang akurat dan efisien diperlukan untuk meningkatkan unjuk kerja star sensor untuk determinasi sikap satelit. Sebuah algoritma sederhana dibahas dalam tulisan ini, yaitu dengan  menggunakan  teknik  bintang  terdekat/tetangga.  Pendekatan  awalnya  adalah dengan  mendeteksi  bintang-bintang  tetangga  dari  suatu  bintang  paling  terang  yang tercakup  dalam  FOV  (Field  of  View)  sensor  kemudian  melakukan  identifikasi  bahwa pola  bintang-bintang  tersebut  cocok  dengan  pola  bintang  tersebut  dalam  katalog. Katalog  bintang  sederhana  yang  digunakan  berisi  data  posisi  bintang  dan  bintang- bintang  terdekat  dalam  jarak  tertentu  dalam  cakupan  FOV.  Hasil  pengujian menunjukkan  bahwa  akurasi  dari  teknik  tersebut  cukup  baik,  yaitu  di  bawah  1  arc min sesuai dengan nilai maksimum akurasi star sensor.
Kata Kunci: Penentuan Sikap Satelit, Pengenalan Pola Bintang, Sensor Bintang

## 1  PENDAHULUAN
Star  sensor  merupakan  sensor determinasi  sikap  satelit  dalam  tiga sumbu  yang  cukup  akurat  dan  banyak digunakan  oleh  banyak  satelit  untuk Sistem ADC (Attitude Determination Control) termasuk  juga  satelit  LAPAN-A2  dan LAPAN-ORARI  yang  rencananya  akan diluncurkan  pada  tahun  2011.  Seperti ditunjukkan oleh akurasi untuk
beberapa sensor sikap ditunjukkan pada tabel di bawah ini:
Tabel 1-1: AKURASI  TIPIKAL  SENSOR
PENENTUAN  SIKAP  SATELIT
(Bak, 1999)
Horizon Sensor 0.05 deg-1deg Sun Sensor 0.005 deg-4 deg Star Sensor 2.78.10 -4 deg - 0.0167 deg Magnetometer 0.5 deg – 5 deg
Tingkat  akurasi  star  sensor  tergantung pada  teknologi  komputasi  yang  terdapat di dalamnya.
Selain teknologi
mikroprosesor dan sensor kamera, algoritma yang diterapkan dalam komputasi juga turut menentukan kecepatan dan akurasi determinasi sikap satelit.
Pada  prinsipnya,  cara  kerja  star sensor  adalah  melakukan  perhitungan posisi bintang.  Jika sekumpulan cahaya bintang  yang  ditangkap  oleh  sensor kamera dapat diketahui posisinya dalam referensi  inersial,  maka  dapat  diketahui orientasi sikap satelit pada saat itu.
Perhitungan  posisi  bintang  yang dilakukan  membutuhkan  data  referensi posisi  bintang  yang  dinamakan  katalog bintang  (star  catalogue)  yang  tersimpan dalam  memori  unit  elektronik  star sensor.  Star  sensor  memberikan  data posisi bintang dengan cara mem- bandingkan  posisi  bintang-bintang  yang terdapat  pada  sensor  sebagai  piksel- piksel  yang  aktif  dengan  data  bintang- bintang  yang  terdapat  dalam  katalog. Suatu algoritma diperlukan untuk pengenalan pola bintang yang ditangkap oleh sensor dan melakukan perhitungan posisinya.  Beberapa  contoh  algoritma pengenalan  pola  bintang  yang  telah dikembangkan  seperti  Lost  In  Space Pyramid  (Diaz,  K.  D.,  2006),  Bit  Match (Hua  Li,  Bao,  Chun  Zhang,  Ying,  Yi  Li, Hua,  Wen  Xu,  Shi,  2005),  serta  algoritma Oriented  Triangles  (Rousseau,  G.  L.  au, Bostel, J., Masari, B., 2005). Pendekatan awalnya  adalah  dengan  mendeteksi bintang-bintang  tetangga  dari  suatu bintang yang paling terang yang tercakup  dalam  FOV  (Field  of  View). Sensor kemudian melakukan identifikasi bahwa  bintang-bintang  tersebut  cocok dengan  pola  bintang  dalam  katalog. Algoritma tersebut hanya membutuhkan posisi  bintang  dalam  kartesian  (vektor satuan  x,y,  z)  untuk  menghitung  jarak masing-masing bintang terhadap bintang  tetangganya.  Posisi  masing-
masing bintang yang teridentifikasi yaitu Right  Ascension  (RA)  dan  Deklinasi  (DE) kemudian  dicari  rata-rata  RA_mean  dan DE_mean  terhadap  titik  tengah  sensor. Sebagai referensi, sebuah katalog bintang  sederhana  yang digunakan berisi  data  posisi  4000  bintang.  Proses penentuan  posisi  bintang  ditunjukkan pada gambar di bawah ini :
Gambar 1-1: Proses Sederhana Penentuan

## Posisi Bintang

## 2  IDENTIFIKASI POLA BINTANG
Cahaya  bintang  yang  masuk  dan jatuh  ke  permukaan  sensor  dipresen- tasikan sebagai piksel aktif yang mempunyai  nilai  tertertu.  Setiap  piksel sensor CCD mempunyai indeks nilai dari 0  (paling  gelap)  sampai  dengan  angka maksimum  4096  (paling  terang).  Piksel- piksel  aktif  tersebut  kemudian  disebut sebagai panorama image. Agar algoritma lebih  efisien,  maka  dilakukan  ekstraksi bintang dengan hanya mengambil piksel yang mempunyai indeks tertinggi (paling)  terang  pada  setiap  baris  piksel sensor seperti terlihat pada Gambar 2-1.
Gambar 2-1: Piksel dengan
Indeks
Terang pada Sensor
Jika  ada  beberapa  piksel  berdekatan yang  mempunyai  indeks  nilai  terang yang  sama,  maka  diambil  satu  piksel saja    karena  kemungkinan  cahaya  pada piksel-piksel tersebut berasal dari cahaya  bintang  yang  sama,  seperti ditunjukkan Gambar 2-2 di bawah ini:
Gambar 2-2: Indeks  terang  pada  piksel yang berdekatan
Selanjutnya  panorama  diekstraksi  lagi dengan mengambil 30  objek yang memiliki  indeks  paling  tinggi.  Panorama image inilah  yang diproses  untuk mengenali  piksel-piksel  aktif  tersebut sebagai  pola  bintang.  Panorama  image dapat  disimpan  sebagai  raw  data  dalam bentuk file dan disusun dengan struktur seperti  terlihat  pada  Gambar  2-3  di bawah ini :
y position  of 1st star x position of 1st star index value of 1st star : : : y position  of 30th star x position of 30th star index value of 30th star Gambar 2-3: Struktur panorama image
Kriteria toleransi maksimum yang diambil adalah 1.5 piksel sehingga jarak angularnya d m dapat dihitung :
1.5 / 2 2 arctan m d f        (2-1)
dengan f adalah panjang fokal.  Adapun jarak  angular  antar  piksel  aktif  (d  ij ) untuk  setiap  piksel i j  diperoleh dengan cara sebagai berikut:
2 arccos i j i j ij i j x x y y f d
m m             (2-2)
dengan 0<i,j<30.
Dengan  x  dan  y  adalah  posisi  piksel dalam koordinat citra seperti ditunjukkan dalam Gambar 2-4 di bawah ini:
Gambar 2-4: Koordinat citra star sensor dimana,
( / 2)
( / 2) s s x x b y a y     (2-3) (2-4)
Dengan m i dan  m j berturut-turut adalah besar vektor (magnitude) piksel a i dan a j dimana  i  dimulai  dari  piksel  dengan indeks  paling  besar.  Sehingga  diperoleh keseluruhan  jarak  angular  antar  piksel aktif dalam dari panorama image.
Pengenalan pola bintang membutuhkan  sebuah  katalog  bintang sebagai  referensi.  Katalog  bintang  yang digunakan  berupa  data  bintang  beserta semua bintang tetangganya yang masuk dalam FOV sensor (dfov) dengan struktur seperti terlihat pada Gambar 2-5 di bawah ini:
star id x y z number of nb id 1 st star  x 1 st star y 1 st star z 1 st star n nb id d [urad]  d [deg] id nb 1 d1 d1 : : : id nb n dn dn id 2 nd star x 2 nd star y 2 nd star z 2 nd star M id nb id : : : id nb m dm dm
id n th star x n th star y n th star z n th star X
Gambar 2-5: Stuktur katalog bintang
Katalog tersebut dibuat dengan memodifikasi katalog bintang yang berisi data  14000  bintang  dengan  informasi Right  Ascension  (RA),  Deklinasi  (DE), unit  vektor  (x,y,z),  dan  nilai  magnitude- nya.  Dengan  melakukan  modifikasi, praktis  hanya  dibutuhkan  data  unit vektor  bintang  tersebut  dan  jarak dengan semua tetangganya.
Proses  pengenalan  pola  bintang dimulai  dengan  mencari  selisih  jarak angular  setiap  piksel  aktif  pada  sensor ( ij d  )  dengan  jarak  angular  bintang  dengan  setiap  tetangganya  (d  ij )  pada katalog. Jika nilai absolut (d  ij - ij d  ) < d m maka  pasangan  piksel  aktif  ij cocok dengan  pasangan  bintang  ij .  Proses dilakukan terus sampai mencapai jumlah  kecocokan  (Fn,  fit  number)  yang telah ditentukan:
, 1 n Fn d d dm ij ij i j        (2-5)
Pada  level  ini  bisa  dikatakan  proses pengenalan  mencapai  nilai  kecocokan level  pertama.  Selanjutnya  dilakukan proses  pencocokan  level  kedua  yaitu memastikan bahwa semua piksel aktif  j cocok  dengan  piksel  aktif  lainnya  k ,  di mana j k  dengan ketentuan:
, 1 2 f f f f f f N i j i j m i j Fn d d d  
     (2-6)
dimana  indeks  Fn2  adalah  jumlah kecocokan  level  kedua  dan  i f dan  j f menunjukkan masing-masing indeks
piksel/bintang
yang mencapai kecocokan  level  pertama.  Pengecekan level  kedua  ini  perlu  dilakukan  karena bisa  muncul  kemungkinan  jika  piksel  a cocok  dengan  piksel  b,  dan  c  tetapi belum  tentu  piksel  b  cocok  dengan
piksel  c.  Ilustrasinya  ditunjukkan  pada gambar di bawah ini:
Gambar 2-6: Kecocokan level kedua
Maka  pada  level  kedua  ini  jumlah kecocokan  bisa  berkurang.  Pada  kasus seperti  gambar  di  atas,  piksel  C’  bukan bintang  karena  tidak  ditemukan  pola tersebut  dalam  katalog.  Jika  ditemukan pola yang sama, maka piksel D merupakan  bintang.    Piksel  C’  di  atas kemungkinan adalah hot pixel (defect/noise atau cacat pada lensa) atau kemungkinan lain adalah benda bercahaya  lain  yang  tertangkap  sensor misalnya planet.
Setelah  dilakukan  pengecekan  level kedua,  maka  bisa  dipastikan  bahwa piksel-piksel aktif yang membentuk pola bintang  seperti  yang  terdapat  dalam katalog adalah bintang. Dengan diketahuinya pola bintang yang tertangkap oleh sensor, kemudian dilakukan proses komputasi perhitungan sudut-sudut euler (RA, DE).
Perhitungan RA dan DE  adalah sebagai berikut:
2 2 arctan arctan y RA x f DE x y                  (2-7) (2-8)
Secara  keseluruhan  diagram  alir algoritma pengenalan pola bintang dapat ditunjukkan pada Gambar 2-7 di bawah ini:
Start Choose Alpha Star Create Neighbours List for all stars i in catalog for all neighbours k of stars i in catalog for all neighbours l of alpha star Abs (dk-dl) < dm ? Save Information that catalog neighbours k fits to list neighbour l n++ End of l count End of k count n > n_min Save Information that alpha star fits to star I in the catalog End of i count End no yes yes no
Given : - Star list form image sensor
-Star Catalog
Brightest Central Star of image starlist
Calculate distance of alpha star to all other stars (neighbours) of image starlist
Check all stars of catalog Check all neighbours  of catalog star Check all list neighbours  of alpha star dk is distance of catalog neighbour k dl is distance of list neighbour l dm is parameter that defines the distance margin n is number of fits n_min is parameter that defines the minimum number of stars that have to fit to form a pattern
Star pattern recognized
Gambar 2-7: Diagram alir pengenalan pola bintang

## 3 PENGUJIAN
Pengujian dilakukan
dengan menggunakan  star  sensor  yang  akan diterbangkan pada satelit LAPAN-A2 dan LAPAN-ORARI dan dilakukan pada
waktu malam hari. Star sensor diarahkan  tegak  lurus  menghadap  ke langit  bebas  tanpa  adanya  halangan misalnya  awan.  Parameter  yang  diuji adalah  RA  dan  DE  dan  hasilnya disajikan pada gambar di bawah ini :
Gambar 3-1: Grafik  dRA  vs  waktu  star sensor 1
Gambar 3-2: Grafik  dDE  vs  waktu  star sensor 1
Gambar 3-3: Grafik  dRA  vs  waktu  star sensor 2
Gambar 3-4: Grafik  dDE  vs  waktu  star sensor 2
Gambar 3-5: Grafik  dRA  vs  waktu  star sensor 3
Gambar 3-6: Grafik  dDE  vs  waktu  star sensor 3

## 4 ANALISIS
Dari  hasil  pengujian,  diperoleh data  perubahan  rata-rata  nilai  dRA  dan dDE  adalah  seperti  terlihat  pada  Tabel 4-1.
dRA vs Time -0.0400 -0.0200 0.0000 0.0200 0.0400 0.0600 0.0800 0.1000 0.1200 0.1400 0.1600 0 5000 10000 15000 20000 25000 30000 35000 Time (ms) d R A ( d e g ) RA of Eath Rotation (15 deg/hour) RA of IRE STS (SN:001) dDE vs Time -0.015 -0.01 -0.005 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0 5000 10000 15000 20000 25000 30000 35000 Time (ms) d D E ( d e g ) dDE of STS IRE (SN:001) Data Source : 2010_02_23_03_57_55_tele.txt dRA vs Time -0.02 0 0.02 0.04 0.06 0.08 0.1 0.12 0 5000 10000 15000 20000 25000 30000 Time (ms) d R A ( d e g ) RA of Earth Rotation (15 deg/hour) RA of STS IRE (SN:002) Data Source : 2010_02_23_03_52_04_tele.txt dDE vs Time -0.025 -0.02 -0.015 -0.01 -0.005 0 0.005 0 5000 10000 15000 20000 25000 30000 Time (ms) d D E ( d e g ) dDE of IRE STS (SN:002) dRA vs Time -0.02 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0 5000 10000 15000 20000 25000 30000 35000 Time (ms) d R A ( d e g ) dRA of Earth Rotation (15 deg/hr) dRA of STS IRE (SN:003) Data Source : 2010_02_23_03_31_27_tele.txt dDE vs Time -0.010 -0.005 0.000 0.005 0.010 0.015 0.020 0.025 0 5000 10000 15000 20000 25000 30000 35000 Tim e  (m s) d D E ( d e g ) dDE of STS IRE (SN:003) Data Source : 2010_02_23_03_31_27_tele.txt

## Tabel 4-1:NILAI RATA-RATA dRA DAN dDE
Mean dRA (deg) Mean dDE (deg) Time Star Sensor 1 0.006676 0.009221 < 200 ms Star Sensor 2 0.003552 0.00866 < 200 ms Star Sensor 3 0.005 0.005 < 200 ms 0.005076 0.007627
Dari hasil pengujian menunjukkan bahwa  nilai  perubahan  RA  dan  DE memiliki variasi yang kecil, yaitu 0.005076 º (0.3  arcmin)  untuk  RA  dan 0.007627 º (0.45 arcmin) untuk DE yang berarti  masih  di  bawah  nilai  maksimum akurasi, yaitu  1 arcmin (0.0167 deg).

## 5 KESIMPULAN
Algoritma pengenalan
pola
bintang  dengan  teknik  bintang  tetangga dapat  diterapkan  pada  star  sensor untuk menentukan posisi bintang.
Teknik  tersebut  menghasilkan  hasil pengujian  dengan  tingkat  akurasi  yang cukup tinggi yaitu  0.3 arcmin untuk RA dan  0.45  arcmin  untuk  DE.    Dengan waktu pengambilan data yang dibutuhkan  dalam  proses  pengenalan pola  bintang  sampai  perhitungan  sudut Euler di bawah 200 ms, maka algoritma tersebut dapat digunakan sebagai sensor sikap satelit.

## DAFTAR RUJUKAN
Bak, T., 1999. Spacecraft Attitude Determination  -  a  Magnetometer Approach.  PhD  thesis,  Aalborg, Denmark.  University,  Department of Control Engineering, Denmark. Buhl,  M.,  Renner,  U.,  2009.  Star  Sensor
Development Based On The TUBSAT Experience. 7 th IAA Symposium. Berlin.
Diaz,  K.  D.,  2006.  Performance  Analysis
of Fixed Point Star Tracker Algorithm  for  Use  Onboard  a Picosatellite. California Institute of Technology. Agustus.
Hua  Li,  Bao,  Chun  Zhang,  Ying,  Yi  Li,
Hua,  Wen  Xu,  Shi,  2005.  An Autonomous Star Pattern Recognition  Algorithm  Using  Bit Macth. Harbin Institute of
Technology. Harbin. China.
Krogh,  K.,  Schreder,  E.,    2002.  Attitude Determination  for  AAU  Cubesat.
Aalborg, Denmark. University, Department of Control Engineering, Denmark.
Rousseau,  G.  L.  au,  Bostel,  J.,  Masari,
B., 2005. New Star Pattern Recognition  Algorithm  for  APS  Star Tracker  Application  :  “Oriented Triangle”.  Laboratoire  de  recherché balistique  et    Aerodynamique. Vernon. France.
Saifudin,  M.,  A.,  2009.  Laporan Training
Star Sensor TU Berlin. Pustekelegan Lapan. Bogor.