Сбор данных из внешних источников и внутренних сенсоров с помощью NextGIS Logger

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Эта страница является черновиком статьи.


Описание инструмента для сбора данных с сенсоров мобильного устройства.

NextGIS Logger - сборщик данных с окружающих источников информации и внутренних сенсоров для устройств с операционной системой Android 3.0+ (Honeycomb).

NextGIS Logger может собирать данные в двух режимах:

  • Логгер 1. Постоянно собирает данные и сохраняет их в Логе 1. Это сервис.
  • Логгер 2. Собирает данные дискретно, по запросу пользователя и сохраняет их в Логе 2.

Два логгера могут работать по-отдельности или параллельно. Данные логов связаны друг с другом временными метками.

Создано в Nextgis.png Веб ГИС для вашей организации по доступной цене

Как получить и лицензия

Программу можно скачать с Google Play (предпочтительный способ) или в виде APK (скачать). Если вы устанавливаете из APK, нужно разрешить установку из "Unknown sources" в настройках системы, секция "Security". Официальная страница программы - на сайте разработчика - NextGIS.

NextGIS Logger это программное обеспечение с открытым исходным кодом. Лицензия - GPL v2. Код можно получить на Github.


Интерфейс

After installation shortcut will be created in launcher and you can start using NextGIS Logger. There are 3 basic screens/activities:

+ Main Activity:

   * Sessions
       * "Open/Close" button for new session. Clicking creates new directory with specified name and saves all data to it. Current session can't be closed until logger is stopped.
       * Manage. Opens sessions screen. See below.
   * Modes
       * "Start/Stop logging" button for Logger 1. Clicking starts or stops writing the Log 1. Logger can't be started until at least one session is opened.
       * "Markers" button for Logger 2. Clicking button opens markers activity. Activity can't be started until at least one session is opened.
   * Text fields for summary and information.

[| height = 480px]


+ Markers Activity:

   * Edit text field in action bar. Entering text filters names from categories file or shows entered text.
   * Items in ListView. Clicking on item saves mark to Log 2.

[| height = 480px]


+ Sessions Activity:

   * List of checkable sessions
   * Select all. Selects / deselects all sessions.
   * Share action. Shares selected sessions in various applications.
   * Delete action. Deletes selected sessions from device.

[| height = 480px]

Настройки

  • Main:
   * Identification string (optional) - input your firstname or lastname or whatever you need to assign records in log with it
   * Set period - choose logging period in seconds
   * Use categories file - use presets for mark names from file ([more](https://github.com/nextgis/nextgislogger/issues/3))
   * Load mark name presets from file... - select path to load categories file from
   * Try use API 17+ to find nearby cells - use new method from API 17 to get all cells around. It includes correct MNC/MCC for all cells.
   * Keep screen on - Keeps Markers screen on.
  • Sensors:
   * Accelerometer - enable accelerometer data to logging
   * Linear accelerometer - use linear accelerometer sensor instead default (available if device has one)
   * Magnetometer - enable magnetometer data to logging
   * Orientation - enable orientation data to logging
   * Gyroscope - enable gyroscope data to logging

Результаты

All logs are located in each session's directory, called as in new session dialog prompted. All sessions directories are located in default external storage in "nextgis_logger" directory.

  • device_info.txt created when new session is opened. It's file with info about device.
  • Logger 1 produces Log 1 called "cell_time_log.csv" with Network info and "sensor_time_log.csv" with Sensors info.
  • Logger 2 produces Log 2 called "cell_time_mark.csv" with Network info and "sensor_time_mark.csv" with Sensors info.
    • Cell (GSM/3G) log structure**
    • Sensor log structure**
  • ID - category ID from categories file ([more](https://github.com/nextgis/gsm_logger/issues/3)).
  • Name - category name from categories file ([more](https://github.com/nextgis/gsm_logger/issues/3)), otherwise manually inputed name
  • User - identification string from preferences ([issue #6](https://github.com/nextgis/gsm_logger/issues/6)).
  • TimeStamp - unix timestamp (convert with [this](http://www.epochconverter.com)). Not unique. Example: 1409513090236
  • Type - "Raw" if accelerometer sensor used, "Linear" if linear accelerometer used (if device has one)
  • Accel_X - acceleration by X-axis in m/s2
  • Accel_Y - acceleration by Y-axis in m/s2
  • Accel_Z - acceleration by Z-axis in m/s2
  • Azimuth - angle between the magnetic north direction and the Y-axis, around the Z-axis (0 to 359). 0=North, 90=East, 180=South, 270=West
  • Pitch - rotation around X-axis (-180 to 180), with positive values when the Z-axis moves toward the Y-axis.
  • Roll - rotation around the X-axis (-90 to 90) increasing as the device moves clockwise
  • Magnetic - measure the ambient magnetic field in the X, Y and Z axis. Value in micro-Tesla (uT).
  • Gyro_X - Angular speed around the X-axis in radians/second
  • Gyro_Y - Angular speed around the Y-axis in radians/second
  • Gyro_Z - Angular speed around the Z-axis in radians/second
  • GPS_Lat - Latitude, in degrees
  • GPS_Lon - Longitude, in degrees
  • GPS_Alt - Altitude above the WGS 84 reference ellipsoid, in meters
  • GPS_Accuracy - GPS fix accuracy as the radius of 68% confidence, in meters
  • GPS_Speed - Speed, in meters/second
  • GPS_Bearing - Bearing is the horizontal direction of travel of this device, and is not related to the device orientation, in degrees.
    • device_info.txt**
  • Manufacturer
  • Brand
  • Model
  • Product
  • Android version
  • API version
  • Kernel version
  • Radio firmware version
  • Logger version name
  • Logger version code
    • Notes:**
  • Logger 1 uses "ServiceLog" as Name and empty string ("") as ID.

Контакты

Если вы нашли ошибку или у вас есть предложения по улучшению расширения — воспользуйтесь багтрекером. Кроме того, вопросы по использованию расширения можно задать авторам напрямую.