Datenübertragung per Ultraschall

Die Anwendungen Yamaha InfoSound und ShopKick verwenden Technologien, die eine Datenübertragung mittels Ultraschall ermöglichen . Das spielt ein unhörbares Signal (>18kHz) ab, das von modernen Mobiltelefonen (iOS, Android) aufgenommen werden kann.

Welcher Ansatz wird bei solchen Technologien verwendet? Welche Art von Modulation verwenden sie?

Ich höre 18kHz! Bitte füllen Sie den Äther nicht mit mehr Summen, als es ohnehin schon ist!

Antworten (4)

Die Übertragung digitaler Daten per Ultraschall ist viel kniffliger, als man auf den ersten Blick vermuten könnte. Wir tun dies bei einem Produkt, das sich derzeit in Feldversuchen befindet, aber als wir mit der Entwicklung begannen, gab es nur sehr wenige Informationen darüber.

Die meisten Probleme ergeben sich aus der Tatsache, dass sich Schall langsam ausbreitet (etwa 3 ms pro Meter) und für eine Weile in einem Raum reflektiert und widerhallen kann. Wir haben einige Experimente durchgeführt und ungefähr müssen Sie davon ausgehen, dass jeder emittierte Ton für eine Ausbreitung von 10 m oder 30 ms herumspringt. Das bedeutet, dass das Protokoll zulassen muss, dass der Empfänger doppelte Kopien des ausgesendeten Signals und Signale außerhalb der Reihenfolge bis zu 30 ms aufnimmt. Anders ausgedrückt: Stellen Sie sich vor, dass alles, was Sie senden, innerhalb eines 30-ms-Fensters unvorhersehbar neu geordnet oder dupliziert wird.

Ein weiteres Problem ist, dass Ultraschallwandler ziemlich hohes Q haben. Sie brauchen ein paar Zyklen, um in Gang zu kommen, und klingeln dann ein paar Zyklen weiter, nachdem keine Eingabe mehr erfolgt ist. Beachten Sie, dass neue und alte Daten innerhalb des Zeitraums von 30 ms auch Zyklus für Zyklus konstruktiv oder destruktiv interferieren können. Dies wird zusammen mit dem Ausbreitungsdurcheinander die Datenrate sehr niedrig machen. Sachen wie die Manchester-Kodierung sind direkt out, da der Träger aufgrund von Interferenzen kommen und gehen kann, wenn in den letzten 30 ms irgendetwas emittiert wurde.

Um diese Probleme zu lösen, haben wir in unserem System ein eigenes Codierungsschema erstellt. Soweit wir das beurteilen konnten, hatte dies zuvor noch niemand getan. Ich bin mir nicht sicher, aber unser Kunde hat möglicherweise ein Patent auf die Technik angemeldet. Alle Daten werden in der Zeitdifferenz zwischen Vorderflanken kurzer Bursts codiert. Ich denke, wir senden ungefähr 8-10 Zyklen bei 40 kHz für jeden Burst. 10 Zyklen sind nur 250 us und sind 80-85 mm lang, wenn sie sich durch Luft ausbreiten. Der Empfänger sucht nach führenden Flanken dieser Bursts und zeichnet ihre Zeit auf. Nach dem Empfang eines Bursts schaltet der Empfänger für etwas weniger als 30 ms ab, da alles, was in dieser Zeit empfangen wird, nur Echos wären. Daten werden im Timing zwischen aufeinanderfolgenden Bursts codiert. In unserem System liegt der Zeitunterschied im Bereich von 30-50 ms. Wir haben aus anderen Gründen in den Empfängern, die ich gewonnen habe, eine ziemlich grobe Zeitquantenauflösung von etwa 2 ms verwendet. gehe nicht hinein. Mit dieser Methode können wir eines von 9 Zeichen zwischen zwei Bursts senden. Wir haben ein Sonderzeichen für den Beginn der Nachricht und dann die Werte 0-7. Mit anderen Worten, wir senden während einer Nachricht 3 Informationsbits pro Burst. In unserem System müssen wir nur 10 Datenbits gleichzeitig senden. Wir senden tatsächlich 6 Zeichen pro Nachricht, das SOM und 5 Datenzeichen für insgesamt 15 Bit. Wir verwenden die zusätzlichen 5 Bits für eine CRC-Prüfsumme.

Unser Zeitquantum von etwa 2 ms ist länger als es sein müsste, wenn Sie sich nur die Ultraschallprobleme ansehen. Die untere Grenze ergibt sich aus der Unsicherheit beim Aufnehmen der Vorderkante eines Bursts am Empfänger und Weglängenänderungen aufgrund von Bewegung. Sie könnten wahrscheinlich eine Zeitmenge von bis zu 500 us verwenden, wenn Sie wirklich vorsichtig sind, obwohl wir das nicht versucht haben.

eine detaillierte Beschreibung eines funktionsfähigen Systems (kann mir nicht vorstellen, dass es mit Mehrweg zu tun hat). Ein Mobiltelefonsystem wäre auf etwas weniger als 20 KHz begrenzt - die Lautsprecher- und Mikrofonantwort fällt darüber schnell ab. Ich würde die BPSK-Modulation der sehr vielen verfügbaren Modulationsschemata vorschlagen.

Ich kann Ihnen sagen, dass eine Datenübertragung durch Ton möglich ist, obwohl es aufgrund von Echo, Mehrweg und Dämpfungen sehr schwierig ist, höhere Bitraten oder große Entfernungen zu erreichen. Ich habe ein Übertragungsprotokoll erstellt, um Informationsbits zwischen einem PC-Lautsprecher und einem Smartphone oder zwischen 2 Smartphones zu übertragen. Ich habe ein nichtkohärentes QFSK- und 8fsk-Demodulationssystem implementiert, das 4/8-Frequenzen und eine Bandbreite von 3 kHz verwendet (der Frequenzabstand variiert entsprechend). Aufgrund der Tatsache, dass Lautsprecher, Mikrofone und Luft Nichtlinearitäten in die Amplitude der Trägerwelle einführen, habe ich keine Amplituden- oder Phasenmodulation verwendet. Ich arbeite im niederfrequenten Ultraschallbereich zwischen 18 und 22 kHz. Über einen PC-Lautsprecher (Creative T6300 5.1 Audiosystem) Wir haben 300 bps fehlerfreie Nutzlastbits in 1 Meter Entfernung erreicht, indem wir den Ton mit verschiedenen Arten von Smartphone-Mikrofonen erkannt haben. Ich verwende ein BCH-Fehlerkorrekturschema mit hinzugefügter 1/3-Redundanz (Blockcodes zeigen ihre höchste Codeverstärkung, wenn die Redundanz zwischen 1/2 und 1/3 liegt). Ich konnte keine höheren Frequenzen verwenden, da alle Smartphones, mit denen ich arbeiten konnte, nur 48 kHz als maximale Abtastfrequenz unterstützten. Ich konnte den Frequenzbereich von 22 bis 24 kHz nicht verwenden, da Smartphone-Mikrofone einen Anti-Aliasing-Filter haben, der die Frequenzen über 22 kHz dämpft. Nicht alle Smartphones funktionierten. Ich fand dort Mikrofone von Smartphones, die nur für die Aufnahme des menschlichen Stimmspektrums ausgelegt waren, daher zeigten sie eine enorme Signaldämpfung über 10 kHz (wichtige Komponenten der menschlichen Stimme liegen in diesem Band).

Der Ansatz klingt sehr einfach und basiert wahrscheinlich lose auf derselben Technologie, die früher auf alten Computern wie Spectrums usw. verwendet wurde, um Daten auf Magnettonbändern zu speichern - nur mit einer höheren Frequenz.

Es ist wahrscheinlich binär frequenzmoduliert, mit einer zugrunde liegenden Codierung wie Manchester Encoding oder 4B5B -Codierung. Zumindest würde ich es so machen, wenn ich wollte.

Hier ist die Liste der Anbieter aufgrund meiner Recherche;

https://chirp.io/

https://www.sonarax.com/

http://www.stimshop.com/

https://lisnr.com/

Nur-Link-Antworten passen nicht sehr gut in das SE-Modell. Wenn Sie etwas hinzuzufügen haben, das dies zu einer wertvollen Antwort auf eine 9 Jahre alte Frage macht, sollten Sie es hinzufügen oder die Antwort löschen.