Anschließen externer Sensoren
Smartphones sind mit einer Vielzahl von Sensoren ausgestattet, haben jedoch manchmal Einschränkungen bei der Untersuchung bestimmter physikalischer Phänomene. Aus diesem Grund haben wir die Fähigkeiten von FizziQ erweitert, indem wir ihm die Verbindung mit Mikrocontrollern über Bluetooth ermöglichen. Diese Innovation eröffnet eine Vielzahl spannender Möglichkeiten. Sie können jetzt eine Vielzahl externer Sensoren verwenden, um Parameter wie Temperatur, Druck, Gewicht, CO2-Konzentration und mehr zu messen. Unser Verbindungsprotokoll ist offen und einfach zu verwenden, sodass jeder von der Leistungsfähigkeit und Einfachheit der Datenprotokollierung und -analyse profitieren kann, die die FizziQ-App bietet.
Inhalt :
Was Mikrofon-Controller Kann eine Verbindung zu FizziQ hergestellt werden? -Was Nutzung des Bluetooth-Dienstes? -SNachrichtenstruktur -Wie verbinde ich FizziQ? -Sonderfall eines Arduino -Sonderfall eines micro:bit -Sonderfall eines ESP32 -Sonderfall von HM10
Welche Mikrocontroller können mit FizziQ verbunden werden?
Alle Mikrocontroller mit einer Bluetooth-BLE-Verbindung können eine Verbindung zu FizziQ herstellen. Bluetooth ist eine standardmäßige drahtlose Kommunikationstechnologie, die höhere Datenraten bietet und sich für Geräte eignet, die schnelle Übertragungen erfordern. Bluetooth Low Energy (BLE) ist auf einen geringen Stromverbrauch ausgelegt und eignet sich ideal für batteriebetriebene Geräte und Proximity-IoT-Anwendungen. BLE bietet eine kürzere Reichweite und möglicherweise eine höhere Latenz, während normales Bluetooth eine größere Reichweite und eine geringere Latenz bietet.
In den meisten Fällen können Mikrocontroller im BLE-Format kommunizieren, beispielsweise micro:bit-, ESP32- oder Arduino Nano 33 BLE-Geräte. Wenn dies nicht möglich ist, muss möglicherweise ein Bluetooth-BLE-Verbindungsmodul zum Mikrocontroller hinzugefügt werden, um die Daten zu senden. Dann kann beispielsweise eine Schaltung wie die BM-HM10 verwendet werden.
Was für ein ServiceBluetoothmit FizziQ verwenden?
ImBeim Bluetooth-Protokoll stellt ein „Dienst“ eine bestimmte Funktionalität dar, die Geräte anbieten können, wie z. B. Audio-Streaming oder Dateifreigabe. Jeder Dienst kann über mehrere „Features“ verfügen, die die Details seiner Funktionalität beschreiben. Beispielsweise kann ein drahtloser Headset-Dienst über Funktionen wie Lautstärkeregelung oder Musikwiedergabe/-pause verfügen. Diese hierarchische Organisation ermöglicht es Geräten, sich zu verstehen und effektiv zusammenzuarbeiten, um eine breite Palette drahtloser Funktionen bereitzustellen, von Ohrhörern bis hin zu IoT-Sensoren.
Für den Datenaustausch mit Arduino nutzt FizziQ den UART-Dienst. Mit diesem Dienst können Sie jede Art von Daten senden, die vom Mikrocontroller erfasst werden. Folgendieser Link zur Nordic Semiconductor-Seite.
So verbinden Sie ein Arduino-Board über Bluetooth mit FizziQ:
1. Geben Sie dem Gerät einen Namen, um es zu erkennen, zum Beispiel: „FizziQ Connection“
2. Die Dienst-UUID lautet „6e400001-b5a3-f393-e0a9-e50e24dcca9e“.
3. Die UUID des Merkmals lautet „6e400002-b5a3-f393-e0a9-e50e24dcca9e“.
4. Der Dienst muss eine Benachrichtigung (NOTIFY) enthalten.
WasDas ist die Nachrichtenstruktur ?
Die vom UART-Dienst ausgetauschten Daten müssen seinstrukturiert in Form einer Zeichenfolge im folgenden Format: „NAME: WERT“. Um beispielsweise Informationen über eine Spannung von 5 Volt zu senden, senden Sie die UART-Nachricht: „Spannung: 5,0“.
Die folgenden Messnamen werden von FizziQ erkannt:
- Temperatur
- Gewicht
- Feuchtigkeit
- Spannung
- Druck (atmosphärisch)
- Beschleunigung
- Helligkeit
- Magnetfeld)
- Kompass (Kompass)
- CO2 (Konzentration)
- tvoc (flüchtige Verbindungen)
- Intensität
Für diese Daten werden die Einheiten und ein die Daten darstellendes Symbol automatisch erkannt und angezeigt.
Andere als die erkannten Daten können mit FizziQ geteilt werden, nicht erkannte Namen werden jedoch unter dem Namen eines generischen Sensors angezeigt: „UART“.
Beachten Sie, dass FizziQ nur die ersten drei Buchstaben des Namens erkennt, sodass es nicht notwendig ist, alle Buchstaben in die Nachricht einzufügen.
Wie verbinde ich FizziQ?
Bitte beachten Sie, dass die Verbindung mit externen Sensoren ausschließlich von der Anwendung verwaltet wird. Versuchen Sie nicht, den externen Sensor über das Einstellungsmenü oder das native Bluetooth des Smartphones zu koppeln!
Um einen externen Sensor an FizziQ anzuschließen, wählen Sie in der Anwendung auf der Registerkarte „Messung“ „Externe Sensoren“ aus und drücken Sie dann die Verbindungstaste, die Ihrem Mikrocontroller entspricht. Es erscheint ein Symbol, das den Zugriff auf die vom Mikrocontroller übertragenen Daten ermöglicht. Die Datenverwaltung erfolgt auf die gleiche Weise wie bei jedem anderen Smartphone-Sensor. Um die Verbindung zum Smartphone zu trennen, tippen Sie auf „Trennen“. Die Trennung erfolgt automatisch, wenn die Verbindung unterbrochen wird. Mit der Schaltfläche „Aktualisieren“ können Sie die Liste der Smartphone-Sensoren aktualisieren.
Welches ProgrammZug für ein Arduino?
Ein Beispielprogramm zur Übertragung von Luftfeuchtigkeitsdaten finden Sie in der folgenden Textdatei:
Welches Programm für ein micro:bit
Die Verbindungsschritte für micro:bit sind die gleichen wie für micro:bit und werden im folgenden Video beschrieben:
Welches Programm für einen ESP32?
Die Verbindungsschritte für micro:bit sind die gleichen wie für micro:bit und werden im folgenden Video beschrieben:
Die Verbindungsschritte für ESP32 sind die gleichen wie für micro:bit und Arduino
Wie programmiert man ein BM-HM10-Modul?
Das HM-10 ist ein kleines 3,3-V-SMD-Bluetooth-4.0-BLE-Modul, das auf dem Bluetooth SOC (System On Chip) CC2540 oder CC2541 von TI basiert. Es ermöglicht die Übertragung von Daten im UART-Format über verschiedene Dienste. Weitere Informationen: http://www.martyncurrey.com/hm-10-bluetooth-4ble-modules/
Beispiel eines Programms, das mit der Programmierumgebung von erstellt wurde.VittaSciences, mit einer micro:bit-Karte, einer Grove-Erweiterung und einem HM-10-Modul