Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-23 14:45
Hier, nous travaillions sur des écrans LCD, et en travaillant dessus, nous avons réalisé l'importance du calcul de l'intensité lumineuse. L'intensité lumineuse n'est pas seulement importante dans le domaine physique de ce monde, mais elle a aussi son rôle bien dit dans le domaine biologique. L'estimation précise de l'intensité lumineuse joue un rôle central dans notre écosystème, dans la croissance des plantes, etc. Ainsi, pour servir cet objectif, nous avons étudié ce capteur BH1715, qui est un capteur de lumière ambiante de type sortie série 16 bits.
Dans ce tutoriel, nous allons démontrer le fonctionnement de BH1715 avec Raspberry pi, en utilisant Java comme langage de programmation.
Le matériel dont vous aurez besoin à cette fin est le suivant:
1. BH1715 - Capteur de lumière ambiante
2. Pi framboise
3. Câble I2C
4. Bouclier I2C pour Raspberry Pi
5. Câble Ethernet
Étape 1: Présentation du BH1715:
Tout d'abord, nous aimerions vous familiariser avec les caractéristiques de base du module capteur qu'est le BH1715 et le protocole de communication sur lequel il fonctionne.
Le BH1715 est un capteur de lumière ambiante numérique avec une interface de bus I²C. Le BH1715 est couramment utilisé pour obtenir les données de lumière ambiante pour ajuster la puissance du rétroéclairage de l'écran LCD et du clavier pour les appareils mobiles. Cet appareil offre une résolution de 16 bits et une plage de mesure réglable, permettant une détection de 0,23 à 100 000 lux.
Le protocole de communication sur lequel fonctionne le capteur est I2C. I2C signifie le circuit inter-intégré. Il s'agit d'un protocole de communication dans lequel la communication s'effectue via des lignes SDA (données série) et SCL (horloge série). Il permet de connecter plusieurs appareils en même temps. C'est l'un des protocoles de communication les plus simples et les plus efficaces.
Étape 2: Ce dont vous avez besoin..
Les matériaux dont nous avons besoin pour atteindre notre objectif comprennent les composants matériels suivants:
1. BH1715 - Capteur de lumière ambiante
2. Framboise Pi
3. Câble I2C
4. Bouclier I2C pour Raspberry Pi
5. Câble Ethernet
Étape 3: connexion matérielle:
La section de raccordement matériel explique essentiellement les connexions de câblage requises entre le capteur et le raspberry pi. Assurer des connexions correctes est la nécessité de base tout en travaillant sur n'importe quel système pour la sortie souhaitée. Ainsi, les connexions requises sont les suivantes:
Le BH1715 fonctionnera sur I2C. Voici l'exemple de schéma de câblage, montrant comment câbler chaque interface du capteur.
Prête à l'emploi, la carte est configurée pour une interface I2C, en tant que telle, nous vous recommandons d'utiliser cette connexion si vous êtes par ailleurs agnostique. Tout ce dont vous avez besoin, c'est de quatre fils !
Seules quatre connexions sont nécessaires pour les broches Vcc, Gnd, SCL et SDA et celles-ci sont connectées à l'aide d'un câble I2C.
Ces connexions sont illustrées dans les images ci-dessus.
Étape 4: Mesure de l'intensité lumineuse à l'aide du code Java:
L'avantage d'utiliser raspberry pi est qu'il vous offre la flexibilité du langage de programmation dans lequel vous souhaitez programmer la carte afin d'interfacer le capteur avec elle. En exploitant cet avantage de cette carte, nous démontrons ici sa programmation en Java. Le code Java pour BH1715 peut être téléchargé depuis notre communauté GitHub qui est Dcube Store.
En plus de la facilité des utilisateurs, nous expliquons le code ici également:
Comme première étape de codage, vous devez télécharger la bibliothèque pi4j dans le cas de java, car cette bibliothèque prend en charge les fonctions utilisées dans le code. Donc, pour télécharger la bibliothèque, vous pouvez visiter le lien suivant:
pi4j.com/install.html
Vous pouvez également copier le code Java fonctionnel de ce capteur à partir d'ici:
// Distribué avec une licence libre-arbitre.
// Utilisez-le comme vous le souhaitez, à profit ou gratuitement, à condition qu'il rentre dans les licences de ses œuvres associées.
// BH1715
// Ce code est conçu pour fonctionner avec le mini module BH1715_I2CS I2C disponible sur ControlEverything.com.
//
importer com.pi4j.io.i2c. I2CBus;
importer com.pi4j.io.i2c. I2CDevice;
importer com.pi4j.io.i2c. I2CFactory;
importer java.io. IOException;
classe publique BH1715
{
public static void main(String args) lève une exception
{
// Créer un bus I2C
Bus I2CBus = I2CFactory.getInstance(I2CBus. BUS_1);
// Obtenir le périphérique I2C, l'adresse I2C BH1715 est 0x23 (35)
Périphérique I2CDevice = bus.getDevice (0x23);
// Envoie la commande de mise sous tension
device.write((byte)0x01);
// Envoi d'une commande de mesure continue
device.write((byte)0x10);
Thread.sleep(500);
// Lecture de 2 octets de données
// luminance msb, luminance lsb
octet données = nouvel octet[2];
device.read(données, 0, 2);
// Convertir les données
double luminance = ((données[0] & 0xFF) * 256 + (données[1] & 0xFF)) / 1,20;
// Sortie des données à l'écran
System.out.printf("Luminosité ambiante: %.2f lux %n", luminance);
}
}
La librairie qui facilite la communication i2c entre le capteur et la carte est pi4j, ses différents packages I2CBus, I2CDevice et I2CFactory aident à établir la connexion.
importer com.pi4j.io.i2c. I2CBus;importer com.pi4j.io.i2c. I2CDevice; importer com.pi4j.io.i2c. I2CFactory; importer java.io. IOException;
Cette partie du code fait fonctionner le capteur pour la mesure de l'intensité lumineuse en écrivant les commandes respectives à l'aide de la fonction write(), puis les données sont lues à l'aide de la fonction read().
device.write((byte)0x01); // commande de mise sous tension
périphérique.write((octet)0x10); // commande de mesure continue
octet données = nouvel octet[2]; // Lecture de 2 octets de données
device.read(données, 0, 2);
Les données reçues du capteur sont converties au format approprié à l'aide des éléments suivants:
double luminance = ((données[0] & 0xFF) * 256 + (données[1] & 0xFF)) / 1,20;
La sortie est imprimée à l'aide de la fonction System.out.println(), au format suivant.
System.out.printf("Luminosité ambiante: %.2f lux %n", luminance);
La sortie du capteur est montrée dans l'image ci-dessus.
Étape 5: Candidatures:
BH1715 est un capteur de lumière ambiante à sortie numérique qui peut être incorporé dans un téléphone portable, un téléviseur LCD, un PC NOTE, etc. Il peut également être utilisé dans une machine de jeu portable, un appareil photo numérique, une caméra vidéo numérique, un PDA, un écran LCD et de nombreux autres appareils nécessitant applications de détection de lumière efficaces.
Conseillé:
Comment faire un enregistrement de la température et de l'intensité lumineuse - Simulation de Protée - Frittage - Liono Maker : 5 étapes
Comment faire un enregistrement de la température et de l'intensité lumineuse | Simulation de Protée | Frittage | Liono Maker : Salut, c'est Liono Maker, c'est ma chaîne YouTube officielle. Il s'agit d'une chaîne YouTube open source. Voici le lien : Liono Maker YouTube ChannelVoici le lien vidéo : Temp & Light Intensity LoggingDans ce tutoriel, nous allons apprendre à créer Temper
Lampe d'intensité lumineuse Arduino : 3 étapes
Lampe d'intensité lumineuse Arduino : ce circuit peut être utilisé comme une lampe réelle, un projet scolaire et un défi amusant. Ce circuit est facile à utiliser et à réaliser, mais si vous n'avez pas encore utilisé Tinker Cad, vous voudrez peut-être l'essayer d'abord
Traçage de l'intensité lumineuse à l'aide d'Arduino et de la bibliothèque principale Arduino de Python : 5 étapes
Traçage de l'intensité de la lumière à l'aide d'Arduino et de la bibliothèque principale Arduino de Python : Arduino étant un outil économique mais très efficace et fonctionnel, sa programmation dans Embedded C rend le processus de création de projets fastidieux ! Le module Arduino_Master de Python simplifie cela et nous permet d'effectuer des calculs, de supprimer des valeurs parasites
Calcul de l'intensité lumineuse à l'aide de BH1715 et Arduino Nano : 5 étapes
Calcul de l'intensité lumineuse à l'aide de BH1715 et d'Arduino Nano : Hier, nous travaillions sur des écrans LCD, et en travaillant dessus, nous avons réalisé l'importance du calcul de l'intensité lumineuse. L'intensité lumineuse n'est pas seulement importante dans le domaine physique de ce monde, mais elle a son rôle bien dit dans le biologi
Calcul de l'intensité lumineuse à l'aide du BH1715 et du photon de particules : 5 étapes
Calcul de l'intensité lumineuse à l'aide du BH1715 et du photon de particules : Hier, nous travaillions sur des écrans LCD, et en travaillant dessus, nous avons réalisé l'importance du calcul de l'intensité lumineuse. L'intensité lumineuse n'est pas seulement importante dans le domaine physique de ce monde, mais elle a son rôle bien dit dans le biologi