BlockWerk Dokumentation
📱

Connected Phone

Connectivity

RemoteSensor ist ein Quellenblock (Source), der Trägheitsmesswerte und optionale Sensordaten live von einem gekoppelten Mobilgerät über eine WebRTC-Peer-to-Peer-Verbindung in die Simulation einströmt. Wird der Block auf der Arbeitsfläche abgelegt, generiert er einen QR-Code zur Kopplung; das Scannen mit dem Smartphone-Browser stellt die Verbindung her. Nach erfolgter Verbindung stellt der Block Ausgangsports für Beschleunigungssensor (3 Achsen), Gyroskop (3 Achsen) und ein Puffergütesignal bereit. Zusätzliche Ports werden automatisch ergänzt, sobald das Smartphone Magnetometer, Barometer oder GPS meldet.

Verwenden Sie diesen Block für bewegungsbasierte Regelungsexperimente, Gestensteuerungen oder Hardware-in-the-Loop-Tests, bei denen ein Mobilgerät als drahtlose inertiale Messeinheit (IMU) fungiert. Ein konfigurierbarer Wiedergabepuffer und ein Interpolationsfilter glätten den unregelmäßigen Datenstrom des Netzwerks vor der Einspeisung in die Simulationsblöcke.

In BlockWerk simulieren

Interaktive Sandbox direkt im Browser — keine Installation, WebAssembly-Engine.

In BlockWerk simulieren →

Ein- & Ausgänge

Direction ID Label Typ Status
← Out accelX Accel X number Output
← Out accelY Accel Y number Output
← Out accelZ Accel Z number Output
← Out gyroAlpha Rotation Alpha number Output
← Out gyroBeta Tilt Beta number Output
← Out gyroGamma Tilt Gamma number Output
← Out bufferLevel Buffer (ms) number Output

Parameter

Parameter Label Typ Standardwert Beschreibung
playoutDelay Playout Delay (ms) number 250
interpolation Interpolation select linear How to reconstruct signal values between received sensor packets. Linear is the best default. PCHIP is smoother but heavier.
outputLabels Output Labels vector accelX,accelY,accelZ,gyroAlpha,gyroBeta,gyroGamma,bufferLevel

Anwendungsbeispiele

Neigungswinkel des Smartphones als Sollwert für einen PID-Regelkreis

RemoteSensor ──► [Tilt Beta] ──► Gain ──► PIDController → [in]

Alle 6-DOF-Trägheitssignale an ein Oszilloskop übertragen

RemoteSensor ──► [Accel X]        ┐
               ──► [Accel Y]      ├──► Scope
               ──► [Accel Z]      │
               ──► [Rotation Alpha]│
               ──► [Tilt Beta]    │
               ──► [Tilt Gamma]   ┘

Hinweise & Best Practices

  • Quellenblock: Sämtliche Sensorkanäle liegen als Ausgangsports (rechte Seite) vor. In der Grundkonfiguration besitzt der Block keine Signaleingänge.
  • Dynamische Ports: Ports werden nach der Kopplung dynamisch basierend auf den erkannten Gerätefähigkeiten (Beschleunigung, Gyro, Magnetfeld, Luftdruck, GPS) erzeugt oder entfernt. Aktor-Eingänge (Vibration, Piepton) erscheinen links, sofern das Mobiltelefon diese unterstützt.
  • WebRTC erforderlich: Smartphone und Desktop-Browser benötigen für den PeerJS-Signalisierungs-Handshake Internetzugang. In isolierten lokalen Netzen ist ein lokaler PeerJS-Server erforderlich (konfigurierbar über die localStorage-Schlüssel blockwerk_peer_host / blockwerk_peer_port).
  • Pufferfüllstandsport: Der Ausgang bufferLevel meldet den aktuellen Vorlauf in Millisekunden. Verbinden Sie ihn mit einer Anzeige oder Assertion zur Überwachung der Übertragungsstabilität.
  • Rohdatenexport: Bei laufender Simulation kann über die Aufnahmetaste am Block die unverfälschte Pakettelemetrie (Zeitstempel, Jitter, Achsenwerte) aufgezeichnet und als CSV exportiert werden.
  • Werte im getrennten Zustand: Alle Ausgangsports halten den Wert 0, bis das Telefon verbunden ist und Daten sendet.

Verwandte Blöcke

  • PhoneController: Identische QR-Kopplung, jedoch mit virtuellem Touchscreen-Joystick (oder Neigungsmodus) für X/Y-Steuerwerte — optimal für interaktive Demonstrationen wie "Fly the Quadcopter (Live)".
  • MQTTSubscriber: Alternative Signalquelle für vernetzte Sensordaten über einen MQTT-Broker.
  • ExternalInput: Schlanker Quellenblock zur manuellen Werteingabe oder Einspeisung skriptgesteuerter Werte.