MYCSS

2017-04-06

Контроль освітлення за допомогою ультразвукового сенсору. Програма v2.0.0. Кнопка "Людина присутня" з світловою і звуковою індикацією.

Після доопрацювання апаратної частини схеми "Контроль освітлення у туалетній кімнаті за допомогою ультразвукового сенсору, кнопка "Людина присутня"" з'явилася наступна версія програмного забезпечення для реалізацій цих та додаткових функцій.

Release v2.0.0. Кнопка "Людина присутня" з світловою і звуковою індикацією.

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

Зміни. Що це дає.

По-перше, показ стану дозволяє полегшити правильне позиціювання сенсора, у малому приміщенні. По-друге, якщо сенсор не може явно визначити наявність людини, людина може заявити про себе натисканням кнопки "Людина присутня". При цьому світло не вимкнеться до тієї пори поки двері не відчиняться.

Логіка роботи.

У разі визначення відсутності людини у приміщені, індикація, котра вбудована у кнопку "Людина присутня", починає періодично мигати. Якщо протягом 45 секунд людина не визначиться знову, то світло автоматично вимкнеться. Індикація продовжуватиме мигати, щоб у темряві можна було натиснути на кнопку для вмикання світла і заявити про те що "Людина присутня".
Після автоматичного вимкнення світла ще протягом 1 хвилини очікується натискання кнопки, або  очікується автоматичне визначення людини ультразвуковим сенсором.
Якщо змін у стані визначення не має, індикатор та ультразвуковий сенсор вимикаються, а схема переходить до пониженого споживання енергії - сну. Якщо людина натиснула кнопку "Людина присутня" у любий період часу, то індикатор у кнопці починає світитися постійно, світло вмикається, до тієї пори поки не зміниться стан відчинення дверей, або не спрацює аварійний таймер.

Додаткове доопрацювання.

Це додавання звукового сповіщення до візуального, у разі проблеми з визначенням присутності людини ультразвуковим датчиком, кожні 5 секунд, лунає короткий сигнал - "біп", попереджуючи про проблеми. Кількість "біпів" постійно збільшується пропорційно від 1 до 3х. Після останнього 3х кратного "біпу" буде вимкнення автоматичне вимкнення світла.

Аварійний таймер.

До схеми введено механізм аварійного відключення світла за таймером часу. Максимальний час постійно ввімкнено світла при:
  • зачинених дверях, становить приблизно 1 годину.
  • відчинених дверях, становить приблизно 15 хвилин.
Відновити роботу після аварійного вимкнення, можливо циклом відкриттям та закриттям дверей.

Особливості реалізації пристрою.

Програма не використовує точний лічильник часу. Для пауз, між циклами опитування, програма використовує режим сну, і програмований аварійний таймер "WatchDog" який виводить програму з режиму сну, на наступну команду.

Ознайомитися з програмою можливо за посиланням : Git код проекту "UltrasonicSensor"
Проект створений у середовищі розробника MPLAB IDE v3.55.
Програма написана мовою програмування С. Компілятор Microchip XC8 (v1.41) Free Mode.
Схема за якою працює програма надано далі:
Схема сенсора з додатковою кнопкою "людина присутня" та buzzer
Пошивка для програмування мікросхеми Microchip PIC12F675 доступна за посиланням.

Схема споживає 0.5W у активному режимі, і 0.0...W у сплячому режимі.

Немає коментарів:

Коли забув ти рідну мову, біднієш духом ти щодня...
When you forgot your native language you would become a poor at spirit every day ...

Д.Білоус / D.Bilous
Рабів до раю не пускають. Будь вільним!

ipv6 ready