После выпуска Particle Squared некоторые из вас задавались вопросом, зачем использовать CCS811 и Si7021?
Скажу вам, это было ненаучно.
Прежде всего, я использовал эти датчики в других проектах. Это упростило интеграцию и начало использования.
Но был ли это правильный выбор?
В этом посте я собираюсь сравнить эти детали, используя таблицы данных, разбивку по стоимости и доступность. (по состоянию на май 2019 г.) Кроме того, я буду запускать их бок о бок в решающей схватке с датчиками.
Давайте начнем.
BME680
Функции
BME680 — это датчик температуры, влажности, летучих органических соединений и давления. Это, безусловно, самое популярное устройство, которое я видел в одном корпусе.
Вы можете управлять им через I2C или SPI. Уменьшите его до 1,71 В или до 3,6 В.
Вот таблица наиболее важных параметров.
По сравнению с другими датчиками VOC, он не рассчитывает C02 или VOC. Скорее, он использует показания газового датчика для расчета IAQ (качества воздуха в помещении).
Эта шкала взята из рекомендаций Федерального агентства по охране окружающей среды Германии по ЛОС. (Согласно техпаспорту BME680)
Измерения датчика газа, в худшем случае, потребляют 18 мА от вашего источника питания. Все остальные измерения составляют ‹ 1 мА. Неплохо.
Стоимость/Наличие
Цена BME680 разумна, несмотря на встроенные функции. В большинстве случаев он превзойдет любую комбинацию датчиков по цене. Точно так же получилось с комбинацией CCS811/Si7021 в Particle Squared.
BME680 доступен у большинства дистрибьюторов. Это плюс, особенно когда нужны запчасти и нужны сейчас!
Интеграция
BME680 легко интегрируется. Моя самая большая претензия — добавление библиотеки, используемой для расчета IAQ. Эта библиотека также используется для расчета скомпенсированных показаний влажности и температуры. Я понимаю необходимость сохранения их ИС в безопасности, но какой ценой?
Это также проблематично для интеграции с помощью SDK для частиц. Это было возможно, но облачные обновления из Visual Code не работают.
Общий
Вот разбивка всех плюсов и минусов BME680:
Плюсы
- Четыре сенсора в одном — это большой плюс. Несмотря на высокую цену, он обеспечивает большую ценность по сравнению с другими датчиками в этом посте.
- Высокая доступность и производство известной сенсорной компании.
- Лучшее в своем классе энергопотребление. Если вы хотите встроить датчик в приложение с питанием от батареи, это ваш выбор.
- Лучший в своем классе диапазон рабочего напряжения (1,8–3,6 В)
Минусы
- Сложнее интегрировать в прошивку Particle. Если вы катите свой собственный, это тривиально.
- Статическая библиотека занимает больше памяти и места на флэш-памяти. Это может улучшить или сломать ваше приложение в зависимости от процессора.
- Измерения влажности и температуры кажутся менее точными. Может еще потребуется другой датчик температуры, влажности. (Что противоречит цели универсального устройства.)
Пока не уверен
- Это устройство более чувствительно, чем CCS811. О том, как это было на самом деле, смотрите в разделе Тестирование ниже.
Мой рейтинг?
Барабанная дробь пожалуйста...
⭐️⭐️⭐️⭐️
CCS811
Функции
Это устройство имеет встроенный MCU, который вычисляет показания eCO2 и VOC в вашем воздухе. Поэтому, когда они считываются с устройства, у вас есть что-то немедленное.
CCS811 можно калибровать по температуре и влажности. Вам нужно использовать внешний датчик, такой как Si7021, чтобы получить эти значения. (В противном случае для расчета TVOC и C02 используются средняя влажность и температура.)
Другим недостатком является отсутствие спецификаций по точности устройства. Являются ли показания лучшей оценкой? Они близки? Они далеко?
Не сильно отставая от BME680, CCS811 потребляет 26 мА во время измерения. В противном случае это ‹1 мА большую часть времени.
Стоимость/наличие
Важнейшим фактором выбора (или отказа от выбора) CCS811 является доступность.
Нет.
Я думаю, скоро в Digikey поступит еще один заказ. Если сравнивать с BME680, приведенная выше диаграмма должна вас побеспокоить.
Общий
Плюсы
- Безусловно, самая простая часть для интеграции. Существует множество библиотек с открытым исходным кодом, включая код, который я написал для Particle Squared.
- Вы можете обновить устройство через загрузчик I2C.
- AMS — отличная компания по производству датчиков. Я знаю, что они делают потрясающие продукты. Многие другие компании доверяют тому, что построила здесь AMS.
- Имеет более высокий диапазон рабочего напряжения (1,8–3,3 В)
Минусы
- Нет запаса. А если есть запасы, они быстро расходятся.
- Присяжные все еще не знают, насколько это точно. Я видел очень дикие показания C02, а также показания TVOC, которые не совпадают с показаниями других протестированных здесь датчиков.
Мой рейтинг?
⭐️⭐️⭐️
30 сингапурских долларов
Функции
SGP30 не слишком отличается от CCS811. Он обеспечивает показания TVOC и C02.
SGP30 больше всего ограничен диапазоном рабочего напряжения 1,68 и 1,98 В. Для этого требуется отдельный источник питания и биты сдвига уровня для интеграции.
Вдобавок ко всему, он потребляет почти в два раза больше тока, чем CCS811. 😬
В отличие от CCS811 они обеспечивают точность 15%. Делай что хочешь с этим номером.
Стоимость/наличие
Стоимость этой детали примерно такая же, как у CCS811.
Да, запасов больше! (Когда вы получаете более 100 штук, все они равны примерно одинаковому значению.)
Общий
Плюсы
- С точки зрения прошивки это почти так же просто, как CCS811.
- Судя по тестовым данным, этот чип намного более чувствителен, чем CCS811. Если вы находитесь в среде, где вам нужно знать, это то, что вам нужно.
- Это устройство широко доступно по многим каналам.
Минусы
- Требуется дополнительное оборудование для запуска этого устройства. Вам понадобится регулятор и некоторый сдвиг уровня, который добавит еще 0,5 доллара в небольших объемах.
- Требуются дополнительные операции с плавающей запятой для получения абсолютной влажности. (для компенсации влажности) Это не конец света, но если у вас есть процесс без FPU, у вас могут возникнуть проблемы.
- Вычисление Maxim CRC8 делает его немного проблематичным, если вы не обернулись вокруг него.
Пока не уверен..
- Это устройство более чувствительно, чем CCS811. Я не могу сказать, хорошо это или плохо, на данный момент с ограниченным тестированием, которое я провел.
- Это устройство не оптимизировано по энергопотреблению. Sensirion имеет оптимизированную по энергопотреблению деталь под названием SGPC3–2.5K (непроверенная).
Мой рейтинг?
⭐️⭐️⭐️⭐️
Тестирование
Чтобы получить наилучшие результаты тестирования, я использовал несколько коммутационных плат со всеми отдельными датчиками. Затем я собрал их на большую макетную плату по сравнению с моим первым уроком.
Я создал ветку в репозитории прошивки под названием tvoc_test
. Это все с открытым исходным кодом, и вы можете получить его здесь.
Результаты
ТВОС
На этой диаграмме видно, что датчики в основном коррелируют друг с другом. Оказалось, что BME680 и SGP30 коррелируют больше всего. SGP30 является наиболее чувствительным.
Влажность
Вот все возможные показания влажности из моей установки. Наиболее близким к реальным комнатным условиям оказался Si7021. Даже с компенсированными значениями BME680 не был так близок.
Температура
Точно так же температура Si7021 больше соответствовала реальным комнатным условиям. BME680 был слишком высоким.
C02
SGP30 и CCS811, казалось, хорошо коррелировали (по большей части). Нет никакого способа сказать, что было более точным. (Наличие 3 сенсоров поможет приблизиться к консенсусу)
Вывод
Это жребий.
Все эти датчики показали себя хорошо. Наличие CCS811 разочаровало. Трудно разрабатывать какие-либо продукты и полагаться на этот датчик, когда они недоступны.
Выбор BME680 дает множество преимуществ. Если у вас есть вычислительная мощность, требуется малое энергопотребление и несколько датчиков, BME680 — ваш лучший выбор.
Что касается чего-то вроде Particle Squared, я могу заменить его на SGP30. Предстоит еще больше тестов, но в большинстве случаев они кажутся сопоставимыми.
Почетные упоминания
Я выбрал эти детали, потому что их можно купить у большинства крупных дистрибьюторов. (Digikey, Mouser, Arrow) Кроме того, они примерно одинакового размера, технологии, которые они используют, похожи, если не одинаковы.
Вот некоторые почетные упоминания, которые не попали в список, на которые, возможно, стоит обратить внимание:
Есть и другие варианты. У IDT есть датчик, но они немного откровенничают, когда делятся своим кодом. Может быть в следующий раз?
По тем же причинам, вот некоторые другие датчики, которые не были реализованы из-за их форм-фактора и способности источника. (по крайней мере из США)
Специальная благодарность
FotoFeiber на моем форуме датчиков. Мы постоянно обсуждали, какие датчики лучше и почему. FotoFeiber был частью вдохновения для этого поста. Так что спасибо тебе! :)
Если вы еще этого не сделали, ознакомьтесь с моим постом о том, как создать самодельный датчик качества воздуха. Есть аппаратное обеспечение и код, чтобы вы начали в правильном направлении.
Источник
Все драйверы и исходники для этого проекта можно найти в ветке tvoc_test
. Вы можете пойти сюда, чтобы получить его.
Первоначально опубликовано на https://www.jaredwolff.com 5 мая 2019 г.