Комментарии 50
CO2e allows other greenhouse gas emissions to be expressed in terms of CO2 based on their relative global warming potential (GWP).
CO2 has a GWP of 1, methane has a GWP of approximately 25 (on a 100 year time horizon). In other words, for every 1 tonne of methane (CH4) emitted, an equivalent of 25 tonnes of CO2 would be emitted.
Я экспериментировал. Открываешь окно в комнате — показывает 400 ppm (минимум), закрываешь — через час 4000-5000 ppm. Дышалось при этом вполне нормально. Максимум шкалы в районе 8100 ppm также достигался без особых проблем. Какое отношение эти попугаи (eCO2) имеют к концентрации углекислого газа, я не понял.
Если очень хочется стрелочные часы, может стоит сделать вывод на подложку реальных стрелочных часов?
Сейчас вы смотрите на экран через объектив камеры с расстояния 3-10 см. Если смотреть человеческим глазом с расстояния 0,3...0,5м, то угловатость сглаживается, а цифры на таком экране еще можно прочитать.
Под другой экран — будут другие часы, другая графика символов и остальное. Конечно, выводить информацию в таком виде на дисплей планшета — это дикость!
На этом цветном экране 1,44 можно задать столько же цветов, как и на мониторе вашего компа: (0xzуzуzуzу), zу — числа в шестнадцатиричном формате.
Повторюсь, снимки в статье сделаны с очень маленького расстояния.
Нестандартное решение позволяет вначале запустить ESP8266, а затем использовать это же вывод как цифровой для приема информации с датчика DHT22.
а зачем так сложно? не проще ли поменять gpio15 и gpio16 местами и gpio15 притянуть резистором на землю?
Т.е. cs экрана дергать через gpio15, а с датчиком общаться по gpio16.
Тогда и транзистор не нужен будет.
В этом случае, возможно, — да, но я смотрю на задачу под углом использования экрана в термостате и возможного увеличения количества датчиков в будущем.
И не стоит забывать, что только отдельные цифровые выводы ESP8266 работают в режиме прерываний или поддерживают протокол I2C.
I2c у 8266 софтварный, так что любой пин.
Прерывания вроде все кроме gpio16. Так что если нужны прерывания для датчика можно поменять местами 12-15, уж для дрыгания ресетом экрана точно прерываний не надо :)
Прерывания вроде все кроме gpio16. Так что если нужны прерывания для датчика можно поменять местами 12-15, уж для дрыгания ресетом экрана точно прерываний не надо :)»
О том, что в режиме прерываний работают все пины, кроме gpio16 — не знал. Спасибо!
Когда подключал библиотеку RCSwitch.h (передатчик, режим прерываний) — там речь шла только о двух пинах, работающих в режиме прерываний с этой библиотекой. К сожалению, страница с этой информацией уже не открывается.
Протокол I2c со всеми датчиками и экраном я с трудом запустил на «родных» выводах, используя «заплатки».
Впрочем, возможно ваш подход — правильный. Набросайте схему подключений ESP8266+цветной экран SPI+dht22+mh-z19+передатчик 433МГц + датчик угарного газа на ваш выбор. Заранее приношу извинения, если схема заработает.
...ESP8266+цветной экран SPI+dht22+mh-z19+передатчик 433МГц + датчик угарного газа ..
Есть похожая схема часов, но для передачи использую nrf24l01 и esp используется только как чип работы с Инетом (управление и получение погоды)
RC-цепь — стандартная цепь сброса при подаче питания (низким или высоким уровнем в зависимости от того какой дисплей);
Аналоговая часть для MQ-7 — возможно просто резисторный делитель;
Ключ — тоже вроде в некоторые MQ-7 уже встроен.
а зачем так сложно? не проще ли поменять gpio15 и gpio16 местами и gpio15 притянуть резистором на землю?
Т.е. cs экрана дергать через gpio15, а с датчиком общаться по gpio16.
Тогда и транзистор не нужен будет.
У вас конфликт: сначала вы предлагаете притянуть gpio15, к которому подключаете вывод CS экрана, к «земле», а потом «дергать» CS, получается, «землю».
В целом, это попытка перевести управление экраном 1.44 SPI Adafruit с 4-х проводов на 3 (RESET — не в счет).
Цитирую из примера test к библиотеке TFT_ILI9163C.h (экран 1.44, 128х128 Adafruit):
/*
Teensy3.x and Arduino's
You are using 4 wire SPI here, so:
MOSI: 11//Teensy3.x/Arduino UNO (for MEGA/DUE refere to arduino site)
MISO: 12//Teensy3.x/Arduino UNO (for MEGA/DUE refere to arduino site)
SCK: 13//Teensy3.x/Arduino UNO (for MEGA/DUE refere to arduino site)
the rest of pin below:
*/
#define __CS 10
#define __DC 9
/*
Teensy 3.x can use: 2,6,9,10,15,20,21,22,23
Arduino's 8 bit: any
DUE: check arduino site
If you do not use reset, tie it to +3V3
*/
Я доверяю разработчику библиотеки. Хотя, поверьте, мне бы очень хотелось ошибаться.
Популярно о 1.44″TFT можно посмотреть тут.
У вас конфликт: сначала вы предлагаете притянуть gpio15, к которому подключаете вывод CS экрана, к «земле», а потом «дергать» CS, получается, «землю».
Притяните gpio15 это имелось ввиду через резистор на землю. К слову в nodemcu он уже впаян на плату:
https://github.com/nodemcu/nodemcu-devkit/blob/master/Documents/NODEMCU_DEVKIT_SCH.png
В целом, это попытка перевести управление экраном 1.44 SPI Adafruit с 4-х проводов на 3 (RESET — не в счет).
Цитирую из примера test к библиотеке TFT_ILI9163C.h (экран 1.44, 128х128 Adafruit)…
гляньте схему включения m5stack там для управления экраном (тем же IL9341) используются:
1) mosi
2) sck
3) r/s
эти три обязательные. и вспомогательные:
4) cs — для выбора экрана, так как на этих же пинах висит sd карточка (у вас ее нет поэтому пин можно исключить);
5) reset — тут я думаю идея понятна — сбрасывать по питанию, тем более что в работе пин практически не используется.
Итого — трех пинов для работы с экраном должно хватать. И да, для этого надо немного допилить библиотеку.
Итого — трех пинов для работы с экраном должно хватать.
Очень обнадеживающе! Спасибо!
И да, для этого надо немного допилить библиотеку.
Как это сделать? Возможно в нете кто-то проделал эту работу? Подскажите!
Как это сделать? Возможно в нете кто-то проделал эту работу? Подскажите!
в RTOS SDK есть пример, для другого экрана, но суть та же:
github.com/espressif/ESP8266_RTOS_SDK/tree/master/examples/peripherals/spi_oled
Допиливается выкидыванием функции oled_rst() и дефайна OLED_RST_GPIO из пары мест.
С SPI на 8266 не работал. Но по документации, esp8266 позволяет SPI экран привесить всего на две ноги…
Аппаратный SPI с встроенным арбитром, для экономии пинов — самое то!
Вешаем экран параллельно SPI флэшке (благо на nodemcu эти ноги выведены), GPIO0 — заводим на CS, остается только A0 привесить на любой свободный пин. Итого — два пина на экран + программная разгрузка — т.е. ноги шевелятся аппаратно.
не забудьте подправить встроенный драйвер I2C
Подскажите, а зачем эта «заплатка»?
Кликните на слово тут в «Инструкции — тут.», спросите у автора доработки. Мне «заплатка» помогла.
Но, я от вас и хотел услышать, с какими проблемами столкнулись, что потребовался патч.
Использую «коробочную» реализацию I2C (на шине: DS3231, BME280, PCF8574, ADS1115), и пока не сталкивался с проблемами. Аптайм более года, и было несколько апдейтов с пересборкой на разных версиях SDK.
он в качестве экрана использовал планшет в рамке с 3D печатью
Да нет же, нету никакого планшета.
Обычный 7" дисплей, подключен к Arduino Mega, через адаптер. Для связи с внешним миром использован nRF24, вставленный в туже Мегу через самопальный адаптер. Все это долго время пребывало в голом виде, и только в ноябре прошлого года я заказал изготовить корпус на 3Д принтере. Получилось вполне пристойно. Если интересно, могу выложить фото снаружи и внутри.
Это ваш комментарий — habr.com/ru/post/440978/#comment_19780298?!
Удивил поход — дисплей в качестве экрана устройства, детали не важны.
Я теряюсь с ответом на ваш вопрос. Предлагаете, сидя на кухне, разработать самому все то, что можно купить на AliExpress'e?
Утонченная у вас реклама. Успехов в продвижении продукта.
Еще раз — успехов!
Функция sendToBlynk() отравляет данные на сервер Blynk'а. Как отправить данные на другой сервис? — у меня нет ответа. Извините.
Посмотрите mailer() — тут тоже отравляются данные наружу.
Субъективно монитор на пути от непростой игрушки немного приблизился к статусу профессиональной разработки. Тут под профессиональной разработкой подразумевается прибор, который можно тиражировать.
Соре за негатив, но разработки подобного уровня не дотягивают до звания «профессиональные». Их нельзя тиражировать, т.к. они не до конца продуманы и не имеют сборочного комплекта, т.е. платы, на которую можно монтировать компоненты (или готовая смонтированная, которую нужно собрать в корпус).
Удачи
Спасибо! Сделал.
«Соре за негатив, но разработки подобного уровня не дотягивают до звания «профессиональные». Их нельзя тиражировать, т.к. они не до конца продуманы и не имеют сборочного комплекта, т.е. платы, на которую можно монтировать компоненты (или готовая смонтированная, которую нужно собрать в корпус).»
Не отрицаю. Читаем выше: "… немного приблизился к статусу профессиональной разработки".
Я вожусь с датчиком DHT22 около двух лет (после того, как благополучно сжег дорогой BME280). У меня свой опыт:
Разница в показаниях влажности между DHT22 и метеостанцией **CROSS* не более 10%. Сейчас, когда набираю эти строки 52% и 49%.
Неадекватность проявилась только один раз: датчик на двое суток зашкалил на отметке 99%, скорее всего, после моих издевательств.
У датчика есть «плюс» — он рассчитывает индекс жары. Насколько этот «плюс» актуальный — посмотрим летом…
Я честно говоря не понимаю зачем вам измерять индекс жары в помещении (heat index — как я полагаю) параметр, имеющий значение при температурах намного выше тех что бывают в обитаемых помещениях. Например стандартный расчет который имеет какое либо значение для человека по Heat Index'у начинается от 27ми градусов. Я склонен думать что BME умеет отображать этот параметр. Как минимум его можно вывести математически зная температуру и влажность.
Глянул на алиэкспресс, на данный момент BME280 стоит дешевле DHT22. Так же не совсем уверен как вы могли его спалить на логике 3.3в на которой работает ESP8266, особенно если подключали по I2C. Впрочем самоделка ваша, вам и решать что на нее ставить. Я всего лишь написал что-бы поделиться опытом.
Да я и не замахиваюсь на улицу. Монитор качества воздуха — помещение заложено в названии.
«В обоих условиях DHT не жил больше 2х месяцев при эксплуатации на улице.»
Жаль, что в то время с интервалом два месяца вы только набирали статистику, меняя приборы с датчиком или сам датчик DHT22. Возможно задумайся раньше, у вас на сегодня была положительная (или другая) статистика по другому датчику, например, тому же ВМЕ280.
«Я честно говоря не понимаю зачем вам измерять индекс жары в помещении»
В северной стране Канада считают по-другому — там метеорологи публикуют этот индекс, в США тоже есть его аналог — индекс тепла. Что касается меня, то планы есть, но пока не буду их обнародовать, не проверив на практике.
«Я склонен думать что BME умеет отображать этот параметр.»
У меня тоже много догадок.
«Я всего лишь написал что-бы поделиться опытом.»
Спасибо!
Два в одном: программируемый по Wi-Fi монитор качества воздуха и стрелочные часы