Plateforme Agir Low-Tech

Commit 42d92d93 authored by davidmercereau's avatar davidmercereau
Browse files

Des petits tests

parent a9dc0944
# Banc Mesure Temp Surface DS18B20
Utilisation des capteurs de température DS18B20 pour réaliser un banc d'acquisition facile à mettre en oeuvre et pas trop cher
Utilisation des capteurs de température DS18B20 pour réaliser un banc d'acquisition facile à mettre en œuvre et pas trop cher
## Ressources
- [Tableau Kanban](https://gitlab.lowtech.fr/pdm/projets/labo/bancs-acqusition/banc-mesure-temp-surface-DS18B20/-/boards)
- [Dossier partagé NextCloud](https://cloud.lowtech.fr/index.php/f/41709)
## Pré-requis
* Sondes ds18b20
* Un raspberry pi avec :
* Interface 1 Wire active (raspi-config)
## Installation
### Dépendance
```bash
apt install python3 python3-pip
```
Lib Python ds18b20 : https://github.com/rgbkrk/ds18b20
```bash
pip3 install ds18b20 ConfigParser
```
### Récupération des sources
FIXME
### Lier les sondes
### Lancement
## Licence
Créative Common Zero https://creativecommons.org/publicdomain/zero/1.0/deed.fr
\ No newline at end of file
#!/usr/bin/python
# -*- coding: utf-8 -*-
#####################################################
## lecture de sondes de temperature 1-wire DS18B20 ##
#####################################################
# https://github.com/rgbkrk/ds18b20
from ds18b20 import DS18B20
import pprint
sensor = DS18B20("011921191050")
temperature_in_celsius = sensor.get_temperature()
pprint.pprint(temperature_in_celsius)
#!/usr/bin/python
# -*- coding: utf-8 -*-
import configparser
# https://github.com/rgbkrk/ds18b20
from ds18b20 import DS18B20
import pprint
# On charge le config.ini
config = configparser.RawConfigParser() # On créé un nouvel objet "config"
config.read('config.ini') # On lit le fichier de paramètres
pprint.pprint(config.get('t1', 'type'))
pprint.pprint(config.has_section('t4'))
sensor = DS18B20("011921191050")
temperature_in_celsius = sensor.get_temperature()
pprint.pprint(temperature_in_celsius)
# Correspondance des points de températures avec les sondes
#~ Exemple pour une sonde ds18b20 :
#~
#~ [t1]
#~ type=ds18b20
#~ id=011921191050
[t1]
type=ds18b20
id=011921191050
[t2]
type=ds18b20
id=011921191050
[t3]
type=ds18b20
id=0000000000
#!/bin/bash
# inspirer : https://www.framboise314.fr/mesure-de-temperature-1-wire-ds18b20-avec-le-raspberry-pi/
# On liste les sondes de la famille 28
FILES=`ls /sys/bus/w1/devices/w1_bus_master1/ | grep '^28'`
for file in $FILES
do
ID=`echo $file | cut -d'-' -f2`
# Récupération des information
GETDATA=`cat /sys/bus/w1/devices/w1_bus_master1/$file/w1_slave`
GETDATA1=`echo "$GETDATA" | grep crc`
GETDATA2=`echo "$GETDATA" | grep t=`
# Récupération de la température
TEMP=`echo $GETDATA2 | grep "t=" | awk -F "t=" '{printf("%.1f\n", $2/1000)}'`
#
# test SI crc est à 'YES'
if [ `echo $GETDATA1 | sed 's/^.*\(...\)$/\1/'` == "YES" ]
then
echo "ID=$ID ; TEMP=$TEMP"
else
echo "ID=$ID ; CRC NOK"
fi
done
exit 0
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment