Dieser Artikel hat den gleichen Inhalt wie ** Artikel zum Omron-Umweltsensor (BAG-Typ) . Dieser Artikel wurde mit dem Omron-Umgebungssensor ( USB-Typ **) durchgeführt.
Zu den Umgebungssensoren von Omron gehören Temperatur, Luftfeuchtigkeit, Beleuchtungsstärke, Druck, Lärm usw. Es ist ein Gerät, das mehrere Sensoren kombiniert. (Links: BAG Typ 2JCIE-BL01, rechts: USB Typ 2JCIE-BU01)
Dieses Mal erhalten wir die USB-Typdaten auf der rechten Seite von Raspberry Pi.
** ・ RaspberryPi ** (diesmal wird Pi3 Modell B verwendet) ** - Python-Ausführungsumgebung ** (Dieses Mal verwendet pyenv Python 3.7.6) ** ・ Google-Konto ** (erforderlich, um Tabellenkalkulationen zu verwenden) ** ・ Omron-Umgebungssensor (USB Typ 2JCIE-BU01) **
** ① Überprüfen Sie die Bluetooth-Verbindung zwischen dem Raspberry Pi und dem Sensor ** ** ② Ermitteln Sie mit Python den Messwert des Umgebungssensors ** ** ③ Drücken Sie die GAS-API von Python, um Daten in die Tabelle zu schreiben ** ** ④ Regelmäßige Ausführung des Skripts **
** - Anschließen des Umgebungssensors an den USB-Anschluss ** Stecken Sie den Umgebungssensor in den USB-Anschluss und stellen Sie sicher, dass das Licht für einen Moment an ist
** - Nach Bluetooth-Geräten suchen ** Führen Sie den folgenden Befehl auf Raspberry Pi aus
sudo hcitool lescan
LE Scan ...
CC:DD:BB:AA:66:77 Rbt
Wenn Sie den Namen "Rbt" sehen, ist dies die MAC-Adresse des Umgebungssensors. Wenn es nicht herauskommt, überprüfen Sie den USB-Kontakt und die Bluetooth-Aktivierung von Raspberry Pi.
bluepy ist eine Bibliothek für den Zugriff auf Bluetooth Low Energy (BLE) in Python (Klassendefinition).
Der USB-Typ, der keinen Akku hat, erfordert keine Änderung des Broadcast-Modus wie der BAG-Typ, sodass die Arbeit weniger mühsam ist.
** - Installation der erforderlichen Pakete ** Installieren Sie Folgendes
sudo install libglib2.0-dev
** ・ Installation von Bluepy **
Installieren Sie mit pip mit dem folgenden Befehl
pip install bluepy
** ・ Bluepy Autorität erteilen ** Sie müssen bluepy Sudo die Berechtigung zum Scannen erteilen.
Gehen Sie zu dem Ordner, in dem bluepy installiert ist, und
cd ~.pyenv/versions/3.7.6/lib/python3.7/site-packages/bluepy
Erteilen Sie Sudo die Erlaubnis, mit dem folgenden Befehl zu helfen
sudo setcap 'cap_net_raw,cap_net_admin+eip' bluepy-helper
Erstellen Sie das folgende Skript, um den Sensorwert abzurufen
omron_env_usb_connect.py
from bluepy import btle
import struct
def get_env_usb_data(macaddr):
peripheral = btle.Peripheral(macaddr, addrType=btle.ADDR_TYPE_RANDOM)
characteristic = peripheral.readCharacteristic(0x0059)
(seq, temp, humid, light, press, noise, eTVOC, eCO2) = struct.unpack('<Bhhhlhhh', characteristic)
sensorValue = {
'SensorType': 'Omron_USB_EP',
'Temperature': temp / 100,
'Humidity': humid / 100,
'Light': light,
'Pressure': press / 1000,
'Noise': noise / 100,
'eTVOC': eTVOC,
'eCO2': eCO2
}
return sensorValue
Beim BAG-Typ im Broadcast-Modus wurden Sensordaten aus den Werbedaten erfasst, Beim USB-Typ im Verbindungsmodus werden Daten durch Kommunikation unter Verwendung der Peripherieklasse erfasst.
Erstellen Sie ein Hauptskript, um das Skript zur Erfassung des Sensorwerts aufzurufen
omron_env_toSpreadSheet.py
from bluepy import btle
import omron_env_usb_connect
######Erfassung von Werten für den OMRON-Umgebungssensor (BAG-Typ)######
PERIPHERAL_MAC_ADDRESS = 'MAC-Adresse erhalten in ①'
sensorValue = omron_env_usb_connect.get_env_usb_data(PERIPHERAL_MAC_ADDRESS)
#Zeigen Sie die Temperatur als Test an
print(sensorValue['Temperature'])
Versuchen Sie, von der Konsole aus zu laufen
python omron_env_toSpreadSheet.py
26.48
Sie haben jetzt Sensormessungen in Python erhalten.
Gemäß dem Benutzerhandbuch entspricht die Einheit des erfassten Werts der folgenden Abbildung.
[Artikel vom Typ BAG](https://qiita.com/c60evaporator/items/ed2ffde4c87001111c12#python%E3%81%8B%E3%82%89gas%E3%81%AEapi%E3%82%92%E5%8F % A9% E3% 81% 84% E3% 81% A6% E3% 82% B9% E3% 83% 97% E3% 83% AC% E3% 83% 83% E3% 83% 89% E3% 82% B7 % E3% 83% BC% E3% 83% 88% E3% 81% AB% E3% 83% 87% E3% 83% BC% E3% 82% BF% E6% 9B% B8% E3% 81% 8D% E8 % BE% BC% E3% 81% BF) Bitte beziehen Sie sich
[Artikel vom Typ BAG](https://qiita.com/c60evaporator/items/ed2ffde4c87001111c12#%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83% 88% E3% 81% AE% E5% AE% 9A% E6% 9C% 9F% E5% AE% 9F% E8% A1% 8C) Bitte beziehen Sie sich
Recommended Posts