In meinem letzten Artikel habe ich Texas Instruments SensorTag CC2650 angesprochen. In diesem Artikel haben wir bluez-dbus verwendet, um eine Java-Bibliothek cc2650-driver zum Erstellen verschiedener Sensordaten von CC2650 zu erstellen. Hier ist eine Übersicht über (: //github.com/s5uishida/cc2650-driver). Der Inhalt von Github ist jedoch der gleiche. Einzelheiten zur Implementierung und zur Verwendung der Beispiele finden Sie unter Github-Code Bitte beziehen Sie sich auf /CC2650Driver.java).
CC2650 ist ein BLE-Sensor, der von einer CR2032-Knopfbatterie angetrieben wird. Im cc2650-Treiber habe ich es geschafft, die folgenden Daten zu erhalten.
Der Grund für die Firmware-Version ist, dass der Akkuladestand seit 1.30 Uhr unterstützt wird und entschieden wird, ob der Akkuladestand ermittelt werden soll oder nicht. Zu diesem Zweck habe ich bluez-dbus gebeten, PR die Funktion zu verwenden, um den Batteriestand zu ermitteln und zusammenzuführen. Darüber hinaus werden die folgenden Methoden zum Erfassen von Sensordaten unterstützt.
Für CC2650 ist das maximale Zeitintervall, das in der Benachrichtigungsmethode angegeben werden kann, mit 2550 ms recht kurz. Ob dies nützlich ist oder nicht, hängt von der Anwendung ab. Ich denke darüber nach, diese Umgebungsinformationen in einem Crontab-Zeitplan abzurufen, beispielsweise in Intervallen von 1 Minute. Daher verwende ich die Direktlesemethode anstelle der Benachrichtigungsmethode.
Darüber hinaus verfügt der CC2650 über Wake On Motion als eine der Funktionen der Benachrichtigungsmethode. Wenn ein Verwackeln erkannt wird, kann es 10 Sekunden lang Bewegungssensordaten in einem festgelegten Benachrichtigungszeitintervall senden. Auf diese Weise können Sie beispielsweise CC2650 an einer Stelle einfügen, an der keine Bewegung erwartet wird, und Bewegungen erkennen. Der cc2650-Treiber unterstützt auch Wake On Motion.
Der CC2650 wird von einer Knopfbatterie gespeist, aber ich bin mir nicht sicher, wie lange er ununterbrochen laufen kann. Erfahrungsgemäß wurde es unbrauchbar, als der Akkuladestand den 60. erreichte. Daher gehe ich davon aus, dass dieser Indikator für den Batteriestand weniger der verbleibende Batteriestand als vielmehr ein Indikator für die Spannung ist.
** cc2650-Treiber ** Der Schlüssel zur Verarbeitung ist Bluetooth-Scanner Bereiten Sie in ähnlicher Weise eine Klasse vor, die die von dbus-java bereitgestellten AbstractPropertiesChangedHandler.java erweitert, und bereiten Sie ein öffentliches void-Handle (PropertiesChanged-Eigenschaften) vor. ) `Ist zu implementieren. Weitere Informationen finden Sie im Code unter Github. Der folgende Beispielcode mit cc2650-driver wird in Class File angezeigt. Ich habe es in /src/io/github/s5uishida/iot/device/tisensortag/cc2650/driver/CC2650Driver.java) aufgenommen.
Diese Reihe besteht aus folgenden Artikeln:
[2019.11.16] Die neuesten Informationen zu einfachen Tools finden Sie unter hier.
Recommended Posts