Выполнить код при выключении питания?

Arduino новичок здесь.

Я подумываю о создании переключателя света на Arduino для управления световой системой Philips Hue в моей гостиной. У меня есть стандартные настенные выключатели для освещения потолочных светильников, и я в основном хочу, чтобы все лампы Hue, которые были разбросаны по комнате, были включены, когда переключатель включен, и выключите, когда переключатель выключен, так что мне не обязательно нужно приложение или пульт Hue, чтобы включить свет в комнате.

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

Я бы сконфигурировал его как пульт дистанционного управления Hue, например. с ArduinoHue ; если все работает хорошо, это будет контролировать лампы Hue непосредственно через ZigBee или через WiFi через мост - в обоих случаях без необходимости использовать дополнительную проводку.

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

Итак, вот мой вопрос: Могу ли я выполнить код в случае потери мощности Arduino, т. е. выключить свет Hue с его последней энергией перед отключением? Возможно, есть какая-то аппаратная конфигурация, которая позволила бы мне обнаружить событие отключения питания и сохранить достаточную энергию через батарею или конденсаторы, чтобы все еще запускать код?

Я никогда раньше не работал с Arduino, но у меня есть несколько коллег, которые могут помочь мне, когда есть проблемы.

2 голоса | спросил Jan 8 PMpWed, 08 Apr 2015 18:40:34 +030040Wednesday 2015, 18:40:34

3 ответа


2

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

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

Однако, поскольку Оттенки [/strong> контролируются Zigbee, с обеспечением iOS и Android-управления, вы должны иметь возможность напрямую управлять ими через Zigbee без какого-либо подключения к их проводке.


Управление оттенком

Спецификации Hue

ответил Russell McMahon 8 PMpWed, 08 Apr 2015 20:22:23 +030022Wednesday 2015, 20:22:23
2

Для части конденсатора два суперкассатора Фарада последовательно (каждый 2,7 вольт макс.) стоят около доллара, и есть один 10 шаров Фарада за два доллара каждый. Я думаю, что один из этих вариантов будет работать. И суперкапы должны длиться очень долго. Я не инженер по электротехнике - просто любитель Joule Thief, но я думал, что это будет способствовать вашему дизайну и не будет стоить дорого.

Что касается балансировки суперкапсов, так как мы близки к 2,7 вольтам макс, я лично просто поставил бы три суперкадра в серии с делителем напряжения из трех резисторов 10 тыс. последовательно соединенных, но они, вероятно, не будут действительно необходимо.

О, и суперкары, о которых я говорил, на самом деле относительно малы (10 мм dia x 32 мм для каждого 10F и 8 мм диам. x 13,5 мм для суперкаров 1F). Найдено 1F по $ 1,03 как 1572-1270-ND на Digikey. 10F составлял 1,97 доллара США за 1572-1287-ND также на Digikey.

ответил MicroservicesOnDDD 2 PMpSun, 02 Apr 2017 14:31:22 +030031Sunday 2017, 14:31:22
-2
  

Выполнить код при отключении питания?

это похоже на желание быть живым, когда он мертв, или во сне, когда он бодрствует:)

типичный способ - периодически подниматься вверх; иногда запускайте mcu на очень низкой скорости.

2-й подход вполне применим для mcus с внешним r /c-генератором -> вы можете использовать несколько штырей gpio для воздействия на эквивалентный R в этом генераторе r /c;

для генератора на основе кристаллов ваши варианты ограничены pll или фиксированными разделителями, если система предлагает эту опцию.

ответил dannyf 2 PMpSun, 02 Apr 2017 23:11:13 +030011Sunday 2017, 23:11:13

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132