Segunda entrega de PYWWS, en la anterior instalamos los programas que serán necesarios mas tarde.
Antes de nada, veremos si ls raspberry tiene comunicación con la estación. Para ello ejecutamos:
lsusb
Tomamos nota del ID y de la estación meteorológica, en mi caso es: 1941:8021
Creamos el directorio donde estará el programa y los datos. weather
mkdir weather
entramos en ese directorio
cd weather
La forma más fácil de instalar pywws es con el comando pip:
sudo pip install pywws
Actualizar pywws también es un comando de una línea:
sudo pip install -U pywws
Descargar y extraer
Clonar el repositorio
git clone https://github.com/jim-easterbrook/pywws.git
Paraactualizar, use git para extraercualquier cambio:
cd ~/weather/pywws
git pull
Instalar pywws
Si ha descargado o clonado los archivos fuente de pywws, debe usar setup.py para instalarlo:
cd ~/weather/pywws
python setup.py compile_catalog
python setup.py build
sudo python setup.py install
Probar la conexión de la estación meteorológica
Ahora estás listo para probar tu instalación de pywws. Conecte la estación meteorológica (si no está conectada) y luego ejecute testweatherstation.
pywws-testweatherstation
Si todo funciona correctamente, aparece lo siguiente:
lo mas problabe es que falle. Es un problema de permisos, apareciendo esto:
Hay varias razones por las cuales esto podría no funcionar. Lo más probable es un problema de «permisos». Esto se puede probar ejecutando el comando como root:
sudo pywws-testweatherstation
Si esto funciona, entonces puede permitir que su cuenta de usuario normal acceda a la estación meteorológica configurando una regla ‘udev’.
Se hace creando un archivo que/etc/udev/rules.d/39-weather-station.rules
contenga lo siguiente:
sudo nano /etc/udev/rules/39-weather-station.rules
Añadimos lo siguiente_
ACTION!="add|change", GOTO="weatherstation_end"
SUBSYSTEM=="usb", ATTRS{idVendor}=="1941", ATTRS{idProduct}=="8021", GROUP="weatherstation"
LABEL="weatherstation_end"
Hay que comprobar que ATTRS{idVendor}==»1941″ y ATTRS{idProduct}==»8021″ coincide con lo que leímos al principio.
Después ejecutamos el comando:
usermod -a -G weatherstation nombreraspberry
en mi caso nomreraspberry es «pi»
Desenchufo y vuelvo a conectar la conexión USB de la estación para forzar laudev
aplicación de la nueva regla. Esto permite a cualquier usuario del grupoweatherstation
acceder a la estación meteorológica.
volvemos a comprobar pywws-testweatherstatio
pywws-testweatherstation
Comprobamos que responde correctamente.
Establecer el intervalo de registro de la estación meteorológica
La estación meteorológica tiene configurado por defecto un intervalo de registro de 30 minutos. El intervalo recomendado es de 5 minutos. Para modificarlo usamos el comando setweatherstatio, para establecer el nuevo intervalo.
pywws-setweatherstation -r 5
tarda un poco en ejecutarse.
Registrar los datos de la estación meteorológica
Para almacenar los datos creamos el directorio data
mkdir ~/weather/data
Hay que asegurarse que tengamos la fecha y hora correctas y la zona horaria, ya que se utilizan para etiquetar los datos de la estación meteorológica. Hay que configurar NTP para sincronizar la raspberry con un ‘servidor horario’.
pywws.logdata
La primera vez que lo ejecute crea un archivo de configuración en el directorio de datos llamado ‘weather.ini’ y luego se detendrá.
Lo volemos a ejecutar . Esto puede llevar varios minutos, ya que copiará todos los datos almacenados en la memoria de la estación.
Ahora debería tener algunos archivos de datos que puede ver. Por ejemplo:
ls ~/weather/data/raw/
(Reemplace el año, mes y día por los que tiene datos).
more ~/weather/data/raw/2019/2019-08/2019-08-01.txt
Con esto, ya tenemos instalado Pywws, en el proximo capitulo vemos las opciones de configuración.