### Navigazione

- indice
- moduli |
- successivo |
- precedente |
- pywws 13.09_r1065 documentation »
- Guide per gli utenti »

# Come iniziare con pywws

## Installare le dipendenze

- Python 2.5+ - http://python.org/ (Nota: il supporto a Python 3 è in fase di sviluppo.)
- USB library opzione 1 (preferito, tranne in MacOS):
  - PyUSB 1.0 - http://sourceforge.net/apps/trac/pyusb/
  - libusb 0.1 or 1.0 - http://www.libusb.org/
- USB library opzione 2 (Se PyUSB 1.0 non è disponibile):
  - PyUSB 0.4 - http://sourceforge.net/apps/trac/pyusb/
  - libusb 0.1 - http://www.libusb.org/
- USB library opzione 3 (preferito per MacOS):
  - hidapi - https://github.com/signal11/hidapi
  - ctypes - http://docs.python.org/2/library/ctypes.html
- USB library opzione 4:
  - hidapi - https://github.com/signal11/hidapi
  - cython-hidapi - https://github.com/gbishop/cython-hidapi
  - cython - http://cython.org/

Si può essere in grado di installare la maggior parte di questi utilizzando il gestore dei pacchetti del sistema operativo. Questo è molto più facile che scaricando e compilando il file di origine da siti Web del progetto. Si noti che alcune distribuzioni Linux possono utilizzare nomi differenti per alcuni dei pacchetti, ad esempio in Ubuntu, pyusb sono python-usb.

Oltre a quanto sopra, vi consiglio l’installazione di pip (il pacchetto può essere chiamato python-pip) o easy_install. Questi semplificano entrambi l’installazione del software dalla Python Package Index (PyPI). Ad esempio, PyUSB può essere installato da PyPI utilizzando il comando `pip` command:

    sudo pip install pyusb

## Scaricare il software pywws

Creare una directory per tutti i file meteo correlati e posizionarsi nella directory. Per esempio (su un sistema Linux o simile sistema operativo):

    mkdir ~/weather
    cd ~/weather

È possibile installare pywws direttamente da PyPI utilizzando `pip` o `easy_install`, oppure è possibile scaricare ed estrarre i file nella directory meteo. Questo ha il vantaggio che si può facilmente leggere i moduli Python e altri file. Consente inoltre di eseguire software pywws senza i privilegi ‘root’ solitamente necessari per installare il software.

### Installazione facile

Si tratta di una semplice riga di comando

    sudo pip install pywws

Le directory dov’è installato dipendere dal sistema operativo e dalla versione Python. I moduli pywws sono installati nella directory ‘site-packages’ (esempio `/usr/lib/python2.7/site-packages`). In genere vengono installati gli script in `/usr/bin` e vengono installati i file di esempio in `/usr/share/pywws`, ma potrebbe essere usato altre directory (come `/usr/local/share`).

### Scaricare ed estrarre

È possibile scaricare una versione di snapshot PyPI, o potete usare `git` per ottenere il massimo fino alla data della versione aggiornata di pywws.

Per scaricare uno snapshot, visita http://pypi.python.org/pypi/pywws/ e scaricare uno dei file .tar.gz o .zip. Nella vostra directory meteo, quindi estrarre tutti i file, ad esempio:

    cd ~/weather
    tar zxvf pywws-12.11_95babb0.tar.gz

o:

    cd ~/weather
    unzip pywws-12.11_95babb0.zip

Questo dovrebbe creare una directory (chiamata `pywws-12.11_95babb0` in questo esempio) contenente tutti i file di origine pywws. E’ conveniente per creare un link a questa strana directory denominata:

    cd ~/weather
    ln -s pywws-12.11_95babb0 pywws

In alternativa, per ottenere l’ultima versione di sviluppo di pywws usare `git clone`, quindi utilizzare `setup.py` per compilare i file di lingua e documentazione:

    cd ~/weather
    git clone https://github.com/jim-easterbrook/pywws.git
    cd pywws
    python setup.py msgfmt
    python setup.py build_sphinx

Dopo il download ed estrazione o la clonazione dei repository, è possibile utilizzare ‘ setup.py ‘ per compilare e installare tutto:

    cd ~/weather/pywws
    python setup.py build
    sudo python setup.py install

Questo è opzionale, e installa nella stessa directory come usando `pip` se vuoi. Se non fai questo processo di installazione, sarai solo in grado di eseguire i moduli pywws dalla directory pywws.

## (Solo per utenti 3 Python) Tradurre pywws per Python 3

Se la vostra versione di Python predefinita è 3. x e avete installato pywws usando `pip`, o ha funzionato `python setup.py install`, il codice sarà già stato tradotto da Python 2 a Python 3 come parte del processo di installazione. In caso contrario, è necessario utilizzare setup.py per fare la traduzione e creare un’installazione di Python 3

    cd ~/weather/pywws
    rm -Rf build
    python3 setup.py build
    sudo python3 setup.py install

## Testare la connessione della stazione meteo

Finalmente si è pronti per testare l’installazione pywws. Collegare la stazione meteo (se non è già connessa) quindi eseguire il modulo `pywws.TestWeatherStation`. Se avete scaricato ma non installato pywws, non dimenticate di passare alla directory pywws prima. Ad esempio:

    cd ~/weather/pywws
    python -m pywws.TestWeatherStation

Se tutto funziona correttamente, questo dovrebbe visualizzare dei numeri sullo schermo, ad esempio:

    0000 55 aa ff ff ff ff ff ff ff ff ff ff ff ff ff ff 05 20 01 51 11 00 00 00 81 00 00 0f 00 00 60 55
    0020 ea 27 a0 27 00 00 00 00 00 00 00 10 10 12 13 45 41 23 c8 00 32 80 47 2d 2c 01 2c 81 5e 01 1e 80
    0040 96 00 c8 80 a0 28 80 25 a0 28 80 25 03 36 00 05 6b 00 00 0a 00 f4 01 18 03 00 00 00 00 00 00 00
    0060 00 00 4e 1c 63 0d 2f 01 73 00 7a 01 47 80 7a 01 47 80 e4 00 00 00 71 28 7f 25 bb 28 bd 25 eb 00
    0080 0c 02 84 00 0e 01 e3 01 ab 03 dc 17 00 10 08 21 08 54 10 03 07 22 18 10 08 11 08 30 10 04 21 16
    00a0 26 08 07 24 17 17 08 11 01 06 10 09 06 30 14 29 09 01 06 07 46 09 06 30 14 29 09 01 06 07 46 08
    00c0 08 31 14 30 10 05 14 15 27 10 01 26 20 47 09 01 23 05 13 10 01 26 20 47 09 01 23 05 13 10 02 22
    00e0 11 06 10 02 22 11 06 08 07 07 19 32 08 12 13 22 32 08 09 07 08 48 01 12 05 04 43 10 02 22 14 43

Ci sono diverse ragioni perché questo potrebbe non funzionare. Molto probabilmente è un problema di ‘permessi’. Questo può essere testato eseguendo il comando come root:

    sudo python -m pywws.TestWeatherStation

Se questo funziona, allora bisogna consentire all’account utente normale di accedere alla stazione meteo impostando una regola ‘udev’. Vedere la pagina del wiki di compatibilità http://code.google.com/p/pywws/wiki/Compatibility for more details.

Se avete qualsiasi altro problema, per favore chiedi aiuto pywws mailing list: http://groups.google.com/group/pywws

## Configurare la tua stazione meteo

Se non lo hai già fatto, imposta la tua stazione meteo per visualizzare la corretta pressione atmosferica relativa. (Vedere il manuale per informazioni su come effettuare questa operazione). pywws ottiene l’offset tra pressione relativa e assoluta dalla stazione, quindi questa deve essere impostata prima di utilizzare pywws.

Cercando su internet tra i bollettini meteo di una stazione vicina, idealmente una ufficiale come un aeroporto, è possibile ottenere la corretta pressione relativa dalla vostra posizione. Questo è meglio farlo quando il tempo è calmo e la pressione è costante su una vasta area.

Se si modifica l’offset in qualsiasi momento, è possibile aggiornare tutti i dati memorizzati eseguendo `pywws.Reprocess`.

## Impostare l’intervallo di registrazione della stazione meteo

La tua stazione meteo probabilmente lasciato la fabbrica con un intervallo di registrazione di 30 minuti. In questo modo la stazione memorizzare circa 11 settimane di dati. La maggior parte degli utenti pywws usano i loro computer per leggere i dati dalla stazione ogni ora, o più spesso che solo bisogno la stazione per archivi dati sufficienti per coprire i fallimenti del computer. L’intervallo consigliato è di 5 minuti, che consente ancora 2 settimane di stoccaggio. Per impostare l’intervallo usa `pywws.SetWeatherStation`:

    python -m pywws.SetWeatherStation -r 5

## Registrare i dati della stazione meteo

Innanzitutto, scegliere una directory per archiviare tutti i dati della stazione meteo. Questo verrà scritto abbastanza frequentemente, quindi un disco rigido è preferibile a una memory stick, come questi hanno un numero limitato di scritture. Nella maggior parte dei casi la home directory è adatta, per esempio:

    mkdir ~/weather/data

Questa directory viene definita nella documentazione pywws altrove come directory di dati.

Assicurarsi che il computer abbia la giusta data ora e fuso orario, poiché questi vengono usati per etichettare i dati della stazione meteo. Se non hai già fatto, vale la pena di impostazione NTP per sincronizzare il computer a un ‘time server’.

La prima volta che si esegue `pywws.LogData` sarà creato un file di configurazione nella directory dati chiamato ‘weather.ini’ e poi chiudi il programma. È necessario modificare il file di configurazione e cambiare la linea `ws type = Unknown` in `ws type = 1080` o `ws type = 3080`. (Se la tua stazione meteo visualizza illuminamento solare avete un modello 3080, tutti gli altri sono 1080). Quindi eseguire nuovamente `pywws.LogData`. Ciò può richiedere diversi minuti, siccome esso copierà tutti i dati memorizzati nella memoria della vostra stazione. Il programma `pywws.LogData` ha un’opzione ‘verbose’ che aumenta la quantità di messaggi vengono visualizzati durante l’esecuzione. Questo è utile quando si esegue manualmente, ad esempio:

    python -m pywws.LogData -vvv ~/weather/data

(Sostituire `~/weather/data` con la directory dei dati, se è diversa.)

Ora dovreste avere alcuni file di dati che si possono guardare. Ad esempio:

    more ~/weather/data/weather/raw/2012/2012-12/2012-12-16.txt

(Sostituire l’anno, il mese e il giorno con quelli che i vostri dati dovrebbero avere.)

## Convertire i vecchi dati di EasyWeather (opzionale)

Se era in esecuzione EasyWeather prima di decidere di utilizzare pywws, è possibile convertire i dati che EasyWeather aveva registrato nel formato pywws. Trovare il file EasyWeather.dat e poi convertirlo:

    python -m pywws.EWtoPy EasyWeather.dat ~/weather/data

## Impostare alcune opzioni di configurazione

Dopo l’esecuzione `pywws.LogData` ci dovrebbe essere un file di configurazione nella directory dati chiamata ‘weather.ini’. Aprire questa con un editor di testo. Si dovrebbe trovare qualcosa come il seguente:

    [config]
    ws type = 1080
    logdata sync = 1

È necessario aggiungere una nuova voce nella sezione `[config]` chiamata `day end hour`. Questo dice a pywws che convenzione si desidera utilizzare nel calcolo dei dati di riepilogo giornalieri. Nel Regno Unito, la ‘giornata meteorologica’ è solitamente dalle 09.00 alle 09:00 GMT (10.00 alle 10.00 BST durante l’estate), quindi utilizzare un valore di ora di fine giornata di 9. In altri paesi il valore 24 (o 0) potrebbe essere più adatto. Si noti che il valore è impostato nel periodo invernale locale. Non è necessario cambiarla quando l’ora legale è in vigore.

Dopo la modifica, il file weather.ini dovrebbe apparire qualcosa di simile a questo:

    [config]
    ws type = 1080
    logdata sync = 1
    day end hour = 9

Per maggiori dettagli sulle opzioni del file di configurazione, vedere weather.ini - configurazione del formato del file.

## Elaborare i dati grezzi(raw)

`pywws.LogData` copia solo i dati grezzi dalla stazione meteo. Per fare qualcosa di utile con quei dati è probabilmente necessario di riepiloghi ogni ora, giornalieri e mensili. Sono creati da `pywws.Process`. Ad esempio:

    python -m pywws.Process ~/weather/data

Ora dovreste avere alcuni file elaborati da guardare:

    more ~/weather/data/weather/daily/2012/2012-12-16.txt

Se cambi l’impostazione di configurazione `day end hour`, è necessario rielaborare tutti i dati meteo. È possibile farlo eseguendo `pywws.Reprocess`:

    python -m pywws.Reprocess ~/weather/data

Ora siete pronti per impostare la registrazione ad intervalli o continua, come descritto in Come impostare ‘hourly’ per la registrazione oraria con pywws o Come impostare una registrazione ‘live’ con pywws.

## Leggere la documentazione

La directory doc nella directory di origine pywws contiene le versioni HTML e testo normale della documentazione (a meno che non hai fatto un’installazione diretta con ‘pip ‘). I file HTML possono essere letti con qualsiasi browser web. Iniziare con l’indice (pywws) e seguire i link da lì.

Commenti o domande? Si prega di iscriversi per al mailing list pywws http://groups.google.com/group/pywws e facci sapere.

### Navigazione

- indice
- moduli |
- successivo |
- precedente |
- pywws 13.09_r1065 documentation »
- Guide per gli utenti »