Адрес: 105678, г. Москва, Шоссе Энтузиастов, д. 55 (Карта проезда)
Время работы: ПН-ПТ: с 9.00 до 18.00, СБ: с 9.00 до 14.00

Ик выключатель света: Что такое ИК выключатель света?

Содержание

Что такое ИК выключатель света?

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

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

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

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

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

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

Другой тип ИК-выключателя требует подключения устройства к проводу под напряжением настенного выключателя или розетки. Устройство выглядит как любой другой выключатель света или розетка, но содержит ИК-датчик. Используя ИК-луч, передаваемый устройством дистанционного управления, потребители включают и выключают свет, вентиляторы или другие бытовые приборы. Более сложные версии позволяют программировать коды на пульте дистанционного управления, чтобы выключить свет через 15 минут или даже через два часа.

ДРУГИЕ ЯЗЫКИ

экономия и комфорт в доме, во дворе, на улице

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

Конструктивные особенности устройств, их разновидности и функциональность

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

  • Мониторинг обстановки на территории действия инфракрасного датчика
  • Коммутация осветительной сети (включение – отключение).

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

Это исключает случайное оставление включенной лампы на длительный период времени и снижает расход электроэнергии.

Разнообразие модификаций и исполнений

Приборы имеют различия по следующим характеристикам:

  1. Зоне действия покрытия
    • дальность от 8 м до 20 м;
    • угол обзора от 90° до 360°;
  2. Способу монтажа
    • Подвесные;
    • Врезные;
    • Накладные;
  3. Виду исполнения
    • для уличного использования;
    • для установки внутри зданий.

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

Регулировка рабочих параметров прибора

Функциональность датчика движения с выключателем может изменяться с помощью настроек.

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

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

Настройка времени (таймер — TIME) выставляется для ограничения периода включения света после прекращения перемещений в зоне контроля датчика. Временной промежуток может варьировать от нескольких секунд до нескольких минут.

Способы коммутации прибора в электрической цепи

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

Теперь рассмотрим следующие варианты:

  1. Построить цепь без выключателя
  2. Задействовать дублирующий прерыватель
  3. Установить устройство вместо обычного выключателя.

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

Схема подключения датчика движения без дополнительного выключателя

Из прибора выходит три провода: красный, синий, коричневый.

  • Синий коммутируется с нулевым проводом сети
  • Красный соединяется с фазой 220 В
  • Коричневый – это выход 220 В из устройства. Он подключается к одному из контактов светильника. Второй контакт осветительного прибора коммутируется с нулевым сетевым проводом.

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

Провода у прибора могут отсутствовать. В этом случае коммутацию нужно проводить с помощью контактов, обозначенных буквами: N – ноль, L – фаза, Out – выход.
Такая система обеспечивает автономную работу электронного приспособления.

Схема подключения датчика движения с применением дублирующего выключателя

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

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

Подключение датчика движения вместо выключателя

Попробуем разобраться, как подключить датчик движения вместо выключателя. Для такой схемы понадобятся дополнительные элементы: диод и конденсатор емкостью 3,3 мкФ. Пошаговые действия:

  1. Производится демонтаж выключателя
  2. Один из проводов подсоединяется на клемму L, второй – на клемму N
  3. Клеммы N и Out шунтируются диодом
  4. ИК датчик фиксируется на месте выключателя
  5. Параллельно светильнику подключается конденсатор.

Устройство готово к работе.

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

Дополнительная информация

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

Выбор всегда остается за пользователем.

Бесконтактный, оптический выключатель освещения со звуковым эффектом на Arduino

Всем привет!

Сегодня статья про бесконтактный выключатель со звуковым эффектом, который был сделан мной 9 лет назад, а если быть точным, то в январе 2012 года.

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


У меня в коридоре смонтировано 7 светильников.

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

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

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

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

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

Запитал я эту плату обычным зарядным устройством от телефона.

Основой всего устройства является контроллер Arduino Nano V.3, но можно так же использовать любые другие платы, с микроконтроллером ATmega328.

ИК светодиод с фототранзистором можно взять от датчика препятствий, но не обязательно их выпаивать, достаточно перерезать лишние дорожки и припаять к ним 3 провода. Если у вас уже есть где-то ранее выпаянные детали, то перед использованием, лучше сначала проверить их на работоспособность. Инфракрасный светодиод нужно подключить к напряжению 5 В через токоограничивающий резистор 120 Ом и посмотреть на него через камеру телефона, он должен светиться фиолетовым светом. Для проверки фототранзистора понадобится любой тестер с функцией прозвонки проводников. Переводим тестер в режим прозвонки, а выводы фототранзистора подключаем к щупам тестера. После чего нужно к нему вплотную поднести любой пульт от бытовой техники и нажать любую кнопку. В ответ раздастся прерывистый пищащий звук.

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

Работает выключатель следующим образом

Arduino с выхода D5 постоянно выдает ШИМ сигнал с частотой примерно 977 Гц. К этому выходу через токоограничивающий резистор 82 Ом подключен светодиод, излучающий сигнал в инфракрасном диапазоне. Фототранзистор, подключенный к входу D2 детектирует отраженный от руки ИК сигнал и проверяет его на достоверность. Если сигнал из 20-ти или больше идущих подряд периодов соответствует частоте 977 Гц, то тогда контроллер включает по очереди все 7 светильников и начинает воспроизводить звуковой эффект через ШИМ выход D11. Все то же самое происходит и при выключении.

Воспроизведение звуков

Для воспроизведения звуковых эффектов используется формат WAVE без сжатия, с частотой 16000 Гц и глубиной 8 бит, но при воспроизведении данного формата с использованием ШИМ, в аудио тракте наблюдается неприятный свист и шипение. Поэтому для улучшения качества воспроизведения, я в коде использовал линейную интерполяцию. При которой, выборка семплов происходит на частоте 62.5 кГц и между оригинальными выборками вставляются еще 3 дополнительных семпла, рассчитанных методом линейной интерполяции. Таким образом на выходе снижается шум квантования, пропадает свист, улучшается качество звука и для воспроизведения не обязательно использовать дополнительные RC фильтры.

Вместо динамика я использовал старую, маленькую компьютерную колонку без встроенного усилителя.

Для конвертирования Wave файлов в Си код, можно воспользоваться онлайн конвертером.

Схема

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

Компоненты для сборки

1 —

Arduino Nano V.3

2 —

Датчик препятствий

3 —

8-канальный модуль реле

4 — Резисторы 82 Ом и 1 кОм

5 — Динамик 0,5-3 Вт

6 — Любой N-P-N транзистор с допустимым током не менее 500 мА

Код для Arduino


Скачать все файлы

одним архивом

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

В коде вынесены несколько констант, которые можно изменить перед прошивкой.

Константа power_ir — отвечает за дистанцию срабатывания выключателя, может принимать значения от минимума 20 и до максимума 200. Требуемое Вам значение можно определить экспериментальным путем.

lamp_num — определяет количество используемых Вами ламп. Минимальное число лампочек не может быть меньше 1, а максимальное не более 7. Если подправить код, то можно увеличить до 15.
lamp_delay — это задержка между последовательными включениями ламп, которая выражена в миллисекундах и может начинаться от 0 и до 4 294 967 295 мс. Хотя я не думаю, что такие огромные задержки кому то понадобятся.

Видео

Для просмотра видеоролика кликните по изображению.


Заключение

В заключении хотелось бы добавить, что я очень удивлен, что микроконтроллер без WDT за 9 лет ни разу не подвис. По этой же причине я не стал править код и добавлять в него WDT, так как Arduino со старыми bootloader не умеют работать с ним.

Спасибо, что дочитали до конца!

Если Вам понравилась моя статья — то поддержите ее лайком и подпиской.

Если у Вас есть вопросы, то можете их задать в комментариях.

Книга набора «Йодо» и исходный код проектов [Амперка / Вики]

Электронная версия инструкции из набора Йодо. Самая актуальная информация по примерам, помощь и подсказки именно здесь!

Электронная версия

Эксперименты

1. Лампа

Светодиод сделаем, который всегда горит. Микроконтроллер использовать, чтобы просто свет включить — это перебор. Но ведь учишься ты!

Light.js
var myCoolLamp = require('@amperka/led').connect(P1);
myCoolLamp.turnOn();

2. Маячок

Мигающий светодиод сделаем. Можешь показывать им, что живо устройство или действия ждёт.

Beacon. js
var led = require('@amperka/led').connect(P1);
led.blink(0.1, 0.9);

3. Кнопочный выключатель

Свтеа переключатель давай сделаем. Клик — свет включится, клик — выключится.

Switch.js
var led = require('@amperka/led')
  .connect(P1);
 
var button = require('@amperka/button')
  .connect(P3);
 
function myCoolButtonHandler() {
  led.toggle();
}
 
button.on('press', myCoolButtonHandler);

4. Телеграф

Звуковых сообщений простых передатчик сделаем мы. Телеграмму поможет передать он.

Telegraph.js
var buzzer = require('@amperka/buzzer')
  .connect(P5);
 
var button = require('@amperka/button')
  .connect(P3);
 
button.on('press', function() {
  buzzer.turnOn();
});
 
button.on('release', function() {
  buzzer.turnOff();
});

5. Диммер

Силы света регулятор сделаем мы. Ручку крути, чтобы сторону выбирать свою: тёмную или светлую.

Dimmer.js
var pot = require('@amperka/pot')
  .connect(A0);
var led = require('@amperka/led')
  .connect(P1)
  .turnOn();
 
function updateBrightness() { 
  var val = pot.read();
  led.brightness(val);
}
 
setInterval(updateBrightness, 10);

6. Автоматический диммер

Разум диммеру дадим. Пусть тем ярче свет горит, чем окружающий мир темнее.

AutoDimmer.js
var led = require('@amperka/led') 
  .connect(P1)
  .turnOn();
 
var sensor = require('@amperka/light-sensor') 
  .connect(A2);
 
setInterval(function() {
  var luxes = sensor.read('lx'); 
  var level = 1 - luxes / 50; led.brightness(level);
}, 10);

7. Умное освещение

Энергию сбережём давай. Свет во тьме включаться и на рассвете гаснуть заставим. Границу света и тьмы потенциометр задаст.

SmartLight.js
var led = require('@amperka/led') 
  .connect(P1);
 
var pot = require('@amperka/pot') 
  . connect(A0);
 
var sensor = require('@amperka/light-sensor') 
  .connect(A2);
 
setInterval(function() {
  var threshold = pot.read() * 100; var luxes = sensor.read('lx');
  if (luxes < threshold) {
    led.turnOn(); 
  } else {
    led.turnOff(); 
  }
}, 10);

8. Элементарный синтезатор

Музыкой заняться пора. С космическим звучанием и одной ручкой синтезатор построим.

BasicSynth.js
var buzzer = require('@amperka/buzzer')
  .connect(P5) 
  .turnOn();
 
var pot = require('@amperka/pot') 
  .connect(A0);
 
setInterval(function() {
  var freq = 20 + 4000 * pot.read(); 
  buzzer.frequency(freq);
}, 10);

9. Терменвокс

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

Thereminvox.js
var buzzer = require('@amperka/buzzer') 
  .connect(P5)
  .turnOn();
 
var sensor = require('@amperka/light-sensor') 
  .connect(A2);
 
var button = require('@amperka/button') 
  . connect(P3);
 
button.on('press', function() { 
  buzzer.toggle();
});
 
setInterval(function() { 
  buzzer.frequency(20 * sensor.read('lx'));
}, 10);

10. Пантограф

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

Pantograph.js
var servo = require('@amperka/servo') 
  .connect(P13);
 
var pot = require('@amperka/pot') 
  .connect(A0);
 
setInterval(function() {
  var angle = 180 * pot.read(); 
  servo.write(angle);
}, 20);

11. Переезд

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

Crossing.js
var trigger = require('@amperka/button') 
  .connect(P2);
 
var buzzer = require('@amperka/buzzer') 
  .connect(P5)
  .frequency(50);
 
var light = require('@amperka/led') 
  . connect(P1);
 
var barrier = require('@amperka/servo') 
  .connect(P13)
  .write(90);
 
var closed = false;
 
trigger.on('press', function() { 
  closed = !closed;
  if (closed) {
    buzzer.beep(1, 0.5); 
    light.blink(1, 0.5); 
    barrier.write(0);
  } else { 
    buzzer.turnOff(); 
    light.turnOff(); 
    barrier.write(90);
  } 
});

12. Консольный люксометр

Устройство соберём, что на компьютер силу света посылает. За её величиной в виде числа сможем следить мы.

ConsoleLightmeter.js
var sensor = require('@amperka/light-sensor') 
  .connect(A2);
 
setInterval(function() {
  var lx = sensor.read('lx').toFixed(0);
  var time = getTime().toFixed(0); 
  console.log(time, 'sec', '->', lx, 'luxes');
}, 1000);

13. Экранный люксометр

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

ScreenLightmeter. js
var sensor = require('@amperka/light-sensor')
  .connect(A2);
 
setInterval(function() {
  var lx = sensor.read('lx').toFixed(0); 
  USB.write(lx+' lx'+'\r\n');
}, 200);

14. HTML-термометр

Великий термометр сделаем, что символами крупными температуру выводит. Serial Projector знакомый используй, чтобы результат наблюдать.

HTML-Thermometer.js
var thermometer = require('@amperka/thermometer')
  .connect(A4);
 
setInterval(function() {
  var celsius = thermometer.read('C'); 
  USB.write('<div>'+'temperature'+'</div>'+celsius.toFixed(1)+'\r\n');
}, 1000);

15. Ультразвуковая линейка

Расстояние измеряющий прибор сделаем мы. В Serial Projector смотри, чтобы точную дистанцию знать.

UltrasonicRuler.js
var sonic = require('@amperka/ultrasonic') 
  .connect({trigPin: P10, echoPin: P11});
 
setInterval(function() { 
  sonic.ping(function(err, val) {
    if (err) { 
      USB. write(err.msg+'\r\n');
    } else {
      USB.write(val.toFixed(0)+' mm'+'\r\n'); 
    }
  }, 'mm');
}, 100);

16. Парктроник

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

Parktronic.js
var sonic = require('@amperka/ultrasonic') 
  .connect({trigPin: P10, echoPin: P11});
 
var buzzer = require('@amperka/buzzer') 
  .connect(P5)
  .frequency(440);
 
setInterval(function() { 
  sonic.ping(function(err, val) {
    if (val < 5) { 
      buzzer.turnOn();
    } else if (val < 20) { 
      buzzer.beep(0.1, 0.1);
    } else if (val < 50) { 
      buzzer.beep(0.2, 0.2);
    } else {
      buzzer.turnOff(); 
    }
  }, 'cm');
}, 100);

17. Сканер ИК-пультов

Пульта инфракрасный свет научу видеть. Код кнопки нажатой в консоль устройство выведет. Любой пульт подойдет ему. Приём сигнала светодиод покажет.

IR-Scanner.js
var ir = require('@amperka/ir-receiver')
  .connect(P7);
 
var light = require('@amperka/led') 
  .connect(P1);
 
ir.on('receive', function(code, repeat) { 
  if (!repeat) {
    console.log('*******'); 
  }
 
  console.log('0x' + code.toString(16));
  light.toggle();
});

18. ИК-выключатель света

Светом с пульта управлять будем. Кнопкой, которая свет переключает, та станет, что первой после включения платы нажмёшь.

IR-LigthSwitch.js
var ir = require('@amperka/ir-receiver')
  .connect(P7);
 
var light = require('@amperka/led')
  .connect(P1);
 
var powerCode = null;
 
ir.on('receive', function(code, repeat) { 
  if (repeat) {
    return; 
  }
 
  if (powerCode === null) {
    powerCode = code; 
  }
 
  if (code === powerCode) {
    light.toggle(); 
  }
});

19. Пульт киномана

USB-устройство построим, которое клавиатурой притворяется. Видеоплеером VLC с инфракрасного пульта сможешь управлять ты.

CinephilesMate.js
var ir = require('@amperka/ir-receiver') 
  .connect(P7);
 
var kb = require('@amperka/usb-keyboard');
 
var rewindCode = 0xfd20df; 
var forwardCode = 0xfd609f; 
var playCode = 0xfda05f;
 
ir.on('receive', function(code, repeat) { 
  if (code === playCode) {
    if (!repeat) {
      kb.tap(kb.KEY.SPACE); 
    }
  } else if (code === rewindCode) { 
    kb.tap([kb.MODIFY.CTRL, kb.KEY.LEFT]);
  } else if (code === forwardCode) {
    kb.tap([kb.MODIFY.CTRL, kb.KEY.RIGHT]); 
  }
});

20. Генератор паролей

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

PasscodeGen.js
var button = require('@amperka/button') 
  .connect(P3, {holdTime: 0.5});
 
var buzzer = require('@amperka/buzzer') 
  .connect(P5);
 
var kb = require('@amperka/usb-keyboard'); 
var random = require('@amperka/hw-random'); 
var password = '';
 
function generatePassword() { 
  password = '';
  while (password. length < 16) {
    var code = random.int(33, 126);
    password += String.fromCharCode(code); 
  }
}
 
button.on('hold', function() { 
  generatePassword(); 
  console.log(password); 
  buzzer.beep(0.1);
});
 
button.on('click', function () { 
  kb.type(password);
}); 
 
generatePassword();

21. Excel-робот

Клавиатурного робота напишем, который каждые 5 секунд в новую строку Excel освещённость и температуру вбивает. Запись чтобы начать, Excel запусти и в ячейку А2 курсор поставь. Чтобы запись прекратить, ещё раз кнопку нажми. На ночь робота оставь. По записанным данным график построй. Изменение данных в динамике увидишь ты.

ExcelRobot.js
var lightSensor = require('@amperka/light-sensor') 
  .connect(A2);
 
var thermometer = require('@amperka/thermometer') 
  .connect(A4);
 
var button = require('@amperka/button') 
  .connect(P3);
 
var kb = require('@amperka/usb-keyboard'); 
 
var timer = require('@amperka/timer')
  . create(5);
 
button.on('press', function() { 
  if (timer.isRunning()) {
    timer.stop(); 
  } else {
    timer.tick().run(); }
});
 
timer.on('tick', function() {
  var time = getTime();
  var lx = lightSensor.read('lx'); 
  var c = thermometer.read('C');
 
  kb.type(time.toFixed(0) + '\t' + 
          lx.toFixed(0) + '\t' +
          c.toFixed(0) + '\n');
});

22. Умный шлагбаум

Из проекта 11 переезд улучшим, самостоятельным сделаем его. Сам проезд закроется, если препятствие увидит. Обратно откроется он, как только на 4 секунды пустоту увидит.

SmartBarrier.js
var sonic = require('@amperka/ultrasonic') 
  .connect({trigPin: P10, echoPin: P11});
 
var buzzer = require('@amperka/buzzer') 
  .connect(P5)
  .frequency(50);
 
var light = require('@amperka/led') 
  .connect(P1);
 
var barrier = require('@amperka/servo') 
  .connect(P13)
  .write(90);
 
var hysteresis = require('@amperka/hysteresis') 
  .create({high: 0.5, highLag: 4, low: 0. 5, lowLag: 0});
 
setInterval(function() { 
  sonic.ping(function(err, val) {
    if (err) return;
    hysteresis.push(val); 
  }, 'm');
}, 100);
 
hysteresis.on('low', function(val) { 
  buzzer.beep(1, 0.5); 
  light.blink(1, 0.5); 
  barrier.write(0);
});
 
hysteresis.on('high', function(val) { 
  buzzer.turnOff();
  light.turnOff();
  barrier.write(90);
});

23. Тревожная кнопка

Тёмные силы отпугнуть чтобы, звонкую сирену собери. Кнопку нажми, чтобы тревогу включить. Ещё раз нажми, чтобы прекратить.

AlarmButton.js
var button = require('@amperka/button') 
  .connect(P2);
 
var buzzer = require('@amperka/buzzer') 
  .connect(P5);
 
var light = require('@amperka/led') 
  .connect(P1);
 
var animation = require('@amperka/animation') 
  .create({
    from: 0,
    to: 1,
    loop: true, 
    updateInterval: 0.01
});
 
var armed = false;
 
animation.on('update', function(val) { 
  light.brightness(val); 
  buzzer.frequency(1000 + 4000 * val);
});
 
button. on('press', function() { 
  armed = !armed; 
  buzzer.toggle(armed); 
  light.toggle(armed);
  if (armed) { 
    animation.play();
  } else {
    animation.stop(); 
  }
});

24. Театральный свет

Для представлений свет сделай, который плавно гаснет и мягко нарастает.

TheatreLight.js
var light = require('@amperka/led') 
  .connect(P1)
  .turnOn()
  .brightness(0);
 
var button = require('@amperka/button') 
  .connect(P3);
 
var anim = require('@amperka/animation') 
  .create()
  .reverse();
 
anim.on('update', function(val) { 
  light.brightness(val);
});
 
button.on('press', function() { 
  anim.reverse().play();
});

25. Настольный радар

Роботу голову соберём. Дальномер крутиться будет, чтоб перед собой пространство понять. В виде круговой диаграммы через Serial Projector работу наблюдай.

TableRadar.js
var ultrasonic = require('@amperka/ultrasonic') 
  . connect({trigPin: P10, echoPin: P11});
 
var servo = require('@amperka/servo') 
  .connect(P13);
 
var canvas = { 
  width: 800, 
  height: 500, 
  radius: 300, 
  margin: 150
};
 
var sectors = { 
  count: 18, 
  current: 0, 
  direction: 1
};
 
sectors.values = new Array(sectors.count);
 
function dumpSvg() {
  var svg = [];
  svg.push('<svg + canvas.width + 'px' +
  '" + canvas.height + 'px'); 
  svg.push('" xmlns="http://www.w3.org/2000/svg">');
 
  var cx = canvas.width / 2;
  var cy = canvas.height - canvas.margin; 
  var astep = Math.PI / sectors.count;
 
  for (var i = 0; i < sectors.count; ++i) { 
    var fill = 'black';
    var stroke = 'green';
    var r = sectors.values[i];
    if (!r || r > canvas.radius) {  
      fill = 'none';
      stroke = 'white';
      r = canvas.radius;
    }
 
    if (i === sectors.current) {
      stroke = 'yellow'; 
    }
 
    var a1 = astep * i - Math.PI / 2; 
    var a2 = a1 + astep;
 
    var x1 = cx + r * Math.sin(a1); 
    var y1 = cy - r * Math. cos(a1); 
    var x2 = cx + r * Math.sin(a2); 
    var y2 = cy - r * Math.cos(a2);
 
    x1 = x1.toFixed(0); 
    y1 = y1.toFixed(0); 
    x2 = x2.toFixed(0); 
    y2 = y2.toFixed(0);
 
    svg.push('<path d="');
    svg.push('M' + cx + ' ' + cy + ' '); 
    svg.push('L' + x1 + ' ' + y1 + ' '); 
    svg.push('A'+r +' '+r +' 0,0,1, '+
             x2 + ' ' + y2 + ' '); 
    svg.push('Z');
    svg.push('" stroke="' + stroke +
             '"  fill="' +  fill + '" />');
  }
 
  svg.push('</svg>');
  svg.push('\r\n');
  USB.write(svg.join('')); 
}
 
setInterval(function() { 
  ultrasonic.ping(function(err, val) {
    sectors.values[sectors.current] = val; 
    sectors.current += sectors.direction;
    if (sectors.current === sectors.count - 1 ||
        sectors.current === 0) { 
      sectors.direction = -sectors.direction;
    }
 
    servo.write(sectors.current *180 / sectors.count);
    dumpSvg(); 
  }, 'mm');
}, 300);

А что же дальше?

Прошел все задания? Молодец! Теперь ты смело можешь испытать свои силы и фантазию в реализации собственных проектов. А если ты уже слышал об «Интернете вещей» и хочешь узнать, что это такое, попробуй наше дополнение к набору «Йодо». Ещё одно продолжение — «Автополив» — познакомит тебя с системой автополива растений, а расширение «Робоняша» поможет собрать няшного мобильного робота. Всё только начинается!

Бесконтактный инфракрасный выключатель света на микроконтроллере ATtiny13. Схема

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

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

Схема рассчитана на управление нагрузкой питаемой от электросети 220 В. Бесконтактный выключатель срабатывает при обнаружении инфракрасного луча отраженного от объекта.

За функциональность инфракрасного выключателя отвечает микроконтроллер Attiny13. Он периодически каждые 10 мс генерирует 30 импульсов подаваемых на ИК-диод. Эти импульсы имеют частоту около 36 кГц и заполнение 2%, благодаря чему расход энергии небольшой. Конденсатор C5 улучшает скорость изменения напряжения на ИК-диоде, в частности, когда транзистор VT1 выходит из состояния насыщения.

Тестер транзисторов / ESR-метр / генератор

Многофункциональный прибор для проверки транзисторов, диодов, тиристоров…

Если часть излучаемого света отражается от приближающегося объекта, приемник TSOP4836 подает демодулированный сигнал на вход микроконтроллера. Одновременно с этим АЦП микроконтроллера считывает величину напряжения с потенциометра (время включения) и подается питание на светодиод оптрона. Время включения настраивается с шагом в одну секунду в диапазоне 10 … 1033 сек, то есть примерно до 17 минут.

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

В качестве оптрона выбран MOC3063, поскольку для его включения необходим наименьший (из всего семейства) ток — 5 мА. Тесты показали, что и с MOC3062 (необходимо 10 мА) схема работает хорошо.

Бестрансформаторный источник питания спроектирован таким образом, чтобы обеспечить напряжение около 5В, необходимое для правильной работы микроконтроллера. Резисторы R1 и R2 разряжают конденсатор C1 после выключения питания, в то время резисторы R3…R5 ограничивают протекающий ток через конденсатор при включении питания.

Последовательное соединение резисторов обеспечивает их нормальную работу при высоком напряжении. Кроме того, в случае пробоя конденсатора С1, один из резисторов R3…R5 сработает как предохранитель и прервет цепь. Выпрямленное напряжение с диодного моста стабилизируется стабилитроном и сглаживается конденсаторами.

Схема инфракрасного барьера собрана на односторонней печатной плате с размерами 38 мм × 45 мм. Размеры платы позволяют установить устройство в электрическую распределительную коробку диаметром 60 мм.

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

При программировании микроконтроллера ATtiny13 фьюзы необходимо оставить по умолчанию, за исключением CKDIV8, который должен быть отключен. ИК-диод и фотоприемник должны быть расположены снаружи устройства и изолированы друг от друга перегородкой, предотвращающей засвета.

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

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

Скачать рисунок печатной платы и прошивку (44,4 KiB, скачано: 1 216)

Схема сенсорного выключателя света » Паятель.Ру


Этот выключатель работает по принципу прикосновения руки. Поднесли раз, — свет включился, поднести два — выключился. Органом управления служит оптический датчик на ИК-лучах. Он предельно прост, — состоит из ИК-светодиода и ИК-фототранзистора. Реагирует на отражение ИК-света от руки или какого-то предмета, поднесенного к нему на расстояние ближе 10 см. Принципиальная схема выключателя показана на рисунке 1.


Датчик состоит из ИК-светодиода HL1 и фототранзистора VT1. Эти детали имеют похожие корпуса. Корпусом выключателя служит корпус квадратной штепсельной розетки, естественно, с двумя отверстиями в середине (под вилку). Здесь эти отверстия являются рабочей поверхностью датчика.

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

Проведя рукой перед таким выключателем вы создаете на коллекторе VT1 импульс, который поступает на вход С триггера D1. Этот D-триггер включен по схеме делителя на два (его вход D соединен с инверсным выходом), поэтому, каждый импульс меняет состояние триггера на обратное. А цепь С3-R4 немного замедляет процесс этого изменения, чтобы не было многократного переключения лампы из-за своеобразного дребезга контактов, вызванного неравномерным перемещением руки или многократным отражением луча от её поверхности.

Напряжение с прямого выхода триггера поступает на затвор мощного высоковольтного полевого транзистора VT2. Это — IRF840, транзистор, сопротивление канала которого в открытом виде менее одного ома. При таком сопротивлении падение напряжения на нем минимально, и при работе с лампой мощностью до 300W, теплота на нем не выделяется (радиатор не нужен).

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

Приемная и передающая части схемы датчика питаются от отдельных выпрямителей. Применение отдельного источника на VD2-R1-C1 для светодиода позволяет наиболее оптимально настроить датчик по силе излучаемого ИК-света, подбором сопротивления резистора R1. И при этом не оказывать влияния на работу источника питания логической микросхемы.

Приемная часть схемы питается от источника на элементах VD3-R5-VD1-C4, вырабатывающего стабильное напряжение 12V. Цепь C2-R3 служит для принудительной установки выключателя в выключенное состояние после подачи напряжения на схему. Например, чтобы лампа не включалась сама от перебоев в сети.

Микросхема К561ТМ2 содержит два D-триггера, — здесь работает только один из них. Используя второй триггер можно сделать выключатель для люстры, переключающий две лампы (или две группы ламп).

На рисунке 2 показана схема такого переключателя. D-триггеры микросхемы К561ТМ2 включены по схеме двухразрядного двоичного счетчика. Соответственно, есть два числовых выхода, — два прямых выхода триггеров, на выходе каждого из которых включена отдельная ключевая схема на полевом транзисторе и выпрямительном мосте.

Существуют всего четыре комбинации включенных ламп, — обе лампы выключены, включена Н1, включена Н2 и обе лампы включены. Комбинации перебираются последовательно, — от каждого поднесения руки или перемещения руки перед выключателем. Можно увеличить число переключаемых ламп до трех или четырех используя вместо двух D-триггеров какой-нибудь двоичный счетчик.

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

Можно использовать фототранзистор и ИК-светодиод от старой шариковой компьютерной мыши, или от фотодатчика лентопротяжного механизма старого видеомагнитофона, от фотодатчиков неисправных принтеров или другой оргтехники. Диоды КД105 можно заменить на КД209 или другие на напряжение не ниже 300V.

Выпрямительные мосты можно заменить другими или составить из отдельных диодов. Важно, чтобы они допускали напряжение не ниже 300V, и ток, соответственно нагрузке (не менее 0,5А). Стабилитрон можно заменить любым стабилитроном на напряжение 7-12V (практически любой стабилитрон серии Д814).

Замену транзистору IRF840 можно найти по справочнику. Транзистор должен быть рассчитан на напряжение не ниже 300V и ток не ниже 1А, при этом, сопротивление открытого канала должно быть не более 1 Оm. Микросхему К561ТМ2 можно заменить на К561ТМ1 (отличается тем, что не имеет вывода S, но по цоколевке совпадает с «ТМ2»), К176ТМ2, К176ТМ1, К1561ТМ2 или импортным аналогом.

Налаживание заключается в установке расстояния, с которого срабатывает датчик. Делают это подбором яркости свечения ИК-светодиода и чувствительности фототранзистора. Яркость ИК-светодиода устанавливают подбором сопротивления R1 (но не менее 27К), а чувствительность фототранзистора — подбором сопротивления R2. Желательно R2 выбрать поменьше, a R1 побольше, но так чтобы датчик реагировал на поднесение руки не более чем на 10 см, и не менее чем на 5 см.

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

DZv-IR-1d 12V-24V | Инфракрасный выключатель за зеркало на взмах руки

ИК выключатель для зеркала DZv-IR-1d.

Инфракрасный выключатель для зеркала DZv-IR-1d с функцией диммирования – актуальное решение вопроса бесконтактного управления включением/ выключением и диммированием освещения, установленного на зеркале.

Инфракрасный выключатель для зеркала DZv-IR-1d управляет:

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

Для включения/выключения LED освещения, нужно провести рукой перед выключателем, в месте его установки, обозначенном на зеркале (сенсорное окно), расстояние срабатывания выключателя до 6см.

Варианты возможных конфигураций сенсорного окна приведены в закладке Монтаж.

Для диммированя яркости освещения зеркала поднесите руку к сенсорному окну (при включенном освещении), яркость освещения будет увеличиваться/ уменьшаться, удерживайте руку до момента, когда освещения достигнет требуемой яркости, которая меняется в пределах 10-100%.

Вы можете подробно ознакомиться со всеми режимами работы, правилами подключения и установки ИК выключатель для зеркала DZv-IR-1d в закладках Монтаж, Подключение и Документация, а так же подобрать подходящую по мощности модель Источника Питания из таблицы, представленной в закладке Совместимость с источниками Питания.

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

Модель 08.800.00.315

Электроподключение

Выключатель света с датчиком движения Руководство покупателя

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

Почему вы должны использовать выключатель света с датчиком движения

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

Вот некоторые основные преимущества использования сенсорного выключателя света.

Экономия энергии и сокращение отходов электроэнергии

Здравый смысл подсказывает, что свет, активируемый движением, может сэкономить больше энергии, чем светильник с ручным управлением, но сколько энергии действительно могут сэкономить выключатели света с датчиком движения?

По данным CEE, выключатели с датчиком движения могут сэкономить до 60% энергии в домашних прачечных.

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

По данным Агентства по охране окружающей среды США, за счет использования стратегий автоматического и планового отключения, таких как датчики движения, экономия энергии может составлять от 40% до 46% в классных комнатах, от 13% до 50% в частных офисах, от 30% до 90% в туалеты, от 22% до 65% в конференц-залах, от 30% до 80% в коридорах и от 45% до 80% в складских помещениях.

В среднем выключатели с датчиком движения могут сэкономить от 30% до 60% энергии освещения в жилых и коммерческих помещениях, а в некоторых случаях даже до 80% экономии энергии.

Увеличенный срок службы светодиодных ламп

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

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

Давайте рассмотрим предложения Министерства энергетики США о том, когда выключать свет:

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

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

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

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

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

Светодиод

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

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

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

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

Удобно, чисто и без помощи рук

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

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

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

Сделайте свой дом безопаснее

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

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

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

Выключатель света с датчиком движения может включать свет только тогда, когда рядом есть люди, и вам не нужно держать свет включенным всю ночь.

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

Как работает выключатель света с датчиком движения

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

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

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

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

Сенсорные выключатели

«все в одном» сочетают в себе оба метода работы, обеспечивая пользователям максимальную гибкость при выборе. Их называют датчиками присутствия/отсутствия, или иногда для краткости их называют датчиками присутствия.

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

Датчик освещенности

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

Задержка времени

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

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

Чувствительность

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

Диммер

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

Технология обнаружения движения

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

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

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

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

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

Чтобы обеспечить лучшую производительность, следует предотвращать ложные срабатывания и ложные срабатывания

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

Переключатель освещения с датчиком движения PIR

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

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

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

Датчики движения

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

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

Выключатель света с ультразвуковым датчиком движения

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

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

Ультразвуковые датчики

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

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

Выключатель света Dual-Tech с датчиком движения

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

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

Для включения света

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

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

Чтобы выключить свет

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

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

Какую технологию выбрать?

Выключатели света с датчиком движения

PIR лучше всего подходят как для домашнего, так и для коммерческого использования по следующим причинам:

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

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

  • Они очень чувствительны и могут обнаруживать мелкие движения
  • Они могут обнаруживать углы вокруг препятствий, что делает их подходящими для сложных открытых пространств

Типы установки

Датчики движения

также сортируются по тому, как и где они устанавливаются, вот все популярные типы на рынке.

Требуется нейтраль и провод заземления

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

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

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

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

Выключатель для настенного и потолочного монтажа

Хотя все они являются выключателями света с датчиком движения, они выглядят совершенно по-разному.

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

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

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

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

Внутри и снаружи

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

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

3-позиционный выключатель света

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

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

Удаленная беспроводная связь и Wi-Fi

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

Как запрограммировать переключатель датчика движения

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

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

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

Потолочные датчики

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

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

Выключатель света с датчиком движения Домашнее применение

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

Ванная

Ванная комната — одно из лучших мест в вашем доме для выключателей света с датчиком движения. На самом деле, мы бы посоветовали каждому читателю установить выключатель света с датчиком движения хотя бы в ванной комнате.

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

Еще одним преимуществом является то, что после принятия душа или мытья рук вам не придется рисковать получить удар током, коснувшись выключателя света мокрыми руками.

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

Гараж и кладовая

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

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

Детская спальня

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

Датчик Vacancy не выключит свет на всю ночь и никогда не включит свет случайно во время хорошего сна.

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

Вы можете добавить датчик движения к потолочным вентиляторам в комнате или вытяжным вентиляторам в ванной комнате.

Для потолочных вентиляторов можно добавить отдельный датчик движения, чтобы управлять только вентилятором.

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

Коммерческий выключатель света с датчиком движения

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

Существует множество норм энергопотребления для систем освещения коммерческих зданий, будь то общие нормы, такие как ASHRAE, IECC, или местные нормы, такие как Раздел 24 штата Калифорния, требуется наличие систем экономии освещения, таких как выключатели освещения присутствия и отсутствия.

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

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

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

Есть несколько отличий при выборе сенсорных выключателей света коммерческого класса.

277 напряжение

Наиболее существенная разница между домашними и коммерческими выключателями света заключается в напряжении. В США домашнее напряжение составляет 110 В, а коммерческое — 277 В.

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

Рабочий режим

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

Вы можете установить универсальный выключатель света с датчиком движения, но велика вероятность того, что вы не будете менять режим обнаружения движения в течение всего года.

Технология

Датчики PIR и Dual-Tech широко используются в коммерческих зданиях. Выключатели света PIR более долговечны и экономичны. Двойные выключатели света больше подходят для открытых пространств.

Часто задаваемые вопросы и устранение неполадок

Как выключить свет с датчиком движения

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

Если это потолочный датчик движения и на стене нет выключателя света, подключенного к потолочному датчику, вы не можете его выключить, потому что он полностью автоматический.

Как включить подсветку датчика движения

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

Как обойти/переопределить датчик движения

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

Как отключить датчик движения

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

Как сбросить выключатель света с датчиком движения

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

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

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

Можно попробовать понизить чувствительность сенсора. Если это датчик PIR, вы можете заблокировать часть линзы датчика.

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

Выключатель света с датчиком движения не выключается

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

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

Автоматический выключатель света

в Интернете вещей — Новости

Предыстория

Я только что переехал в свой первый новый дом и обнаружил ситуацию с освещением в моем офисе на уровне сада. совершенно ужасные люминесцентные лампы.Пока использую два очень большие лампы, но я плохо помню, чтобы выключить их, когда я ухожу, и пройти через комнату в темноте, когда я приеду, это опасное дело. Я решил поместить свои вещи в Интернет вещей, разработав автоматический выключатель света, используя SparkFun ESP8266 Thing Dev, SparkFun Quad Relay и пару инфракрасных светодиодов/приемников в качестве растяжки для включения и выключения света. Вы можете найти все части, которые я использовал для этого проекта ниже.

Светодиод — инфракрасный 950нм

В наличии COM-09349

Это очень простой, чистый инфракрасный светодиод. Эти устройства работают в диапазоне 940–950 нм и хорошо работают с универсальными ИК-системами, включая

. 2

Четырехместная эстафета SparkFun Qwiic

Ушедший на пенсию COM-15102

SparkFun Qwiic Quad Relay — это уникальная дополнительная плата питания, используемая для переключения 4 мощных устройств с вашего Arduino …

. 1 Пенсионер Внимание! Если вас интересует руководство по аппаратному обеспечению о том, как настроить ИК-сигнал 38 кГц с помощью таймера 555, ознакомьтесь с руководством Boss Alarm Tutorial.

Инфракрасный

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

Чтобы создать этот сигнал, я хотел начать с нуля, чтобы лучше понять тайминги микроконтроллера. Генерация сигнала 38 кГц от SparkFun ESP8266 Thing, работающего на частоте 32 МГц, потребует некоторых задержек, но как долго? Какова будет скважность этого сигнала, если таковая имеется? Для начала я сделал простую математику:

Частота SparkFun ESP8266: 32 МГц

Частота ИК-сигнала: 38 кГц

Количество циклов в одном периоде ИК-сигнала (32 МГц/38 кГц): ~824. 105

Период одного тактового цикла для ESP8266 Thing (время = 1/частота): 31,25 нс (wowzers)

Умножьте количество тактовых циклов для задержки на длину тактового цикла: ~26,3 мкс.

Окончательный результат: ~26,3 мкс

Логический анализатор

Хорошо, этого достаточно для отправной точки. Если бы у меня не было логического анализатора в этот момент, я бы не смог точно настроить сигнал, чтобы обнаружить какие-то другие неизвестные зависания времени.Я взял окончательный результат и записал для ИК-светодиода высокий уровень для половины расчетного времени задержки, используя функцию delayMicroseconds() (13 мкс), и низкий уровень для другой половины. (еще 13us). Анализ сигнала показал, что сигнал слишком медленный, но почему? После некоторого исследования я обнаружил, что написание булавочного максимума занимает некоторое время, что на самом деле не то, что мне приходилось принимать во внимание раньше. Я имею в виду, что да, но это именно то, с чем так здорово столкнуться при работе над проектом, потому что именно так я узнаю что-то новое.

Время записи высокого уровня на выводе ESP8266 составляет приблизительно ~1,5 мкс. Уменьшение задержки примерно до 23 мкс дало достаточную задержку для генерации волны 37,89 МГц, что достаточно для моих целей. Реализация сигнала оказалась не такой успешной. Глядя на техническое описание ИК-приемника Я обнаружил, что непрерывная передача ИК-сигнала заставляет приемник отключать захват сигнала на некоторое время.

Я искал помощь на нашем веб-сайте и наткнулся на руководство Нейта по восстановлению Lumitune, которое действительно собрало все воедино.Если вы посмотрите на учебник, он предоставляет код для этого большого проекта, который вращается вокруг блокировки ИК-сигнала для игры на клавише пианино. В своем коде он просто коротко импульсировал ИК-светодиод и сразу же прочитайте после этого, чтобы увидеть, было ли оно прочитано. Он делает задержку на одну миллисекунду между этими пакетами, чтобы не перегружать ИК-приемник. Конечно! Иногда вы попадаете в кроличью нору, и вам трудно понять перспективу вашего проекта. Это именно то, что мне нужно было найти. Я настроил первую и вторую пару ИК-передатчика/приемника и получил две рабочие растяжки.Я возился с рабочим циклом, чтобы увидеть, как он влияет на приемник, но обнаружил, что 50 процентов было достаточно.

Скриншот логического анализатора как ИК-сигнала, так и чуть выше, ИК-приемник становится низким.

Код

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

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

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

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

Инфракрасный код отключения (ZIP)

Инфракрасный контур

Beolw — схема инфракрасных растяжек. Следует отметить, что ИК-светодиод может использовать ток до 50 мА, что больше, чем может обеспечить вывод на ESP8266. Я использую транзисторы NPN с резисторами 68 Ом, чтобы обеспечить правильный ток. Я на самом деле макетировал схему на двух отдельных макетах, чтобы я мог разделить их как можно больше. Тем не менее, ИК-светодиоды по-прежнему вызывали неправильные приемники, поэтому я использовал алюминиевую фольгу, чтобы создать конус вокруг каждого светодиода.

ESP8266, управляющий четырехъядерным реле SparkFun Qwiic, был подключен к контактам I 2 C. Ознакомьтесь с руководством по подключению Quad Relay, если хотите узнать больше. Вот и все, народ! В GIF ниже я показываю, как одна лампа включается в определенном порядке, используя логику «направления», о которой говорилось в приведенном выше коде, после чего свет выключается, двигаясь в противоположном «направлении».

Обратите внимание на алюминиевые конусы?

Физический корпус

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

Взгляд в будущее

Когда я работал над описанием этого проекта, мне пришло в голову, что если два человека идут близко друг к другу, то логика кода не будет работать. Первая растяжка будет отключена до тех пор, пока первый человек либо не активирует вторую, либо пока не закончится окно времени, чтобы расцепить вторую.Если два человека находятся близко друг к другу, то человек может незаметно проскользнуть внутрь! Я думаю, что вместо этого было бы разумнее создать «стопку» входов и выходов, где у каждого сработавшего троса была бы соответствующая отметка времени. Затем я могу сравнить сработавшие растяжки и их временные метки и принять решение на основе времени между ними. Дайте мне знать, если у вас есть какие-либо предложения в комментариях ниже!

Выключатель света с датчиком движения

с использованием CD4017 и ИК-датчика со схемой

В этом проекте 4017 я показал, как сделать выключатель света с датчиком движения с использованием интегральной схемы CD4017 и ИК-датчика приближения.Вы можете использовать эту схему освещения, активируемую движением, в качестве автоматического выключателя света в туалете. Я не использовал микроконтроллер или Arduino для этого проекта CD4017.

Свет включается, когда кто-либо входит в туалет

Когда кто-либо входит в туалет, ИК-датчик приближения улавливает движение и включает свет.

Свет выключается, когда кто-либо выходит из туалета.

После этого, когда он или она выходит из туалета, ИК-датчик снова определяет движение и выключает свет.

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

Схема светильника с датчиком движения

Вы можете легко собрать эту схему 4017 из некоторых основных компонентов.

CD4017 Распиновка
Как работает схема датчика движения
  1. Светодиод ИК-излучателя непрерывно излучает инфракрасное излучение. Когда какой-либо объект попадает в зону действия, некоторое количество инфракрасного излучения отражается от поверхности объекта, и это отраженное инфракрасное излучение может быть обнаружено светодиодом ИК-приемника.
  2. LM358 сравнивает напряжение на светодиоде ИК-приемника с заданным значением.При обнаружении любого движения напряжение на ИК-приемнике превышает заданное значение, поэтому выходной контакт (контакт 1) LM358 становится высоким.
  3. Вывод часов (вывод 14) микросхемы CD4017 соединен с выходным выводом LM358. Таким образом, при обнаружении любого движения микросхема 4017 получает тактовый импульс и изменяет текущее состояние контакта 2.
  4. Вывод 2 CD4017 соединен с базой NPN-транзистора BC547. Когда вывод 2 становится высоким, транзистор включается.
  5. Когда транзистор открывается, ток может протекать через катушку реле.Так включается и нагрузка, подключенная к реле.
  6. Когда ИК-светодиоды обнаруживают какое-либо движение во второй раз, они отправляют следующий тактовый импульс на микросхему CD4017. Затем Pin-2 становится низким.
  7. Если на контакте 2 появляется низкий уровень, транзистор выключается и, соответственно, нагрузка, подключенная к реле, также выключается.

Схема печатной платы переключателя датчика движения

Загрузите схему печатной платы, а затем распечатайте ее на странице формата A4.

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

Требуемые компоненты для этого 4017 проект:

1) CD4017 IC
2) LM358 IC
3) BC547 Transistory
4) 100UF 25V Конденсатор
5) 1000UF 25V Конденсатор
6) 220-Ом 0,25Вон. Резисторы — 4 №
7) Резистор 10 кОм, 0,25 Вт
8) Подстроечный резистор 10 кОм
9) Светодиод 5 мм — 2 шт.
10) Пара ИК-светодиодов (детектор и излучатель)
11) 1N4007 Диод
12) Реле SPDT 5 В
13) Разъемы и база ИС

3 Видео о датчике движения Light

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

Но вы также можете загрузить gerber-файл печатной платы для этого проекта и заказать печатную плату индивидуального дизайна на сайте PCBWay.com

О компании PCBWay и ее услугах

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

Компания PCBWay производит не только алюминиевые платы FR-4 и , но и передовые печатные платы, такие как Rogers, HDI, гибкие и жестко-гибкие платы по очень разумной цене.
Чтобы получить онлайн-страницу мгновенного расчета, посетите: pcbway.com/orderonline

PCBWay также предлагает услугу сборки . Программное обеспечение для онлайн-ценообразования может мгновенно рассчитать стоимость вашей услуги по сборке печатных плат путем приблизительного расчета. Их цены на печатные платы очень разумны.
Примерная стоимость онлайн – pcbway.com/pcb-assembly

Вы также можете ознакомиться с различными проектами печатных плат в их сообществе с открытым исходным кодом pcbway.com/project/ .

Для получения более подробной информации посетите следующие статьи.
Почему PCBway
Возможности печатной платы
Высококачественная печатная плата

Этапы заказа печатной платы в компании PCBWay

Чтобы заказать печатную плату, сначала посетите PCBWay.com 90.

Затем введите следующие детали:

  1. PCB Размер
  2. (Длина и ширина) в MM & PCB Количество

    0
  3. Выбрать Маскирующая цвет для PCB
  4. Выбор Страна и Способ доставки
  5. Нажмите кнопку « Сохранить в корзину ».

    Затем нажмите « Отправить заказ сейчас », чтобы разместить заказ.

    После этого они просмотрят файл Gerber и соответственно подтвердят заказ.

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

    Как сделать самодельную печатную плату для этого проекта 4017

    Этапы изготовления световой схемы датчика движения на печатной плате:

    Шаг 1 : Распечатайте макет печатной платы и наклейте ее на акриловый лист

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

    Шаг 2: Просверлите отверстия для компонентов на печатной плате

    Теперь просверлите отверстия на печатной плате для компонентов в соответствии с компоновкой печатной платы. Здесь я использовал двигатель постоянного тока 555 для сверления отверстий. Также для сверления можно использовать ручную дрель.

    Шаг 3: Разместите и соедините все компоненты, как показано на схеме печатной платы.Здесь я использовал дополнительные выводы компонентов для соединения этих компонентов.

    После этого я спаял все компоненты согласно схеме.

    Теперь наша плата выключателя света с датчиком движения готова.

    Проверка переключателя датчика движения

    Теперь подключите питание 5 В постоянного тока и лампочку переменного тока в соответствии со схемой.

    Соблюдайте меры предосторожности при работе с напряжением 110В \ 220В переменного тока.

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

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

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

    Надеюсь, вам понравился этот проект по электронике. Спасибо за ваше время.

    Проверьте, передает ли ваш пульт дистанционного управления инфракрасный (ИК) сигнал

    ВАЖНО: Эта статья относится только к определенным продуктам и/или операционным системам.Подробную информацию см. в разделе «Применимые продукты и категории ».

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

    Примечание: ИК-пульт дистанционного управления будет иметь символ (ИК), за исключением ИК-пультов дистанционного управления устройств Android TV™, выпущенных в 2016 году.

    Прежде чем начать

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

    • Цифровой фотоаппарат
    • Видеокамера
    • Мобильный телефон с камерой

    Примечание: Некоторые мобильные телефоны и некоторые модели iPhone® нельзя использовать, поскольку встроенные камеры имеют фильтр, удаляющий инфракрасное излучение. Используйте другое устройство или обратитесь к производителю, чтобы узнать, можно ли отключить ИК-фильтр.

    Проверьте, посылает ли ИК-пульт дистанционного управления инфракрасный сигнал

    ВАЖНО: Если ваш телевизор поставляется с одним из новых пультов дистанционного управления Bluetooth®, например RMF-TX500U, RMF-TX600U или RMF-TX611U, используйте только зеленую кнопку Power для проверки наличия ИК-сигнала.

    1. Включите камеру/видеокамеру или камеру мобильного телефона.
    2. Направьте конец пульта дистанционного управления с ИК-излучателем на видоискатель или экран вашего фотоаппарата/видеокамеры или мобильного телефона.
    3. Нажмите и удерживайте одну из кнопок пульта дистанционного управления (зеленая кнопка питания для некоторых новых пультов Bluetooth) .
    4. Посмотрите в видоискатель или на экран своего фотоаппарата/видеокамеры или мобильного телефона.
      • Если пульт дистанционного управления посылает сигнал, вы должны увидеть свет в видоискателе или на экране вашего фотоаппарата/видеокамеры или мобильного телефона при нажатии кнопки на пульте дистанционного управления.

    Примечания:
    • Если вы видите инфракрасный свет, даже если не нажимаете кнопку, возможно, одна из кнопок на пульте застряла, а другие кнопки больше не работают.Если это так:
      1. Извлеките батареи.
      2. Нажмите и отпустите каждую кнопку пару раз, чтобы посмотреть, сможете ли вы освободить застрявшую кнопку.
      3. Вставьте батарейки и снова проверьте пульт.
    • Используйте свежие батарейки в пульте дистанционного управления.
      • Если вы не видите инфракрасный свет или он тусклый при нажатии кнопки, возможно, разрядился аккумулятор.
    • Если вы продолжаете видеть свет, даже когда не нажимаете кнопку, или если вы не видите инфракрасного света при нажатии определенной кнопки, замените пульт дистанционного управления.

    ИК-пульт дистанционного управления

    Мы можем использовать любой ИК-пульт дистанционного управления для включения или выключения бытовой техники с помощью схемы выключателя света ИК-пульта дистанционного управления. В этой схеме используется ИК-приемник TSOP 1738 или вы также можете использовать TSOP 1736, эти ИК-датчики способны принимать ИК-сигналы от 36 кГц до 38 кГц от любого пульта дистанционного управления.


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

    Принципиальная схема

    Необходимые компоненты

    1. ТСОП 1738
    2. ИЦ 7805
    3. ИС 555
    4. ИС 4017
    5. Реле 9 В
    6. Транзистор BC547
    7. Диод 1N4007
    8. Резистор 100 кОм = 2, 330 Ом
    9. Конденсатор 0,01 мкФ = 2, 10 мкФ
    10. Аккумулятор 9 В

    Строительство и работа

    Эта схема получает любые ИК (инфракрасные) сигналы от пульта дистанционного управления и заставляет включать и выключать электроприборы, здесь мы взяли электрическую лампочку в качестве цели и подключили ее в реле как между общими и нормально разомкнутыми (N/O) клеммами. реле, и это реле получает питание от 9-вольтовой батареи.

    ИС

    IC LM7805 Regulator обеспечивает регулируемое питание 5 В постоянного тока для ИК-датчика, таймера и счетчика IC. Выход датчика TSOP 1738 соединен с триггерным выводом ИС таймера, когда ИК-сигнал, полученный TSOP 1738, генерирует выходной сигнал и запускает ИС таймера, здесь ИС таймера настроена на моностабильный мультивибратор и, следовательно, производит одиночный импульс, зависит от резистора таймера (R2) и значение конденсатора (C2).

    Выходной сигнал таймера подается на тактовый вход IC 4017, и эта IC считает часы. Если счет начинается с нуля, то выход Q1 становится ВЫСОКИМ, затем транзистор BC 547 включается и заставляет реле получить заземление, затем обмотку реле. получает питание и притягивает рычаг к нормально разомкнутому контакту, затем лампочка получает питание и начинает светиться.

    Если микросхема счетчика получает импульс от микросхемы таймера и счетчик начинает счет с единицы (Q1 — ВЫСОКИЙ), тогда выход Q2 становится ВЫСОКИМ, и этот сигнал смещается на вывод сброса 15, и, следовательно, все данные на счетчике сбрасываются, поэтому Q1 становится низким или ноль, затем транзистор выключается, поэтому реле также выключается, поэтому лампочка отключается от источника переменного тока, и лампочка выключается.

    Примечание. Эта цепь задействована при обращении с источником переменного тока высокого напряжения. Обращайтесь с особой осторожностью.

    Переключатель ИК-датчика — вкл./выкл.

    Какой дайвер

    У меня есть переключатель инфракрасного датчика (вкл/выкл) и светодиодная лента. Какой драйвер мне нужен
    Спасибо

    10.03.2021 Тим Грэм Ответь на это Ответы

    Драйвер светодиода 8 Вт — SY9980

    10.04.2021 Джон Аткинсон Удерживающий кронштейн

    Привет,
    Есть ли какой-либо тип кронштейна, который можно установить под кухонным гарнитуром вне поля зрения вместо того, чтобы просверливать кухонные гарнитуры Карниз/ламбрекен?
    Спасибо

    02. 14.2021 Филип Морган Ответь на это Ответы

    Датчик необходимо утопить.

    02.15.2021 Джон Аткинсон Switch Behavior

    Предлагает ли коммутатор возможность фиксации?

    т.е. оставаться включенным или выключенным при движении руки перед датчиком?

    Спасибо,

    Ник

    09.15.2016 Ответь на это Ответы

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

    19. 09.2016 Джон Аткинсон

    Управление освещением с помощью любого ИК-пульта – TECH Inside

    /**

    * @file      main.C

    * @author atakan s.

    * @date 01/01/2018

    * @version 1.0

    * @Brief IR дистанционного управления Управляемый выключатель

    *

    * @Copyright Copyright (C) 2018 Atakan Sarioglu

    *

    *  Настоящим предоставляется бесплатное разрешение любому лицу, получившему

    * копию этого программного обеспечения и связанных с ним файлов документации («Программное обеспечение»),

    *  работать с Программным обеспечением без ограничений, включая без ограничений

    *  права на использование, копирование, изменение, слияние, публикацию, распространение, сублицензирование,

    *  и/или продажу копий Программного обеспечения, а также разрешение на это лицам, которым предоставляется Программное обеспечение

    *  , при соблюдении следующих условий:

    *  

    *  Приведенное выше уведомление об авторских правах и данное уведомление о разрешении должны быть включены во все копии или существенные части Программного обеспечения.

    *

    * Программное обеспечение предусмотрено «как есть», без гарантии любых видов, экспресс или

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

    * Фитнес для определенной цели и неинфекционирования.

    *  АВТОРЫ ИЛИ ОБЛАДАТЕЛИ АВТОРСКИМ ПРАВОМ НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЕТЕНЗИИ, УЩЕРБ ИЛИ ИНУЮ

    *  ОТВЕТСТВЕННОСТЬ, БУДЬ ЛИ В ДЕЙСТВИИ ДОГОВОРА, ДЕЛИКТА ИЛИ ИНЫМ ОБРАЗОМ, ВОЗНИКАЮЩИХ В СВЯЗИ С

    *  ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИЛИ ИСПОЛЬЗОВАНИЕ ИЛИ ДРУГОЕ

    *  СДЕЛКИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ.

    * /

    #include «Main.h»

    // — Тип определения

    // — Тип определений

    Typedef Enum {

    SINIT,

    SSYINC,

    PROMBLEWAIT,

    SBITWAIT,

    SBITH

    sBitLow,

    sCompare,

    sToggle,

    }tStates;

    typedef struct{

    unsigned char State:4;

    символ без знака isFirstPattern:1;

    символ без знака isPatternSaved:1;

    беззнаковый символ зарезервировано:2;

    }tFlags;

     

    //— Переменные

    unsigned char save[6] = {0, 0, 0, 0, 0, 0};

    кандидат без знака[6];

    беззнаковый символ tickCounter = 0;

    беззнаковый символ bitCounter = 0;

    беззнаковый символ repeatCounter = 0;

    беззнаковое длинное целое longtermCounter = 0;

    флаги tFlags;

     

    void setup(void){

        //— Конфигурация таймера

    mStartTimer();

    //— Конфигурация порта

    mRelayOff();

    mSetupIO();

    //— Инициализировать флаги.

    флаги.Состояние = sInit;

    flags.isFirstPattern = ИСТИНА;

    flags.isPatternSaved = ЛОЖЬ;

    }

     

    void loop(void){

        //— Запланированные задачи.

        switch(flags.State){

            case sInit:

                //— Обработка долгосрочных задержек.

                if(longtermCounter){

                    longtermCounter—;

                    разрыв;

               }

     

                //— Инициализируем кандидата.

                кандидат[0]=0;

                кандидат[1]=0;

                кандидат[2]=0;

                кандидат[3]=0;

                кандидат[4]=0;

                кандидат[5]=0;

     

                //— Сбросить счетчики.

                bitCounter = 0;

                tickCounter = 0;

     

                //— Переходим к шагу синхронизации.

                флаги.Состояние = синхронизация;

            перерыв;

            case sSync:

                //— Подождите, чтобы обнаружить межсигнальное пространство.

                if(mIsInputLow()){

                            tickCounter++;

                }else{

                    tickCounter = 0;

                }

     

                //— Когда обнаружен длинный пробел, начните ждать преамбулы.

                if(tickCounter > CNT_IDLE){

                    tickCounter = 0;

                     флаги.Состояние = sPreambleWait;

                }

            перерыв;

            case sPreambleWait:

                //— При обнаружении спадающего фронта продолжайте.

                if((mIsInputLow()) && (tickCounter > CNT_PREAMBLE_MIN)){

                    флаги.State = sBitWait;

                    tickCounter = 0;

                    разрыв;

               }

     

                //— Считайте по большому счету.

                if(mIsInputHigh()){

                            tickCounter++;

                }else{

                    tickCounter = 0;

                }

            перерыв;

            case sBitWait:

                //— При обнаружении нарастающего фронта продолжайте.

                if(mIsInputHigh()){

                            флаги.State = sBitHigh;

                    tickCounter = 0;

                    разрыв;

               }

     

                //— Считаем по младшим.

                if(mIsInputLow()){

                            tickCounter++;

                }else{

                    tickCounter = 0;

               }

     

                //— Проверка тайм-аута.

                if(tickCounter > CNT_IDLE){

                    flags.State = sInit;

                }

            перерыв;

            case sBitHigh:

                //— При обнаружении заднего фронта продолжайте.

                if(mIsInputLow()){

                   флаги.State = sBitLow;

                    tickCounter = 0;

                    разрыв;

               }

     

                //— Считайте по большому счету.

                if(mIsInputHigh()){

                            tickCounter++;

                }else{

                    tickCounter = 0;

               }

     

                //— Проверка тайм-аута.

                if(tickCounter > CNT_IDLE){

                    flags.State = sInit;

                }

            перерыв;

            case sBitLow:

                //— При обнаружении нарастающего фронта продолжайте.

                if(mIsInputHigh()){

                    //— Если ширина пробела длинная, то это метка.

                   if(tickCounter >= CNT_MARK_MIN){

                        //— Установите соответствующий бит.

                       mSetBit(кандидат, битсчетчик);

                   }

     

                   //— Увеличьте счетчик битов.

                    bitCounter++;

     

                    //— Если достигнуто максимальное количество битов, остальные игнорируются.

                   if(bitCounter >= BITNUM_MAX){

                        //— Идите и проверьте кандидата.

                       флаги.State = sCompare;

                   }else{

                       //— В противном случае перейдите к обнаружению следующего бита.

                        флаги.State = sBitHigh;

                   }

                    tickCounter = 0;

                    разрыв;

                }else{

                     //— Считать низкое время.

                    tickCounter++;

                }

     

                //— Если бездействует, то шаблон завершается.

                if(tickCounter > CNT_BITLEN_MAX){

                   //— Проверьте длину шаблона.

                   if(bitCounter > MIN_NUMBEROFBITS){

                        //— Идите и проверьте кандидата.

                       флаги.State = sCompare;

                        tickCounter = 0;

                   }else{

                        //— Игнорировать.

                        флаги.State = sInit;

                   }

                }

            разрыв;

            case sCompare:

                //— Если это первый раз, временно сохраните полученное как сохраненное.

                if(flags.isFirstPattern){

                    сохранено[0]=кандидат[0];

                    сохранено[1]=кандидат[1];

                    сохранено[2]=кандидат[2];

                    сохранено[3]=кандидат[3];

                    сохранено[4]=кандидат[4];

                    сохранено[5]=кандидат[5];

     

                    //— Снимите флажок.

                   флаги.isFirstPattern = ЛОЖЬ;

     

                    //— Это первый повтор.

                    repeatCounter = 1;

                }else{

                    //— Сравните кандидата с сохраненным.

    Если (сохранено [0] == кандидат [0]

    && сохранено [1] == кандидат [1]

    && сохранены [2] == кандидат [2]

    && сохранены [3] == кандидат [3]

    && сохранены [4] == кандидата [4]

    && сохранены [5] == кандидат [5])

    {

    // — если существует сохраненный шаблон, идут переключить реле на спинке шаблонов.

                       if(flags.isPatternSaved){

                            flags.State = sToggle;

                            tickCounter = 0;

                            разрыв;

                       }

                       //— Если еще не сохранено, проверьте счетчик повторов.

                       else{

                           //— Продолжайте.

                           repeatCounter++;

                           if(repeatCounter >= REPEAT_TO_SAVE){

                                 //— Сохранить.

                               flags.isPatternSaved = TRUE;

     

                               //— Переключение.

                               флаги.State = sToggle;

                               tickCounter = 0;

                                разрыв;

    }

    }

    } else {

    // — Если первый шаблон не повторяется, а затем сбросьте процесс.

                       if(!flags. isPatternSaved){

                            flags.isFirstPattern = TRUE;

                       }

     

                        //— Начать заново.

                        repeatCounter = 0;

                   }

                }

     

                //— Перейти в исходное состояние.

                флаги.State = sInit;

            перерыв;

            case sToggle:

                //— Переключите реле.

                mRelayToggle();

     

                //— Установите время устранения дребезга.

                longtermCounter = CNT_DEBOUNCE;

     

                //— Перейти в исходное состояние.

                флаги.State = sInit;

            перерыв;

        }// конечный переключатель

        

        //— Создание базы времени.

        пока(!mIsTimerExpired());

        mResetTimer();

        mClearWatchdog();

    }

     

    //— Program

    void main(void){

        // Настройки MCU и периферии.

alexxlab

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *