lire température Raspberry capteur ds18b20 - Poupixy/projetsn2 GitHub Wiki

#!/usr/bin/python

-- coding: utf-8 --

##=================================================##

lecture de sondes de temperature 1-wire DS18B20

##-------------------------------------------------##

07/03/2016 Greteau Marc

##=================================================##

from os import system from time import sleep

module GPIO 1-wire et capteur de temperature

Voir doc pour les modprobe

system('modprobe w1-gpio') system('modprobe w1-therm')

Repertoire du capteur de temperature

base_dir = '/sys/bus/w1/devices/'

Remplacez les repertoires 28-xxxxxxxxxxx

Par le numero du repertoire du capteur

sonde1 = "/sys/bus/w1/devices/w1_bus_master1/28-0000044eef1e/w1_slave"

Determine la valeur de sonde1 a 0

sondes = [sonde1] sonde_value = [0]

fonction ouverture et lecture d'un fichier

def lire_fichier(fichier): f = open(fichier, 'r') lignes = f.readlines() f.close() return lignes

code principal

for (i, sonde) in enumerate(sondes): lignes = lire_fichier(sonde)

lit les 3 dernier char de la ligne et

recommence si ce n'est pas valide (OK)

while lignes[0].strip()[-3:] != 'OK':
    sleep(0.2)
    lignes = lire_fichier(sonde)

Lorsque OK => lecture de la temperature

Arrondi la valeur recus a 2 Centieme

Et places la virgule

temp_raw = lignes[1].split("=")[1]
sonde_value[i] = round(int(temp_raw) / 1000.0, 2)

Afficher la valeur

print "sonde",i,"=",sonde_value[i]