nonchris
    • Create new note
    • Create a note from template
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Write
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Make a copy
    • Transfer ownership
    • Delete this note
    • Save as template
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Create Help
Create Create new note Create a note from template
Menu
Options
Engagement control Make a copy Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    # Gerätestandort, Hardware & Datenübertragung ## Gerätestandort bestimmen: * Einfacher Ansatz: RSS (Received Signal Strength) basierte Methoden * Trilateration / Multilateration * _Problem_: 3+ Access Points nötig <br><br> * _Paper_: "Decimeter-Level Localiztation with a Single WiFi Access Point * Link: https://www.usenix.org/system/files/conference/nsdi16/nsdi16-paper-vasisht.pdf * Einige gute Ideen <br><br> * _Paper_: "RSS Indoor Localization Based on a Single Access Point" * Link: https://www.researchgate.net/publication/335438081_RSS_Indoor_Localization_Based_on_a_Single_Access_Point * __Idee__: Anstatt mehrere Router für Multilateration zu nutzen, wird ein einzelner Access Point mit mehreren (gerichteten) Antennen ausgestattet, sodass dadurch Daten aus verschiedenen Richtungen aufgezeichnet werden können. In Kombination mit der Signalstärke kann somit relativ genau ein Standort ermittelt werden. * Die Kombination aus linear und kreisförmig ausgerichteten Antennen erhöht die Genauigkeit und verringert Fehler gegenüber ausschließlich linear ausgerichteten Antennen. * Möglicher Ansatz einer vorherigen Arbeit: * Bevor Messungen durchgeführt werden, wird der zu überwachende Bereich einmalig in rechteckige _Zellen_ eingeteilt. Anschließend werden solange Testdaten für jede einzelne Zelle gesammelt, sodass mithilfe eines Machine-Learning-Algorithmus' relativ genaue Messungen durchgeführt werden können. * Vorteil: Sehr genau * Nachteil: Sehr aufwändig * Ansatz in diesem Paper: * Verwendung eines einzelnen Access Points mit mehreren Antennen, die jeweils als eigene Transmitter fungieren * Die Antennen werden genau kalibriert (Ausrichtung / Winkel and Verschiebung / Versatz) * Die RSS-Werte von den verschiedenen Antennen können dann zur Erstellung einer Multi-Layer Radiomap kombiniert werden * Bedingung an die Hardware: * WLAN-Treiber des APs müssen _Radiotap_ unterstützen, ein Standard für 802.11 frame Injektion und Empfang * Somit können zusätzliche Information über 802.11 Pakete extrahiert werden, wie eine Antennen-ID sowie die RF-Signalstärke * Problem: _Multipath-Effect_ * Es kann passieren, dass mehrere Antennen (selbst wenn diese gar nicht direkt auf ein mobiles Endgerät gerichtet sind), dasselbe Endgerät erfassen. Dies kann z.B. dann passieren, wenn das WLAN-Signal an Wänden in Innenräumen reflektiert und somit an einer anderen Antenne ebenfalls eintrifft. * Beispiel aus dem Paper: <img src="Multipath-Effect.png" alt="Example for Multipath effect"/> * Aber: Dadurch, dass der Weg vom aufgezeichneten Gerät bis zum AP dadurch größer wird, ist dies in den meisten Fällen unproblematisch und das Problem führt nur zu geringen Abweichungen. * Evaluation: * getestet mit verschiedenen Machine-Learning-Algorithmen * recht genaue Ergebnisse, nur geringe Abweichungen (vernachlässigbar) <br><br> * Warum reicht nicht ein Access Point mit einer Antenne? * Bei linearer Antenne: * es kann nur auf einer Geraden aufgezeichnet werden, somit muss sich das Endgerät quasi exakt auf der Linie der Antenne befinden, sodass diese Antennenart in einem dreidimensionalen oder gar zweidimensionalen Raum nicht ausreicht * Bei kreisförmiger Antenne: * Hiermit kann zwar im zweidimensionalen Raum alles erfasst werden, allerdings lässt sich aus den Daten, die eine einzelne kreisförmige Antenne aufzeichnet nicht erkennen, aus welcher Richtung eine Aufzeichnung stammt. Lediglich die Entfernung des Endgerätes vom Access Point kann mithilfe der Signalstärke berechnet werden. * Also: Kombination mehrerer Access Points oder zumindest mehrerer Antennen in einem einzelnen Access Point notwendig * Ein Ansatz ist auch, die Reflektionen von beispielsweise Wänden zu nutzen und damit Multilateration durchzuführen <br><br> * Ein _lustiger_ Ansatz: * Drohne mit Access Point durchgehend Gebiet überfliegen lassen * Je näher die Drohne am Endgerät ist, desto stärker das Signal * Es entsteht ein zweidimensionales Bild, da die Drohne aktuelle Signalstärke mit Signalstärke von letzter Position vergleichen kann * Genauso könnte man einen Roboter durch den Supermarkt laufen lassen, den Access Point über eine Schiene an der Decke eines Bereichs im Kreis laufen lassen oder einen Einkaufswagen in einem Supermarkt mit einem AP ausstatten, sodass dieser durch die Kunden durchgehend bewegt wird * Allerdings sind diese Ansätze kostenaufwändig und vermutlich weniger genau --- ## Hardware: * __Anforderungen__: * günstig * physisch klein * dennoch möglichst genau und effizient * Antennen (für Standorterfassung wichtig): * entweder mehrere Antennen in verschiedene Richtungen ausgerichtet * oder mehrere Access Points an verschiedenen Stellen im Raum, die die Daten dann an eine zentrale Einheit übermitteln <br><br> * __Komponenten (Übersicht)__: | Komponenten-Typ | Komponenten-Name | Preis | Link | | :--- | :--- | ---: | :--- | | Prozessor | Raspberry Pi 4 | 59,96€ | https://de.elv.com/raspberry-pi-4-model-b-2gb-ram-250569?gclid=CjwKCAiAhreNBhAYEiwAFGGKPFWemDfkAiktbRm6G_vUXpqqoW8y8heBVJFu1ZVqhjvFi5qMh5UbehoCOA0QAvD_BwE | | Router-Gehäuse | Geekworm Gehäuse | 13,59€ | https://www.amazon.de/Geekworm-Raspberry-Aluminum-Passive-Dissaption/dp/B07ZVJDRF3/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=raspberry+pi+4+geh%C3%A4use&qid=1639052135&sr=8-3 | | WIFI-AP | ESP 8266 | 6,99€ | https://www.amazon.de/AZDelivery-NodeMCU-ESP8266-ESP-12E-Development/dp/B06Y1ZPNMS/ref=asc_df_B06Y1ZPNMS/?tag=&linkCode=df0&hvadid=310638483583&hvpos=&hvnetw=g&hvrand=1759455048080728353&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9044708&hvtargid=pla-378483937875&th=1&ref=&adgrpid=63367893073 | * __Komponenten (detailliert)__: * __Prozessor__: Raspberry Pi 4 * 2GB RAM * WLAN-Standards 802.11 b/g/n/ac --> Kann sogar 5G * Ethernet-Anschluss (gut für Übertragung zu Server) * 8,5cm groß (optimal für einen kleinen Access Point) * Problem: Nur eine externe Antenne möglich, also Standortbestimmung problematisch * Alternative: Raspberry Pi 02W --> 16€ * weniger performant * weniger modular * kein USB * weniger RAM * __Router-Gehäuse__: Geekworm Raspberry Pi 4 Gehäuse * gute Kühlung laut Hersteller * kompakte Größe * schlichtes schwarzes Design, schön unauffällig * __WIFI-AP__: ESP 8266 * können mehrere ESPs im Raum verteilt werden * lassen sich sehr simpel über WLAN mit dem Router verbinden * Aufgabe: Mitschneiden des WLAN-Verkehrs * Sehr günstig * __esp s3 wroom 32__ * Antennenanschluss * USB bei gutem Dev-Board * https://www.google.com/search?q=esp+s3+wroom+32&tbm=shop * https://www.reichelt.de/entwicklungsboard-esp32-s2-wroom-esp32s2saola1m-p311736.html?PROVID=2788 * __esp32-cam usb__ --- ## Multilateration: Wie kommunizieren die Access Points untereinander?: #### An Online Squential Extreme Learning Machine Approch to WiFi Based Indoor Positioning https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/zou2014online.pdf Überwachte Zone 580 Quadratmeter, viel KI * Verwendung von 8 D-Link DIR-605L Wifi Cloud Routern als APs * Ein Samsung Galaxy, welches via App die WiFi RSS fingerprints einsammelt * Das Einsammeln passiert einmal jede Sekunde * Die Evaluation läuft auf dem Handy * Zwei Phasen online und offline Phasen (TODO: was genau passiert hier?) * Kalibrierung des Systems über fünf Tage #### Smartphone-Based Indoor Localization with Bluetooth Low Energy Beacons https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/zhuang2016smartphone.pdf * BLE beacons an Wänden, auf circa 1,5m Höhe * Basiert auf Texas Instruments BLE Chip CC2549 * 10 Hz sample rate, -16 dBm transmit power * Locations der Beactons mit Laser und Bauplan bestimmt * Genauigkeit: 1m * Chip broadcasted channel information und RSS values für jeden advertisement channel * Kalibrierung wurde durch Stoppen der Zeit (an bestimmten Referenzpunkten) beim Laufen durch den Gang (mit Handy) vorgenommen * Ein Beacon alle 9m wäre gut (20 im Test) * Wurde auch mit 18m (8 im Test) getestet, ist aber viel unpräzieser #### Phaser: Enabling Phased Array Signal Processing on Commodity WiFi Access Points https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/gjengset2014phaser.pdf * Hardware design: * mehrere NICs &#8594; Routing eines Antennensignals auf mehrere NIC-Radio-Channels * Vorteil: Erlaubt einem Radio Channel jeder NIC, ein Signal zu empfangen, von dem eindeutig gesagt werden kann, dass es gleich ist * Nachteil: Ein Antennensignal, welches sonst für räumliches Multiplexing verwendet werden könnte, geht verloren / wird geopfert #### Indoor Localization Using Improved RSS-Based Lateration Methods (2009) https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/yang2009indoor.pdf Hat Hardware Infos, aber halt von 2009... ## Spannende Paper ohne Hardware Infos: https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/zhu2013rssi.pdf --- "It can be seen that BLTE is a more accurate location technology than WiFi, even when AP placement is identical. [...] In summary, we expect that BTLE is likely to become the dominant indoor location technology of choice for smartphones in the coming years." https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/zhao2014does.pdf --- Erklärung in `3. Problem statement` welche Daten während offline-phase gesammelt werden Während online-phase hört der Empfänger allen APs in der Area zu und sammelt Daten https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/yiu2017wireless.pdf ## Gedanken #### Scanrate WiFi Hat WiFi wirklich nur eine Scan-Rate von 1Hz bei typischen Smartphones? BTLE ist schneller (Scan Rate 10Hz) https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/zhao2014does.pdf --- ## Multilateration: Wie synchronisieren wir die Access Points?: #### Phaser: Enabling Phased Array Signal Processing on Commodity WiFi Access Points https://git.cs.uni-bonn.de/ma-swierzy-2021/literature/-/blob/master/gjengset2014phaser.pdf * Synchronisierungsalgorithmus (zusammengefasst) 1. CSI von jeder NIC erhalten 2. Messwerte der gemeinsamen Antenne isolieren 3. Es wird willkürlich aber konsistent für alle Pakete eine NIC als primäre Netzwerkkarte ausgewählt 4. Nun wird eine Transformation von der CSI der sekundären NIC gesucht, sodass die von der geteilten Antenne aufgezeichneten Messwerte bei der primären und sekundären NIC übereinstimmen --- ## Senden der Daten: __Ideen__: * Ethernet (Raspberry Pi 4 hat Anschluss) * Vorteile: Sichere Übertragung, stabile Verbindung, WLAN-Verkehr wird nicht unnötig überladen * Nachteile: Aufwändig in der Implementierung, nicht mobil, teuer * Senden über WLAN, aber über gesonderte Frequenzen (Empfangen beispielsweise 2,4GHz und Senden mit 5GHz) * Vorteile: Günsitg, da WLAN so oder so integriert ist (Raspberry Pi 4 hat bspw. 5GHz-WLAN onboard), einfache Implementierung * Nachteile: 5GHz hat geringe Reichweite * Bluetooth * Vorteile: Standard, einfache Implementierung, onboard implementiert (bei Raspberry Pi 4) * Nachteile: Selbe Frequenzen wie WLAN --> WLAN-Verkehr überlastet, sehr geringe Reichweite * LORAWAN (Low Range Wide Area Network) * Vorteile: sehr große Reichweite, mit Adapter implementierbar * Nachteile: Adapter kostet Geld (Preis allerdings vernachlässigbar), Bandweite sehr schlecht

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully