Coder Social home page Coder Social logo

rasyidf / pysqm Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mireianievas/pysqm

0.0 1.0 0.0 298 KB

Python client for the Sky Quality Meter

Home Page: https://guaix.fis.ucm.es/splpr/SQM-REECL

License: GNU General Public License v3.0

Python 100.00%

pysqm's Introduction

PySQM

This implementation of PySQM will updated to Python3

PySQM is a multi-platform, open-source software designed to read and plot data from Unihedron SQM-LE and SQM-LU photometers, giving as an output files with the 'International Dark Sky Association (IDA) NSBM Community Standards for Reporting Skyglow Observations' format (http://www.darksky.org/night-sky-conservation/248).

PySQM is distributed under GNU GPL, either version 3 of the License, or (at your option) any later version. See the file LICENSE.txt for details.

This software has been developed by Mireia Nievas [email protected] with the invaluable help of:

  • Sergio Pascual (UCM)
  • Jaime Zamorano (UCM)
  • Laura Barbas (OAN)
  • Pablo de Vicente (OAN)

SETUP

After downloading the software, you need to modify the file config.py. In this file you will find several variables that need to be configured to match your hardware settings. For example:

  • Location of the observatory (geographical coordinates).
  • Device identifier.
  • Device address (either IP address for SQM-LE or COM/ttyUSB port).
  • Location of the data files.
  • Axis limits for the plot.

Remember that python (2.7) syntax is mandatory in this file

HOW TO USE THE SOFTWARE

After configuring the software, make sure you are in the parent directory were the README, LICENSE and MANIFEST files are located

ls LICENSE.txt MANIFEST.in README.txt pysqm config.py setup.py

And then run the software.

python -m pysqm

The program should find your SQM device and the data adquisition.will start (if it's night-time).

In some systems, where python3 is the default version of python, you need to specify python2 as the interpreter to use. This is done usually running it as:

python2 -m pysqm

or

python2.7 -m pysqm

Note: running the setup.py script is neither tested nor required. The program is currently being redesigned as a normal python package, but at present no setup is required.

HOW IT WORKS

In a first step, the program tries to connect to the SQM photometer and takes some 'tests' measures (metadata/information, calibration and data) to check that the device is working as expected.

After that, the program begins data acdquisition. In each iteration, it checks whether it is night-time. In that case new data is taken.

Each N measurements, the main program calls a plotting function to generate a graphical representation of the current nightly data.

PySQM known issues

Non-ASCII characters are not supported in the config.py file. Please, avoid using 'ñ', accented vowels, etc. In headless systems, such as the Raspberry PI, if you run the program without X, you may suffer from the following fatal error when the program tries to generate the plot:

This application failed to start because it could not find or load the Qt platform plugin “xcb”. Available platform plugins are: eglfs, kms, linuxfb, minimal, minimalegl, offscreen, xcb. Reinstalling the application may fix this problem. Aborted (core dumped)

In order to avoid this problem, you need to create (or modify if the file exists) in your HOME directory the following file:

.config/matplotlib/matplotlibrc

You just need to set the matplotlib backend to Agg: backend : Agg

Save the changes and exit. Now, PySQM should make the plots without issues. You may need to restart PySQM to apply the changes.

Path to EXE files (windows only): https://www.dropbox.com/s/xlbr6ktk8spjsse/PySQM.exe?dl=0

CHANGELOG

v0.3: Added datacenter option (optional, disabled by default)

v0.2: ...

v0.1: ...

pysqm's People

Contributors

mireianievas avatar sergiopasra avatar rasyidf avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.