kstars, libindi, astrometry.net on openSUSE

 

Betriebssystem

openSUSE Tumbleweed

Ziel des Projekts

Umstellung der Teleskopsteuerung und der Aufnahmesoftware von Windows auf Linux.

Das bedeutet die Verwendung der libindi-Treiber an Stelle der Ascom-Treiber.

Steuerung des Ganzen über EKOS, das in kstars enthalten ist

Die Videoaufnahme für das lucky-imaging von Planeten ist mehr als nur gewöhnungsbedürftig in Ekos/Indi. Daher werde ich dafür eine Linux-Version von firecapture verwenden.

http://www.firecapture.de/

Warum selber kompilieren?

Für openSUSE gibt es nichts fertiges in den Repos, gerade wenn die libindi-3rd-party-Treiber verwendet werden sollen.

Wer Ubuntu hat, kann auf ppa-Repos zugreifen und spart sich damit das kompilieren.

Warnhinweis

Das alles ist bleeding-edge, das bedeutet nicht produktionsreif. Dieser Artikel ist als Merkzettel für mich gedacht und ständigen Änderungen unterworfen. Die Verwendung des vorgestellten Codes kann zu System-Crashs, zur Zerstörung des Dateisystems und zu Datenverlust führen. Wer diesen Code verwendet, tut dies auf eigene Gefahr und Verantwortung.

Vorbereitungen

Kompilierumgebung und git installieren
sudo zypper install \
libqt5-creator \
libqt5-qtmultimedia-devel \
git
Hauptverzeichnis anlegen
mkdir ~/astrostuff

Libindi

Treiber für das Equipement

Dependences installieren
 Libindi
sudo zypper install \
libnova-devel \
libusb-1_0-devel \
libcurl-devel \
gsl-devel \
libogg-devel \
libtheora-devel \
gtest \
gmock
 3rd party indi drivers
sudo zypper install \
libraw-devel \
libtiff-devel \
libgphoto2-devel
 Sourcecode holen

http://indilib.org/forum/general/210-howto-building-latest-libindi-ekos.html

libindi
cd ~/astrostuff &&\
git clone https://github.com/indilib/indi.git
Kompilieren
libindi
mkdir -p ~/astrostuff/indi/build/libindi &&\
cd ~/astrostuff/indi/build/libindi &&\
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ~/astrostuff/indi/libindi &&\
sudo make install
 3rd-party-driver:  indi-eqmod
mkdir -p ~/astrostuff/indi/build/indi-eqmod &&\
cd ~/astrostuff/indi/build/indi-eqmod &&\
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ~/astrostuff/indi/3rdparty/indi-eqmod &&\
sudo make install
 3rd-party-driver:  indi-asi
mkdir -p ~/astrostuff/indi/build/indi-asi &&\
cd ~/astrostuff/indi/build/indi-asi &&\
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ~/astrostuff/indi/3rdparty/indi-asi &&\
sudo make install
 3rd-party-driver:  asi-common

needed for 99-asi.rules in /lib/udev/rules.d

mkdir -p ~/astrostuff/indi/build/asi-common &&\
cd ~/astrostuff/indi/build/asi-common &&\
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ~/astrostuff/indi/3rdparty/asi-common &&\
sudo make install
3rd-party-driver:  indi-gphoto
mkdir -p ~/astrostuff/indi/build/indi-gphoto &&\
cd ~/astrostuff/indi/build/indi-gphoto &&\
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ~/astrostuff/indi/3rdparty/indi-gphoto &&\
sudo make install

astrometry.net

https://github.com/dstndstn/astrometry.net

Astrometry.net ist ein Dienst, der Sternenbilder analysiert. An Hand dieser Analyse findet er heraus, welchen Teil des großen weiten Himmelszeltes unsere Aufnahme zeigt. Diese Daten werden werden dann von EKOS zur akkuraten Goto-Ausrichtung des Teleskops verwendet. Also:

  • Teleskop einnorden
  • Gewünschtes Ziel anfahren, das man nur selten ganz genau treffen wird
  • (bis jetzt alles wie gewohnt, nun kommt astrometry.net ins Spiel)
  • Über EKOS im Align-Module eine Aufnahme machen und von astrometry.net auflösen lassen
  • EKOS verwendet die Daten dazu, näher an das Ziel heranzufahren
  • Ekos löst eine weitere Aufnahme aus
  • Astrometry.net untersucht die neue Aufnahme
  • EKOS fährt noch näher an das Ziel heran
  • und so weiter
  • bis das Ziel mit genügend großer Genauigkeit ins Visier genommen wurde

Eine geniale Sache also!

Das Auflösen der Aufnahmen kann Online oder Offline erfolgen.

Online hat den Vorteil, daß die Sache nicht viel Speicherplatz auf unserem System benötigt. Der Nachteil allerdings ist eine geringe Reaktionsgeschwindigkeit (das Bild muß erst hochgeladen werden) und die Abhängigkeit von einem Internet-Zugang.

Arbeiten wir Offline, dann muß die Software von atrometry.net auf unserem System installiert sein. Und es müssen die notwendigen Index-files vorhanden sein, die vom Solver benötigt werden. Diese Index-Files können eine Menge Speicherplatz belegen.

Sie werden per default in /usr/local/astrometry/data abgelegt, also im Betriebssystem-Teil der Festplatte. Ich habe diesen Teil bei der Installation des Betriebssystems mit 100GByte genügend groß gemacht, um hier nicht in Schwierigkeiten zu kommen.

Schauen wir uns also an, wie astrometry.net für das Offline-Arbeiten auf unseren Rechner kommt:

Dependences installieren
sudo zypper install \
zlib-devel \
cfitsio-devel \
cairo-devel \
libjpeg8-devel \
libnetpbm-devel \
python-devel \
swig \
python2-numpy-devel \
python2-astropy
Sourcecode holen
cd ~/astrostuff &&\
git clone https://github.com/dstndstn/astrometry.net.git
Kompilieren
cd ~/astrostuff/astrometry.net &&\
make NETPBM_INC="-I/usr/include/netpbm" NETPBM_LIB="-L/usr/lib64 -lnetpbm" &&\
make extra NETPBM_INC="-I/usr/include/netpbm" NETPBM_LIB="-L/usr/lib64 -lnetpbm" &&\
sudo make install

astrometry,net wird dadurch installiert nach /usr/local/astrometry

 

Index-files für astronometry.net

Woher bekomme ich die Index-files?

Die Index-files können von einer der folgenden Seiten heruntergeladen werden

  1. http://broiler.astrometry.net/~dstn/4200/ (narrow-field)
  2. http://broiler.astrometry.net/~dstn/4100/ (wide-field)
  3. http://indilib.org/about/ekos/alignment-module.html (wide-field)

Je nachdem, welche Seite gewählt wurde, ergibt sich ein unterschiedliches Vorgehen.  Zuerst brauche ich aber erst einmal einen Ordner, in dem ich die Index-files speichere:

mkdir -p ~/astrostuff/index-files
Quelle astronomy.net

Wenn man kein Script schreiben will, ist der Download der *.fits files mit einer Haufen Handarbeit verbunden, da sie einzeln heruntergeladen werden. Auf jeden Fall kommen diese Index-files in den Ordner, den ich gerade erstellt habe

Quelle indilib.org

Der download geht hier schneller, da die files schon in sinnvollen Gruppen zusammengefasst sind. Allerdings sind das .deb-Archive für Ubuntu und Konsorten. Mit ein paar Tricks kann ich die Archive aber auch in openSUSE benutzen.

Ein Beispiel:

astrometry-data-4208-4219_0.45_all.deb  enthält die Index-files 4208.fits bis 4219.fits. An die muß man aber erst einmal ran kommen. Und das geht so:

  • astrometry-data-4208-4219_0.45_all.deb entpacken

Man erhält einen Ordner mit dem Namen astrometry-data-4208-4219_0.45_all. Dieser Ordner enthält 3 Dateien:

control.tar.gz
data.tar.gz
debian-binary

Uns interessiert nur data.tar.gz, den Rest können wir in der Tonne versenken.

  • data.tar.gz entpacken

Wir erhalten einen Ordner mit dem Namen usr, der Unterordner enthält.

  • Ordner usr öffnen

Wir finden einen Ordner mit dem Namen share

  • Ordner share öffnen

Dort sind zwei Ordner enthalten, von denen uns nur einer interessiert

  • Ordner astrometry öffnen

Damit sind wir bei den Index-files angelangt, die wir nach ~/astrostuff/index-files kopieren / verschieben (ganz wie es uns beliebt).

Diese Prozedur wiederholen wir nun für alle .deb Archive, die wir als notwendig erachten.

Verschieben

Nun haben wir alle notwendigen Inxex-files in unserem Speicherordner ~/astrostuff/index-files gesammelt. Diese .fits-Dateien müssen nun verschoben / kopiert werden (jeder, wie er will) nach /usr/local/astrometry/data

sudo cp ~/astrostuff/index-files/*.fits /usr/local/astrometry/data
Welche Index-files sind notwendig?

Auf der Seite von astrometry.net kann man nachlesen, welche Index-files ffür welche Aufnahmen notwendig sind. Mein Tip hier: Einfach alle Index-files herunterladen und speichern, dann ist man auf der sicheren Seite. Vorraussetzung ist natürlich genügend Speicherplatz im Betriebssystem-Teil der Festplatte.

Quelle EKOS

Im Align-Modul von EKOS unter Optionen können die Index-files auch heruntergeladen und installiert werden. Das Funktioniert aber leider nicht mit allen angebotenen files. Irgendwann kommt dann die Fehlermeldung:

EKOS align options kauth error beim installieren von image-files

Und Essig war´s mit weiteren index-Files. Das scheint irgenwie ein Bug in kstars/EKOS oder sonstwo zu sein.

EKOS und ein paar Pfade

Um mit astrometry.net offline arbeiten zu können, müssen wir EKOS mitteilen, wo die notwendigen Anweisungen zu finden sind. Das erfolgt in der Optionen-Abteilung des Align-Moduls von EKOS.

Wenn unsere Default-Installation astrometry.net nach /usr/local/astrometry installiert hat, sind das folgende Pfadangaben:

solver:    /usr/local/astrometry/bin/solve-field
config:    /usr/local/astrometry/etc/astrometry.cfg
wcsinfo:   /usr/local/astrometry/bin/wcsinfo

An Hand dieser Daten findet EKOS dann die Index-files automatisch.

kstars

https://techbase.kde.org/Projects/Edu/KStars/Building_KStars_KF5

Dependences installieren
sudo zypper install \
extra-cmake-modules \
libqt5-qtsvg-devel \
libqt5-qtwebsockets-devel \
knotifyconfig-devel \
kauth-devel \
kconfig-devel \
kcrash-devel \
kdoctools-devel \
kwidgetsaddons-devel \
knewstuff-devel \
ki18n-devel \
kio-devel \
kplotting-devel \
knotifications-devel \
eigen3-devel \
wcslib-devel \
xplanet \
libQt5DataVisualization5-devel \
qtkeychain-qt5-devel
Sourcecode holen
cd ~/astrostuff &&\
git clone git://anongit.kde.org/kstars.git
Kompilieren
mkdir -p ~/astrostuff/kstars/build/kstars &&\
cd ~/astrostuff/kstars/build/kstars &&\
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ~/astrostuff/kstars &&\
make &&\
sudo make install

Verschiedenes (todo)

  • EOS6D 100mm tif
solve-field --downsample 4 --scale-units arcsecperpix --scale-low 13 --scale-high 14 *.tif
AttributeError: 'NoPyfits' object has no attribute 'open'
asi-common
make NETPBM_INC="-I/usr/include/netpbm" NETPBM_LIB="-L/usr/lib64 -lnetpbm"
index-files 4100 vs 4200 tycho2 vs 2mass