Оглавление:
Видео: TinyLiDAR для Интернета вещей: 3 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Если вы посмотрите вокруг, вы заметите, что в повседневной жизни используется множество маленьких умных устройств. Обычно они питаются от батареи и обычно каким-то образом подключены к Интернету (также известному как «облако»). Все это то, что мы называем устройствами Интернета вещей, и сегодня они быстро становятся обычным явлением в мире.
Системные инженеры Интернета вещей прилагают много усилий для оптимизации энергопотребления. Причина этого, конечно же, в ограниченной емкости батарей. Замена батарей в больших количествах в отдаленных районах может оказаться очень дорогостоящим делом.
Итак, это руководство посвящено оптимизации мощности tinyLiDAR.
TL; сводка DR
У нас есть новый режим измерения «в реальном времени» (начиная с прошивки 1.4.0), чтобы помочь максимально увеличить время работы от батареи в устройствах IoT.
Как выжимать больше сока из батарей
Интуитивно мы можем увеличить время выполнения, просто снизив энергопотребление IoT-устройств. Ладно, это очевидно! Но как сделать это эффективно и правильно рассчитать ожидаемое время выполнения? Давайте разберемся…
Шаг 1: чистая энергия
Есть много способов сделать это, но мы предпочитаем разбить это на основы и преобразовать все в энергию. Электрическая энергия измеряется в Джоулях (символ J) и по определению:
Джоуль - это энергия, рассеиваемая в виде тепла, когда электрический ток в один ампер проходит через сопротивление в один Ом в течение одной секунды.
Поскольку энергия (E) - это также напряжение (В) x заряд (Q), мы имеем:
E = V x Q
Q - ток (I) x время (T):
Q = I x T
Таким образом, энергия в Джоулях может быть выражена как:
E = V x I x T
где V - напряжение, I - ток в амперах, а T - время в секундах.
Предположим, у нас есть батарейный блок, состоящий из четырех последовательно соединенных щелочных батарей AA (LR6). Это даст нам общее пусковое напряжение 4 * 1,5 В = 6 В. Конец срока службы щелочной батареи AA составляет около 1,0 В, поэтому среднее напряжение будет около 1,25 В. Согласно техническому паспорту производителя, «Поставляемая мощность зависит от приложенной нагрузки, рабочей температуры и напряжения отключения». Таким образом, мы можем предположить, что около 2000 мАч или лучше для приложения с низким энергопотреблением, такого как устройство IoT.
Таким образом, мы можем подсчитать, что у нас есть 4 элемента x 1,25 В на элемент x 2000 мАч * 3600 сек = 36000 Дж энергии, доступной от этого аккумуляторного блока, прежде чем его нужно будет заменить.
Для упрощения расчетов мы также можем предположить, что эффективность преобразования для нашего системного регулятора составляет 100%, и игнорировать энергопотребление хост-контроллера.
Несколько слов о велоспорте
Нет, не из тех, на которых ты катаешься! Существует несколько технических концепций, известных как «Power Cycling» и «Sleep Cycling». Оба могут использоваться для снижения энергопотребления, но между ними есть разница. Первый включает в себя выключение вашего устройства до тех пор, пока оно не понадобится, а затем включение его только на короткое время для выполнения измерения и т. Д. нетривиальное количество времени для резервной загрузки и сжигания энергии при этом.
Вторая концепция заключается в том, чтобы просто держать устройство в спящем режиме в надежде, что оно проснется быстрее, но вы сожжете некоторое конечное количество тока, пока оно спит. Итак, что лучше использовать?
Это зависит от того, как часто вам нужно просыпаться.
Шаг 2: Запустите числа
Мы хотим найти полную энергию (E), нормированную на 1 секунду, для каждого сценария, указанного ниже.
Случай A: Tc = 1 сек; выполнять измерение расстояния каждую секунду. Случай B: Tc = 60 с; измеряйте расстояние каждую минуту. Случай C: Tc = 3600 с; Измеряйте расстояние каждый час.
Чтобы сделать это, мы можем сказать, что Tc - это время цикла для наших измерений, тонну активное время и время неактивного, и изменить наши формулы энергии, как показано здесь:
Для tinyLiDAR время запуска составляет около 300 мс или меньше, и в течение этого времени потребуется в среднем 12,25 мА при работе от регулируемого источника питания 2,8 В. Следовательно, он будет потреблять приблизительно 10,3 мДж энергии при каждом запуске.
Ток сна / покоя для tinyLiDAR - сверхнизкий 3 мкА. Это намного ниже, чем ежемесячная скорость саморазряда щелочных батарей в 0,3%, поэтому мы будем исследовать здесь только метод «циклического сна».
Почему бы не обойтись без микро и сразу перейти к датчику VL53?
Ответ на этот вопрос не так очевиден. На заре разработки смартфонов мы узнали, что поддержание энергоемкого высокоскоростного процессора для воспроизведения mp3-файлов было верным способом сократить время автономной работы. Уже тогда мы прилагали все усилия, чтобы использовать «прикладные процессоры» с низким энергопотреблением для периферийных задач, таких как воспроизведение музыки. Сегодня это не сильно отличается, и на самом деле, можно сказать, это даже более важно, поскольку мы миниатюризируем все эти устройства IoT с каждым уменьшением емкости аккумулятора. Таким образом, использование прикладного процессора со сверхнизким энергопотреблением для единственной задачи управления датчиком VL53 и предоставления данных, готовых для дальнейшей обработки, является несомненным преимуществом для любого приложения с батарейным питанием.
TinyLiDAR Режимы измерения
В настоящее время это может быть неясно в руководстве пользователя [но будет в какой-то момент, поскольку мы постоянно обновляем наше руководство пользователя:)] - на самом деле в tinyLiDAR есть 3 различных режима измерения.
Режим MC
С момента создания tinyLiDAR мы были одержимы попытками получить более быстрые измерения с помощью датчика VL53 ToF. Поэтому мы оптимизировали нашу прошивку, чтобы получать от нее самую быструю и согласованную потоковую передачу данных. Это включало введение буферизации. Небольшая буферизация - это хорошо, поскольку она позволяет хост-контроллеру (например, Arduino) мгновенно получать данные измерений и переходить к более важным вещам. Поэтому буферизация абсолютно необходима, и благодаря этому мы можем достичь скорости потоковой передачи, превышающей 900 Гц, даже на относительно медленной Arduino UNO. Следовательно, самое быстрое время отклика будет при использовании tinyLiDAR MC или «непрерывном» режиме.
Кстати, если у вас когда-нибудь будет возможность, вы должны подключить последовательный кабель к выходному контакту TTY на tinyLiDAR, и вы увидите, что делает этот режим MC. Он буквально выполняет измерения настолько быстро, насколько это возможно, и при этом заполняет свой буфер I2C самыми последними данными. К сожалению, поскольку он работает на полной скорости, он также сжигает максимальное количество энергии. Ниже приведен график зависимости тока от времени для этого режима MC.
SS режим
Следующий режим - это то, что мы называем «SS» для «пошагового» режима. По сути, это тот же режим высокой производительности, что и выше, но вместо этого в одном пошаговом цикле. Таким образом, вы можете получать быстрые ответы от tinyLiDAR, но данные будут из предыдущего примера, поэтому вам придется провести два измерения, чтобы получить самые последние данные. Ниже приведен график зависимости тока от времени для этого режима SS.
Оба вышеперечисленных режима хорошо подходят для большинства пользователей, поскольку они были быстрыми и простыми в использовании - просто введите команду «D» и прочтите результаты. Тем не мение …
Двигаясь вперед в мир Интернета вещей, где на счету каждый миллиджоуль, у нас есть новая парадигма.
И это полная противоположность тому, что мы закодировали в tinyLiDAR! В мире Интернета вещей нам нужны единичные измерения через нечастые промежутки времени, чтобы сэкономить электроэнергию и продлить время работы.
Режим RT
К счастью, теперь мы можем сказать, что у нас есть решение для этого сценария, начиная с прошивки 1.4.0. Он называется режимом «RT» для измерений «в реальном времени». И он в основном реализует метод триггера, ожидания и чтения. Чтобы использовать его, вы все равно можете просто ввести команду «D», чтобы начать измерение, но для этого режима RT вы должны подождать соответствующее время для завершения измерения, а затем прочитать результаты. tinyLiDAR автоматически переходит в самое низкое состояние покоя менее 3 мкА между отсчетами. На самом деле он по-прежнему прост в использовании и еще более энергоэффективен, поскольку вам нужно выполнить только одно измерение вместо двух, чтобы получить самые последние данные, то есть нулевую буферизацию.
Ниже приведен график зависимости текущего режима от времени для этого нового режима RT.
Шаг 3: Фактические измерения
Использование непрерывного режима MC для нечастых измерений IoT не имеет смысла, поскольку нам нужны только единичные измерения. Следовательно, мы можем вместо этого сосредоточить наше внимание на режимах SS и RT. Работа tinyLiDAR от регулируемого источника питания +2,8 В обеспечивает минимальное рассеивание мощности. Таким образом, при использовании предустановок High Accuracy (200ms) мы измерили следующее потребление энергии на tinyLiDAR:
SS / пошаговый режим: 31,2 мДж, усредненное по 2 измерениям
RT / режим реального времени: 15,5 мДж, усредненное за 1 измерение
Вставив эти значения в нашу формулу энергии и нормализовав их до одной секунды, мы можем найти ожидаемое время работы, предполагая, что энергия от нашей аккумуляторной батареи составляет 36000 Дж.
Случай A: чтение каждую секунду (возьмите 2 показания для получения последних данных) Tc = 1secTon = 210 мс на показание x 2 показания Toff = Tc - Ton = 580msIon (avg) = 26,5 мА на показание Ioff (avg) = 3 мкА ток покоя Vcc = Напряжение питания 2,8 В Активная энергия, потребляемая нагрузкой в Джоулях, составляет Eon = Vcc x Ion x Ton = 2,8 В x 26,5 мА * 420 мс = 31,164 мДж. Неактивная энергия, потребляемая нагрузкой в Джоулях, равна Eoff = Vcc x Ioff x Toff = 2,8 В x 3 мкА. x 580 мс = 4,872 мкДж Нормализация к TcE = (Eon + Eoff) / Tc = (31,164 мДж + 4,872 мкДж) / 1 = 31,169 мДж или 31,2 мДж в секунду Время работы в секундах - это общая потребляемая энергия источника / энергии, которая составляет 36000Дж. / 31,2 мДж = 1155000 секунд = 320 часов = 13,3 дня
Повторяя эти вычисления, мы можем найти время выполнения для других сценариев:
SS режим
Случай A: 2 чтения в секунду. Нормализованная энергия 31,2 мДж. Следовательно, время выполнения составляет 13,3 дня.
Случай B: 2 показания в минуту. Нормализованная энергия 528 мкДж. Следовательно, время работы составляет 2,1 года.
Случай C: 2 чтения в час. Нормализованная энергия 17 мкДж. Расчетное время работы составляет >> 10 лет, поэтому загрузка из-за tinyLiDAR незначительна. Таким образом, аккумуляторный блок будет ограничен только сроком хранения (т.е. примерно 5 лет).
Режим RT
Случай A: 1 чтение в секунду. Нормализованная энергия 15,5 мДж. Следовательно, время выполнения составляет 26,8 дня.
Случай B: 1 чтение в минуту. Нормализованная энергия 267 мкДж. Следовательно, время работы составляет 4,3 года.
Случай C: 1 чтение в час. Нормализованная энергия составляет 12,7 мкДж. Расчетное время работы составляет >> 10 лет, поэтому загрузка из-за tinyLiDAR незначительна. Таким образом, аккумуляторная батарея будет ограничена только сроком хранения (т.е. примерно 5 лет).
Следовательно, новый режим реального времени, использующий циклический спящий режим, является преимуществом, позволяющим продлить время работы до 4 лет, если проводить одно измерение каждую минуту, как показано в случае B.
Обратите внимание, что потребление энергии хост-контроллером не принималось во внимание при этом анализе, а характеристики аккумуляторной батареи были консервативными. Вы можете найти гораздо более мощные батареи, которые соответствуют вашим потребностям.
Спасибо за чтение и следите за обновлениями, так как мы предоставим рабочий пример Интернета вещей с использованием tinyLiDAR для нашего следующего руководства. Ваше здоровье!
Рекомендуемые:
Самый простой измеритель температуры и влажности для Интернета вещей: 5 шагов (с изображениями)
Самый простой измеритель температуры и влажности IoT: Простейший измеритель температуры и влажности IoT позволяет вам измерять температуру, влажность и индекс тепла. Затем отправьте их в Adafruit IO
Создание внутреннего датчика качества воздуха для Интернета вещей без облака: 10 шагов
Создание внутреннего датчика качества воздуха для Интернета вещей Облако не требуется: качество воздуха в помещении или на улице зависит от многих источников загрязнения, а также от погоды. Это устройство фиксирует некоторые общие и некоторые из наиболее интересных параметров с помощью двух сенсорных чипов. Температура Влажность Давление Органический газ Микро
MQmax 0.7 - недорогая платформа для Интернета вещей WiFi на базе Esp8266 и Arduino Mini Pro: 6 шагов
MQmax 0.7 - недорогая платформа для Интернета вещей WiFi на базе Esp8266 и Arduino Mini Pro: Здравствуйте, это моя вторая инструкция (с этого момента я перестану считать). Я сделал это, чтобы создать простую (по крайней мере для меня), дешевую, легкую в изготовлении и эффективную платформу для реальных приложений IoT, которые включают работу M2M. Эта платформа работает с esp8266 и
Основы Интернета вещей: подключение Интернета вещей к облаку с помощью ОС Mongoose: 5 шагов
Основы IoT: подключение вашего IoT к облаку с помощью Mongoose OS: если вы человек, который занимается мастерингом и электроникой, чаще всего вы встретите термин Интернет вещей, обычно сокращенно IoT, и что он относится к набору устройств, которые могут подключаться к Интернету! Быть таким человеком
Недорогое регулируемое крепление для солнечной панели для проекта Интернета вещей: 4 шага
Недорогое регулируемое крепление для солнечной панели для проекта IoT: если у вас есть проекты в области электроники или Интернета вещей, работающие с небольшой солнечной панелью, вам может быть сложно найти недорогие и легко регулируемые крепления, чтобы удерживать панель в правильной ориентации. В этом проекте я покажу вам простой способ создать комп