Compare commits

...

85 Commits
0.6 ... main

Author SHA1 Message Date
Jeff Moe 6f52839f76 Pics of SBCs 2022-10-13 15:07:08 -06:00
Jeff Moe 5e9822fd33 s/glsfmtshort/gls to fix broken captions 2022-09-16 22:50:58 -06:00
Jeff Moe f020189ac0 USSPACECOM to abbr. hmm. 2022-09-16 19:30:34 -06:00
Jeff Moe 9c81be5aa9 mv *hertz to abbr 2022-09-16 18:30:52 -06:00
Jeff Moe c86c69c836 Caps for acronyms 2022-09-16 18:24:25 -06:00
Jeff Moe 9364e248f8 Move acronyms to front matter 2022-09-16 18:12:37 -06:00
Jeff Moe 0fb96eb161 Two columns for Abbr/Acronyms 2022-09-16 16:43:55 -06:00
Jeff Moe c986ec5188 Volt abbr 2022-09-16 16:13:38 -06:00
Jeff Moe fa45b8ce68 Convert Abbr/acronyms to dual 2022-09-16 16:01:41 -06:00
Jeff Moe 1d600b14ad Convert glossaries ala Vel 2022-09-16 16:00:12 -06:00
Jeff Moe b01e1084a7 Hamlib telescope mounts 2022-09-15 20:07:04 -06:00
Jeff Moe 96bf85ce8e Add LinBiolinum_RI 2022-09-15 19:48:56 -06:00
Jeff Moe adbedcdc12 Add LinBiolinum_RB 2022-09-15 19:47:55 -06:00
Jeff Moe ea80ba9fde Add LinBiolinum_R 2022-09-15 19:46:33 -06:00
Jeff Moe d312121b7f Add LinLibertine_RI 2022-09-15 19:42:10 -06:00
Jeff Moe 72db58a78e Use Volt short form 2022-09-15 19:32:52 -06:00
Jeff Moe 21d7d189c3 Use glsfmtshort for captions 2022-09-15 19:27:29 -06:00
Jeff Moe a12d76572f Notes on tracking mounts 2022-09-15 16:52:40 -06:00
Jeff Moe ff17b6992a Add fonts directory 2022-09-09 20:44:06 -06:00
Jeff Moe f67f632bd9 FoV artifact PNG. Cleanups etc. 2022-09-09 15:13:34 -06:00
Jeff Moe 406894465c Pierros FITS. ntpdate -b, glossary, etc. 2022-09-07 16:08:52 -06:00
Jeff Moe 774bc58ef5 typo fixo 2022-09-06 16:57:47 -06:00
Jeff Moe 4ba3924b4a glossary/index fixes 2022-09-06 14:30:46 -06:00
Jeff Moe 16bbb5521e indexing, glossary words, misc 2022-09-06 14:09:43 -06:00
Jeff Moe 26f56dfa3a sm fixes 2022-09-06 13:06:35 -06:00
Jeff Moe 28bedaad4a altazimuth mount to glossary 2022-09-06 04:47:28 -06:00
Jeff Moe 9997a8c706 Clean up index 2022-09-06 04:34:24 -06:00
Jeff Moe 8021c5d4ef rm space 2022-09-06 04:05:06 -06:00
Jeff Moe da7dcec037 Acronym show long/short 2022-09-06 03:57:45 -06:00
Jeff Moe 13f48d8610 Index with acronyms, long short, etc 2022-09-06 03:27:40 -06:00
Jeff Moe 7f89611d18 Index with meh (ACRONYM), but empty () too 2022-09-06 02:16:38 -06:00
Jeff Moe f673ef4510 Add longs to glossary 2022-09-06 01:51:27 -06:00
Jeff Moe 1104915af6 include desc and long in acronym 2022-09-06 01:20:15 -06:00
Jeff Moe 1a9108552d rm more duplicates. Index sort on visible word 2022-09-06 00:34:42 -06:00
Jeff Moe e3e9647533 Dont list page numbers in glossary/acronym 2022-09-06 00:27:19 -06:00
Jeff Moe fb949b901a Glossary without letter headings 2022-09-06 00:23:47 -06:00
Jeff Moe c3e9a5e07f rm duplicate index/glossary entries 2022-09-06 00:16:31 -06:00
Jeff Moe 5f211905e2 Fix glossary words with spaces in name 2022-09-05 23:48:35 -06:00
Jeff Moe f095b0ba15 Convert Glossary/Acronyms to bib2gls etc..... 2022-09-05 23:12:55 -06:00
Jeff Moe abebf3448d Docker. sm fixes 2022-09-05 11:50:28 -06:00
Jeff Moe f073313088 Some tracks are trails. Dab Upload 2022-09-04 18:23:21 -06:00
Jeff Moe 345549ae99 binning 2022-09-04 17:53:52 -06:00
Jeff Moe e279e3b736 Docker section, glossary, link 2022-09-04 17:45:02 -06:00
Jeff Moe 33b3fb3af6 sm fixes 2022-09-04 17:18:37 -06:00
Jeff Moe 3d0c8e51c0 IP, clarify, longplural 2022-09-04 17:08:45 -06:00
Jeff Moe cad1e7376c threshold.csv 2022-09-04 16:42:14 -06:00
Jeff Moe f6c2698b69 hough.csv, predict.csv 2022-09-04 16:35:35 -06:00
Jeff Moe d30f2159ac Formatting of stvid output 2022-09-04 16:19:57 -06:00
Jeff Moe 01e8453001 stvid csv files 2022-09-04 15:58:37 -06:00
Jeff Moe bc681e53a1 stvid .dat file exampless 2022-09-04 15:52:38 -06:00
Jeff Moe a02e82462a stvid tracks on PNGs 2022-09-04 15:27:51 -06:00
Jeff Moe 63d345bc56 Add stvid identification example PNG 2022-09-04 14:57:09 -06:00
Jeff Moe 07e21e78da .fits.png example 2022-09-04 14:38:41 -06:00
Jeff Moe 104c5ee522 make cover 2022-09-04 14:00:48 -06:00
Jeff Moe 735ce59c91 Example .cal file in repo.... 2022-09-04 13:59:45 -06:00
Jeff Moe c60dbb4e10 Sample .cal data 2022-09-04 13:36:49 -06:00
Jeff Moe 4cfc3cd077 fix dab breakage 2022-09-04 13:29:21 -06:00
Jeff Moe b56eb9201f Sample .cat file 2022-09-04 13:25:38 -06:00
Jeff Moe a80fac60d2 File extensions, FITS 2022-09-04 13:19:10 -06:00
Jeff Moe a0610a7f7b Ignore FITS files 2022-09-04 12:33:15 -06:00
Jeff Moe 203eb67768 Generate cover in make all 2022-09-04 12:14:00 -06:00
Jeff Moe e952dd5066 Better cover, still needs sizing 2022-09-04 11:52:40 -06:00
Jeff Moe ceff4ae044 Add make cover 2022-09-04 11:16:10 -06:00
Jeff Moe c763f8dfaa Add draft cover generator 2022-09-04 11:11:00 -06:00
Jeff Moe a4461224f8 stvid image with acquire slew error img 2022-09-03 23:31:01 -06:00
Jeff Moe f71fb80970 stvid image with acquire slew error 2022-09-03 23:29:43 -06:00
Jeff Moe 0a9bcbc967 stvid image processed with old TLE example 2022-09-03 22:33:14 -06:00
Jeff Moe ee8c3da620 stvid image from misconfigured system 2022-09-03 21:51:53 -06:00
Jeff Moe 2be5511718 New example identify image 2022-09-03 21:36:01 -06:00
Jeff Moe 73d01c3f8a Add example unidentified satellites to doc 2022-09-03 21:16:01 -06:00
Jeff Moe c2bb6048d4 Add unidentified satellite figures 2022-09-03 21:06:05 -06:00
Jeff Moe d28748d5ec Add stvid images with airplanes (noise) 2022-09-03 20:43:50 -06:00
Jeff Moe d524f0e245 dab index words. Glossary 2022-09-03 20:15:26 -06:00
Jeff Moe 4c8f55743e Ignore tmp/ dir 2022-09-03 15:23:57 -06:00
Jeff Moe 810ec31e4e rm ) 2022-09-03 12:07:59 -06:00
Jeff Moe 9c7e80b45f Move process_new output to subsection 2022-09-03 11:52:05 -06:00
Jeff Moe c9e58709db acronym, glossary, cleanup 2022-09-02 23:32:27 -06:00
Jeff Moe 9882b5c42f small fixes 2022-09-02 22:03:19 -06:00
Jeff Moe a95fb9289e glossary/index cleanups 2022-09-02 21:48:39 -06:00
Jeff Moe bf55e3c926 glossary/index cleanups 2022-09-02 21:42:16 -06:00
Jeff Moe c01f43f4ea small cleanups 2022-09-02 19:35:29 -06:00
Jeff Moe 305e8b80e6 Dab glossary words. Add to glossary, acronyms 2022-09-02 18:54:28 -06:00
Jeff Moe 26b0ee22a1 Add many Glossary words, acronyms 2022-09-02 17:07:26 -06:00
Jeff Moe afb4ec1004 Dab acronyms 2022-09-02 15:10:58 -06:00
Jeff Moe db6abff149 Add acronyms 2022-09-02 14:26:53 -06:00
71 changed files with 13346 additions and 883 deletions

9
.gitignore vendored
View File

@ -1,18 +1,27 @@
Cover.pdf
SNOUG.pdf
SNOUG-web.pdf
tmp/
*~
.~lock.*.ods#
.fuse_hidden*
_minted-*
*.acn
*.acr
*.alg
*.aux
*.bak
*.bak0
*.bbl
*.bcf
*.blg
*.fits
*.glg
*.glg-abr
*.glo
*.glo-abr
*.gls
*.gls-abr
*.glstex
*.idx
*.ilg

View File

@ -41,6 +41,12 @@ Run the build script to make a PDF:
make
```
To just make a cover:
```
make cover
```
To clean:
```

View File

@ -7,6 +7,10 @@ all:
# ps2pdf breaks ToC and other internal links
# ps2pdf SNOUG.pdf SNOUG-web.pdf
cover:
$(MAKE) -C src cover
mv src/Cover.pdf .
clean:
rm -f *.pdf
$(MAKE) clean -C src

View File

@ -7,6 +7,5 @@
* See also for acronyms, index, glossary.
* Separate list of acronyms.
* Using ps2pdf to resize PDF for web breaks internal links.
* Some missing italics.
* Content.
* Tracking.
* ntpdate -b 192.168.1.1

View File

@ -0,0 +1,43 @@
% Encoding: UTF-8
@dualabbreviation{V,
description = {Volt.},
short = {V},
long = {Volt}
}
@dualabbreviation{Hz,
description = {hertz.},
short = {Hz},
long = {hertz}
}
@dualabbreviation{kHz,
description = {kilohertz.},
short = {kHz},
long = {kilohertz}
}
@dualabbreviation{MHz,
description = {megahertz.},
short = {MHz},
long = {megahertz}
}
@dualabbreviation{GHz,
description = {gigahertz.},
short = {GHz},
long = {gigahertz}
}
@dualabbreviation{USSPACECOM,
description = {United States Space Command.},
short = {USSPACECOM},
long = {United States Space Command}
}
@dualabbreviation{SPACECOM,
description = {United States Space Command.},
short = {SPACECOM},
long = {United States Space Command}
}

View File

@ -12,12 +12,12 @@
\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}}
\label{sec:stvid-setup}
\index{stvid}\index{acquire}
\index{acquire}
\index{virtualenv}
Acquire data with \texttt{acquire.py} from \texttt{\gls{stvid}}.
Enter \texttt{virtualenv}, if used:
@ -28,7 +28,7 @@ source env/bin/activate
\end{minted}
Get the latest \glspl{TLE}:
\index{TLE}
\begin{minted}{sh}
./update_tle.py
@ -41,18 +41,19 @@ Acquire live data from camera.
cd stvid/
./acquire.py
\end{minted}
\index{acquire}
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{stvid-acquire-0.png}
\caption{Satellite images acquired by stvid.}
\label{fig:stvid-acquire}
\index{stvid}\index{acquire}
\index{acquire}
\end{sidewaysfigure}
\section{\texttt{acquire.py} Output}
\label{sec:acquire-output}
\index{acquire}\index{stvid}
\index{acquire}\index{configuration.ini}\index{FITS}
Example output while running \texttt{acquire.py}.

540
src/Acronyms.bib 100644
View File

@ -0,0 +1,540 @@
% Encoding: UTF-8
@dualacronym{NORAD-ID,
description = {is a sequential nine-digit number assigned by the \gls{USSPACECOM} in the order of launch or discovery to all artificial objects in the \glspl{orbit} of Earth and those that left Earth's \glspl{orbit}. Space Command shares the catalog via \url{space-track.org}, which is maintained by the 18th \gls{SDS}. NORAD ID is also known as a satellite catalog number.%
\footnote{\cite{enwiki:Satellite_Catalog_Number}}},
short = {NORAD ID},
long = {North American Aerospace Defense Catalog Number}
}
@dualacronym{USM,
description = {is a type of piezoelectric motor powered by the ultrasonic vibration of a component, the stator, placed against another component, the rotor or slider depending on the scheme of operation (rotation or linear translation). One common application of ultrasonic motors is in camera lenses where they are used to move lens elements as part of the auto-focus system.%
\footnote{\cite{enwiki:Ultrasonic_motor}}},
short = {USM},
long = {Ultrasonic Motor}
}
@dualacronym{OS,
description = {An operating system is system software that manages computer hardware, software resources, and provides common services for computer programs.%
\footnote{\cite{enwiki:Operating_system}}},
short = {OS},
long = {Operating System}
}
@dualacronym{INDI,
description = {Instrument Neutral Distributed Interface is a \gls{DCS} protocol to enable control, data acquisition and exchange among hardware devices and software front ends, emphasizing astronomical instrumentation.%
\footnote{\cite{enwiki:Instrument-Neutral-Distributed-Interface}}},
short = {INDI},
long = {Instrument Neutral Distributed Interface}
}
@dualacronym{DFSG,
description = {Debian Free Software Guidelines is a set of guidelines that the \gls{Debian} Project uses to determine whether a software license is a \gls{free-software} license, which in turn is used to determine whether a piece of software can be included in \gls{Debian}. The DFSG is part of the \gls{Debian} Social Contract.%
\footnote{\cite{enwiki:Debian-Free-Software-Guidelines}}},
short = {DFSG},
long = {Debian Free Software Guidelines}
}
@dualacronym{FITS,
description = {Flexible Image Transport System is an open standard defining a digital file format useful for storage, transmission and processing of data: formatted as multi-dimensional arrays (for example a 2D image), or tables. FITS is the most commonly used digital file format in astronomy. The FITS standard was designed specifically for astronomical data, and includes provisions such as describing photometric and spatial calibration information, together with image origin metadata.%
\footnote{\cite{Wiki22:fitswikipfreeencyc}}},
short = {FITS},
long = {Flexible Image Transport System}
}
@dualacronym{SDR,
description = {Software-defined radio is a radio communication system where components that have been traditionally implemented in analog hardware (e.g. mixers, filters, amplifiers, modulators/demodulators, detectors, etc.) are instead implemented by means of software on a \gls{PC} or \gls{embedded-system}. SDRs are used in \gls{SatNOGS} \glspl{ground-station}.%
\footnote{\cite{Wiki22:softwdefinradiowikipfreeencyc}}
},
short = {SDR},
long = {Software-defined radio}
}
@dualacronym{LSF,
description = {Libre Space Foundation is a non-profit foundation registered since 2015 in Greece and the creators of the SatNOGS project.%
\footnote{\url{https://libre.space/about-us/}}
},
short = {LSF},
long = {Libre Space Foundation}
}
@dualacronym{RF,
description = {Radio frequency is the oscillation rate of an alternating electric current or voltage or of a magnetic, electric or electromagnetic field or mechanical system in the frequency range from around 20 \gls{kHz} to around 300 \gls{GHz}. This is roughly between the upper limit of audio frequencies and the lower limit of infrared frequencies; these are the frequencies at which energy from an oscillating current can radiate off a conductor into space as radio waves.%
\footnote{\cite{Wiki22:radiofrequwikipfreeencyc}}
},
short = {RF},
long = {Radio Frequency}
}
@dualacronym{VHF,
description = {Very High Frequency is the \gls{ITU} designation for the range of radio frequency electromagnetic waves (radio waves) from 30 to 300 \gls{MHz}, with corresponding wavelengths of ten meters to one meter. Frequencies immediately below VHF are denoted high frequency (HF), and the next higher frequencies are known as \gls{UHF}.%
\footnote{\cite{Wiki22:veryhighfrequwikipfreeencyc}}
},
short = {VHF},
long = {Very High Frequency}
}
@dualacronym{UHF,
description = {Ultra High Frequency is the \gls{ITU} designation for radio frequencies in the range between 300 \gls{MHz} and 3 \gls{GHz}, also known as the decimetre band as the wavelengths range from one meter to one tenth of a meter (one decimeter). Lower frequency signals fall into the \gls{VHF} or lower bands.%
\footnote{\cite{Wiki22:ultrahighfrequwikipfreeencyc}}
},
short = {UHF},
long = {Ultra High Frequency}
}
@dualacronym{ITU,
description = {The International Telecommunication Union is a specialized agency of the United Nations responsible for many matters related to information and communication technologies.%
\footnote{\cite{Wiki22:intertelecunionwikipfreeencyc}}
},
short = {ITU},
long = {International Telecommunication Union}
}
@dualacronym{GNU,
description = {``GNU's Not Unix!'' is an extensive collection of \gls{free-software}, which can be used as an \gls{OS} or can be used in parts with other \glspl{OS}. The use of the completed GNU tools led to the family of operating systems popularly known as \gls{Linux}. Most of GNU is licensed under the GNU Project's own \gls{GPL}. GNU is also the project within which the \gls{free-software} concept originated.%
\footnote{\cite{Wiki22:gnuwikipfreeencyc}}
},
short = {GNU},
long = {GNU's Not Unix!}
}
@dualacronym{GPL,
description = {GNU General Public License is a series of widely used \gls{free-software} licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general use. Historically, the GPL license family has been one of the most popular software licenses in the \gls{FLOSS} software domain.%
\footnote{\cite{Wiki22:gnugenerpublilicenwikipfreeencyc}}
},
short = {GPL},
long = {GNU General Public License}
}
@dualacronym{SGP,
description = {Simplified General Perturbations models apply to near earth objects with an orbital period of less than 225 minutes. Simplified \glspl{perturbation} models are a set of five mathematical models (SGP, SGP4, SDP4, SGP8 and SDP8) used to calculate orbital state vectors of \glspl{satellite} and space debris relative to the Earth-centered inertial coordinate system. This set of models is often referred to collectively as SGP4 due to the frequency of use of that model particularly with \gls{TLE} sets produced by \gls{NORAD} and \gls{NASA}. These models predict the effect of \glspl{perturbation} caused by the Earth's shape, drag, radiation, and gravitation effects from other bodies such as the sun and moon. See also: \gls{SDP}.%
\footnote{\cite{enwiki:Simplified_perturbations_models}}
},
short = {SGP},
long = {Simplified General Perturbations}
}
@dualacronym{SDP,
description = {Simplified Deep Space Perturbations models apply to objects with an orbital period greater than 225 minutes, which corresponds to an altitude of 5,877.5 km, assuming a circular orbit. See also: \gls{SGP}.%
\footnote{\cite{enwiki:Simplified_perturbations_models}}
},
short = {SDP},
long = {Simplified Deep Space Perturbations}
}
@dualacronym{NORAD,
description = {North American Aerospace Defense Command is a combined organization of the United States and Canada that provides aerospace warning, air sovereignty, and protection for Canada and the continental United States.%
\footnote{\cite{enwiki:NORAD}}
},
short = {NORAD},
long = {North American Aerospace Defense Command}
}
@dualacronym{NASA,
description = {is an independent agency of the US federal government responsible for the civil space program, aeronautics research, and space research.%
\footnote{\cite{enwiki:NASA}}
},
short = {NASA},
long = {National Aeronautics and Space Administration}
}
@dualacronym{OSH,
description = {open-source hardware consists of physical artifacts of technology designed and offered by the open-design movement. Both \gls{FOSS} and open-source hardware are created by the open-source culture movement and apply a like concept to a variety of components. It is sometimes, thus, referred to as \gls{FOSH}. The term usually means that information about the hardware is easily discerned so that others can make it---coupling it closely to the maker movement. Hardware design (i.e. mechanical drawings, schematics, bills of material, \gls{PCB} layout data, \gls{HDL} source code and integrated circuit layout data), in addition to the software that drives the hardware, are all released under free/\gls{libre} terms. The original sharer gains feedback and potentially improvements on the design from the \gls{FOSH} community. There is now significant evidence that such sharing can drive a high return on investment for the scientific community. It is not enough to merely use an \gls{open-source} license; an \gls{open-source} product or project will follow \gls{open-source} principles, such as modular design and community collaboration.%
\footnote{\cite{enwiki:Open-source-hardware}}
},
short = {OSH},
long = {Open Source Hardware}
}
@dualacronym{FOSS,
description = {free and \gls{open-source} software is a term used to refer to groups of software consisting of both \gls{free-software} and \gls{OSS} where anyone is freely licensed to use, copy, study, and change the software in any way, and the source code is openly shared so that people are encouraged to voluntarily improve the design of the software. This is in contrast to proprietary software, where the software is under restrictive copyright licensing and the source code is usually hidden from the users. FOSS maintains the software user's civil liberty rights. Other benefits of using FOSS can include decreased software costs, increased security and stability (especially in regard to malware), protecting privacy, education, and giving users more control over their own hardware. Free and open-source operating systems such as \gls{Linux} and descendants of \gls{BSD} are widely utilized today, powering millions of servers, desktops, smartphones (e.g., Android), and other devices. Free-software licenses and \gls{open-source} licenses are used by many software packages. The free software movement and the \gls{open-source} software movement are online social movements behind widespread production and adoption of FOSS, with the former preferring to use the terms \gls{FLOSS} or free/\gls{libre}.%
\footnote{\cite{enwiki:Free-and-open-source-software}}
},
short = {FOSS},
long = {Free and Open Source Software}
}
@dualacronym{OSS,
description = {open-source software is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Open-source software may be developed in a collaborative public manner. Open-source software is a prominent example of open collaboration, meaning any capable user is able to participate online in development, making the number of possible contributors indefinite. The ability to examine the code facilitates public trust in the software. Open source code can be used for studying and allows capable end users to adapt software to their personal needs in a similar way user scripts and custom style sheets allow for web sites, and eventually publish the modification as a fork for users with similar preference.%
\footnote{\cite{enwiki:Open-source-software}}
},
short = {OSS},
long = {Open Source Software}
}
@dualacronym{IP,
longplural = {Internet Protocol Addresses},
description = {Internet Protocol Address.},
short = {IP},
long = {Internet Protocol Address}
}
@dualacronym{DSLR,
description = {digital single-lens reflex.},
short = {DSLR},
long = {Digital Single Lens Reflex}
}
@dualacronym{PoE,
description = {Power over Ethernet.},
short = {PoE},
long = {Power over Ethernet}
}
@dualacronym{GNSS,
description = {Global Navigation \Gls{satellite} System.},
short = {GNSS},
long = {Global Navigation Satellite System}
}
@dualacronym{GPS,
description = {Global Positioning System.},
short = {GPS},
long = {Global Positioning System}
}
@dualacronym{IP67,
description = {Ingress Protection code 67.},
short = {IP67},
long = {Ingress Protection code 67}
}
@dualacronym{SSA,
description = {Space Situational Awareness.},
short = {SSA},
long = {Space Situational Awareness}
}
@dualacronym{WCS,
description = {World Coordinate System.},
short = {WCS},
long = {World Coordinate System}
}
@dualacronym{CMOS,
description = {Complementary metal-oxide-semiconductor (pronounced ``see-moss'').},
short = {CMOS},
long = {Complementary Metal Oxide Semiconductor}
}
@dualacronym{CCD,
description = {charge-coupled device.},
short = {CCD},
long = {Charge Coupled Device}
}
@dualacronym{SIDLOC,
description = {Spacecraft Identification and Localization.},
short = {SIDLOC},
long = {Spacecraft Identification and Localization}
}
@dualacronym{RASA,
description = {Rowe-Ackermann Schmidt \Gls{astrograph}.},
short = {RASA},
long = {Rowe-Ackermann Schmidt Astrograph}
}
@dualacronym{COTS,
description = {Commodity off the shelf.},
short = {COTS},
long = {Commodity Off The Shelf}
}
@dualacronym{FOSH,
description = {Free open-source hardware. See also: \gls{OSH}.},
short = {FOSH},
long = {Free Open Source Hardware}
}
@dualacronym{FLOSS,
description = {Free/libre and open-source software. See also: \gls{FOSS}.},
short = {FLOSS},
long = {Free/Libre and Open Source Software}
}
@dualacronym{SIP,
description = {Simple Imaging Polynomial.},
short = {SIP},
long = {Simple Imaging Polynomial}
}
@dualacronym{FoV,
description = {Field of view.},
short = {FoV},
long = {Field of View}
}
@dualacronym{DCS,
description = {distributed control system.},
short = {DCS},
long = {Distributed Control System}
}
@dualacronym{PNG,
description = {Portable Network Graphics.},
short = {PNG},
long = {Portable Network Graphics}
}
@dualacronym{CSV,
description = {Comma Separated Value.},
short = {CSV},
long = {Comma Separated Value}
}
@dualacronym{NTP,
description = {Network Time Protocol.},
short = {NTP},
long = {Network Time Protocol}
}
@dualacronym{IPv6,
description = {Internet Protocol version 6.},
short = {IPv6},
long = {Internet Protocol version 6}
}
@dualacronym{ISS,
description = {International Space Station.},
short = {ISS},
long = {International Space Station}
}
@dualacronym{LEO,
description = {Low Earth Orbit.},
short = {LEO},
long = {Low Earth Orbit}
}
@dualacronym{GEO,
description = {Geostationary orbit.},
short = {GEO},
long = {Geostationary Orbit}
}
@dualacronym{HEO,
description = {High Earth orbit.},
short = {HEO},
long = {High Earth Orbit}
}
@dualacronym{MEO,
description = {Medium Earth orbit.},
short = {MEO},
long = {Medium Earth Orbit}
}
@dualacronym{GSO,
description = {Geosynchronous orbit.},
short = {GSO},
long = {Geosynchronous Orbit}
}
@dualacronym{PCB,
description = {Printed circuit board.},
short = {PCB},
long = {Printed Circuit Board}
}
@dualacronym{HDL,
description = {Hardware description language.},
short = {HDL},
long = {Hardware Description Language}
}
@dualacronym{V4L2,
description = {Video for Linux v2.},
short = {V4L2},
long = {Video for Linux v2}
}
@dualacronym{BSD,
description = {Berkeley Software Distribution.},
short = {BSD},
long = {Berkeley Software Distribution}
}
@dualacronym{SDK,
description = {Software development kit.},
short = {SDK},
long = {Software Development Kit}
}
@dualacronym{MIPI,
description = {Mobile Industry Processor Interface.},
short = {MIPI},
long = {Mobile Industry Processor Interface}
}
@dualacronym{ASM,
description = {All Sky Monitor.},
short = {ASM},
long = {All Sky Monitor}
}
@dualacronym{PTZ,
description = {Pan-tilt-zoom.},
short = {PTZ},
long = {Pan Tilt Zoom}
}
@dualacronym{PPS,
description = {Pulse per second.},
short = {PPS},
long = {Pulse Per Second}
}
@dualacronym{USB,
description = {Universal Serial Bus.},
short = {USB},
long = {Universal Serial Bus}
}
@dualacronym{NUC,
description = {Next Unit of Computing.},
short = {NUC},
long = {Next Unit of Computing}
}
@dualacronym{DC,
description = {Direct current.},
short = {DC},
long = {Direct Current}
}
@dualacronym{EQ,
description = {Equatorial.},
short = {EQ},
long = {Equatorial}
}
@dualacronym{IDK,
description = {I don't know.},
short = {IDK},
long = {I Don't Know}
}
@dualacronym{DB,
description = {Database.},
short = {DB},
long = {Database}
}
@dualacronym{UVC,
description = {USB video device class.},
short = {UVC},
long = {USB Video device Class}
}
@dualacronym{CV,
description = {Computer vision.},
short = {CV},
long = {Computer Vision}
}
@dualacronym{PIP,
description = {Package Installer for Python.},
short = {PIP},
long = {Package Installer for Python}
}
@dualacronym{RAM,
description = {Random-access memory.},
short = {RAM},
long = {Random Access Memory}
}
@dualacronym{GLONASS,
description = {Global Navigation Satellite System.},
short = {GLONASS},
long = {Global Navigation Satellite System}
}
@dualacronym{BDS,
description = {BeiDou Navigation Satellite System.},
short = {BDS},
long = {BeiDou Navigation Satellite System}
}
@dualacronym{SBC,
description = {Single board computer.},
short = {SBC},
long = {Single Board Computer}
}
@dualacronym{BIOS,
description = {Basic Input/Output System.},
short = {BIOS},
long = {Basic Input/Output System}
}
@dualacronym{OSAT,
description = {open-source appropriate technology.},
short = {OSAT},
long = {Open Source Appropriate Technology}
}
@dualacronym{PC,
description = {Personal Computer.},
short = {PC},
long = {Personal Computer}
}
@dualacronym{CGPM,
description = {General Conference on Weights and Measures.},
short = {CGPM},
long = {General Conference on Weights and Measures}
}
@dualacronym{API,
description = {application programming interface.},
short = {API},
long = {Application Programming Interface}
}
@dualacronym{CPU,
description = {central processing unit.},
short = {CPU},
long = {Central Processing Unit}
}
@dualacronym{NGC,
description = {New General Catalogue of Nebulae and Clusters of Stars.},
short = {NGC},
long = {New General Catalogue of Nebulae and Clusters of Stars}
}
@dualacronym{FLIR,
description = {Forward-looking infrared.},
short = {FLIR},
long = {Forward Looking Infrared}
}
@dualacronym{SDS,
description = {Space Defense Squadron.},
short = {SDS},
long = {Space Defense Squadron}
}
@dualacronym{PaaS,
description = {Platform as a Service.},
short = {PaaS},
long = {Platform as a Service}
}
@dualacronym{SI,
description = {The International System of Units, known by the international abbreviation SI in all languages and sometimes pleonastically as the SI system, is the modern form of the metric system and the world's most widely used system of measurement. Established and maintained by the \gls{CGPM}, it is the only system of measurement with an official status in nearly every country in the world, employed in science, technology, industry, and everyday commerce.%
\footnote{\cite{Wiki22:intersysteunitswikipfreeencyc}}
},
short = {SI},
long = {International System of Units}
}
@dualacronym{TLE,
description = {two-line element set is a data format encoding a list of orbital elements of an Earth-orbiting object for a given point in time, the epoch. Using a suitable prediction formula, the state (position and velocity) at any point in the past or future can be estimated to some accuracy. TLEs can describe the trajectories only of Earth-orbiting objects. TLEs are widely used as input for projecting the future orbital tracks of space debris for purposes of characterizing ``future debris events to support risk analysis, close approach analysis, collision avoidance maneuvering'' and forensic analysis. The format was originally intended for punched cards, encoding a set of elements on two standard 80-column cards.%
\footnote{\cite{Wiki22:twolineelemesetwikipfreeencyc}}
},
short = {TLE},
long = {Two Line Element set}
}

121
src/Cover.tex 100644
View File

@ -0,0 +1,121 @@
\documentclass{book}
\usepackage[utf8x]{inputenc}
\usepackage{rotating}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\graphicspath{{./figures/}}
% Crown Quarto
\usepackage[papersize={24.58cm,18.90cm},topmargin=5mm,
botmargin,strictheight,
textwidth=14.2cm,textheight=18.6cm,
leftmargin=0cm,spine=1.7cm,
rightmargin=2cm,
cropmarks,croptitle=Cover]{zwpagelayout}
%\usepackage{graphics,color}
%\usepackage[SC0,ISBN=999-99-9999-999-4]{ean13isbn}
%\usepackage[LY1]{fontenc}
%\pagestyle{empty}
%\parindent 0mm
%\def\thePageNumber{Brodie}
\def\moe{\rotatebox{33.0}{\upshape \kern-.5em \hbox{M}}%
\rotatebox{20.0}{\scshape\kern-.425em\lower-.4ex\hbox{o}}
}
\begin{document}
\newsavebox{\mysquare}
% 39 173 207 .15 .68 .81
% 255 255 255 100 100 100
\definecolor{brodieblue}{rgb}{0.15,0.68,.81}
\pagecolor{white}
\small
\hbox to \textwidth{%
%%% BACK FLAP %%%
\hss
% \vbox to \textheight{\hsize \CropFlap \centering
% backflap\vfill}\hss
%%% END BACK FLAP %%%
%%% BACK COVER %%%
\vbox to \textheight{\hsize \UserWidth \centering
\vfill
\vspace*{85pt}
\leavevmode }\hss
% ISBNbackcover\vfill \leavevmode \EANisbn}\hss
%%% END BACK COVER %%%
%%% SPINE %%%
\colorbox{white}{
\vbox to \textheight{\hsize \CropSpine \centering
\vfill
\begin{sideways}
\rotatebox{180}{
\includegraphics[keepaspectratio=true,angle=0,height=0.02\textheight,width=0.02\textwidth]{spacecruft.png}
\hspace*{20pt}
\large\itshape\textcolor{black}{}
\fontspec{GemunuLibre-ExtraBold.otf}\fontsize{14pt}{1em}\selectfont
SatNOGS Optical Unofficial Guide
\hspace*{20pt}
\includegraphics[keepaspectratio=true,angle=0,height=0.02\textheight,width=0.02\textwidth]{spacecruft.png}
\large\itshape\textcolor{black}{}
\hspace*{20pt}
\fontspec{GemunuLibre-ExtraBold.otf}\fontsize{12pt}{1em}\selectfont
Jeff Moe
\hspace*{15pt}
\includegraphics[keepaspectratio=true,angle=0,height=0.02\textheight,width=0.02\textwidth]{spacecruft.png}
}
\end{sideways}\vfill}\hss
}
%%% END SPINE %%%
%%% FRONT COVER %%%
\fcolorbox{white}{brodieblue}{
\vbox to \textheight{\hsize \UserWidth \centering
\begingroup
\vspace*{60pt}
\fontspec{GemunuLibre-ExtraBold.otf}\fontsize{40pt}{1em}\selectfont %
SatNOGS Optical \\
\fontspec{LinLibertine_RI.otf}\fontsize{16pt}{0em}\selectfont %
\emph{\textcolor{white}{\begin{turn}{15}Unofficial\end{turn}}} \\
\fontspec{GemunuLibre-ExtraBold.otf}\fontsize{68pt}{1em}\selectfont %
Guide\\
\vfill
\begin{center}
\null\vfill
\centering
\includegraphics[keepaspectratio=true,angle=0,height=0.40\textheight,width=0.40\textwidth]{frontispiece.png}
\par
\null
\par
\includegraphics[keepaspectratio=true,angle=0,height=0.02\textheight,width=0.02\textwidth]{spacecruft.png}
\includegraphics[keepaspectratio=true,angle=0,height=0.02\textheight,width=0.02\textwidth]{spacecruft.png}
\includegraphics[keepaspectratio=true,angle=0,height=0.02\textheight,width=0.02\textwidth]{spacecruft.png}
\par
\end{center}
\color{white}\rule{120pt}{2.0pt}\\[\baselineskip]
\endgroup
\vspace*{10pt}
\fontspec{GemunuLibre-ExtraBold.otf}\fontsize{14pt}{1em}\selectfont %
{Jeff Moe}
\vspace*{55pt}
}
}
%%% END FRONT COVER
%%% FRONT FLAP %%%
\hss
% \vbox to \textheight{\hsize \CropFlap \centering
% frontflap\vfill}}
%%% END FRONT FLAP %%%
}
\end{document}

View File

@ -11,23 +11,22 @@
\section{Satellite Detection with stvid}
\label{sec:satellite-detection}
\index{detection}\index{stvid}\index{process}\index{Python}
\index{FITS}
\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 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}
Python script.
\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 section \ref{sec:stvid-setup}
\pageref{sec:stvid-setup}.
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.
\begin{minted}{sh}
@ -37,8 +36,10 @@ cd stvid/
# Process directory
./process_new.py -c config_new.ini -d data/obs/20220825_1/020502/
\end{minted}
\index{process}\index{TLE}\index{config\_new.ini}
\subsection{\texttt{process.py} Usage}
If there is no \texttt{process\_new.py} it has likely been merged into
\texttt{process.py}. Or perhaps, to use the ``older'' script it would
be run as shown below. Note, the old and new configuration files
@ -49,12 +50,12 @@ script.
cd stvid/
./process.py -c configuration.ini -d data/obs/20220825_1/020502/
\end{minted}
\index{stvid}\index{process}
\index{process}\index{configuration.ini}
\section{\texttt{process\_new.py Example Output}}
\subsection{\texttt{process\_new.py Example Output}}
\label{sec:process-output}
\index{stvid}\index{FITS}
\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
@ -67,11 +68,12 @@ File queue empty, waiting for new files...
90000 22 500A 9999 G 20220902043336020 17 25 1433368+375908 37 S
2022-09-02T04:33:40.315.fits 216.815570 31.756676 206/ 342 10.1 13.1 16.54 +- 0.70
\end{minted}
\index{astometry.net}\index{process}
\section{AstroImageJ}
\label{sec:astroimagej}
\index{identify}\index{AstroImageJ}\index{FITS}
\index{identify}
Analyze data with applications, such as \gls{AstroImageJ}.
@ -82,13 +84,11 @@ See
\ref{fig:astroimagej}, page \pageref{fig:astroimagej},
for a screenshot displaying a \gls{FITS} file generated by
\texttt{\gls{stvid}}.
\index{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.}
\index{AstroImageJ}\index{FITS}
\label{fig:astroimagej}
\end{center}
\end{sidewaysfigure}

508
src/Glossary.bib 100644
View File

@ -0,0 +1,508 @@
% Encoding: UTF-8
@entry{artificial-satellite,
name = {artificial satellite},
long = {artificial satellite},
description = {is a \gls{satellite} put into \gls{orbit} by humans, not ``naturally'' occurring.}
}
@entry{libre-software,
name = {libre software},
long = {libre software},
description = {See: \gls{free-software}.}
}
@entry{AstroImageJ,
name = {AstroImageJ},
long = {AstroImageJ},
description = {Application for astronomy and \gls{satellite} image analysis.%
\footnote{\url{https://www.astro.louisville.edu/software/astroimagej/}}
}
}
@entry{skymap,
name = {skymap},
long = {skymap},
description = {is part of \gls{sattools}. Visualize \glspl{satellite} on a map of the sky.%
\footnote{\url{https://github.com/cbassa/sattools/blob/master/skymap.c}}
}
}
@entry{satid,
name = {satid},
long = {satid},
description = {is part of \gls{sattools}.%
\footnote{\url{https://github.com/cbassa/sattools/blob/master/satid.c}}
}
}
@entry{sattools,
name = {sattools},
long = {sattools},
description = {Satellite Tracking Toolkit. The main \texttt{sattools} applications are being ported to \gls{stvid} and other related \gls{Python} applications.%
\footnote{\url{https://github.com/cbassa/sattools}}
}
}
@entry{satpredict,
name = {satpredict},
long = {satpredict},
description = {is a software application to compute \gls{satellite} predictions. It is used by \gls{stvid}.%
\footnote{\url{https://github.com/cbassa/satpredict}}
}
}
@entry{stvid,
name = {stvid},
long = {stvid},
description = {\Gls{satellite} tools video application for acquiring and processing sky images.%
\footnote{\url{https://github.com/cbassa/stvid}}
}
}
@entry{hough3d-code,
name = {hough3d-code},
long = {hough3d-code},
description = {is a software application for Iterative Hough Transform for Line Detection in 3D Point Clouds.%
\footnote{\url{https://gitlab.com/pierros/hough3d-code}}
}
}
@entry{ground-station,
name = {ground station},
long = {ground station},
description = {a setup of equipment such as computers, cameras, \glspl{SDR}, antennas, and receivers, located on Earth, observing space.
}
}
@entry{SatNOGS-Optical,
name = {SatNOGS Optical},
long = {SatNOGS Optical},
description = {is a project by the \gls{LSF} to add optical ground stations to the SatNOGS network.%
\footnote{\url{https://satnogs.org/}}
}
}
@entry{SatNOGS-DB,
name = {SatNOGS DB},
long = {SatNOGS DB},
description = {is an effort to create an hollistic, unified, global database for all artificial objects in space (\glspl{satellite} and spacecrafts). Users can view and export the data, contribute to it, or connect applications using an \gls{API}. It is part of the \gls{SatNOGS} project.%
\footnote{\url{https://db.satnogs.org/}}
}
}
@entry{SatNOGS,
name = {SatNOGS},
long = {SatNOGS},
description = {Open Source global network of \gls{satellite} ground stations.%
\footnote{\url{https://satnogs.org/}}
}
}
@entry{optical-ground-station,
name = {optical ground station},
long = {optical ground station},
description = {a ground station using optical equipment (cameras) instead of antennas.
}
}
@entry{antenna,
name = {antenna},
long = {antenna},
description = {the interface between radio waves propagating through space and electric currents moving in metal conductors, used with a transmitter or receiver.%
\footnote{\cite{Wiki22:antenradiowikipfreeencyc}}
}
}
@entry{mast,
name = {mast},
long = {mast},
description = {typically tall structures designed to support antennas for telecommunications and broadcasting.%
\footnote{\cite{Wiki22:radiomaststowerwikipfreeencyc}}
}
}
@entry{rotator,
name = {rotator},
long = {rotator},
description = {a device used to change the orientation, within the horizontal plane, of a directional antenna. Most antenna rotators have two parts, the rotator unit and the controller. The controller is normally placed near the equipment which the antenna is connected to, while the rotator is mounted on the antenna mast directly below the antenna. Rotators are commonly used in amateur radio.%
\footnote{\cite{Wiki22:antenrotatwikipfreeencyc}}
}
}
@entry{Debian,
name = {Debian},
long = {Debian},
description = {a \gls{GNU}/\gls{Linux} distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. Debian is the basis for many other distributions, notably Ubuntu.
Debian is one of the oldest operating systems based on the Linux kernel.%
\footnote{\cite{Wiki22:debiawikipfreeencyc}}
}
}
@entry{Linux,
name = {Linux},
long = {Linux},
description = {is a free and open-source, monolithic, modular, multitasking, \gls{Unix}-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based \gls{PC}, and it was soon adopted as the kernel for the \gls{GNU} \gls{OS}, which was written to be a free (\gls{libre}) replacement for \gls{Unix}.%
\footnote{\cite{Wiki22:linuxkernewikipfreeencyc}}
}
}
@entry{open-source,
name = {Open Source},
long = {Open Source},
description = {is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized software development model that encourages open collaboration. A main principle of open-source software development is peer production, with products such as source code, blueprints, and documentation freely available to the public. The open-source movement in software began as a response to the limitations of proprietary code. The model is used for projects such as in open-source \gls{appropriate-technology}.%
\footnote{\cite{Wiki22:opensourcwikipfreeencyc}}
}
}
@entry{free-software,
name = {Free Software},
long = {Free Software},
description = {or \gls{libre} software, is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, not price; all users are legally free to do what they want with their copies of a free software (including profiting from them) regardless of how much is paid to obtain the program. Computer programs are deemed ``free'' if they give end-users (not just the developer) ultimate control over the software and, subsequently, over their devices.%
\footnote{\cite{Wiki22:freesoftwwikipfreeencyc}}
}
}
@entry{Matrix,
name = {Matrix},
long = {Matrix},
description = {an open standard and communication protocol for real-time communication.%
\footnote{\cite{Wiki22:matriprotowikipfreeencyc}}
}
}
@entry{telescope,
name = {telescope},
long = {telescope},
description = {is an optical instrument using lenses, curved mirrors, or a combination of both to observe distant objects, or various devices used to observe distant objects by their emission, absorption, or reflection of electromagnetic radiation. The word telescope now refers to a wide range of instruments capable of detecting different regions of the electromagnetic spectrum, and in some cases other types of detectors.%
\footnote{\cite{enwiki:Telescope}}
}
}
@entry{astrograph,
name = {astrograph},
long = {astrograph},
description = {is a telescope designed for the sole purpose of astrophotography. Astrographs are mostly used in wide-field astronomical surveys of the sky and for detection of objects such as asteroids, meteors, and comets.%
\footnote{\cite{enwiki:Astrograph}}
}
}
@entry{satellite,
name = {satellite},
long = {satellite},
description = {is an object intentionally placed into \gls{orbit} in outer space. Except for passive satellites, most satellites have an electricity generation system for equipment on board. Most satellites also have a method of communication to ground stations, called transponders. Many satellites use a standardized bus to save cost and work, the most popular of which is small \Glspl{cubesat}. Similar satellites can work together as a group, forming constellations.%
\footnote{\cite{enwiki:Satellite}}
}
}
@entry{cubesat,
name = {CubeSat},
long = {CubeSat},
description = {is a class of miniaturized \gls{satellite} based around a form factor consisting of 10 cm (3.9 in) cubes. CubeSats have a mass of no more than 2 kg per unit, and often use \gls{COTS} components for their electronics and structure. CubeSats are put into \gls{orbit} by deployers on the \gls{ISS}, or launched as secondary payloads on a launch vehicle. More than a thousand CubeSats have been launched.%
\footnote{\cite{enwiki:CubeSat}}
}
}
@entry{orbit,
name = {orbit},
long = {orbit},
description = {is the curved trajectory of an object such as the trajectory of a planet around a star, or of a natural satellite around a planet, or of an artificial satellite around an object or position in space such as a planet, moon, asteroid, or \gls{Lagrange-point}. Normally, orbit refers to a regularly repeating trajectory, although it may also refer to a non-repeating trajectory. To a close approximation, planets and \glspl{satellite} follow elliptic orbits, with the center of mass being orbited at a focal point of the ellipse, as described by Kepler's laws of planetary motion. For most situations, orbital motion is adequately approximated by Newtonian mechanics, which explains gravity as a force obeying an inverse-square law. However, Albert Einstein's general theory of relativity, which accounts for gravity as due to curvature of spacetime, with orbits following geodesics, provides a more accurate calculation and understanding of the exact mechanics of orbital motion.%
\footnote{\cite{enwiki:Orbit}}
}
}
@entry{perturbation,
name = {perturbation},
long = {perturbation},
description = {is the complex motion of a massive body subjected to forces other than the gravitational attraction of a single other massive body. The other forces can include a third (fourth, fifth, etc.) body, resistance, as from an atmosphere, and the off-center attraction of an oblate or otherwise misshapen body.%
\footnote{\cite{enwiki:Perturbation-astronomy}}
}
}
@entry{telemetry,
name = {telemetry},
long = {telemetry},
description = {is the in situ collection of measurements or other data at remote points and their automatic transmission to receiving equipment (telecommunication) for monitoring. The word is derived from the Greek roots tele, ``remote'', and metron, ``measure''. Although the term commonly refers to wireless data transfer mechanisms (e.g., using radio, ultrasonic, or infrared systems), it also encompasses data transferred over other media such as a telephone or computer network, optical link or other wired communications like power line carriers.%
\footnote{\cite{enwiki:Telemetry}}
}
}
@entry{Grafana,
name = {Grafana},
long = {Grafana},
description = {is a multi-platform \gls{open-source} analytics and interactive visualization web application. It provides charts, graphs, and alerts for the web when connected to supported data sources. Users can create complex monitoring dashboards using interactive query builders. It is used by the \gls{SatNOGS} project to visualize \gls{satellite} \gls{telemetry}.%
\footnote{\cite{enwiki:Grafana}}
}
}
@entry{Python,
name = {Python},
long = {Python},
description = {is a high-level, interpreted, general-purpose programming language. Its design philosophy emphasizes code readability. It is often described as a ``batteries included'' language due to its comprehensive standard library. Python consistently ranks as one of the most popular programming languages. It is one of the main languages of the \gls{SatNOGS} project and \gls{stvid}.%
\footnote{\cite{enwiki:Python-language}}
}
}
@entry{C,
name = {C},
long = {C},
description = {is a general-purpose computer programming language. It was created in the 1970s by Dennis Ritchie, and remains very widely used and influential. By design, C's features cleanly reflect the capabilities of the targeted \glspl{CPU}. It has found lasting use in \glspl{OS}, device drivers, protocol stacks, though decreasingly for application software. C is commonly used on computer architectures that range from the largest supercomputers to the smallest microcontrollers and \glspl{embedded-system}. C is used in the \gls{sattools} suite of applications.%
\footnote{\cite{enwiki:C-language}}
}
}
@entry{libre,
name = {libre},
long = {libre},
description = {The English adjective free is commonly used in one of two meanings: ``at no monetary cost'' (gratis) and ``with little or no restriction'' (libre). This ambiguity of free can cause issues where the distinction is important, as it often is in dealing with laws concerning the use of information, such as copyright and patents. The terms gratis and libre may be used to categorise computer programs, according to the licenses and legal restrictions that cover them, in the \gls{free-software} and \gls{open-source} communities, as well as the broader free culture movement. For example, they are used to distinguish freeware (software gratis) from \gls{free-software} (software libre). ``Think free as in free speech, not free beer.'' -- Richard Stallman.%
\footnote{\cite{enwiki:Gratis-versus-libre}}
}
}
@entry{plate-solver,
name = {plate solver},
long = {plate solver},
description = {is software implementing a technique used in astronomy and applied on celestial images. Solving an image is finding match between the imaged stars and a \gls{star-catalogue}. The solution is a math model describing the corresponding astronomical position of each image pixel. The position of reference catalogue stars has to be known to a high accuracy so an astrometric reference catalogue is used. The image solution contains a reference point, often the image centre, image scale, image orientation and in some cases an image distortion model. With the astrometric solution it is possible to: 1) Calculate the celestial coordinates of any object on the image. 2) Synchronize the telescope mount or satellite pointing position to the center of the image taken. Astrometric solving programs extract the star x,y positions from the celestial image, groups them in three-star triangles or four-star quads. Then it calculates for each group a geometric hash code based on the distance and/or angles between the stars in the group. It then compares the resulting hash codes with the hash codes created from catalogue stars to find a match. If it finds sufficient statistically reliable matches, it can calculate transformation factors. There are several conventions to model the transformation from image pixel location to the corresponding celestial coordinates. The simplest linear model is called the \gls{WCS}. A more advanced convention is \gls{SIP} describing the transformation in polynomials to cope with non-linear geometric distortion in the celestial image, mainly caused by the optics.%
\footnote{\cite{enwiki:Astrometric-solving}}
}
}
@entry{OpenCV,
name = {OpenCV},
long = {OpenCV},
description = {Open Source Computer Vision Library is a library of programming functions mainly aimed at real-time computer vision.%
\footnote{\cite{enwiki:OpenCV}}
}
}
@entry{KStars,
name = {KStars},
long = {KStars},
description = {is a planetarium program. It provides an accurate graphical representation of the night sky, from any location on Earth, at any date and time. The display includes up to 100 million stars (with additional addons), 13,000 deep sky objects, constellations from different cultures, all 8 planets, the Sun and Moon, and thousands of comets, asteroids, satellites, and supernovae. It has features to appeal to users of all levels, from informative hypertext articles about astronomy, to robust control of telescopes and \gls{CCD} cameras, and logging of observations of specific objects.%
\footnote{\cite{enwiki:KStars}}
}
}
@entry{gPhoto,
name = {gPhoto},
long = {gPhoto},
description = {is a set of software applications and libraries for use in digital photography. gPhoto supports not just retrieving of images from camera devices, but also upload and remote controlled configuration and capture, depending on whether the camera supports those features. gPhoto supports more than 2500 cameras.%
\footnote{\cite{enwiki:GPhoto}}
}
}
@entry{Raspberry-Pi,
name = {Raspberry Pi},
long = {Raspberry Pi},
description = {is a series of small \glspl{SBC}. It is typically used by computer and electronic hobbyists as an \gls{embedded-system}.%
\footnote{\cite{enwiki:Raspberry_Pi}}
}
}
@entry{Celestron,
name = {Celestron},
long = {Celestron},
description = {is an American company based in Torrance, California, United States, that manufactures telescopes and distributes telescopes, binoculars, spotting scopes, microscopes, and accessories.%
\footnote{\cite{enwiki:Celestron}}
}
}
@entry{amateur-radio,
name = {amateur radio},
long = {amateur radio},
description = {is the use of the radio frequency spectrum for purposes of non-commercial exchange of messages, wireless experimentation, self-training, private recreation, radiosport, contesting, and emergency communications.%
\footnote{\cite{enwiki:Amateur_radio}}
}
}
@entry{firmware,
name = {firmware},
long = {firmware},
description = {firmware is a specific class of computer software that provides the low-level control for a device's specific hardware. Firmware, such as the \gls{BIOS} of a \gls{PC}, may contain basic functions of a device, and may provide hardware abstraction services to higher-level software such as \glspl{OS}. For less complex devices, firmware may act as the device's complete \gls{OS}, performing all control, monitoring and data manipulation functions. Typical examples of devices containing firmware are \glspl{embedded-system} (running embedded software), home and personal-use appliances, computers, and computer peripherals.%
\footnote{\cite{enwiki:Firmware}}
}
}
@entry{gpsd,
name = {gpsd},
long = {gpsd},
description = {is a computer software program that collects data from a \gls{GPS} receiver and provides the data via a network to potentially multiple client applications in a server-client application architecture. Gpsd may be run as a \gls{daemon} to operate transparently as a background task of the server. The network interface provides a standardized data format for multiple concurrent client applications.%
\footnote{\cite{enwiki:Gpsd}}
}
}
@entry{star-catalogue,
name = {star catalogue},
long = {star catalogue},
description = {is an \gls{astronomical-catalogue} that lists stars. In astronomy, many stars are referred to simply by catalogue numbers. There are a great many different star catalogues which have been produced for different purposes over the years. Most modern catalogues are available in electronic format and can be freely downloaded from space agencies' data centres. The largest is being compiled from the spacecraft Gaia and thus far has over a billion stars. Completeness and accuracy are described by the faintest limiting magnitude and the accuracy of the positions.%
\footnote{\cite{enwiki:Star_catalogue}}
}
}
@entry{sky-chart,
name = {sky chart},
long = {sky chart},
description = {or star chart or star map, also called or sky map, is a map of the night sky. Astronomers divide these into grids to use them more easily. They are used to identify and locate constellations and astronomical objects such as stars, nebulae, and galaxies. They have been used for human navigation since time immemorial. Note that a sky chart differs from an \gls{astronomical-catalogue}, which is a listing or tabulation of astronomical objects for a particular purpose.%
\footnote{\cite{enwiki:Star_chart}}
}
}
@entry{astronomical-catalogue,
name = {astronomical catalogue},
long = {astronomical catalogue},
description = {is a list or tabulation of astronomical objects, typically grouped together because they share a common type, morphology, origin, means of detection, or method of discovery. The oldest and largest are \glspl{star-catalogue}. Hundreds have been published, including general ones and special ones for such items as infrared stars, variable stars, giant stars, multiple star systems, and star clusters. Since the late 20th century catalogs are increasingly often compiled by computers from an automated survey, and published as computer files rather than on paper.%
\footnote{\cite{enwiki:Astronomical_catalog}}
}
}
@entry{Unix,
name = {Unix},
long = {Unix},
description = {is a family of multitasking, multiuser computer \glspl{OS} that derive from the original AT\&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, and others.%
\footnote{\cite{enwiki:Unix}}
}
}
@entry{appropriate-technology,
name = {appropriate technology},
long = {appropriate technology},
description = {is a movement (and its manifestations) encompassing technological choice and application that is small-scale, affordable by locals, decentralized, labor-intensive, energy-efficient, environmentally sustainable, and locally autonomous. Appropriate technology has been used to address issues in a wide range of fields. Today appropriate technology is often developed using \gls{open-source} principles, which have led to \gls{OSAT} and thus many of the plans of the technology can be freely found on the Internet.%
\footnote{\cite{enwiki:Appropriate_technology}}
}
}
@entry{distribution,
name = {distribution},
long = {distribution},
description = {is an \gls{OS} made from a software collection that includes the \gls{Linux} kernel and, often, a package management system. \gls{Linux} users usually obtain their \gls{OS} by downloading one of the \gls{Linux} distributions, which are available for a wide variety of systems ranging from \glspl{embedded-system} and \glspl{PC} to powerful supercomputers. A typical \gls{Linux} distribution comprises a \gls{Linux} kernel, \gls{GNU} tools and libraries, additional software, documentation, a window system, a window manager, and a desktop environment. Most of the included software is \gls{FOSS} made available both as compiled binaries and in source code form, allowing modifications to the original software.%
\footnote{\cite{enwiki:Linux_distribution}}
}
}
@entry{Lagrange-point,
name = {Lagrange point},
long = {Lagrange point},
description = {are points of equilibrium for small-mass objects under the influence of two massive orbiting bodies. At the Lagrange points, the gravitational forces of the two large bodies and the centrifugal force balance each other. This can make Lagrange points an excellent location for satellites, as few \gls{orbit} corrections are needed to maintain the desired orbit. Small objects placed in orbit at Lagrange points are in equilibrium in at least two directions relative to the center of mass of the large bodies.%
\footnote{\cite{enwiki:Lagrange_point}}
}
}
@entry{GoTo,
name = {GoTo},
long = {GoTo},
description = {In amateur astronomy, ``GoTo'' refers to a type of telescope mount and related software that can automatically point a telescope at astronomical objects that the user selects. Both axes of a GoTo mount are driven by a motor and controlled by a computer. It may be either a microprocessor-based integrated controller or an external \gls{PC}. This differs from the single-axis semi-automated tracking of a traditional clock-drive equatorial mount. The user can command the mount to point the telescope to the celestial coordinates that the user inputs, or to objects in a pre-programmed database including ones from the Messier catalogue, the \gls{NGC}, and even major Solar System bodies (the Sun, Moon, and planets). Like a standard \gls{EQ} mount, \gls{EQ} GoTo mounts can track the night sky by driving the right ascension axis. Since both axes are computer controlled, GoTo technology also allows telescope manufacturers to add \gls{EQ} tracking to mechanically simpler altazimuth mounts.%
\footnote{\cite{enwiki:GoTo_telescopes}}
}
}
@entry{slew,
name = {slew},
long = {slew},
description = {The process of rotating a telescope to observe a different region of the sky.%
\footnote{\cite{enwiki:Slewing}}
}
}
@entry{toolchain,
name = {toolchain},
long = {toolchain},
description = {is a set of programming tools that is used to perform a complex software development task or to create a software product, which is typically another computer program or a set of related programs.%
\footnote{\cite{enwiki:Toolchain}}
}
}
@entry{pipeline,
name = {pipeline},
long = {pipeline},
description = {is a set of data processing elements connected in series, where the output of one element is the input of the next one. The elements of a pipeline are often executed in parallel or in time-sliced fashion.%
\footnote{\cite{enwiki:Pipeline_computing}}
}
}
@entry{embedded-system,
name = {embedded system},
long = {embedded system},
description = {is a computer system---a combination of a computer processor, computer memory, and input/output peripheral devices---that has a dedicated function within a larger mechanical or electronic system. It is embedded as part of a complete device often including electrical or electronic hardware and mechanical parts. Because an embedded system typically controls physical operations of the machine that it is embedded within, it often has real-time computing constraints. embedded systems control many devices in common use today. it was estimated that ninety-eight percent of all microprocessors manufactured were used in embedded systems.%
\footnote{\cite{enwiki:Embedded_system}}
}
}
@entry{star-trail,
name = {star trail},
long = {star trail},
description = {is a type of photograph that uses long exposure times to capture diurnal circles, the apparent motion of stars in the night sky due to Earth's rotation. A star-trail photograph shows individual stars as streaks across the image, with longer exposures yielding longer arcs.%
\footnote{\cite{enwiki:Star_trail}}
}
}
@entry{satellite-flare,
name = {satellite flare},
long = {satellite flare},
description = {is a satellite pass visible to the naked eye as a brief, bright ``flare''. It is caused by the reflection toward the Earth below of sunlight incident on satellite surfaces such as solar panels and \glspl{antenna}. Many satellites flare with magnitudes bright enough to see with the unaided eye, i.e. brighter than magnitude +6.5.%
\footnote{\cite{enwiki:Satellite_flare}}
}
}
@entry{photon,
name = {photon},
long = {photon},
description = {is an elementary particle that is a quantum of the electromagnetic field, including electromagnetic radiation such as light and radio waves, and the force carrier for the electromagnetic force. Photons are massless, so they always move at the speed of light in vacuum, 299,792,458 meters/second.%
\footnote{\cite{enwiki:Photon}}
}
}
@entry{software-repository,
name = {software repository},
long = {software repository},
description = {or repo for short, is a storage location for software packages. Often a table of contents is also stored, along with metadata. A software repository is typically managed by source control or repository managers. Package managers allow automatically installing and updating repositories (sometimes called ``packages'').%
\footnote{\cite{enwiki:Software_repository}}
}
}
@entry{upstream,
name = {upstream},
long = {upstream},
description = {refers to a direction toward the original authors or maintainers of software that is distributed as source code, and is a qualification of either a version (released by the original authors, based on their upstream source code), a bug or a patch.%
\footnote{\cite{enwiki:Upstream}}
}
}
@entry{daemon,
name = {daemon},
long = {daemon},
description = {a service in a \gls{Unix} \gls{OS}.%
\footnote{\cite{enwiki:Daemon}}
}
}
@entry{Teledyne-FLIR,
name = {Teledyne FLIR},
long = {Teledyne FLIR},
description = {a subsidiary of Teledyne Technologies, specializes in the design and production of thermal imaging cameras and sensors. The name is based on the acronym \gls{FLIR}.%
\footnote{\cite{enwiki:Teledyne_FLIR}}
}
}
@entry{Docker,
name = {Docker},
long = {Docker},
description = {is a set of \gls{PaaS} products that use \gls{OS}-level virtualization to deliver software in packages called containers.%
\footnote{\cite{enwiki:Docker}}
}
}
@entry{binning,
name = {binning},
long = {binning},
description = {is the process of combining adjacent pixels throughout an image, by summing or averaging their values, during or after readout. Charge from adjacent pixels in \gls{CCD} image sensors and some other image sensors can be combined during readout, increasing the line rate or frame rate. In the context of image processing, binning is the procedure of combining clusters of adjacent pixels, throughout an image, into single pixels. For example, in 2x2 binning, an array of 4 pixels becomes a single larger pixel, reducing the number of pixels to 1/4 and halving the image resolution in each dimension. The result can be the sum, average, median, minimum, or maximum value of the cluster. This aggregation, although associated with loss of information, reduces the amount of data to be processed, facilitating analysis. The binned image has lower resolution, but the relative noise level in each pixel is generally reduced. Also called pixel binning.%
\footnote{\cite{enwiki:Pixel_binning}}
}
}
@entry{alt-az-mount,
name = {altazimuth mount},
long = {altazimuth mount},
description = {a simple two-axis mount for supporting and rotating an instrument about two perpendicular axes --- one vertical and the other horizontal. Rotation about the vertical axis varies the azimuth (compass bearing) of the pointing direction of the instrument. Rotation about the horizontal axis varies the altitude angle (angle of elevation) of the pointing direction. These mounts are used, for example, with telescopes, cameras, and radio antennas.%
\footnote{\cite{Wiki21:altazmountwikipfreeencyc}}
}
}

View File

@ -1,439 +0,0 @@
%
% Glossary.tex
%
% SatNOGS Optical Unofficial Guide
%
% Copyright (C) 2022, Jeff Moe
%
% This document is licensed under the Creative Commons Attribution 4.0
% International Public License (CC BY-SA 4.0) by Jeff Moe.
%
%%%%%%%%%%%
% ACRONYM %
%%%%%%%%%%%
\newacronym[
description={Instrument Neutral Distributed Interface is a \gls{DCS} protocol to enable control, data acquisition and exchange among hardware devices and software front ends, emphasizing astronomical instrumentation.%
\footnote{\cite{enwiki:Instrument-Neutral-Distributed-Interface}}%
}]
{INDI}{INDI}{Instrument Neutral Distributed Interface}
\newacronym[
description={Debian Free Software Guidelines is a set of guidelines that the \gls{Debian} Project uses to determine whether a software license is a free software license, which in turn is used to determine whether a piece of software can be included in \gls{Debian}. The DFSG is part of the \gls{Debian} Social Contract.%
\footnote{\cite{enwiki:Debian-Free-Software-Guidelines}}%
}]
{DFSG}{DFSG}{Debian Free Software Guidelines}
\newacronym[
description={Flexible Image Transport System is an open standard defining a digital file format useful for storage, transmission and processing of data: formatted as multi-dimensional arrays (for example a 2D image), or tables. FITS is the most commonly used digital file format in astronomy. The FITS standard was designed specifically for astronomical data, and includes provisions such as describing photometric and spatial calibration information, together with image origin metadata.%
\footnote{\cite{Wiki22:fitswikipfreeencyc}}%
}]
{FITS}{FITS}{Flexible Image Transport System}
\newacronym[
description={Software-defined radio is a radio communication system where components that have been traditionally implemented in analog hardware (e.g. mixers, filters, amplifiers, modulators/demodulators, detectors, etc.) are instead implemented by means of software on a personal computer or embedded system. SDRs are used in \gls{SatNOGS} \glspl{ground-station}.%
\footnote{\cite{Wiki22:softwdefinradiowikipfreeencyc}}
}]
{SDR}{SDR}{Software-defined radio}
\newacronym[
description={Libre Space Foundation is a non-profit foundation registered since 2015 in Greece and the creators of the SatNOGS project.%
\footnote{\url{https://libre.space/about-us/}}
}]
{LSF}{LSF}{Libre Space Foundation}
\newacronym[
description={Radio frequency is the oscillation rate of an alternating electric current or voltage or of a magnetic, electric or electromagnetic field or mechanical system in the frequency range from around 20 \gls{kHz} to around 300 \gls{GHz}. This is roughly between the upper limit of audio frequencies and the lower limit of infrared frequencies; these are the frequencies at which energy from an oscillating current can radiate off a conductor into space as radio waves.%
\footnote{\cite{Wiki22:radiofrequwikipfreeencyc}}
}]
{RF}{RF}{radio frequency}
\newacronym[
description={Very High Frequency is the \gls{ITU} designation for the range of radio frequency electromagnetic waves (radio waves) from 30 to 300 \gls{MHz}, with corresponding wavelengths of ten meters to one meter. Frequencies immediately below VHF are denoted high frequency (HF), and the next higher frequencies are known as \gls{UHF}.%
\footnote{\cite{Wiki22:veryhighfrequwikipfreeencyc}}
}]
{VHF}{VHF}{Very High Frequency}
\newacronym[
description={Ultra High Frequency is the \gls{ITU} designation for radio frequencies in the range between 300 \gls{MHz} and 3 \gls{GHz}, also known as the decimetre band as the wavelengths range from one meter to one tenth of a meter (one decimeter). Lower frequency signals fall into the \gls{VHF} or lower bands.%
\footnote{\cite{Wiki22:ultrahighfrequwikipfreeencyc}}
}]
{UHF}{UHF}{Ultra High Frequency}
\newacronym[
description={The International Telecommunication Union is a specialized agency of the United Nations responsible for many matters related to information and communication technologies.%
\footnote{\cite{Wiki22:intertelecunionwikipfreeencyc}}
}]
{ITU}{ITU}{International Telecommunication Union}
\newacronym[
description={``GNU's Not Unix!'' is an extensive collection of \gls{free-software}, which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operating systems popularly known as \gls{Linux}. Most of GNU is licensed under the GNU Project's own \gls{GPL}. GNU is also the project within which the \gls{free-software} concept originated.%
\footnote{\cite{Wiki22:gnuwikipfreeencyc}}
}]
{GNU}{GNU}{GNU's Not Unix!}
\newacronym[
description={GNU General Public License is a series of widely used \gls{free-software} licenses that guarantee end users the four freedoms to run, study, share, and modify the software. The license was the first copyleft for general use. Historically, the GPL license family has been one of the most popular software licenses in the \gls{FLOSS} software domain.%
\footnote{\cite{Wiki22:gnugenerpublilicenwikipfreeencyc}}
}]
{GPL}{GPL}{GNU General Public License}
\newacronym[
description={Simplified General Perturbations models apply to near earth objects with an orbital period of less than 225 minutes. Simplified \glspl{perturbation} models are a set of five mathematical models (SGP, SGP4, SDP4, SGP8 and SDP8) used to calculate orbital state vectors of \glspl{satellite} and space debris relative to the Earth-centered inertial coordinate system. This set of models is often referred to collectively as SGP4 due to the frequency of use of that model particularly with \gls{TLE} sets produced by \gls{NORAD} and \gls{NASA}. These models predict the effect of \glspl{perturbation} caused by the Earth's shape, drag, radiation, and gravitation effects from other bodies such as the sun and moon. See also: \gls{SDP}.%
\footnote{\cite{enwiki:Simplified_perturbations_models}}
}]
{SGP}{SGP}{Simplified General Perturbations}
\newacronym[
description={Simplified Deep Space Perturbations models apply to objects with an orbital period greater than 225 minutes, which corresponds to an altitude of 5,877.5 km, assuming a circular orbit. See also: \gls{SGP}.%
\footnote{\cite{enwiki:Simplified_perturbations_models}}
}]
{SDP}{SDP}{Simplified Deep Space Perturbations}
\newacronym[
description={North American Aerospace Defense Command is a combined organization of the United States and Canada that provides aerospace warning, air sovereignty, and protection for Canada and the continental United States.%
\footnote{\cite{enwiki:NORAD}}
}]
{NORAD}{NORAD}{North American Aerospace Defense Command}
\newacronym[
description={is an independent agency of the US federal government responsible for the civil space program, aeronautics research, and space research.%
\footnote{\cite{enwiki:NASA}}
}]
{NASA}{NASA}{National Aeronautics and Space Administration}
\newacronym[
description={open-source hardware consists of physical artifacts of technology designed and offered by the open-design movement. Both \gls{FOSS} and open-source hardware are created by the open-source culture movement and apply a like concept to a variety of components. It is sometimes, thus, referred to as \gls{FOSH}. The term usually means that information about the hardware is easily discerned so that others can make it---coupling it closely to the maker movement. Hardware design (i.e. mechanical drawings, schematics, bills of material, PCB layout data, HDL source code and integrated circuit layout data), in addition to the software that drives the hardware, are all released under free/libre terms. The original sharer gains feedback and potentially improvements on the design from the \gls{FOSH} community. There is now significant evidence that such sharing can drive a high return on investment for the scientific community. It is not enough to merely use an open-source license; an open source product or project will follow open source principles, such as modular design and community collaboration.%
\footnote{\cite{enwiki:Open-source-hardware}}
}]
{OSH}{OSH}{open-source hardware}
\newacronym[
description={free and open-source software is a term used to refer to groups of software consisting of both \gls{free-software} and \gls{OSS} where anyone is freely licensed to use, copy, study, and change the software in any way, and the source code is openly shared so that people are encouraged to voluntarily improve the design of the software. This is in contrast to proprietary software, where the software is under restrictive copyright licensing and the source code is usually hidden from the users. FOSS maintains the software user's civil liberty rights. Other benefits of using FOSS can include decreased software costs, increased security and stability (especially in regard to malware), protecting privacy, education, and giving users more control over their own hardware. Free and open-source operating systems such as \gls{Linux} and descendants of BSD are widely utilized today, powering millions of servers, desktops, smartphones (e.g., Android), and other devices. Free-software licenses and open-source licenses are used by many software packages. The free software movement and the open-source software movement are online social movements behind widespread production and adoption of FOSS, with the former preferring to use the terms \gls{FLOSS} or free/libre.%
\footnote{\cite{enwiki:Free-and-open-source-software}}
}]
{FOSS}{FOSS}{free and open-source software}
\newacronym[
description={open-source software is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Open-source software may be developed in a collaborative public manner. Open-source software is a prominent example of open collaboration, meaning any capable user is able to participate online in development, making the number of possible contributors indefinite. The ability to examine the code facilitates public trust in the software. Open source code can be used for studying and allows capable end users to adapt software to their personal needs in a similar way user scripts and custom style sheets allow for web sites, and eventually publish the modification as a fork for users with similar preference.%
\footnote{\cite{enwiki:Open-source-software}}
}]
{OSS}{OSS}{open-source software}
%%%
% Acronyms without citations.
%%%
\newacronym[description={hertz.}]{Hz}{Hz}{hertz}
\newacronym[description={kilohertz.}]{kHz}{kHz}{kilohertz}
\newacronym[description={megahertz.}]{MHz}{MHz}{megahertz}
\newacronym[description={gigahertz.}]{GHz}{GHz}{gigahertz}
\newacronym[description={digital single-lens reflex.}]{DSLR}{DSLR}{digital single-lens reflex}
\newacronym[description={Power over Ethernet.}]{PoE}{PoE}{Power over Ethernet}
\newacronym[description={Global Navigation \Gls{satellite} System.}]{GNSS}{GNSS}{Global Navigation Satellite System}
\newacronym[description={Global Positioning System.}]{GPS}{GPS}{Global Positioning System}
\newacronym[description={Ingress Protection code 67.}]{IP67}{IP67}{Ingress Protection code 67}
\newacronym[description={Space Situational Awareness.}]{SSA}{SSA}{Space Situational Awareness}
\newacronym[description={World Coordinate System.}]{WCS}{WCS}{World Coordinate System}
\newacronym[description={Complementary metal-oxide-semiconductor (pronounced ``see-moss'').}]{CMOS}{CMOS}{Complementary metal–oxide–semiconductor}
\newacronym[description={charge-coupled device.}]{CCD}{CCD}{charge-coupled device}
\newacronym[description={Spacecraft Identification and Localization.}]{SIDLOC}{SIDLOC}{Spacecraft Identification and Localization}
\newacronym[description={Rowe-Ackermann Schmidt \Gls{astrograph}.}]{RASA}{RASA}{Rowe-Ackermann Schmidt Astrograph}
\newacronym[description={Commodity off the shelf.}]{COTS}{COTS}{Commodity off the shelf}
\newacronym[description={Free open-source hardware. See also: \gls{OSH}.}]{FOSH}{FOSH}{Free open-source hardware}
\newacronym[description={Free/libre and open-source software. See also: \gls{FOSS}.}]{FLOSS}{FLOSS}{Free/libre and open-source software}
\newacronym[description={Simple Imaging Polynomial.}]{SIP}{SIP}{Simple Imaging Polynomial}
\newacronym[description={Field of view.}]{FOV}{FOV}{Field of View}
\newacronym[description={distributed control system.}]{DCS}{DCS}{distributed control system}
\newacronym[description={Portable Network Graphics.}]{PNG}{PNG}{Portable Network Graphics}
\newacronym[description={Comma Separated Value.}]{CSV}{CSV}{Comma Separated Value}
%%%%%%%%%%%
% Acronyms with citations
%%%%%%%%%%%
\newacronym[
description={The International System of Units, known by the international abbreviation SI in all languages and sometimes pleonastically as the SI system, is the modern form of the metric system and the world's most widely used system of measurement. Established and maintained by the General Conference on Weights and Measures (CGPM), it is the only system of measurement with an official status in nearly every country in the world, employed in science, technology, industry, and everyday commerce.%
\footnote{\cite{Wiki22:intersysteunitswikipfreeencyc}}
}]
{SI}{SI}{International System of Units}
\newacronym[
description={a simple two-axis mount for supporting and rotating an instrument about two perpendicular axes -- one vertical and the other horizontal. Rotation about the vertical axis varies the azimuth (compass bearing) of the pointing direction of the instrument. Rotation about the horizontal axis varies the altitude angle (angle of elevation) of the pointing direction. These mounts are used, for example, with telescopes, cameras, and radio antennas.%
\footnote{\cite{Wiki21:altazmountwikipfreeencyc}}
}]
{Alt-Az}{Alt/Az mount}{Altazimuth mount}
\newacronym[
description={two-line element set is a data format encoding a list of orbital elements of an Earth-orbiting object for a given point in time, the epoch. Using a suitable prediction formula, the state (position and velocity) at any point in the past or future can be estimated to some accuracy. TLEs can describe the trajectories only of Earth-orbiting objects. TLEs are widely used as input for projecting the future orbital tracks of space debris for purposes of characterizing ``future debris events to support risk analysis, close approach analysis, collision avoidance maneuvering'' and forensic analysis. The format was originally intended for punched cards, encoding a set of elements on two standard 80-column cards.%
\footnote{\cite{Wiki22:twolineelemesetwikipfreeencyc}}
}]
{TLE}{TLE}{two-line element set}
%%%%%%%%%%%%
% GLOSSARY %
%%%%%%%%%%%%
%%%%%%%%%%%%
% Glossary entries without citations that are not acronyms.
%%%%%%%%%%%%
\newglossaryentry{artificial satellite}
{ name={artificial satellite},
description={is a \gls{satellite} put into \gls{orbit} by humans, not ``naturally'' occurring.}}
\newglossaryentry{libre-software}
{ name={libre software},
description={See: \gls{free-software}.}}
%%%%%%%%%%%%
% Glossary entries with footnotes that are not acronyms.
%%%%%%%%%%%%
\newglossaryentry{AstroImageJ}
{ name={AstroImageJ},
description={Application for astronomy and \gls{satellite} image analysis.%
\footnote{\url{https://www.astro.louisville.edu/software/astroimagej/}}
}}
\newglossaryentry{skymap}
{ name={skymap},
description={is part of \gls{sattools}. Visualize \glspl{satellite} on a map of the sky.%
\footnote{\url{https://github.com/cbassa/sattools/blob/master/skymap.c}}
}}
\newglossaryentry{satid}
{ name={satid},
description={is part of \gls{sattools}.%
\footnote{\url{https://github.com/cbassa/sattools/blob/master/satid.c}}
}}
\newglossaryentry{sattools}
{ name={sattools},
description={Satellite Tracking Toolkit. The main \texttt{sattools} applications are being ported to \gls{stvid} and other related \gls{Python} applications.%
\footnote{\url{https://github.com/cbassa/sattools}}
}}
\newglossaryentry{satpredict}
{ name={satpredict},
description={is a software application to compute \gls{satellite} predictions. It is used by \gls{stvid}.%
\footnote{\url{https://github.com/cbassa/satpredict}}
}}
\newglossaryentry{stvid}
{ name={stvid},
description={\Gls{satellite} tools video application for acquiring and processing sky images.%
\footnote{\url{https://github.com/cbassa/stvid}}
}}
\newglossaryentry{hough3d-code}
{ name={hough3d-code},
description={is a software application for Iterative Hough Transform for Line Detection in 3D Point Clouds.%
\footnote{\url{https://gitlab.com/pierros/hough3d-code}}
}}
\newglossaryentry{ground-station}
{ name={ground station},
description={a setup of equipment such as computers, cameras, \glspl{SDR}, antennas, and receivers, located on Earth, observing space.
}}
\newglossaryentry{SatNOGS-Optical}
{ name={SatNOGS Optical},
description={is a project by the \gls{LSF} to add optical ground stations to the SatNOGS network.%
\footnote{\url{https://satnogs.org/}}
}}
\newglossaryentry{SatNOGS DB}
{ name={SatNOGS DB},
description={is an effort to create an hollistic, unified, global database for all artificial objects in space (\glspl{satellite} and spacecrafts). Users can view and export the data, contribute to it, or connect applications using an API. It is part of the \gls{SatNOGS} project.%
\footnote{\url{https://db.satnogs.org/}}
}}
\newglossaryentry{SatNOGS}
{ name={SatNOGS},
description={Open Source global network of \gls{satellite} ground stations.%
\footnote{\url{https://satnogs.org/}}
}}
\newglossaryentry{optical-ground-station}
{ name={optical ground station},
description={a ground station using optical equipment (cameras) instead of antennas.
}}
\newglossaryentry{antenna}
{ name={antenna},
description={the interface between radio waves propagating through space and electric currents moving in metal conductors, used with a transmitter or receiver.%
\footnote{\cite{Wiki22:antenradiowikipfreeencyc}}
}}
\newglossaryentry{mast}
{ name={mast},
description={typically tall structures designed to support antennas for telecommunications and broadcasting.%
\footnote{\cite{Wiki22:radiomaststowerwikipfreeencyc}}
}}
\newglossaryentry{rotator}
{ name={rotator},
description={a device used to change the orientation, within the horizontal plane, of a directional antenna. Most antenna rotators have two parts, the rotator unit and the controller. The controller is normally placed near the equipment which the antenna is connected to, while the rotator is mounted on the antenna mast directly below the antenna. Rotators are commonly used in amateur radio.%
\footnote{\cite{Wiki22:antenrotatwikipfreeencyc}}
}}
\newglossaryentry{Debian}
{ name={Debian},
description={a \gls{GNU}/\gls{Linux} distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. Debian is the basis for many other distributions, notably Ubuntu.
Debian is one of the oldest operating systems based on the Linux kernel.%
\footnote{\cite{Wiki22:debiawikipfreeencyc}}
}}
\newglossaryentry{Linux}
{ name={Linux},
description={is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the \gls{GNU} operating system, which was written to be a free (libre) replacement for Unix.%
\footnote{\cite{Wiki22:linuxkernewikipfreeencyc}}
}}
\newglossaryentry{open-source}
{ name={Open Source},
description={is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized software development model that encourages open collaboration. A main principle of open-source software development is peer production, with products such as source code, blueprints, and documentation freely available to the public. The open-source movement in software began as a response to the limitations of proprietary code. The model is used for projects such as in open-source appropriate technology.%
\footnote{\cite{Wiki22:opensourcwikipfreeencyc}}
}}
\newglossaryentry{free-software}
{ name={Free Software},
description={or libre software, is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, not price; all users are legally free to do what they want with their copies of a free software (including profiting from them) regardless of how much is paid to obtain the program. Computer programs are deemed ``free'' if they give end-users (not just the developer) ultimate control over the software and, subsequently, over their devices.%
\footnote{\cite{Wiki22:freesoftwwikipfreeencyc}}
}}
\newglossaryentry{Matrix}
{ name={Matrix},
description={an open standard and communication protocol for real-time communication.%
\footnote{\cite{Wiki22:matriprotowikipfreeencyc}}
}}
\newglossaryentry{telescope}
{ name={telescope},
description={is an optical instrument using lenses, curved mirrors, or a combination of both to observe distant objects, or various devices used to observe distant objects by their emission, absorption, or reflection of electromagnetic radiation. The word telescope now refers to a wide range of instruments capable of detecting different regions of the electromagnetic spectrum, and in some cases other types of detectors.%
\footnote{\cite{enwiki:Telescope}}
}}
\newglossaryentry{astrograph}
{ name={astrograph},
description={is a telescope designed for the sole purpose of astrophotography. Astrographs are mostly used in wide-field astronomical surveys of the sky and for detection of objects such as asteroids, meteors, and comets.%
\footnote{\cite{enwiki:Astrograph}}
}}
\newglossaryentry{satellite}
{ name={satellite},
description={is an object intentionally placed into \gls{orbit} in outer space. Except for passive satellites, most satellites have an electricity generation system for equipment on board. Most satellites also have a method of communication to ground stations, called transponders. Many satellites use a standardized bus to save cost and work, the most popular of which is small \Glspl{cubesat}. Similar satellites can work together as a group, forming constellations.%
\footnote{\cite{enwiki:Satellite}}
}}
\newglossaryentry{cubesat}
{ name={CubeSat},
description={is a class of miniaturized \gls{satellite} based around a form factor consisting of 10 cm (3.9 in) cubes. CubeSats have a mass of no more than 2 kg (4.4 lb) per unit, and often use \gls{COTS} components for their electronics and structure. CubeSats are put into \gls{orbit} by deployers on the International Space Station, or launched as secondary payloads on a launch vehicle. More than a thousand CubeSats have been launched.%
\footnote{\cite{enwiki:CubeSat}}
}}
\newglossaryentry{orbit}
{ name={orbit},
description={is the curved trajectory of an object such as the trajectory of a planet around a star, or of a natural satellite around a planet, or of an artificial satellite around an object or position in space such as a planet, moon, asteroid, or Lagrange point. Normally, orbit refers to a regularly repeating trajectory, although it may also refer to a non-repeating trajectory. To a close approximation, planets and \glspl{satellite} follow elliptic orbits, with the center of mass being orbited at a focal point of the ellipse, as described by Kepler's laws of planetary motion. For most situations, orbital motion is adequately approximated by Newtonian mechanics, which explains gravity as a force obeying an inverse-square law. However, Albert Einstein's general theory of relativity, which accounts for gravity as due to curvature of spacetime, with orbits following geodesics, provides a more accurate calculation and understanding of the exact mechanics of orbital motion.%
\footnote{\cite{enwiki:Orbit}}
}}
\newglossaryentry{perturbation}
{ name={perturbation},
description={is the complex motion of a massive body subjected to forces other than the gravitational attraction of a single other massive body. The other forces can include a third (fourth, fifth, etc.) body, resistance, as from an atmosphere, and the off-center attraction of an oblate or otherwise misshapen body.%
\footnote{\cite{enwiki:Perturbation-astronomy}}
}}
\newglossaryentry{telemetry}
{ name={telemetry},
description={is the in situ collection of measurements or other data at remote points and their automatic transmission to receiving equipment (telecommunication) for monitoring. The word is derived from the Greek roots tele, ``remote'', and metron, ``measure''. Although the term commonly refers to wireless data transfer mechanisms (e.g., using radio, ultrasonic, or infrared systems), it also encompasses data transferred over other media such as a telephone or computer network, optical link or other wired communications like power line carriers.%
\footnote{\cite{enwiki:Telemetry}}
}}
\newglossaryentry{Grafana}
{ name={Grafana},
description={is a multi-platform \gls{open-source} analytics and interactive visualization web application. It provides charts, graphs, and alerts for the web when connected to supported data sources. Users can create complex monitoring dashboards using interactive query builders. It is used by the \gls{SatNOGS} project to visualize \gls{satellite} \gls{telemetry}.%
\footnote{\cite{enwiki:Grafana}}
}}
\newglossaryentry{Python}
{ name={Python},
description={is a high-level, interpreted, general-purpose programming language. Its design philosophy emphasizes code readability. It is often described as a ``batteries included'' language due to its comprehensive standard library. Python consistently ranks as one of the most popular programming languages. It is one of the main languages of the \gls{SatNOGS} project and \gls{stvid}.%
\footnote{\cite{enwiki:Python-language}}
}}
\newglossaryentry{C}
{ name={C},
description={is a general-purpose computer programming language. It was created in the 1970s by Dennis Ritchie, and remains very widely used and influential. By design, C's features cleanly reflect the capabilities of the targeted CPUs. It has found lasting use in operating systems, device drivers, protocol stacks, though decreasingly for application software. C is commonly used on computer architectures that range from the largest supercomputers to the smallest microcontrollers and embedded systems. C is used in the \gls{sattools} suite of applications.%
\footnote{\cite{enwiki:C-language}}
}}
\newglossaryentry{libre}
{ name={libre},
description={The English adjective free is commonly used in one of two meanings: ``at no monetary cost'' (gratis) and ``with little or no restriction'' (libre). This ambiguity of free can cause issues where the distinction is important, as it often is in dealing with laws concerning the use of information, such as copyright and patents. The terms gratis and libre may be used to categorise computer programs, according to the licenses and legal restrictions that cover them, in the free software and open source communities, as well as the broader free culture movement. For example, they are used to distinguish freeware (software gratis) from \gls{free-software} (software libre). ``Think free as in free speech, not free beer.'' -- Richard Stallman.%
\footnote{\cite{enwiki:Gratis-versus-libre}}
}}
\newglossaryentry{plate-solver}
{ name={plate solver},
description={is software implementing a technique used in astronomy and applied on celestial images. Solving an image is finding match between the imaged stars and a star catalogue. The solution is a math model describing the corresponding astronomical position of each image pixel. The position of reference catalogue stars has to be known to a high accuracy so an astrometric reference catalogue is used. The image solution contains a reference point, often the image centre, image scale, image orientation and in some cases an image distortion model. With the astrometric solution it is possible to: 1) Calculate the celestial coordinates of any object on the image. 2) Synchronize the telescope mount or satellite pointing position to the center of the image taken. Astrometric solving programs extract the star x,y positions from the celestial image, groups them in three-star triangles or four-star quads. Then it calculates for each group a geometric hash code based on the distance and/or angles between the stars in the group. It then compares the resulting hash codes with the hash codes created from catalogue stars to find a match. If it finds sufficient statistically reliable matches, it can calculate transformation factors. There are several conventions to model the transformation from image pixel location to the corresponding celestial coordinates. The simplest linear model is called the \gls{WCS}. A more advanced convention is \gls{SIP} describing the transformation in polynomials to cope with non-linear geometric distortion in the celestial image, mainly caused by the optics.%
\footnote{\cite{enwiki:Astrometric-solving}}
}}
% TO ADD
% RamSat
% Dashboard
% photon
% giza (pgplot?)
% decay
% astrometry.net
% astap
% Source Extractor
% Watney
% PiCamera
% BSD
% Unix
% SDK
% IMX174
% OpenCV
% MIPI
% f-stop etc.
% KStars
% ekos
% gphoto
% distributions
% stphot
% ASM
% allsky
% V4L
% Pi/Raspberry Pi
% appropriate technology
% Lagrange point
% LEO, GEO etc
% PCB
% HDL
% constellations
% fork
% port
% hamlib
% PTZ
% pier
% Celestron
% iOptron
% amateur radio
% ham
% star trails
% EQ equitorial
% fork software, fork mount
% firmware
% ISS
% GOTO
% sidereal
% slew
% sky chart
% PPS (gps)
% gpsd
% List of Software ?
% NTP
% IP

View File

@ -11,71 +11,65 @@
\section{Overview of Ground Stations}
\label{sec:overview-groundstations}
\index{ground station}\index{SDR}\index{antenna}\index{camera}
\index{receiver}\index{antenna}
\Glspl{ground-station} are a setup of equipment such as computers, cameras,
\glspl{SDR}, antennas, and receivers, located on Earth, observing space.
\index{camera}
\index{receiver}
\Glspl{ground-station} are a setup of equipment such as \glspl{embedded-system}, cameras,
\glspl{SDR}, \glspl{antenna}, and receivers, located on Earth, observing space.
\section{SatNOGS Ground Stations}
\index{ground station}\index{Libre Space Foundation}
\index{rotator}
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}.%
\footnote{\url{https://spacecruft.org/assets/i/spacecruft-rotator.png}}
It shows a \gls{SatNOGS} \gls{ground-station} with \gls{VHF} (right) and \gls{UHF} (left)
\glspl{antenna} on a \gls{mast} with an \gls{Alt-Az} \gls{rotator}.
\glspl{antenna} on a \gls{mast} with an \gls{alt-az-mount} \gls{rotator}.
\glspl{SDR} can be used as \gls{RF} receivers.%
\footnote{\cite{Wiki22:softwdefinradiowikipfreeencyc}}
\index{radio}\index{SDR}\index{RF}\index{VHF}\index{UHF}\index{rotator}\index{antenna}
\begin{figure}[p!]
\begin{center}
\centering
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{spacecruft-rotator.png}
\caption{SatNOGS ground station with antennas.}
\caption{\gls{SatNOGS} \gls{ground-station} with antennas.}
\label{fig:spacecruft-rotator}
\index{radio}\index{RF}\index{rotator}\index{antenna}\index{ground station}
\end{center}
\end{figure}
Ground stations can be viewed on the 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/}}
\begin{figure}[h!]
\begin{framed}
\begin{sidewaysfigure}[p!]
\begin{center}
\centering
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{satnogs-ground-station-web.png}
\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}
\index{ground station}
\end{center}
\end{framed}
\end{figure}
\end{sidewaysfigure}
\section{SatNOGS Optical Ground Stations}
\index{ground station}\index{Libre Space Foundation}
The \gls{LSF} is developing \gls{SatNOGS-Optical} to add
\glspl{optical-ground-station} to the distributed network.
\glspl{optical-ground-station} to the network.
Prototype \glspl{optical-ground-station} are being developed. An example
setup, using a Sky-Watcher EQ6-R Pro telescope tripod and tracking mount,
\index{Sky-Watcher}\index{telescope}\index{tripod}\index{mount}\index{enclosure}
can be seen in Figure
setup, using a Sky-Watcher EQ6-R Pro \gls{telescope} tripod and tracking mount,
\index{Sky-Watcher}\index{tripod}\index{mount}\index{enclosure}
\index{mount}\index{track}
can be seen in figure
\ref{fig:video-enclosure-mount-tripod}, page \pageref{fig:video-enclosure-mount-tripod}.
\begin{figure}[p!]
\begin{center}
\centering
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{video-enclosure-mount-tripod.png}
\caption{SatNOGS Optical ground station prototype.}
\caption{\gls{SatNOGS-Optical} \gls{ground-station} prototype.}
\label{fig:video-enclosure-mount-tripod}
\index{telescope}\index{tripod}\index{mount}\index{enclosure}
\index{tripod}\index{mount}\index{enclosure}
\end{center}
\end{figure}

View File

@ -14,35 +14,37 @@
\index{hardware}
Hardware considerations for a \gls{SatNOGS-Optical} \gls{ground-station}.
Main hardware components in an optical ground station:
Main hardware components in an \gls{optical-ground-station}:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{itemize}
\item Lens. \index{lens}
\item Camera. \index{camera}
\item Computer. \index{computer}
\item \Gls{embedded-system} (computer).
\end{itemize}
\end{mdframed}
\index{lens}\index{camera}\index{embedded computer}
\index{lens}\index{camera}
Other components:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{itemize}
\item Ethernet cable. \index{ethernet}
\item USB cable. \index{USB}
\item \gls{USB} cable.
\item Enclosure. \index{enclosure}
\item Power supply. \index{power supply}
\item Tripod. \index{tripod}
\item Manual or tracking mount. \index{mount}
\item Manual or tracking mount. \index{mount}\index{track}
\item Power source, grid or alternative.
\item Internet, wifi or ethernet.
\item Internet, wifi or ethernet.\index{ethernet}
\end{itemize}
\end{mdframed}
\index{ethernet}\index{USB}\index{enclosure}\index{power supply}
\index{ethernet}\index{enclosure}\index{power supply}
\index{tripod}\index{mount}\index{wifi}
\section{Camera}
\label{sec:hardware-camera}
\index{camera}
% XXX aravis
Cameras being evaluated:
@ -51,7 +53,7 @@ Cameras being evaluated:
\item The Imaging Source IMX174 based, monochrome. \index{The Imaging Source}\index{IMX174}
\item ZWO ASI174MM, monochrome. \index{ZWO ASI}
\item ZWO ASI1600MM Pro, monochrome. \index{ZWO ASI}
\item \gls{DSLR} camera. \index{DSLR}
\item \gls{DSLR} camera.
\item PiCamera. \index{PiCamera}
\end{itemize}
\end{mdframed}
@ -59,8 +61,8 @@ Cameras being evaluated:
\fbox{
\parbox{\linewidth}{
\textcolor{red}{NOTICE:} \\
ZWO/ASI cameras require proprietary non-libre software on host computer and is not \gls{DFSG} compatible.
\index{proprietary}\index{DFSG}
ZWO/ASI cameras require proprietary non-\gls{libre} software on host computer and is not \gls{DFSG} compatible.
\index{proprietary}
}
}
@ -69,36 +71,34 @@ Cameras being evaluated:
\index{lens}
For lenses, the faster the better.
F1.2 works well.
F1.8 is the maxmimum recommended.
F1.8 is the maximum recommended.
Lenses being tested:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{itemize}
\item Kowa 50mm f1.4 C-mount. \index{Kowa}
\item Canon EF 50mm f1.2 USM. \index{Canon}
\item Canon EF 50mm f1.2 \gls{USM}. \index{Canon}
\end{itemize}
\end{mdframed}
\section{Embedded Computer}
\section{Embedded System}
\label{sec:hardware-computer}
\index{hardware}\index{embedded computer}
Embedded computers, such as Raspberry Pi, that can be used.
\index{Raspberry Pi}
\index{hardware}
\Glspl{embedded-system}, such as \gls{Raspberry-Pi}, that can be used.
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [Odroid N2] --- Confirmed working. \index{Odroid}
\item [Odroid M1] --- Testing.
\item [Raspberry Pi 3] --- ? \index{Raspberry Pi}
\item [Raspberry Pi 4] --- ? \index{Raspberry Pi}
\item [Intel NUC] --- ? \index{Intel}
\item [\gls{Raspberry-Pi} 3] --- ?
\item [\gls{Raspberry-Pi} 4] --- ?
\item [Intel \gls{NUC}] --- ? \index{Intel}
\end{description}
\end{mdframed}
\subsection{Comparison}
Comparing embedded computers for \gls{SatNOGS-Optical}.
\index{embedded computer}
\subsection{Embedded Systems Comparison}
Comparing \glspl{embedded-system} for \gls{SatNOGS-Optical}.
\begin{center}
\begin{table}[ht]
@ -107,14 +107,14 @@ Comparing embedded computers for \gls{SatNOGS-Optical}.
\hspace*{-1.5cm}
\begin{tabularx}{250pt}{|c|c|c|c|c|}
\hline
Make & Model & Architecture & Max RAM & eMMC \\
Make & Model & Architecture & Max RAM & eMMC\\
\hline
Odroid & N2 & ARM64 & 4 GB & Yes \\
Odroid & N2 & ARM64 & 4 GB & Yes\\
\hline
Odroid & M1 & ARM64 & 8 GB & Yes \\
Odroid & M1 & ARM64 & 8 GB & Yes\\
\hline
\end{tabularx}
\caption{Comparison of embedded computers}
\caption{Comparison of embedded systems}
\label{compare-embed}
\end{center}
\end{mdframed}
@ -123,9 +123,9 @@ Comparing embedded computers for \gls{SatNOGS-Optical}.
\index{Odroid}\index{ARM64}\index{eMMC}
\section{Example Optical Ground Station wtih Tracking}
\section{Example Optical Ground Station with Tracking}
\label{sec:hardware-tracking-ground-station}
\index{ground station}\index{mount}\index{tracking}
\index{mount}\index{track}
\index{tripod}
This is an example of a tracking \gls{ground-station}.
@ -136,25 +136,26 @@ The full setup on tripod, can be seen in
A close up of the setup can be seen at
\ref{fig:video-enclosure-mount}, page \pageref{fig:video-enclosure-mount},
showing the Sky-Watcher telescope tracking mount,
showing the Sky-Watcher \gls{telescope} tracking mount,
a Bosch \gls{PoE} camera enclosure,
and through the glass the camera lens.
\index{Sky-Watcher}\index{telescope}\index{mount}\index{Bosch}\index{PoE}\index{camera}
\index{Sky-Watcher}\index{mount}\index{Bosch}\index{camera}
\index{lens}
In the background is a white antenna for \gls{GNSS} (\gls{GPS}) and a solar power setup.
\index{GNSS}\index{GPS}\index{solar power}
In the background is a white \gls{antenna} for \gls{GNSS} (\gls{GPS}) and a solar power setup.
\index{solar power}
\begin{figure}[p!]
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{video-enclosure-mount.png}
\caption{SatNOGS-Optical ground station prototype.}
\label{fig:video-enclosure-mount}
\index{telescope}\index{mount}\index{camera}
\index{mount}\index{camera}
\end{center}
\end{figure}
The camera lens is protected by the enclosure glass, which is \gls{IP67} (XXX) rated.
See a close up of the front of the enclosure and camera lens in figure
\index{enclosure}\index{lens}\index{camera}
\ref{fig:video-enclosure-front}, page \pageref{fig:video-enclosure-front}.
\begin{figure}[h!]
@ -171,7 +172,8 @@ 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!]
\begin{framed}
@ -203,6 +205,7 @@ These are unscrewed with a hex head tool (supplied) to open the enclosure.
\end{figure}
The enclosure is opened from the right side, as shown in figure
\index{enclosure}
\ref{fig:video-enclosure-right}, page \pageref{fig:video-enclosure-right}.
\begin{sidewaysfigure}[p!]
@ -215,6 +218,7 @@ The enclosure is opened from the right side, as shown in figure
\end{sidewaysfigure}
Inside the camera enclosure, as shown in Figure
\index{enclosure}
\ref{fig:video-enclosure-top-open}, page \pageref{fig:video-enclosure-top-open},
is:
@ -222,23 +226,23 @@ is:
\begin{itemize}
\item The Imaging Source DMX camera with Sony IMX174 \gls{CMOS}. \index{The Imaging Source}\index{IMX174}
\item Kowa 50mm f1.4 C-mount lens.\index{Kowa}
\item Odroid N2 running \gls{Debian} \gls{GNU} \gls{Linux} system. \index{Odroid}\index{Debian}\index{GNU}\index{Linux}
\item Odroid N2 running \gls{Debian} \gls{GNU} \gls{Linux} system. \index{Odroid}
\item Odroid N2 plastic enclosure, large half, hole drilled for ad-hoc mounting.
\item Blower fan on top, with power cable (came with Bosch enclosure). \index{fan}
\item Fan, maybe not so useful, with power cable (came with Bosch enclosure).
\item Camera mounting plate (came with Bosch enclosure). \index{camera}
\item Camera mounting screws, M6x25 (?).
\item Ethernet cable, internal, short white (came with Bosch enclosure). \index{ethernet}
\item \gls{PoE} ethernet cable, external, plugged into \gls{PoE} switch for data and power. \index{PoE}
\item USB 3 cable, internal, way too long, needs replacing, from Odroid to camera. XXX flat connector
\item USB 3 cable, external, from Odroid to telescope mount. XXX large rectangle connector \index{USB}
\item ``Custom'' 12V DC power cable from Bosch \gls{PoE} to Odroid.
\item Ethernet cable, internal, short white (came with Bosch enclosure). \index{ethernet}\index{Bosch}
\item \gls{PoE} ethernet cable, external, plugged into \gls{PoE} switch for data and power.
\item \gls{USB} 3 cable, internal, way too long, needs replacing, from Odroid to camera. XXX flat connector
\item \gls{USB} 3 cable, external, from Odroid to \gls{telescope} mount. XXX large rectangle connector
\item ``Custom'' 12\gls{V} \gls{DC} power cable from Bosch \gls{PoE} to Odroid.
\item Assorted nuts, bolts, and washers for an ad-hoc standoff height.
\end{itemize}
\end{mdframed}
\index{camera}\index{Kowa}\index{The Imaging Source}\index{Odroid}\index{Debian}
\index{fan}\index{power cable}\index{mount plate}\index{Bosh}
\index{ethernet cable}\index{PoE}\index{USB}\index{power cable}
\index{camera}\index{Kowa}\index{The Imaging Source}\index{Odroid}
\index{fan}\index{power cable}\index{mount plate}\index{Bosch}
\index{ethernet}\index{power cable}
\begin{sidewaysfigure}[p!]
\begin{center}
@ -250,6 +254,7 @@ is:
\end{sidewaysfigure}
The top of the enclosure shows weather protection and a sun visor.
\index{enclosure}\index{weather}
See figure \ref{fig:video-enclosure-top}, page \pageref{fig:video-enclosure-top}.
\begin{figure}[h!]
@ -266,7 +271,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
@ -281,13 +286,13 @@ Tripod and similar options include:
\begin{description}
\item [No mount] --- Quick and dirty, just hang the camera out somewhere sitting on something.
\item [Small tripod] --- There are small desk tripods than can be used with lighter
setups, such as used with a Raspberry Pi PiCamera.
setups, such as used with a \gls{Raspberry-Pi} PiCamera.\index{tripod}
\item [Photography Tripod] --- Using a common camera tripod, of which there is a wide
variety, from light to heavy.
\item [Telescope Tripod] --- Similar to photography tripods, but typically heavier weight.
\item [Telescope Portable Pier] --- Similar to a telescope tripod, but much heavier, typically
with a larger center pier post. Still movable, and folds up similar to a photography tripod.
\item [Telescope Pier] --- A wide variety, such as making a ~1.5 meter permanent cement post.
variety, from light to heavy.\index{tripod}
\item [\Gls{telescope} Tripod] --- Similar to photography tripods, but typically heavier weight.\index{tripod}
\item [\Gls{telescope} Portable Pier] --- Similar to a \gls{telescope} tripod, but much heavier, typically
with a larger center pier post. Still movable, and folds up similar to a photography tripod.\index{pier}
\item [\Gls{telescope} Pier] --- A wide variety, such as making a roughly 1.5 meter permanent cement post.
\end{description}
\end{mdframed}
\index{pier}
@ -295,7 +300,7 @@ Tripod and similar options include:
\section{Mounts}
\label{sec:hardware-mounts}
\index{mount}\index{track}
\index{mount}\index{track}\index{tripod}
For mounts, there are two main types: tracking or static.
By the latter ``static'' mounts, it is meant that the
camera, the tripod, and the mount all stay motionless.
@ -317,70 +322,69 @@ Static mounting options include:
\index{camera}\index{mount}
Tracking mount options to consider include:
\index{mount}\index{track}
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [Sky-Watcher EQ6-R Pro] --- Telescope mount using {INDI}.
\item [Celestron] --- Wide variety of telescope mounts using {INDI}.
\item [iOptron] --- Telescope mount with (untested) satellite tracking.
\item [INDI Telescope Mounts] --- A wide variety of other \gls{INDI} compatible telescope mounts.
\item [Sky-Watcher EQ6-R Pro] --- \Gls{telescope} mount using \gls{INDI}.
\item [\gls{Celestron}] --- Wide variety of \gls{telescope} mounts using \gls{INDI}.
\item [iOptron] --- \Gls{telescope} mount with (untested) satellite tracking.
\item [\gls{INDI} \Gls{telescope} Mounts] --- A wide variety of other \gls{INDI} compatible \gls{telescope} mounts.
\item [Yaesu G-5500] --- Antenna \gls{rotator}.
\item [hamlib] --- Other hamlib compatible \glspl{rotator}.
\item [FLIR PTU-5] --- High Performance Pan-Tilt Unit designed for security cameras (untested, no drivers?).
\item [Misc PTZ] --- Other security camera pan/tilt mounts.
\item [\gls{Teledyne-FLIR} PTU-5] --- High Performance \gls{PTZ} Unit designed for security cameras (untested, no drivers?).
\item [Misc \gls{PTZ}] --- Other security camera \gls{PTZ} mounts.
\end{description}
\end{mdframed}
\index{track}\index{mount}\index{Sky-Watcher}\index{INDI}\index{Celestron}
\index{Yaesu}\index{rotator}\index{hamlib}\index{FLIR}\index{pan/tilt}
\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 KStars with Ekos to control a Sky-Watcher tracking
mount.
\index{KStars}\index{Ekos}\index{Sky-Watcher}\index{stvid}\index{track}
At present, I use \gls{KStars} with Ekos to control a Sky-Watcher EQ6-R Pro
tracking mount.
\index{Ekos}\index{Sky-Watcher}\index{track}
For tracking, there a few different ways to track:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [Static] --- No tracking, just point at one place in the sky.
Generates star trails.
Generates \glspl{star-trail}.
Generates satellite trails.
\item [Sidereal tracking] --- Tracks stars.
Generates stars as points.
Generates satellite trails.
\item [Satellite tracking] --- Tracks satellites.
Generates stars as tracks.
Generates \glspl{star-trail}.
Generates satellites as points or potentially larger images
of the satellite structure.
\end{description}
\end{mdframed}
\subsection{Sidereal Tracking Mounts}
Sidereal tracking (``telescope tracking'') is what \gls{COTS} tracking ``GOTO''
\glspl{telescope} from Celestron or Sky-Watcher do, for example. They tracks
\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
astronomy communities for decades.
Within sidereal tracking mounts, there are yet more options:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [Fork] --- Fork mount.
\item [EQ fork] --- Fork on EQ mount.
\item [German EQ] --- Most common EQ mount.
\item [More] --- Endless variety of available telescope mounts.
\item [\gls{EQ} fork] --- Fork on \gls{EQ} mount.
\item [German \gls{EQ}] --- Most common \gls{EQ} mount.
\item [More] --- Endless variety of available \gls{telescope} mounts.
\end{description}
\end{mdframed}
\index{German EQ}\index{fork} %XXX
\index{German \gls{EQ}}\index{fork} %XXX
\index{mount}\index{track}
Also related to sidereal tracking is lunar and planetary
@ -388,12 +392,13 @@ 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 KStars,
start stvid. Then stop stvid, move to new location using KStars,
start stvid.
\index{track}\index{KStars}\index{stvid}
At present, my practice is to use a sidereal mount, point at a location with \gls{KStars},
start \gls{stvid}. Then stop \gls{stvid}, move to new location using \gls{KStars},
start \gls{stvid}.
\index{track}\index{camera}
See Software section XXX for information on using tracking mounts.
See Software section \ref{sec:software-tracking}, \pageref{sec:software-tracking}
for information on using tracking mounts.
\subsection{Satellite Tracking Mounts}
\index{track}\index{mount}
@ -405,38 +410,37 @@ 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 [TLE] --- Need to know the \glspl{satellite}' orbit (accurately!).
\item [\gls{TLE}] --- Need to know the \glspl{satellite}' orbit (accurately!).
\item [Variable speed tracking] --- \Glspl{satellite} are moving at different
speeds above, the mount needs to be capable of that.
\item [Human guided] --- Some skilled amateurs track by hand.
\item [Alignment] --- On top of all the gear and software needed,
the equipment needs to be accurately aligned.
\end{description}
\end{mdframed}
\index{GNSS}\index{TLE}
\index{alignment}\index{track}
Most tracking equipment for \glspl{telescope},
cameras, and antennas usually has just a few speeds, such as a slewing speed
cameras, and \glspl{antenna} usually has just a few speeds, such as a \gls{slew} speed
and a sidereal star tracking speed. Sometimes there will be a few steps
of these speeds (e.g. slew speeds from 1-9), but not the finely tuned tracking
speeds needed to track a satellite. Oftentimes the telescope tracking maximum
speed will be too slow for satellite tracks.
of these speeds (e.g. \gls{slew} speeds from 1-9), but not the finely tuned tracking
speeds needed to track a satellite. Oftentimes the \gls{telescope} tracking maximum
speed will be too slow for satellite tracking.
\index{track}
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 star trails. The speed the mount moves needs to be calculated
based upon a recent orbit calcuation, such as from a \gls{TLE}.
and leave \glspl{star-trail}. The speed the mount moves needs to be calculated
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 ISS and astronauts doing
space walks, using hand guided telescopes with low cost \gls{CCD} imagers.
\index{CCD}\index{ISS}
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 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}
@ -444,8 +448,9 @@ is likely the best option, if a satellite tracking mount is wanted.
\section{Future Designs}
\label{sec:hardware-future}
\index{RASA}\index{telescope}\index{astrograph}
\index{rotator}\index{antenna}
\index{track}
\index{camera}
There is some discussion of using much larger ``lenses'', such as
a \gls{RASA} ``\gls{telescope}'' (See: \gls{astrograph}).

View File

@ -11,8 +11,7 @@
\section{Overview of Satellite Identification}
\label{sec:overview-identify}
\index{identify}\index{SIDLOC}\index{orbit}
\index{SSA}
\index{identify}\index{locate}
The \gls{LSF} is developing a project called \gls{SIDLOC},
for \gls{satellite} identification and localization. With the
@ -22,11 +21,11 @@ for \gls{SSA}.
\section{\texttt{stvid}'s \texttt{process.py} for Identification}
\label{sec:process-identify}
\index{identify}\index{FITS}\index{stvid}\index{process}
\index{identify}\index{process}
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,17 +35,15 @@ My fork is here:
\section{Identifying Satellites with \texttt{satid}}
\index{satid}\index{sattools}\index{identify}
\index{C}\index{Giza}
\index{identify}\index{Giza}
The deprecated C application, \texttt{satid} from the \texttt{\gls{sattools}}
The deprecated \gls{C} application, \texttt{satid} from the \texttt{\gls{sattools}}
package can help identify \glspl{satellite}.
See figure \ref{fig:satid-giza-3}, page \pageref{fig:satid-giza-3}
for output from my Giza port of \texttt{\gls{satid}}.%
\footnote{\url{https://spacecruft.org/spacecruft/sattools/media/branch/spacecruft/img/satid-giza-3.png}}
\index{Giza}
* \url{https://github.com/cbassa/sattools}
My fork is here:
@ -57,28 +54,183 @@ 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.}
\index{satid}\index{sattools}
\label{fig:satid-giza-3}
\end{center}
\end{figure}
\section{Identification with stvid}
\index{identify}\index{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}
for an example of from \gls{stvid} automated processing of an input \gls{FITS}
file. The output image is in \gls{PNG} format.
\gls{stvid} will also output other files with results, such as \gls{CSV} files.
\index{stvid}\index{FITS}\index{PNG}\index{CSV}\index{process}
\index{process}
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{stvid-process-0.png}
\caption{Satellite images processed by stvid.}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{stvid/2022-08-23T11:21:34.290.fits.png}
\caption{Example satellite image processed by \texttt{stvid}.}
\label{fig:stvid-process}
\index{stvid}\index{process}
\index{process}
\end{sidewaysfigure}
\section{Review of Images}
See the following subsections for example output from \gls{stvid}.
\subsection{Unidentified Satellites}
\index{unidentified}\index{identify}
When \gls{stvid} runs the \texttt{process.py} (or new) script and
it encounters a satellite it cannot identify, it gives it the
\gls{NORAD-ID} \texttt{90000}. If more unidentified satellites are
detected in the same image, each detection is incremented by one.
See figure \ref{fig:stvid-unidentified}, page \pageref{fig:stvid-unidentified},
for an example image, with three unidentified satellites.
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{\gls{stvid}} labelling three identified satellites
with \glspl{NORAD-ID} \texttt{90000}, \texttt{90001}, \texttt{90002}.
\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.fits.png}
\caption{stvid processed image, with three unidentified satellites.}
\label{fig:stvid-unidentified}
\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_90000_unid.png}
\caption{stvid processed image, with three unidentified satellites, the first labeled with NORAD ID \texttt{90000}.}
\label{fig:stvid-unidentified-90000}
\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}.}
\label{fig:stvid-unidentified-90001}
\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}.}
\label{fig:stvid-unidentified-90002}
\index{unidentified}
\end{sidewaysfigure}
\subsection{Airplanes}
\index{airplane}\index{noise}
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
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 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}
\caption{Airplane, bold left side, in stvid processed image.}
\label{fig:stvid-airplane1}
\index{airplane}
\end{sidewaysfigure}
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{airplane/2022-08-24T03:05:30.370.fits.png}
\caption{Airplane, blinking, in stvid processed image.}
\label{fig:stvid-airplane2}
\index{airplane}
\end{sidewaysfigure}
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{airplane/2022-08-24T09:18:02.277.fits.png}
\caption{Airplane, two solid lights plus blinking, in stvid processed image.}
\label{fig:stvid-airplane3}
\index{airplane}
\end{sidewaysfigure}
\subsection{Configuration and Setup Errors in Images}
\index{process}\index{identify}
See figure \ref{fig:stvid-misconfigured}, page \pageref{fig:stvid-misconfigured},
for an example of an image processed by a mis-configured system.
As can be seen, the plotted lines are offset from the actual images of satellites.
This, and similar issues, can be addressed by checking:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{itemize}
\item Recent \glspl{TLE} on both the processing workstation and the
\gls{embedded-system}.
\item Correct, \gls{NTP} (or better) synchronized time on on the processing
workstation and the \gls{embedded-system}.
\item Correct latitude, longitude, and altitude are set in configuration
files, typically based on \gls{GNSS} readings.
\index{latitude}\index{longitude}\index{altitude}
\end{itemize}
\end{mdframed}
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{stvid/2022-08-25T03\:40\:03.853.fits.png}
\caption{\texttt{stvid} processed image, showing mis-configured/setup system.}
\label{fig:stvid-misconfigured}
\index{airplane}
\end{sidewaysfigure}
\subsection{Image Processed with Bad TLE}
In figure \ref{fig:stvid-process-bad-tle}, page \pageref{fig:stvid-process-bad-tle},
can be seen a \gls{FITS} file that has been processed by stvid, but with \glspl{TLE}
that are around two days old. As can be seen, the satellites don't quite line up
where they should.
\begin{sidewaysfigure}[p!]
\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 \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}
\subsection{Light Outside FoV Artifact}
\index{acquire}
See figured \ref{fig:stvid-light-fov}, page \pageref{fig:stvid-light-fov},
for an example of an artifact, visible crossing the left and center,
generated by light outside the \gls{FoV}, in
this case the moon!%
\footnote{Pierros in SatNOGS Optical Matrix}
This is also an example image that detects classified satellites.
This is how the main upstream \texttt{\gls{stvid}} works.
\begin{sidewaysfigure}[p!]
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{stvid/stvid-light-fov.png}
\caption{\texttt{stvid} processed image, with classified satellites and light artifact.}
\label{fig:stvid-light-fov}
\end{sidewaysfigure}

View File

@ -11,7 +11,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.
\index{ground station}
% https://network.satnogs.org/
\begin{figure}[h!]
@ -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}
\index{SatNOGS}
\end{framed}
\end{figure}
@ -28,42 +26,42 @@ The SatNOGS Optical Unofficial Guide documents how to set up and run an
\section{Unofficial Guide Overview}
First, an overview of the this text, then the \gls{LSF}
and some of it's key projects, such as the \gls{SatNOGS} network.
A cursory review of \glspl{satellite} and existing \gls{RF} ground stations
A cursory review of \glspl{satellite} and existing \gls{RF} \glspl{ground-station}
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 (idk!).
what to do with the data.
The chapters that follow are listed below.
\index{RF}
% Perhaps more LaTeXy ref XXX
\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 [Toolchain and Process] --- The big picture of what
hardware and software is needed to set up an optical ground station
for use on the distributed network.
\item [\Glspl{ground-station}] --- 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 \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.
\item [Acquire] --- Convert photons to bits. Pointing a camera at the
sky works.
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.
\item [Detect] --- The plate solver says where the photo is,
now detect if are there moving tracks that aren't stars that could
the photo. \Glspl{plate-solver} reviewed.
\item [Detect] --- The \gls{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}.
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}
\index{ground station}\index{process}\index{hardware}\index{software}
\index{acquire}\index{solve}\index{detect}\index{identify}\index{upload}
\index{process}\index{hardware}\index{software}
\index{acquire}\index{detect}\index{identify}\index{upload}
\index{support}
@ -71,7 +69,6 @@ The chapters that follow are listed below.
The \gls{LSF} supports
``free and accessible space for all, creating \gls{open-source} space technologies.''%
\footnote{\url{https://libre.space}}
\index{Open Source}
\begin{figure}[h!]
\begin{framed}
@ -79,7 +76,6 @@ The \gls{LSF} supports
\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}
\index{Libre Space Foundation}
\end{framed}
\end{figure}
@ -97,8 +93,7 @@ Select \gls{LSF} projects:
\section{SatNOGS Network}
SatNOGS is the \gls{LSF}'s global network of \gls{satellite} ground stations.
\index{ground station}
\gls{SatNOGS} is the \gls{LSF}'s global network of \gls{satellite} ground stations.
\begin{figure}[h!]
\begin{framed}
@ -106,20 +101,17 @@ 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}
\index{SatNOGS}
\end{framed}
\end{figure}
\section{Network Status}
\index{RF}
The SatNOGS \gls{RF} network has been running successfully for years.
Adding an optical network is a new development. At present there
\section{Optical Network Status}
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,
some is being ported from \gls{C} to \gls{Python}, and other parts remain to be done.
There is software available for acquiring optical data of \glspl{satellite}.
There is no facility at present for pushing data back to the network.
\index{C}\index{Python}

View File

@ -1,6 +1,29 @@
# Makefile
all:
xelatex \
-halt-on-error \
-shell-escape \
-interaction=nonstopmode \
-no-pdf \
SNOUG.tex
biber SNOUG
#makeglossaries SNOUG
bib2gls SNOUG
xelatex \
-halt-on-error \
-shell-escape \
-interaction=nonstopmode \
-no-pdf \
SNOUG.tex
bib2gls SNOUG
xelatex \
-halt-on-error \
-shell-escape \
-interaction=nonstopmode \
-no-pdf \
SNOUG.tex
bib2gls SNOUG
xelatex \
-halt-on-error \
-shell-escape \
@ -21,7 +44,6 @@ all:
-no-pdf \
SNOUG.tex
makeindex SNOUG
biber SNOUG
xelatex \
-halt-on-error \
-shell-escape \
@ -34,9 +56,18 @@ all:
-interaction=nonstopmode \
SNOUG.tex
cover:
xelatex \
-halt-on-error \
-shell-escape \
-interaction=nonstopmode \
Cover.tex
clean:
rm -fr _minted-*
rm -f *.aux
rm -f *.bib.bak
rm -f *.bib.sav.tmp
rm -f *.bbl
rm -f *.bcf
rm -f *.blg

View File

@ -334,4 +334,293 @@
year = {2021},
}
@Misc{enwiki:OpenCV,
author = {{Wikipedia contributors}},
title = {OpenCV --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=OpenCV&oldid=1106133881}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:19:29},
year = {2022},
}
@Misc{enwiki:KStars,
author = {{Wikipedia contributors}},
title = {KStars --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=KStars&oldid=1076667045}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:22:15},
year = {2022},
}
@Misc{enwiki:GPhoto,
author = {{Wikipedia contributors}},
title = {GPhoto --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=GPhoto&oldid=1097546275}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:24:39},
year = {2022},
}
@Misc{enwiki:Raspberry_Pi,
author = {{Wikipedia contributors}},
date = {2022},
title = {Raspberry Pi --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Raspberry_Pi&oldid=1107949674}},
note = {[Online; accessed 2-September-2022]},
creationdate = {2022-09-02T16:27:31},
modificationdate = {2022-09-02T16:28:44},
}
@Misc{enwiki:Celestron,
author = {{Wikipedia contributors}},
title = {Celestron --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Celestron&oldid=1091418493}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:30:20},
year = {2022},
}
@Misc{enwiki:Amateur_radio,
author = {{Wikipedia contributors}},
title = {Amateur radio --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Amateur_radio&oldid=1106068703}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:32:33},
year = {2022},
}
@Misc{enwiki:Firmware,
author = {{Wikipedia contributors}},
title = {Firmware --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Firmware&oldid=1099439511}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:34:39},
year = {2022},
}
@Misc{enwiki:Gpsd,
author = {{Wikipedia contributors}},
title = {Gpsd --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Gpsd&oldid=1076207218}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:37:29},
year = {2022},
}
@Misc{enwiki:Star_catalogue,
author = {{Wikipedia contributors}},
title = {Star catalogue --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Star_catalogue&oldid=1107326057}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:41:17},
year = {2022},
}
@Misc{enwiki:Star_chart,
author = {{Wikipedia contributors}},
title = {Star chart --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Star_chart&oldid=1106250278}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:42:48},
year = {2022},
}
@Misc{enwiki:Astronomical_catalog,
author = {{Wikipedia contributors}},
title = {Astronomical catalog --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Astronomical_catalog&oldid=1035999452}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:45:11},
year = {2021},
}
@Misc{enwiki:Unix,
author = {{Wikipedia contributors}},
title = {Unix --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Unix&oldid=1105826457}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:47:07},
year = {2022},
}
@Misc{enwiki:Appropriate_technology,
author = {{Wikipedia contributors}},
title = {Appropriate technology --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Appropriate_technology&oldid=1104787534}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:50:21},
year = {2022},
}
@Misc{enwiki:Linux_distribution,
author = {{Wikipedia contributors}},
title = {Linux distribution --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Linux_distribution&oldid=1107830099}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:53:59},
year = {2022},
}
@Misc{enwiki:Lagrange_point,
author = {{Wikipedia contributors}},
title = {Lagrange point --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Lagrange_point&oldid=1102894784}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:56:19},
year = {2022},
}
@Misc{enwiki:GoTo_telescopes,
author = {{Wikipedia contributors}},
title = {GoTo (telescopes) --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=GoTo_(telescopes)&oldid=841595201}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T16:59:02},
year = {2018},
}
@Misc{enwiki:Slewing,
author = {{Wikipedia contributors}},
title = {Slewing --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Slewing&oldid=1061997651}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T17:02:10},
year = {2021},
}
@Misc{enwiki:Toolchain,
author = {{Wikipedia contributors}},
title = {Toolchain --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Toolchain&oldid=1094527160}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T17:11:55},
year = {2022},
}
@Misc{enwiki:Pipeline_computing,
author = {{Wikipedia contributors}},
title = {Pipeline (computing) --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Pipeline_(computing)&oldid=1096885455}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T17:14:10},
year = {2022},
}
@Misc{enwiki:Embedded_system,
author = {{Wikipedia contributors}},
title = {Embedded system --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Embedded_system&oldid=1106874216}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T17:19:17},
year = {2022},
}
@Misc{enwiki:Star_trail,
author = {{Wikipedia contributors}},
title = {Star trail --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Star_trail&oldid=1075094531}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T17:30:14},
year = {2022},
}
@Misc{enwiki:Satellite_flare,
author = {{Wikipedia contributors}},
title = {Satellite flare --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Satellite_flare&oldid=1104678552}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T17:34:00},
year = {2022},
}
@Misc{enwiki:Photon,
author = {{Wikipedia contributors}},
title = {Photon --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Photon&oldid=1104709214}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T17:43:30},
year = {2022},
}
@Misc{enwiki:Software_repository,
author = {{Wikipedia contributors}},
title = {Software repository --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Software_repository&oldid=1081326130}},
note = {[Online; accessed 2-September-2022]},
modificationdate = {2022-09-02T17:55:58},
year = {2022},
}
@Misc{enwiki:Upstream,
author = {{Wikipedia contributors}},
title = {Upstream (software development) --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Upstream_(software_development)&oldid=1066370459}},
note = {[Online; accessed 3-September-2022]},
modificationdate = {2022-09-02T18:05:06},
year = {2022},
}
@Misc{enwiki:Daemon,
author = {{Wikipedia contributors}},
title = {Daimon (disambiguation) --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Daimon_(disambiguation)&oldid=1069803376}},
note = {[Online; accessed 3-September-2022]},
modificationdate = {2022-09-02T18:16:56},
year = {2022},
}
@Misc{enwiki:Operating_system,
author = {{Wikipedia contributors}},
title = {Operating system --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Operating_system&oldid=1104687084}},
note = {[Online; accessed 3-September-2022]},
modificationdate = {2022-09-02T18:19:06},
year = {2022},
}
@Misc{enwiki:Teledyne_FLIR,
author = {{Wikipedia contributors}},
title = {Teledyne FLIR --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Teledyne_FLIR&oldid=1102704879}},
note = {[Online; accessed 3-September-2022]},
modificationdate = {2022-09-02T22:23:54},
year = {2022},
}
@Misc{enwiki:Ultrasonic_motor,
author = {{Wikipedia contributors}},
title = {Ultrasonic motor --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Ultrasonic_motor&oldid=1099892445}},
note = {[Online; accessed 4-September-2022]},
modificationdate = {2022-09-03T19:30:07},
year = {2022},
}
@Misc{enwiki:Satellite_Catalog_Number,
author = {{Wikipedia contributors}},
title = {Satellite Catalog Number --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Satellite_Catalog_Number&oldid=1100318368}},
note = {[Online; accessed 4-September-2022]},
modificationdate = {2022-09-03T20:57:59},
year = {2022},
}
@Misc{enwiki:Docker,
author = {{Wikipedia contributors}},
title = {Docker (software) --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Docker_(software)&oldid=1108127182}},
note = {[Online; accessed 4-September-2022]},
modificationdate = {2022-09-04T17:25:07},
year = {2022},
}
@Misc{enwiki:Pixel_binning,
author = {{Wikipedia contributors}},
title = {Pixel binning --- {Wikipedia}{,} The Free Encyclopedia},
howpublished = {\url{https://en.wikipedia.org/w/index.php?title=Pixel_binning&oldid=1085651660}},
note = {[Online; accessed 4-September-2022]},
modificationdate = {2022-09-04T17:53:02},
year = {2022},
}
@Comment{jabref-meta: databaseType:biblatex;}

View File

@ -79,7 +79,6 @@ leftmargin=1cm,rightmargin=1cm
\setmonofont{LMMono12-Regular}
% Linux Biolinum
\setsansfont[Ligatures=TeX]{Linux Biolinum O}
%%% END PREAMBLE FONTS %%%
%%% MISC %%%
@ -216,11 +215,137 @@ leftmargin=1cm,rightmargin=1cm
%%% END INDEX %%%
%%% GLOSSARY %%%
\usepackage[toc,indexcrossrefs,translate=babel,nopostdot=true,nonumberlist,nogroupskip]{glossaries-extra}
\GlsXtrLoadResources
\setabbreviationstyle[acronym]{short-long}
\loadglsentries{Glossary}
\makenoidxglossaries
\let\printindex\relax % or conflicts with memoir
\usepackage[
automake, % Automatically create glossary files when compiling
acronyms, % Allow the use of acronyms as a separate glossary type
abbreviations, % Allow the use of abbreviations as a separate glossary type
nonumberlist,record=hybrid,index,toc,indexcrossrefs,translate=babel, % TODO comment what each of these does
]{glossaries-extra}
%%% Multiple Columns (Abbreviations)
\usepackage{glossary-mcols}
\renewcommand{\abbreviationsname}{List of Abbreviations} % Change the default name of the abbreviations
\makeindex
% Specify the in-text glossary abbreviation style for each glossary type
\setabbreviationstyle{long-short}
\setabbreviationstyle[acronym]{long-short} % The first time an acronym is used in text, display it as <long> (<short>), e.g. "Network Time Protocol (NTP)"
% Load all glossary type entries from separate .bib files. Acronyms and abbreviations are input using @dual<acronym/abbreviation> entries which the code below duplicates and puts into 2 separate glossary types: 1) acronym/abbreviation and 2) main. The former populate the acronyms/abbreviations and the latter populates the main glossary.
% Main glossary
\GlsXtrLoadResources[
src={Glossary.bib},
sort={en-US}, % Default sorting
type=main, % Glossary type of main (primary) entries (e.g. @entry)
dual-sort={combine}, % TODO this should be working but it's not >_< it also doesn't work in \GlsXtrLoadResources for the main glossary where it might need to go instead
dual-sort-field={sort}, % TODO not working
]
% Acronyms
\GlsXtrLoadResources[
src={Acronyms.bib}, % Source bib file containing acronym entries
sort={letter-nocase}, % Default sorting
type=acronym, % Glossary type of main (primary) entries (e.g. @acronym)
dual-type=main, % Glossary type of dual (secondary) entries, dual entries are only created with @dual* entries in the .bib file
dual-abbrv-map={{long}, {name}}, % Map the long field in the @dualacronym entry to the name field used in the main glossary
abbreviation-sort-fallback={name}, % Sort entries by the long field (check this in .glstex by looking at the dual entry sort= values)
dual-sort={combine}, % TODO this should be working but it's not >_< it also doesn't work in \GlsXtrLoadResources for the main glossary where it might need to go instead
dual-sort-field={sort}, % TODO not working
]
% Abbreviations
\GlsXtrLoadResources[
src={Abbreviations.bib}, % Source bib file containing abbreviations entries
sort={letter-nocase}, % Default sorting
type=abbreviations, % Glossary type of main (primary) entries (e.g. @abbreviation)
dual-type=main, % Glossary type of dual (secondary) entries, dual entries are only created with @dual* entries in the .bib file
dual-abbrv-map={{long}, {name}}, % Map the long field in the @dualabbreviation entry to the name field used in the main glossary
abbreviation-sort-fallback={name}, % Sort entries by the long field (check this in .glstex by looking at the dual entry sort= values)
dual-sort={combine}, % TODO this should be working but it's not >_< it also doesn't work in \GlsXtrLoadResources for the main glossary where it might need to go instead
dual-sort-field={sort}, % TODO not working
]
% Another approach that uses just the normal @abbreviation and @acronym entries but doesn't format entries in the main glossary correctly
%\GlsXtrLoadResources[
% src={Glossary.bib},
% sort={en-US}, % Default sorting
% type=main, % Glossary type of main (primary) entries (e.g. @entry)
%]
%% Acronyms
%\GlsXtrLoadResources[
% src={Acronyms.bib}, % Source bib file containing acronym entries
% sort={letter-nocase}, % Default sorting
% type=acronym, % Glossary type of main (primary) entries (e.g. @acronym)
% secondary={en-US:long:main},
%]
%% Abbreviations
%\GlsXtrLoadResources[
% src={Abbreviations.bib}, % Source bib file containing abbreviations entries
% sort={letter-nocase}, % Default sorting
% type=abbreviations, % Glossary type of main (primary) entries (e.g. @abbreviation)
% secondary={en-US:long:main},
%]
\GlsXtrEnableIndexFormatOverride
\glsdefpostname{acronym}{ (\glsentryshort{\glscurrententrylabel})} % Add " (<short>) to acronym entries in the main glossary
\glsdefpostname{abbreviation}{ (\glsentryshort{\glscurrententrylabel})} % Add " (<short>) to abbreviation entries in the main glossary
% Define a new glossary style that outputs short and long fields from glossary entries in a description list environment
\newglossarystyle{shortlongglossary}{%
% Put glossary entries into a description environment
\renewenvironment{theglossary}{
\begin{multicols}{2}
\begin{description}
}{
\end{description}
\end{multicols}
}%
% Define which fields are output for each glossary entry
\renewcommand*{\glossentry}[2]{%
\item[\glstarget{##1}{\glsentryshort{##1}}] \glsentrylong{##1} % Each glossary entry is output as a description item in the format: \item[<short>] <long>
}%
}
% Adds acronym to index like:
% World Coordinate System (WCS), 67, 116
% Adds glossary to index like:
% photon, xii
\renewcommand*{\glsxtrautoindexentry}[1]{%
\ifglshasshort{#1}%
{\string\glsentrylong{#1} (\glsentryshort{#1})}%
{\string\glsentrylong{#1}}%
}
% use long form for the sort value in the index, if provided:
\renewcommand*{\glsxtrautoindexassignsort}[2]{%
\ifglshaslong{#2}%
{\glsletentryfield{#1}{#2}{long}}%
{\glsletentryfield{#1}{#2}{sort}}%
}
% OK, ACRONYM shows description, then short.
% Showshort first better.
% Shows both when desc=long, only one needed...
% OK, but me. XXX borken?
%\glsdefpostname{acronym}{TEST} % This outputs something after the name, e.g. NTPTEST
%\renewcommand*{\glsxtrpostdescacronym}{\glsentrylong{\glscurrententrylabel}} % This outputs something after the description
% crossref for see:
\renewcommand*{\glsxtrpostdescgeneral}{%
\ifglshasfield{see}{\glscurrententrylabel}
{, \glsxtrusesee{\glscurrententrylabel}}%
{}%
}
% Index glossary, abbreviations, acronyms
\glssetcategoryattribute{general}{dualindex}{hyperpage}
\glssetcategoryattribute{abbreviation}{dualindex}{hyperpage}
\glssetcategoryattribute{acronym}{dualindex}{hyperpage}
% First letter upper
%\glssetcategoryattribute{general}{glossname}{firstuc}
%%% END GLOSSARY %%%
%%% DEBUG %%%
@ -333,6 +458,10 @@ leftmargin=1cm,rightmargin=1cm
%\include{Acknowledgements}
%%% END ACKNOWLEDGEMENTS PAGE %%%
%%% ACRONYM %%%
\printunsrtglossary[type={acronym}, style={shortlongglossary}]
%%% END ACRONYM %%%
% Format:
% \chapterconf{Name of file to include}{Title of Chapter}
\chapterconf{Introduction}{Introduction}{SatNOGS Optical}
@ -361,11 +490,10 @@ leftmargin=1cm,rightmargin=1cm
\chapterconf{Solve}{Plate Solvers}{Place from Pixels}
\chapterconf{Detect}{Detect}{Find Satellites}
\chapterconf{Identify}{Identify}{More Than Just Old Rocket Bodies}
\chapterconf{Upload}{Upload}{Send Data to the SatNOGS Network}
\chapterconf{Upload}{Upload \& Share}{Send Data to the SatNOGS Network}
\chapterconf{Support}{Support}{Help!}
\chapterconf{Contact}{Contact}{Email, Chat, Forum}
%% END MAINMATTER CHAPTERS %%%
% Hardware, Software, Acquire, Plate Solver, Detect, Identify
%%% END MAINMATTER %%%
@ -377,11 +505,12 @@ leftmargin=1cm,rightmargin=1cm
%\chapterconf{Appendix}{Appendix}{Even More for Free}
%%% END APPENDIX %%%
%%% ABBREVIATIONS %%%
\printunsrtglossary[type={abbreviations}, style={shortlongglossary}]
%%% END ABBREVIATIONS %%%
%%% GLOSSARY %%%
% Set font for glossary word.
%\renewcommand*{\glsnamefont}[1]{\fontspec{GemunuLibre-Bold.otf}{#1}}
\clearpage
\printnoidxglossaries
\printunsrtglossary[type={main}, style={indexgroup}]
%%% END GLOSSARY %%%
%%% BIBLIOGRAPHY %%%

View File

@ -12,16 +12,15 @@
\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.
\index{hardware}\index{software}\index{ground station}
software to build an operating optical \gls{ground-station}.
\index{hardware}\index{software}
\section{Toolchain}
\label{sec:toolchain}
\index{toolchain}
See below for a \gls{SatNOGS-Optical} Process Overview.%
\footnote{\url{https://spacecruft.org/spacecruft/SNOPO}}
@ -29,7 +28,7 @@ See figure \ref{fig:snopo}, page \pageref{fig:snopo}, described below.
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [Hardware] --- Hardware, such as cameras and computers, is to be selected and set up.
\item [Hardware] --- Hardware, such as cameras and \glspl{embedded-system}, is to be selected and set up.
\item [Software] --- The best currently available software is to be downloaded, installed, and configured.
\item [Acquire] --- Data samples, typically in the form of \gls{FITS} file photographs, need to be acquired by running a camera outside at night taking pictures of the sky.
\item [\Gls{plate-solver}] --- Acquired data samples in \gls{FITS} files need to be processed by a \gls{plate-solver}. See section \ref{sec:plate-solver}, page \pageref{sec:plate-solver}.
@ -38,11 +37,12 @@ See figure \ref{fig:snopo}, page \pageref{fig:snopo}, described below.
\end{description}
\end{mdframed}
\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}
@ -55,8 +55,9 @@ See figure \ref{fig:snopo}, page \pageref{fig:snopo}, described below.
Discussed in this section are some of the hardware options to be
explored. More explicit instructions of a particular hardware installation
can be see in section \ref{sec:hardware-overview}, page \pageref{sec:hardware-overview}.
Discussed below are camera options, for details on computers and other parts,
Discussed below are camera options, for details on \glspl{embedded-system} and other parts,
also see hardware in section \ref{sec:hardware-overview}, page \pageref{sec:hardware-overview}
\index{camera}
For the purposes here, there are three main categories of hardware. Depending which
category of equipment is selected, it impacts everything else, such as the
@ -74,7 +75,7 @@ software used. Main categories:
Different types of equipment can be used in different categories.
Some can be used in multiple setups, most just in one.
If available, using motion video cameras will work best for
detecting \glspl{satellite} with the developing \gls{SatNOGS} toolchain.
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]
@ -82,24 +83,22 @@ Examples of motion video camera sources that could be used:
\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 SDK. Currently in prototype development.
\item [UVC/Video4Linux2] --- ``Any'' video camera that works with the \gls{Linux} kernel.
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
satellites, however, as most are designed for brighter environments.
\item [OpenCV] --- Devices that work with OpenCV can be used, same as UVC.
\item [\gls{OpenCV}] --- cameras that work with \gls{OpenCV} can be used, same as \gls{UVC}.
To work well, they need to be sensitive.
\item [Raspberry Pi] --- The PiCamera can be used. A good lower cost option.
Recommended. Many non-Raspberry Pi devices, such as Odroid are also compatible with the Pi
MIPI interface.
\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.\index{PiCamera}\index{Odroid}
\end{description}
\end{mdframed}
\index{The Imaging Source}\index{ZWO ASI}\index{UVC}\index{V4L2}\index{OpenCV}
\index{Raspberry Pi}\index{Odroid}\index{MIPI}
\index{The Imaging Source}\index{ZWO ASI}
Still cameras can also be used productively. The current \gls{Python} toolchain
Still cameras can also be used productively. The current \gls{Python} \gls{toolchain}
is in very early development and not completely usable yet.
\index{Python}
See the list below for still camera options:
@ -107,7 +106,7 @@ See the list below for still camera options:
\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.
@ -116,17 +115,17 @@ See the list below for still camera options:
Cannot be used directly with the current developing \gls{SatNOGS} toolchain.
It is not seen as the future path forward as it isn't well optimized for
\gls{SatNOGS-Optical} usage. That said, it is very useful at present for
running a tracking mount with KStars and Ekos, for example,
running a tracking mount with \gls{KStars} and Ekos, for example,
in lieu of a better option. Camera software in the \gls{INDI} platform typically
produce image \gls{FITS} files.
\item [gphoto] --- The \gls{Linux} kernel recognizes many cameras that can be
used with gphoto tools and drivers, available in \gls{Debian}.
\item [\gls{gPhoto}] --- The \gls{Linux} kernel recognizes many cameras that can be
used with \gls{gPhoto} tools and drivers, available in \gls{Debian}.
This is the recommended option at present for still cameras.
\gls{DSLR} cameras, such as from major manufacturers Canon and Nikon, are
used with gphoto.
used with \gls{gPhoto}.
\end{description}
\end{mdframed}
\index{telescope}\index{INDI}\index{gphoto}\index{DSLR}
\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
@ -137,7 +136,7 @@ There are also broader ``paths'' that need to be considered:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [\gls{sattools}] --- Deprecated because it is in \gls{C}, and the
decision was made to move forward with applications primarily
decision by upstream and the \gls{LSF} was made to move forward with applications primarily
written in \gls{Python}. \Gls{sattools} is the most complete toolkit,
however, so no matter what path is chosen, some parts of it will likely
be used for now. It can be used with motion video cameras and
@ -151,19 +150,18 @@ There are also broader ``paths'' that need to be considered:
\gls{SatNOGS-Optical} project will likely use in the future
for still cameras.
It is in very early development, but can acquire data (take photos)
with gphoto-compatible cameras.
with \gls{gPhoto}-compatible cameras.
\item [\texttt{asm}] --- All Sky Monitor for taking pictures of all, or nearly all
of the sky, such as with a 150 or 180 degree view. The \texttt{asm}
application is in pre-development, but is in \gls{Python} and could be
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}
\end{mdframed}
\index{sattools}\index{Python}\index{C}\index{stvid}\index{motion video}
\index{motion video}
\index{still camera}\index{allsky}\index{stphot}\index{allsky}
\index{plate solver}

View File

@ -11,64 +11,60 @@
\section{Overview of Satellites}
\label{sec:overview-satellite}
\index{satellite}\index{RF}
This chapter gives a brief overview of \glspl{satellite}, with particular
antention to ones using amateur \gls{RF} bands.
antention to ones using \gls{amateur-radio} bands.
\section{SatNOGS DB}
\label{sec:satnogs-db}
The \gls{SatNOGS 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.
\begin{figure}[h!]
\begin{framed}
\centering
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{satnogs-db-web.png}
\caption{SatNOGS DB website.}
\includegraphics[keepaspectratio=true,height=0.80\textheight,width=0.80\textwidth,angle=0]{satnogs-db-web.png}
\caption{\gls{SatNOGS-DB} website.}
\label{fig:satnogs-db-web}
\index{SatNOGS DB}
\end{framed}
\end{figure}
Individual \glspl{satellite} can be viewed, such as the RamSat \Gls{cubesat}.
\index{RamSat}\index{CubeSat}
\index{RamSat}
% https://db.satnogs.org/satellite/YJWC-7364-7085-7563-0113
\begin{figure}[h!]
\begin{framed}
\centering
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{satnogs-db-ramsat-web.png}
\caption{SatNOGS DB RamSat CubeSat web page.}
\caption{\gls{SatNOGS-DB} RamSat \gls{cubesat} web page.}
\label{fig:satnogs-db-ramsat-web}
\index{RamSat}
\end{framed}
\end{figure}
For some \glspl{satellite}, \gls{telemetry} is available in a \gls{Grafana} dashboard.
See the RamSat \gls{telemetry} dashboard.
\index{RamSat}\index{telemetry}\index{Grafana}\index{dashboard}
\index{RamSat}\index{dashboard}
% https://dashboard.satnogs.org/d/XZQTCYznz/ramsat?orgId=1&refresh=30s&var-suid=48850
\begin{figure}[h!]
\begin{framed}
\begin{sidewaysfigure}[p!]
\centering
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{satnogs-telemetry-ramsat-web.png}
\caption{SatNOGS DB RamSat CubeSat telemetry web page.}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{satnogs-telemetry-ramsat-web.png}
\caption{\gls{SatNOGS-DB} RamSat \gls{cubesat} \gls{telemetry} web page.}
\label{fig:satnogs-telemetry-ramsat-web}
\index{RamSat}
\end{framed}
\end{figure}
\end{sidewaysfigure}
\section{Libre Satellites}
\label{sec:libre-satellites}
Below are \glspl{satellite} in \gls{orbit}, decayed, or designs on Earth that generally support the \gls{libre} way.
These are some select \gls{libre} \glspl{satellite}:
\index{orbit}\index{decay}
\index{decay}
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
@ -82,7 +78,7 @@ These are some select \gls{libre} \glspl{satellite}:
\begin{figure}[h!]
\begin{framed}
\centering
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{upsat-web.png}
\includegraphics[keepaspectratio=true,height=0.80\textheight,width=0.80\textwidth,angle=0]{upsat-web.png}
\caption{UPSat Website.}
\label{fig:upsat-web}
\index{UPSat}
@ -93,37 +89,34 @@ These are some select \gls{libre} \glspl{satellite}:
See figure \ref{fig:satnogs-obs-list-ramsat-web}, page \pageref{fig:satnogs-obs-list-ramsat-web}
for a example list of observations of the RamSat \Gls{cubesat}.%
\footnote{\url{https://network.satnogs.org/observations/?future=0&norad=48850&observer=&station=&start=&end=&transmitter_mode=&page=2}}
\index{RamSat}\index{CubeSat}\index{RF}
\index{RamSat}\index{observation}\index{schedule}
\begin{figure}[h!]
\begin{framed}
\centering
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{satnogs-obs-list-ramsat-web.png}
\caption{List of observations of the RamSat CubeSat, example.}
\includegraphics[keepaspectratio=true,height=0.80\textheight,width=0.80\textwidth,angle=0]{satnogs-obs-list-ramsat-web.png}
\caption{List of observations of the RamSat \gls{cubesat}, example.}
\label{fig:satnogs-obs-list-ramsat-web}
\index{RamSat}\index{observation}\index{CubeSat}
\index{RamSat}\index{observation}
\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 by SatNOGS
ground station ``2380 - Piszkesteto UHF'' run by volunteer bcsak (username).
\index{RF}\index{RamSat}
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{figure}[h!]
\begin{framed}
\begin{sidewaysfigure}[p!]
\centering
\includegraphics[keepaspectratio=true,height=0.60\textheight,width=0.60\textwidth,angle=0]{satnogs-obs-6401760-web.png}
\caption{Sample observation of RamSat CubeSat on SatNOGS website.}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{satnogs-obs-6401760-web.png}
\caption{Sample observation of RamSat \gls{cubesat} on SatNOGS website.}
\label{fig:satnogs-obs-6401760-web}
\index{RamSat}\index{observation}\index{CubeSat}
\end{framed}
\end{figure}
\index{RamSat}\index{observation}
\end{sidewaysfigure}
\section{Satellite Orbits}
\label{sec:satellite-orbits}
\index{orbit}\index{SGP}\index{SDP}\index{TLE}
Satellite \glspl{orbit}.
See \gls{SGP} and \gls{SDP}.

View File

@ -26,26 +26,32 @@ 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}
\end{figure}
\end{center}
\index{acquire}\index{process}\index{analyze}\index{upload}
\section{Setup Optical Ground Station Software}
\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.
Setup an embedded computer, such as an Odroid N2, with \gls{Debian} stable
(11/Bullseye) or testing (Bookworm).
\index{embedded computer}\index{Odroid}\index{Debian}
For a description of installation using \gls{Docker}, see
section \ref{sec:software-docker}, page \pageref{sec:software-docker}.
For a ``manual'' install, see immediately below.
See each repository for latest documentation.
Setup an \gls{embedded-system}, such as a \gls{Raspberry-Pi} or an Odroid N2,
with \gls{Debian} stable (11/Bullseye) or testing (Bookworm).
\index{Odroid}
Install dependencies from \gls{Debian} repository:
See each \gls{software-repository} for latest documentation.
\index{repository}
Install dependencies from the \gls{Debian} \gls{software-repository}:
\begin{minted}{sh}
sudo apt update
@ -56,9 +62,10 @@ 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{PIP}
\index{Giza}\index{Source Extractor}
Next, install the \texttt{\gls{hough3d-code}} dependency.
\index{hough3d-code}
\begin{minted}{sh}
git clone https://gitlab.com/pierros/hough3d-code
@ -67,8 +74,9 @@ make all
sudo cp -p hough3dlines /usr/local/bin/hough3dlines
\end{minted}
Install \texttt{\gls{satpredict}} from using either the cbassa or spacecruft repo.
\index{satpredict}
Install \texttt{\gls{satpredict}} from using either the cbassa or spacecruft
\gls{software-repository}.
\index{repository}
\begin{minted}{sh}
cd ../
@ -80,10 +88,10 @@ 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} repository or the cbassa one.
\index{stvid}\index{Python}
\texttt{git} \gls{software-repository} or the cbassa one.
\index{acquire}
\begin{minted}{sh}
cd ../
@ -92,8 +100,8 @@ git clone https://spacecruft.org/spacecruft/stvid
#git clone https://github.com/cbassa/stvid
\end{minted}
Optionally, set up a \gls{Python} virtual environment:
\index{Python}\index{virtualenv}
Optionally, set up a \gls{Python} virtual environment and use \gls{PIP}:
\index{virtualenv}
\begin{minted}{sh}
cd stvid
@ -112,7 +120,7 @@ pip install --upgrade -r requirements.txt
\index{numpy}
If the system \texttt{python3-numpy} conflicts, you could try installing
numpy in the virtualenv thusly:
numpy with \gls{PIP} in the virtualenv thusly:
\begin{minted}{sh}
pip install --upgrade --ignore-installed numpy
@ -121,7 +129,7 @@ pip install --upgrade --ignore-installed numpy
\gls{Debian} in bug \texttt{\#941466} changed the name of the
\texttt{sextractor} dependency to \texttt{source-extractor},
so a symlink is needed for now:
\index{Debian}\index{Source Extractor}
\index{Source Extractor}\index{SExtractor}
\begin{minted}{sh}
sudo ln -s /usr/bin/source-extractor /usr/local/bin/sextractor
@ -129,7 +137,7 @@ sudo ln -s /usr/bin/source-extractor /usr/local/bin/sextractor
\section{Configure Software}
\label{sec:software-configure}
Configure the embedded computer.
Configure the \gls{embedded-system}.
\begin{minted}{sh}
cd stvid/
@ -139,7 +147,7 @@ cp -p configuration.ini-dist configuration.ini
# Set:
vi configuration.ini
\end{minted}
\index{stvid}\index{configuration.ini}
\index{configuration.ini}
Edit various \texttt{configuration.ini} fields:
\begin{minted}{sh}
@ -160,6 +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{TLE}
Store downloads here:
@ -177,27 +186,25 @@ export ST_TLEDIR=$HOME/TLE
export ST_OBSDIR=$HOME/satobs
export ST_LOGIN="identity=foo@no:pass"
\end{minted}
\index{sattools}\index{TLE}
Set \texttt{astrometry.net} to run in parallel, assuming you have enough RAM:
Set \texttt{astrometry.net} to run in parallel, assuming you have enough \gls{RAM}:
(This doesn't appear to work? Breaks?).
\index{astrometry.net}
\begin{minted}{sh}
sudo vim /etc/astrometry.cfg
# Uncomment:
inparallel
\end{minted}
\index{astrometry.net}
\section{skymap}
\label{sec:skymap}
\index{skymap}\index{orbit}\index{sattools}
Use \gls{skymap} for viewing \gls{satellite} \glspl{orbit} tracks
projected on a map of of the sky. Skymap is part of \gls{sattools}.
\Gls{skymap} isn't a required part of the toolchain, but it is useful
to see what \glspl{satellite} are visibile at a particular time and
Use \gls{skymap} for viewing \gls{satellite} \glspl{orbit} trails
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.
Source:
@ -211,26 +218,24 @@ My fork:
\begin{sidewaysfigure}[p!]
\begin{center}
\includegraphics[keepaspectratio=true,height=1.00\textheight,width=1.00\textwidth,angle=0]{skymap-giza-21.png}
\caption{\texttt{skymap} example screenshot.}
\index{skymap}\index{sattools}
\label{fig:skymap-giza-21}
\caption{\texttt{\gls{skymap}} example screenshot.}
\label{fig:skymap-giza-21}
\end{center}
\end{sidewaysfigure}
\fbox{
\parbox{\linewidth}{
\textcolor{red}{NOTICE:} \\
The main upstream sattools package requires non-\gls{libre} \texttt{pgplot} on host computer which is not \gls{DFSG} compatible.
\index{proprietary}\index{DFSG}\index{pgplot}
The main upstream \gls{sattools} package requires non-\gls{libre} \texttt{pgplot} on the host computer which is not \gls{DFSG} compatible.
\index{proprietary}\index{pgplot}
}
}
Described below is how to build and install my fork of \gls{sattools} to use
\gls{skymap} instead of upstream. Upstream requires non-libre software which
\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
Giza library which replaces pgplot. It is much easier to build.
\index{fork}\index{sattools}\index{skymap}\index{Giza}
\index{fork}\index{Giza}\index{pgplot}
\begin{minted}{sh}
# Install dependencies
@ -261,7 +266,7 @@ sudo make uninstall
\end{minted}
See below for \gls{skymap} (fork) usage:
\index{TLE}
\begin{minted}{sh}
tleupdate
@ -301,7 +306,7 @@ Visualize satellites on a map of the sky.
\section{Tracking Software}
\label{sec:software-tracking}
\index{track}\index{software}
\index{track}\index{software}\index{mount}
The tracking software used depends upon the tracking mount.
See section \ref{sec:hardware-tracking-ground-station},
@ -313,42 +318,93 @@ software:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [Telescope] --- Controlling \glspl{telescope} remotely.
\item [Antenna] --- Controlling \glspl{antenna} remotely with hamlib.
\item [Cameras] --- Controlling PTZ cameras remotely.
\item [\Glspl{telescope}] --- Controlling \glspl{telescope} remotely.
\item [\Glspl{antenna}] --- Controlling \glspl{antenna} remotely with hamlib.
\item [Cameras] --- Controlling \gls{PTZ} cameras remotely.
\end{description}
\end{mdframed}
\index{telescope}\index{antenna}
\index{hamlib}
\index{camera}
\subsection{Telescope Tracking Software}
Software that can be used with telescope tracking mounts:
Software that can be used with \gls{telescope} tracking mounts:
\index{mount}\index{track}
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [INDI] --- Main client/server used by other applications.
\item [KStars] --- Sky charts, INDI control.
\item [Ekos] --- Application used within KStars for remote control
\item [\gls{INDI}] --- Main client/server used by other applications.
\item [\gls{KStars}] --- \Glspl{sky-chart}, \gls{INDI} control.
\item [Ekos] --- Application used within \gls{KStars} for remote control
of \glspl{telescope} and related hardware via \gls{INDI}.
\item [Stellarium] --- Sky charts, has \gls{INDI} plugin.
\item [Other INDI] --- Many more applications work with \gls{INDI}.
\item [INDIGO] --- Positions itself as a next-generation INDI (?).
\item [Stellarium] --- \Glspl{sky-chart}, has \gls{INDI} plugin.
\item [Other \gls{INDI}] --- Many more applications work with \gls{INDI}.
\item [INDIGO] --- Positions itself as a next-generation \gls{INDI} (?).
\end{description}
\end{mdframed}
\index{telescope}\index{INDI}\index{KStars}\index{Ekos}\index{Stellarium}
\index{Ekos}\index{Stellarium}
\index{INDIGO}
Using \gls{INDI} with KStars and Ekos on a Sky-Watcher or Celestron
telescope mount is a known working solution.
\index{Sky-Watcher}\index{Celestron}
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{Ekos}
\gls{Celestron} \glspl{telescope} are widely used and available for many years.
There is a variety of software written to control the mounts. The below list
covers the drivers (e.g. \gls{INDI}), not the software on top (e.g \gls{KStars}).
\gls{Celestron} Nexstar \gls{telescope} tracking mount drivers:%
\footnote{\url{https://www.indilib.org/telescopes/celestron.html}}%
\footnote{\url{https://github.com/indigo-astronomy/libnexstar}}%
\footnote{\url{https://github.com/indigo-astronomy/indigo/blob/master/indigo_drivers/mount_nexstar/README.md}}
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [Celestron INDI] --- \gls{Celestron} \gls{INDI}
\item [libnexstar INDIGO] --- libnexstar INDIGO.
\end{description}
\end{mdframed}
Sky-Watcher EQ6-R Pro \gls{telescope} tracking mount drivers:%
\footnote{\url{https://www.indilib.org/telescopes/skywatcher.html}}%
\footnote{\url{https://www.indilib.org/telescopes/skywatcher/eqmod.html}}%
\footnote{\url{https://www.indilib.org/telescopes/skywatcher/synscan-telescope.html}}
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [EQMod Mount INDI] --- Drives Sky-Watcher protocol.
\item [Synscan INDI] --- Drives Synscan hand controller.
\gls{INDI} recommends using EQMod Mount over Synscan.
\item [libnexstar INDIGO] --- libnexstar INDIGO.
\end{description}
\end{mdframed}
\subsection{INDI}
\gls{INDI} does much, \gls{KStars}, etc.
One option to consider is making \gls{stvid} an \gls{INDI} client.
\subsection{INDIGO}
INDIGO%
\footnote{\url{https://www.indigo-astronomy.org/}}
works with libnexstar, which supports many mounts:%
\footnote{\url{https://github.com/indigo-astronomy/libnexstar}}
\begin{quote}
This library implements the serial commands supported by the Celestron
NexStar hand control (HC) and SkyWatcher/Orion SynScan HC. This applies
to the Celestron: NexStar GPS, NexStar GPS-SA, NexStar iSeries, NexStar
SE Series, NexStar GT, CPC, SLT, Advanced-VX, Advanced-GT, CGE, CGEM etc.
SkyWatcher: EQ5, HEQ5, EQ6 (Pro), AZ-EQ5 GT, AZ-EQ6 GT, EQ8 etc. and the
corresponding Orion mounts.
\end{quote}
\subsection{Antenna Tracking Software}
At present, for the \gls{SatNOGS} network \gls{RF} \glspl{ground-station},
hamlib is typically used for tracking, if directional \glspl{antenna} are
used. Hamlib was originally created for amateur radio equipment, but has
expanded to control many more devices.
\index{hamlib}\index{antenna}\index{RF}\index{amateur radio}
used. Hamlib was originally created for \gls{amateur-radio} equipment, but has
expanded to control many more devices. Hamlib can be used for some
telescope mounts.
\index{hamlib}
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
@ -356,19 +412,32 @@ expanded to control many more devices.
\end{description}
\end{mdframed}
I don't know of anyone prototying a satellite tracking mount with hamlib,
\subsection{Hamlib}
I don't know of anyone prototyping a satellite tracking mount with hamlib,
but it should be possible using the ``leap frog'' method, perhaps on the
same mount as existing \gls{SatNOGS} \glspl{antenna}. The mount may not
be steady enough.
\index{hamlib}\index{mount}\index{track}
Hamlib lists support for the following tracking mounts, usually
used with \glspl{telescope}.%
\footnote{Output from version 4.3.1 of \texttt{rotctl --list}}
\begin{minted}{sh}
1401 Celestron NexStar 20110821.0 Untested ROT_MODEL_NEXSTAR
1801 Meade LX200/Autostar 20200610.0 Stable ROT_MODEL_MEADE
1901 iOptron iOptron 20191209.0 Alpha ROT_MODEL_IOPTRON
\end{minted}
\subsection{Camera Tracking Software}
There are applications for using PTZ control of cameras, such as used in
There are applications for using \gls{PTZ} control of cameras, such as used in
``security'' cameras.
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [motion] --- PTZ camera control. XXX check
\item [motion] --- \gls{PTZ} camera control. XXX check
\end{description}
\end{mdframed}
@ -378,31 +447,29 @@ at present.
\section{GNSS with \texttt{gpsd}}
\label{sec:software-gnss}
\index{GNSS}\index{GPS}\index{Galileo}\index{GLONASS}\index{Beidou}
\index{gpsd}
\index{Galileo}
\gls{GNSS} is used for time synchornization and for (somewhat)
\gls{GNSS} is used for time synchronization and for (somewhat)
accurately determining the location of the observation.
\gls{GNSS} collectively includes the USA \gls{GPS}, Europe's Galileo,
Russia's GLONASS, and China's Beidou, as well as other
Russia's \gls{GLONASS}, and China's \gls{BDS}, as well as other
regional systems.
\index{GPS}\index{Galileo}\index{GLONASS}\index{Beidou}
\index{Galileo}
\index{USA}\index{Europe}\index{Russia}\index{China}
A basic, widely available \gls{COTS} USB \gls{GNSS} device
with a basic (or no!) \gls{antenna} plugged into the embedded
computer can get time and location accurate enough for the
A basic, widely available \gls{COTS} \gls{USB} \gls{GNSS} device
with a basic (or no!) \gls{antenna} plugged into the \gls{embedded-system}
can get time and location accurate enough for the
purposes here. See various U-Blox devices, for example.
\index{COTS}\index{USB}\index{U-Blox}
\index{U-Blox}
In \gls{Debian} \gls{GNSS} service with a USB device can be provided
by the \texttt{gpsd} application.
\index{Debian}
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}
\index{gpsd}
Edit the configuration file, \texttt{/etc/default/gpsd} like:
@ -412,26 +479,28 @@ GPSD_OPTIONS="-Gn"
USBAUTO="false"
\end{minted}
This will start a \texttt{gpsd} daemon listening on all interfaces,
This will start a \texttt{\gls{gpsd}} \gls{daemon} listening on all interfaces,
so it can be used by other computers on the network (such as if
acquire and process are on different machines). Using the
device \texttt{/dev/ttyACM0} can be problematic if there are multiple
\texttt{/dev/ttyACM*} devices. Perhaps something like this could be
used in that case:
\index{/dev/ttyACM}
\begin{minted}{sh}
DEVICES="/dev/serial/by-id/usb-u-blox_AG_-_www.u-blox.com_u-blox_GNSS_receiver-if00"
\end{minted}
Even with \texttt{gpsd} configuration listening on all IPs,
Even with \texttt{\gls{gpsd}} configuration listening on all \glspl{IP},
don't think \texttt{systemd} won't do what it likes. So
you may have to do:
\begin{minted}{sh}
systemctl edit --full gpsd.socket
\end{minted}
\index{systemd}
And create a configuration like this (I have IPv6 disabled, in this case):
And create a \gls{gpsd} configuration like this (I have \gls{IPv6} disabled, in this case):
\begin{minted}{sh}
[Unit]
@ -447,12 +516,14 @@ BindIPv6Only=no
[Install]
WantedBy=sockets.target
\end{minted}
\index{systemd}
(Re)start:
\begin{minted}{sh}
sudo systemctl restart gpsd.service gpsd.socket
\end{minted}
\index{systemctl}
Test all is good:
@ -468,6 +539,7 @@ Enable to start on boot:
\begin{minted}{sh}
sudo systemctl enable gpsd.service gpsd.socket
\end{minted}
\index{systemctl}
See below for sample output from \texttt{cgps}.
@ -502,19 +574,18 @@ See below for sample output from \texttt{cgps}.
\section{NTP}
\label{sec:software-ntp}
\index{NTP}
With all the above, time still needs to be configured.
Configuring \texttt{gpsd} isn't enough for correct system time.
The main system on the Internet used for time synchronization is NTP.
In \gls{Debian} there are a few options for NTP.
The best is to use a hardware GPS, with PPS for improved
accuracy. The easiest is to just use NTP.
\index{PPS}
All systems in the chain need to have the correct time and
location. It is best if they all pull from the same NTP
With all the above, time still needs to be configured.
Configuring \texttt{\gls{gpsd}} isn't enough for correct system time.
The main system on the Internet used for time synchronization is \gls{NTP}.
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}
hardware with PPS enabled.
hardware with \gls{PPS} enabled.
Some quick and dirty time synchronization commands.
The \texttt{ntpd} daemon can have slow startup synchronization
@ -532,43 +603,51 @@ sudo ntpdate time.mit.edu
# Get time from local server, such as router (made up IP):
sudo ntpdate 192.168.1.1
# If above complains, to do an initial sync at boot (force ntpdate):
sudo ntpdate -b 192.168.1.1
# Restart daemon
sudo systemctl start ntp
\end{minted}
\index{ntpd}\index{ntpdate}
Go through each of the systems used in the toolchain and make
sure they all have accurate time or everything will be off.
Go through each of the systems used in the \gls{toolchain} and make
sure they all have accurate time or processing will be off.
\section{KStars}
\section{KStars with Tracking Mount}
\label{sec:software-kstars}
\index{software}\index{KStars}\index{Debian}
KStars is an application that has been used for years in the astronomy
community. It is well established, well supported and included in \gls{Debian}.
\index{software}\index{track}\index{mount}
\index{Ekos}
\gls{KStars} is an application that has been used for years in the astronomy
community. It is well established, well supported, and included in \gls{Debian}.
KStars has multiple uses for imaging \glspl{satellite}.
One main use is to control a telescope tracking mount, such as the
\gls{KStars} has multiple uses for imaging \glspl{satellite}.
One main use is to control a \gls{telescope} tracking mount, such as the
hardware described in section \ref{sec:hardware-mounts}, page \pageref{sec:hardware-mounts}.
\index{track}\index{mount}
For the purposes here, described below will be using KStars with a
Sky-Watcher tracking mount with INDI and Ekos.
For the purposes here, described below will be using \gls{KStars} with a
Sky-Watcher tracking mount with \gls{INDI} and Ekos.
See figure \ref{fig:video-enclosure-mount-tripod}, page \pageref{fig:video-enclosure-mount-tripod}
for a photo of the setup used with KStars below.
for a photo of the setup used with \gls{KStars} below.
\index{Ekos}
The telescope mount will be used in sidereal tracking mode,
The \gls{telescope} mount will be used in sidereal tracking mode,
where the stars will appear as
``points'', and the \glspl{satellite} will appear as trails.
The mount is not used in a satellite tracking mode.
Sidereal is the ``standard'' tracking mode of \glspl{telescope}.
\index{Sky-Watcher}\index{INDI}\index{Ekos}
\index{Sky-Watcher}\index{Ekos}
KStars is the ``main'' application, but it depends on other key parts.
\gls{INDI} is the protocol that KStars uses for telescope control.
\gls{KStars} is the ``main'' application, but it depends on other key parts.
\gls{INDI} is the protocol that \gls{KStars} uses for \gls{telescope} control.
\gls{INDI} itself is a collection of applications.
While KStars has the main sky chart and Ekos is launched within it,
While \gls{KStars} has the main \gls{sky-chart} and Ekos is launched within it,
the actual mount control is done with the Ekos application.
While it may sound complex, all of this is set up pretty easily in
\gls{Debian}.
\index{Ekos}\index{mount}
\begin{minted}{sh}
# Quick and dirty from memory, something like:
@ -576,80 +655,80 @@ sudo apt update
sudo apt install kstars indi-bin indi-eqmod indi-gpsd
\end{minted}
KStars has a sky chart, as can be see in figure \ref{fig:kstars-skychart},
\gls{KStars} has a \gls{sky-chart}, as can be see in figure \ref{fig:kstars-skychart},
page \pageref{fig:kstars-skychart}.
When mount control is functioning, a location on the sky chart, such as a star,
can be clicked on and the mount will go to that location and optionally track it.
Using this, a telescope mount can be used to easily point the camera at a location
and track it to observe telescopes. It should also provide a superior \gls{FITS} file
for extracting data than using a static mount (XXX made up).
\index{KStars}\index{sky chart}\index{GOTO}\index{mount}\index{track}
When mount control is functioning, a location on the \gls{sky-chart}, such as a star,
can be clicked on and the mount will \gls{GoTo} that location and optionally track it.
Using this, a \gls{telescope} mount can be used to easily point the camera at a location
and track it to observe \glspl{satellite}. It should also provide a superior \gls{FITS} file
for extracting data than using a static mount with \glspl{star-trail} (XXX made up).
\index{mount}\index{track}
\index{camera}
To use a telescope tracking mount for use with \texttt{stvid}, the following steps need to be performed in
To use a \gls{telescope} tracking mount for use with \texttt{\gls{stvid}}, the following steps need to be performed in
roughly this order, assuming everything has been configured.
A brief overview of steps:
\index{stvid}
An overview of steps:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{enumerate}
\item Physically mount all hardware.
\item Plug in and power everything up.
\item Confirm all hardware looks ok (e.g. \texttt{lsusb}).
\item Confirm GNSS time and location are ok (e.g. \texttt{cgps -u m}).
\item Confirm \gls{GNSS} time and location are ok (e.g. \texttt{cgps -u m}).
See section \ref{sec:software-gnss}, page \pageref{sec:software-gnss}.
\item Confirm time is correct on all systems in toolchain (e.g. \texttt{date}).
See section \ref{sec:software-ntp}, page \pageref{sec:software-ntp}.
\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},
for information about \gls{NTP}.
\item Run camera configuration script (e.g. \texttt{v4l2-ctl} commands).
\item Start \texttt{indiserver} on the embedded computer, using scripts to
\item Start \texttt{indiserver} on the \gls{embedded-system}, using scripts to
include a camera (such as \texttt{indi\_v4l2\_ccd}.
\item Start KStars on the workstation.
\item Launch Ekos within KStars, under \texttt{Tools}.
\item In Ekos, select a configuration with the EQ Mount for the Sky-Watcher,
and \texttt{V4L2} for the CCD, which will work with The Imaging Source
\item Start \gls{KStars} on the workstation.
\item Launch Ekos within \gls{KStars}, under \texttt{Tools}.
\item In Ekos, select a configuration with the \gls{EQ} Mount for the Sky-Watcher,
and \texttt{\gls{V4L2}} for the \gls{CCD}, which will work with The Imaging Source
camera used in this example. Alternatively, the ZWO ASI could be used with a similar configuration.
\item The Ekos configuration should also be set to use the remote \texttt{indiserver}
IP address of the embedded computer USB connected to the Sky-Watcher mount.
\item Hit the start button to start Ekos/INDI.
\gls{IP} address of the \gls{embedded-system} \gls{USB} connected to the Sky-Watcher mount.
\item Hit the start button to start Ekos/\gls{INDI}.
\item On the screen that pops up, confirm all the tabs are good.
\item Check the last configuration tab for the camera, it often
resets the size.
\item Hit close on the screen with the INDI devices.
\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 embedded computer.
\item Start the \texttt{indiserver} on the embedded computer, but without using a camera
(e.g. remove \texttt{indi\_v4l2\_ccd}.
\item Select the INDI configuration with a remote \texttt{indiserver},
the EQ Mount, and the Simulated \gls{CCD}.
\item Hit start in Ekos to get INDI connections going.
\item Stop the \texttt{indiserver} running on the \gls{embedded-system}.
\item Start the \texttt{indiserver} on the \gls{embedded-system},
but without using a camera (e.g. remove \texttt{indi\_v4l2\_ccd}.
\item Select the \gls{INDI} configuration with a remote \texttt{indiserver},
the \gls{EQ} Mount, and the Simulated \gls{CCD}.
\item Hit start in Ekos to get \gls{INDI} connections going.
\item Confirm all is ok in hardware tabs, then hit close.
\item Now in the KStars 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 Go to the KStars sky chart and right-click on the new location,
and slew to it.
\item Start \texttt{stvid} again, pointing at the new location.
\item Now in the \gls{KStars} \gls{sky-chart} window there is
control of the mount without interfering with the camera.
\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{\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}
\index{v4l2-ctl}\index{mount}\index{KStars}\index{telescope}\index{track}
\index{lsusb}\index{cgps}\index{GNSS}\index{NTP}\index{indiserver}
\index{Ekos}\index{Sky-Watcher}\index{V4L2}\index{The Imaging Source}
\index{stvid}
\index{v4l2-ctl}\index{mount}\index{track}
\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.}
\index{KStars}\index{sky chart}
\caption{\gls{KStars} \gls{sky-chart}, example screenshot.}
\label{fig:kstars-skychart}
\end{center}
\end{sidewaysfigure}
@ -657,8 +736,7 @@ A brief 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.}
\index{KStars}\index{V4L2}
\caption{\gls{KStars} using \gls{V4L2}, example screenshot.}
\label{fig:kstars-profile-edit-v4l2}
\end{center}
\end{sidewaysfigure}
@ -666,13 +744,12 @@ A brief 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.}
\index{KStars}\index{CCD}
\caption{\gls{KStars} using simulated \gls{CCD}, example screenshot.}
\label{fig:kstars-profile-edit-simulator}
\end{center}
\end{sidewaysfigure}
If the camera and mount are connected to the embedded computer OK, it will
If the camera and mount are connected to the \gls{embedded-system} OK, it will
look like below, in this case with The Imaging Source camera and Sky-Watcher
mount:
@ -685,11 +762,13 @@ 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{Sky-Watcher}
Note the \texttt{The Imaging Source Europe GmbH DMK 33UX174} device is the
camera and the
\texttt{Prolific Technology, Inc. USB-Serial Controller} is the telescope
mount. Other views of the devices:
\texttt{Prolific Technology, Inc. USB-Serial Controller} is the
Sky-Watcher \gls{telescope} mount. Other views of the devices:
\index{Sky-Watcher}
\begin{minted}{sh}
jebba@odroid-01:~$ ls -l /dev/bus/usb/002/003 /dev/bus/usb/001/003 /dev/video* /dev/ttyUSB0
@ -700,9 +779,27 @@ crw-rw---- 1 root video 81, 0 Sep 1 20:08 /dev/video0
crw-rw---- 1 root video 81, 1 Sep 1 20:08 /dev/video1
crw-rw---- 1 root video 81, 2 Sep 1 20:08 /dev/video2
\end{minted}
\index{/dev/video}\index{/dev/ttyUSB}
Side note: you need to be in the \texttt{plugdev, video, dialout} groups.
Side note: on the Odroid N2, there is another \texttt{/dev/video} device,
so three devices are appearing. The The Imaging Source camera appears
as two \texttt{/dev/video} devices.
\index{Odroid}\index{The Imaging Source}
\section{\texttt{stvid} with Docker}
\label{sec:software-docker}
\index{Ekman, Daniel}
Daniel Ekman has created a \gls{Docker} setup for easier installation
and configuration.
The \gls{Docker} source code repo is available here:
* \url{https://github.com/kng/stvid-docker}
The \gls{Docker} itself is here:
* \url{https://hub.docker.com/repository/docker/knegge/stvid}

View File

@ -11,31 +11,32 @@
\section{Plate Solver}
\label{sec:plate-solver}
\index{plate solver}\index{FITS}
A ``plate solver'' will take an image of stars and detect the time and place
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 ``Solve'' the image of the stars in the image against vast databases of star images.
\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}
See below for a list of software tools that detect/extract stars from
images (e.g. \gls{FITS}).
\index{detect}
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{itemize}
\item Source Extractor.
\item KStars with ekos adds \texttt{Internal SEP}.
\item KStars with ekos adds \texttt{Builtin method for solver}.
\item \gls{KStars} with Ekos adds \texttt{Internal SEP}.
\item \gls{KStars} with Ekos adds \texttt{Builtin method for solver}.
\end{itemize}
\end{mdframed}
\index{Source Extractor}\index{KStars}\index{ekos}
\index{Source Extractor}\index{Ekos}
See below for a list of plate solvers that can be used.
See below for a list of \glspl{plate-solver} that can be used.
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{itemize}
@ -45,7 +46,7 @@ See below for a list of plate solvers that can be used.
\item Watney.
\end{itemize}
\end{mdframed}
\index{astrometry.net}\index{astap}\index{Watney}
\index{astap}\index{Watney}\index{astrometry.net}
\section{Source Extractor}
@ -60,10 +61,10 @@ widely used for many years.
\section{astrometry.net}
\index{astrometry.net}
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!]
@ -72,49 +73,41 @@ 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}
\index{astrometry.net}
\end{framed}
\end{figure}
\fbox{
\parbox{\linewidth}{
\textcolor{red}{NOTICE:} \\
Using astrometry.net online requires an account with non-libre services.
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}
\index{star catalogue}\index{plate solver}\index{stvid}
To use a plate solver, you will need star catalogues. They can get large.
The \texttt{stvid} application includes a basic star catalogue.
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.
\section{World Coordinate System}
\label{sec:wcs}
\index{WCS}
\gls{WCS} info. XXX
\section{SIP}
\label{sec:sip}
\index{SIP}
\gls{SIP} info. XXX
\section{Plate Solving with \texttt{stvid}}
\label{sec:plate-solving-stvid}
\index{plate solver}\index{stvid}\index{process}
\index{process}
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,10 +11,8 @@
\section{Support}
\label{sec:support}
\index{community}
\index{support}
\index{forum}
\index{Matrix}
\index{community}\index{support}\index{forum}\index{help}
\setlength{\parindent}{0pt}
How to get help.

View File

@ -9,10 +9,336 @@
% International Public License (CC BY-SA 4.0) by Jeff Moe.
%
\section{Upload Data}
\section{Push Data Upstream}
\label{sec:upload}
\index{upload}
Push.
The \gls{SatNOGS} network isn't ready for optical data yet.
So there is nothing that can be uploaded. This is under
development.
\section{File Extensions}
\label{sec:upload-extensions}
\index{formats}
\index{.cal}\index{.cat}\index{.csv}\index{.dat}\index{.fits}\index{.png}
The following file extensions are in use:
\begin{mdframed}[backgroundcolor=blue!10,linecolor=blue!30]
\begin{description}
\item [.cal] --- Cal % XXX \index{.cal}
\item [.cat] --- Cat % XXX \index{.cat}
\item [.csv] --- \gls{CSV}
\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}
After the \texttt{stvid} acquisition and processing steps have been
run, files such as below will be generated:
\begin{minted}{sh}
2022-08-23T04:16:26.633.fits
2022-08-23T04:16:26.633.fits.cal
2022-08-23T04:16:26.633.fits.cat
2022-08-23T04:16:26.633.fits.png
2022-08-23T04:16:26.633_48473_catalog.dat
2022-08-23T04:16:26.633_48473_catalog.png
2022-08-23T04:16:26.633_52718_catalog.dat
2022-08-23T04:16:26.633_52718_catalog.png
2022-08-23T04:16:26.633_90000_unid.dat
2022-08-23T04:16:26.633_90000_unid.png
2022-08-23T04:16:26.633_hough.csv
2022-08-23T04:16:26.633_predict.csv
2022-08-23T04:16:26.633_threshold.csv
\end{minted}
\index{.cal}\index{.cat}\index{.csv}\index{.dat}\index{.fits}\index{.png}
\subsection{\texttt{.fits} FITS Files}
\gls{FITS} files are the main files created during acquisition and
are the main files used in processing. It has the data of
the actual image taken with the camera. \gls{FITS} files will be significantly
larger than the other files, at around 8 to 35 megabytes each, depending
on sample rate, frame size, and \gls{binning}.
\index{acquire}\index{process}
\index{frame size}\index{sample rate}
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{\gls{stvid}} \gls{FITS} file structure
to the program's author, Cees Bassa:
\begin{quote}
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}
\subsection{\texttt{.cal} CAL Files}
\index{.cal}
Example \texttt{.cal} filename:\\
\texttt{2022-08-23T04:16:26.633.fits.cal}\\
Sample data from \texttt{.cal} file, just the top select lines of a 577 line file:
\begin{minted}{sh}
1172.876 11.776 7.1775 221.117561 45.185979 6.761
786.524 1.817 6.0213 222.623526 37.272049 5.590
838.954 21.772 8.0430 222.941344 38.403949 7.653
872.352 25.919 8.3855 222.909215 39.103246 7.884
692.542 37.123 8.2615 223.889916 35.455924 8.718
738.829 47.126 8.2037 223.973142 36.430116 7.777
691.964 52.656 7.7910 224.278547 35.490201 7.411
951.962 53.159 8.0072 223.315748 40.816697 7.844
1209.704 60.030 6.0799 222.327791 46.116208 5.811
893.057 66.086 7.1867 223.943996 39.648460 8.039
...
\end{minted}
\subsection{\texttt{.cat} CAT Files}
\index{.cat}
\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:
\begin{minted}{sh}
# 1 X_IMAGE Object position along x [pixel]
# 2 Y_IMAGE Object position along y [pixel]
# 3 MAG_BEST Best of MAG_AUTO and MAG_ISOCOR [mag]
# 4 FLUX_BEST Best of FLUX_AUTO and FLUX_ISOCOR [count]
# 5 FLUX_MAX Peak flux above background [count]
# 6 BACKGROUND Background at centroid position [count]
1172.8755 11.7756 7.1775 33.80787 11.09625 16.06616
28.8250 11.4696 6.7443 50.38253 5.008112 15.81194
1347.4933 10.4887 8.3649 11.32553 2.619246 16.04644
269.9134 9.8019 8.4220 10.74506 1.56768 15.97937
468.9823 7.9780 8.8072 7.535751 5.987358 16.02673
1475.9681 6.6672 8.6115 9.024131 2.281431 16.03049
847.0105 5.9795 8.1992 13.19223 14.31796 16.08833
181.5139 5.5141 7.9473 16.63711 2.278276 15.95168
460.1482 5.1577 8.5318 9.711239 2.795708 16.02688
1559.9583 2.9245 7.5915 23.08835 6.981803 15.9909
786.5237 1.8174 6.0213 98.05751 27.88283 16.09418
...
\end{minted}
\subsection{\texttt{.fits.png} FITS PNG Files}
\index{.fits.png}
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:
\texttt{2022-08-23T04:16:26.633.fits.png}
In this image, as can be see in figure \ref{fig:stvid-png}, page \pageref{fig:stvid-png},
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
\glspl{TLE}.
\index{detect}
The main blue line is slightly offset from where the satellite is calculated to
appear.
The blue line forms a small \texttt{L} shape.
The smaller segment indicates the area where the satellite may pass.
Next to the small segment line is the \gls{NORAD-ID} for the satellite.
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{\gls{stvid}} PNG.}
\label{fig:stvid-png}
\end{center}
\end{figure}
\index{.fits.png}
\subsection{\texttt{catalog.png} catalog PNG Files}
\index{detect}\index{identify}
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}.
\texttt{2022-08-23T04:16:26.633\_48473\_catalog.png}
\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{\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}
If multiple satellites are detected in the image, they will each get a \gls{PNG} file.
For the example image, a satellite with \gls{NORAD-ID} 52718 was also identified.
The file name is:
\texttt{2022-08-23T04:16:26.633\_52718\_catalog.png}
\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{\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}
\end{figure}
\subsection{\texttt{unid.png} Unidentified PNG Files}
\index{unidentified}
As shown previously, \texttt{\gls{stvid}} will create a new \gls{PNG} with a
red line when it identifies a satellite.
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{\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{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{\gls{stvid}} \gls{PNG} of an unidentified trail in red.}
\label{fig:stvid-png-90000-unid}
\end{center}
\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{\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:
\begin{minted}{sh}
2022-08-23T04:16:26.633_48473_catalog.dat
2022-08-23T04:16:26.633_52718_catalog.dat
2022-08-23T04:16:26.633_90000_unid.dat
\end{minted}
Note, there is no \texttt{.dat} file created corresponding to the
\texttt{2022-08-23T04:16:26.633.fits.png} file, since it doesn't show
detected trails.
The \texttt{.dat} file contents look like this, for \gls{NORAD-ID} 48473:
\begin{minted}{sh}
48473 21 040AX 9999 G 20220823041631625 17 25 1533406+483563 37 S
\end{minted}
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}
\begin{minted}{sh}
52718 22 056C 9999 G 20220823041631625 17 25 1527277+381243 37 S
\end{minted}
The \texttt{.dat} file contents look like this, for the unidentified trail
(the airplane):
\index{airplane}\index{unidentified}
\begin{minted}{sh}
90000 22 500A 9999 G 20220823041631625 17 25 1457613+535844 37 S
\end{minted}
\subsection{\texttt{stvid} \texttt{.csv} Files}
\index{.csv}\index{hough}\index{predict}\index{threshold}
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:
\begin{minted}{sh}
2022-08-23T04:16:26.633_hough.csv
2022-08-23T04:16:26.633_predict.csv
2022-08-23T04:16:26.633_threshold.csv
\end{minted}
\subsubsection{\texttt{stvid} \texttt{hough.csv} Files}
\index{.csv}\index{hough}
Full contents of the \texttt{2022-08-23T04:16:26.633\_hough.csv} file:
\begin{minted}{sh}
ax,ay,az,bx,by,bz,n
1585.699766,186.468458,51.073014,0.879795,0.416052,0.229917,3424
794.849123,355.614035,48.596491,0.780147,-0.382158,0.495304,285
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.
Below is an extract of the lines. I shortened the path, which
included the full path to my home directory, for clarity:
\begin{minted}{sh}
satno,cospar,mjd,ra,dec,state,tlefile,age
00134,61015U ,59814.17808603,182.367480,+37.582914,sunlit,/data/tle/catalog.tle,0.441
00134,61015U ,59814.17809887,182.231429,+37.736730,sunlit,/data/tle/catalog.tle,0.441
00134,61015U ,59814.17811171,182.094454,+37.890457,sunlit,/data/tle/catalog.tle,0.441
00134,61015U ,59814.17812455,181.956550,+38.044091,sunlit,/data/tle/catalog.tle,0.441
...
00735,64002C ,59814.17808603,227.004270,+34.763570,sunlit,/data/tle/catalog.tle,0.027
00735,64002C ,59814.17809887,227.192764,+34.379114,sunlit,/data/tle/catalog.tle,0.027
00735,64002C ,59814.17811171,227.378969,+33.994697,sunlit,/data/tle/catalog.tle,0.027
...
46083,20055BJ ,59814.17808603,204.492490,+40.972573,sunlit,/data/tle/catalog.tle,0.022
46083,20055BJ ,59814.17809887,204.840813,+41.039396,sunlit,/data/tle/catalog.tle,0.022
46083,20055BJ ,59814.17811171,205.193715,+41.105756,sunlit,/data/tle/catalog.tle,0.022
...
32706,08010A ,59814.17808603,169.555855,+50.073199,sunlit,/data/tle/inttles.tle,0.624
32706,08010A ,59814.17809887,169.560127,+50.075268,sunlit,/data/tle/inttles.tle,0.624
32706,08010A ,59814.17811171,169.564400,+50.077336,sunlit,/data/tle/inttles.tle,0.624
...
\end{minted}
\index{.csv}\index{COSPAR}
\subsubsection{\texttt{stvid} \texttt{threshold.csv} Files}
\index{.csv}\index{threshold}
\texttt{\gls{stvid}} creates a \texttt{threshold.csv} file with a filename like:
\texttt{2022-08-23T04:16:26.633\_threshold.csv}
The above file has 5,293 lines. Here are a few of them:
\begin{minted}{sh}
58.000000,0.000000,38.000000
69.000000,1.000000,59.000000
1832.000000,1.000000,52.000000
418.000000,2.000000,11.000000
1183.000000,2.000000,71.000000
...
1276.000000,1078.000000,1.000000
11.000000,1079.000000,38.000000
1500.000000,1079.000000,45.000000
\end{minted}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1024 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 248 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 KiB

View File

@ -0,0 +1,577 @@
1172.876 11.776 7.1775 221.117561 45.185979 6.761
786.524 1.817 6.0213 222.623526 37.272049 5.590
838.954 21.772 8.0430 222.941344 38.403949 7.653
872.352 25.919 8.3855 222.909215 39.103246 7.884
692.542 37.123 8.2615 223.889916 35.455924 8.718
738.829 47.126 8.2037 223.973142 36.430116 7.777
691.964 52.656 7.7910 224.278547 35.490201 7.411
951.962 53.159 8.0072 223.315748 40.816697 7.844
1209.704 60.030 6.0799 222.327791 46.116208 5.811
893.057 66.086 7.1867 223.943996 39.648460 8.039
1644.801 60.641 8.0809 219.859908 54.774064 9.909
1298.030 59.698 8.1633 221.848032 47.909366 7.946
1231.085 66.293 8.0308 222.396519 46.574497 7.589
662.623 64.225 8.8055 224.659389 34.918614 8.349
1135.054 65.710 8.4105 222.856168 44.608568 9.757
891.525 1009.674 6.8304 249.516782 39.577225 6.872
893.222 1079.415 8.7107 251.380069 39.383044 8.346
752.156 1079.244 7.1731 250.767598 36.509643 7.016
1288.133 1075.341 6.0820 253.323153 47.416729 6.136
1039.455 1040.776 8.7354 251.004342 42.508585 8.639
716.277 1040.951 8.5025 249.656598 35.892589 8.456
613.550 1033.001 7.0904 249.092899 33.821780 7.072
1165.026 1029.680 8.6670 251.299431 45.103648 8.717
1210.755 1027.226 7.5843 251.466081 46.044693 7.618
855.304 1004.021 8.4547 249.225945 38.848159 8.631
691.398 999.942 8.2416 248.534188 35.499970 8.085
1314.932 997.784 7.7617 251.152001 48.264417 7.929
1106.920 997.648 8.3066 250.107536 44.028904 8.371
669.511 990.055 8.5380 248.218833 35.075365 8.327
592.702 986.131 7.4661 247.877384 33.513673 7.124
1025.337 985.868 8.3269 249.417879 42.392378 8.349
1073.988 984.685 8.5050 249.595483 43.395314 8.429
735.532 985.013 8.6605 248.308086 36.448484 8.550
1390.995 983.505 7.5695 251.143955 49.862945 7.243
1318.930 981.040 8.1057 250.663109 48.406609 8.679
950.996 980.034 8.4477 248.958077 40.888100 8.058
814.804 978.933 6.7769 248.424252 38.091062 6.636
631.097 977.189 7.9174 247.776605 34.320316 8.081
1080.695 975.894 7.4539 249.375707 43.564738 7.272
602.818 974.585 7.1718 247.623842 33.750880 7.086
674.362 971.449 6.2660 247.761598 35.225063 6.470
586.102 972.495 8.4348 247.518779 33.410615 8.256
1391.531 966.716 6.7516 250.615879 49.936443 6.530
652.431 964.683 8.4363 247.523163 34.785894 8.182
1216.935 963.543 8.2684 249.631548 46.393849 8.109
671.703 958.869 7.5604 247.437885 35.201901 7.562
1022.521 954.116 4.3042 248.525751 42.437027 4.193
909.947 955.312 7.6845 248.138295 40.113248 7.974
549.315 955.135 7.0626 246.990420 32.699461 6.990
810.341 952.970 8.2536 247.732092 38.064532 8.123
691.946 950.918 7.9018 247.300507 35.633811 8.106
1337.684 945.822 4.4778 249.686859 48.928346 5.070
1274.978 947.260 8.5118 249.419299 47.628315 8.417
823.324 947.047 8.5981 247.623409 38.347310 8.208
1224.335 942.785 5.9244 249.097154 46.610030 8.796
1429.720 933.131 7.2529 249.757688 50.829831 7.147
1006.625 933.053 7.9343 247.880228 42.162615 7.772
937.017 931.758 8.0945 247.593948 40.736673 7.943
1107.018 923.012 8.1554 247.983664 44.264198 7.830
534.533 921.228 7.7138 246.127171 32.468304 7.735
1341.771 918.813 8.1135 248.870818 49.086674 8.647
1253.005 919.322 8.5887 248.479131 47.271604 9.001
1071.793 916.797 7.6370 247.653746 43.545361 7.749
1170.515 913.144 5.8147 247.946785 45.598273 5.686
454.836 914.795 8.2797 245.771275 30.850165 9.707
989.797 909.519 3.9964 247.160620 41.881677 5.047
843.037 911.759 8.4800 246.755844 38.843167 8.140
1044.786 909.053 8.1853 247.347133 43.015709 7.840
526.441 905.893 6.6086 245.738337 32.341485 9.788
772.007 904.532 5.6691 246.350709 37.394057 5.554
540.722 905.390 7.7741 245.758052 32.626516 7.763
706.049 903.679 8.5527 246.147421 36.027558 8.586
592.448 902.341 7.6378 245.811207 33.697087 7.710
796.738 901.959 8.4003 246.356113 37.910237 8.365
1526.519 895.959 4.7044 249.047588 52.900048 5.498
592.185 894.810 5.2941 245.621742 33.703485 5.576
596.730 892.995 5.1006 245.589267 33.799051 5.390
1061.394 896.207 8.6064 247.050071 43.390897 8.558
936.189 894.927 7.0139 246.589516 40.809484 7.031
1430.355 894.978 8.2965 248.537835 50.968903 8.001
753.844 894.671 8.2015 246.043360 37.036632 8.431
684.477 893.314 7.1986 245.823423 35.611768 7.293
1389.241 891.727 7.1112 248.236228 50.142109 6.917
822.939 888.183 7.8832 246.068366 38.478292 7.855
1281.170 885.345 7.3050 247.562323 47.952380 7.043
1491.252 884.587 7.1127 248.496612 52.237960 6.927
830.196 884.367 8.0983 245.989801 38.641750 8.010
1329.315 877.572 6.6297 247.525147 48.961097 6.431
1134.456 875.638 7.7996 246.714273 44.954389 7.418
558.625 875.727 8.3836 245.070962 33.053280 8.558
992.115 874.477 8.4329 246.200422 42.017097 8.450
1435.296 872.043 8.6236 247.818980 51.137996 8.539
634.920 871.369 8.0418 245.145714 34.627796 9.095
1016.837 876.676 8.0019 246.346653 42.520018 7.801
1249.112 867.474 7.5915 246.891112 47.341705 7.444
760.108 866.092 8.7034 245.377996 37.232054 9.670
995.782 864.856 8.2152 245.949347 42.111302 8.019
537.176 863.929 7.9528 244.734918 32.627060 8.113
901.059 862.453 8.5954 245.593596 40.163440 8.712
616.217 862.080 8.3532 244.869160 34.262874 8.089
1153.011 860.260 7.9810 246.329876 45.378596 7.854
1041.835 861.212 8.3949 245.994095 43.074161 8.159
1119.775 859.659 7.3502 246.200282 44.689935 7.227
747.102 858.033 6.5024 245.075866 36.975584 6.784
1415.017 858.274 8.5458 247.279253 50.766399 8.172
496.439 855.487 7.0771 244.441546 31.804391 6.918
1277.649 855.457 6.6877 246.633409 47.957606 6.628
1445.552 851.232 6.4715 247.181018 51.407735 6.424
1461.995 848.971 8.0188 247.179163 51.751052 7.772
1179.033 848.094 7.7942 246.066920 45.944455 8.003
625.703 847.564 7.7702 244.524487 34.482759 7.565
961.026 846.950 8.1079 245.347832 41.435092 8.014
1088.913 845.555 7.8927 245.691342 44.083615 7.725
939.244 845.538 7.7492 245.263801 40.991091 8.325
1453.678 844.716 7.5129 247.005156 51.592089 7.427
904.023 842.665 8.4275 245.070605 40.259429 8.161
877.379 841.673 5.6439 244.979751 39.708595 5.528
783.788 842.100 7.3577 244.752378 37.765715 7.346
615.511 841.955 8.5761 244.364081 34.281242 8.252
683.970 839.874 7.7135 244.463523 35.699581 7.480
1388.895 835.500 8.4745 246.436952 50.290072 8.493
1074.929 833.478 8.3426 245.299712 43.819768 7.987
807.513 832.970 8.6113 244.567474 38.275306 8.324
1279.185 831.197 8.6139 245.892345 48.052692 8.638
1258.837 829.976 8.0205 245.786395 47.630551 8.651
1429.283 828.756 7.5079 246.383304 51.138479 7.271
1395.914 828.881 7.9934 246.249254 50.452063 7.907
969.906 826.636 8.4319 244.810187 41.659374 8.073
721.979 825.726 8.4138 244.186654 36.510952 8.166
568.189 825.170 8.6031 243.849121 33.330063 9.116
1456.637 821.532 7.5580 246.251096 51.716610 7.368
1382.870 822.213 8.2002 245.990346 50.202803 8.279
690.165 820.707 7.9290 243.985714 35.870715 8.173
1158.168 819.539 7.7364 245.145730 45.579193 7.614
679.355 819.055 8.3201 243.926106 35.640970 8.252
634.443 818.393 7.3967 243.812378 34.713171 7.363
723.337 816.980 7.1779 243.961336 36.554482 7.136
592.824 815.957 5.3757 243.670225 33.858616 5.620
823.919 816.669 7.8162 244.177236 38.645022 7.900
1483.727 814.010 7.1635 246.110001 52.289411 6.830
1388.661 815.102 7.6256 245.779531 50.344216 7.477
1524.866 813.842 8.6012 246.272811 53.126570 8.477
1192.517 808.990 4.0162 244.935156 46.313369 3.854
957.771 812.806 7.9418 244.392346 41.429561 8.173
890.586 811.447 6.8347 244.193601 40.038366 6.916
527.009 811.508 8.2604 243.435059 32.503521 8.399
1408.292 811.033 8.3401 245.714867 50.756978 8.678
531.029 802.183 7.7226 243.212501 32.599210 7.606
1324.034 799.710 8.6170 245.069008 49.051972 8.217
656.518 798.554 7.6131 243.355448 35.198926 7.650
561.788 798.937 8.1854 243.190160 33.236786 8.570
1625.124 796.573 5.9103 246.005420 55.159689 8.871
533.315 796.307 7.6460 243.072927 32.655355 7.458
1442.139 793.869 8.1378 245.285393 51.488556 8.071
1322.734 791.262 6.0122 244.796724 49.038161 6.072
565.920 787.652 6.4251 242.915001 33.342760 6.443
451.090 786.687 7.1724 242.725099 30.985399 7.501
793.815 786.191 7.3406 243.303848 38.072416 7.121
1468.120 785.468 6.9196 245.102406 52.039034 6.635
616.955 785.958 8.0599 242.960495 34.396652 7.935
500.856 784.543 7.9769 242.731303 32.003080 7.636
903.207 783.725 8.5669 243.464347 40.348811 8.094
877.725 781.879 7.2253 243.365176 39.824427 7.268
714.013 778.527 5.6515 242.950216 36.425089 5.772
694.301 774.055 7.9722 242.801764 36.021145 7.801
840.081 772.206 6.5044 243.027270 39.055521 6.531
1224.035 768.376 7.7932 243.799590 47.040088 7.976
1215.915 765.682 8.5323 243.696515 46.877603 8.623
421.012 766.048 8.2476 242.161672 30.382399 8.067
1059.796 760.983 8.5551 243.179814 43.649583 8.190
1028.564 760.179 8.4694 243.089562 42.988660 8.805
353.353 759.286 7.7792 241.903089 29.027824 9.476
998.461 757.660 5.9661 242.948331 42.374570 6.043
922.921 771.619 7.9360 243.179989 40.781706 7.911
1203.627 757.818 8.7465 243.431745 46.639703 8.426
973.019 757.983 8.3721 242.906921 41.843042 8.844
1249.565 755.717 8.4190 243.481280 47.595719 8.320
582.836 754.199 8.7249 242.112209 33.733083 8.446
1167.084 752.583 7.7616 243.179214 45.894369 7.674
715.476 751.051 4.8317 242.242874 36.490923 4.845
670.214 752.205 7.8809 242.199965 35.549897 7.601
910.885 750.165 7.9068 242.565554 40.555718 7.780
1030.488 747.988 7.6151 242.747015 43.055005 7.472
889.814 746.710 8.0768 242.498928 40.126427 9.167
1182.852 747.177 8.1071 243.063123 46.226031 7.869
1017.319 746.495 7.5962 242.706266 42.810762 9.212
1522.453 745.764 7.2666 243.947009 53.236671 6.988
516.986 744.994 8.4824 241.786074 32.379583 9.473
1090.089 743.868 8.1709 242.741706 44.309501 8.252
396.577 744.167 7.9161 241.608310 29.904627 7.771
1066.414 740.467 6.8169 242.601311 43.817649 6.704
935.727 739.672 6.8783 242.396053 41.067588 9.933
1338.772 737.395 8.6736 243.136440 49.471795 8.553
1272.962 746.993 8.1705 243.271700 48.093626 8.742
1256.159 735.796 8.2132 242.876034 47.769002 8.120
1245.624 733.641 7.6185 242.798801 47.560020 8.035
445.207 733.786 8.3129 241.418461 30.917022 8.539
509.538 731.072 6.7079 241.438012 32.247783 6.879
477.368 730.265 8.0287 241.376424 31.583428 7.739
912.691 729.427 7.6454 242.004227 40.627533 7.660
1361.627 728.816 8.7584 242.927206 49.963004 8.518
1257.243 727.517 7.7889 242.632193 47.807006 7.670
841.980 727.956 8.7939 241.843211 39.155908 8.459
1318.008 726.324 8.2853 242.738144 49.063651 8.129
1118.724 722.712 4.3521 242.192403 44.934918 4.216
642.660 725.076 8.3926 241.468557 35.006039 8.115
1295.966 722.574 7.5827 242.566994 48.611384 7.502
1138.979 722.498 8.2367 242.228186 45.353288 8.237
553.050 721.932 8.0479 241.267822 33.152378 7.967
716.208 720.639 7.3711 241.453304 36.528225 7.491
605.234 720.443 7.6108 241.296915 34.236747 7.756
520.995 715.971 7.8228 241.081838 32.497244 8.057
1139.765 714.656 7.2226 241.997467 45.380293 7.125
1465.974 713.497 8.8022 242.689212 52.137071 8.590
601.911 710.867 7.0091 241.056183 34.178795 6.778
1509.888 708.648 7.8949 242.634432 53.042633 7.995
1370.660 708.492 7.0607 242.288943 50.180863 6.965
1397.178 706.216 8.6001 242.279445 50.733354 8.197
840.763 705.332 6.8396 241.236636 39.156511 6.735
593.606 706.161 8.7971 240.928449 34.012974 8.296
667.755 702.516 8.2769 240.927310 35.549078 8.131
977.977 702.254 8.5799 241.346180 42.026652 8.436
1502.492 700.539 7.8351 242.339515 52.904973 7.935
1240.868 699.941 6.8638 241.748195 47.505042 6.638
626.001 699.963 8.6893 240.807292 34.688024 8.359
1059.034 697.974 7.6431 241.364067 43.719053 7.659
719.207 696.378 5.9561 240.830685 36.631789 5.870
1316.903 696.200 7.9004 241.784024 49.083094 7.636
1143.989 696.777 8.4118 241.478458 45.495324 8.292
641.605 696.765 8.5660 240.750265 35.019160 8.536
391.432 691.963 5.2159 240.360689 29.851059 4.963
489.988 690.911 7.9580 240.440327 31.876226 7.733
1242.592 684.793 8.7227 241.287562 47.557102 8.550
558.130 681.053 5.5878 240.261085 33.303508 5.471
474.435 681.063 6.7233 240.177160 31.568241 6.738
497.304 680.266 7.1592 240.181753 32.039537 7.195
1519.732 677.055 8.3917 241.573933 53.294304 8.456
880.823 676.539 6.9345 240.508708 40.022847 6.989
1168.512 669.620 4.8887 240.699569 46.036700 4.694
1383.662 668.766 7.8673 241.055872 50.499167 8.888
1226.540 665.668 5.4229 240.663224 47.240360 6.624
839.994 668.075 6.9715 240.228947 39.177514 6.767
370.221 668.164 7.3561 239.774652 29.431582 7.235
1045.705 667.005 8.6973 240.453077 43.473225 8.637
965.486 666.972 8.4232 240.348186 41.796189 8.454
1491.480 666.001 8.4885 241.141174 52.727747 8.374
1279.665 663.861 8.4961 240.689693 48.351019 8.335
398.183 663.457 7.4752 239.686388 30.004642 7.531
1573.761 661.007 8.2742 241.134254 54.422412 8.157
1221.187 656.752 7.1268 240.424618 47.184820 9.430
1524.189 656.068 8.4663 240.869884 53.409278 8.631
718.043 654.434 5.5297 239.740467 36.643776 5.772
1514.682 655.112 8.2993 240.816113 53.216948 8.057
732.525 654.169 8.0365 239.749619 36.941992 7.885
1083.539 651.543 6.9681 240.049311 44.279504 6.902
688.423 651.063 7.4154 239.628188 36.022147 7.606
1289.989 650.737 8.5778 240.298933 48.578239 8.478
1499.540 647.596 5.9919 240.523163 52.915919 6.083
774.700 647.029 7.4721 239.601199 37.827483 7.373
1460.528 644.105 8.7799 240.345854 52.119361 8.207
1314.899 642.169 8.7480 240.064884 49.109229 8.430
1352.205 638.871 7.7217 240.007392 49.900149 8.002
1031.955 638.155 7.7364 239.606983 43.213711 7.425
456.414 635.878 7.8104 239.064014 31.222072 8.104
863.458 635.582 6.3955 239.374269 39.695083 6.420
1145.012 633.974 8.8102 239.602194 45.574580 8.818
1549.978 633.024 7.8988 240.103369 53.966638 7.733
957.558 632.929 8.4985 239.397319 41.663092 8.818
1576.931 631.361 8.1170 240.088556 54.522562 7.894
1351.742 631.429 6.3211 239.768319 49.881046 6.067
1218.824 630.872 8.8251 239.598110 47.117462 8.310
1388.199 630.221 8.1555 239.781302 50.639262 7.978
1510.101 628.999 8.1651 239.904975 53.152942 8.008
374.418 629.148 8.0905 238.857550 29.537090 7.683
1075.989 628.268 8.5690 239.362288 44.135708 8.444
779.564 622.284 5.6371 238.948280 37.946957 5.466
850.654 623.177 8.1418 239.029539 39.429400 7.891
607.550 618.640 7.3455 238.736820 34.362530 7.138
1574.804 616.806 8.6761 239.565000 54.487098 8.635
1587.443 612.873 5.1949 239.447673 54.749766 4.987
1000.106 613.648 5.9696 238.877462 42.566193 5.729
867.027 613.711 8.4550 238.778843 39.782745 8.173
510.057 613.483 8.3402 238.551370 32.342676 8.338
370.529 609.009 8.5414 238.374056 29.468751 8.323
1027.400 605.283 5.2286 238.657710 43.138565 5.556
456.506 604.865 8.4457 238.312754 31.237409 8.253
1596.881 600.339 7.9576 239.010222 54.952536 7.795
1349.651 599.824 8.8943 238.749578 49.860523 8.418
343.374 599.106 8.0692 238.128590 28.913298 7.939
1551.954 597.051 8.7791 238.846455 54.031882 8.321
912.170 597.201 8.4679 238.355058 40.731902 8.483
938.933 593.399 8.1590 238.268384 41.295216 7.982
390.451 593.351 7.4816 238.009437 29.881671 7.535
994.265 588.989 4.8049 238.168928 42.451518 4.664
1166.002 588.917 7.1562 238.285368 46.040055 7.352
1003.904 582.174 7.7890 238.004061 42.663537 9.765
668.760 580.898 4.8752 237.808049 35.657384 4.908
1543.472 580.882 8.5643 238.268656 53.871046 8.351
864.327 580.898 8.0538 237.887093 39.735943 8.099
759.953 576.104 7.6542 237.715380 37.553495 7.634
999.425 573.528 7.7333 237.738615 42.565410 7.437
1283.269 568.111 6.2756 237.694261 48.483015 7.903
1496.318 567.882 7.0657 237.791991 52.906983 6.894
1441.047 563.513 8.4298 237.620094 51.771414 8.444
1092.889 562.796 8.1584 237.458189 44.522103 7.757
860.863 560.595 8.8854 237.332124 39.674230 8.438
479.788 550.845 6.4566 237.007473 31.735614 6.576
541.466 547.686 7.1955 236.937681 33.011995 7.174
1401.545 546.914 8.6110 237.055806 50.954554 8.469
1355.860 546.222 8.1795 237.024256 50.004577 8.024
1150.625 544.832 6.9559 236.943195 45.732879 6.894
1254.016 543.951 9.0320 236.932223 47.893023 8.645
741.675 543.497 8.1295 236.852551 37.179617 8.042
1096.259 541.693 7.3753 236.845225 44.598788 7.442
423.217 542.081 8.1959 236.790625 30.565640 7.775
958.788 539.193 8.6611 236.758911 41.719716 8.202
1210.685 537.358 7.5633 236.724223 46.986257 7.278
1451.153 537.177 8.6695 236.738501 51.979637 8.455
1177.779 537.139 7.8837 236.715407 46.296790 8.011
821.705 534.039 8.5613 236.613430 38.850303 8.354
706.664 533.739 7.4648 236.602089 36.446003 7.602
1459.068 533.274 8.4929 236.602175 52.147803 8.147
1116.744 532.240 8.3680 236.568609 45.021844 7.910
994.542 532.025 7.6838 236.556830 42.468405 7.495
884.963 525.968 8.1189 236.390627 40.177549 7.850
1484.984 525.113 8.2243 236.326216 52.677119 8.027
934.327 522.065 8.1615 236.286474 41.211545 8.109
1499.840 518.180 7.5471 236.090173 52.983570 7.439
1496.043 516.305 7.8852 236.023999 52.905433 7.849
758.752 515.574 8.6279 236.119820 37.534924 8.519
1130.837 513.847 8.6444 236.022827 45.316068 8.403
856.280 511.746 7.5129 236.007642 39.573858 7.740
517.474 509.567 5.7668 235.997086 32.515808 5.694
1157.993 510.037 8.5333 235.904373 45.885597 8.592
1248.152 509.140 8.6118 235.849845 47.768402 8.421
1206.796 509.607 8.6788 235.877547 46.903874 8.379
1469.699 506.940 5.7435 235.711501 52.360902 5.473
1115.742 502.984 8.4852 235.700577 45.000748 8.384
628.458 502.977 8.0301 235.813318 34.812010 8.217
1152.048 501.814 7.3989 235.658007 45.762058 7.050
463.003 501.613 7.5845 235.809830 31.384583 7.309
478.633 495.863 6.8605 235.669181 31.708754 6.871
974.881 494.179 8.2378 235.492993 42.051327 8.339
955.000 489.685 8.5784 235.369724 41.634073 8.310
735.575 489.960 8.1402 235.452624 37.048405 7.720
807.930 487.359 6.6314 235.359288 38.557393 7.887
1262.099 484.641 8.3131 235.081461 48.054907 7.822
1107.905 481.625 7.6234 235.073719 44.831009 7.595
1060.767 481.441 7.3896 235.089267 43.846377 7.199
815.735 481.070 7.6638 235.188798 38.718583 7.945
758.250 477.197 6.9724 235.108297 37.517094 7.085
734.270 477.466 7.5203 235.125916 37.016988 7.166
1431.848 476.822 8.5104 234.720544 51.570246 8.481
1082.988 476.689 8.6067 234.938433 44.311194 8.308
394.741 475.209 7.7370 235.188783 29.972246 7.656
1376.559 473.153 6.0898 234.642492 50.423271 5.932
1208.377 472.611 6.7462 234.745353 46.926563 6.956
1005.398 473.016 7.3058 234.883565 42.696946 7.899
602.050 473.384 7.9511 235.072812 34.260305 7.938
1121.893 472.670 8.2232 234.799197 45.117401 8.147
1574.958 470.642 6.0266 234.383368 54.508730 5.969
1282.147 470.871 7.9645 234.638402 48.462782 8.342
716.015 466.351 4.8182 234.842726 36.636839 5.913
1360.022 467.902 8.0682 234.480710 50.082206 7.785
1202.142 466.748 6.0191 234.567583 46.797696 5.784
1049.449 464.078 7.0841 234.594777 43.604260 6.818
1581.189 459.723 6.0625 233.987670 54.630545 5.769
1010.043 460.468 8.5196 234.531002 42.782465 8.594
406.807 461.603 8.6892 234.860171 30.207289 8.863
622.146 459.139 6.2683 234.703549 34.675040 6.245
478.014 460.475 8.3853 234.806647 31.687928 8.425
894.163 455.664 5.3611 234.456661 40.353433 5.353
1456.721 456.506 7.0420 234.017407 52.069813 6.733
783.028 456.004 7.8894 234.538252 38.028046 7.622
697.631 454.941 7.1815 234.559503 36.247139 9.865
471.624 455.158 7.5728 234.677103 31.551852 7.245
1546.859 453.731 6.1130 233.817489 53.922148 6.098
1114.432 449.016 8.6624 234.105599 44.950572 8.341
1356.653 446.632 6.9457 233.799450 49.994638 7.073
1342.355 446.486 7.3914 233.811769 49.698370 7.542
401.832 445.122 8.0978 234.473845 30.102951 8.539
1506.483 440.071 8.6798 233.401488 53.081100 8.453
752.358 439.211 7.8399 234.109086 37.376597 8.495
868.885 438.133 6.5189 234.009322 39.802568 6.903
1029.428 435.612 6.8342 233.791705 43.167539 6.852
800.112 434.579 6.4040 233.954973 38.373923 6.441
396.325 434.631 6.6334 234.222614 29.991188 6.503
672.369 434.681 7.8059 234.052753 35.705394 7.570
1112.914 433.448 7.9654 233.644164 44.914217 8.579
1072.608 433.632 7.2437 233.697289 44.067636 7.252
830.676 430.210 4.9818 233.812163 39.010066 5.322
682.771 431.588 8.6649 233.965269 35.923623 8.296
1574.967 430.327 8.2750 232.954282 54.471415 8.601
965.069 416.689 8.4229 233.316237 41.809679 8.245
684.004 408.698 8.3886 233.372572 35.928958 8.597
1230.180 408.583 8.8485 232.760013 47.333853 8.333
922.051 401.567 5.1729 232.945743 40.899337 4.992
919.272 393.821 4.9782 232.732327 40.833048 5.219
1185.012 399.194 7.8392 232.540005 46.386087 7.766
863.960 398.978 7.8711 232.934865 39.678877 7.785
463.647 395.417 4.3256 233.232425 31.359130 4.143
1018.679 398.112 8.5360 232.731917 42.911111 8.108
1248.992 396.207 7.1772 232.347084 47.713440 6.855
411.658 393.930 8.3178 233.235475 30.281222 8.222
1554.749 391.750 6.8027 231.634131 54.020297 6.443
1374.963 389.485 8.2368 231.918943 50.314911 8.036
1224.733 389.497 6.4835 232.184971 47.201516 6.151
717.422 389.366 6.6654 232.842935 36.616594 6.445
1389.816 386.914 7.9480 231.812231 50.619560 7.819
1459.304 385.332 7.1939 231.617187 52.052567 7.282
898.078 385.445 8.3672 232.529734 40.385376 7.960
875.638 384.300 8.1580 232.523092 39.909048 7.694
726.704 381.180 6.6359 232.615869 36.804553 6.649
614.502 379.381 7.0811 232.691961 34.465659 6.811
1565.124 378.480 6.9523 231.146944 54.212801 6.891
954.864 378.373 7.9949 232.264969 41.560087 8.034
1402.019 377.005 8.7297 231.448673 50.912778 9.964
1389.306 373.733 7.6442 231.384483 50.594148 7.867
555.508 372.988 8.5410 232.592021 33.236869 8.380
648.900 370.697 7.8957 232.435823 35.175237 8.015
1018.495 369.500 7.5756 231.908002 42.889784 9.738
461.200 369.026 6.7721 232.594868 31.285934 6.477
1149.164 368.635 7.4177 231.681740 45.603916 7.214
819.597 367.077 6.9371 232.130354 38.723732 6.720
526.001 367.487 8.5878 232.490131 32.618757 8.435
1072.919 361.833 7.8139 231.610903 44.003482 7.831
1219.725 359.751 7.1897 231.283332 47.060826 6.866
1166.120 359.558 7.6011 231.372652 45.947703 7.342
1087.231 358.671 7.3277 231.496184 44.302238 7.316
1465.935 358.511 8.6662 230.710636 52.153119 8.659
1552.967 352.591 8.0541 230.265485 53.928525 7.661
1476.044 349.008 8.1445 230.362137 52.344454 7.696
1134.643 345.594 6.2118 231.021322 45.271035 6.191
1458.154 337.529 5.9987 230.021461 51.958516 5.656
1473.705 337.375 8.6425 229.954323 52.287535 8.831
610.210 334.625 5.5014 231.572433 34.335996 5.615
1249.149 334.188 8.5081 230.437100 47.634325 8.544
756.829 325.469 4.3529 231.122618 37.377170 4.334
520.701 326.891 7.2215 231.498738 32.474035 7.132
1187.796 327.597 8.7934 230.372692 46.356610 8.337
795.806 326.072 7.6925 231.077074 38.187698 7.688
1374.489 325.487 8.0059 229.850748 50.214642 7.618
1215.962 322.664 8.4409 230.155973 46.925698 8.209
1442.990 321.526 8.6361 229.532811 51.617097 8.311
1155.290 320.065 6.9188 230.220493 45.664871 6.785
863.490 314.681 5.4811 230.655718 39.581462 5.733
1096.660 314.037 6.4716 230.173666 44.434374 6.183
1411.955 301.477 6.6330 228.990660 50.934668 8.944
1256.913 301.595 8.0234 229.409945 47.739405 7.767
663.485 302.022 8.3988 230.682084 35.394787 8.657
1155.060 297.887 6.6444 229.562331 45.619827 6.828
1125.948 298.954 8.2824 229.665156 45.017260 7.934
607.381 297.112 7.6298 230.634689 34.229423 7.411
490.329 298.114 8.4101 230.838435 31.811832 8.076
932.398 295.885 7.1983 230.009625 40.984170 6.949
968.850 290.335 8.2685 229.775751 41.733208 7.983
500.074 289.504 8.3445 230.612626 32.003674 8.308
545.245 285.789 5.6369 230.452396 32.933695 5.362
1511.420 285.550 7.4926 228.109077 52.930089 7.751
1380.895 284.477 8.2948 228.505368 50.259982 8.241
1106.942 278.736 8.0676 229.081631 44.580559 8.449
469.622 276.637 5.6139 230.349811 31.367373 9.308
1009.915 277.562 7.5918 229.328585 42.565875 7.518
779.801 277.590 8.5117 229.828702 37.784491 8.324
1358.079 274.222 7.4924 228.251463 49.775235 7.379
1270.654 273.070 7.8980 228.495551 47.969031 7.492
475.817 271.239 7.1977 230.208661 31.480109 6.954
1248.100 270.292 8.4812 228.475959 47.501973 8.281
1301.144 266.125 7.3405 228.182239 48.580775 7.283
1365.599 263.816 7.2409 227.895760 49.903035 7.887
1488.369 263.754 8.4044 227.461785 52.410832 8.480
526.685 261.083 6.6922 229.875199 32.514899 6.341
830.024 254.559 8.3771 229.114559 38.790253 8.475
1035.451 250.572 7.0078 228.496749 43.048080 6.685
655.612 251.805 8.8122 229.405166 35.159591 8.642
1518.171 250.850 8.2627 226.894100 52.993571 7.872
1422.883 250.383 7.8747 227.269686 51.032413 8.314
993.443 248.206 6.0541 228.542958 42.171407 6.333
579.912 248.596 6.9719 229.471132 33.594331 6.755
1506.165 247.644 7.6732 226.835525 52.743074 7.471
747.836 246.771 7.4839 229.089040 37.069536 7.171
485.835 244.766 8.2296 229.547304 31.647061 7.821
1375.712 239.390 6.5694 227.081410 50.054959 6.444
446.444 239.657 7.2443 229.498682 30.832930 6.970
807.954 238.475 7.4575 228.735698 38.301109 7.175
1767.008 233.994 8.7587 225.229703 57.753547 8.640
807.315 225.696 6.4017 228.398259 38.264702 6.325
567.998 223.605 3.6278 228.909787 33.320922 7.894
826.865 224.358 7.9446 228.310461 38.665361 8.188
842.971 217.766 7.9423 228.096023 38.987575 7.816
828.053 212.494 8.2919 227.999983 38.670123 8.562
1287.072 205.596 5.8959 226.357643 48.150971 5.575
698.354 205.971 8.1842 228.143592 35.971610 7.897
1456.980 204.863 7.3701 225.630434 51.619606 7.372
495.496 203.144 5.9796 228.525181 31.787844 6.162
736.521 203.485 7.6151 227.990011 36.754719 7.366
844.578 194.724 8.6523 227.475625 38.975831 8.402
1265.058 189.306 5.0502 225.947850 47.654426 6.095
1009.721 192.091 8.3766 226.925295 42.388130 8.127
1843.464 188.392 5.7643 223.155533 59.051060 9.677
1408.762 183.300 8.3257 225.147213 50.578012 7.858
1341.365 180.634 7.5003 225.359597 49.194777 7.377
901.481 175.044 8.7452 226.788646 40.108045 8.164
560.928 173.806 7.1825 227.662063 33.078883 7.031
1354.592 170.218 8.8078 224.973479 49.433547 8.396
1564.774 165.949 8.0982 223.913238 53.591237 9.684
1122.157 165.259 6.8238 225.777305 44.644486 6.646
1388.765 162.497 7.8620 224.576646 50.104272 7.969
1250.521 161.691 6.6810 225.161324 47.277440 6.335
951.775 160.925 7.7748 226.251055 41.109442 7.656
571.640 157.617 7.5041 227.238782 33.265363 7.281
593.500 153.130 6.9479 227.076767 33.706513 6.800
727.338 150.211 6.6861 226.646440 36.456065 6.411
1070.960 148.030 8.6585 225.474898 43.541835 8.204
1368.029 144.226 5.9740 224.096002 49.628447 5.689
832.080 144.456 7.9544 226.181329 38.605230 7.547
607.346 142.643 8.2280 226.776230 33.965033 7.933
1308.152 141.274 7.9302 224.284427 48.395271 7.759
999.494 140.933 8.0761 225.526826 42.052346 8.026
1122.780 138.984 7.2189 225.014957 44.586338 7.022
646.515 137.019 8.2352 226.533606 34.753500 8.010
920.336 129.095 3.6488 225.486509 40.390568 3.577
850.724 121.034 8.4415 225.506471 38.927058 8.207
906.898 118.798 7.3990 225.252878 40.084321 7.202
1119.930 118.190 7.6733 224.429005 44.466318 7.407
671.121 109.574 5.6714 225.792355 35.225802 9.781
639.881 110.928 6.8562 225.902058 34.565759 6.692
1225.123 107.394 7.6405 223.640190 46.593741 7.457
1327.672 105.121 8.2153 223.087116 48.670722 7.715
592.074 103.509 8.3242 225.852926 33.571166 8.123
887.849 101.401 7.0359 224.854059 39.644892 6.730
869.560 100.735 5.9185 224.903946 39.265335 5.674
1066.975 96.691 8.3569 224.033387 43.317805 7.989
1163.906 96.293 8.3078 223.602170 45.298816 7.965
1182.714 94.095 8.3854 223.455446 45.682663 8.123
579.026 92.551 7.4135 225.621927 33.274357 7.264
1387.593 91.227 8.3931 222.325412 49.837749 8.229
915.004 87.158 8.0047 224.369191 40.164288 8.884
1223.133 85.626 7.0972 223.013508 46.476623 6.896
835.002 87.030 8.4153 224.667684 38.519282 8.406
1333.632 84.663 5.9300 222.422359 48.720999 6.674
1477.820 81.433 8.5560 221.612055 51.564864 9.729
963.399 80.309 7.6162 223.999374 41.136610 7.214
773.604 80.790 8.7149 224.739888 37.248412 9.388
670.058 75.977 8.2642 224.931335 35.100859 7.861
1031.985 1072.640 5.5063 251.832276 42.238914 6.096
1150.005 68.707 8.4126 222.864716 44.928498 8.399
866.961 1059.411 3.5912 250.724021 38.922257 3.577
203.901 1062.275 8.1353 248.338291 25.689697 8.390
1009.692 1069.823 8.3230 251.647876 41.792286 8.005
1727.415 1069.376 7.4820 256.028014 55.975891 9.435
1083.571 1066.671 8.3468 251.934384 43.310497 8.705
952.322 1065.920 8.4607 251.274115 40.638184 8.175
656.987 1061.387 8.1242 249.949238 34.625384 7.941
734.492 1062.727 7.4439 250.269095 36.201198 7.319
699.979 1050.934 7.6200 249.834957 35.532235 8.336
1213.018 1055.635 4.9818 252.309477 45.983892 8.848
1246.101 1055.651 6.9898 252.497504 46.649075 7.045
1328.090 1046.764 7.9979 252.713179 48.343769 7.892
699.782 1054.585 8.1298 249.938194 35.515504 7.635
1039.180 1054.804 8.5467 251.382868 42.447196 8.198
788.523 1046.277 7.9359 250.064309 37.355649 7.891
1117.842 1037.203 8.2075 251.285478 44.113335 8.061
1075.164 1045.482 6.1448 251.299144 43.217173 6.226
827.960 1035.506 8.6012 249.940911 38.196607 8.357
1298.822 1034.748 8.6515 252.179581 47.798368 8.428
974.497 1034.928 8.4335 250.540550 41.195277 8.139
1320.102 1033.666 7.8227 252.272533 48.235477 7.508
1085.543 1032.092 8.5486 250.984538 43.475320 9.039
1190.165 1026.825 8.7460 251.346888 45.623086 8.686
720.476 1019.724 6.9924 249.132003 36.039935 7.265
834.222 1028.520 7.6541 249.787309 38.344987 7.429
1355.842 1009.142 8.6162 251.720718 49.057486 8.640
791.052 1018.515 7.7982 249.361029 37.490351 7.801
1283.029 1018.309 8.0237 251.599232 47.543303 8.048
1032.955 1014.037 7.4827 250.236493 42.461749 7.695
1017.689 1014.321 8.1387 250.175483 42.145343 8.056

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 272 KiB

View File

@ -0,0 +1 @@
48473 21 040AX 9999 G 20220823041631625 17 25 1533406+483563 37 S

Binary file not shown.

After

Width:  |  Height:  |  Size: 283 KiB

View File

@ -0,0 +1 @@
52718 22 056C 9999 G 20220823041631625 17 25 1527277+381243 37 S

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 KiB

View File

@ -0,0 +1 @@
90000 22 500A 9999 G 20220823041631625 17 25 1457613+535844 37 S

Binary file not shown.

After

Width:  |  Height:  |  Size: 283 KiB

View File

@ -0,0 +1,4 @@
ax,ay,az,bx,by,bz,n
1585.699766,186.468458,51.073014,0.879795,0.416052,0.229917,3424
794.849123,355.614035,48.596491,0.780147,-0.382158,0.495304,285
1297.660777,432.469965,52.989399,0.923059,0.193205,0.332617,283
1 ax ay az bx by bz n
2 1585.699766 186.468458 51.073014 0.879795 0.416052 0.229917 3424
3 794.849123 355.614035 48.596491 0.780147 -0.382158 0.495304 285
4 1297.660777 432.469965 52.989399 0.923059 0.193205 0.332617 283

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 447 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.