Puisqu'il utilise un capteur 1 fil, ajoutez ce qui suit à / etc / modules de Raspberry Pi.
w1-gpio
w1-therm
Ajoutez ce qui suit à /boot/config.txt
dtoverlay=w1-gpio-pullup
Connexion du capteur
À Les 2ème et 3ème broches du capteur sont connectées par une résistance pull-up. Référence: http://blog.livedoor.jp/victory7com/archives/33399310.html
Utilisez la commande lsmod pour vérifier la connexion. Si la connexion réussit, ce sera comme suit.
cmd
pi@raspberrypi:~/Documents/work$ lsmod | grep w1
w1_therm 6401 0
w1_gpio 4818 0
wire 32619 2 w1_gpio,w1_therm
La température acquise est écrite dans "/ sys / bus / w1 / devices / 28-XXXXXXXX / w1_slave". (XXXX sur 28-XXXXXXXX change en fonction de votre terminal)
cmd
pi@raspberrypi:~/Documents/work$ cat /sys/bus/w1/devices/28-00000723fabd/w1_slave
b1 01 4b 46 7f ff 0f 10 8d : crc=8d YES
b1 01 4b 46 7f ff 0f 10 8d t=27062
La température actuelle est la valeur de "t =" divisée par 1000.
Allez sur IFTTT et créez une recette à partir de mon applet.
Définissez "this" sur "Webhooks" et "that" sur "line"
Après la configuration, accédez à https://ifttt.com/services/maker_webhooks/settings et accédez à l'URL fournie pour activer la clé.
--event est le nom de l'événement défini lors de la configuration des Webhooks --value est la valeur que vous souhaitez envoyer à LINE
En exécutant la commande curl suivant "Vous pouvez également l'essayer avec curl à partir d'une ligne de commande.", Elle sera envoyée à la destination LINE définie.
Avec RaspberryPi, obtenez la température avec python, demandez l'URL des Webhooks configurés avec IFTTT et envoyez la température ambiante à LINE.
Installez la bibliothèque pour obtenir la température
cmd
pip install w1thermsensor
Obtenez et envoyez avec le code suivant
python
from w1thermsensor import W1ThermSensor
import urllib.request, json
sensor = W1ThermSensor(W1ThermSensor.THERM_SENSOR_DS18B20, "(Nom du capteur)")
temperature_in_celsius = sensor.get_temperature()
url = "https://maker.ifttt.com/trigger/(Nom de l'événement Webhooks)/with/key/(Touche Webhooks)"
method = "POST"
headers = {"Content-Type" : "application/json"}
obj = {"value1" : temperature_in_celsius}
json_data = json.dumps(obj).encode("utf-8")
request = urllib.request.Request(url, data=json_data, method=method, headers=headers)
with urllib.request.urlopen(request) as response:
response_body = response.read().decode("utf-8")
Faites correspondre THERM_SENSOR_DS18B20 avec le numéro de modèle du capteur que vous utilisez. Le nom d'appareil du capteur est la partie XXXX de 28-XXXXXXXX. Après cela, si vous réglez ceci sur Coulomb etc., vous pouvez obtenir la température ambiante régulièrement.