Добавлен: 12.01.2024
Просмотров: 21
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Содержание
Введение ................................................................................................................... 4 1 Теоретическая часть ............................................................................................ 6 1.1 Обзор состояния вопроса ................................................................................. 6 1.2 Практическое применение ............................................................................... 7 1.3 Основные разновидности светильников ........................................................... 7 1.4 Принцип работы ................................................................................................. 8 1.5 Плюсы использования осветительного прибора .............................................. 9 2. Практическая часть ............................................................................................ 10 2.1 Технические характеристики .......................................................................... 10 2.2 Описание используемых компонентов ........................................................... 11 2.3 Описание разработанных схем ........................................................................ 17 2.4 Регулировка ...................................................................................................... 21 2.5 Работа с прибором ............................................................................................ 21 3 Полученные результаты ..................................................................................... 23
Заключение ............................................................................................................. 24
Список используемых источников ....................................................................... 25
Приложение А ........................................................................................................ 26
Приложение Б ........................................................................................................ 35
4
Введение
Осветительные приборы (ОП) делятся на светильники, прожекторы и проекторы. В данной курсовой работе будет рассматриваться ночник с датчиком освещения, разными режимами подсветки и со встроенным таймером выключения прибора.
Светильник
– искусственный источник света, прибор, перераспределяющий свет лампы. Основной задачей светильника является рассеивание и направление света для освещения помещений, открытых пространств и отдельных предметов. В общей классификации выделяется два типа светильников: промышленные и бытовые. Первые предназначены для офисов и производственных помещений, вторые – для жилых домов и квартир.
Светильник является украшением интерьера, в отличие от утилитарных светильников, роль декоративных невелика.
Одним из видов светильников является ночник. Это небольшой декоративный светильник, используемый для подсветки тёмных помещений, которые становятся тёмными время от времени. Данный вид светильников облегчает ориентирование в помещении. Люди часто используют ночники ради ощущения защищённости, которое они дают, освещая помещение, ради предоставляемых ими удобств или при боязни темноты, особенно у маленьких детей. Некоторые путешественники возят с собой ночники и включают их в месте временного проживания, чтобы избежать травм ночью в непривычной им обстановке.
В процессе развития технологий качество осветительных приборов значительно улучшилось. От примитивных масляных, свечных лампад, керосиновых ламп и газовых фонарей до современных электрических светильников с источником света в виде ламп накаливания, люминесцентных ламп и газоразрядных ламп высокого давления.
Современный светильник состоит из осветительной арматуры и одного или нескольких источников света. Осветительная арматура предназначена для перераспределения в пространстве светового потока и защиты глаз от слепящего
5 действия источника света. Важнейшей её частью является оптическая система светильника, состоящая из оптических элементов, участвующих в перераспределении и преобразовании светового потока. Светильники должны отвечать комплексу светотехнических, технико-экономических, эстетических и монтажно-эксплуатационных требований, а также быть безопасными и надёжными в работе
Многие светильники – изделия массового производства, их выпуск составляет несколько десятков млн. в год. В особых случаях изготавливают уникальные осветительные приборы, имеющие большую художественную ценность. Например, люстры Московского Кремля, Эрмитажа и Большого театра.
6
1 Теоретическая часть
1.1 Обзор состояния вопроса
Все светильники можно разделить по нескольким пунктам:
1. По светотехническим функциям:
– осветительные приборы;
– светосигнальные приборы.
2. По условиям эксплуатации:
– световые приборы для помещения;
– световые приборы для открытых пространств.
3. По способу питания лампы:
– сетевые;
– с индивидуальным источником питания;
– комбинированного питания.
4. По типу крепления прибора:
– стационарные;
– съёмные.
Первый вариант крепится на основу и рассчитан на постоянное нахождение на одном месте. Светильники второго типа крепятся на поверхность липучками, крючками, кронштейнами или втыкаются в зарядное устройство, выполняющее функцию базы. По устройству, лампы бывают накладными и встраиваемые.
5. По типу излучаемых волн:
– инфракрасные. Включение происходит при понижении и повышении температуры в помещении.
– Микроволновые. Включение происходит тогда, когда сенсор реагирует на изменение частоты волн на территории, которая попадает в сектор его действия.
– Ультразвуковые. Работают по принципу эхо локации, который применяется при изготовлении РЛС и сонаров.
– Комбинированные. Состоят из двух и более датчиков, что повышает
7 надежность приборов, но увеличивает потребление ими энергии.
Существует несколько общепринятых характеристик, основанных на понятиях о видимом свете. К таким характеристикам относятся:
– световой поток;
– сила света;
– световая отдача;
– освещенность;
– цветовая температура;
– индекс цветопередачи;
– яркость;
– светимость;
– коэффициент пульсаций;
– показатели ослепленности.
1.2 Практическое применение
Светильники применяются чаще всего для улучшения видимости пространств. Существуют различные виды данного устройства, каждый из которых обладает определённой областью применения. К примеру, ночники удобны тем, что своим светом обозначают размеры комнаты без необходимости включать основное освещение, а также помогают не споткнуться, не упасть на лестнице, заметить домашнее животное или обозначить аварийный выход.
Домовладельцы могут размещать ночники в ванных и кухнях, чтобы избежать включения основного света и облегчить адаптацию зрения к яркому освещению.
При этом у ночника могут быть встроены различные режимы работы, например, таймер выключения прибора, что позволяет контролировать свет.
1.3 Основные разновидности светильников
В зависимости от места использования светильники разделяются на две группы:
– внутренние;
8
– уличные.
Внутренние светильники не имеют герметичного корпуса. Они рассчитаны исключительно для применения внутри помещения. При их изготовлении акцент ставится помимо технической составляющей, ещё и на декоративные качества. Нередко их рассеиватель делается из пластика, а не стекла. Уличный светильник отличается достаточно крепким корпусом. Его внутреннее электрооборудование защищено от проникновения влаги. Корпус имеет высокую устойчивость к ультрафиолету.
Также осветительное оборудование можно квалифицировать на два вида по применяемому источнику света:
– встроенный;
– сменяемые лампы.
Большинство современных светильников оснащаются встроенными светодиодами. Такой источник света имеет большой ресурс, но является несменяемым. При его выходе из строя покупается новый светильник.
Светильник со сменяемой лампой может оснащаться лампой накаливания. Он дешевле и долговечнее. При перегорании одного источника света просто закручивается или вставляется другой. Это делает осветительный прибор более удобным в использовании.
1.4 Принцип работы
От грамотно подобранных и правильно установленных светильников зависит уровень комфорта пребывания в помещении и безопасность людей.
Одним из элементов, упрощающих передвижение в темное время суток, является ночник с датчиком освещения.
Датчик освещения срабатывает в зависимости от степени освещённости пространства. Чем темнее свет в помещении, тем ярче светит ночник и наоборот.
Чаще всего датчики освещения изготавливаются на основе фотодиода, фоторезистора или фототранзистора. Датчик подключён к усилителю сигнала, который соединен с силовым реле, подающим питание на приборы освещения.
9
В зависимости от освещённости изменяется сопротивление чувствительного элемента. Чем меньше освещённость, тем больше его сопротивление. При достижении заданной величины напряжения датчик выдает сигнал на усилитель, который приводит в действие реле. Реле замыкает цепь приборов освещения.
1.5 Плюсы использования осветительного прибора
Данное устройство имеет значительные преимущества в использовании:
– пожарная безопасность – ночник практически не нагревается, если сверху на прибор попадает бумага или ткань, это не будет являться причиной возгорания;
– экономичность – минимальное потребление энергии позволяет использовать прибор всю ночь;
– длительный срок работы;
– наличие дополнительных функций – регулировка яркости света, возможность менять цвет освещения и т.д.;
– простота в установке и эксплуатации;
– комфорт передвижения по дому в ночное время суток;
– слабый свет ночника помогает сориентироваться в пространстве и не травмироваться.
Не смотря на длительный срок службы прибора, светодиод со временем тускнеет и теряет яркость из-за деградации химических и физических параметров светоизлучающего кристалла. Скорость деградации светодиода напрямую зависит от качества теплоотвода.
10
2. Практическая часть
2.1 Технические характеристики
Для разработки прибора «Ночник» использовались следующие компоненты:
– микроконтроллер Arduino Nano V3.0;
– символьный дисплей LCD 1602А;
– I2C адаптер для LCD дисплеев;
– тактовые кнопки;
– светодиодная лента WS2812B;
– фоторезистор;
– резисторы 10 кОм и 220 Ом;
– макетная плата для спайки;
– зарядное устройство 5 В.
Характеристики платы Arduino Nano: большая часть параметров платы определяется используемым микроконтроллером.
– Тип микроконтроллера ATmega168 ATmega328;
– архитектура AVR;
– напряжение питания микроконтроллера 5 В;
– номинальное напряжение питания платы 7-12 В;
– предельно-допустимое напряжение питания платы 6-20 В;
– тактовая частота 16 МГц;
– объём памяти программ (FLASH) 16 кбайт и 32 кбайт;
– объём оперативной памяти (SRAM) 1 кбайт и 2 кбайт.
Характеристики Arduino LCD 1602А дисплея:
– I2C интерфейс на микросхеме: PCF85741;
– контролер дисплея: HD44780;
– регулировка контрастности: Есть;
11
– количество строк: 2;
– количество символов в строке: 16;
– общее количество символов: 32;
– размер пикселя: 0,5 x 0,5 мм;
– размеры платы индикатора: 80 x 36 x 15 мм;
– видимая область экрана: 64,5 x 14 мм;
– количество пикселей в знаке: 40;
– цвет фона: синий;
– цвет подсветки: белый;
– напряжение питания: 5 В;
– диапазон рабочих температур от 0 до +60 ºC.
Характеристики светодиодной ленты WS2812B:
– размер светодиода: 5 х 5 мм;
– частота ШИМ: 400 Гц;
– скорость передачи данных: 800 кГц;
– размер данных: 24 бита на светодиод;
– напряжение питания: 5 В;
– потребление при нулевой яркости: 1 мА на светодиод;
– потребление при максимальной яркости: 60 мА на светодиод;
– цветность: RGB, 256 оттенков на канал, 16 миллионов цветов.
2.2 Описание используемых компонентов
1. Микроконтроллер Arduino Nano V3.0.
Arduino Nano – открытая и компактная платформа с семейства Arduino, построенная на микроконтроллере ATmega168 или ATmega328, имеет небольшие размеры и может использоваться в лабораторных работах. Arduino
Nano – это уменьшенный аналог Arduino Uno, отличается форм-фактором платы, которая в 2-2,5 раза меньше (19 х 43 мм), чем Arduino Uno (53 х 69 мм),
12 в отсутствии силового разъёма постоянного тока и работе через кабель Mini-B
USB. Данный компонент можно рассмотреть на Рисунке 2.2.1.
Рисунок 2.2.1 – Плата Arduino Nano ATmega328 V3.0.
2. Символьный дисплей LCD 1602А.
CD 1602A представляет собой электронный модуль, основанный на драйвере HD44780 от Hitachi. LCD1602 имеет 16 контактов и может работать в
4-битном режиме (с использованием только 4 линии данных) или 8-битном режиме (с использованием всех 8 строк данных), так же можно использовать интерфейс I2C. Данный компонент можно рассмотреть на Рисунке 2.2.2.
Рисунок 1.2.2 - Дисплей LCD 1602А.
13 3. I2C адаптер для LCD дисплеев.
Адаптер построен на базе микроконтроллера STM32F030F4, снабжен собственным стабилизатором напряжения, резистором настройки контрастности дисплея и переключателем режима работы: «On» и «Adr». Если переключатель установлен в положение «On», то адаптер находится в основном режиме работы, при котором осуществляется обмен данными между шинами LCD и I2C, что позволяет работать с LCD дисплеем по шине I2C. Данный компонент можно рассмотреть на Рисунке 2.2.3.
Рисунок 2.2.2 - Адаптер IIC-I2C для LCD 1602.
4. Тактовые кнопки.
Кнопка является простейшим устройством, при помощи которого можно управлять ходом программы на микроконтроллере, но физически она выполняет очень простую функцию: замыкает и размыкает контакт.
Тактовые кнопки – замыкают или размыкают контакт. Модель тактовой кнопки можно рассмотреть на Рисунке 2.2.4. У обычных тактовых кнопок ноги соединены вдоль через корпус (Рисунок 2.2.5.). Переключатели – обычно имеют три контакта, общий COM, нормально открытый NO и нормально закрытый NC.
При отпущенной кнопке замкнута цепь COM-NC, при нажатой замыкается
COM-NO (Рисунок 2.2.6.).
14
Рисунок 2.2.3 - Модуль тактовой кнопки.
Рисунок 2.2.4 – Соединение ног тактовой кнопки.
Рисунок 2.2.5 - Замыкание цепей.
5. Адресная светодиодная лента WS2812B.
Адресная лента управляется по специальному цифровому протоколу. Это означает, что, если просто воткнуть ленту в питание ничего не произойдёт, т.е. проверить ленту без управляющего контроллера нельзя.
15
Изменение цвета свечения светодиодной ленты может происходить только с помощью контроллера, который выдает на соответствующие дорожки многоцветной светодиодной ленты сигналы определённой величины напряжения. В данное время наиболее распространённым видом ленты является
- WS2812B. Чип WS2812B размещён внутри светодиода, таким образом один чип управляет цветом одного диода. Питание ленты – 5В. Данный компонент можно рассмотреть на Рисунке 2.2.7.
Рисунок 2.2.6 - Светодиодная лента WS2812B
.
6. Фоторезистор (датчик освещённости).
Фоторезистор (LDR, Light Depender Resistor) — компонент, меняющий сопротивление в зависимости от количества света, падающего на него. В полной темноте он имеет максимальное сопротивление в сотни кОм, а по мере роста освещённости сопротивление уменьшается до десятков кОм. Таким образом фоторезистор Arduino позволяет контролировать уровень освещенности и реагировать на его изменение (Рисунок 2.2.8.).
16
Рисунок 2.2.7 - Модуль фоторезистора.
7. Резисторы.
Резистор является важнейшим элементом электрической цепи, отвечающий за электрическое сопротивление, которое, в свою очередь, применяется для преобразования силы тока в напряжение и наоборот, а также для ограничения силы тока. Благодаря данному элементу происходит предотвращение короткого замыкания компонента. Данный элемент можно рассмотреть на Рисунке 2.2.9.
Рисунок 2.2.8 - Резистор.
17
2.3 Описание разработанных схем
Принципиальная схема – схема, определяющая полный состав элементов и связей между ними и дающая представление о принципах работы устройства.
Принципиальная схема платы Arduino Nano приводится в приложении Б.
Плата Ардуино Нано имеет 14 цифровых контактов, которые помечаются буквой D (цифровой, digital). Контакты используются как входы и выходы, у каждого имеется подтягивающий резистор. Аналоговые пины обозначаются буквой А и используются как входы. У них отсутствую подтягивающие резисторы, они измеряют поданное на них напряжение и возвращают значение при помощи функции analogRead(). На некоторых цифровых пинах можно увидеть значок . Такие контакты можно использовать в качестве выходов
ШИМ. Ардуино нано оснащена шестью такими контактами – это пины D3, D5,
D6, D9, D10, D11. Для работы с ШИМ выводами используется функция analogWrite() (Рисунок 2.3.1.).
Рисунок 2.3.1 - Распиновка Arduino Nano.
18
Описание пинов:
– цифровые входы/выходы: D0-D13;
– аналоговые входы/выходы: A0-A7 (10-разрядный АЦП);
–
ШИМ: пины 3, 5, 6, 9, 10, 11;
–
UART : D0 и D1 (TX и RX соответственно);
–
I2C: SDA – A4, SCL -A5;
–
SPI: MOSI – 11, MISO – 12, SCK – 13, SS(10);
–
0 – TX (передача данных UART), D0;
–
1 – RX (прием данных UART), D1. RX и TX могут использоваться для связи по последовательному интерфейсу или как обычные порты данных;
–
3, 29 – сброс;
–
4, 29 – земля;
–
5 – D2, прерывание INT0;
–
6 – D3, прерывание INT1 / ШИМ / AIN0;
–
7 – A4, счетчик T0 / шина I2C SDA / AIN1. AIN0 и AIN1 – входы для быстродействующего аналогового компаратора;
–
8 – A5, счетчик T1 / шина I2C SCL / ШИМ;
–
9 – 16 – порты D6-D13, из которых D6 (9й), D9 (12й), D10 (13й) и D11
(14й) используются как выходы ШИМ. D13 (16й пин) – светодиод. Также D10 –
SS, D11 – MOSI, D12 – MISO, D13 – SCK используются для связи по интерфейсу
SPI;
–
18 – AREF, это опорное напряжение для АЦП микроконтроллера;
–
19 – 26: аналоговые входы A0… A7. Разрядность АЦП 10 бит. A4 (SDA),
A5 (SCL) – используются для связи по шине I2C. Для создания используется специальная библиотека Wire.
Микроконтроллеры обладают большими функциональными возможностями, но у них есть один недостаток – это ограниченное, по сравнению с Arduino Mega, число выводов. Поэтому на этапе составления схемы устройства следует продумать, каким образом можно максимально упростить
19 проект, чтобы сократить число нужных для подключения контактов.
Распиновка LCD модуля 1602 (Рисунок 2.3.2.).
Рисунок 2.3.2 - Распиновка LCD модуля 1602.
Назначение выводов дисплея 1602.
Вывод
Обозначение
Пин Arduino Uno
1- земля GND;
GND
GND
2-питание 5 В;
VCC
5V
3-установка контрастности монитора;
VO
GND
4-команда, данные;
RS
11 5-записывание и чтение данных;
R/W
GND
6-enable;
E
12 7- линии данных;
DB0
—
8- линии данных;
DB1
—
9- линии данных;
DB2
—
10- линии данных;
DB3
—
11- линии данных;
DB4 5
20
Вывод
Обозначение
Пин Arduino Uno
12- линии данных;
DB5 4
13- линии данных;
DB6 3
14- линии данных;
DB7 2
15- плюс подсветки;
VCC
5V
16- минус подсветки;
GND
GND
Ниже представлена схема подключения LCD модуля 1602 к Arduino Nano при помощи модуля I2C (Рисунок 2.3.3).
Рисунок 2.3.3 - Схема подключения LCD модуля 1602 к Arduino Nano при помощи модуля I2C.
Модуль i2c для работы с LCD 1602 (Рисунок 2.3.4.).
Этот интерфейсный модуль позволяет уменьшить количество используемых выводов контроллера, вместо 8 или 4-битного соединения, требуется только 2 вывода (SDA и SCL).
–
Поддержка дисплеев: LCD 16×02 / 20×04;
– дополнительно: регулировка контрастности;
21
– напряжение питания. 5 В;
– интерфейс: I2C;
– размеры модуля: 54 мм x 19 мм x 15 мм.
Рисунок 2.3.4. - Схема модуля i2c для работы с LCD 1602.
2.4 Регулировка
Данное устройство легко в эксплуатации. Необходимо подключить прибор с помощью зарядного устройства к источнику питания и табло загорится, затем произойдёт включение устройства.
2.5 Работа с прибором
С помощью кнопок можно управлять различными функциями устройства.
По правую сторону дисплея находятся четыре тактовых кнопки. Две кнопки, расположенные ниже отвечают за увеличение и уменьшение времени таймера.
Две кнопки, расположенные в верху, включают и выключают таймер соответственно. При нажатии кнопки включения таймер начнёт обратный отчёт времени, при выключении – время сбрасывается. По левую сторону находится
22 кнопка переключения цветов освещения. Свет можно менять на синий, красный, зелёный, разноцветный и белый.
23
3 Полученные результаты
Результатом сборки и проектирования стал прибор под названием
«Ночник».
Прибор представляет собой светильник, который отвечает предъявленным к нему требованиям, а именно:
изменение цвета освещения при нажатии кнопки;
возможность настраивать время таймера.
Завершающим этапом курсовой работы было тестирование прибора.
Тесты были проведены в бытовых условиях. Тесты показали, что прибор готов к эксплуатации и работает в соответствии с ожидаемыми результатами.
24
Заключение
В результате выполнения курсовой работы согласно индивидуальному заданию был разработан прибор ночного освещения.
В ходе курсовой работы:
разработано устройство - ночник;
проведён анализ существующих реализаций данного устройства;
на основании результатов исследования предметной области был составлен список необходимых комплектующих.
Спроектированное устройство отвечает всем заданным требованиям.
Ночник удобен в транспортировке и не предъявляет особых требований к условиям хранения.
25
Список используемых источников
1 Ломаш, Д.А. Оформление бакалаврских работ для студентов направления подготовки 230100.62 – Информатика и вычислительная техника: учебно-методическое пособие; Рост. гос. ун-т путей сообщения. – Ростов н/Д,
2013. – 40 с.
2 Лаврентьев Б.Ф. Схемотехника электронных средств: уч. пособ. /
Б.Ф.Лаврентьев. – М.: Отечество, 2010. – 232 с.
3 Касаткин А.С. Электротехника: учебное пособие для вузов / А.С.
Касаткин, М.В. Немцов. – М.: Энергоатомиздат, 2012. – 273 с.
4 Чернов, А.В. Электроника и схемотехника [Электронный ресурс]:
Методические указания по курсовому проектированию / А.В. Чернов, О.О.
Карташов; ФГБОУ ВО РГУПС. – Ростов н/Д, 2017. – 28 с.
26
#include
Приложение А
Листинг кода
#include
LiquidCrystal_I2C LCD(0x27,20,2);
#include
#define NUM_L 59 // число диодов ленты
#define PIN 10
Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_L, PIN, NEO_GRB +
NEO_KHZ800); boolean f = false; boolean vst = false; unsigned int val = 0; int light; boolean w = true; boolean r = false; boolean g = false; boolean b = false; boolean mix = false; int s = 0; int m = 0; unsigned long timer; int count = 1; void setup() {
// put your setup code here, to run once: strip.begin(); strip.setBrightness(10); // яркость strip.clear(); strip.show(); pinMode(A0, INPUT);// фоторезистор pinMode(5, OUTPUT);// btn1 -min pinMode(6, OUTPUT);// btn2 +min pinMode(7, OUTPUT);// btn3 start pinMode(8, OUTPUT);// btn4 reset pinMode(9, OUTPUT);// btn5 light
27
LCD.init(); // инициализация дисплея
LCD.backlight(); // включение светодиодов
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s);
} void loop() {
// put your main code here, to run repeatedly:
// включение от фоторезистора val = analogRead(A0); light = val/100; if(vst == false)
{ lon();
}
// вычитается минута if(digitalRead(5))
{ delay(50); m=m-1; s=0; if(m<0)
{ m=0;
}
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s);
28
}
// прибавляется минута if(digitalRead(6))
{ delay(50); m=m+1; s=0;
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s);
}
// включение if(digitalRead(7) && (m>0 || s>0))
{ delay(100); if(s == 0)
{ s = 60; m = m-1;
} if(m<0)
{ m = 0;
} f = true;
}
// выключение if(digitalRead(8))
{ delay(100);
29 m = 0; s = 0;
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s); f = false;
}
//таймер while(f == true)
{
// вычитание 1 секунды if(millis()-timer>995)
{ timer = millis(); s=s-1;
// таймер достиг 0 if(s == 0 && m == 0)
{
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s); loff(); f = false;
}
// вычитание минуты if(s == 0)
30
{ s = 59; m = m-1; if(m<0)
{ m = 0;
}
}
// вывод таймера на дисплей if(f == true)
{
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer start");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s);
}
}
// остановка времени таймера if(digitalRead(7))
{ delay(100);
LCD.setCursor(2, 0);
LCD.print("Timer stop"); f = false;
}
}
// смена режима if(digitalRead(9))
{ if(vst == true)
31
{ vst = false;
} if(count == 0)
{ w = true; r = false; g = false; b = false; mix = false; delay(100); count=1; return;
} if(count == 1)
{ w = false; r = true; g = false; b = false; mix = false; delay(100); count=2; return;
} if(count == 2)
{ w = false; r = false; g = true; b = false;
32 mix = false; delay(100); count=3; return;
} if(count == 3)
{ w = false; r = false; g = false; b = true; mix = false; delay(100); count=4; return;
} if(count == 4)
{ w = false; r = false; g = false; b = false; mix = true; delay(100)
; count=0; return;
}
}
} void lon()
{ if(w == true)
33
{ white();
} if(r == true)
{ red();
} if(g == true)
{ green();
} if(b == true)
{ blue();
} if(mix == true)
{ rgb();
}
} void white()
{ strip.setBrightness(light); for(int i=0; i<=NUM_L; i++)
{ strip.setPixelColor(i, 0xffffff); strip.show();
}
} void loff()
{ vst = true; strip.setBrightness(0); strip.show();
} void red()
{
34 strip.setBrightness(light); for(int i=0; i<=NUM_L; i++)
{ strip.setPixelColor(i, 0xff0000); strip.show();
}
} void green()
{ strip.setBrightness(light); for(int i=0; i<=NUM_L; i++)
{ strip.setPixelColor(i, 0x00ff00); strip.show();
}
} void blue()
{ strip.setBrightness(light); for(int i=0; i<=NUM_L; i++)
{ strip.setPixelColor(i, 0x0000ff); strip.show();
}
} void rgb()
{ strip.setBrightness(light); for(int i=0; i<=NUM_L; i+=3)
{ strip.setPixelColor(i, 0xff0000); strip.setPixelColor(i+1, 0x00ff00); strip.setPixelColor(i+2, 0x0000ff); strip.show();
}
}
35
Приложение Б
Принципиальная схема платы Arduino Nano.
Содержание
Введение ................................................................................................................... 4 1 Теоретическая часть ............................................................................................ 6 1.1 Обзор состояния вопроса ................................................................................. 6 1.2 Практическое применение ............................................................................... 7 1.3 Основные разновидности светильников ........................................................... 7 1.4 Принцип работы ................................................................................................. 8 1.5 Плюсы использования осветительного прибора .............................................. 9 2. Практическая часть ............................................................................................ 10 2.1 Технические характеристики .......................................................................... 10 2.2 Описание используемых компонентов ........................................................... 11 2.3 Описание разработанных схем ........................................................................ 17 2.4 Регулировка ...................................................................................................... 21 2.5 Работа с прибором ............................................................................................ 21 3 Полученные результаты ..................................................................................... 23
Заключение ............................................................................................................. 24
Список используемых источников ....................................................................... 25
Приложение А ........................................................................................................ 26
Приложение Б ........................................................................................................ 35
4
Введение
Осветительные приборы (ОП) делятся на светильники, прожекторы и проекторы. В данной курсовой работе будет рассматриваться ночник с датчиком освещения, разными режимами подсветки и со встроенным таймером выключения прибора.
Светильник
– искусственный источник света, прибор, перераспределяющий свет лампы. Основной задачей светильника является рассеивание и направление света для освещения помещений, открытых пространств и отдельных предметов. В общей классификации выделяется два типа светильников: промышленные и бытовые. Первые предназначены для офисов и производственных помещений, вторые – для жилых домов и квартир.
Светильник является украшением интерьера, в отличие от утилитарных светильников, роль декоративных невелика.
Одним из видов светильников является ночник. Это небольшой декоративный светильник, используемый для подсветки тёмных помещений, которые становятся тёмными время от времени. Данный вид светильников облегчает ориентирование в помещении. Люди часто используют ночники ради ощущения защищённости, которое они дают, освещая помещение, ради предоставляемых ими удобств или при боязни темноты, особенно у маленьких детей. Некоторые путешественники возят с собой ночники и включают их в месте временного проживания, чтобы избежать травм ночью в непривычной им обстановке.
В процессе развития технологий качество осветительных приборов значительно улучшилось. От примитивных масляных, свечных лампад, керосиновых ламп и газовых фонарей до современных электрических светильников с источником света в виде ламп накаливания, люминесцентных ламп и газоразрядных ламп высокого давления.
Современный светильник состоит из осветительной арматуры и одного или нескольких источников света. Осветительная арматура предназначена для перераспределения в пространстве светового потока и защиты глаз от слепящего
5 действия источника света. Важнейшей её частью является оптическая система светильника, состоящая из оптических элементов, участвующих в перераспределении и преобразовании светового потока. Светильники должны отвечать комплексу светотехнических, технико-экономических, эстетических и монтажно-эксплуатационных требований, а также быть безопасными и надёжными в работе
Многие светильники – изделия массового производства, их выпуск составляет несколько десятков млн. в год. В особых случаях изготавливают уникальные осветительные приборы, имеющие большую художественную ценность. Например, люстры Московского Кремля, Эрмитажа и Большого театра.
6
1 Теоретическая часть
1.1 Обзор состояния вопроса
Все светильники можно разделить по нескольким пунктам:
1. По светотехническим функциям:
– осветительные приборы;
– светосигнальные приборы.
2. По условиям эксплуатации:
– световые приборы для помещения;
– световые приборы для открытых пространств.
3. По способу питания лампы:
– сетевые;
– с индивидуальным источником питания;
– комбинированного питания.
4. По типу крепления прибора:
– стационарные;
– съёмные.
Первый вариант крепится на основу и рассчитан на постоянное нахождение на одном месте. Светильники второго типа крепятся на поверхность липучками, крючками, кронштейнами или втыкаются в зарядное устройство, выполняющее функцию базы. По устройству, лампы бывают накладными и встраиваемые.
5. По типу излучаемых волн:
– инфракрасные. Включение происходит при понижении и повышении температуры в помещении.
– Микроволновые. Включение происходит тогда, когда сенсор реагирует на изменение частоты волн на территории, которая попадает в сектор его действия.
– Ультразвуковые. Работают по принципу эхо локации, который применяется при изготовлении РЛС и сонаров.
– Комбинированные. Состоят из двух и более датчиков, что повышает
7 надежность приборов, но увеличивает потребление ими энергии.
Существует несколько общепринятых характеристик, основанных на понятиях о видимом свете. К таким характеристикам относятся:
– световой поток;
– сила света;
– световая отдача;
– освещенность;
– цветовая температура;
– индекс цветопередачи;
– яркость;
– светимость;
– коэффициент пульсаций;
– показатели ослепленности.
1.2 Практическое применение
Светильники применяются чаще всего для улучшения видимости пространств. Существуют различные виды данного устройства, каждый из которых обладает определённой областью применения. К примеру, ночники удобны тем, что своим светом обозначают размеры комнаты без необходимости включать основное освещение, а также помогают не споткнуться, не упасть на лестнице, заметить домашнее животное или обозначить аварийный выход.
Домовладельцы могут размещать ночники в ванных и кухнях, чтобы избежать включения основного света и облегчить адаптацию зрения к яркому освещению.
При этом у ночника могут быть встроены различные режимы работы, например, таймер выключения прибора, что позволяет контролировать свет.
1.3 Основные разновидности светильников
В зависимости от места использования светильники разделяются на две группы:
– внутренние;
8
– уличные.
Внутренние светильники не имеют герметичного корпуса. Они рассчитаны исключительно для применения внутри помещения. При их изготовлении акцент ставится помимо технической составляющей, ещё и на декоративные качества. Нередко их рассеиватель делается из пластика, а не стекла. Уличный светильник отличается достаточно крепким корпусом. Его внутреннее электрооборудование защищено от проникновения влаги. Корпус имеет высокую устойчивость к ультрафиолету.
Также осветительное оборудование можно квалифицировать на два вида по применяемому источнику света:
– встроенный;
– сменяемые лампы.
Большинство современных светильников оснащаются встроенными светодиодами. Такой источник света имеет большой ресурс, но является несменяемым. При его выходе из строя покупается новый светильник.
Светильник со сменяемой лампой может оснащаться лампой накаливания. Он дешевле и долговечнее. При перегорании одного источника света просто закручивается или вставляется другой. Это делает осветительный прибор более удобным в использовании.
1.4 Принцип работы
От грамотно подобранных и правильно установленных светильников зависит уровень комфорта пребывания в помещении и безопасность людей.
Одним из элементов, упрощающих передвижение в темное время суток, является ночник с датчиком освещения.
Датчик освещения срабатывает в зависимости от степени освещённости пространства. Чем темнее свет в помещении, тем ярче светит ночник и наоборот.
Чаще всего датчики освещения изготавливаются на основе фотодиода, фоторезистора или фототранзистора. Датчик подключён к усилителю сигнала, который соединен с силовым реле, подающим питание на приборы освещения.
9
В зависимости от освещённости изменяется сопротивление чувствительного элемента. Чем меньше освещённость, тем больше его сопротивление. При достижении заданной величины напряжения датчик выдает сигнал на усилитель, который приводит в действие реле. Реле замыкает цепь приборов освещения.
1.5 Плюсы использования осветительного прибора
Данное устройство имеет значительные преимущества в использовании:
– пожарная безопасность – ночник практически не нагревается, если сверху на прибор попадает бумага или ткань, это не будет являться причиной возгорания;
– экономичность – минимальное потребление энергии позволяет использовать прибор всю ночь;
– длительный срок работы;
– наличие дополнительных функций – регулировка яркости света, возможность менять цвет освещения и т.д.;
– простота в установке и эксплуатации;
– комфорт передвижения по дому в ночное время суток;
– слабый свет ночника помогает сориентироваться в пространстве и не травмироваться.
Не смотря на длительный срок службы прибора, светодиод со временем тускнеет и теряет яркость из-за деградации химических и физических параметров светоизлучающего кристалла. Скорость деградации светодиода напрямую зависит от качества теплоотвода.
10
2. Практическая часть
2.1 Технические характеристики
Для разработки прибора «Ночник» использовались следующие компоненты:
– микроконтроллер Arduino Nano V3.0;
– символьный дисплей LCD 1602А;
– I2C адаптер для LCD дисплеев;
– тактовые кнопки;
– светодиодная лента WS2812B;
– фоторезистор;
– резисторы 10 кОм и 220 Ом;
– макетная плата для спайки;
– зарядное устройство 5 В.
Характеристики платы Arduino Nano: большая часть параметров платы определяется используемым микроконтроллером.
– Тип микроконтроллера ATmega168 ATmega328;
– архитектура AVR;
– напряжение питания микроконтроллера 5 В;
– номинальное напряжение питания платы 7-12 В;
– предельно-допустимое напряжение питания платы 6-20 В;
– тактовая частота 16 МГц;
– объём памяти программ (FLASH) 16 кбайт и 32 кбайт;
– объём оперативной памяти (SRAM) 1 кбайт и 2 кбайт.
Характеристики Arduino LCD 1602А дисплея:
– I2C интерфейс на микросхеме: PCF85741;
– контролер дисплея: HD44780;
– регулировка контрастности: Есть;
11
– количество строк: 2;
– количество символов в строке: 16;
– общее количество символов: 32;
– размер пикселя: 0,5 x 0,5 мм;
– размеры платы индикатора: 80 x 36 x 15 мм;
– видимая область экрана: 64,5 x 14 мм;
– количество пикселей в знаке: 40;
– цвет фона: синий;
– цвет подсветки: белый;
– напряжение питания: 5 В;
– диапазон рабочих температур от 0 до +60 ºC.
Характеристики светодиодной ленты WS2812B:
– размер светодиода: 5 х 5 мм;
– частота ШИМ: 400 Гц;
– скорость передачи данных: 800 кГц;
– размер данных: 24 бита на светодиод;
– напряжение питания: 5 В;
– потребление при нулевой яркости: 1 мА на светодиод;
– потребление при максимальной яркости: 60 мА на светодиод;
– цветность: RGB, 256 оттенков на канал, 16 миллионов цветов.
2.2 Описание используемых компонентов
1. Микроконтроллер Arduino Nano V3.0.
Arduino Nano – открытая и компактная платформа с семейства Arduino, построенная на микроконтроллере ATmega168 или ATmega328, имеет небольшие размеры и может использоваться в лабораторных работах. Arduino
Nano – это уменьшенный аналог Arduino Uno, отличается форм-фактором платы, которая в 2-2,5 раза меньше (19 х 43 мм), чем Arduino Uno (53 х 69 мм),
12 в отсутствии силового разъёма постоянного тока и работе через кабель Mini-B
USB. Данный компонент можно рассмотреть на Рисунке 2.2.1.
Рисунок 2.2.1 – Плата Arduino Nano ATmega328 V3.0.
2. Символьный дисплей LCD 1602А.
CD 1602A представляет собой электронный модуль, основанный на драйвере HD44780 от Hitachi. LCD1602 имеет 16 контактов и может работать в
4-битном режиме (с использованием только 4 линии данных) или 8-битном режиме (с использованием всех 8 строк данных), так же можно использовать интерфейс I2C. Данный компонент можно рассмотреть на Рисунке 2.2.2.
Рисунок 1.2.2 - Дисплей LCD 1602А.
13 3. I2C адаптер для LCD дисплеев.
Адаптер построен на базе микроконтроллера STM32F030F4, снабжен собственным стабилизатором напряжения, резистором настройки контрастности дисплея и переключателем режима работы: «On» и «Adr». Если переключатель установлен в положение «On», то адаптер находится в основном режиме работы, при котором осуществляется обмен данными между шинами LCD и I2C, что позволяет работать с LCD дисплеем по шине I2C. Данный компонент можно рассмотреть на Рисунке 2.2.3.
Рисунок 2.2.2 - Адаптер IIC-I2C для LCD 1602.
4. Тактовые кнопки.
Кнопка является простейшим устройством, при помощи которого можно управлять ходом программы на микроконтроллере, но физически она выполняет очень простую функцию: замыкает и размыкает контакт.
Тактовые кнопки – замыкают или размыкают контакт. Модель тактовой кнопки можно рассмотреть на Рисунке 2.2.4. У обычных тактовых кнопок ноги соединены вдоль через корпус (Рисунок 2.2.5.). Переключатели – обычно имеют три контакта, общий COM, нормально открытый NO и нормально закрытый NC.
При отпущенной кнопке замкнута цепь COM-NC, при нажатой замыкается
COM-NO (Рисунок 2.2.6.).
14
Рисунок 2.2.3 - Модуль тактовой кнопки.
Рисунок 2.2.4 – Соединение ног тактовой кнопки.
Рисунок 2.2.5 - Замыкание цепей.
5. Адресная светодиодная лента WS2812B.
Адресная лента управляется по специальному цифровому протоколу. Это означает, что, если просто воткнуть ленту в питание ничего не произойдёт, т.е. проверить ленту без управляющего контроллера нельзя.
15
Изменение цвета свечения светодиодной ленты может происходить только с помощью контроллера, который выдает на соответствующие дорожки многоцветной светодиодной ленты сигналы определённой величины напряжения. В данное время наиболее распространённым видом ленты является
- WS2812B. Чип WS2812B размещён внутри светодиода, таким образом один чип управляет цветом одного диода. Питание ленты – 5В. Данный компонент можно рассмотреть на Рисунке 2.2.7.
Рисунок 2.2.6 - Светодиодная лента WS2812B
.
6. Фоторезистор (датчик освещённости).
Фоторезистор (LDR, Light Depender Resistor) — компонент, меняющий сопротивление в зависимости от количества света, падающего на него. В полной темноте он имеет максимальное сопротивление в сотни кОм, а по мере роста освещённости сопротивление уменьшается до десятков кОм. Таким образом фоторезистор Arduino позволяет контролировать уровень освещенности и реагировать на его изменение (Рисунок 2.2.8.).
16
Рисунок 2.2.7 - Модуль фоторезистора.
7. Резисторы.
Резистор является важнейшим элементом электрической цепи, отвечающий за электрическое сопротивление, которое, в свою очередь, применяется для преобразования силы тока в напряжение и наоборот, а также для ограничения силы тока. Благодаря данному элементу происходит предотвращение короткого замыкания компонента. Данный элемент можно рассмотреть на Рисунке 2.2.9.
Рисунок 2.2.8 - Резистор.
17
2.3 Описание разработанных схем
Принципиальная схема – схема, определяющая полный состав элементов и связей между ними и дающая представление о принципах работы устройства.
Принципиальная схема платы Arduino Nano приводится в приложении Б.
Плата Ардуино Нано имеет 14 цифровых контактов, которые помечаются буквой D (цифровой, digital). Контакты используются как входы и выходы, у каждого имеется подтягивающий резистор. Аналоговые пины обозначаются буквой А и используются как входы. У них отсутствую подтягивающие резисторы, они измеряют поданное на них напряжение и возвращают значение при помощи функции analogRead(). На некоторых цифровых пинах можно увидеть значок . Такие контакты можно использовать в качестве выходов
ШИМ. Ардуино нано оснащена шестью такими контактами – это пины D3, D5,
D6, D9, D10, D11. Для работы с ШИМ выводами используется функция analogWrite() (Рисунок 2.3.1.).
Рисунок 2.3.1 - Распиновка Arduino Nano.
18
Описание пинов:
– цифровые входы/выходы: D0-D13;
– аналоговые входы/выходы: A0-A7 (10-разрядный АЦП);
–
ШИМ: пины 3, 5, 6, 9, 10, 11;
–
UART : D0 и D1 (TX и RX соответственно);
–
I2C: SDA – A4, SCL -A5;
–
SPI: MOSI – 11, MISO – 12, SCK – 13, SS(10);
–
0 – TX (передача данных UART), D0;
–
1 – RX (прием данных UART), D1. RX и TX могут использоваться для связи по последовательному интерфейсу или как обычные порты данных;
–
3, 29 – сброс;
–
4, 29 – земля;
–
5 – D2, прерывание INT0;
–
6 – D3, прерывание INT1 / ШИМ / AIN0;
–
7 – A4, счетчик T0 / шина I2C SDA / AIN1. AIN0 и AIN1 – входы для быстродействующего аналогового компаратора;
–
8 – A5, счетчик T1 / шина I2C SCL / ШИМ;
–
9 – 16 – порты D6-D13, из которых D6 (9й), D9 (12й), D10 (13й) и D11
(14й) используются как выходы ШИМ. D13 (16й пин) – светодиод. Также D10 –
SS, D11 – MOSI, D12 – MISO, D13 – SCK используются для связи по интерфейсу
SPI;
–
18 – AREF, это опорное напряжение для АЦП микроконтроллера;
–
19 – 26: аналоговые входы A0… A7. Разрядность АЦП 10 бит. A4 (SDA),
A5 (SCL) – используются для связи по шине I2C. Для создания используется специальная библиотека Wire.
Микроконтроллеры обладают большими функциональными возможностями, но у них есть один недостаток – это ограниченное, по сравнению с Arduino Mega, число выводов. Поэтому на этапе составления схемы устройства следует продумать, каким образом можно максимально упростить
19 проект, чтобы сократить число нужных для подключения контактов.
Распиновка LCD модуля 1602 (Рисунок 2.3.2.).
Рисунок 2.3.2 - Распиновка LCD модуля 1602.
Назначение выводов дисплея 1602.
Вывод
Обозначение
Пин Arduino Uno
1- земля GND;
GND
GND
2-питание 5 В;
VCC
5V
3-установка контрастности монитора;
VO
GND
4-команда, данные;
RS
11 5-записывание и чтение данных;
R/W
GND
6-enable;
E
12 7- линии данных;
DB0
—
8- линии данных;
DB1
—
9- линии данных;
DB2
—
10- линии данных;
DB3
—
11- линии данных;
DB4 5
20
Вывод
Обозначение
Пин Arduino Uno
12- линии данных;
DB5 4
13- линии данных;
DB6 3
14- линии данных;
DB7 2
15- плюс подсветки;
VCC
5V
16- минус подсветки;
GND
GND
Ниже представлена схема подключения LCD модуля 1602 к Arduino Nano при помощи модуля I2C (Рисунок 2.3.3).
Рисунок 2.3.3 - Схема подключения LCD модуля 1602 к Arduino Nano при помощи модуля I2C.
Модуль i2c для работы с LCD 1602 (Рисунок 2.3.4.).
Этот интерфейсный модуль позволяет уменьшить количество используемых выводов контроллера, вместо 8 или 4-битного соединения, требуется только 2 вывода (SDA и SCL).
–
Поддержка дисплеев: LCD 16×02 / 20×04;
– дополнительно: регулировка контрастности;
21
– напряжение питания. 5 В;
– интерфейс: I2C;
– размеры модуля: 54 мм x 19 мм x 15 мм.
Рисунок 2.3.4. - Схема модуля i2c для работы с LCD 1602.
2.4 Регулировка
Данное устройство легко в эксплуатации. Необходимо подключить прибор с помощью зарядного устройства к источнику питания и табло загорится, затем произойдёт включение устройства.
2.5 Работа с прибором
С помощью кнопок можно управлять различными функциями устройства.
По правую сторону дисплея находятся четыре тактовых кнопки. Две кнопки, расположенные ниже отвечают за увеличение и уменьшение времени таймера.
Две кнопки, расположенные в верху, включают и выключают таймер соответственно. При нажатии кнопки включения таймер начнёт обратный отчёт времени, при выключении – время сбрасывается. По левую сторону находится
22 кнопка переключения цветов освещения. Свет можно менять на синий, красный, зелёный, разноцветный и белый.
23
3 Полученные результаты
Результатом сборки и проектирования стал прибор под названием
«Ночник».
Прибор представляет собой светильник, который отвечает предъявленным к нему требованиям, а именно:
изменение цвета освещения при нажатии кнопки;
возможность настраивать время таймера.
Завершающим этапом курсовой работы было тестирование прибора.
Тесты были проведены в бытовых условиях. Тесты показали, что прибор готов к эксплуатации и работает в соответствии с ожидаемыми результатами.
24
Заключение
В результате выполнения курсовой работы согласно индивидуальному заданию был разработан прибор ночного освещения.
В ходе курсовой работы:
разработано устройство - ночник;
проведён анализ существующих реализаций данного устройства;
на основании результатов исследования предметной области был составлен список необходимых комплектующих.
Спроектированное устройство отвечает всем заданным требованиям.
Ночник удобен в транспортировке и не предъявляет особых требований к условиям хранения.
25
Список используемых источников
1 Ломаш, Д.А. Оформление бакалаврских работ для студентов направления подготовки 230100.62 – Информатика и вычислительная техника: учебно-методическое пособие; Рост. гос. ун-т путей сообщения. – Ростов н/Д,
2013. – 40 с.
2 Лаврентьев Б.Ф. Схемотехника электронных средств: уч. пособ. /
Б.Ф.Лаврентьев. – М.: Отечество, 2010. – 232 с.
3 Касаткин А.С. Электротехника: учебное пособие для вузов / А.С.
Касаткин, М.В. Немцов. – М.: Энергоатомиздат, 2012. – 273 с.
4 Чернов, А.В. Электроника и схемотехника [Электронный ресурс]:
Методические указания по курсовому проектированию / А.В. Чернов, О.О.
Карташов; ФГБОУ ВО РГУПС. – Ростов н/Д, 2017. – 28 с.
26
#include
Приложение А
Листинг кода
#include
LiquidCrystal_I2C LCD(0x27,20,2);
#include
#define NUM_L 59 // число диодов ленты
#define PIN 10
Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_L, PIN, NEO_GRB +
NEO_KHZ800); boolean f = false; boolean vst = false; unsigned int val = 0; int light; boolean w = true; boolean r = false; boolean g = false; boolean b = false; boolean mix = false; int s = 0; int m = 0; unsigned long timer; int count = 1; void setup() {
// put your setup code here, to run once: strip.begin(); strip.setBrightness(10); // яркость strip.clear(); strip.show(); pinMode(A0, INPUT);// фоторезистор pinMode(5, OUTPUT);// btn1 -min pinMode(6, OUTPUT);// btn2 +min pinMode(7, OUTPUT);// btn3 start pinMode(8, OUTPUT);// btn4 reset pinMode(9, OUTPUT);// btn5 light
27
LCD.init(); // инициализация дисплея
LCD.backlight(); // включение светодиодов
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s);
} void loop() {
// put your main code here, to run repeatedly:
// включение от фоторезистора val = analogRead(A0); light = val/100; if(vst == false)
{ lon();
}
// вычитается минута if(digitalRead(5))
{ delay(50); m=m-1; s=0; if(m<0)
{ m=0;
}
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s);
28
}
// прибавляется минута if(digitalRead(6))
{ delay(50); m=m+1; s=0;
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s);
}
// включение if(digitalRead(7) && (m>0 || s>0))
{ delay(100); if(s == 0)
{ s = 60; m = m-1;
} if(m<0)
{ m = 0;
} f = true;
}
// выключение if(digitalRead(8))
{ delay(100);
29 m = 0; s = 0;
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s); f = false;
}
//таймер while(f == true)
{
// вычитание 1 секунды if(millis()-timer>995)
{ timer = millis(); s=s-1;
// таймер достиг 0 if(s == 0 && m == 0)
{
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer stop");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s); loff(); f = false;
}
// вычитание минуты if(s == 0)
30
{ s = 59; m = m-1; if(m<0)
{ m = 0;
}
}
// вывод таймера на дисплей if(f == true)
{
LCD.clear();
LCD.setCursor(2, 0);
LCD.print("Timer start");
LCD.setCursor(5, 1);
LCD.print(m);
LCD.print(" : ");
LCD.print(s);
}
}
// остановка времени таймера if(digitalRead(7))
{ delay(100);
LCD.setCursor(2, 0);
LCD.print("Timer stop"); f = false;
}
}
// смена режима if(digitalRead(9))
{ if(vst == true)
31
{ vst = false;
} if(count == 0)
{ w = true; r = false; g = false; b = false; mix = false; delay(100); count=1; return;
} if(count == 1)
{ w = false; r = true; g = false; b = false; mix = false; delay(100); count=2; return;
} if(count == 2)
{ w = false; r = false; g = true; b = false;
32 mix = false; delay(100); count=3; return;
} if(count == 3)
{ w = false; r = false; g = false; b = true; mix = false; delay(100); count=4; return;
} if(count == 4)
{ w = false; r = false; g = false; b = false; mix = true; delay(100)
; count=0; return;
}
}
} void lon()
{ if(w == true)
33
{ white();
} if(r == true)
{ red();
} if(g == true)
{ green();
} if(b == true)
{ blue();
} if(mix == true)
{ rgb();
}
} void white()
{ strip.setBrightness(light); for(int i=0; i<=NUM_L; i++)
{ strip.setPixelColor(i, 0xffffff); strip.show();
}
} void loff()
{ vst = true; strip.setBrightness(0); strip.show();
} void red()
{
34 strip.setBrightness(light); for(int i=0; i<=NUM_L; i++)
{ strip.setPixelColor(i, 0xff0000); strip.show();
}
} void green()
{ strip.setBrightness(light); for(int i=0; i<=NUM_L; i++)
{ strip.setPixelColor(i, 0x00ff00); strip.show();
}
} void blue()
{ strip.setBrightness(light); for(int i=0; i<=NUM_L; i++)
{ strip.setPixelColor(i, 0x0000ff); strip.show();
}
} void rgb()
{ strip.setBrightness(light); for(int i=0; i<=NUM_L; i+=3)
{ strip.setPixelColor(i, 0xff0000); strip.setPixelColor(i+1, 0x00ff00); strip.setPixelColor(i+2, 0x0000ff); strip.show();
}
}
35
Приложение Б
Принципиальная схема платы Arduino Nano.