Ultralydkommunikasjon: bruk lyd for å overføre data

Hver gang du vil chatte med noen elektronisk, må du på en måte etablere en forbindelse. Dette kan være over Internett, et lokalt nettverk eller mobilforbindelse.

Det er imidlertid andre måter å kommunisere på, og en av dem er lyd. Selv om det ikke er et helt nytt konsept, har det egentlig ikke vært så mange dataprogrammer som benytter seg av det.

Quietnet er et chatprogram kodet i Python som opererer ved bruk av nær ultralydfrekvenser. Ultralyd i seg selv er lyd med en frekvens over 20 kHz, noe som gjør det uhørbart for mennesker. Selve applikasjonen fungerer med ~ 19 kHz frekvenser.

Så langt bruken går, er alt du trenger å gjøre å kjøre to skript, send.py og listen.py på maskinen din. Send brukes til å sende chatmeldinger med frekvensen, mens lytte vil vise alle meldinger som blir plukket opp i prosessen.

Du kan bruke den til tester for å se om den fungerer. Hvis det er flere chattedeltakere, må hver enkelt kjøre begge programmene - forutsatt at de alle ønsker å motta og sende.

Før Quietnet kan kjøres, er det nødvendig å installere Python, så vel som pyaudio og numpy (Numerical Python), på operativsystemet.

Når det er ute av veien, kjører du kommandoene python send.py og python listen.py for å komme i gang. Uansett hva du skriver inn i send.py-vinduet skal også vises i listen.py-vinduet i prosessen.

Sendingen fungerer uten noen av de vanlige teknologiene du trenger å ha aktivert for at den skal fungere, for eksempel Bluetooth eller WiFi.

Om det fungerer avhenger av en rekke faktorer, inkludert kvaliteten på høyttalere og mikrofon. Forfatteren foreslår å skru opp volumet for å forbedre overføringseffektiviteten, men det handler om det.

Merk at selv om du kanskje ikke kan høre lyden, kan dyr eller unge mennesker være i stand til det.

Jeg kunne ikke få skriptet til å kjøre på Windows 7-maskinen min med Python 3.3 installert.

En annen applikasjon er implementeringen av nettlyden Sonicnet.js, et JavaScript-bibliotek som kan sende og motta data som lyder.

Forfatteren forklarer konseptet bak implementeringen:

I utgangspunktet kan du spesifisere et utvalg av frekvenser som skal brukes, og et alfabet med tegn som kan overføres. Frekvensspekteret er delt inn i områder som tilsvarer det spesifiserte alfabetet og start- / sluttkodene, med hvert tegn / kode som tilsvarer en del av hele frekvensområdet.

Sendesiden konverterer hvert tegn i ordet som skal sendes til sentrum av det tilsvarende frekvensområdet, og overfører denne frekvensen i en viss varighet. Mottakersiden foretar en kontinuerlig firetransformasjon av signalet og ser etter topper i det spesifiserte frekvensområdet. Når du finner en topp i en betydelig varighet, gjør den konverteringen tilbake fra frekvens til karakter.

Ideen om å bruke lyd til å overføre data er ikke ny, men nye applikasjoner kan bringe teknologien til et større publikum.