Da senden wir SMS aus der Höhle



    Mein Kollege Peter bot sich einmal an, an einem interessanten Projekt teilzunehmen - einem „Höhlentelefon für Höhlenforscher“, da er selbst an der Höhlenforschung interessiert ist. Höhlenforscher haben ein solches Problem: Die drahtlose Kommunikation unter Tage funktioniert in der Praxis nicht. Ein akzeptabler Radioempfang ist nur in Sichtweite möglich, aber es lohnt sich, einige Umdrehungen zu machen - und es gibt keine Verbindung. Es ist notwendig, sich in der gesamten Höhle zu unterhalten, deren Länge mehrere Kilometer betragen kann. Die mobile Kommunikation dort fängt natürlich nicht an, und daher besteht für Gruppen, die mehrere Wochen autonom in einer Höhle arbeiten, keine Verbindung zur Außenwelt.

    Im August 2018 sollte Peter an einer Expedition in eine ziemlich komplexe und gefährliche Höhle teilnehmen. Für diese Expedition haben wir uns entschlossen, ein neues Gerät zu entwickeln, das das Problem der Kommunikation zwischen autonomen Arbeitsgruppen und der Außenwelt löst.

    Beschreibung der Idee


    Höhlenforscher haben "Höhlentelefone", die durch ein Feldkabel (normalerweise p-274) verlaufen, das sich über die gesamte Länge der Höhle erstreckt, etwa wie


    folgt : (C) Pavel Rudko, TP17 Nedra, hergestellt in Krasnojarsk.

    Die Idee war, ein unterirdisches Telefon mit einem Smartphone zu verbinden und durch die zellulare Basisstation an der Oberfläche mit der Außenwelt in Kontakt zu bleiben. Damit Sie SMS an Verwandte, Verwandte und Freunde aus dem Boden senden können, fordern Sie eine Wettervorhersage auf der Oberfläche an, damit Sie bei Duschen im Voraus an die Oberfläche gelangen können.

    Peter und andere Höhlenforscher planten, bis zum Ende des Snowy-Systems abzusteigen ., in Abchasien gelegen und einst das zweithöchste Höhlensystem der Welt. Geplant, durch den unteren Eingang die Höhlenbank zu gehen. Aus der Sicht einer der größten Gefahren der Höhle - Überschwemmungen - ist das Betreten dieser Route viel sicherer als alle anderen bekannten Routen, aber ein sehr gefährlicher Abschnitt muss noch überwunden werden - brüllende Kaskaden. Es ist in der Flut 250 Meter über den unterirdischen Fluss völlig unpassierbar. Bevor wir an dieser Stelle vorbeikamen, wollten wir das Wetter an der Oberfläche wissen.

    Vom autonomen unterirdischen Lager, in dem es zwei Wochen leben sollte, bis zum nächstgelegenen Ausgang zur Oberfläche von 3,5 km des Pfades mit einem Höhenunterschied von 800 m. Auf der gesamten Strecke waren andere Gruppen, die in der Höhle arbeiteten, bereits mit einer unterirdischen Verbindungsleitung ausgestattet - einem Feld Kabel P-274. Wir hatten vor, diese Linie in unserer Idee zu verwenden.

    Es blieb ein paar Geräte zu konstruieren: Der Controller sollte sich in der Höhlengruppe befinden, kontrolliert an der Oberfläche im Bereich des zuverlässigen Empfangs des GSM-Signals. Und es war notwendig, über eine Kommunikationsweise für sie nachzudenken. Das verwaltete Gerät muss Befehle vom Manager erhalten und SMS empfangen und senden können. Eine wichtige Bedingung war die vollständige Autonomie des Geräts an der Oberfläche für zwei Wochen, dh die gesamte Expeditionsdauer, da am Eingang der Höhle niemand auf uns wartete. Es gab niemanden zum Aufladen, Austauschen der Batterien oder Neustarten des Geräts.

    An der Entwicklung haben teilgenommen:

    • Koveshnikov Peter - der Autor der Idee, der Initiator, die Entwicklung der Software.
    • Matveyev Lyubomir - Montage, Installation und Verdrahtung von Transceiver-Boards.
    • Sergey Shelepin - Design von Transceivern.

    Das allgemeine Schema ist wie folgt. Eine Basisstation ist an der Oberfläche installiert. Sie wird von einer Batterie gespeist, die über eine Solarbatterie aufgeladen wird. Sie sollte mindestens zwei Wochen unter Berücksichtigung der durchschnittlichen Dauer der Höhlenbesuche funktionieren und sollte autonom sein, so dass ihre Arbeit keine Aufmerksamkeit erfordert. Eine Person am Boden kann sich mithilfe einer Krokodilklemme oder eines angeschraubten Terminals an einer beliebigen Stelle der Leitung (einem in den Höhlen gespannten Feldkabel) anschließen und eine unterirdische Telefonverbindung mit der Bodenstation herstellen. Es befindet sich im „Schlafmodus“, wacht regelmäßig auf und empfängt Dienstsignale. Der Energiesparmodus ist erforderlich, um den Akku zu schonen, da nicht immer die Sonne den Akku antreibt.

    Und nun einige technische Details.

    Umsetzung der Idee


    Der Komplex, den wir bei dieser Expedition benutzten, sah folgendermaßen aus:

    1. Zwei Android-Smartphones, auf denen ein speziell geschriebenes Programm läuft.
    2. Zwei selbst entwickelte Transceiver, die an die U-Bahnlinie und die Audioanschlüsse der Telefone angeschlossen sind.
    3. Starkes Feldfeld P-274 , etwa 3600 m lang, bis zu einer Tiefe von 800 m gestreckt.
    4. Komplexes Power-Surface-Telefon.
      1. Energiebank, um das "Oberflächentelefon" zu betreiben.
      2. Arduino , der den Ladevorgang des Telefons von der Powerbank aus neu startet.
      3. Sonnenkollektor zum Laden der Energiebank.



    Sie haben das Schema eines normalen Telefons als Grundlage genommen, aber statt einer Person empfängt und überträgt das Smartphone selbst Befehle. Um miteinander zu kommunizieren, tauschen die Geräte Sequenzen von Audiosignalen aus - DTMF-Töne (ein 16-Ton-Dual-Ton-Mehrfrequenz-Analogsignal). Der Kanal wird halbduplex erhalten. Um die Daten selbst zu übertragen, werden 9 von 16 Tönen verwendet, und die restlichen 7 sind Servicetöne, die beispielsweise den Beginn / das Ende einer Nachricht / Sequenz, ein Not-Reset-Signal usw. anzeigen. Die Dauer der DTMF-Töne und damit die Übertragungsrate variiert von 1 Ton pro Sekunde bis 15 Töne pro Sekunde. Ohne Berücksichtigung technischer Pausen entspricht dies 0,3 - 5,5 Bytes pro Sekunde. Smartphones, die die Bibliothek dtmf-cpp verwenden, konvertieren Text in Töne und umgekehrt.




    Die Transceiver werden über die 3,5-mm-Audiobuchse mit einem 4-poligen Minibuchse an ein Telefon angeschlossen, genau wie ein normales Headset. Jedes Audiosignal, das das Telefon wiedergeben möchte, geht an den Transceiver, und alles, was in der Leitung passiert, verstärkt den Transceiver und sendet ihn an den Mikrofonkanal. Zusätzlich zur Verstärkung des Eingangssignals isoliert der Transceiver das Telefon von der Leitung, um eine Beschädigung durch versehentliche Spannungsspitzen zu vermeiden. Zusätzlich steuert der Transceiver die Trennung des Übertragungsmediums. Wenn das Telefon versucht, etwas abzuspielen, verbindet der Transceiver den linken Audiokanal des Telefons mit der Leitung. Für den Rest der Zeit ist der mit der Masse verbundene Mikrofonkanal mit der Leitung verbunden. Wenn eine Übertragung erforderlich ist, sendet die Software ein Dienstsignal an den rechten Kanal, sodass der Transceiver in den Übertragungsmodus wechselt.

    Sie können die Kommunikation unserer Transceiver hier hören: cloud.mail.ru/public/JAjQ/wuF4XMm4W

    Auf den Telefonen läuft ein selbst geschriebenes Programm, das den Kommunikationskanal abhört , der über die Schnittstelle auf bestimmte Signale oder Benutzereingaben wartet. Algorithmus der Datenübertragung:

    1. Der Benutzer am Bedientelefon wählt den erforderlichen Befehl im Menü aus.
    2. Das Programm erstellt eine Anforderung in Form eines Bytestroms.
    3. Der Strom wird in Sequenzen von nicht mehr als 16 Bytes unterteilt, jeder wird eine Prüfsumme hinzugefügt und dann werden die Bytesequenzen in einer Sequenz von DTMF-Tönen codiert. Zum Satz von Tonfolgen werden zwei Servicesequenzen hinzugefügt, die den Beginn und das Ende einer Sequenzgruppe angeben.
    4. Jede Sequenz wird in PCM 16bit 8000 / s Mono codiert und vom Telefon abgespielt.
    5. Jede Sequenz wird von einem gesteuerten Telefon gelesen, decodiert, auf Fehler geprüft und abhängig vom Ergebnis wird ein Signal für einen erfolgreichen oder nicht erfolgreichen Empfang gesendet.
    6. Nach dem Empfang des Bestätigungssignals sendet das gesteuerte Telefon die folgende Sequenz oder wiederholt die aktuelle.
    7. Wenn alle Sequenzen erfolgreich empfangen wurden, sammelt das verwaltete Telefon einen Bytestrom aus den Sequenzen, dekodiert ihn in einen Befehl und führt ihn aus.

    Die Datenübertragung von einem verwalteten Telefon zu einem Manager erfolgt mit demselben Algorithmus.

    Video hier erhältlich: https://drive.google.com/file/d/1Y4O5R1Hce0S_djni-B1k5_B9Lw7uRlyp/view?usp=sharing


    Beispiel: Eine Person in einer Höhle auf ihrem Smartphone im Programm wählt den Befehl "SMS senden", gibt die Telefonnummer ein, an die die Nachricht gesendet werden soll, und deren Text. Alle diese Daten werden durch DTMF-Signale in einem Tonmodus codiert, über das Kabel an die Oberfläche übertragen, wo das andere Telefon sie decodiert und eine SMS an die angegebene Nummer über die SIM-Karte sendet. Bei Rückmeldung ist das Muster ungefähr gleich: Das Telefon wacht periodisch auf, verlässt den Flugzeugmodus, empfängt die gesammelten SMS vom Operator und wartet, bis der Dienstbefehl "Gib mir SMS" von den Höhlen kommt. Alles was angesammelt wurde, überträgt das Smartphone die Leitung.

    Stromversorgung


    Der gesamte Komplex während der Expedition muss von etwas gespeist werden. Es ist kein Problem, ein unterirdisches Telefon mit Strom zu versorgen - sowohl das Telefon als auch der Transceiver haben einen eingebauten Akku, der Verbrauch ist während des Betriebs nicht zu hoch, sie sind die restliche Zeit ausgeschaltet. Die Situation mit dem „oberflächlich“ verwalteten Telefon ist viel komplizierter: Es muss mindestens zwei Wochen in betriebsbereitem Zustand bleiben.

    Wenn das Smartphone ständig auf die Leitung hört und außerdem mit dem GSM-Netz verbunden ist, reicht die Stromversorgung für mehrere Stunden aus, und das Solarpanel löst dieses Problem nicht, da es weniger Energie liefert, als das Smartphone verbraucht, und die Energiebank die Zeit nur für einen Tag verlängert - zwei Ich musste einen Standby-Modus ausführen, in dem die Leitung nicht angezapft wurde, und auch den Flugzeugmodus aktivieren. Nach 5 Minuten Inaktivität schläft das Programm ein und wacht 15 Sekunden lang alle 10 Minuten auf und wartet auf ein spezielles Wecksignal. Der Flugzeugmodus schaltet sich 10 Minuten lang sechsmal am Tag aus, um SMS zu erhalten. Das Problem ist, dass die Steuerung des Flugzeugmodus die Anwendung von erhöhten Rechten erfordert, die nicht ohne Spurrillen erhalten werden könnenTelefon. Alle anderen Funktionen der Anwendung, die nicht mit dem Energiesparen zusammenhängen, erfordern keine erhöhten Rechte und funktionieren auf jedem Telefon mit Android 4.1 und höher.

    Feldversuche und Pläne


    Bei dieser Expedition testete Peter mit einem Team von Kavernern das Gerät zum ersten Mal im Feld. Kein Problem natürlich nicht gemacht. Die Anwendung wurde sehr schnell am Knie geschrieben, da die Fristen der Expedition knapp wurden.

    Es gab zwei große Softwareprobleme, das Problem mit der Stromversorgung der "Oberflächen" -Vorrichtung und mit der Abdichtung des "Oberflächen" -Komplexes, das Problem mit dem Verbinder. Für die meisten Probleme waren die Jungs bereit und nutzten vorbereitete Sicherungsoptionen, die mit etwas improvisiert wurden. Wie auch immer, das System funktionierte, wir konnten einen vollständigen Test durchführen. Die zweite Gruppe, die sich am Ende der Höhle befand, um den ersten Aufstieg nach dem Abflug des Hauptteils der Expedition zu untersuchen, berichtete über die Ergebnisse sowie über das aktuelle Wetter und die Prognose. Fast alle gefundenen Probleme und Mängel wurden leicht behoben, und wir haben sie für die nächste Expedition nach Snow behoben, die im Dezember 2018 stattfand - im Januar 2019.

    Während der Tests haben wir die maximale stabile Datenübertragungsrate gefunden. Sie unterscheidet sich nicht von der im Labor erzielten maximalen stabilen Geschwindigkeit, wenn die Geräte direkt miteinander verbunden sind. Das Signal, das durch die durch die Höhle gespannte Kommunikationsleitung übertragen wurde, war in keiner Weise verzerrt, es wurden keine Nebengeräusche vergleichbarer Lautstärke festgestellt. Nur geringfügig mit der Tiefe des Abstiegs fiel die Lautstärke des Signals. Aufgrund von Softwareproblemen war es auch möglich, den Betrieb unter den Bedingungen eines verzerrten, "stotternden" intermittierenden Signals zu testen, bei dem auf den ersten Blick eine erfolgreiche Übertragung nicht erreicht werden konnte. Trotzdem konnte die Betriebsart gewählt werden, bei der auch unter solchen Bedingungen die Verbindung von zwei Geräten erhalten bleibt. Dies lässt auf die mögliche sehr hohe Stabilität des von uns erstellten Übertragungsprotokolls schließen.

    Ursprünglich war geplant, die Topbank mit der Powerbank zu betreiben. Es stellte sich heraus, dass die Powerbank, die wir hatten, das Telefon zu 100% aufgeladen und ausgeschaltet hatte. Um den Ladevorgang erneut zu initialisieren, musste das Kabel aus der Powerbank gezogen und wieder eingeführt werden. Andernfalls konnte er nicht verstehen, dass sich das Telefon gesetzt hatte und es Zeit war, die Stromversorgung wieder freizugeben. Es gab ein paar Tage vor der Expedition. Ich dachte an nichts Besseres, als Arduino festzunageln.


    Video: cloud.mail.ru/public/76ay/F5xinJZQi

    Gemäß dem Zeitplan brach der Arduino alle drei Stunden bei Verwendung eines Relais den + 5V-Kanal des USB-Stromkabels von der Powerbank ab und drehte ihn 15 Minuten später zurück. Zuerst wurde die Platine mit 4 AA-Batterien betrieben, und dann wurde das Batteriefach mit vier 18650-Bänken angepasst, was sich als das schwächste Glied herausstellte, da die Batterien zuerst den Arduino speisten. Aber sie verbrachte einige Zeit damit. Die erste Gruppe der Expedition, die an die Oberfläche stieg, wechselte die Batterien und das System funktionierte eine weitere Woche.

    Wir setzen unsere Experimente fort: Es gibt eine funktionierende Version des Spendertelefons, bei der ein großer Block mit 18650 durch ein Loch im Gehäuse gelötet wird: Das Telefon befindet sich im Standby-Modus und die Batterien sind erst nach 26,5 Tagen entladen!





    Daher werden wir in Zukunft wahrscheinlich das Solarpanel aufgeben, das auch ein schwaches Glied ist: Es kann mit Staub oder Schnee gepudert werden und es mit Schmutz bespritzen. In den drei Wochen der Expedition von 4,6 V auf die Betriebsspannung der Batterien für den Transceiver wurde die "Oberseite" auf 3,8 V und die "Unterseite" auf 4,1 V entladen.

    Die aktuelle Version unseres Transceivers kann nicht wie ein normales Telefon arbeiten. Wir möchten das Schema so ändern, dass Sie den Transceiver ohne Smartphone im Modus des üblichen "Höhlentelefons" verwenden können: angeklickt - Sie sagen, loslassen - Sie hören zu.

    Jetzt unterstützt die Software nur den Empfang und das Senden von SMS sowie eine Reihe von Dienstbefehlen. Das Datenübertragungsprotokoll enthält keine anderen Einschränkungen als die Bandbreite. Daher ist es relativ einfach, das Herunterladen von Wettervorhersagen aus dem Internet oder das Senden von Nachrichten an Instant Messenger zu programmieren. Leider reicht die Übertragungsrate nicht aus, um vollständig online zu gehen und Bilder zu übertragen. Die maximale stabile Geschwindigkeit beträgt jetzt etwa 6 Bytes pro Sekunde. Auf einem stabilen Kanal dauert das Senden oder Empfangen einer SMS mit 160 kyrillischen Zeichen etwa 1 Minute.

    Bei der nächsten Expedition planen wir, die Software zu verfeinern, die fehlenden Funktionen hinzuzufügen und Fehler zu korrigieren und das Stromversorgungssystem des Oberflächenkomplexes zu überarbeiten. Die Funktion des Klingelns der Leitung wurde bereits implementiert - einmal pro Minute wird ein Service-Signal ausgegeben, um die Leitung auf Pausen zu überprüfen. Hinzu kommen Servicefunktionen wie manuelle Installation der Geschwindigkeit, erzwungener Neustart und andere Kleinigkeiten. Vielleicht werden wir später das Telefon ins Internet gehen lassen und die Wettervorhersage herausfinden. Ich möchte meine eigene Wetterstation an das Oberflächentelefon anschließen, das möglicherweise auf Arduino basiert, und aktuelle Daten von den Sensoren auf der ganzen Linie senden.

    Jetzt auch beliebt: