Überwachen Sie einfach das Raumklima. ⑪ Erhalten Sie die Beleuchtungsstärke mit Java von BH1750FVI (Ersatz) - (I2C / Pi4J) -

Das einfache Tool zur Überwachung von Umweltinformationen, das zuvor in diesem Artikel eingeführt wurde, bietet Informationen zur Beleuchtungsstärke Texas Instruments SensorTag CC2650. Erhalten von (: //processors.wiki.ti.com/index.php/CC2650_SensorTag_User's_Guide). CC2650, das seit langem weltweit als BLE-Umgebungssensor-Tag bekannt ist, wird jedoch nicht mehr erhältlich, sodass es in Zukunft schwierig sein wird, es zu erhalten. Deshalb habe ich mich für einen anderen Sensor entschieden.

Dieses Mal haben wir ROHMs BH1750FVI als neuen Beleuchtungsstärkesensor ausgewählt. Es ist erschwinglich und kann für Hunderte von Yen erhalten werden.

Was ist der BH1750FVI-Sensor?

Dieser Sensor kann die Beleuchtungsstärke messen. Die Schnittstelle ist I2C, und die I2C-Adresse kann entweder "0x23" oder "0x5c" sein. Darüber hinaus gibt es zwei I2C-Busse für Raspberry Pi 3B oder 4B, "0" und "1", sodass Sie mit Raspberry Pi 3B oder 4B bis zu vier BH1750FVIs gleichzeitig verwenden können. rainy_bh1750fvi_floor.png

Die erstellte BH1750FVI-Java-Bibliothek (bh1750fvi-driver) ist auf Github verfügbar. Ich habe auch das Verfahren zum Einstellen des Betriebssystems und des Sensors geschrieben. Darüber hinaus steht unter Github hier ein einfaches Tool zur Überwachung von Umweltinformationen zur Verfügung, das diese Bibliothek enthält.

Grundlegende Verwendung der Java-Bibliothek

Hier ist eine einfache Verwendung von bh1750fvi-driver. Im folgenden Beispielcode sind I2C-Bus = "1" und Adresse = "0x23" angegeben.

import com.pi4j.io.i2c.I2CBus;

import io.github.s5uishida.iot.device.bh1750fvi.driver.BH1750FVIDriver;

public class MyBH1750FVI {
    private static final Logger LOG = LoggerFactory.getLogger(MyBH1750FVI.class);
    
    public static void main(String[] args) {
        BH1750FVIDriver bh1750fvi = null;
        try {
            bh1750fvi = BH1750FVIDriver.getInstance(I2CBus.BUS_1, BH1750FVIDriver.I2C_ADDRESS_23);
            bh1750fvi.open();
                
            while (true) {
                float value = bh1750fvi.getOptical();
                LOG.info("optical:" + value);
                    
                Thread.sleep(10000);
            }
        } catch (InterruptedException e) {
            LOG.warn("caught - {}", e.toString());
        } catch (IOException e) {
            LOG.warn("caught - {}", e.toString());
        } finally {
            if (bh1750fvi != null) {
                bh1750fvi.close();
            }
        }
    }
}

Es ist einfach so zu bedienen. Es wurde mit Pi4J erstellt, einer Java-Bibliothek zur Verwendung von GPIO von Raspberry Pi.

Schließlich

Ein einfaches Tool, das diese Java-Bibliothek enthält, kann Sensorwerte in einem Dashboard überwachen und im JSON-Format an MQTT-Broker senden.

Schließlich ist das einfache Tool auf [Github hier] verfügbar (https://github.com/s5uishida/rainy).

Eine Reihe von Artikeln

Diese Reihe besteht aus folgenden Artikeln:

  1. Motivation und Konzept
  2. Bluetooth LE-Werbesignal mit Java abfangen (Bluetooth LE / bluez-dbus) Der zugehörige Github ist hier.
  3. Temperatur / Luftfeuchtigkeit / Beleuchtungsstärke usw. von TI SensorTag CC2650 mit Java (Bluetooth LE / bluez-dbus) abrufen Der zugehörige Github ist hier.
  4. Erhalten Sie die CO2-Konzentration von MH-Z19B mit Java (serielle Kommunikation / jSerialComm) Der zugehörige Github ist hier.
  5. PM2.5-Konzentration von PPD42NS in Java (GPIO / Pi4J) abrufen Der zugehörige Github ist hier.
  6. Betriebsinformationen von industriellen Automatisierungsgeräten in Java abrufen (OPC-UA / Eclipse Milo) Der verwandte Github ist hier.
  7. In einem einfachen Tool sammeln Der verwandte Github ist hier.
  8. Postscript
  9. Bewegungserkennung (HC-SR501 / RCWL-0516) in Java (GPIO / Pi4J) abrufen Verwandte Github ist hier (HC-SR501) und hier (RCWL-0516) -0516-Treiber).
  10. Temperatur / Luftfeuchtigkeit / Druck von BME280 (Ersatz) in Java (I2C / Pi4J) abrufen Der zugehörige Github ist hier.
  11. ** Holen Sie sich die Beleuchtungsstärke in Java von BH1750FVI (Ersatz) (I2C / Pi4J) (diesmal) ** Der zugehörige Github ist hier.

Recommended Posts

Überwachen Sie einfach das Raumklima. ⑪ Erhalten Sie die Beleuchtungsstärke mit Java von BH1750FVI (Ersatz) - (I2C / Pi4J) -
Einfache Überwachung des Innenraumklimas - ⑤ Erhalten Sie die PM2.5-Konzentration von PPD42NS mit Java (GPIO / Pi4J) -
Einfache Überwachung des Innenraumklimas - ⑩ Beziehen Sie Temperatur / Luftfeuchtigkeit / Druck von BME280 (Ersatz) mit Java (I2C / Pi4J) -
Einfache Überwachung des Innenraumklimas ~ ④ Erhalten Sie die CO2-Konzentration von MH-Z19B mit Java (serielle Kommunikation / jSerialComm) ~
Einfache Überwachung des Innenraumklimas ~ ③ Beziehen Sie Temperatur / Luftfeuchtigkeit / Beleuchtungsstärke usw. vom TI SensorTag CC2650 mit Java (Bluetooth LE / bluez-dbus) ~
Einfache Überwachung der Innenumgebung - ② Erfassen Sie das Bluetooth LE-Werbesignal mit Java (Bluetooth LE / bluez-dbus) -
Überwachen Sie einfach das Raumklima ~ ⑧ Postscript ~
Einfache Überwachung der Innenumgebung - ⑨ Erfassen Sie die Bewegungserkennung (HC-SR501 / RCWL-0516) mit Java (GPIO / Pi4J) -
Überwachen Sie einfach das Raumklima. (1) Motivation und Konzept.
Einfache Überwachung des Raumklimas - ⑦ Mit einem einfachen Tool zusammenfassen -
Einfache Überwachung des Innenraumklimas - ⑥ Erfassen von Betriebsinformationen für industrielle Automatisierungsgeräte in Java (OPC-UA / Eclipse Milo) -
[Java] Stellen Sie die Zeit im Browser mit jsoup ein
Überwachen Sie den internen Status von Java-Programmen mit Kubernetes
[Hinweis] Erstellen Sie mit Docker eine Java-Umgebung von Grund auf neu
Bereiten Sie die Umgebung für Java11 und JavaFx mit Ubuntu 18.4 vor
Suchen Sie die Adressklasse und den Adresstyp aus der IP-Adresse mit Java
AWS Elastic Beanstalk # 1 mit Java von Grund auf neu Erstellen einer Java-Webanwendungsumgebung mit EB CLI-