Для чего нужен датчик расстояния на телефоне. Что такое G-Sensor и для чего он нужен в мобильных устройствах

Современный смартфон уже сложно назвать просто компьютером, ведь он умеет гораздо больше своего стационарного предка: и температуру может измерить, и высоту над уровнем моря подсказать, и влажность воздуха определить, а если вдруг забудешь свою ориентацию в пространстве или силу тяжести потеряешь - все исправит. А помогают ему в этом, как ты уже, наверное, догадался, датчики aka сенсоры. Сегодня мы познакомимся с ними поближе, а заодно и проверим, действительно ли мы находимся на Земле. 😉

Датчики всякие нужны!

Для работы с аппаратными датчиками, доступными в устройствах под управлением Android, применяется класс SensorManager , ссылку на который можно получить с помощью стандартного метода getSystemService :

SensorManager sensorManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE);

Чтобы начать работать с датчиком, нужно определить его тип. Удобнее всего это сделать с помощью класса Sensor , так как в нем уже определены все типы сенсоров в виде констант. Рассмотрим их подробнее:

  • Sensor.TYPE_ACCELEROMETER - трехосевой акселерометр, возвращающий ускорение по трем осям (в метрах в секунду в квадрате). Связанная система координат представлена на рис. 1.
  • Sensor.TYPE_LIGHT - датчик освещенности, возвращающий значение в люксах, обычно используется для динамического изменения яркости экрана. Также для удобства степень освещенности можно получить в виде характеристик - «темно», «облачно», «солнечно» (к этому мы еще вернемся).
  • Sensor.TYPE_AMBIENT_TEMPERATURE - термометр, возвращает температуру окружающей среды в градусах Цельсия.
  • Sensor.TYPE_PROXIMITY - датчик приближенности, который сигнализирует о расстоянии между устройством и пользователем (в сантиметрах). Когда в момент разговора гаснет экран - срабатывает именно этот датчик. На некоторых девайсах возвращается только два значения: «далеко» и «близко».
  • Sensor.TYPE_GYROSCOPE - трехосевой гироскоп, возвращающий скорость вращения устройства по трем осям (радиан в секунду).
  • Sensor.TYPE_MAGNETIC_FIELD - магнитометр, определяющий показания магнитного поля в микротеслах (мкТл) по трем осям (имеется в смартфонах с аппаратным компасом).
  • Sensor.TYPE_PRESSURE - датчик атмосферного давления (по-простому - барометр), который возвращает текущее атмосферное давление в миллибарах (мбар). Если немного вспомнить физику, то, используя значение этого датчика, можно легко вычислить высоту (а ежели вспоминать ну никак не хочется, можно воспользоваться готовым методом getAltitude из объекта SensorManager ).
  • Sensor.TYPE_RELATIVE_HUMIDITY - датчик относительной влажности в процентах. Кстати, совместное применение датчиков относительной влажности и давления позволяет предсказывать погоду - конечно, если выйти на улицу. 😉
  • Sensor.TYPE_STEP_COUNTER (с API 19) - счетчик шагов с момента включения устройства (обнуляется только после перезагрузки).
  • Sensor.TYPE_MOTION_DETECT (с API 24) - детектор движения смартфона. Если устройство находится в движении от пяти до десяти секунд, возвращает единицу (по всей видимости, задел для аппаратной функции «антивор»).
  • Sensor.TYPE_HEART_BEAT (с API 24) - детектор биения сердца.
  • Sensor.TYPE_HEART_RATE (с API 20) - датчик, возвращающий пульс (ударов в минуту). Этот датчик примечателен тем, что требует явного разрешения android.permission.BODY_SENSORS в манифесте.

Перечисленные датчики являются аппаратными и работают независимо друг от друга, часто без всякой фильтрации или нормализации значений. «Для облегчения жизни разработчиков»™ Google ввела несколько так называемых виртуальных сенсоров, которые предоставляют более упрощенные и точные результаты.

Например, датчик Sensor.TYPE_GRAVITY пропускает показания акселерометра через низкочастотный фильтр и возвращает текущие направление и величину силы тяжести по трем осям, а Sensor.TYPE_LINEAR_ACCELERATION использует уже высокочастотный фильтр и получает показатели ускорения по трем осям (без учета силы тяжести).

При разработке приложения, эксплуатирующего показания сенсоров, вовсе не обязательно бегать по улице или прыгать в воду с высокой скалы, так как эмулятор, входящий в поставку Android SDK, умеет передавать приложению любые отладочные значения (рис. 2–3).


Ищем датчики

Чтобы узнать, какие сенсоры есть в смартфоне, следует использовать метод getSensorList объекта SensorManager :

List sensors = sensorManager.getSensorList(Sensor.TYPE_ALL);

Полученный список будет включать все поддерживаемые датчики: как аппаратные, так и виртуальные (рис. 4). Более того, некоторые из них будут иметь различные независимые реализации, отличающиеся количеством потребляемой энергии, задержкой, рабочим диапазоном и точностью.

Для получения списка всех доступных датчиков конкретного типа необходимо указать соответствующую константу. Например, код

List pressureList = sensorManager.getSensorList(Sensor.TYPE_PRESSURE);

вернет все доступные барометрические датчики. Причем аппаратные реализации окажутся в начале списка, а виртуальные - в конце (правило действует для всех типов датчиков).


Чтобы получить реализацию датчика по умолчанию (такие датчики хорошо подходят для стандартных задач и сбалансированы в плане энергопотребления), используется метод getDefaultSensor :

Sensor defPressureSensor = sensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE);

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

О том, как самолично выбирать реализацию датчиков по критериям, написано во врезке, мы же плавно двигаемся дальше.

Снимаем показания

Чтобы получать события, генерируемые датчиком, необходимо зарегистрировать реализацию интерфейса SensorEventListener с помощью того же SensorManager . Звучит сложновато, но на практике реализуется одной строчкой:

Sensor defPressureSensor = sensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE); sensorManager.registerListener(workingSensorEventListener, defPressureSensor, SensorManager.SENSOR_DELAY_NORMAL);

Здесь мы полученный ранее барометр по умолчанию регистрируем с помощью метода registerListener , передавая в качестве второго параметра сенсор, а в качестве третьего - частоту обновления данных.

В классе SensorManager определены четыре статические константы, определяющие частоту обновления:

  • SensorManager.SENSOR_DELAY_FASTEST - максимальная частота обновления данных;
  • SensorManager.SENSOR_DELAY_GAME - частота, обычно используемая в играх, поддерживающих гироскоп;
  • SensorManager.SENSOR_DELAY_NORMAL - частота обновления по умолчанию;
  • SensorManager.SENSOR_DELAY_UI - частота, подходящая для обновления пользовательского интерфейса.

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

Оставшийся нерассмотренным первый параметр представляет собой реализацию интерфейса SensorEventListener , где мы наконец-то получим конкретные цифры:

Private final SensorEventListener workingSensorEventListener = new SensorEventListener() { public void onAccuracyChanged(Sensor sensor, int accuracy) { } public void onSensorChanged(SensorEvent event) { // Получаем атмосферное давление в миллибарах double pressure = event.values; } };

В метод onSensorChanged передается объект SensorEvent , описывающий все события, связанные с датчиком: event.sensor - ссылка на датчик, event.accuracy - точность значения датчика (см. ниже), event.timestamp - время возникновения события в наносекундах и, самое главное, массив значений event.values . Для датчика давления передается только один элемент, тогда как, например, для акселерометра предусмотрено сразу три элемента для каждой из осей. В следующих разделах мы рассмотрим примеры работы с различными датчиками.

Метод onAccuracyChanged позволяет отслеживать изменение точности передаваемых значений, определяемой одной из констант: SensorManager.SENSOR_STATUS_ACCURACY_LOW - низкая точность, SensorManager.SENSOR_STATUS_ACCURACY_MEDIUM - средняя точность, возможна калибровка, SensorManager.SENSOR_STATUS_ACCURACY_HIGH - высокая точность, SensorManager.SENSOR_STATUS_UNRELIABLE - данные недостоверны, нужна калибровка.

После того как отпадает необходимость работы с датчиком, следует отменить регистрацию:

SensorManager.unregisterListener(workingSensorEventListener);

Меряем давление и высоту

Весь код для работы с датчиком давления мы уже написали в предыдущем разделе, получив в переменной pressure вполне себе значение атмосферного давления в миллибарах.

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов.

Статьи и Лайфхаки

Многие пользователи мобильных устройств до сих пор не знают, для чего нужны те или иные специальные функции.

В частности, некоторые из них не представляют себе, что такое G-Sensor и для чего он используется.

И это неудивительно, ведь постоянные инновации и новшества способны поставить в тупик даже самых продвинутых представителей широкой общественности.

Существует датчик с таким же названием, о котором знают все автолюбители. Однако для чего он нужен в мобильном устройстве?

Иногда для того, чтобы разобраться во всех функциях своего аппарата, не хватит и нескольких дней. Попробуем немного облегчить сам процесс владельцу телефона с G-сенсором, рассказав об этом датчике более подробно.

Что представляет собой G-Sensor

Рассматриваемый G-сенсор, также известный как , представляет собой особый прибор, который контролирует положение устройства в пространстве.

По сути, это датчик движения, способный измерить ускорение, сопоставив 3 пространственные координаты одновременно.

Если объяснять, что такое G-Sensor, иными словами, получим особый прибор, который измеряет разницу между проекциями гравитационного и абсолютного ускорения.

Для повышения уровня сигнала в датчике используют особые его усилители, отличающиеся высоким уровнем линейности. Именно благодаря этому измерения являются более точными.

Некоторые приборы оснащены также встроенными системами, собирающими и обрабатывающими информацию. Это позволяет создать полноценную измерительную программу со всеми нужными компонентами.

Для чего нужен G-Sensor в мобильных устройствах

В таких аппаратах прибор используется как датчик для определения пространственного положения, как шагомер, а также для автоматического поворота экрана.

Это означает, что при повороте мобильного телефона, к примеру, при съёмке, изображение будет повёрнуто так, как удобно самому пользователю.

Такой же будет реакция на удар, ну а при встряхивании во время проигрывания музыки трек должен измениться. Удобно будет использовать устройство и в качестве шагомера.

Ожидается, что со временем сфера использования таких сенсоров будет постоянно расширяться, ведь с ними работают самые различные .

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

Таким образом, G-Sensor разработан специально для того, чтобы каждый смог сделать эксплуатацию своего мобильного устройства более комфортной.

Датчики представляют собою разнообразные устройства, состоящие из различных микроэлектромеханических компонентов, которые позволяют получать и считывать различные дополнительные данные. Это позволяет сделать более удобной работу с гаджетом и добавить ему функциональности.

Безусловно, общеизвестным является тот факт, что современные смартфоны напичканы множеством датчиков, но их применение и количество зачастую остается загадкой, потому как производители представляют общественности информацию только о самых основных из них, как, например, датчики приближения, гироскоп или же акселерометр.

Сегодня мы хотим вам рассказать, какие датчики могут быть в смартфоне и зачем они нужны.

Датчик ориентации или ускорения – акселерометр. Это самый обыкновенный вид датчика, который наблюдается чуть ли не в каждой модели смартфонов или планшетов. Необходим он для того, чтобы регистрировать пространственные повороты девайса из портретного положения в положение ландшафтное. Зачастую, конкретно акселерометр называется G-sensor. Обычно, существуют три оси, по которым датчиком регистрируется разница между ускорением самого объекта и гравитационным ускорением.

В последующем, процессор вычисляет значение разницы, анализирует, и направляет информацию в программное обеспечение. Согласно этой информации становится известно, в какой момент и куда поворачивать экран. Исходя из принципа работы, можно вывести главный недостаток датчика ориентации. Если значение ускорения крайне мало или его нет, то он останавливает процесс регистрации пространственного расположения девайса, или же погрешность в регистрировании достаточно высока. Это может оказывать отрицательное влияние на точности управления гаджетом в мобильных играх или в момент управления, к примеру, дроном. В таком случае помощь акселерометру оказывает следующий датчик.

Гироскоп. Необходим также для того, чтобы отмечать пространственное расположение девайса, но при этом свободно может осуществлять регистрацию угла наклона устройства по трем осям даже в том случае, если не происходит движение смартфона. Это повышает точность управления при игре на мобильном телефоне, так как разработчики благодаря гироскопу могут получать данные о том, насколько отклонилось устройство от каких-либо координат, и погрешность в таком случае равна примерно одному-двум градусам.

Датчик геомагнитного анализа. Он может реагировать на магнитные поля нашей планеты. Его еще частенько величают электронным компасом, потому что с его помощью девайс может отображать информацию о положении сторон света. Как пример, если есть геомагнитный датчик, смартфон может обходиться без GPS-модуля, определяя местоположение объекта. Это один из главных датчиков современных смартфонов и прочих устройств.

Зачастую для того, чтобы повысить точность, в смартфон устанавливаются еще датчики, работающие по схожему принципу, но обладающие более простым набором функций. Безусловно, пользователь может при помощи магнитометра выполнять его прямые функции – использовать его как металлоискатель, отыскивать проводку в стенах здания или как компас. В мобильных маркетах необходимо для этого искать нужное программное обеспечение.

Датчик приближения. Предоставляет возможность идентификации объекта и вычисления расстояния до него. В него входит излучатель инфракрасных лучей и их приемное устройство. Если приемное устройство не получает сигнал, это означает, что предмет отсутствует, а когда излучение попадает в приемник, то это свидетельствует о том, что существует предмет, отразивший собою луч. Широкое применение он находит, к примеру, отключая подсветку дисплея, когда смартфон поднесен к уху в момент звонка. Некоторые более прогрессивные варианты могут считывать некоторые жесты и в дальнейшем отвечать на это определенным действием. Порой датчик приближения может использоваться в случаях, когда при закрытии чехла необходимо погасить дисплей.

Датчик света или же датчик освещенности. Благодаря ему устройство может определять уровень освещенности окружающей соежы. Это позволяет автоматически изменять яркость подсветки дисплея. Это достаточно удобная функция – не приходится постоянно изменять уровень яркости экрана вручную. В более дорогих моделях смартфонов порой используется прогрессивная и расширенная версия датчика, которому под силу анализировать уровень интенсивности главных цветов (RGB), чтобы в последующем настроить цвета на дисплее или корректировать баланс белого в процессе фотографирования.

Промежуточный вывод

Если смартфон обладает только акселерометром, это говорит о том, что модель относится к самой бюджетной категории и обладает возможностью поворота экрана. Безусловно, порой производитель не предоставляет всеобъемлющую информацию о датчиках, которые есть в наличии, поэтому следует прочесть некоторые обзоры, где детально анализируется вся «начинка» мобильного устройства.

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

Датчики, которые зачастую не встречаются в дешевых смартфонах

Датчик Hall. Позволяет улавливать и анализировать магнитные поля, но обладает весьма упрощенным механизмом работы. Реагирует на магнитное поле лишь в случае его усиления, а осевая напряженность не регистрируется. Будет удобен в случае, когда используются чехол SmartCover – дисплей гаснет в тот момент, когда улавливает приближение встроенного в чехол магнита. Стоит отметить, что если в числе поддерживаемых аксессуаров существует «умная обложка», то этот датчик в телефоне присутствует. Производитель не всегда могут указывать информацию о том, что сенсор встроен в устройство.

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

Термометр. Предназначен для того, чтобы с высокой точностью определять температуру в окружающей его среде.

Гигрометр (или датчик влажности). Определяет уровень влажности. Как и предыдущий датчик, был представлен впервые в модели Galaxy S4, но теперь используется во многих смартфонах и прочих устройствах.

Педометр (или шагомер). По одному лишь названию данного сенсора можно догадаться, для чего он используется. Благодаря ему определяется, сделал ли человек шаг. Это автономный датчик, который с высокой точностью идентифицирует шаги, разгружая от работы акселерометр.

Датчик, сканирующий отпечатки пальцев. Конечно, было бы логичнее рассказывать про этот сенсор в статьях, где рассказывается про то, каким образом обеспечивается надлежащий уровень безопасности мобильного устройства. Но данный сенсор по достоинству может называться одним из наиболее необходимых и важных датчиков в современных смартфонах. Он позволяет не только повысить уровень безопасности устройства, но и открывать конкретные приложения, а также подтверждать транзакции.

Датчик, сканирующий сетчатку глаза. Позволяет считать и проанализировать уникальность сетчатки глаза. В моментах, когда необходимо обеспечивать безопасность смартфону. На слуху сенсор уже довольно-таки давно, но пока реализован он в немногих смартфонах.

Датчик, анализирующий биение сердца. Изначально был встроен в модели Galaxy S5 и применялся с той целью, чтобы телефон смог стать окончательно личным помощником и тренером. Приложение под названием S-Health умело получать гораздо больше информации о человеке на всех этапах тренировок, и это позволяло предоставлять пользователю лучшие индивидуальные рекомендации.

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

Дозиметр. Позволяет получить и определить дозу или мощность ионизирующего излучения. Иначе говоря, при его использовании можно измерить фон радиоактивности.

Ряд вспомогательных датчиков смартфонов

Порой, для того, чтобы уровень точности был повышен, смартфоны обеспечиваются дополнительными сенсорами, которые обладают аналогичным, но более упрощенным набором функций.

  • Вспомогательный датчик, позволяющий осуществлять пространственную ориентацию.
  • Сенсор гравитации – указывает величину, а также направление силы тяжести.
  • Указывающий значение ускорения вдоль всех трех осей, при этом не обращая внимания на уровень силы тяжести.
  • Определяющий угол отклонения мобильного девайса в момент его вращения вокруг одной оси из трех.
  • Датчик, который может определять ряд заранее установленных движений, как, например, потряхивание.
  • Для определения жестов и движений.
  • Позволяющий отслеживать и идентифицировать лицо.
  • Датчик, который может получать лишь двойной клик по дисплею.
  • Отслеживающий поворот не всего гаджета, а только его дисплея.

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

Современный смартфон – это сложное высокотехнологичное вычислительное устройство, которое мощнее тысяч бортовых компьютеров, полвека назад запускавших «Аполлоны» на Луну. Датчиков на борту флагманских мобильников тоже установлено едва не больше, чем на борту этого самого «Аполлона». Каждый из них незаметно, но добросовестно выполняет свою работу. Чем же занимаются все эти датчики смартфона, и как они устроены – подробнее читайте далее.

Сенсор освещения в смартфоне расположен на передней панели, обычно возле разговорного динамика (бывают исключения). Конструкционно он представляет полупроводниковый сенсор, чувствительный к потоку фотонов. В зависимости от его интенсивности, сенсор осуществляет управление подсветкой дисплея, с целью более эффективно расходовать заряд аккумулятора. Также он может выполнять вспомогательную функцию для других задач, работая с датчиком приближения.

Датчик приближения

Это – оптический или ультразвуковой сенсор, определяющий, нет ли предметов перед экраном. Он посылает очень слабый световой или звуковой импульс, а если тот отразился – регистрирует отраженный сигнал. За счет этого осуществляется автоматическая блокировка экрана в режиме разговора или при перевороте смартфона дисплеем вниз. Традиционно сенсор приближения откалиброван таким образом, что регистрирует лишь 2 состояния: «посторонний предмет ближе N (обычно 5) сантиметров» и «посторонний предмет дальше N см».

Акселерометр

Этот сенсор смартфона расположен на плате и представляет собой миниатюрный электромеханический прибор, регистрирующий малейшие движения. В обязанности этого датчика входит переключение ориентации экрана смартфона при наклоне, управление в играх, регистрация особых жестов управления (вроде потряхивания или постукивания по корпусу), а также замер шагов (путем подсчета ритмических колебаний в процессе ходьбы).

Обычный двухосевой акселерометр в смартфоне

Бывают двухосевые и трехосевые акселерометры. Особенностью акселерометра является то, что в состоянии покоя - одна из осей всегда будет показывать значение в районе 9-10 м/с 2 (в трехосевом трехмерном акселерометре). Это связанно с тем, что сила тяжести Земли составляет в среднем 9,8 м/с 2 .

Гироскоп

Гироскоп отвечает за определение движения и ориентации смартфона в пространстве. Он тоже конструкционно представляет MEMS (микроэлектромеханическую схему), расположенную на системной плате. Сферы его применени пересекаются с таковыми у акселерометра. Основные отличия состоят в том, что гироскоп имеет заметно большую точность и измеряет движение не в м/с 2 , а радианах или градусах на секунду. За счет этого его можно использовать для отслеживания поворотов головы в VR-гарнитуре, а также более точно реализовать жестовое управление.

Гироскоп MEMS под микроскопом

Магнитометр и датчик Холла

Магнитометр измеряет величину магнитного поля окружающего мира. Он также проводит измерения в трехмерном пространстве (по трем осям декартовых координат - X, Y и Z). Основная функция магнитометра – более точное определение местоположения в ходе навигации. В этом режиме использования он выполняет функцию цифрового компаса. Благодаря тому, что одна из осей, которая расположена в плоскости с Северным полюсом Земли, регистрирует постоянно повышенный фон. Магнитометр помогает более точно определять, в какую сторону относительно севера движется смартфон.

Магнитометр смартфона

Часто магнитометр называют датчиком Холла, однако это не совсем тождественные понятия. Подробнее о датчике Холла мы писали в другой статье . Отличия состоят в том, что первый является более универсальным и чувствительным. Магнитометр способен производить замеры магнитного излучения, в то время как только регистрирует его наличие/отсутствие и уменьшение/усиление. В современных смартфонах отдельный датчик Холла обычно не ставят, так как универсальный магнитометр полностью покрывает его функциональность.

Одной из альтернативных функций магнитометра является поиск проводки в стенах. Проводник под напряжением генерирует слабое электромагнитное излучение, а чувствительность сенсора составляет единицы микротесла. Если водить смартфоном по стене, то в месте заложения кабеля магнитный фон будет повышенным.

Датчик гравитации

Измеряет силу притяжения нашей планеты в трехмерном пространстве. В состоянии покоя (когда смартфон лежит на столе), его показания должны совпадать с акселерометром: по одной из осей сила гравитации будет близка к 9,8 м/с 2 . Самостоятельно этот сенсор обычно не используется, но помогает работе других. В режиме навигации он определяет, в какой стороне земная поверхность, чтобы быстрее определить правильное положение смартфона. При использовании в VR за счет сенсора гравитации осуществляется правильное позиционирование картинки.

Датчик линейного ускорения в смартфоне

Принцип его работы практически идентичен акселерометру, единственное отличие кроется в инертности. То есть, показания этого сенсора не зависят ни от каких глобальных внешних факторов (вроде гравитации). Единственное, что он регистрирует – это скорость перемещений смартфона в пространстве относительно его прежнего положения.

Определять положение аппарата в пространстве датчик линейного ускорения не способен (нет привязки к внешним ориентирам), но это и не нужно (с данной задачей отлично справляются сенсор гравитации и акселерометр). Отсутствие привязки к внешним ориентирам позволяет поворачивать объекты на дисплее безотносительно этих ориентиров, например, в играх. Также данный сенсор, в совокупности с другими, повышает общую точность определения движений.

Датчик вращения

Он определяет направление и частоту вращения смартфона относительно одной из осей трехмерного пространства. Как и датчик ускорения, является независимым и не привязан к внешним ориентирам. Часто выполняется в составе одного модуля с сенсором линейного ускорения. Отдельно, как правило, не задействуется, но позволяет корректировать работу других сенсоров для повышения точности. Также помогает при управлении жестами, например, покрутив смартфон в кисти руки активируется камера.

Гироскоп MEMS в разрезе

Температурные датчики

Современный смартфон обильно напичкан цифровыми термометрами. Конструкционно они представляют собой термопару: резистор с двумя выводами, сопротивление между которыми меняется в зависимости от температуры. Так как он относительно примитивен, то может быть выполнен даже внутри полупроводникового чипа.

В каждом смартфоне обязательно имеется датчик температуры батареи. При ее перегреве он отключает зарядку или снижает силу тока на выходе, чтобы предотвратить закипание электролита, которое влечет возгорание или взрыв. Также распространены термометры внутри SoC (в количестве от пары штук – до десятка и более). Они измеряют температуры процессорных ядер, графического ускорителя, различных контроллеров. Иногда встречаются и датчики окружающей температуры, но они распространены слабо. Причина тому – низкая точность, так как тепло от внутренностей аппарата и рук пользователя искажает показания.

Датчик давления (барометр) в смартфоне

Барометр в смартфоне измеряет атмосферное давление (в мм ртутного столба, бар или паскалях). Он позволяет корректнее определять местоположение и высоту над уровнем моря, так как при подъеме давление снижается. Также он может использоваться в качестве альтиметра, замеряя высоту над уровнем моря, но точность оставляет желать лучшего, так как атмосферное давление меняется вместе с погодой. Еще меньше востребована функция корректировки прогноза погоды в метеорологических программах и виджетах.

Гигрометр

Гигрометр измеряет влажность воздуха. Его основное предназначение очевидно, но популярностью данный сенсор не пользуется. В теории с его помощью можно корректировать данные прогноза погоды. Зная показания, можно также управлять микроклиматом в помещении, включив увлажнитель или осушитель воздуха. Единственный из известных смартфонов с гигрометром – уже старенький Samsung Galaxy S4.

Пульсометр или датчик сердечного ритма в смартфонах

Пульсометр способен измерять частоту и ритм сердечных сокращений. В процессе занятий спортом он дает возможность наблюдать за работой сердца и корректировать нагрузки для повышения эффективности тренировок. Недостатком пульсометра является потребность в плотном контакте смартфона с частью тела, в которой кровеносные сосуды находятся близко к поверхности (например, пальцами), чтобы уловить малейшие пульсации. Из-за этого популярности в смартфонах он не приобрел, а вот в смарт-часах и фитнес трекерах встречается повсеместно.

Многие удобные и даже необходимые функции смартфона были бы невозможны без специальных датчиков (сенсоров). Управление жестами, автоматическое изменение яркости, изменение ориентации экрана при повороте и его отключение при разговоре, контроль в игре без нажатий - это далеко не полный перечень возможностей. Также наличие некоторых датчиков может превратить смартфон в метеостанцию или быть очень полезным при занятии спортом, слежении за физическим состоянием.

Наличие датчиков в смартфонах и не только было бы не невозможно без развития микроэлектромеханических систем (МЭМС). Такие устройства соединяют в себе электрические и механические компоненты в микроисполнении. Размеры таких элементов не превышают 100 микрометров.

Готовые устройства МЭМС

Основным материалом для создания МЭМС служат кремний и полимеры. По данной технологии создаются все известные сенсоры, которые необходимо использовать в компактных устройствах, например, смартфонах. Совершенствование в технологическом плане смартфонов дало большой толчок для развития МЭМС. Давайте рассмотрим примеры таких датчиков.

Акселерометр - слово, соединяющее в себе два языка: акселеро - с латыни "ускоряю", метр - с греческого "измеряю". Такой датчик замеряет линейное ускорение движущегося тела по трем осям координат. Данные измерений собираются и обрабатываются посредством SoC или специально выделенного микроконтроллера. Далее, производится математический расчёт и фиксируется положения смартфона в пространстве в реальном времени.

Акселерометр внутри смартфона

Именно акселерометр позволяет менять ориентацию экрана с портретной на ландшафтную и наоборот в зависимости от положения устройства, переключать музыкальные треки при встряхивании, гонять автомобильные симуляторы, используя в качестве руля смартфон или планшет. Акселерометр является одним из самых популярных датчиков в смартфоне, и если раньше это была диковинка и прерогатива дорогих телефонов, то на сегодня таким сенсором может похвастаться любое бюджетное решение.

Гироскоп - состоит из двух древнегреческих слов «круг» и «смотрю». Как правило, работает в паре с акселерометром, дополняет его в некоторых случаях. Гироскоп необходим для фиксации углов наклона устройства. Делает это он с помощью измерения скорости углового вращения.

Также как акселерометр, гироскоп передает результаты замеров в устройство для дальнейших расчетов угла наклона и его направления. Погрешность откалиброванного гироскопа составляет не более 1-2 градусов. Широко применяется в мобильных играх, приложениях для фотосъемки, для оптической стабилизации в камерах, летающих дронах, управляемых смартфоном. Также как и акселерометр, гироскоп является очень популярным датчиком и присутствует во многих смартфонах.

Магнитометр - сенсор для измерения магнитного поля. По сути он собой представляет выполненный по технологии МЭМС миниатюрный датчик на основе эффекта Холла. Он регистрирует изменения силы магнитного поля по трем осям X, Y и Z. В этом случае он используется для навигационных и разных картографических приложениях, для повышения точности определения местоположения. Также без этого датчика не будет работать цифровой компас в смартфоне. Магнитометр иногда размещают в одном модуле с акселерометром, и они работают в паре, дополняя друг друга. Еще датчик Холла просто фиксирует изменения магнитного поля, без привязки к осям. Такие свойства используются в паре со специальными чехлами, в которые встроены магниты. При открытии крышки такого чехла экран смартфона автоматически включится и наоборот.

Датчик приближённости. Позволяет отключать экран телефона при разговоре. Такая функция позволяет экономить заряд устройства, а также предотвращает случайные нажатия. Работает такой датчик на основе IR детектора. Он обычно находится возле разговорного динамика и с помощью инфракрасного луча фиксирует нашу часть лица в непосредственной близости к телефону. На основе этого датчика реализуются еще одна интересная фича - распознавание жестов. Они позволяют управлять некоторыми функциями смартфоном не прикасаясь к экрану.

Датчик света - измеряет, насколько яркое освещение вокруг смартфона. На основании его данных ОС повышает или понижает яркость экрана. Экономя энергию смартфона и позволяя более комфортно пользоваться им. Продвинутые датчики могут анализировать составляющую RGB цвета и в соответствии с этим подстраивать цвета дисплея.

Описанные выше сенсоры характерны для соверменных смартфонов. Но ведь есть и редкие экземпляры:

Барометр - датчик для измерения атмосферного давления. Может использоваться в некоторых приложениях (навигационных, измерительных) для определения высоты над уровнем моря. Делает это он, высчитывая разницу атмосферного давления. Также повышает точность и скорость работы систем GPS. Например, фиксируя постоянно высоту объекта относительно уровня моря, можно отследить его перемещения не только в горизонтальной плоскости, но и в вертикальной.

Температурный датчик - как вы уже догадались, этот сенсор измеряет температуру. Бывают двух видов:

  1. Внутренний - для измерения температуры модулей смартфона, нужен для контроля над нагревом и предотвращения перегрева компонентов. Присутствует во многих устройствах.
  2. Внешний - для измерения температуры окружающей среды. Может использоваться в качестве обычного термометра и для разнообразных фитнес-приложений. И этот датчик скорее редкость, чем заурядность.

Датчик влажности воздуха - в паре с предыдущими двумя может выполнять функции продвинутой метеостанции. Поможет вам узнать, не пересушиваете ли вы воздух в квартире и насколько комфортная погода на улице (соотношение температуры и влажности).

Педометр - считает количество пройденных шагов и полезен для отслеживания активности. Главное, чтобы смартфон был всегда при вас.

Пульсометр - по запросу измеряет частоту сердцебиения. Как по мне, намного удобнее использовать этот датчик и шагомер во всевозможных фитнес-браслетах.

Сканер отпечатков пальцев - биометрический датчик, призван повысит безопасность устройства. Подробнее о них вы можете прочитать в одной из наших .

Наличие всех перечисленных выше датчиков является своеобразной фишкой смартфонов Samsung линейки Galaxy (начиная с S4).

И совсем уж диковинкой выглядит дозиметр - датчик измерения радиации. Им оснастила свой телефон компания Sharp, а причиной такого шага стала авария на атомной электростанции в Японии.

Проверить наличие и работоспособность того или инного датчика в вашем смартфоне можно с помощью специального программного обеспечения, например - AnTuTu Tester, Z - Device Test, Android Sensor Box и т.д.

Как мы убедились, в нашем смартфоне может быть много разнообразных датчиков и его работа уже практически невозможна без них. А ведь к этому списку можно добавить еще камеру со светочувствительным сенсором, микрофон - регистрация звука, тач - реакция на касание. В будущем же смартфоны могут обладать обонянием, улавливая, например, чадный газ, смогут диагностировать сердечные и другие заболевания и многое другое.

А как вы думаете, какие датчики реально полезны и востребованы в современном смартфоне?