domenica 27 novembre 2016

Primi passi per la costruzione di una Stazione Meteo

Preparare il sistema alla lettura dei sensori


Dopo aver installato il Client VPN  sulla nostra distribuzione Debian-Lite scelta per l'occasione, il passo successivo per ottenere una Stazione Meteo, e' quello di collegare i primi sensori alla Raspberry Pi e cominciare ad ottenere le prime letture dei dati.

Per fare questo ci sono da fare alcune operazioni hardware e software. La parte hardware la tratterò successivamente, adesso mi concentro su che cosa ho fatto per poter leggere i dati dal lato sofware.
Alla distribuzione scelta per il progetto, mancano alcune istruzioni necessarie per far funzionare il sistema, dobbiamo installare un paio di pacchetti e configurarli perchè la Raspberry Pi  si accorga del sensore che intanto ho collegato alla GPIO disponibile sulla scheda.


    1  sudo apt-get install -y python-smbus
    2  sudo apt-get install -y i2c-tools
    3  sudo raspi-config

Con il comando raspi-config abbiamo fatto partire il programma di configurazione interno di Raspberry.  Qui dobbiamo abilitare la porta I2C, che di default non e' abilitata,
Dal menù principale scegliere 8 Advanced Option,
Quindi scegliere la I2C come evidenziato in figura.

Quindi modificare manualmente con un editor di testo il file modules:
    4  sudo nano /etc/modules

Per inserire prima della fine del file questi due parametri:
i2c-bcm2708 i2c-dev

Chiudere e salvare il file.
Adesso manca ancora una operazione, dobbiamo modificareil file:
    5  sudo nano /boot/config.txt

Al quale dobbiamo aggiungere due parametri, in fondo al file scrivere:
dtparam=i2c1=on
dtparam=i2c_arm=on


Chiudere e salvare il file.

Comunicare col sensore

Adesso siamo pronti per partire e finalmente leggere i primi dati. Rebootiamo la Raspberry.
    6  sudo reboot
 
Con il comando successivo possiamo controllare se il dispositivo collegato alla porta I2C è regolarmente ricevuto dalla macchina
     7  sudo sudo i2cdetect -y 1   
(SOLO nel caso si stia usando una Raspberry Pi modello A, l'ultimo parametro dovrà essere 0 -zero-  quindi: sudo sudo i2cdetect -y 0 )

Nel caso del sensore BMP180, che ho scelto di utilizzare come sensore di temperatura e pressione, se correttamente collegato, il sistema risponderà con l'indirizzo 0x77


Preparare il Software

   Per installare il pacchetto messo a disposizione da Adafruit, che contiene una serie di esempi di utilizzo del sensore BMP180 che ho utilizzato, è necessario aggiungere una serie di pacchetti aggiuntivi non presenti nella distribuzione, quindi  digitare:
    1  sudo apt-get install git build-essential python-dev python-smbus
Poi scaricare il Software di Adafruit
    2  git clone https://github.com/adafruit/Adafruit_Python_BMP.git

Entrare nella cartella
    3  cd Adafruit_Python_BMP/

Installare il programma Adafruit, ed allo scopo Adafruit ha preparato un file auto installante che partirà col comando:
    4  sudo python setup.py install

Al termine delle operazioni automatiche, entrare nella cartella degli esempi e far partire il programma di test:
    5  cd examples/
    6  sudo python simpletest.py

Questo programma renderà a video  la lettura del sensore BMP180 collegato, formattando il testo in modo che possa essere facilmente letto dall'utente

Abbiamo finalmente ricevuto la prima lettura dei dati disponibili sul sensore scelto.

Nessun commento: