Package: panoptes-pocs
Welcome to POCS documentation!Project PANOPTESPANOPTESis an open source citizen science project
designed to findtransiting exoplanetswith
digital cameras. The goal of PANOPTES is to establish a global network of of robotic
cameras run by amateur astronomers and schools (or anyone!) in order to monitor,
as continuously as possible, a very large number of stars. For more general information
about the project, including the science case and resources for interested individuals, see theproject overview.POCSPOCS (PANOPTES Observatory Control System) is the main software driver for a
PANOPTES unit, responsible for high-level control of the unit.For more information, see the full documentation at:https://pocs.readthedocs.io.InstallPOCS EnvironmentIf you are running a PANOPTES unit then you will most likely want an  entire PANOPTES environment, which includes things like plate-solvers (to tell you what stars you are looking at) and other necessary tools for operation.There is a bash shell script that will install an entire working POCS system on your computer.  Some
folks even report that it works on a Mac.To install POCS via the script, open a terminal and enter (you will be prompted for yoursudopassword):curl-fsSLhttps://install.projectpanoptes.org>install-pocs.sh
bashinstall-pocs.shOr usingwget:wget-qO-https://install.projectpanoptes.org>install-pocs.sh
bashinstall-pocs.shPOCS ModuleIf you want just the POCS module, for instance if you want to override it in
your own OCS (seeHuntsman-POCSfor an example), then install viapip:pipinstallpanoptes-pocsIf you want the extra features, such as Google Cloud Platform connectivity, then
use the extras options:pipinstall"panoptes-pocs[google,focuser,testing]"Running POCSPOCSrequires three things to properly run:Environment variables that tellPOCSthe location of the main PANOPTES directory ($PANDIR).Apanoptes-utilsconfig-serverrunning to provide dynamic configuration.AnObservatoryinstance that has details about the location of a POCS unit (real or simulated), which hardware is available, etc.A minimal working example with a simulatedObservatorywould be:importosfrompanoptes.utils.config.serverimportconfig_serverfrompanoptes.pocs.observatoryimportObservatoryfrompanoptes.pocs.coreimportPOCSos.environ['PANDIR']='/var/panoptes'conf_server=config_server('conf_files/pocs.yaml')I01-2001:01:10.886Startingpanoptes-config-serverwithconfig_file='conf_files/pocs.yaml'S01-2001:01:10.926ConfigserverLoaded17top-levelitemsI01-2001:01:10.928Configitemssavedtoflaskconfig-serverI01-2001:01:10.934Startingpanoptesconfigserverwithlocalhost:6563observatory=Observatory()I01-2001:01:16.157CreatingPanDBpanoptesI01-2001:01:16.158InitializingobservatoryI01-2001:01:16.158SettinguplocationS01-2001:01:17.070Observatoryinitializedpocs=POCS(observatory,simulators=['all'])I01-2001:01:20.408InitializingPANOPTESunit-GenericPANOPTESUnit-MaunaLoaObservatoryI01-2001:01:20.419MakingaPOCSstatemachinefrompanoptesI01-2001:01:20.420Loadingstatetable:panoptesS01-2001:01:20.485Unitsays:Hithere!W01-2001:01:20.494SchedulernotpresentW01-2001:01:20.495CamerasnotpresentW01-2001:01:20.496MountnotpresentI01-2001:01:20.497Schedulernotpresent,cannotgetcurrentobservation.pocs.initialize()W01-2001:01:28.386SchedulernotpresentW01-2001:01:28.388CamerasnotpresentW01-2001:01:28.389MountnotpresentS01-2001:01:28.390Unitsays:Lookslikewe're missing some required hardware.Out[10]:FalseFor a more realistic usage, see the full documentation at:https://pocs.readthedocs.io.For actually deploying a PANOPTES unit, refer to theOperating Guider.Developing POCSSeeCoding in PANOPTESTestingTo test the software, you can build a localDockerimage usingdocker-compose.First clone the repository, then run the following from the project's root directory:docker-compose-ftests/docker-compose.yamlbuild

docker-compose-ftests/docker-compose.yamlupBy default that will build and run all tests. If you want to run one specific test, run thepytests test_file.pyon thepocsservice:docker-compose-ftests/docker-compose.yamlrunpocs"pytest tests/test_mount.py"LinksPANOPTES Homepage:https://www.projectpanoptes.orgForum:https://forum.projectpanoptes.orgDocumentation:https://pocs.readthedocs.ioSource Code:https://github.com/panoptes/POCS