indexing, glossary words, misc

glossary
Jeff Moe 2022-09-06 14:09:43 -06:00
parent 26f56dfa3a
commit 16bbb5521e
13 changed files with 108 additions and 172 deletions

View File

@ -12,7 +12,7 @@
\section{Overview of Operation}
\label{sec:overview-operation}
\index{operation}
Below shows how to run a SatNOGS Optical \gls{ground-station},
Below shows how to run a \gls{SatNOGS-Optical} \gls{ground-station},
after it has been set up and configured.
\section{Setup with \texttt{stvid}}
@ -53,7 +53,7 @@ cd stvid/
\section{\texttt{acquire.py} Output}
\label{sec:acquire-output}
\index{acquire}
\index{acquire}\index{configuration.ini}\index{FITS}
Example output while running \texttt{acquire.py}.

View File

@ -282,9 +282,9 @@
long = {Simple Imaging Polynomial}
}
@acronym{FOV,
@acronym{FoV,
description = {Field of view.},
short = {FOV},
short = {FoV},
long = {Field of View}
}

View File

@ -13,20 +13,19 @@
\label{sec:satellite-detection}
\index{detect}\index{process}
This is a description of \gls{satellite} detection processes.
To detect \gls{satellite} in a \gls{FITS} file using the stvid \gls{toolchain},
To detect \gls{satellite} in a \gls{FITS} file using the \gls{stvid} \gls{toolchain},
run \texttt{process.py} or, if it exists, the \texttt{process\_new.py}
\gls{Python} script.
Note the \texttt{stvid} application's \texttt{process.py} and \texttt{process\_new.py}
will perform both the detection and identification steps.
\index{identify}
\index{identify}\index{detect}
\subsection{\texttt{process\_new.py} Usage}
\index{process}
This assumes you have installed \texttt{stvid} as shown in
This assumes you have installed \texttt{\gls{stvid}} as shown in
section \ref{sec:stvid-setup}, page \pageref{sec:stvid-setup}.
Adjust the dated directory used in this example to the actual directory name.
@ -37,7 +36,7 @@ cd stvid/
# Process directory
./process_new.py -c config_new.ini -d data/obs/20220825_1/020502/
\end{minted}
\index{process}
\index{process}\index{TLE}\index{config\_new.ini}
\subsection{\texttt{process.py} Usage}
@ -51,12 +50,12 @@ script.
cd stvid/
./process.py -c configuration.ini -d data/obs/20220825_1/020502/
\end{minted}
\index{process}
\index{process}\index{configuration.ini}
\subsection{\texttt{process\_new.py Example Output}}
\label{sec:process-output}
\index{process}
\index{process}\index{config\_new.ini}
\begin{minted}{sh}
Computing astrometric calibration for /srv/obs/odroid-01/obs/20220902_1/043309/2022-09-02T04:33:09.871.fits
@ -86,12 +85,10 @@ See
for a screenshot displaying a \gls{FITS} file generated by
\texttt{\gls{stvid}}.
\begin{sidewaysfigure}[p!]
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{astroimagej.png}
\caption{AstroImageJ screenshot viewing FITS file.}
\label{fig:astroimagej}
\end{center}
\end{sidewaysfigure}

View File

@ -19,8 +19,6 @@
\section{SatNOGS Ground Stations}
The \gls{LSF} built the \gls{SatNOGS} network using distributed,
volunteer-run, \gls{RF} \glspl{ground-station} using \glspl{SDR}, such as in
figure \ref{fig:spacecruft-rotator}, page \pageref{fig:spacecruft-rotator}.%
@ -39,7 +37,7 @@ It shows a \gls{SatNOGS} \gls{ground-station} with \gls{VHF} (right) and \gls{UH
\end{center}
\end{figure}
Ground stations can be viewed on the \gls{SatNOGS} network website, such as
\Glspl{ground-station} can be viewed on the \gls{SatNOGS} network website, such as
as the example in figure \ref{fig:satnogs-ground-station-web}, page \pageref{fig:satnogs-ground-station-web}.%
\footnote{\url{https://network.satnogs.org/stations/2733/}}
@ -49,7 +47,6 @@ as the example in figure \ref{fig:satnogs-ground-station-web}, page \pageref{fig
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{satnogs-ground-station-web.png}
\caption{Ground station viewed on SatNOGS website, example.}
\label{fig:satnogs-ground-station-web}
\end{center}
\end{sidewaysfigure}

View File

@ -14,7 +14,7 @@
\index{hardware}
Hardware considerations for a \gls{SatNOGS-Optical} \gls{ground-station}.
Main hardware components in an optical \gls{ground-station}:
Main hardware components in an \gls{optical-ground-station}:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{itemize}
@ -171,7 +171,7 @@ See a close up of the front of the enclosure and camera lens in figure
As seen in figure
\ref{fig:video-enclosure-left}, page \pageref{fig:video-enclosure-left},
the left side of the enclosure has a hinge for opening.
The bottom white component is part of the telescope mount.
The bottom white component is part of the \gls{telescope} mount.
\index{mount}
\begin{figure}[h!]
@ -253,7 +253,7 @@ is:
\end{sidewaysfigure}
The top of the enclosure shows weather protection and a sun visor.
\index{enclosure}
\index{enclosure}\index{weather}
See figure \ref{fig:video-enclosure-top}, page \pageref{fig:video-enclosure-top}.
\begin{figure}[h!]
@ -270,7 +270,7 @@ See figure \ref{fig:video-enclosure-top}, page \pageref{fig:video-enclosure-top}
\section{Tripods}
\label{sec:hardware-tripod}
\index{hardware}\index{tripod}\index{camera}
\index{hardware}\index{tripod}\index{camera}\index{pier}
The camera setup can be mounted a wide variety of ways,
from just setting the camera somewhere (worst option), to a heavy duty
@ -335,12 +335,11 @@ Tracking mount options to consider include:
\item [Misc \gls{PTZ}] --- Other security camera \gls{PTZ} mounts.
\end{description}
\end{mdframed}
\index{track}\index{mount}\index{Sky-Watcher}
\index{Yaesu}\index{hamlib}
\index{iOptron}
\index{track}\index{mount}\index{Sky-Watcher}\index{Yaesu}\index{hamlib}\index{iOptron}
\index{G-5500}
Tracking mounts aren't widely used, but there is support for them in
\texttt{stvid} when acquiring data.
\texttt{\gls{stvid}} when acquiring data.
The tracking needs to be set up independently of \texttt{stvid}.
At present, I use \gls{KStars} with Ekos to control a Sky-Watcher EQ6-R Pro
tracking mount.
@ -364,11 +363,11 @@ For tracking, there a few different ways to track:
\end{mdframed}
\subsection{Sidereal Tracking Mounts}
\index{track}
\index{track}\index{mount}
Sidereal tracking (``telescope tracking'') is what \gls{COTS} tracking ``\gls{GoTo}''
\glspl{telescope} from \gls{Celestron} or Sky-Watcher do, for example. They track
the stars, countering the rotation of the Earth to keep the same view
of the sky in the camera's \gls{FOV}. Stars remain as points, even after multi-minute
of the sky in the camera's \gls{FoV}. Stars remain as points, even after multi-minute
or multi-hour imaging. This is what is used for ``pretty'' pictures
of stars, nebula, galaxies, etc.
This is the most common tracking set up, as it has been widely used in
@ -381,7 +380,7 @@ Within sidereal tracking mounts, there are yet more options:
\item [Fork] --- Fork mount.
\item [\gls{EQ} fork] --- Fork on \gls{EQ} mount.
\item [German \gls{EQ}] --- Most common \gls{EQ} mount.
\item [More] --- Endless variety of available telescope mounts.
\item [More] --- Endless variety of available \gls{telescope} mounts.
\end{description}
\end{mdframed}
\index{German \gls{EQ}}\index{fork} %XXX
@ -393,8 +392,8 @@ tracking, but for our uses all three will be included under sidereal tracking.
To use a sidereal tracking mount for imaging satellites, the camera
must ``leap frog'' the satellite.
At present, my practice is to use a sidereal mount, point at a location with \gls{KStars},
start stvid. Then stop stvid, move to new location using \gls{KStars},
start stvid.
start \gls{stvid}. Then stop \gls{stvid}, move to new location using \gls{KStars},
start \gls{stvid}.
\index{track}\index{camera}
See Software section \ref{sec:software-tracking}, \pageref{sec:software-tracking}
@ -410,7 +409,7 @@ It requires, such as:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [Time] --- Accurate time, such as from \gls{GNSS}.
\item [Time] --- Accurate time, such as from \gls{GNSS} or \gls{NTP}.
\item [Location] --- Accurate location, also available from \gls{GNSS}.
\item [\gls{TLE}] --- Need to know the \glspl{satellite}' orbit (accurately!).
\item [Variable speed tracking] --- \Glspl{satellite} are moving at different
@ -432,16 +431,15 @@ speed will be too slow for satellite tracking.
Variable speed tracking (XXX phrase?) is needed for tracking satellites if
the goal is to keep the satellite in the (near) center of the image frame
and leave \glspl{star-trail}. The speed the mount moves needs to be calculated
based upon a recent orbit calcuation, such as from a \gls{TLE}.
based upon a recent \gls{orbit} calcuation, such as from a \gls{TLE}.
There are highly skilled amateur astronomers that have captured detailed
pictures of artificial satellites, such as the \gls{ISS} and astronauts doing
space walks, using hand guided \glspl{telescope} with low cost \gls{CCD} imagers.
% XXX ref
There are few options for satellite tracking mounts.
Some new iOptron telescope mount \gls{firmware} supports tracking
Some new iOptron \gls{telescope mount} \gls{firmware} supports tracking
satellites. This has been largely untested so far, but at present
is likely the best option, if a satellite tracking mount is wanted.
\index{iOptron}\index{track}\index{mount}

View File

@ -11,8 +11,7 @@
\section{Overview of Satellite Identification}
\label{sec:overview-identify}
\index{identify}
\index{identify}\index{locate}
The \gls{LSF} is developing a project called \gls{SIDLOC},
for \gls{satellite} identification and localization. With the
@ -26,7 +25,7 @@ for \gls{SSA}.
The best tool for identifying \glspl{satellite} from \gls{FITS} files
is the \texttt{process.py}
script from \texttt{stvid}, available here:
script from \texttt{\gls{stvid}}, available here:
* \url{https://github.com/cbassa/stvid}
@ -36,8 +35,7 @@ My fork is here:
\section{Identifying Satellites with \texttt{satid}}
\index{identify}
\index{Giza}
\index{identify}\index{Giza}
The deprecated \gls{C} application, \texttt{satid} from the \texttt{\gls{sattools}}
package can help identify \glspl{satellite}.
@ -56,7 +54,6 @@ My fork is here:
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{satid-giza-3.png}
\caption{\texttt{satid} example.}
\label{fig:satid-giza-3}
\end{center}
\end{figure}
@ -65,7 +62,7 @@ My fork is here:
\section{Identification with stvid}
\index{identify}
See section \ref{sec:satellite-detection}, page \pageref{sec:satellite-detection}
for details on identification with stvid.
for details on identification with \gls{stvid}.
The detection and identification steps are both done in one script.
See figure \ref{fig:stvid-process}, page \pageref{fig:stvid-process}
@ -98,7 +95,7 @@ See figure \ref{fig:stvid-unidentified}, page \pageref{fig:stvid-unidentified},
One is on the left, the other two on the right, next to each other.
See figures \ref{fig:stvid-unidentified-90000}, \ref{fig:stvid-unidentified-90001}, and \ref{fig:stvid-unidentified-90002}, pages \pageref{fig:stvid-unidentified-90000}, \pageref{fig:stvid-unidentified-90001}, and \pageref{fig:stvid-unidentified-90002},
to see an example of \texttt{stvid} labelling three identified satellites
to see an example of \texttt{\gls{stvid}} labelling three identified satellites
with \glspl{NORAD-ID} \texttt{90000}, \texttt{90001}, \texttt{90002}.
\begin{sidewaysfigure}[p!]
@ -115,7 +112,6 @@ with \glspl{NORAD-ID} \texttt{90000}, \texttt{90001}, \texttt{90002}.
\index{unidentified}
\end{sidewaysfigure}
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{id-new-sats/2022-08-23T11:18:12.531_90001_unid.png}
\caption{stvid processed image, with three unidentified satellites, the second labeled with NORAD ID \texttt{90001}.}
@ -123,7 +119,6 @@ with \glspl{NORAD-ID} \texttt{90000}, \texttt{90001}, \texttt{90002}.
\index{unidentified}
\end{sidewaysfigure}
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{id-new-sats/2022-08-23T11:18:12.531_90002_unid.png}
\caption{stvid processed image, with three unidentified satellites, the third labeled with NORAD ID \texttt{90002}.}
@ -139,13 +134,13 @@ Airplanes are noise in the data.
Airplanes will appear not infrequently in images.
See figure \ref{fig:stvid-airplane1}, page \pageref{fig:stvid-airplane1}
for an example with an airplane in the left side, forming two parallel
lines from the aircrafts' lights.
trails from the aircrafts' lights.
In figure \ref{fig:stvid-airplane2}, page \pageref{fig:stvid-airplane2},
is shown an example image with an airplane with a very distinct blinking light.
In figure \ref{fig:stvid-airplane3}, page \pageref{fig:stvid-airplane3},
airplane solid parallel lights can be seen with blinking lights.
airplane solid parallel trails can be seen with blinking lights.
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{airplane/2022-08-23T04:17:27.161.fits.png}
@ -208,19 +203,17 @@ where they should.
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{stvid/2022-09-04T03:40:07.923.fits.png}
\caption{\texttt{stvid} processed image, alignment off due to use of old TLE.}
\label{fig:stvid-process-bad-tle}
\end{sidewaysfigure}
\subsection{Image Acquired During Slew}
\index{acquire}
See figured \ref{fig:stvid-process-bad-slew}, page \pageref{fig:stvid-process-bad-slew},
for an example image that is bad due to slewing during acquisition.
for an example image that is bad due to \gls{slew}[ing] during acquisition.
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{stvid/2022-09-04T04\:56\:37.072.fits.png}
\caption{\texttt{stvid} processed image, trails due to slewing during acquire.}
\label{fig:stvid-process-bad-slew}
\end{sidewaysfigure}

View File

@ -12,7 +12,6 @@
The SatNOGS Optical Unofficial Guide documents how to set up and run an
\gls{optical-ground-station} for the \gls{LSF}'s \gls{SatNOGS} network.
% https://network.satnogs.org/
\begin{figure}[h!]
\begin{framed}
@ -20,7 +19,6 @@ The SatNOGS Optical Unofficial Guide documents how to set up and run an
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{satnogs-network-web.png}
\caption{SatNOGS Network.}
\label{fig:satnogs-network-web}
\end{framed}
\end{figure}
@ -32,7 +30,7 @@ A cursory review of \glspl{satellite} and existing \gls{RF} \glspl{ground-statio
will be followed by a big picture view of acquiring and processing
images of \glspl{satellite}. Hardware is reviewed, then software to run
on it, with many options, including what is best. Finally,
what to do with the data (\gls{IDK}!).
what to do with the data.
The chapters that follow are listed below.
@ -40,25 +38,25 @@ The chapters that follow are listed below.
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [\Glspl{satellite}] --- What are we looking at?
\item [Ground Stations] --- How Earth talks to \glspl{satellite} and back.
\item [\Glspl{ground-stations}] --- How Earth talks to \glspl{satellite} and back.
\item [\Gls{toolchain} and Process] --- The big picture of what
hardware and software is needed to set up an optical ground station
hardware and software is needed to set up an \gls{optical-ground-station}
for use on the network.
\item [Hardware] --- Details on appropriate hardware configurations,
and example setups.
\item [Software] --- A look at the myriad software related to \glspl{satellite},
and what works best at present for SatNOGS Optical.
and what works best at present for \gls{SatNOGS Optical}.
\item [Acquire] --- Convert \glspl{photon} to bits. Pointing a camera at the
sky works.\index{camera}
\item [Solve] --- Pictures of stars reveal the time and location of
the photo. Plate solvers reviewed.
the photo. \Glspl{plate-solver} reviewed.
\item [Detect] --- The plate solver says where the photo is,
now detect if are there moving trails that aren't \glspl{star-trail} that could
be \glspl{satellite}.
\item [Identify] --- With time, location, \gls{satellite} detection, \glspl{TLE}
are overlaid and compared with detected \glspl{satellite}.\index{identify}
\Gls{satellite} identification by computers and humans.
\item [Upload] --- When ready, data will be pushed to the SatNOGS network.
\item [Upload] --- When ready, data will be pushed to the \gls{SatNOGS} network.
\item [Support] --- Where development is occurring and questions answered!
\end{description}
\end{mdframed}
@ -68,19 +66,16 @@ The chapters that follow are listed below.
\section{Libre Space Foundation}
The \gls{LSF} supports
``free and accessible space for all, creating \gls{open-source} space technologies.''%
\footnote{\url{https://libre.space}}
\begin{figure}[h!]
\begin{framed}
\centering
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{lsf-web.png}
\caption{Libre Space Foundation Website.}
\label{fig:lsf-web}
\end{framed}
\end{figure}
@ -98,8 +93,7 @@ Select \gls{LSF} projects:
\section{SatNOGS Network}
SatNOGS is the \gls{LSF}'s global network of \gls{satellite} ground stations.
\gls{SatNOGS} is the \gls{LSF}'s global network of \gls{satellite} ground stations.
\begin{figure}[h!]
\begin{framed}
@ -107,15 +101,13 @@ SatNOGS is the \gls{LSF}'s global network of \gls{satellite} ground stations.
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{satnogs-web.png}
\caption{SatNOGS Website.}
\label{fig:satnogs-web}
\end{framed}
\end{figure}
\section{Optical Network Status}
The SatNOGS \gls{RF} network has been running successfully for years.
Adding an optical network is a new development. At present there
The \gls{SatNOGS} \gls{RF} network has been running successfully for years.
Adding a \gls{SatNOGS Optical} network is a new development. At present there
are zero nodes on the network.
Some software already exists,

View File

@ -12,17 +12,16 @@
\label{sec:optical-howto}
\gls{SatNOGS-Optical} is the nascent distributed network of optical
ground stations.
\glspl{ground-station}.
This chapter gives a top level review what is needed in terms of hardware and
software to build an operating optical ground station.
software to build an operating optical \gls{ground-station}.
\index{hardware}\index{software}
\section{Toolchain}
\label{sec:toolchain}
See below for a \gls{SatNOGS-Optical} Process Overview.%
\footnote{\url{https://spacecruft.org/spacecruft/SNOPO}}
See figure \ref{fig:snopo}, page \pageref{fig:snopo}, described below.
@ -40,12 +39,10 @@ See figure \ref{fig:snopo}, page \pageref{fig:snopo}, described below.
\index{hardware}\index{software}\index{acquire}\index{detect}\index{identify}
\index{camera}
\begin{sidewaysfigure}[p!]
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{SNOPO.png}
\caption{SatNOGS Optical Process Overview}
\caption{\gls{SatNOGS Optical} Process Overview}
\label{fig:snopo}
\index{process}
\end{center}
@ -81,13 +78,12 @@ If available, using motion video cameras will work best for
detecting \glspl{satellite} with the developing \gls{SatNOGS} \gls{toolchain}.
Examples of motion video camera sources that could be used:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [The Imaging Source Cameras based on IMX174] --- Known to work. Recommended.
High quality cameras, believed to be usable following \gls{DFSG}.
\item [ZWO ASI based on IMX174] --- Known to work. Not \gls{DFSG} compatible.
Uses proprietary \gls{SDK}. Currently in prototype development.
Uses proprietary \gls{SDK}. Currently in prototype development. \index{proprietary}
\item [\gls{UVC}/\gls{V4L2}] --- ``Any'' video camera that works with the \gls{Linux} kernel.
Typically, the device will appear similar to \texttt{/dev/video0}. A camera
that works with the software isn't necessarily sensitive enough to detect
@ -96,23 +92,21 @@ Examples of motion video camera sources that could be used:
To work well, they need to be sensitive.
\item [\gls{Raspberry-Pi}] --- The PiCamera can be used. A good lower cost option.
Recommended. Many non-\gls{Raspberry-Pi} devices, such as Odroid are also compatible with the Pi
\gls{MIPI} interface.
\gls{MIPI} interface.\index{PiCamera}\index{Odroid}
\end{description}
\end{mdframed}
\index{The Imaging Source}\index{ZWO ASI}
\index{Odroid}
Still cameras can also be used productively. The current \gls{Python} \gls{toolchain}
is in very early development and not completely usable yet.
See the list below for still camera options:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [\Glspl{telescope}] --- Can definitely take images of \glspl{satellite}.
Not the best tool at present, as it isn't well integrated into the \gls{SatNOGS-Optical} toolchain.
The \gls{FOV} is generally too small. The mounts are optimized for
The \gls{FoV} is generally too small. The mounts are optimized for
different types of tracking than satellites. This is changing, and longer
term could be well-supported. Using \gls{RASA} style \glspl{astrograph}
is likely the best option.
@ -131,10 +125,7 @@ See the list below for still camera options:
used with \gls{gPhoto}.
\end{description}
\end{mdframed}
\index{Ekos}\index{track}\index{mount}
\index{Canon}\index{Nikon}
\index{Ekos}\index{track}\index{mount}\index{Canon}\index{Nikon}
Considering the hardware options above, they need to be matched with
corresponding software. Not all options work (at all), and some cannot be
@ -166,7 +157,7 @@ There are also broader ``paths'' that need to be considered:
the basis for future \gls{SatNOGS-Optical} development.
The difficulty with all sky cameras is the \gls{plate-solver} isn't
written to use images from the ``fish-eye'' view of an all sky camera.
\item [Other] --- There are many other satellite and telescope software
\item [Other] --- There are many other satellite and \gls{telescope} software
packges freely available on the Internet. Perhaps some could be adapted for
usage.
\end{description}
@ -174,4 +165,3 @@ There are also broader ``paths'' that need to be considered:
\index{motion video}
\index{still camera}\index{allsky}\index{stphot}\index{allsky}

View File

@ -19,10 +19,9 @@ antention to ones using \gls{amateur-radio} bands.
\section{SatNOGS DB}
\label{sec:satnogs-db}
The SatNOGS \gls{DB} is a database that lists \glspl{satellite},
many of which can be tracked by ground station operators on the
The \gls{SatNOGS DB} is a database that lists \glspl{satellite},
many of which can be tracked by \gls{ground-station} operators on the
\gls{SatNOGS} network.
\index{SatNOGS DB}
\begin{figure}[h!]
\begin{framed}
@ -103,9 +102,9 @@ for a example list of observations of the RamSat \Gls{cubesat}.%
\end{framed}
\end{figure}
Individual \gls{RF} observations are uploaded to the SatNOGS network,
as can be seen in the example observation of the RamSat \gls{cubesat} by SatNOGS
ground station ``2380 - Piszkesteto \gls{UHF}'' run by volunteer bcsak (username).
Individual \gls{RF} observations are uploaded to the \gls{SatNOGS} network,
as can be seen in the example observation of the RamSat \gls{cubesat} by \gls{SatNOGS}
\gls{ground-station} ``2380 - Piszkesteto \gls{UHF}'' run by volunteer bcsak (username).
\index{RamSat}\index{bcsak}
\begin{sidewaysfigure}[p!]
@ -120,7 +119,6 @@ ground station ``2380 - Piszkesteto \gls{UHF}'' run by volunteer bcsak (username
\section{Satellite Orbits}
\label{sec:satellite-orbits}
Satellite \glspl{orbit}.
See \gls{SGP} and \gls{SDP}.

View File

@ -26,7 +26,7 @@ for a diagram with an overview of the software process.
back arrow distance=0.75,
}
\smartdiagram[flow diagram:horizontal]{Acquire, Process, Analyze, Upload}
\caption{SatNOGS Optical Operation Pipeline}
\caption{\gls{SatNOGS Optical} Operation Pipeline}
\label{fig:operation}
\index{operation}
% \end{framed}
@ -38,7 +38,7 @@ for a diagram with an overview of the software process.
\label{sec:software-setup}
\index{software}
HOWTO set up and configure a \gls{SatNOGS-Optical} \gls{ground-station} prototype.
Note: the SatNOGS network is not yet ready for optical data.
Note: the \gls{SatNOGS} network is not yet ready for optical data.
For a description of installation using \gls{Docker}, see
section \ref{sec:software-docker}, page \pageref{sec:software-docker}.
@ -62,19 +62,17 @@ sudo apt install python3-virtualenv python3-pip python3-dev \
astrometry-data-tycho2-08 astrometry-data-tycho2-09 \
astrometry-data-tycho2-10-19
\end{minted}
\index{virtualenv}
\index{virtualenv}\index{PIP}
\index{Giza}\index{Source Extractor}
Next, install the \texttt{\gls{hough3d-code}} dependency.
\begin{minted}{sh}
git clone https://gitlab.com/pierros/hough3d-code
cd hough3d-code
make all
sudo cp -p hough3dlines /usr/local/bin/hough3dlines
\end{minted}
\index{hough3dlines}
Install \texttt{\gls{satpredict}} from using either the cbassa or spacecruft
\gls{software-repository}.
@ -90,7 +88,7 @@ make
sudo make install
\end{minted}
Now install \texttt{stvid}, the main acquisition and processing
Now install \texttt{\gls{stvid}}, the main acquisition and processing
application. It is written in \gls{Python}. Either use the spacecruft
\texttt{git} \gls{software-repository} or the cbassa one.
\index{acquire}
@ -170,7 +168,7 @@ st-password = bar
# Path to source-extractor
sex_config = /usr/share/source-extractor/default.sex
\end{minted}
\index{Source Extractor}\index{COSPAR}
\index{Source Extractor}\index{COSPAR}\index{TLE}
Store downloads here:
@ -189,24 +187,22 @@ export ST_OBSDIR=$HOME/satobs
export ST_LOGIN="identity=foo@no:pass"
\end{minted}
Set \texttt{astrometry.net} to run in parallel, assuming you have enough \gls{RAM}:
(This doesn't appear to work? Breaks?).
\begin{minted}{sh}
sudo vim /etc/astrometry.cfg
# Uncomment:
inparallel
\end{minted}
\index{astrometry.net}
\section{skymap}
\label{sec:skymap}
Use \gls{skymap} for viewing \gls{satellite} \glspl{orbit} trails
projected on a map of of the sky. Skymap is part of \gls{sattools}.
projected on a map of of the sky. \Gls{skymap} is part of \gls{sattools}.
\Gls{skymap} isn't a required part of the \gls{toolchain}, but it is useful
to see what \glspl{satellite} are visible at a particular time and
location.
@ -223,8 +219,7 @@ My fork:
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{skymap-giza-21.png}
\caption{\texttt{skymap} example screenshot.}
\label{fig:skymap-giza-21}
\label{fig:skymap-giza-21}
\end{center}
\end{sidewaysfigure}
@ -236,7 +231,6 @@ My fork:
}
}
Described below is how to build and install my fork of \gls{sattools} to use
\gls{skymap} instead of upstream. \Gls{upstream} requires non-\gls{libre} software which
also happens to be very difficult for most users to compile. My fork uses the
@ -310,7 +304,6 @@ Visualize satellites on a map of the sky.
\end{minted}
\section{Tracking Software}
\label{sec:software-tracking}
\index{track}\index{software}\index{mount}
@ -354,7 +347,7 @@ Software that can be used with \gls{telescope} tracking mounts:
Using \gls{INDI} with \gls{KStars} and Ekos on a Sky-Watcher or \gls{Celestron}
\gls{telescope} mount is a known working solution.
\index{Sky-Watcher}
\index{Sky-Watcher}\index{Ekos}
\subsection{Antenna Tracking Software}
@ -396,7 +389,6 @@ at present.
\label{sec:software-gnss}
\index{Galileo}
\gls{GNSS} is used for time synchronization and for (somewhat)
accurately determining the location of the observation.
@ -415,12 +407,10 @@ purposes here. See various U-Blox devices, for example.
In \gls{Debian} \gls{GNSS} service with a \gls{USB} device can be provided
by the \texttt{\gls{gpsd}} application.
\begin{minted}{sh}
sudo apt install gpsd gpsd-tools
\end{minted}
Edit the configuration file, \texttt{/etc/default/gpsd} like:
\begin{minted}{sh}
@ -452,7 +442,6 @@ systemctl edit --full gpsd.socket
And create a \gls{gpsd} configuration like this (I have \gls{IPv6} disabled, in this case):
\begin{minted}{sh}
[Unit]
Description=GPS (Global Positioning System) Daemon Sockets
@ -533,7 +522,6 @@ In \gls{Debian} there are a few options for \gls{NTP}.
The best is to use a hardware \gls{GNSS} (\gls{GPS}), with \gls{PPS} for improved
accuracy. The easiest is to just use \gls{NTP}.
All systems in the \gls{pipeline} need to have the correct time and
location. It is best if they all pull from the same \gls{NTP}
server, or even better than best if they all run \gls{GNSS}
@ -618,7 +606,6 @@ To use a \gls{telescope} tracking mount for use with \texttt{stvid}, the followi
roughly this order, assuming everything has been configured.
An overview of steps:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{enumerate}
\item Physically mount all hardware.
@ -628,7 +615,8 @@ An overview of steps:
See section \ref{sec:software-gnss}, page \pageref{sec:software-gnss}.
\item Confirm time is correct on all systems in the \gls{toolchain}
(e.g. \texttt{date}).
See section \ref{sec:software-ntp}, page \pageref{sec:software-ntp}.
See section \ref{sec:software-ntp}, page \pageref{sec:software-ntp},
for information about \gls{NTP}.
\item Run camera configuration script (e.g. \texttt{v4l2-ctl} commands).
\item Start \texttt{indiserver} on the \gls{embedded-system}, using scripts to
include a camera (such as \texttt{indi\_v4l2\_ccd}.
@ -645,12 +633,12 @@ An overview of steps:
resets the size.
\item Hit close on the screen with the \gls{INDI} devices.
\item Click the mount icon, and start tracking.
\item Perhaps do some focusing... XXX
\item Perhaps do some focusing... XXX \index{focus}
\item Click the solver icon.
\item Click the Sync radio button.
\item Click Capture and Solve. XXX what is it.
\item If everything is tracking happily, good.
\item If not, do all the alignment steps.
\item If not, do all the alignment steps. \index{alignment}
\item When alignment is good and tracking is accurate, stop Ekos and close it.
\item Stop the \texttt{indiserver} running on the \gls{embedded-system}.
\item Start the \texttt{indiserver} on the \gls{embedded-system},
@ -661,12 +649,12 @@ An overview of steps:
\item Confirm all is ok in hardware tabs, then hit close.
\item Now in the \gls{KStars} \gls{sky-chart} window there is
control of the mount without interfering with the camera.
\item Start \texttt{stvid}. See XXX for more info.
\item When done capturing that part of the sky with \texttt{stvid},
stop \texttt{stvid}
\item Start \texttt{\gls{stvid}}. See XXX for more info.
\item When done capturing that part of the sky with \texttt{\gls{stvid}},
stop \texttt{\gls{stvid}}
\item Go to the \gls{KStars} \gls{sky-chart} and right-click
on the new location, and \gls{slew} to it.
\item Start \texttt{stvid} again, pointing at the new location.
\item Start \texttt{\gls{stvid}} again, pointing at the new location.
\item Repeat the last few steps each time a new sky location is desired.
\end{enumerate}
\end{mdframed}
@ -674,12 +662,10 @@ An overview of steps:
\index{lsusb}\index{cgps}\index{indiserver}
\index{Ekos}\index{Sky-Watcher}\index{The Imaging Source}
\begin{sidewaysfigure}[p!]
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{kstars-skychart.png}
\caption{KStars sky chart, example screenshot.}
\caption{\gls{KStars} \gls{sky chart}, example screenshot.}
\label{fig:kstars-skychart}
\end{center}
\end{sidewaysfigure}
@ -687,8 +673,7 @@ An overview of steps:
\begin{sidewaysfigure}[p!]
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{kstars-profile-edit-v4l2.png}
\caption{KStars using V4L2, example screenshot.}
\caption{\gls{KStars} using \gls{V4L2}, example screenshot.}
\label{fig:kstars-profile-edit-v4l2}
\end{center}
\end{sidewaysfigure}
@ -696,8 +681,7 @@ An overview of steps:
\begin{sidewaysfigure}[p!]
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{kstars-profile-edit-simulator.png}
\caption{KStars using simulated CCD, example screenshot.}
\caption{\gls{KStars} using simulated \gls{CCD}, example screenshot.}
\label{fig:kstars-profile-edit-simulator}
\end{center}
\end{sidewaysfigure}
@ -715,7 +699,7 @@ Bus 001 Device 003: ID 067b:23d3 Prolific Technology, Inc. USB-Serial Controller
Bus 001 Device 002: ID 05e3:0610 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
\end{minted}
\index{The Imaging Source}
\index{The Imaging Source}\index{Sky-Watcher}
Note the \texttt{The Imaging Source Europe GmbH DMK 33UX174} device is the
camera and the

View File

@ -12,16 +12,14 @@
\section{Plate Solver}
\label{sec:plate-solver}
A ``\gls{plate-solver}'' will take an image of stars and detect the time and place
of the picture. There are two main steps:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{enumerate}
\item Extract stars from an image, such as a \gls{FITS} file generated by \texttt{stvid}.
\item Extract stars from an image, such as a \gls{FITS} file generated by \texttt{\gls{stvid}}.
\item ``Solve'' the image of the stars in the image against vast databases in a
\gls{star-catalogue}.
\end{enumerate}
\end{mdframed}
@ -48,7 +46,7 @@ See below for a list of \glspl{plate-solver} that can be used.
\item Watney.
\end{itemize}
\end{mdframed}
\index{astap}\index{Watney}
\index{astap}\index{Watney}\index{astrometry.net}
\section{Source Extractor}
@ -66,7 +64,7 @@ widely used for many years.
Astrometry.net is a website and software that can be run locally to solve
a plate of stars that has been extracted from \texttt{Source Extractor}. XXX
\index{Source Extractor}
\index{Source Extractor}\index{astrometry.net}
% https://nova.astrometry.net/
\begin{figure}[h!]
@ -75,24 +73,21 @@ a plate of stars that has been extracted from \texttt{Source Extractor}. XXX
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{astrometry-web.png}
\caption{nova.astrometry.net website.}
\label{fig:astrometry-web-web}
\end{framed}
\end{figure}
\fbox{
\parbox{\linewidth}{
\textcolor{red}{NOTICE:} \\
Using astrometry.net online requires an account with non-\gls{libre} services.
The astrometry.net software can be installed locally to avoid this.
\index{proprietary}
\index{proprietary}\index{astrometry.net}
}
}
\section{Star Catalogues}
\label{sec:star-catalogues}
To use a \gls{plate-solver}, you will need \glspl{star-catalogue}. They can get large.
The \texttt{stvid} application includes a basic \gls{star-catalogue}.
XXX The \texttt{4200} index series is also recommended.
@ -100,15 +95,11 @@ XXX The \texttt{4200} index series is also recommended.
\section{World Coordinate System}
\label{sec:wcs}
\gls{WCS} info. XXX
\section{SIP}
\label{sec:sip}
\gls{SIP} info. XXX
@ -118,5 +109,5 @@ XXX The \texttt{4200} index series is also recommended.
Use the \texttt{process.py} scripts described in section \ref{sec:plate-solver},
page \pageref{sec:plate-solver}, to solve plates
with \texttt{stvid}.
with \texttt{\gls{stvid}}.

View File

@ -11,9 +11,7 @@
\section{Support}
\label{sec:support}
\index{community}
\index{support}
\index{forum}
\index{community}\index{support}\index{forum}\index{help}
\setlength{\parindent}{0pt}
How to get help.

View File

@ -24,17 +24,16 @@ The following file extensions are in use:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [.cal] --- Cal % XXX
\item [.cat] --- Cat % XXX
\item [.cal] --- Cal % XXX \index{.cal}
\item [.cat] --- Cat % XXX \index{.cat}
\item [.csv] --- \gls{CSV}
\item [.dat] --- Data.
\item [.dat] --- Data. \index{.dat}
\item [.fits] --- \gls{FITS}.
\item [.png] --- \gls{PNG}.
\end{description}
\end{mdframed}
\section{Data Files}
\label{sec:upload-data}
\index{data}\index{process}\index{acquire}
@ -68,13 +67,13 @@ on sample rate, frame size, and \gls{binning}.
\index{acquire}\index{process}
\index{frame size}\index{sample rate}
The \texttt{stvid} program creates it's customized \gls{FITS} format
The \texttt{\gls{stvid}} program creates it's customized \gls{FITS} format
file, which is a stack up of multiple images.
I'll leave explanation of the \texttt{stvid} \gls{FITS} file structure
I'll leave explanation of the \texttt{\gls{stvid}} \gls{FITS} file structure
to the program's author, Cees Bassa:
\begin{quote}
With stvid, I typically store 10 seconds worth of video frames, 100 frames at 10 \gls{Hz} frame rate or 250 frames at 25 \gls{Hz} frame rate into a so-called ``four frame''. Here, for each pixel of the initial 100 or 250 frames, the mean, standard deviation, maximum and argmax are stored, each as its own frame. Objects that move will stand out because they will have a high (max - mean) / standard deviation, which allows me to detect trails. Once a trail is detected, the argmax frame tells me the frame number and hence the motion of the trail, and using the timestamps of the individual 100 or 250 frames, I can reconstruct the pixel position as a function of time during the 10 second exposure, using only 4 frames instead of the 100 or 250 individual video frames.
With \gls{stvid}, I typically store 10 seconds worth of video frames, 100 frames at 10 \gls{Hz} frame rate or 250 frames at 25 \gls{Hz} frame rate into a so-called ``four frame''. Here, for each pixel of the initial 100 or 250 frames, the mean, standard deviation, maximum and argmax are stored, each as its own frame. Objects that move will stand out because they will have a high (max - mean) / standard deviation, which allows me to detect trails. Once a trail is detected, the argmax frame tells me the frame number and hence the motion of the trail, and using the timestamps of the individual 100 or 250 frames, I can reconstruct the pixel position as a function of time during the 10 second exposure, using only 4 frames instead of the 100 or 250 individual video frames.
\end{quote}
\index{Bassa, Cees}\index{four frame}
\index{.fits}
@ -104,7 +103,7 @@ Sample data from \texttt{.cal} file, just the top select lines of a 577 line fil
\subsection{\texttt{.cat} CAT Files}
\index{.cat}
\texttt{stvid} generates \texttt{.cat} files, generated from \gls{FITS} files, such as:\\
\texttt{\gls{stvid}} generates \texttt{.cat} files, generated from \gls{FITS} files, such as:\\
\texttt{2022-08-23T04:16:26.633.fits.cat} \\
Sample data from \texttt{.cat} file, just the top select lines of a 1,033 line file:
@ -134,7 +133,7 @@ Sample data from \texttt{.cat} file, just the top select lines of a 1,033 line f
\subsection{\texttt{.fits.png} FITS PNG Files}
\index{.fits.png}
The \texttt{stvid} application can generate multiple \gls{PNG} files,
The \texttt{\gls{stvid}} application can generate multiple \gls{PNG} files,
depending how many satellites it finds. In every case it creates at
least one \gls{PNG} file, with a name like:
@ -145,7 +144,7 @@ no detected satellites are indicated.
The blue lines are from the ``Catalog'', which in this case means \glspl{TLE}.
The blue lines are drawn whether no, a few, or many satellites are detected.
They are generated by taking data from the \gls{plate-solver} about where the picture
\gls{FOV} is, and overlaying satellite \glspl{orbit} that are calculated from
\gls{FoV} is, and overlaying satellite \glspl{orbit} that are calculated from
\glspl{TLE}.
\index{detect}
@ -159,9 +158,8 @@ If it is unknown, it will be given the number \texttt{90000} or larger.
\begin{figure}[h!]
\begin{center}
\includegraphics[keepaspectratio=true,height=0.85\textheight,width=0.85\textwidth,angle=0]{stvid/data/2022-08-23T04:16:26.633.fits.png}
\caption{\texttt{stvid} PNG.}
\caption{\texttt{\gls{stvid}} PNG.}
\label{fig:stvid-png}
\end{center}
\end{figure}
\index{.fits.png}
@ -170,7 +168,7 @@ If it is unknown, it will be given the number \texttt{90000} or larger.
\subsection{\texttt{catalog.png} catalog PNG Files}
\index{detect}\index{identify}
When \texttt{stvid} identifies a satellite, it creates a new \gls{PNG} file for each
When \texttt{\gls{stvid}} identifies a satellite, it creates a new \gls{PNG} file for each
satellite detected in the image. A file name example follows, with satellite
\gls{NORAD-ID} 48473 identified, also shown in figure
\ref{fig:stvid-png-48473-catalog}, page \pageref{fig:stvid-png-48473-catalog}.
@ -180,9 +178,8 @@ satellite detected in the image. A file name example follows, with satellite
\begin{figure}[h!]
\begin{center}
\includegraphics[keepaspectratio=true,height=0.85\textheight,width=0.85\textwidth,angle=0]{stvid/data/2022-08-23T04:16:26.633_48473_catalog.png}
\caption{\texttt{stvid} PNG of the satellite trail of NORAD ID 48473 identified in red.}
\caption{\texttt{\gls{stvid}} \gls{PNG} of the satellite trail of \gls{NORAD-ID} 48473 identified in red.}
\label{fig:stvid-png-48473-catalog}
\end{center}
\end{figure}
\index{identify}
@ -196,7 +193,7 @@ The file name is:
\begin{figure}[h!]
\begin{center}
\includegraphics[keepaspectratio=true,height=0.85\textheight,width=0.85\textwidth,angle=0]{stvid/data/2022-08-23T04:16:26.633_52718_catalog.png}
\caption{\texttt{stvid} PNG of the satellite trail of NORAD ID 52718 identified in red.}
\caption{\texttt{\gls{stvid}} \gls{PNG} of the satellite trail of \gls{NORAD-ID} 52718 identified in red.}
\label{fig:stvid-png-52718-catalog}
\index{identify}
\end{center}
@ -206,32 +203,31 @@ The file name is:
\subsection{\texttt{unid.png} Unidentified PNG Files}
\index{unidentified}
As shown previously, \texttt{stvid} will create a new \gls{PNG} with a
As shown previously, \texttt{\gls{stvid}} will create a new \gls{PNG} with a
red line when it identifies a satellite.
When \texttt{stvid} finds a trail it can't identify in the
When \texttt{\gls{stvid}} finds a trail it can't identify in the
\gls{TLE} catalogs, it gives it a \gls{NORAD-ID} starting with \texttt{90000},
incrementing by one.
See figure \ref{fig:stvid-png-90000-unid}, page \pageref{fig:stvid-png-90000-unid},
for an example of \texttt{stvid} marking an unidentified trail red.
In this case, the trail was created by an airplane, but \texttt{stvid} would
for an example of \texttt{\gls{stvid}} marking an unidentified trail red.
In this case, the trail was created by an airplane, but \texttt{\gls{stvid}} would
do the same with an unidentified satellite trail.
\index{airplane}
\index{airplane}\index{unidentified}
\begin{figure}[h!]
\begin{center}
\includegraphics[keepaspectratio=true,height=0.85\textheight,width=0.85\textwidth,angle=0]{stvid/data/2022-08-23T04:16:26.633_90000_unid.png}
\caption{\texttt{stvid} PNG of an unidentified trail in red.}
\caption{\texttt{\gls{stvid}} \gls{PNG} of an unidentified trail in red.}
\label{fig:stvid-png-90000-unid}
\end{center}
\end{figure}
\end{figure}\index{unidentified}
\subsection{\texttt{.dat} Data Files}
\index{.dat}
For each trail detected as shown in previous sections, such as for which
a \gls{PNG} file was created,
\texttt{stvid} will output a \texttt{.dat} file. The \texttt{.dat} filenames
\texttt{\gls{stvid}} will output a \texttt{.dat} file. The \texttt{.dat} filenames
corresponding to the figures at \ref{fig:stvid-png-48473-catalog}, \ref{fig:stvid-png-52718-catalog},
and \ref{fig:stvid-png-90000-unid} are:
@ -254,6 +250,7 @@ The \texttt{.dat} file contents look like this, for \gls{NORAD-ID} 48473:
XXX This is the IOD ? XXX
The first field is the \gls{NORAD-ID}. The fourth field looks like COSPAR. XXX
Large number starting with 2022 is date and time stamp.
\index{IOD}\index{COSPAR}
The \texttt{.dat} file contents look like this, for \gls{NORAD-ID} 52718:
\index{.dat}
@ -273,7 +270,7 @@ The \texttt{.dat} file contents look like this, for the unidentified trail
\subsection{\texttt{stvid} \texttt{.csv} Files}
\index{.csv}\index{hough}\index{predict}\index{threshold}
During processing, \texttt{stvid} generates (at least!) three \gls{CSV} files.
During processing, \texttt{\gls{stvid}} generates (at least!) three \gls{CSV} files.
For the observation discussed above, staring with figure \ref{fig:stvid-png},
the following \gls{CSV} files are generated:
@ -295,6 +292,7 @@ ax,ay,az,bx,by,bz,n
1297.660777,432.469965,52.989399,0.923059,0.193205,0.332617,283
\end{minted}
\subsubsection{\texttt{stvid} \texttt{predict.csv} Files}
\index{.csv}\index{predict}
The \texttt{2022-08-23T04:16:26.633\_predict.csv} is 3,764 lines long.
@ -326,7 +324,7 @@ satno,cospar,mjd,ra,dec,state,tlefile,age
\subsubsection{\texttt{stvid} \texttt{threshold.csv} Files}
\index{.csv}\index{threshold}
\texttt{stvid} creates a \texttt{threshold.csv} file with a filename like:
\texttt{\gls{stvid}} creates a \texttt{threshold.csv} file with a filename like:
\texttt{2022-08-23T04:16:26.633\_threshold.csv}