Le Module est analogique et ne peut marcher que sur une entrée analogique de Arduino. (Le raspberry n'en n'ayant pas).
ou passer par un autre module de convertion analogique/numerique (ADC)
https://leanpub.com/RPiMRE/read
ou passer par un condensateur
https://www.youtube.com/watch?v=dPwW9zmX84E
https://pimylifeup.com/raspberry-pi-light-sensor/
http://www.instructables.com/id/Raspberry-Pi-GPIO-Circuits-Using-an-LDR-Analogue-S/
ou un controlleur Texas Instrument (TI)
http://marcandreuf.blogspot.fr/2015/06/how-to-photoresistor-on-raspberry-pi.html
ou n'avoir qu'un resultat 1 ou 0
https://www.raspberrypi.org/magpi/raspberry-pi-fridge-monitor/
C'est cette dernière solution que j'ai retenu, car mon Raspberry est dans un placard et je souhaite savoir si le placard est ouvert (et reçoit de la lumière) ou fermé (et ne reçoit rien)
Mes branchements :
sur PI0:
#PIN S : 1 (3.3V)
#PIN centre: 12 (BCM18)
#PIN - : 6 (Masse)
sur PI2
#PIN S : non branché
#PIN centre: 12 (BCM18)
#PIN - : 6 (Masse)
Étrangement le code qui fonctionne bien avec le Raspberry PI 0 ne fonctionne pas avec le PI2.
en débranchant le PIN S du module tout fonctionne avec le PI2.
Le Code en Python:
J'ai repris le code suivant :
https://www.raspberrypi.org/magpi/raspberry-pi-fridge-monitor/
et l'ai adapté pour moi:
ldr_num.py:
import time
import RPi.GPIO as GPIO
import urllib2
LIGHT_PIN = 18 # photoresistor pin
EVENT = 'fridge_alert'
# Configure the GPIO pin
GPIO.setmode(GPIO.BCM)
GPIO.setup(LIGHT_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP)
if GPIO.input(LIGHT_PIN) == 0:
# Its light (door open)
print("ouvert")
# time.sleep(3)
else:
print("ferme")
# time.sleep(3)
GPIO.cleanup()
mon script lancé par CRON: (lance le script Python et recupère en variable l'état du placard
#recupération des information de l'unite photosensibleet
placard=$(python /home/pi/LDR/ldr_num.py)
#enregistrement dans fichier Log
sudo echo $jour" "$temperature" "$humidite" "$placard";" >> /home/pi/dhtxx/logtemp.txt
#enregistrement inversé dans un fichier ilog
valeur=$(echo $jour" "$temperature" "$humidite" "$placard";")
sudo echo $valeur | cat - /home/pi/dhtxx/ilog.txt > temp && mv temp /home/pi/dhtxx/ilog.txt
Aucun commentaire:
Enregistrer un commentaire