Ultrazvučna komunikacija: koristite zvuk za prijenos podataka

Kad god želite s nekim komunicirati elektroničkim putem, morat ćete nekako uspostaviti vezu. To može biti primjerice Internet, lokalna mreža ili mobilna veza.

Postoje i druga sredstva za komunikaciju, a jedno od njih je i zvukom. Iako to nije sasvim novi koncept, doista nije bilo toliko računalnih aplikacija koje bi to koristile.

Quietnet je program za chat koji je kodiran na Python-u, a koji koristi blizu ultrazvučne frekvencije. Sam ultrazvuk je zvuk frekvencije veće od 20 kHz što ga čini neosjetljivim za ljude. Sama aplikacija radi s frekvencijama ~ 19 kHz.

Što se tiče upotrebe, sve što trebate učiniti je pokrenuti dvije skripte, send.py i liste.py na svom računalu. Slanje se koristi za slanje poruka chata koristeći frekvenciju, a za slušanje će se prikazati sve poruke koje su u procesu prikupljene.

Možete ga koristiti za testove da biste vidjeli djeluje li. Ako postoji više sudionika u chatu, svaki mora pokrenuti oba programa - pod pretpostavkom da svi žele primati i slati.

Prije nego što se Quietnet može pokrenuti, potrebno je instalirati Python, kao i pyaudio i numpy (Numerical Python), u operativni sustav.

Kad vam to ne uspije, pokrenite naredbe python send.py i python liste.py da biste započeli. Što god unesete u prozor send.py također bi se trebao pojaviti u prozoru Listen.py.

Slanje funkcionira bez ikakvih uobičajenih tehnologija za koje trebate omogućiti da rade, kao što su Bluetooth ili WiFi.

Hoće li raditi, ovisi o brojnim čimbenicima, uključujući kvalitetu zvučnika i mikrofona. Autor sugerira pojačanje glasnoće kako bi se poboljšala učinkovitost prijenosa, ali o tome se radi.

Imajte na umu da, iako možda nećete moći čuti zvuk, to mogu učiniti i životinje ili mladi ljudi.

Nisam mogao dobiti skriptu za pokretanje na svom Windows 7 stroju sa instaliranim Python 3.3.

Druga aplikacija je web audio implementacija Sonicnet.js, JavaScript knjižnica koja može slati i primati podatke u obliku zvukova.

Autor objašnjava koncept koji stoji iza implementacije:

U osnovi možete odrediti raspon frekvencija i abecedu znakova koji se mogu prenijeti. Frekvencijski spektar podijeljen je u raspone koji odgovaraju navedenom abecedi i početnom / završnom kodu, pri čemu svaki znak / kôd odgovara dijelu cijelog raspona frekvencije.

Strana koja šalje šalje svaki znak riječi koja se šalje u središte odgovarajućeg frekvencijskog područja i prenosi tu frekvenciju u određenom trajanju. Prijemna strana vrši kontinuiranu četvorinsku transformaciju signala i traži vrhove u navedenom frekvencijskom rasponu. Nakon što pronađe vrh za značajno trajanje, izvršava pretvorbu natrag od frekvencije do znaka.

Ideja da se zvuk koristi za prijenos podataka nije nova, ali nove aplikacije mogu tehnologiju donijeti većoj publici.