capteur de lumière compatible Grove TSL2561 et récupération des données.

Bonjour,

J'ai un capteur de lumière qui fonctionne en I2C. Et j'ai beau cherché partout, je ne trouve pas le moyen de récupérer les données de lumière afin de les exploiter pour déclencher un relais.

J'ai installé la bibliothèque indiqué. Mais je n'arrive pas à extraire les informations du moniteur série.

Quelqu'un a t-il une idée sur le sujet ou alors un lien vers des pages internet susceptible de m'éclairer.

Merci

C'est plutôt nous qui avons besoin que tu nous donnes des renseignements car nous ne sommes pas devins.

Quel capteur ? Référence ?
Quelle bibliothèque ?
Quels sont les exemples qui sont fournis avec la bibliothèques ?

Aller un petit effort en faisant des liens cliquables (icone chaine) vers capteur , bibliothèque, exemples.

Il faut aussi ton code même s'il ne fonctionne pas et en disant où d'après toi il ne fonctionne pas.
Ne pas oublier de faire un control T dans l'IDE avant de le copier pour le formater correctement

PS : Lis les messages épinglés "Règles du forum francophone" et "Faire un nouveau sujet avec les balises", merci

Pour le modèle exact, comme indiqué dans le titre:
http://wiki.seeedstudio.com/Grove-Digital_Light_Sensor/

Pour la bibliothèque:
Digital_Light_Sensor

Pour un arduino uno

/*
 * Digital_Light_Sensor.ino
 * A library for TSL2561
 *
 * Copyright (c) 2012 seeed technology inc.
 * Website    : www.seeed.cc
 * Author     : zhangkun
 * Create Time:
 * Change Log :
 *
 * The MIT License (MIT)
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */

#include <Wire.h>
#include <Digital_Light_TSL2561.h>
unsigned long lux;
const int relais=4;
const int lumiere=A4;
int pos=0;

void setup()
{
  Wire.begin();
  Serial.begin(9600);
  TSL2561.init();
  pinMode(relais,OUTPUT); 

}

void loop()
{
  
  Serial.print("The Light value is: ");
  Serial.println(TSL2561.readVisibleLux());
  delay(1000);
  //lux = TSL2561.readVisibleLux();
  //Serial.println (lux);
  //delay(1000);
  
  pos=analogRead(lumiere);
  delay(1000);

if (pos<=3000)
{
  digitalWrite(relais,HIGH);
}

else{
 digitalWrite(relais,LOW);
}
}

C’est la première fois que je poste du code. J’espère qu’il est bien passé.

Dans ton code tu affectes à pos le résultat d'une mesure analogique, comme si le TLS2561 était analogique. Or il fonctionne sur I2C.

plus loin :

  //lux = TSL2561.readVisibleLux();

En commentaires ? Pourquoi ?

Plus de détails sur le TLS2561 : ICI

Le TLS2561 donne des mesures assez éloignées des autre capteurs à la longueur d'onde plus proche de celle captée de l’œil humain.

Mais pour une comparaison, cela peut convenir.

J’avais demandé :

Aller un petit effort en faisant des liens cliquables (icone chaine) vers capteur , bibliothèque, exemples.

Certains ici, et ils sont nombreux, interviennent à partir d’un smartphone où le couper/coller est pénible. Si les liens ne sont pas cliquable ils passent leur chemin.

Bonjour 68tjs

68tjs:
J’avais demandé :Certains ici, et ils sont nombreux, interviennent à partir d’un smartphone où le couper/coller est pénible. Si les liens ne sont pas cliquable ils passent leur chemin.

Certes cela évite un clic.
Mais il suffit de sélectionner le lien et de faire un clic droit ( en tous cas avec Firefox et Chrome).

Cordialement,
bidouilleelec

Bonjour bidouilleelec,

68tjs parlait d'une consultation sur smartphone.
Personnellement je consulte souvent le forum sur tablette et je trouve ça particulièrement chia pénible.

C'est quand même plus à celui qui pose une question à faire un effort qu'à celui qui a la gentillesse d'y répondre. J'ai peut-être les yeux bouchés mais je ne vois pas de lien vers la bibliothèque.

Si j'ai fait ce rappel c'est dans son intérêt : je suis persuadé que beaucoup n'ont pas utilisé Google ou qwant pour rechercher cette bibliothèque et ont passé leur chemin.

https://github.com/Seeed-Studio/Grove_Digital_Light_Sensor/archive/master.zip est bien une librairie TSL2561.
Il y a aussi GitHub - adafruit/Adafruit_TSL2561: Unified sensor driver for Adafruit's TSL2561 breakouts.

Mais comme CHBR94 se contente de l’initialiser et d’afficher le résultat de la lecture ensuite, aucune chance que cela fonctionne.
Il va lire sur A4 (une hypothétique LDR ?) une valeur qui est comparée ensuite à 3000

  Serial.println(TSL2561.readVisibleLux());                // on affiche le résultat, c'est tout ?
  delay(1000);
  //lux = TSL2561.readVisibleLux();        pourquoi est-ce commenté ?
  //Serial.println (lux);
  //delay(1000);
 
  pos=analogRead(lumiere);
  delay(1000);

if (pos<=3000)
{
  digitalWrite(relais,HIGH);
}

else{
 digitalWrite(relais,LOW);
}

analogRead retourne un entier compris entre 0 et 1023 (UNO, NANO, MEGA, etc) ou 4096 (DUE, ZERO, etc.)

On ne sait même pas de quelle carte il s’agit.

@+