Überblick
Die Astronomische Beobachtungsliste berechnet für beliebige Objekte (Planetarische Nebel, Galaxien, Sternhaufen, …) wann und wie hoch sie vom gewählten Beobachtungsort sichtbar sind. Alle Berechnungen laufen vollständig lokal im Browser — keine Daten verlassen Ihr Gerät.
Der eingebettete Standardkatalog AdPN2 enthält ausgewählte planetarische Nebel aus dem Atlas der planetarischen Nebel. Eigene Kataloge können jederzeit per JSON-Import hinzugefügt werden und werden dauerhaft in IndexedDB gespeichert.
FUNKTIONEN
- Sichtbarkeitsberechnung (Aufgang, Kulmination, Untergang)
- Mondphasen & Mondabstand je Objekt
- Höhenkurven für die gesamte Nacht
- Optimale Slew-Reihenfolge
- Export für AsiAir, N.I.N.A., SkySafari, Voyager
- Beobachtungsnotizen pro Objekt
- Rotlicht-Modus (Night Vision)
- JPL Horizons: Kometen, Asteroiden, NEA
- Supernovae (Rochester Astronomy)
- 🔭 ASCOM Alpaca Teleskop-Steuerung
SPEICHER
- IndexedDB — Kataloge (unbegrenzt)
- localStorage — Orte, Notizen, Einstellungen
- Migration alter Daten automatisch
- Export/Import als JSON-Datei
- Kein Server, kein Login, kein Tracking
Standort & Berechnung
- Ortsnamen eingeben und 🔍 Suchen klicken — Koordinaten werden via Nominatim/OpenStreetMap aufgelöst.
- ⭐ Ort merken speichert den aktuellen Standort dauerhaft; gespeicherte Orte erscheinen in der Auswahlliste.
- UTC-Offset manuell eintragen: MEZ = +1, MESZ = +2. Beim Laden wird der saisonale Wert automatisch vorbelegt.
- ▶ BERECHNEN startet die Berechnung. Die Tabelle zeigt oben sichtbare, unten nicht sichtbare Objekte — Grenze ist die bürgerliche Dämmerung (Sonne −6°).
Tabellenspalten erklärt
| SPALTE |
BEDEUTUNG |
| 📷 | Checkbox: Objekt als beobachtet/fotografiert markieren |
| Name | Bezeichnung · 📝-Icon öffnet Notiz · goldenes Icon = Notiz vorhanden |
| Typ | Objekttyp (PN = Planetarischer Nebel, SYM = Symbiotischer Stern) |
| Kon | Sternbild (Constellation), 3-Buchstaben-Abkürzung |
| mag | Visuelle Helligkeit in Magnituden |
| Größe | Ausdehnung in Bogensekunden (arcsec) |
| Höhe@Nachtbeginn | Höhe über Horizont zur bürgerlichen Dämmerung · positiv = bereits sichtbar (UP-Tag) |
| Max Höhe | Maximale Kulminationshöhe in der Nacht · grün >30°, gelb 15–30°, rot <15° |
| Aufgang / Untergang | Ortszeit des Horizontdurchgangs · ∞ = zirkumpolar |
| Kulmination | Zeitpunkt der höchsten Stellung (Ortszeit) |
| Mond∠ | Winkelabstand Mond–Objekt · grün >50°, hellgrün 35–50°, gelb 20–35°, rot <20° |
Filter & Sortierung
- Min. Max-Höhe: Blendet Objekte aus, die nie über den eingestellten Winkel steigen.
- Suche: Filtert nach Objektname, Sternbild oder Eigenname (common name).
- Sortierung: Kulmination · Max. Höhe · Helligkeit · Name · Mond∠ (mondferste Objekte zuerst).
- Nur nicht fotografiert: Blendet bereits abgehakte Objekte aus.
Abschnitte ein-/ausklappen: Ein Klick auf einen Sektions-Header (SICHTBAR, NICHT SICHTBAR, ☄ JPL, 💥 SUPERNOVAE, 🌍 NEA) klappt den Abschnitt ein oder aus. Der ▼-Pfeil dreht sich beim Einklappen auf ▶. Der Zustand wird gespeichert und beim nächsten Start wiederhergestellt.
🌕 Mondberechnung
Die Mondposition wird für den Dämmerungszeitpunkt berechnet (Algorithmus nach Jean Meeus, Kap. 47). In der Statusleiste erscheinen Mondphase, Beleuchtungsgrad in Prozent sowie Auf- und Untergangszeit.
- Die Spalte Mond∠ zeigt den Winkelabstand zwischen Mond und jedem Objekt in Grad.
- Objekte mit rotem Wert (<20°) sind bei Halbmond oder Vollmond stark beeinträchtigt — besonders schwache Objekte und planetarische Nebel.
- Im Höhenkurven-Chart wird die Mondbahn als gestrichelte silberne Linie eingezeichnet.
- Sortierung nach Mond∠ zeigt die günstigsten Objekte der Nacht zuerst.
Mondphasen-Symbole: 🌑 Neumond · 🌒🌘 Sichel · 🌓🌗 Halbmond · 🌔🌖 Dreiviertel · 🌕 Vollmond
Die Mondberechnung hat eine Genauigkeit von ca. ±0,3° — ausreichend für die Beobachtungsplanung.
🌍 NEA — Near Earth Approaches
Der Button 🌍 NEA-Vorbeiflüge laden fragt zwei JPL-APIs ab und zeigt alle Kleinplaneten, die in einem wählbaren Zeitfenster an der Erde vorbeifliegen — mit Vorbeiflugdatum, Mindestabstand, Geschwindigkeit, geschätztem Durchmesser und (wenn verfügbar) aktueller Himmelsposition.
Zweistufige Abfrage:
- Stufe 1 — cad.api (Close Approach Data): Liste aller NEOs mit Erdannäherung im gewählten Zeitfenster. Liefert Vorbeiflugdatum, Distanz (AU), Relativgeschwindigkeit (km/s), absolute Helligkeit H und Durchmesser.
- Stufe 2 — sbwobs.api: Für den konfigurierten Standort und das Datum werden RA/Dec, Vmag, Aufgang und Kulmination abgerufen und mit den CAD-Daten zusammengeführt.
- Fenster: 7 / 14 / 30 / 60 Tage ab heute.
- Max. Dist: Maximaler Erdabstand beim Vorbeiflug (0.05–0.2 AU oder in Mondabständen LD).
- Gruppe: Alle NEOs, nur PHA (potenziell gefährliche Asteroiden), oder nur NEA.
Die Spalte Min. Abstand zeigt den geringsten Erdabstand beim Vorbeiflug in Mio. km — farbkodiert: grün >7.5 Mio km, gelb 1.5–7.5 Mio km, rot <1.5 Mio km. Die Spalte Vorbeiflug gibt das Datum des nächsten Annäherungspunkts an.
Hinweis: cad.api ist direkt aus dem Browser aufrufbar (CORS vorhanden). sbwobs.api benötigt weiterhin den Proxy auf heartsome.de. Falls sbwobs.api nicht erreichbar ist, werden Vorbeiflug-Metadaten (Abstand, Geschwindigkeit, Helligkeit) ohne Himmelsposition angezeigt.
💥 Supernovae — Rochester Astronomy
Der Button 💥 Supernovae laden ruft die aktuelle Liste aktiver Supernovae von rochesterastronomy.org ab. Die Daten werden tagesaktuell von der Rochester Supernova Research Group gepflegt.
- Ab Datum: Filtert nach Entdeckungsdatum — Standard: letzte 90 Tage.
- Vmag max: Nur Supernovae heller als dieser Wert (Standardwert 18). Warnhinweis: Magnitudenangaben bei Supernovae sind oft Schätzwerte oder Obergrenzen.
- Die abgerufenen Objekte erscheinen als eigener Abschnitt 💥 SUPERNOVAE, sortiert nach Helligkeit (hellste zuerst).
- Typ-Farben: Ia Thermonuklear · II Kernkollaps · Ib/c Gestreifter Kernkollaps
- Die Spalte Entdeckt zeigt das Entdeckungsdatum aus Rochester.
- Kulmination, Aufgang und Untergang werden lokal aus den Koordinaten berechnet.
Technischer Hinweis: Wie bei JPL wird ein CORS-Proxy auf heartsome.de verwendet. Supernovae werden nicht in IndexedDB gespeichert — nach einem Neuladen der Seite muss erneut geladen werden.
☄ JPL Horizons — Kometen & Asteroiden
Über die JPL-Toolbar können aktuelle Kometen und Asteroiden direkt aus der NASA-Datenbank JPL Horizons abgerufen werden. Die Daten sind datumsabhängig und werden nicht gespeichert — bei jedem Seitenneuladen muss erneut abgefragt werden.
- Objekttyp: Kometen, Asteroiden oder beide gleichzeitig.
- Gruppe: Einschränkung auf NEO (erdnahe Objekte), PHA (potenziell gefährliche Asteroiden) oder alle.
- Vmag max: Nur Objekte heller als dieser Wert. Standardwert 13 — für schwächere Objekte erhöhen.
- Min. Höhe: Mindesthöhe über dem Horizont in Grad.
Die abgerufenen Objekte erscheinen als eigener Abschnitt ☄ KOMETEN & ASTEROIDEN unterhalb der Katalogobjekte. Alle Export-Funktionen (AsiAir, N.I.N.A., SkySafari, Voyager) enthalten die JPL-Objekte automatisch.
Technischer Hinweis: Die JPL-API ist nicht direkt aus dem Browser aufrufbar (CORS-Einschränkung). Die App nutzt einen CORS-Proxy auf heartsome.de. Bei Verbindungsproblemen prüfen Sie zunächst, ob dieser Dienst erreichbar ist.
Koordinaten: Kometen und Asteroiden bewegen sich täglich. Die angezeigten RA/Dec-Werte gelten nur für das abgefragte Datum. Beim Export sollte das Datum mitnotiert werden.
🔭 Teleskop-Steuerung — ASCOM Alpaca
Der 🔭-Button im Header öffnet das Geräte-Steuerungsdialog. Alle Alpaca-fähigen Geräte können hier verbunden und bedient werden.
Verbinden:
- IP / Host — IP-Adresse des Alpaca-Servers (
localhost für lokale Geräte, z.B. 192.168.1.42 für Seestar im WLAN)
- Port — Standard Alpaca: 11111 · OmniSim: 32323 · Mit Proxy: 11111
- Dev# — Gerätenummer (fast immer 0)
- 🔍 Discover — sucht automatisch Alpaca-Geräte im lokalen Netz
- Montierung / Kamera — Auswahl aus der Gerätekonfiguration (dient nur zur Anzeige von Specs)
Nach der Verbindung werden automatisch alle weiteren Geräte am selben Host gesucht (Camera, Focuser, FilterWheel, Rotator, ObservingConditions).
5 Tabs im Dialog:
- 🔭 Teleskop — RA/Dec/Alt/Az, Tracking, Park, Jog-Kreuz, Montierungs-Info
- 📷 Kamera — Status, Belichtung starten (Dauer/Binning/Gain), Kühler mit Zieltemperatur, Fortschrittsbalken
- 🔧 Fokus — EAF-Position, absolute und relative Steuerung (10–1000 Schritte), Temperaturkompensation
- 🎨 Filter — Filterwahl per Klick, Fokus-Offsets je Filter
- 🌤 Wetter — Wolken, Luftfeuchtigkeit, Temperatur, Taupunkt, Wind, Seeing, Himmelsgüte
GoTo durch Zeilen-Klick: Mit verbundenem Teleskop erscheint ein Fadenkreuz-Cursor auf allen Objektzeilen. Klick → GoTo startet direkt.
- Phase 1 — „GoTo NGC 7293 …" mit Spinner
- Phase 2 — Echtzeit-Position, Fortschritt %, vergangene Sekunden
- Phase 3 — „✓ NGC 7293 erreicht · Δ 12″ · 23s" — verschwindet nach 4s
Voraussetzung — App über HTTP öffnen:
Die App muss über einen Webserver laufen, nicht als file://. Möglichkeiten:
• XAMPP: Dateien nach C:\xampp\htdocs\beobachtungsliste\ → http://localhost/beobachtungsliste/
• Python: python -m http.server 8080 im App-Ordner → http://localhost:8080
CORS-Proxy — wann nötig?
Der Browser blockiert Anfragen von Port 80/8080 (Webserver) zu Port 11111/32323 (Alpaca). Der mitgelieferte alpaca_cors_proxy.py löst das.
Proxy nötig bei: OmniSim (Test-Simulator), ASCOM Remote
Kein Proxy bei: Seestar S50/S30 mit aktueller Firmware (CORS-Header vorhanden)
Starten: alpaca_proxy_starten.bat (Doppelklick) — findet den Alpaca-Port automatisch.
Dann im Dialog: IP localhost · Port 11111 · Dev# 0
Manuell:
python alpaca_cors_proxy.py ← Auto-Discovery
python alpaca_cors_proxy.py 32323 ← OmniSim direkt
python alpaca_cors_proxy.py 32323 8888 ← Proxy auf Port 8888
StellarMate Pro — INDI-Integration:
StellarMate verwendet das INDI-Protokoll (Linux/Open-Source-Äquivalent zu ASCOM). INDI kommuniziert über TCP Port 7624 mit XML — das können Browser nicht direkt. Die eleganteste Lösung ist der mitgelieferte Alpaca-Bridge:
1. Einmalig auf StellarMate einrichten (SSH):
sudo apt install indi-alpaca
indi_alpaca_server -p 11111 &
Damit wird INDI nach außen als Alpaca-API auf Port 11111 sichtbar.
2. In der App verbinden:
Im 🔭-Dialog: Steuergerät → StellarMate Pro wählen → IP und Port werden automatisch eingetragen.
Oder manuell: IP stellarmate.local · Port 11111 · Dev# 0
Kein Proxy nötig — StellarMate liefert CORS-Header von sich aus.
Alternativ — INDI Web Manager API (nur für Start/Stop von Treibern):
GET http://stellarmate.local:8624/api/server/status
GET http://stellarmate.local:8624/api/server/start/Simulators
Diese REST-API startet/stoppt INDI-Profile, steuert aber keine Geräte direkt.
OmniSim — Simulator zum Testen:
Testen ohne echtes Teleskop:
ASCOM.Alpaca.Simulators herunterladen oder über ASCOM Platform 7 installieren.
Start:
Start → ASCOM Platform → OmniSimulator → läuft auf Port 32323.
Dann Proxy starten → App verbinden: localhost · 11111 · 0.
🌙 ☀️ 🔴 Farbthemes
Die App unterstützt drei Farbthemes, umschaltbar mit dem Theme-Button oben rechts im Header. Jeder Klick wechselt zum nächsten Theme im Zyklus:
-
🌙 Dunkel — Standard-Theme. Dunkler Hintergrund (#06080f), blaue Akzente.
Ideal für die nächtliche Beobachtungsplanung am Bildschirm.
-
☀️ Hell — Helles Theme mit weißem Hintergrund, dunkler Schrift und blauen Akzenten.
Ideal für die Tagesplanung oder bei starker Umgebungsbeleuchtung.
Das HELL-Badge erscheint im Header.
-
🔴 Nacht (Night Vision) — Rote Töne für den Betrieb am Teleskop.
Weißes Licht zerstört die Dunkeladaption des Auges — rotes Licht erhält sie.
Das NIGHT VISION-Badge erscheint im Header.
Das gewählte Theme wird dauerhaft gespeichert und beim nächsten Öffnen sofort wiederhergestellt — kein helles Aufblitzen beim Laden.
📈 Höhenkurven
Der Button 📈 Höhenkurven in der Export-Toolbar öffnet einen Canvas-Chart der die Höhe aller gefilterten Objekte über dem Horizont für die gesamte Nacht zeigt.
- Y-Achse: Höhe in Grad (0° = Horizont, 90° = Zenit)
- X-Achse: Ortszeit von Abenddämmerung bis Morgendämmerung
- Gestrichelte goldene Linien: Beginn und Ende der astronomischen Nacht (bürgerliche Dämmerung)
- Gefüllte Kreise auf den Kurven: Kulminationszeitpunkt
- Gestrichelte silberne Linie: Mondbahn mit Prozentangabe
- Filter: Anzahl der angezeigten Objekte, Mindesthöhe, nur sichtbare Objekte
⊕ Slew-Reihenfolge
Der Button ⊕ Slew-Reihenfolge berechnet die optimale Beobachtungsreihenfolge mit dem Nearest-Neighbour-Algorithmus — minimale Gesamtschwenkbewegung des Teleskops.
- Die Tabelle wird in optimierter Reihenfolge neu sortiert, jedes Objekt erhält eine Nummer (#1, #2, …).
- Der Sektions-Header zeigt den Gesamtweg in Grad und die Anzahl der Ziele.
- Startpunkt ist das Objekt mit der frühesten Kulmination nach Einbruch der Nacht.
- Ein erneuter Klick auf den Button deaktiviert den Modus und stellt die ursprüngliche Sortierung wieder her.
Tipp: Kombinieren Sie Slew-Reihenfolge mit dem Export — z. B. Slew aktivieren → AsiAir CSV exportieren erzeugt eine sequenzoptimierte Zielliste.
↗ Export-Formate
Die Export-Toolbar exportiert alle aktuell sichtbaren und gefilterten Objekte. Die Slew-Reihenfolge bleibt beim Export erhalten.
| BUTTON |
FORMAT |
KOORDINATEN |
| AsiAir CSV | Name, RA, DEC | HH:MM:SS / ±DD:MM:SS |
| N.I.N.A. CSV | Name, RA, Dec, Rotation, ROI | HH:MM:SS / ±DD:MM:SS |
| SkySafari .skylist | Proprietäres .skylist-Format v3 | Dezimalstunden / Dezimalgrad |
| Voyager CSV | Name, RA, Dec, Note | Dezimalgrad J2000 (0–360 / ±90) |
Weitere Informationen zu den Import-Formaten aller Programme finden sich in der separaten Referenzdatei astro_importformate.html.
📝 Beobachtungsnotizen
Jedes Objekt hat ein 📝-Icon in der Namensspalte. Ein Klick öffnet den Notizdialog.
- Freier Text: Beobachtungsbedingungen, Eindrücke, Belichtungszeiten, Filterangaben, …
- Datum und Uhrzeit der letzten Bearbeitung werden automatisch gespeichert.
- Das Icon leuchtet golden, wenn eine Notiz vorhanden ist.
- Notizen werden in
localStorage gespeichert und bleiben beim Schließen des Browsers erhalten.
- Beim Export als JSON-Sicherungsdatei (📷 FOTOS → Speichern) sind die Notizen nicht enthalten — nur die Markierungen. Separate Sicherung: Browser-Entwicklerkonsole →
localStorage.getItem('pn_notizen_v1').
📷 Beobachtungs-Markierungen
Die Checkbox ganz links markiert Objekte als beobachtet oder fotografiert. Mit ⬇ Speichern wird eine JSON-Datei erzeugt, die Markierungen, Standort und alle importierten Kataloge enthält. Mit ⬆ Laden wird ein gespeicherter Stand wiederhergestellt.
Tipp für Geräteübergang: Speichern Sie auf dem Planungsrechner, laden Sie auf dem Tablet am Teleskop. Alle Kataloge und der Standort werden mit übertragen.
📚 Katalog-Import: JSON-Format
Eigene Objektlisten als JSON-Datei importieren. Drei unterstützte Formate:
Format 1 – Direktformat (Felder bereits korrekt benannt):
[
{
"Name": "NGC 7293", // PFLICHT
"ra": "22:29:38.5", // PFLICHT – HH:MM:SS.s
"dec": "-20:50:14", // PFLICHT – ±DD:MM:SS
"Constellation": "Aqr", // optional
"v_mag": 7.3, // optional
"Size arcsec": "900x720", // optional – Bogensekunden
"Object type": "Planetary Nebulae",// optional
"common_names": "Helix Nebula" // optional – Eigenname
}
]
Format 2 – Freies Format mit Mapping-Dialog: Abweichende Feldnamen → automatischer Zuweisungs-Dialog.
[{ "Bezeichnung": "NGC 7293", "RA_J2000": "22:29:38.5", "DEC_J2000": "-20:50:14" }]
Format 3 – Katalog mit Metadaten:
{ "meta": { "name": "Mein Katalog", "version": "1.0" },
"objects": [ { "Name": "...", "ra": "...", "dec": "..." } ] }
Unterstützte Koordinatenformate:
- RA:
22:29:38.5 · 22 29 38.5 · 337.41 (Dezimalgrad)
- Dec:
-20:50:14 · -20 50 14 · -20.838 (Dezimalgrad)
Speicherkapazität: Kataloge werden in IndexedDB gespeichert — theoretisch unbegrenzt (abhängig vom Browser, typisch hunderte MB bis GB). Beim ersten Start werden alte localStorage-Kataloge automatisch migriert.
Speicher & Datenschutz
Alle Daten werden ausschließlich lokal in Ihrem Browser gespeichert. Es findet keine Übertragung an externe Server statt — mit einer Ausnahme: Die Ortssuche verwendet die öffentliche Nominatim-API von OpenStreetMap (nur bei aktiver Suche).
| DATEN |
SPEICHERORT |
LÖSCHEN |
| Kataloge | IndexedDB | ✕ Entfernen-Button im Katalog-Menü |
| Gespeicherte Orte | localStorage | Browser-Einstellungen → Website-Daten löschen |
| Foto-Markierungen | localStorage | ✕ Alle zurücksetzen |
| Beobachtungsnotizen | localStorage | Einzeln im Notiz-Dialog oder Browser-Einstellungen |
| Einstellungen (Rotlicht, …) | localStorage | Browser-Einstellungen → Website-Daten löschen |