Разработка устройства автоматического регулирования света на микроконтроллере
РЕФЕРАТ
Пояснительная записка к дипломному проекту: 123 страницы, 11 рисунков, 18 таблиц, 25 источников, 6 приложений, 3 листа чертежей формата А1.
Объект исследований: Разработка устройства автоматического регулирования света.
В первом разделе рассматриваются теоретические основы разработки устройства, основные этапы разработки, разработка и отладка аппаратных и программных средств.
Во втором разделе производится практическая разработка проектируемого устройства: разрабатываются структурная и функциональные схемы, алгоритм управления и программное обеспечение микроконтроллера; производится расчет и выбор элементной базы; построение электрической схемы.
Третий раздел содержит экономические расчеты стоимости проектируемого устройства, используя аппаратные средства Microsoft Ofice Excel 97-2003, производится сравнительная характеристика с аналогичными устройствами по экономическим и техническим параметрам.
В четвертом разделе рассматриваются вопросы по охране труда для работающих на компьютере (ВЦ), производится расчет исскуственной и естественной освещенности рабочего места, вентиляции и кондиционирования воздуха, уровня шума для помещения, где находятся персонал, обслуживающий компьютеры.
АЛГОРИТМ, ИСТОЧНИК ОПОРНОГО НАПРЯЖЕНИЯ, ПРОГРАММА, ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ, СХЕМА/
СОДЕРЖАНИЕ
ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ, СИМВОЛОВ, ЕДИНИЦ,СОКРАЩЕНИЙ И ТЕРМИНОВ
ВВЕДЕНИЕ
РАЗДЕЛ 1 ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РАЗРАБОТКИ
1.1 Основные этапы разработки
1.2 Разработка и отладка аппаратных средств
1.3 Разработка и отладка программного обеспечения
1.4 Методы и средства совместной отладки аппаратных и программных средств
1.5 выбор микроконтроллера
РАЗДЕЛ 2 РАЗРАБОТКА УСТРОЙСТВА АВТОМАТИЧЕСКОГО РЕГУЛИРОВАНИЯ СВЕТА
2.1 Постановка задачи
2.2 Разработка структурной схемы устройства и функциональной спецификации
2.3 Разработка функциональной схемы
2.4 Разработка алгоритма управления
2.5 Разработка программного обеспечения микроконтроллера
2.6 Выбор, описание и расчеты элементной базы
2.7 Разработка схемы электрической принципиальной
3 ТЕХНИКО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ ОБЪЕКТА
РАЗРАБОТКИ
3.1 Расчет расходов ПО для микроконтроллера, которое разрабатывается
3.2 Расчет стоимости разработки конструкторской документации и сборки устройства
3.3 Расчет расходов на стадии производства изделия
3.4 Анализ аналогичных устройств
РАЗДЕЛ 4 ОХРАНА ТРУДА
4.1 Требования к производственным помещениям
4.1.1 Окраска и коэффициенты отражения
4.1.2 Освещение
4.1.3 Параметры микроклимата
4.1.4 Шум и вибрация
4.1.5 Электромагнитное и ионизирующее излучения
4.2 Эргономические требования к рабочему месту
4.3 Режим труда
4.4 Расчет освещенности
4.5 Расчет вентиляции
4.6 Расчет уровня шума
ВЫВОДЫ
ПЕРЕЧЕНЬ ССЫЛОК
ПРИЛОЖЕНИЯ
ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ, СИМВОЛОВ, ЕДИНИЦ, СОКРАЩЕНИЙ И ТЕРМИНОВ
АЦП – аналого-цифровой преобразователь;
ВДТ - видеодисплейный терминал;
ЖКИ- дисплей – жидкокристаллический дисплей;
ИОН – источник опорного напряжения;
ИПХ - имитация присутствия хозяев;
КЗ – короткое замыкание;
МПС – микропроцессорная система;
ОЗУ - оперативно-запоминающее устройство;
ОМК – однокристальные микроконтроллеры;
ПЗУ – программно-запоминающее устройство;
ПО – программное обеспечение.
ВВЕДЕНИЕ
В настоящее время в системах управления и обработки данных все чаще применяются микроконтроллеры, решающие широкий спектр задач. Однокристальные микроконтроллеры (ОМК) являются наиболее массовым видом устройств современной микропроцессорной техники, годовой объем выпуска которых составляет более 2,5 млрд. штук. Интегрируя на одном кристалле высокопроизводительный процессор, память и набор периферийных схем, ОМК позволяют с минимальными затратами реализовать высокоэффективные системы и устройства управления различными объектами (процессами). В отличие от обычных микропроцессоров, для работы которых необходимы внешние интерфейсные схемы, в корпусе ОМК наряду с основными функциональными узлами размещены такие вспомогательные узлы, как тактовый генератор, таймер, контроллер прерываний, цифро-аналоговый и аналого-цифровой преобразователи, порты ввода-вывода.
Благодаря этим качествам ОМК находят широкое применение в системах промышленной автоматики, контрольно-измерительных приборах и системах, аппаратуре связи, автомобильной электронике, медицинском оборудовании, бытовой технике и многих других областях.
Применение однокристальных микроконтроллеров позволяет перенести основные затраты, связанные с разработкой встраиваемых систем управления, из аппаратной в программную область. Это неминуемо влечет за собой увеличение сложности программного обеспечения (ПО) микроконтроллеров.
Особенностью разработки ПО для ОМК является использование языка низкого уровня - языка ассемблера. Это связано с тем, что при реализации встраиваемых систем критичными являются время реакции на внешние воздействия, время выполнения заданных процедур обработки данных, размер программного кода и области данных.
Мировая промышленность выпускает огромную номенклатуру микроконтроллеров. По области применения их можно разделить на два класса : специализированные, предназначенные для применения в какой-либо одной конкретной области (контроллер для телевизора, контроллер для модема, контроллер для компьютерной мышки ) и универсальные, которые не имеют конкретной специализации и могут применяться в самых различных областях микроэлектроники, с помощью которых можно создать как любое из перечисленных выше устройств, так и принципиально новое устройство.
Тема дипломной работы – «Разработка устройства автоматического регулирования света на микроконтроллере».
Основная цель дипломного проекта – на основании задания на проектирование разработать устройство автоматического регулирования света на микроконтроллере с учётом следующих требований:
- простота схемы (минимальное количество компонентов);
- функциональная насыщенность, многообразие регулируемых параметров;
- устойчивость к броскам сетевого напряжения, долговечность;
- отсутствие либо минимальный нагрев компонентов (пожаробезопасность);
- низкое энергопотребление.
Актуальностью данной работы является проектирование устройства автоматического регулирования света, которое отличается своей новизной и учитывает почти все недостатки ранее разработанных аналогичных устройств.
РАЗДЕЛ 1 ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РАЗРАБОТКИ
1 Разработка микропроцессорной системы на основе микроконтроллера
1.1 Основные этапы разработки
МПС на основе МК используются чаще всего в качестве встроенных систем для решения задач управления некоторым объектом. Важной особенностью данного применения является работа в реальном времени, т.е. обеспечение реакции на внешние события в течение определенного временного интервала. Такие устройства получили название контроллеров.
Перед разработчиком МПС стоит задача реализации полного цикла проектирования, начиная от разработки алгоритма функционирования и заканчивая комплексными испытаниями в составе изделия, а, возможно, и сопровождением при производстве. Сложившаяся к настоящему времени методология проектирования контроллеров может быть представлена так, как показано на рис. 1.1.
В техническом задании формулируются требования к контроллеру с точки зрения реализации определенной функции управления. Техническое задание включает в себя набор требований, который определяет, что пользователь хочет от контроллера и что разрабатываемый прибор должен делать. Техническое задание может иметь вид текстового описания, не свободного в общем случае от внутренних противоречий.
На основании требований пользователя составляется функциональная спецификация, которая определяет функции, выполняемые контроллером для пользователя после завершения проектирования, уточняя тем самым, насколько устройство соответствует предъявляемым требованиям. Она включает в себя описания форматов данных, как на входе, так и на выходе, а также внешние условия, управляющие действиями контроллера.
Рисунок 1.1- Основные этапы разработки контроллера
Этап разработки алгоритма управления является наиболее ответственным, поскольку ошибки данного этапа обычно обнаруживаются только при испытаниях законченного изделия и приводят к необходимости дорогостоящей переработки всего устройства. Разработка алгоритма обычно сводится к выбору одного из нескольких возможных вариантов алгоритмов, отличающихся соотношением объема программного обеспечения и аппаратных средств.
При этом необходимо исходить из того, что максимальное использование аппаратных средств упрощает разработку и обеспечивает высокое быстродействие контроллера в целом, но сопровождается, как правило, увеличением стоимости и потребляемой мощности. При выборе типа МК учитываются следующие основные характеристики:
- разрядность;
- быстродействие;
- набор команд и способов адресации;
- требования к источнику питания и потребляемая мощность в различных режимах;
- объем ПЗУ программ и ОЗУ данных;
- возможности расширения памяти программ и данных;
- наличие и возможности периферийных устройств, включая средства поддержки работы в реальном времени (таймеры, процессоры событий и т.п.);
- возможность перепрограммирования в составе устройства;
- наличие и надежность средств защиты внутренней информации;
- возможность поставки в различных вариантах конструктивного исполнения;
- стоимость в различных вариантах исполнения;
- наличие полной документации;
- наличие и доступность эффективных средств программирования и отладки МК;
- количество и доступность каналов поставки, возможность замены изделиями других фирм.
Список этот не является исчерпывающим, поскольку специфика проектируемого устройства может перенести акцент требований на другие параметры МК.
Номенклатура выпускаемых в настоящее время МК исчисляется тысячами типов изделий различных фирм. Современная стратегия модульного проектирования обеспечивает потребителя разнообразием моделей МК с одним и тем же процессорным ядром. Такое структурное разнообразие открывает перед разработчиком возможность выбора оптимального МК, не имеющего функциональной избыточности, что минимизирует стоимость комплектующих элементов.
Однако для реализации на практике возможности выбора оптимального МК необходима достаточно глубокая проработка алгоритма управления, оценка объема исполняемой программы и числа линий сопряжения с объектом на этапе выбора МК. Допущенные на данном этапе просчеты могут впоследствии привести к необходимости смены модели МК и повторной разводки печатной платы макета контроллера. В таких условиях целесообразно выполнять предварительное моделирование основных элементов прикладной программы с использованием программно-логической модели выбранного МК.
На этапе разработки структуры контроллера окончательно определяется состав имеющихся и подлежащих разработке аппаратных модулей, протоколы обмена между модулями, типы разъемов. Выполняется предварительная проработка конструкции контроллера. В части программного обеспечения определяются состав и связи программных модулей, язык программирования. На этом же этапе осуществляется выбор средств проектирования и отладки.
1.2 Разработка и отладка аппаратных средств
После разработки структуры аппаратных и программных средств дальнейшая работа над контроллером может быть распараллелена. Разработка аппаратных средств включает в себя разработку общей принципиальной схемы, разводку топологии плат, монтаж макета и его автономную отладку. На этапе ввода принципиальной схемы и разработки топологии используются, как правило, распространенные системы проектирования типа "ACCEL EDA" или "OrCad".
1.3 Разработка и отладка программного обеспечения
Содержание этапов разработки программного обеспечения, его трансляции и отладки на моделях существенно зависит от используемых системных средств. В настоящее время ресурсы 8-разрядных МК достаточны для поддержки программирования на языках высокого уровня. Это позволяет использовать все преимущества структурного программирования, разрабатывать программное обеспечение с использованием раздельно транслируемых модулей. Одновременно продолжают широко использоваться языки низкого уровня типа ассемблера, особенно при необходимости обеспечения контролируемых интервалов времени. Задачи предварительной обработки данных часто требуют использования вычислений с плавающей точкой, трансцендентных функций.
В настоящее время самым мощным средством разработки программного обеспечения для МК являются интегрированные среды разработки, имеющие в своем составе менеджер проектов, текстовый редактор и симулятор, а также допускающие подключение компиляторов языков высокого уровня типа Паскаль или Си. При этом необходимо иметь в виду, что архитектура многих 8-разрядных МК вследствие малого количества ресурсов, страничного распределения памяти, неудобной индексной адресации и некоторых других архитектурных ограничений не обеспечивает компилятору возможности генерировать эффективный код.
Для проверки и отладки программного обеспечения используются так называемые программные симуляторы, предоставляющие пользователю возможность выполнять разработанную программу на программно-логической модели МК. Программные симуляторы распространяются, как правило, бесплатно и сконфигурированы сразу на несколько МК одного семейства. Выбор конкретного типа МК среди моделей семейства обеспечивает соответствующая опция меню конфигурации симулятора. При этом моделируется работа ЦП, всех портов ввода/вывода, прерываний и другой периферии. Карта памяти моделируемого МК загружается в симулятор автоматически, отладка ведется в символьных обозначениях регистров.
Загрузив программу в симулятор, пользователь имеет возможность запускать ее в пошаговом или непрерывном режимах, задавать условные или безусловные точки останова, контролировать и свободно модифицировать содержимое ячеек памяти и регистров симулируемого МК.
1.4 Методы и средства совместной отладки аппаратных и программных средств
Этап совместной отладки аппаратных и программных средств в реальном масштабе времени является самым трудоемким и требует использования инструментальных средств отладки. К числу основных инструментальных средств отладки относятся:
- внутрисхемные эмуляторы;
- платы развития (оценочные платы);
- мониторы отладки;
- эмуляторы ПЗУ.
Внутрисхемный эмулятор – программно-аппаратное средство, способное заменить эмулируемый МК в реальной схеме.
Внутрисхемный эмулятор – это наиболее мощное и универсальное отладочное средство, которое делает процесс функционирования отлаживаемого контроллера прозрачным, т.е. легко контролируемым, произвольно управляемым и модифицируемым.
Платы развития, или, как принято их называть в зарубежной литературе, оценочные платы (Evaluation Boards), являются своего рода конструкторами для макетирования электронных устройств. Обычно это печатная плата с установленным на ней МК и всей необходимой ему стандартной периферией. На этой плате также устанавливают схемы связи с внешним компьютером. Как правило, там же имеется свободное поле для монтажа прикладных схем пользователя. Иногда предусмотрена уже готовая разводка для установки дополнительных устройств, рекомендуемых фирмой. Например, ПЗУ, ОЗУ, ЖКИ- дисплей, клавиатура, АЦП и др.
Эмулятор ПЗУ – программно-аппаратное средство, позволяющее замещать ПЗУ на отлаживаемой плате, и подставляющее вместо него ОЗУ, в которое может быть загружена программа с компьютера через один из стандартных каналов связи. Это устройство позволяет пользователю избежать многократных циклов перепрограммирования ПЗУ. Эмулируемая память доступна для просмотра и модификации, но контроль над внутренними управляющими регистрами МК был до недавнего времени невозможен.
В последнее время появились модели интеллектуальных эмуляторов ПЗУ, которые позволяют "заглядывать" внутрь МК на плате пользователя.
Этап совместной отладки аппаратных и программных средств в реальном масштабе времени завершается, когда аппаратура и программное обеспечение совместно обеспечивают выполнение всех шагов алгоритма работы системы. В конце этапа отлаженная программа заносится с помощью программатора в энергонезависимую память МК, и проверяется работа контроллера без эмулятора.
1.5 Выбор микроконтроллера
Для проектирования устройства автоматического регулирования света постараемся выбрать относительно недорогой, простой и широкоиспользуемый микроконтроллер.
Все эти особенности можно отнести к микроконтроллерам корпорации ATMEL (ATMega 16L).
Корпорация ATMEL, основанная в 1984, является в настоящее время признанным мировым лидером в областях разработки, производства и маркетинга современных электронных компонентов.
Рисунок 1.2 – Общий вид микроконтроллера ATMega 16L
ATMega16 обладает очень большим количеством самых разнообразных функций. Вот некоторые его характеристики:
* Максимальная тактовая частота – 16 МГц (8 МГц для ATMega16L)
* Большинство команд выполняются за один такт
* 32 8-битных рабочих регистра
* 4 полноценных 8-битных порта ввода/вывода
* два 8-битных таймера/счетчика и один 16-битный
* 10-разрядный аналогово-цифровой преобразователь (АЦП)
* внутренний тактовый генератор на 1 МГц
* аналоговый компаратор
* интерфейсы SPI, I2C, TWI, RS-232, JTAG
* внутрисхемное программирование и самопрограммирование
* модуль широтно-импульсной модуляции (ШИМ)
* 8-разрядный высокопроизводительный AVR микроконтроллер с малым потреблением
* Прогрессивная RISC архитектура
Рисунок 1.3 – Расположение выводов микроконтроллера ATMega 16L
130 высокопроизводительных команд, большинство команд выполняется за один тактовый цикл
32 8-разрядных рабочих регистра общего назначения
Полностью статическая работа
Производительность приближается к 16 MIPS (при тактовой частоте 16 МГц)
Встроенный 2-цикловый перемножитель
* Энергонезависимая память программ и данных
16 Кбайт внутрисистемно программируемой Flash памяти (In-System Self-Programmable Flash)
Обеспечивает 1000 циклов стирания/записи
Дополнительный сектор загрузочных кодов с независимыми битами блокировки
Внутрисистемное программирование встроенной программой загрузки
Обеспечен режим одновременного чтения/записи (Read-While-Write)
512 байт EEPROM
Обеспечивает 100000 циклов стирания/записи
1 Кбайт встроенной SRAM
Программируемая блокировка, обеспечивающая защиту программных средств пользователя
* Интерфейс JTAG (совместимый с IEEE 1149.1)
Возможность сканирования периферии, соответствующая стандарту JTAG
Расширенная поддержка встроенной отладки
Программирование через JTAG интерфейс: Flash, EEPROM памяти, перемычек и битов блокировки
* Встроенная периферия
Два 8-разрядных таймера/счетчика с отдельным предварительным делителем, один с режимом сравнения
Один 16-разрядный таймер/счетчик с отдельным предварительным делителем и режимами захвата и сравнения
Счетчик реального времени с отдельным генератором
Четыре канала PWM
8-канальный 10-разрядный аналого-цифровой преобразователь
8 несимметричных каналов
7 дифференциальных каналов (только в корпусе TQFP)
2 дифференциальных канала с программируемым усилением в 1, 10 или 200 крат (только в корпусе TQFP)
Байт-ориентированный 2-проводный последовательный интерфейс
Программируемый последовательный USART
Последовательный интерфейс SPI (ведущий/ведомый)
Программируемый сторожевой таймер с отдельным встроенным генератором
Встроенный аналоговый компаратор
* Специальные микроконтроллерные функции
Сброс по подаче питания и программируемый детектор кратковременного снижения напряжения питания
Встроенный калиброванный RC-генератор
Внутренние и внешние источники прерываний
Шесть режимов пониженного потребления: Idle, Power-save, Power-down, Standby, Extended Standby и снижения шумов ADC
* Выводы I/O и корпуса
32 программируемые линии ввода/вывода
40-выводной корпус PDIP и 44-выводной корпус TQFP
* Рабочие напряжения
2,7 - 5,5 В (ATmega16L)
4,5 - 5,5 В (ATmega16)
* Рабочая частота
0 - 8 МГц (ATmega16L)
0 - 16 МГц (ATmega16)
Рисунок 1.4 – Функциональная схема микроконтроллера ATMega 16L
РАЗДЕЛ 2 РАЗРАБОТКА УСТРОЙСТВА АВТОМАТИЧЕСКОГО РЕГУЛИРОВАНИЯ СВЕТА
Несмотря на бурное развитие сверхъярких светодиодов, в широкой продаже пока не появились светодиодные лампы, способные заменить бытовые лампы накаливания. Получившие довольно широкое распространение энергосберегающие люминесцентные лампы, при всех своих достоинствах, обладают, во-первых, высокой стоимостью, во-вторых, требуют сложную схему управления яркостью. Отечественные и зарубежные регуляторы ламп накаливания имеют ряд недостатков:
- управление только одним каналом;
- отсутствие стабилизации яркости;
- наличие помех радиоприёму, звон нитей ламп, жужжание встроенного фильтра.
Эти же недостатки присущи схемам, опубликованным в радиолюбительской литературе, периодической печати и в Интернете.
2.1 Постановка задачи
Требуется создать регулятор яркости ламп накаливания (за рубежом называемый «диммер» - dimmer), свободный от указанных недостатков, и предназначенный для установки в двухканальный светильник промышленного производства (Рис. 1).
Разработка устройства велась с учётом следующих требований:
- простота схемы (минимальное количество компонентов);
- функциональная насыщенность, многообразие регулируемых параметров;
- устойчивость к броскам сетевого напряжения, долговечность;
- отсутствие либо минимальный нагрев компонентов (пожаробезопасность);
- низкое энергопотребление.
Рисунок 2.1 – Светильник с встроенным устройством автоматического регулирования света
2.2 Разработка структурной схемы устройства и функциональной спецификации
Структурная схема устройства автоматического регулирования света представлена на рисунке 2.2.
Устройство состоит из основных элементов:
БП
~ 220 В
МК
У
УУ1
правление каналомSB1 «1» HL1
У
УУ2
правление каналомSB2 «2» HL2
Рисунок 2.2 – Структурная схема устройства автоматического регулирования света
МК – микроконтроллер (устройство, выполняющее функции управления устройствами управления);
БП – блок питания (осуществляет питание микроконтроллера и устройств управления требуемыми напряжениями);
УУ1, УУ2 – устройство управления 1-ого и 2-ого канала соответственно (осуществляют силовое управление лампами освещения по заданной программе);
SB1, SB2 – кнопки управления 1-ым и 2-ым каналами (осуществляют управление каналами освещения, по заданной программе);
HL1, HL2 – лампы освещения (освещают помещение в различных режимах и требуемой яркости).
Функциональная спецификация:
Входы
а. SB1, SB2 – кнопки управления 1-ым и 2-ым каналами, соответственно;
b. источник электропитания устройства (БП).
Выходы
а. УУ1, УУ2 – устройство управления 1-ого и 2-ого канала, соответственно .
Функции
а. Кнопками управления SB1 и SB2 осуществляется управление программой микроконтроллера;
b. По выбранной программе, осуществляется управление устройствами управления УУ1 и УУ2, которые осуществляют регулировку подачи регулируемого напряжения на лампы накаливания HL1 и HL2.
2.3 Разработка функциональной схемы
Основу устройства, функциональная схема которого изображена на Рис. 2.3, составляет микроконтроллер ATmega16L семейства AVR корпорации ATMEL. Управление осуществляется двумя не фиксируемыми в нажатом положении кнопками, по одной на каждый канал.
~220В F1
Стабилизатор
Rб
Фильтр
«+»
Транзистор 1
Транзистор 2
Рисунок 2.3 - Функциональная схема устройства автоматического регулирования света
Регулировка мощности основана на реверсивном принципе управления фазой. Нагрузка включается в каждом полупериоде сети в момент перехода сетевого напряжения через нуль и выключается через определённый интервал времени в зависимости от требуемого уровня яркости. Коммутация нагрузки осуществляется мощными MOSFET транзисторами (Транзистор1 и Транзистор2 на Рис.2.3). Такое решение имеет целый ряд преимуществ перед классической схемой прямого фазового регулирования на основе триака:
- "мягкое" управление транзистором позволяет снизить уровень помех и звон нити лампы – не нужен громоздкий сетевой фильтр, снижающий эффективность и зачастую являющийся источником неприятного жужжания;
- благодаря нарастанию напряжения с нуля и малому звону нити, лампы служат намного дольше;
- для управления MOSFET транзистором требуется гораздо меньший ток;
- более низкое падение напряжения на переходе транзистора сокращает тепловыделение;
- отсутствие понятия "ток удержания" позволяет плавно регулировать малую яркость.
Диодный мост выполняет три функции:
- создаёт пульсирующее однополярное напряжение для питания нагрузки;
- выпрямляет сетевое напряжение для питания схемы;
- обеспечивает сетевое напряжение удвоенной частоты (100 Гц), используемое МК для определения момента перехода фазы сети через нуль.
Детектирование перехода сетевого напряжения через нуль осуществляется тем же делителем напряжения и тем же каналом встроенного в МК АЦП, которые предназначены для измерения напряжения на лампе. Это позволяет отказаться от встроенного в МК компаратора и уменьшить тем самым потребляемый ток. Фильтрация сетевых помех реализуется программно.
Блок питания выполнен по бестрансформаторной схеме с гасящим резистором (балластом). Строить блок питания по трансформаторной схеме тоже не получится, т.к. не существует сетевых трансформаторов, которые подходили бы по габаритам (максимально допустимая высота 13 мм).
В качестве регулирующего элемента применён прецизионный микромощный источник опорного напряжения +5 В параллельного типа (далее по тексту ИОН). По сравнению с обычным стабилитроном, выбранный ИОН имеет два важных преимущества. Во-первых, одновременно со стабилизацией питания МК получается стабильное опорное напряжение АЦП [3]. Во-вторых, на порядок уменьшается потребляемый регулирующим элементом ток (примерно с 1 мА до 0,1 мА).
Устройство имеет защиту от короткого замыкания, превышения мощности нагрузки и повышения сетевого напряжения.
2.4 Разработка алгоритма управления
Программа составлена и отлажена в бесплатной среде разработки VM Lab версии 3.14 (в окне 'About Visual Micro Lab' эта версия указана как 3.12).
Код программы написан на языке ассемблера, содержит более 1500 строк, занимает в памяти программ МК более 3 КБ. Задействованы все 32 регистра, 51 байт оперативной памяти (SRAM, ОЗУ), 45 байт энергонезависимой памяти EEPROM.
На первый взгляд, возможности МК ATmega16, имеющего 16 КБ программной памяти, 1 КБ SRAM, 512 байт EEPROM, и богатый набор периферийных устройств, кажутся избыточными. На самом деле, выбор МК "с запасом" сделан умышленно, чтобы иметь возможность совершенствовать устройство и наращивать его функциональные возможности.
При необходимости код может быть перенесён на другие МК семейства ATmega.
Алгоритм управления показан на Рис.2.4. Каждый блок начинается с названия файла, в котором размещён программный код данного блока. Подпрограммы обозначены блоком меньшего горизонтального размера. Среди них есть функции, т.е. подпрограммы, возвращающие значения. Для упрощения они тоже называются подпрограммами. Отличие подпрограмм, расположенных в файле ProceduresINT.asm, от подпрограмм в файле ProceduresEXT.asm заключается в том, что первые предназначаются только для данного проекта, а вторые являются универсальными и могут найти применение в других проектах. Блок Startup.asm тоже использует некоторые подпрограммы, но для упрощения восприятия рисунка эти связи на блок-схеме не показаны.
2.5 Разработка программного обеспечения микроконтроллера
Далее кратко рассмотрены ключевые моменты программной части проекта. Дополнительная информация содержится в комментариях, которыми снабжена практически каждая строка программы. Листинг программы и объектный файл приведен в Приложении А. Алгоритм работы второго канала полностью аналогичен алгоритму работы первого, поэтому комментарии приводятся только для первого канала. По этой же причине в названиях регистров, процедур и т.п. номер канала либо не указывается совсем, либо обозначается буквой "X" или "x". Команды, начинающиеся с символа комментария (";") в начале строки, предназначены для облегчения разработки, отладки и тестирования.
Присваивание имён регистрам, ячейкам ОЗУ, периферийным устройствам Присваивание значений константам, не изменяемым пользователем Определение пользовательских переменных (параметров настройки диммера) Определение системных переменных
Выяснение и запись причины сброса МК
Задержка на время стабилизации напряжения питания
Считывание параметров из EEPROM, их проверка, корректировка, и копирование в регистры или ячейки ОЗУ
Установка начальных значений регистров, ячеек ОЗУ, отдельных битов
Формирование случайного числа
Определение предыдущего состояния устройства
Инициализация периферийных устройств МК
Инициализация всех регистров и ячеек ОЗУ нулевым значением
Автовыключение первого канала, Автовыключение второго канала Сброс таймеров автоотключения Настройка таймера функции
Имитация Присутствия Хозяев
Запись информации о срабатывании неиспользуемого прерывания
Чтение EEPROM; Запись EEPROM
Генерация псевдослучайного числа; Формирование задержки
Таблица значений яркости; Таблица значений процентов
Рисунок 2.4 – Блок-схема алгоритма
Они ускоряют ход выполнения программы на этапе отладки. Закомментированные команды, перед которыми есть несколько знаков пробела, не используются в данном проекте, но оставлены в качестве шаблона для применения того же кода в других проектах. Для поддержания совместимости символы табуляции заменены знаками пробела.
Программа оптимизирована по быстродействию, поскольку, чем меньше времени потребуется для выполнения кода, тем большей максимальной яркости можно достигнуть (эта взаимосвязь подробно рассмотрена далее). Особое значение имеет время выполнения процедуры ADCSampling. От этого зависит качество стабилизации, т.е. насколько быстро устройство может реагировать на колебания сетевого напряжения. В текущей реализации процедура ADCSampling выполняется за 21 мкс (без учёта времени преобразования АЦП, на которое требуется 27 мкс).
Адресное пространство энергонезависимой памяти разделено на три области. В первой хранятся настраиваемые пользователем параметры устройства, во второй – системные переменные, в третьей – результаты диагностики. Первая область отделена от второй несколькими пустыми ячейками, значения которых равны $FF. Третья область находится в конце адресного пространства. Так сделано для удобства восприятия данных в окне симулятора VMLab, а также для упрощения ориентации в файле EEPROM dimmer.eep, когда требуется определить параметры настройки устройства. Первые 16 ячеек EEPROM не используются. Помимо удобства восприятия, это предохраняет содержимое первой ячейки от случайного изменения, когда регистр адреса EEPROM равен нулю. Нулевое значение присваивается этому регистру во время инициализации (блок Reset.asm). По той же самой причине не используется и последняя ячейка EEPROM, чтобы исключить изменение её содержимого, когда регистр адреса равен максимальному значению $01FF.
Принимая во внимание ограниченное количество циклов перезаписи EEPROM (100 000 согласно паспортных данных), в памяти сохраняются только самые необходимые данные, а именно уровень установленной пользователем яркости и текущее состояние устройства.
Прерывания не задействованы. Программный код, расположенный в блоке Main.asm, выполняется в бесконечном цикле. Тем самым удаётся повысить быстродействие за счёт отказа от команды RETI и команд работы со стеком. Тем не менее, в целях диагностики неисправностей, срабатывание любого прерывания фиксируется и запоминается в EEPROM (подпрограмма WrongINT.asm). Также в целях диагностики запоминается причина, вызвавшая сброс МК (блок ResetCause.asm). Ячейки диагностики, как уже отмечалось, находятся в конце области EEPROM. Если значение хотя бы одной из них отлично от нуля, это говорит о наличии неисправности.
Сторожевой таймер настроен на максимальный период срабатывания (2 секунды). Чем больше интервал, тем легче заметить срабатывание таймера. Особенно это помогает на этапе отладки.
Супервизор питания запрограммирован на минимальный порог 2,7 В. За счёт этого обеспечивается надёжный запуск МК с учётом большой ёмкости конденсатора, установленного в фильтре питания. Супервизор гарантирует стабильный запуск независимо от того, на какое время пропадёт напряжение в сети.
Энергосберегающие режимы не используются. Это связано с тем, что в течение примерно 9,5мс каждого полупериода ведётся непрерывное измерение сетевого напряжения, а в оставшиеся 0,5мс выполняется основная программа. Переводить МК в спящий режим на столь короткое время не имеет смысла. К тому же, возврат МК из любого спящего режима требует дополнительных затрат времени, что сказывается на быстродействии.
Выключение АЦП на время выполнения основной программы тоже не имеет смысла. Установлено, что потребляемый МК ток снижается при этом всего на 10мкА.
Во время инициализации МК интерфейс JTAG и компаратор в целях снижения энергопотребления отключаются.
Выходы МК переключаются одновременно. Это необходимо для того, чтобы оба канала имели равные временные задержки и работали одинаково. С этой целью в программу введён специальный буферный регистр rOutChannels. Изменение состояния выходов осуществляется только командой OUT pMainOut, rOutChannels. После старта МК буферный регистр содержит копию состояния порта pMainOut, большинство выводов которого, по аналогии с другими неиспользуемыми выводами, настроены как входы с внутренними подтягивающими резисторами. Поэтому никакие биты регистра rOutChannels (кроме двух старших) не должны модифицироваться программой. Также не должно изменятся состояние порта напрямую, т.к. любое изменение будет перезаписано содержимым буферного регистра.
АЦП, имеющий разрешение 10 бит, используется в режиме 8-битного преобразования, поскольку высокая точность измерений не требуется. Это позволяет ему работать на максимальной частоте (500 кГц), что обеспечивает высокое быстродействие. Согласно [12, раздел 2.8], допускается работа АЦП на частотах до 1 МГц. Уменьшенное до 8 бит разрешение служит также дополнительной защитой от помех. Для сокращения количества команд управления, АЦП работает в режиме автозапуска, сигналом которому является окончание предыдущего цикла преобразования. Первое преобразование запускается при инициализации МК.
Таймеры не используются. Они создают помехи работе АЦП. Для исключения этого явления существует специальный энергосберегающий режим АЦП ''ADC Noise Reduction''. Но поскольку режимы энергосбережения по причинам, указанным ранее, не используются, временные задержки пришлось реализовать на основе регистров или ячеек ОЗУ.
По окончании инициализации всем регистрам и ячейкам ОЗУ присваивается нулевое значение (блок SRAMInit.asm). В результате, не нужно помнить о том, чтобы все переменные были проинициализированы, т.е. не содержали бы случайных значений. Как следствие, значительно облегчается их поиск.
После инициализации регистров и ОЗУ продолжение программы приостанавливается на несколько секунд (осуществляется программная задержка). За это время напряжение питания МК и образцовое напряжение АЦП успевают достигнуть номинального уровня.
Для повышения быстродействия задействованные ячейки EEPROM копируются перед началом работы либо в регистры, либо в ОЗУ (блок Startup.asm). В большинстве случаев для этой цели используется специальный макрос EEPROMtoSRAM, находящийся в файле Macros.asm (на блок-схеме алгоритма не показан).
При таком подходе появляется возможность проверки считанных из EEPROM данных. Если введённый пользователем параметр настройки является недопустимым, он преобразуется к ближайшему допустимому значению (меньшему или большему). Это действие, условно называемое нормализация, выполняется не для всех ячеек, а только для тех, допустимые значения которых однозначны, а также для тех, недопустимые значения которых могут привести к явным ошибкам в работе устройства.
Допустимые значения ячеек EEPROM, а также значения по умолчанию указаны при описании ячеек в комментариях (блок Dimmer.asm). Значения некоторых ячеек умышленно ограничены диапазоном, удобным для восприятия и запоминания. Например, продолжительность включенного состояния функции ИПХ, задаваемая ячейкой eOwnersAtHomeOnPeriod, ограничена значением 240 минут, хотя функция могла бы исправно работать и при eOwnersAtHomeOnPeriod = 255. Однако значение 240 минут (4 часа) более привычно для запоминания и использования, нежели 255 минут (4,25 часа).
Одной из задач инициализации является однократное измерение сетевого напряжения. Поскольку заранее невозможно предсказать, в какой момент времени светильник будет подключен к сети, результатом этого измерения является случайное число, используемое далее в подпрограмме генератора псевдослучайных чисел как точка отсчёта seed (блок Procedures.EXT.asm).
Перед тем как передать управление основному блоку программа определяет, в каком состоянии находилось устройство перед отключением питания. В зависимости от результата устанавливаются те или иные флаги, сообщающие основной программе о том, какие действия необходимо предпринять. Например, если в момент пропадания сетевого напряжения был включен первый канал, то после восстановления электроснабжения он включится автоматически (если это было предварительно разрешено пользователем в настройках устройства).
Как уже отмечалось, код основного блока Main.asm выполняется в бесконечном цикле. Так как детектирование перехода сетевого напряжения через нуль осуществляется в каждом полупериоде, цикл Main.asm повторяется каждые 10 мс.
Первая команда основного блока – сброс сторожевого таймера. Следует отметить, что это единственное место во всей основной программе, где осуществляется сброс сторожевого таймера.
Первоначально для детектирования момента перехода сетевого напряжения через нуль использовался следующий алгоритм: АЦП циклически производил считывание входного напряжения и сравнивал результат преобразования с заданной константой. Как только происходило совпадение, подавалась команда на включение каналов, и цикл завершался. Из-за отсутствия кварцевой стабилизации тактовой частоты МК, для точного обнаружения момента перехода фазы сети через нуль требовался подбор константы под конкретный экземпляр МК. Был альтернативный вариант: вместо подбора константы осуществлять калибровку внутреннего RC генератора. И то и другое отрицательно сказывалось на повторяемости устройства. Но основная причина, побудившая изменить алгоритм, заключалась в невысокой помехоустойчивости. Действительно, если помеха (всплеск сетевого напряжения) возникала близко к моменту перехода фазы сети через нуль, МК продолжал измерять входное напряжение, ожидая его совпадения с константой. Поскольку после прекращения помехи входное напряжение оказывалось больше заданного константой, МК был вынужден оставаться в цикле измерений до следующего перехода фазы. Так как во время измерения напряжения каналы находятся в выключенном состоянии, визуально такой «простой» выглядел как моргание ламп(ы), т.к. в течение как минимум 10 мс напряжение на нагрузке отсутствовало.
Изменённый алгоритм основан на сравнении не с константой, а с предыдущим результатом измерения. Команда на включение каналов подаётся только тогда, когда текущий результат измерения становится больше предыдущего. В рассмотренном только что примере МК будет детектировать помеху как напряжение, превышающее предыдущее. Это приведёт к моментальному выходу из цикла, что визуально будет практически не заметно. В обычном режиме (без воздействия помех) МК осуществит выход из цикла, как только сетевое напряжение сменит направление с убывающего на возрастающее, т.е. сразу после перехода сетевого напряжения через нуль.
Таким образом, отпадает необходимость в кварцевом резонаторе, калибровке внутреннего генератора и в калибровке АЦП. Также не требуется дополнительная константа и настройка устройства под конкретный экземпляр МК.
Погрешность нового алгоритма нетрудно подсчитать. Для определения момента, когда сетевое напряжение начало возрастать, достаточно двух измерений. Время одного преобразования АЦП составляет 27 мкс (см. раздел Выбор_константы_cADCSamplesCount). Время на обработку полученного результата (первые 5 команд процедуры PhaseDetect) составит в худшем случае 8 мкс. Значит, максимальная погрешность равна 27 + 27 + 8 = 62 мкс. Согласно формуле U = A • sin(2 • p • f • t), при такой задержке мгновенное напряжение в сети будет находиться на уровне U = 310 • sin(2 • 3,14 • 100 • 62•10-6) = 12 В (относительно номинального сетевого напряжения).
Включение с интервалом 10 мс лампы мощностью 60 Вт с сопротивлением нити 882 Ом при напряжении 12 В создаст ток всего 12 / 882 = 14 мА. Такой малый ток не способен заметно повлиять на сокращение срока службы лампы, создать помехи, и т.п.
Ввиду разветвлённости алгоритма основной программы его наглядное изображение в графическом виде не приводится, т.к. будет затруднительно для восприятия. Отдельные процедуры основной программы описаны далее. Облегчить понимание логики работы призваны комментарии к программному коду.
Функция ИПХ (Имитация Присутствия Хозяев) использует в качестве счётчика времени во включенном и выключенном состоянии отдельную процедуру. Имеющуюся процедуру TurnOffTimeoutCH2 использовать нельзя. Тому есть три причины. Во-первых, она строго индивидуальна для каждого канала. Во-вторых, её модификация потребовала бы слишком больших усилий (понадобилось бы большое количество условных переходов). В-третьих, если продолжительность включенного или выключенного состояния составляет нечётное число, скажем, 3 минуты, то пришлось бы делить его поровну между двумя процедурами и иметь дело с дробными числами. Вариант, когда процедура выполняется только в одном из каналов, тоже не подходит, т.к. принято, что программный код обоих каналов одинаков (для удобства модификации и подсчёта времени выполнения программы).
В функции ИПХ практически везде опрашивается бит лишь одного (первого) канала. Это допустимо благодаря идентичности каналов, а также благодаря тому, что в данном режиме каналы управляются синхронно.
В момент включения функции ИПХ устанавливаются биты ebPowerState. Это сделано на случай пропадания сетевого напряжения в момент включения. Таким образом, при восстановлении напряжения работа функции будет продолжена.
В функции автоотключения процентное значение, на которое уменьшается яркость, умышленно ограничено интервалом от 10 до 90%. Такой диапазон хорошо подходит для визуального восприятия. Кроме того, уменьшение яркости менее чем на 10% незаметно.
Для определения значения регистра rSoftOffBrightChХ, хранящего величину уменьшенной яркости с учётом заданного пользователем процента, в целях ускорения программы используется табличный метод (таблица PercentageTable). Для каждого заданного пользователем значения процента Y, в таблице находится округлённое число Х, заранее вычисленное по формуле: X = ((100 – Y) / 100) • 256. Таблица состоит из (90 – 10) + 1 = 81 ячейки. Когда истекает время непрерывной работы канала, происходит обращение к таблице, затем текущее значение яркости умножается на полученное из таблицы число. Поскольку это число предварительно было умножено на 256, результат делится на 256 путём простого отбрасывания старшего байта, после чего результат округляется. Например, предположим, что текущая яркость, т.е. число в регистре rBrightnessChХ, равно 200, а заданный пользователем процент снижения яркости равен 25%. По истечении времени непрерывной работы канала программа обратится к таблице, в которой смещению 25 соответствует число 192. Программа произведёт умножение (200 • 192 = 38400), разделит результат на 256 (38400 / 256 = 150), округлит его (в данном примере в этом нет необходимости) и запишет итог в регистр rSoftOffBrightChХ. Нетрудно подсчитать, что исходная яркость 200, уменьшенная на 25%, действительно равна 150.
Несмотря на кажущееся сходство битов bIsChannelOn и ebPowerState, объединять их воедино нельзя. Вместе они предотвращают включение канала, если во время его выключения по истечении времени непрерывной работы был сбой в электросети.
Дребезг контактов кнопок SB1 и SB2 устраняется благодаря тому, что основная программа опрашивает их состояние каждый полупериод, т.е. каждые 10 мс. Устранению дребезга также способствует наличие внутреннего триггера Шмитта и линии задержки на входах МК.
Обработка состояния кнопок построена таким образом, что так называемое вторичное действие не поддерживается. Пример: в выключенном состоянии удерживание кнопки приводит к включению канала во втором режиме. Если продолжать удерживать кнопку, то после того как канал включился, его яркость не начнёт изменяться, как это обычно происходит при удерживании кнопки и включенном канале. Яркость можно будет изменить только после отпускания кнопки и повторного её удерживания. Такой подход более эргономичен, к тому же он позволяет исключить ошибки, связанные с детектированием нажатия и удерживания кнопок в зависимости от функции, режима, и текущего состояния устройства.
Реализация обработчика кнопок основана на анализе значения регистра rButtonХHoldTime, в котором хранится длительность удерживания кнопки в нажатом положении, а также на сравнении его значения с константой cButtonOnHoldSense, определяющей временной порог, начиная с которого нажатие на кнопку распознаётся как удерживание. Этот порог равен 1 секунде. В текущей версии он определён в коде программы, т.е. не может быть изменён конечным пользователем.
Регистр rButtonХHoldTime может иметь четыре значения:
1) rButtonХHoldTime = 0 (кнопка не нажата);
2) 0 < rButtonХHoldTime < cButtonOnHoldSense (кнопка нажата);
3) rButtonХHoldTime = cButtonOnHoldSense (кнопка удерживается);
4) rButtonХHoldTime = 255 (кнопка остаётся в нажатом положении после удерживания).
Последнее значение сигнализирует о том, что надо дождаться отпускания кнопки. Пока этот момент не наступит, никакие действия, связанные с обработкой состояния кнопки, не выполняются.
Подпрограммы чтения и записи EEPROM работают только с первыми 256 байтами. Это упрощает адресацию, т.к. старший регистр адреса всегда равен нулю и не используется.
Если в момент обращения к EEPROM идёт обработка предыдущего запроса, то подпрограмма чтения дожидается его окончания. Подпрограмма записи в аналогичной ситуации немедленно прекращается. Это вполне допустимо, поскольку задержка записи даже в несколько десятков миллисекунд не нарушает работу основной программы, и не заметна для пользователя.
Как уже отмечалось, согласно описанию МК, гарантированное число циклов перезаписи EEPROM составляет не более 100 000. По этой причине запись в ячейку осуществляется лишь в том случае, если записываемый байт данных отличается от того, что в ней уже записан.
В основе подпрограммы генерации псевдослучайного числа RandomNumber8bit лежит алгоритм [6, раздел 9.33 "Последовательности, генерируемые регистрами сдвига с обратными связями"]. Используется программно реализованный 8-ми разрядный регистр сдвига с отводами от 7-го, 5-го, 4-го и 3-го разряда, над которыми производится логическая операция исключающее или (XOR, в МК соответствует команде EOR).
Входными данными подпрограммы является seed – число, определяющее начало псевдослучайной последовательности. Это число должно быть
отлично от нуля. В противном случае оно заменяется числом 113. Почему именно 113? Потому что это первое число от начала списка, удачно располагающееся с точки зрения возвращаемого результата, умноженного на два. Первоначально seed генерируется путём измерения сетевого напряжения в момент подключения устройства к сети, что гарантирует действительно случайный характер seed.
Для повышения скорости выполнения подпрограммы и сокращения количества кода содержимое регистра SREG не сохраняется, хотя подпрограмма изменяет состояние некоторых его флагов.
2.6 Выбор, описание и расчеты элементной базы
Устройство предназначено для управления стандартными лампами накаливания. Подключение другой нагрузки, например энергосберегающей лампы или электродвигателя, может вывести устройство и (или) нагрузку из строя.
Полный перечень использованных компонентов (спецификация) прилагается (Приложение В). Также прилагаются описания активных компонентов, задействованных в схеме (Приложение Г).
а) Диодный мост
Применение диодного моста VD2, рассчитанного на ток 6 А, для работы с небольшим током нагрузки (максимум 0,55 А) объясняется тем, что лампы иногда перегорают во время работы. Возникающий при этом импульс тока амплитудой более 10...20 А способен повредить одноамперные мосты, такие как КЦ402 или КЦ405.
Ещё одна причина большого запаса по току – это гораздо меньшая степень нагрева моста. Впрочем, полностью устранять нагрев не имеет смысла, т.к. корпус устройства всё равно немного нагревается от ламп, особенно когда они включены на максимальную яркость.
По причине, указанной в разделе Защита от превышения сетевого напряжения, диодный мост должен быть рассчитан на обратное напряжение не менее 600 В.
б) Блок питания
Источник опорного напряжения
Особенностью схемы является использование для питания МК не обычного стабилитрона, а интегрального источника опорного напряжения DA1 параллельного типа. Как уже отмечалось, это позволяет отказаться от отдельного ИОН и снизить потребляемый ток. Помимо этого, если напряжение на выходе параллельного ИОН повысится по каким-либо причинам, возникшим со стороны шины питания схемы, это не приведёт к нарушению стабилизации, а лишь увеличит ток через ИОН. Это общая особенность параллельных стабилизаторов напряжения [3].
Нерегулируемый двухвыводной ИОН выбран специально – нет необходимости подбирать и устанавливать два дополнительных высокоточных резистора. Для стабильной работы данного ИОН не требуется конденсатор с низким эквивалентным последовательным сопротивлением (ESR), что тоже является плюсом.
Выбираем ИОН серии LM4040 с классом точности 1%.
в) Балластный резистор
Для гашения избытка сетевого напряжения, поступающего на вход ИОН, используется балластное сопротивление, образованное резисторами R1 и R2. Принцип действия ИОН параллельного типа совпадает с обычным стабилитроном, поэтому для расчёта гасящего резистора можно применить классическую формулу:
R = (Uвх – Uст) / (Iн + Iст), (2.1)
где Uвх – входное (ограничиваемое) напряжение, снимаемое с выхода диодного моста;
Uст – напряжение стабилизации стабилитрона;
Iн – ток нагрузки;
Iст – ток стабилитрона.
Изменим формулу с учётом падения напряжения на двух диодах диодного моста:
R = (Uвх – 2•Uд – Uст) / (Iн + Iст). (2.2)
Падение напряжения на предохранителе не учитываем, т.к. оно составляет всего 0,2 В при максимальной нагрузке. Добавив коэффициент, учитывающий разброс сопротивления резистора, получаем конечную формулу:
R = [(Uвх – 2•Uд – Uст) / (Iн + Iст)] • Кr (2.3)
Сопротивление резистора должно быть, с одной стороны, достаточно низким, чтобы обеспечить минимальный ток стабилитрона при максимальном токе нагрузки и минимальном напряжении сети, но, с другой стороны, достаточно высоким, чтобы при максимальном напряжении сети и минимальном токе нагрузки не превысить максимально допустимый ток стабилитрона.
Начнём с выяснения максимального сопротивления резистора, обеспечивающего минимальный ток стабилитрона при наихудших условиях.
Минимальное среднее значение выпрямленного напряжения Uвх при 10%-ном допуске на напряжение сети [4] составит 198 В. Но здесь следует также учесть снижение напряжения под воздействием мощной нагрузки. В расчёте максимальной яркости лампы указано снижение на 4 В. Значит
Uвх = 198 – 4 = 194 (В).
Наибольшее падение напряжения на диодном мосту Uд будет при максимальной нагрузке. Согласно графику из описания моста, при токе нагрузки 0,55 А, когда обе лампы включены на максимальную яркость, прямое напряжение для одного диода составляет около 0,73 В.
Отклонение стабилизированного напряжения равно 1% (по описанию LM4040, класс точности D). Значит
Uст = 5 + 0,05 = 5,05 (В).
Минимальный ток, требуемый для работы стабилитрона, в соответствии с его описанием, составляет Iст = 0,1 мА.
Поскольку в схеме используются два резистора, каждый из которых имеет допуск 5%, принимаем Кr = 0,9. Старение резисторов (увеличение сопротивления со временем) не учитывается, т.к. они не будут подвергаться ни максимально допустимому напряжению, ни высокой температуре.
Потребляемый ток почти не зависит от того, включены ли каналы, в каком количестве и на какой яркости.
В силу малых величин обратные токи защитного диода, диодного моста, транзисторов, а также токи утечки конденсаторов не учитываются.
В значительной степени на ток потребления влияет нажатие кнопок. В этом случае ток протекает от плюса источника питания через внутренний (pull-up) резистор МК и замкнутую кнопку на землю. Указанное в описании МК минимальное сопротивление внутреннего резистора составляет 20 кОм. Если нажаты обе кнопки, ток составит I=2 • (5 / 20000) = 0,5 (мА).
Таким образом, суммарный максимальный ток потребления по цепи +5В (при напряжении ровно 5,0 В) равен 2,2 + 0,5 = 2,7 мА (без учёта тока стабилитрона).
Значит, в худшем случае, т.е. при напряжении 5,05 В, потребляемый ток составит Iн = 5,05 • 2,7 / 5 = 2,73 мА.
Если бы в схеме использовался однополупериодный выпрямитель, этот ток нужно было бы удвоить.
Подставим полученные данные в исходную формулу (2.3):
R = [(194 – 2•0,73 – 5,05) / (0,00273 + 0,0001)] • 0,9 =
= [187,49 / 0,00283] • 0,9 = 66251 • 0,9 = 59626 (Ом)
Таким образом, балласт должен иметь сопротивление не более 60 кОм. Его можно получить, соединив последовательно два резистора по 30 кОм (о том, почему нельзя обойтись одним резистором, рассказано далее при расчёте его мощности).
Теперь для найденного сопротивления балластного резистора рассчитаем, не выйдет ли из строя стабилитрон, если сетевое напряжение увеличится до уровня ограничения защитного диода VD1, а также при воздействии других неблагоприятных факторов. Преобразуем ранее использованную формулу к следующему виду:
Iст = [(Uвх – 2•Uд – Uст) / (R • Кr)] – Iн. (2.4)
Для расчёта принимаем следующие численные значения:
Максимальное напряжение ограничения защитного диода Uвх = 548 В.
При отсутствии нагрузки падение напряжения на одном диоде диодного моста составит Uд = 0,65 В.
Минимальное напряжение стабилизации стабилитрона Uст = 5 – 0,05 = 4,95 (В).
Так как шунт составлен из двух резисторов, R = 30000 + 30000 = =60000(Ом).
Коэффициент сопротивления Кr принимаем равным 0,95, т.к. при этом ток стабилитрона будет больше.
Минимальный ток нагрузки будет при не нажатых кнопках. При номинальном напряжении питания 5 В этот ток равен 2,2 мА. Значит при минимальном напряжении 4,95 В ток будет равен Iн = 4,95 • 2,2 / 5 = 2,18 (мА).
Iст = [(548 – 2•0,65 – 4,95) / ((30000 + 30000) • 0,95)] – 0,00218 =
= [541,75 / 57000] – 0,00218 = 7,3 (мА).
Полученное значение меньше 12 мА – величины максимального тока ИОН, рекомендованного в его описании. Мощность ИОН, рассеиваемая при таком токе, составит 5 • 0,007 = 35 (мВт). Это более чем на порядок меньше его максимальной мощности 500 мВт. Следовательно, выбранное сопротивление балластного резистора нам подходит.
Переходим к расчёту мощности балластного резистора. На первый взгляд, казалось бы, резистора 0,5 Вт будет вполне достаточно, ведь он выдерживает напряжение до 350 В. На самом деле это не так. В [5] сказано, что мощность резистора, указываемая в его описании, действительна лишь в том случае, если его сопротивление выше так называемого критического. Последнее вычисляется по формуле:
Rк = Uпасп2 / Pпасп, (2.5)
где Uпасп – паспортное рабочее напряжение резистора,
Pпасп – его паспортная мощность.
Для резистора серии С2-23 мощностью 0,5 Вт критическое сопротивление Rк = 3502 / 0,5 = 245 (кОм). Если сопротивление резистора, как в нашем случае, меньше критического расчёт мощности следует производить по формуле: P = U2 / R. Учитывая максимальное напряжение сети, минимальное падение напряжения на диодном мосту, и минимальное напряжение стабилизации, мощность резистора будет равна:
P = (Uвх – 2•Uд – Uст)2 / R (2.6)
P = (242 – 2•0,65 – 4,95)2 / 60000 = 0,93 (Вт).
Однако оказалось, что мощности резистора 1 Вт тоже недостаточно. Экспериментальная проверка показала, что даже резистор 2 Вт (отечественный, серии МЛТ-2) сопротивлением 56 кОм сильно нагревается. Согласно требованиям проекта, это недопустимо. Нагрев балластного резистора является единственной причиной нагрева корпуса устройства в ждущем режиме. Поэтому необходимо этот нагрев устранить.
Попытка использования 5 Вт импортного резистора серии SQP сопротивлением 50 кОм проблему не решила – он нагревается почти до той же температуры, что и МЛТ-2.
В результате было решено использовать два 2 Вт резистора, соединив их последовательно. Помимо снижения температуры, это повышает надёжность устройства, т.к. в случае пробоя одного из резисторов, второй предотвратит выход ИОН из строя. Чтобы обеспечить равномерный нагрев, номиналы резисторов должны быть одинаковыми.
Предпочтительны отечественные 2 Вт резисторы серии МЛТ-2. Их габариты несколько больше импортных аналогов серии С2-23, зато они меньше нагреваются.
г) Фильтрующий конденсатор
Конденсатор С1 сглаживает пульсации выпрямленного напряжения. Хотя для расчёта его ёмкости можно было воспользоваться методикой из [6, стр.52, раздел 1.27 "Фильтрация в источниках питания"], конденсатор подбирался эмпирическим путём. Это вызвано следующим обстоятельством.
Через несколько секунд после окончания регулировки яркости её значение запоминается в EEPROM. Согласно описанию МК, ток программирования составляет 6 мА (при 5 В, 25°С). Отсюда следует, что по сравнению с током потребления в обычном режиме ток при записи возрастает почти в четыре раза: (2,2 мА + 6 мА) / 2,2 мА = 3,7. Цикл записи, согласно описанию МК, длится 8,5 мс, т.е. почти целый полупериод (10 мс). При таких условиях накопленный заряд конденсатора быстро истощается, что приводит к уменьшению напряжение питания МК и образцового напряжения АЦП. Визуально это выглядит как кратковременное однократное моргание лампы через несколько секунд после окончания регулировки яркости (эффект заметен при уровне яркости выше среднего).
Код программы построен таким образом, что циклы записи в EEPROM следуют друг за другом через каждые 10 мс. Если регулировка яркости прекращается одновременно для двух каналов, запись в память будет длиться на 8,5 мс больше. За 1,5 мс (10 мс – 8,5 мс) конденсатор не успеет полностью зарядиться, соответственно, напряжение опустится ещё ниже, и моргание лампы будет ещё заметнее, особенно при пониженном напряжении сети.
Поскольку заранее неизвестно, при какой амплитуде пульсаций моргание становится заметно (а именно к амплитуде пульсаций привязана формула в [6]), конденсатор подбирается экспериментально.
Номинал 1000 мкФ позволяет устранить моргание после окончания регулировки яркости одного канала, и сделать моргание почти не заметным после одновременного окончания регулировки яркости обоих каналов. Дальнейшему повышению ёмкости конденсатора препятствуют малые габариты устройства.
Конечно, можно было организовать задержку между последовательными записями в EEPROM. Однако увеличение времени выполнения основной программы за счёт добавления кода, в данном случае не оправдано. Во-первых, мала вероятность того, что обе кнопки будут отпущены одновременно, причём на уровне яркости выше среднего для обеих ламп. Во-вторых, невелика вероятность того, что напряжение в сети упадёт до 198 В. Наконец, в-третьих, эффект моргания слишком мало заметен чтобы уделять этому внимание.
На функционировании ИОН большая величина ёмкости не отражается, т.к. в его описании сказано, что допустима ёмкостная нагрузка любого номинала.
После подключения устройства к сети, чтобы к началу основного цикла программы напряжение питания МК успело стабилизироваться на номинальном уровне, требуется организовать задержку старта. Если этого не сделать, то вследствие заниженного опорного напряжения АЦП нарушится плавность автоматического включения каналов.
Учитывая прямую зависимость частоты внутреннего RC-генератора МК от напряжения питания, а также погрешность измерений, была выбрана задержка с запасом, равная 4 секундам. Часть этой задержки обеспечивается внутренними узлами МК Power-on Reset и Brown-out Detection (BOD, супервизор питания). Оставшаяся часть реализована программно.
Переходим к выбору номинального напряжения конденсатора. Этот параметр в значительной степени определяет срок его службы. В [8] рекомендуется, чтобы рабочее напряжение составляло 80…100% от номинального. С другой стороны, в [9] рекомендуется, чтобы рабочее напряжение было в два раза меньше номинального. Выбираем конденсатор с напряжением 6,3 В.
Здесь имеет смысл обратить внимание на следующий факт. В описаниях электролитических конденсаторов фирмы Jamicon указано, что, начиная с рабочего напряжения 25 В, их ёмкость изменяется со временем на 20%. Для меньших же напряжений это значение равно 25%.
Верхний предел температурного диапазона, на который рассчитан выбранный конденсатор, составляет 105°С. Это ещё один параметр, в значительной степени влияющий на срок службы конденсатора. Выбор обусловлен также тем, что корпус устройства немного нагревается от ламп, диодного моста и балластного резистора.
Уменьшение ёмкости конденсатора, связанное с разбросом номинала или старением, не нарушит работоспособность устройства. Возможно лишь чуть более заметное моргание ламп в момент запоминания яркости.
д) Микроконтроллер
Несмотря на то что напряжение питания схемы составляет 5 В, используемый МК U1 имеет индекс L, означающий возможность работы при напряжении питания от 2,7 до 5 В. Это связано с большой ёмкостью фильтрующего конденсатора, т.е. с плавным нарастанием напряжения питания при подключении устройства к сети.
Порог встроенного в МК супервизора питания выставлен в соответствии с описанием на 2,7 В. Если же этот порог сделать равным 4,0 В, или использовать обычный МК (без индекса L) с порогом 4,0 В, или вообще отказаться от встроенного супервизора, некоторые экземпляры МК могут не запуститься, особенно при минимальном напряжении сети 198 В. Использовать же обычный МК с порогом 2,7 В нельзя, т.к. это может привести, в частности, к искажению данных EEPROM, если во время сохранения информации произойдёт отключение питания.
МК тактируется внутренним RC генератором на частоте 1 МГц. Этого достаточно чтобы получить среднее время выполнения основной программы около 0,5 мс. Здесь важно помнить о том, что повышение тактовой частоты увеличивает ток потребления. Стабилизировать частоту кварцевым или керамическим резонатором не требуется, т.к. в данном применении высокая точность не нужна. Также не требуется калибровка внутреннего генератора.
Производитель МК рекомендует предпринять следующие меры при работе с АЦП:
- установить между выводом REF и общим проводом фильтрующий конденсатор;
- соединить вывод AGND с аналоговой землёй;
- использовать LC фильтр питания в цепи AVCC;
- при измерении не переключать выводы АЦП порта, если они настроены как цифровые выходы.
Поскольку высокая достоверность результата измерения не требуется, то с целью упрощения схемы, вышеуказанные меры не соблюдаются. Калибровка АЦП тоже не требуется, в том числе потому, что используется обычный канал, а не дифференциальный [12, раздел 2.3].
Несмотря на принятые упрощения, точность, т.е. повторяемость схемы, от этого не ухудшается. Благодаря внешнему ИОН, используемому также в роли стабилизатора питания МК, результаты измерений АЦП всегда остаются стабильными вплоть до младшего значащего разряда, даже при 10- битном разрешении АЦП.
По рекомендации ATMEL, для обеспечения надёжной работы МК, в непосредственной близости от его выводов питания установлены блокировочные конденсаторы С2 (керамический) и С3 (танталовый электролитический). В данной схеме это особенно актуально, т.к. при коммутации затворов транзисторов, обладающих довольно высокой ёмкостью, возникают значительные импульсные токи.
Для программирования МК предусмотрен разъём JS4 "ISP" (In-System Programming, внутрисхемное программирование). Также как и при программировании EEPROM самой программой во время работы, во время внутрисхемного программирования ток МК, согласно его описанию, составляет 6 мА (при 5 В и 25°С). По результатам измерений максимальный потребляемый ток находился в интервале от 4,3 мА до 5,8 мА. Из-за малой мощности блока питания напряжение во время программирования снижалось примерно до 3,3 В. Однако многократный опыт перепрограммирования МК показал что это безвредно. Более того, в Интернете встречаются сообщения о том, что МК нормально программируется при напряжении вплоть до 3 В.
При программировании МК в составе устройства важно обратить внимание на следующие моменты:
– требуется гальваническая развязка программатора, поскольку схема находится под потенциалом сети;
– может потребоваться внешний блок питания (тоже с гальванической развязкой), если программатору будет недостаточно тока, вырабатываемого блоком питания схемы;
– желательна установка высокоомных резисторов (порядка 100 кОм) между затворами и истоками транзисторов чтобы не допустить их возможного перегрева, а также выхода из строя из-за самопроизвольного открывания и увеличения сопротивления канала, вызванного тем, что во время программирования выводы МК находятся в высокоимпедансном состоянии.
Поэтому лучшим вариантом, возможно, окажется запрограммировать МК до установки в схему.
Состояние фьюзов МК соответствует значениям по умолчанию, за исключением запрограммированного фьюза BODEN, разрешающего использование встроенного супервизора питания (Рисунок 2.5).
Рисунок 2.5 – Программирование фьюзов МК
Ранее отмечалось, что МК с незадействованным супервизором питания может не запуститься. Чтобы обойти это ограничение и иметь возможность запрограммировать фьюз, следует после появления напряжения питания кратковременно соединить вывод Reset МК с общим проводом.
Рекомендуется использовать программатор – avrdude . В частности, он входит в состав бесплатной среды разработки WinAVR.
Не показанные на схеме выводы МК никуда не подключены.
ж) Делитель напряжения
Резисторы R3 и R4 образуют делитель, необходимый МК для измерения напряжения сети и определения момента перехода фазы через нуль. Обычно резистор между выходом диодного моста и входом МК рекомендуется составлять из двух включенных последовательно (на случай пробоя одного из них), но поскольку перед диодным мостом установлен защитный диод, эта рекомендация не выполняется.
Делитель должен быть рассчитан таким образом, чтобы при максимальном входном напряжении Uвх выходное напряжение делителя Uвых не превышало напряжение питания МК. Эта величина определяется прямым напряжением внутреннего диода МК. В данной схеме важно чтобы входной сигнал не превышал минимальное напряжение питания МК, потому что это напряжение является опорным для АЦП. Иначе результатом АЦП будут коды соответствующие опорному напряжению, а не истинному значению входного сигнала.
Согласно описанию МК, АЦП рассчитан на обработку низкоомных сигналов (10 кОм и менее). Поэтому для нижнего плеча делителя напряжения выберем номинал равный 9,1 кОм, чтобы предусмотреть 5%-ный допуск сопротивления.
Для вычисления минимального сопротивления верхнего плеча делителя воспользуемся стандартной формулой:
Uвых = (Uвх • R2) / (R1 + R2). (2.6)
Отсюда: R1 = ((Uвх – Uвых) • R2) / Uвых (2.7)
Введём коэффициент Квх, определяющий максимальное отклонение сетевого напряжения:
R1 = ((Uвх•Квх – Uвых) • R2) / Uвых (2.7,а)
Поскольку нас интересует полный размах сетевого напряжения, перепишем формулу с учётом амплитудного значения:
R1 = ((Uвх•Квх•1,41 – Uвых) • R2) / Uвых. (2.7,б)
Учтём падение напряжения на двух диодах диодного моста:
R1 = ((Uвх•Квх•1,41 – 2•Uд – Uвых) • R2) / Uвых (2.7,в)
Падение напряжения на предохранителе не учитывается, т.к. оно составляет всего 0,2 В при максимальной нагрузке.
Осталось добавить коэффициенты Кr, определяющие отклонение резисторов от номинала:
R1 = ((Uвх•Квх•1,41 – 2•Uд – Uвых) • R2 • Кr2) • Кr1 / Uвых (2.7,г)
Переходим к подстановке численных значений.
Входное напряжение Uвх = 220 В, его отклонение Квх = 10%.
В качестве значения Uд берём минимальное падение напряжения, т.к. в этом случае сопротивление резистора R1 будет больше. Минимальное падение напряжения на диодах моста будет при минимальном токе, т.е. при отключенной нагрузке. Судя по графику из описания диодного моста, падение напряжения на одном элементе при токе нагрузки 10 мА равно примерно
Uд = 0,65 В
Благодаря использованию фильтрующего конденсатора большой ёмкости, пульсациями БП можно пренебречь. Поэтому минимальное напряжение питания МК определяется минимальным напряжением стабилизации ИОН, что, согласно описанию последнего, равно
Uвых = 5 – 1% = 4,95 В
Стандартный допуск на отклонение сопротивления резисторов равен
Кr = 5%. Нужно предусмотреть ситуацию, когда сопротивление R2 (R3 по схеме) будет больше, т.к. при этом Uвых тоже увеличится. Это, как было отмечено ранее, может привести к неверному результату измерения. Поэтому принимаем Кr2 = 0,95. С сопротивлением R1 (R4 по схеме) ситуация противоположная – важно учесть уменьшение сопротивления. Поэтому Кr1 = 1,05.
Подставляя численные значения в формулу, получаем:
R1 = ((220•1,1•1,41 – 2•0,65 – 4,95) • 9,1•103 • 0,95) • 1,05 / 4,95 = =(334,97 • 8,65•103) • 1,05 / 4,95 = 3042,37•103 / 4,95 = 614,6•103 (Ом).
Ближайшим сопротивлением из стандартного ряда, превышающим полученное значение, является номинал 620 кОм.
Поскольку падение напряжения на резисторе верхнего плеча делителя может достигать 242 • 1,41 = 341 (В), резистор должен иметь мощность 0,5 Вт. Как было показано при расчёте балластного резистора, на паспортную мощность можно ориентироваться только тогда, когда сопротивление резистора больше критического. Для резистора серии С2-23 мощностью 0,5 Вт критическое сопротивление Rк = 3502 / 0,5 = 245 (кОм), что почти в три раза меньше чем 620 кОм. Значит, мощность резистора 0,5 Вт в данном случае выбрана правильно.
к) Выходной каскад
Нагрузка коммутируется N-канальными MOSFET транзисторами VT1 и VT2. Особенностью схемы является отсутствие драйвера, что в соответствии с требованием проекта уменьшает количество используемых компонентов. Транзисторы управляются напрямую выходами МК.
Как выяснилось, при напряжении на затворе 5 В и мощности нагрузки 60 Вт канал транзистора почти полностью открывается, даже несмотря на довольно высокое сопротивление резистора в цепи затвора. Так происходит благодаря тому, что ток нагрузки (около 0,25 А) составляет величину примерно в 20 раз меньшую максимально допустимого тока стока транзистора. При таких условиях падение напряжения на переходе сток-исток транзистора составляет менее 1 В, что не приводит к заметному на глаз снижению максимальной яркости лампы.
Тока выхода МК оказывается достаточно для перезарядки ёмкости затвора благодаря невысокой частоте переключения (100 Гц). Это примерно на два порядка меньше частоты, на которой работают MOSFET транзисторы в традиционных переключательных схемах, например в импульсных источниках питания.
Отсутствие драйвера может привести к самопроизвольному включению транзистора в случае резкого всплеска напряжения на стоке. Этот эффект, известный под названием CdV\dt turn-on, вызван наличием ёмкости между затвором и стоком (ёмкость Миллера). Иногда вернуть транзистор в нормальный режим работы удаётся лишь после отключения схемы от сети на несколько минут (на время остывания транзистора). Одним из лучших способов предотвратить случайное включение является выбор транзистора, у которого соотношение Qgd / Qgs1 составляет величину менее 1,4 [7]. Здесь Qgd – это величина заряда затвор-сток, Qgs1 – это величина заряда, при котором напряжение на затворе достигает порогового значения (определяется по графику Total Gate Charge). К сожалению, транзисторы, соответствующие данному правилу, встречаются крайне редко. С другой стороны, случаи резких всплесков напряжения на стоке тоже крайне редки.
При резком спаде напряжения на стоке и отсутствии драйвера ёмкость Миллера не приводит к самопроизвольному включению транзистора, но на затворе может возникнуть отрицательный потенциал, превышающий допустимое напряжение затвор-исток [10, раздел 3]. Это может стать причиной выхода транзистора из строя. Поэтому одним из критериев при выборе транзистора стало наличие встроенного ограничителя напряжения на затворе. Такое решение позволило отказаться от дополнительных внешних компонентов. Кроме этого, встроенный ограничитель предохраняет затвор от воздействия статического электричества, к которому MOSFET транзисторы как класс приборов имеют высокую чувствительность.
При напряжении ограничения встроенного в транзистор ограничителя около 30 В и сопротивлении резистора в цепи затвора 10 кОм ток через выход МК составит примерно 3 мА, что в три раза превышает допустимый. Поэтому для повышения надёжности схемы между затвором и истоком транзистора можно поставить дополнительный ограничитель с максимальным напряжением ограничения до 10 В. При таком напряжении ток через внутренние защитные диоды МК будет находиться на безопасном уровне 1 мА.
Также для повышения надёжности можно поставить высокоомный резистор (порядка 100 кОм) между затвором и истоком транзистора. Это предотвратит включение транзистора, когда выходы МК находятся в высокоимпедансном состоянии, например при срабатывании супервизора питания или сторожевого таймера. Поскольку такие ситуации кратковременны и маловероятны, резисторы затвор-исток не используются, поэтому на схеме не показаны.
Транзисторы
Для того чтобы транзистор был пригоден для использования в данном устройстве, он должен обладать следующими характеристиками:
- ток стока – не менее 6 А, типовое сопротивление канала – не более 1 Ом;
- напряжение сток-исток – не менее 600 В;
- двусторонний ограничитель напряжения на затворе – есть;
- максимальное пороговое напряжение затвор-исток – менее 5 В;
- график зависимости тока стока от напряжения на затворе – нормирован для напряжения затвора 5 В или меньше. То же относится к графику зависимости тока стока от напряжения сток-исток.
Кроме этого, в соответствии с требованием к проекту транзистор не должен сильно нагреваться, в идеале – не нагреваться вообще. Величина нагрева Tja характеризуется формулой:
Tja = P • Rth = R • I 2 • Rth + 25°C, (2.8)
Где R – сопротивление канала сток-исток;
I – ток нагрузки;
Rth – тепловое сопротивление транзистора (корпус-окружающая среда).
Так как частота переключения транзистора не превышает 100 Гц, его динамические потери малы, на нагрев не влияют, и поэтому в формуле не учитываются.
Из формулы следует, что транзистор должен иметь как можно меньшее значение теплового сопротивления. Выбранный транзистор имеет корпус практически идентичный корпусу TO220, и обладает относительно невысоким тепловым сопротивлением (62,5°C).
По причине, указанной далее в разделе Защита от превышения сетевого напряжения, транзистор должен быть рассчитан на напряжение сток-исток не менее 600 В. Помимо этого, в случае обрыва защитного диода транзистор не выйдет из строя при аварийном повышении напряжения сети вплоть до 380 В±10%.
По результатам изучения продукции основных производителей MOSFET транзисторов (Infineon, International Rectifier, Ixys, Fairchild, NEC, NXP, ON Semiconductors, Renesas, Toshiba, Vishay) выяснилось, что встроенный ограничитель напряжения на затворе имеется только у транзисторов фирмы Toshiba (данные 2009 года). Следует отметить, что рекомендация основана только на изучении описаний транзисторов. В частности, может потребоваться подбор резистора в цепи затвора.
Теоретически в устройстве можно применить и IGBT транзисторы. Однако найти такие экземпляры, которые удовлетворяли бы всем вышеперечисленным требованиям, не удалось. Кроме того, MOSFET транзисторы, как правило, дешевле. К сожалению, так называемые logic level транзисторы, управляемые цифровыми уровнями сигналов и подходящие по остальным параметрам, в частности, рассчитанные на напряжение 600 В, пока не существуют.
л) Резисторы в цепи затвора
Сопротивление резисторов R5 и R6 оказывает влияние на следующие факторы:
- защиту выхода МК от броска тока при перезарядке входной ёмкости транзистора (чем больше сопротивление, тем меньше ток);
- защиту выхода МК от превышения напряжения на затворе, которое возникает из-за ёмкости Миллера (чем больше сопротивление, тем лучше защита);
- степень нагрева транзисторов (чем меньше сопротивление, тем меньше нагрев);
- уровень помех радио- и ИК-приёму, а также в электросети (чем больше сопротивление, тем меньше помех);
- силу звона нитей ламп накаливания (чем больше сопротивление, тем меньше звон).
Влияние сопротивления на ток потребления, а также на падение напряжения на переходе сток-исток транзистора в силу малых величин не учитывается
Анализируя перечисленные факторы, приходим к очевидному выводу, что, в целом, чем больше сопротивление, тем лучше. Однако слишком сильно его увеличивать тоже нельзя – это приведёт к нагреву транзистора.
Для начала выясним минимально допустимое сопротивление резистора в цепи затвора. Оно определяется безопасным уровнем тока выхода МК при перезарядке ёмкости затвора транзистора. В этот момент выход МК оказывается кратковременно замкнут на землю. Учитывая ток выхода по описанию МК 20 мА и напряжение питания 5 В, по закону Ома получаем минимально допустимое сопротивление 250 Ом.
Теперь попробуем определить номинальное сопротивление резистора с точки зрения ограничения напряжения на выводе МК. В описании МК сказано, что уровень безопасного тока, протекающего через внутренние диоды, составляет 1 мА. Максимально допустимое напряжение на затворе транзистора, указанное в его описании, составляет ±30 В. Встроенный в транзистор двусторонний ограничитель не позволяет напряжению превысить эту величину. Следовательно, чтобы обеспечить безопасный ток через внутренние диоды МК потребуется сопротивление R = 30 / 0,001 = 30 кОм. При таком высоком сопротивлении в цепи затвора увеличится сопротивление канала сток-исток. Это приведёт к уменьшению яркости лампы и нагреву транзистора. Следовательно, выбирать сопротивление по данному критерию нельзя. Кроме того, как было отмечено ранее, вряд ли в бытовой электросети встретятся ситуации, вызывающие значительное повышение напряжения на затворе.
Остаётся выбирать сопротивление, ориентируясь на степень нагрева транзистора, уровень помех и силу звона нити лампы. Два последних фактора требуют высокого сопротивления резистора, а первый – низкого. Получается, что сопротивление надо выбирать как компромисс.
Следует отметить, что помимо неприятного жужжания, звон нити лампы резко сокращает её ресурс. Тестирование ламп различных производителей на минимальный уровень звона нити позволило расположить их в следующем порядке предпочтений: Osram, Philips, General Electric. В результате выбор остановился на матовых лампах Osram Classic B FR 60 230V E14/SES, 660lm, Energy index E.
м) Цепь защиты
Предохранитель F1 и защитный диод VD1 формируют цепь защиты, которая предохраняет устройство от выхода из строя при коротком замыкании нагрузки, превышения её мощности, а также при бросках напряжения в сети, и аварийного повышения её напряжения до 380 В.
Предохранитель рассчитывается, исходя из максимальной нагрузки, по стандартной формуле:
I = P / U. (2.9)
Отсюда I = 2 • 60 / 220 = 0,55 (А). Ток потребления схемы при этом не учитывается, т.к. в сравнении он пренебрежимо мал. Вполне допустимо выбрать предохранитель на 0,5 А.
Чтобы защитить чувствительные полупроводниковые приборы, используется быстродействующий предохранитель. Для отечественного предохранителя серии ВП2Б-1В время срабатывания при превышении номинального тока в 2,75 раза равно 1 секунде. Предохранители с замедленным временем срабатывания (в керамическом или стеклянном корпусе) при выходе из строя издают резкий и громкий звук, оставляя на плате (или на стене ) чёрное пятно. Выбор сделан в пользу керамического корпуса, т.к. стеклянные корпуса при срабатывании иногда рассыпаются.
Использовать современные полимерные предохранители в данной схеме не представляется возможным из-за их сильного нагрева и невысокой скорости срабатывания. Например, для предохранителя LB600LV время срабатывания при токе нагрузки 3 А составляет 36 секунд.
Защита от короткого замыкания нагрузки и превышения её мощности
Возможны два варианта короткого замыкания: при выключенной нагрузке и при включенной нагрузке.
В первом случае ток возрастает медленно, т.к. нагрузка всегда включается при нулевом напряжении в сети, и яркость лампы всегда увеличивается плавно. Поскольку в устройстве применён быстродействующий предохранитель, он успевает перегореть, защищая другие элементы схемы.
Во втором случае ток мгновенно возрастает настолько, что предохранитель не успевает защитить чувствительный к перегрузкам транзистор. В результате транзистор выходит из строя первым. Теоретически это говорит о том, что транзистор может не выдержать перегрузку, которая возникает, если лампа перегорит во время работы, т.к. ток при этом достигает несколько десятков ампер.
Короткое замыкание в цепи питания +5 В устройству не страшны, т.к. в этом случае роль ограничителя тока играет балластный резистор.
При повышенной мощности нагрузки устройство ведёт себя так же как в случае короткого замыкания при выключенной нагрузке.
Установлено, что при выходе из строя транзистора все его выводы оказываются замкнутыми между собой. Поскольку в этом случае на затворе будет потенциал земли, предпринимать дополнительные меры по защите выходов МК не требуется.
Защита от превышения сетевого напряжения
Для защиты от высоковольтных помех, возникающих в электрической сети, например при грозовых разрядах, применяется двусторонний полупроводниковый ограничитель напряжения – защитный диод. По сравнению с варисторами защитные диоды обладают более высоким быстродействием, что позволяет использовать их для предохранения высокочувствительных полупроводниковых приборов, к которым, в частности, относятся и микроконтроллеры. Кроме того, в отличие от варисторов их характеристики не ухудшаются со временем.
Защитный диод устанавливается параллельно входу устройства непосредственно за предохранителем. Выводы защитного диода служат теплоотводом. Согласно описанию, длина каждого вывода должна составлять 10 мм.
Если в течение некоторого времени ток через защитный диод будет превышать ток срабатывания предохранителя, последний перегорает, защищая устройство. Чем больше превышение тока, тем быстрее сработает предохранитель. Как уже отмечалось, применённый в схеме быстродействующий предохранитель имеет время срабатывания 1 сек. при превышении номинального тока в 2,75 раза.
Если мощность высоковольтного импульса будет больше мощности защитного диода (например, при аварийном повышении сетевого напряжения до 380 В), защитный диод может выйти из строя. При этом выводы защитного диода окажутся замкнутыми накоротко, что приведёт к перегоранию предохранителя. Остальные элементы схемы останутся неповреждёнными. В данном случае для восстановления работоспособности устройства потребуется заменить и предохранитель, и защитный диод.
При воздействии высоковольтного импульса напряжение на входе диодного моста не превысит максимальное напряжение ограничения защитного диода.
Напряжение ограничения защитного диода зависит от длительности импульса, и для указанного на схеме типа составляет 548 В для 1000 мкс и 706 В для 20 мкс. В большинстве случаев, описанных в, при выборе защитного диода следует руководствоваться напряжением, которое соответствует длительности импульса 1000 мкс. Поэтому будем считать, что напряжение на входе диодного моста, ни при каких обстоятельствах не превысит порог 548 В.
Теперь проанализируем, выдержат ли компоненты устройства напряжение ограничения 548 В. Лампы и предохранитель не учитываются, т.к. их выход из строя не является фатальной неисправностью и легко устраняется заменой. Также можно не учитывать балластный резистор и резистор верхнего плеча делителя напряжения, поскольку высоковольтные и углеродистые (film) резисторы хорошо переносят кратковременные (до 5 секунд) перегрузки, превышающие номинальное напряжение в 1,5 и 2,5 раза соответственно [5]. Долговременной перегрузки в данном случае не будет, т.к. сработает предохранитель.
Диодный мост и транзисторы рассчитаны на 600 В. Как было показано ранее при расчёте балластного резистора, при напряжении 548 В ток через ИОН не превысит 7 мА, что на 5 мА меньше его максимального рабочего тока 12 мА. Ток внутренних диодов МК при сопротивлении верхнего плеча делителя напряжения 620 кОм не превысит I = 548 / 620000 = 0,88 мА, что укладывается в допустимый предел 1 мА.
Таким образом, повышение сетевого напряжения до уровня ограничения защитного диода не приведёт к выходу из строя элементов схемы.
н) Расчёт потребляемой мощности
Как следует из анализа принципиальной схемы, потребляемый ток складывается из следующих составляющих: ток делителя напряжения Iд, ток стабилитрона Iст, и ток нагрузки блока питания Iн. В силу малых величин, обратные токи защитного диода, выпрямительного моста, транзисторов, а также токи утечки конденсаторов не учитываются. Итак,
P = Uвх • (Iд + Iст + Iн). (2.10)
Ток делителя напряжения определим по закону Ома с учётом падения напряжения на диодах выпрямительного моста:
P = Uвх• (((Uвх – Uд) / Rд) + Iст +Iн). (2.11)
Для расчёта тока стабилитрона и тока нагрузки преобразуем формулу (2.4), использованную при расчёте балластного резистора, к виду:
Iст + Iн = (Uвх – 2•Uд – Uст) / Rб. (2.12)
С учётом коэффициента, учитывающего отклонение сопротивлений резисторов, конечная формула будет иметь вид:
P = Uвх • [((Uвх – 2•Uд) / Rд•Кr) + ((Uвх – 2•Uд – Uст) / Rб•Кr)] (2.13)
Рассчитаем максимальную мощность, потребляемую устройством в ждущем режиме, при номинальном напряжении сети Uвх = 220 В и минимальном напряжении стабилизации Uст = 4,95 В.
Падение напряжения на диоде выпрямительного моста Uд = 0,65 В.
Общее сопротивление делителя напряжения определяется суммой последовательно включенных сопротивлений:
Rд = 620000 + 9100 = 629100 (Ом).
По аналогии:
Rб = 30000 + 30000 = 60000 (Ом).
Отклонение номиналов резисторов 5%, т.е Кr = 0,95.
Подставляем данные в формулу (2.13):
P = 220 • [((220 – 2•0,65) / 629100•0,95) +
+((220 – 2•0,65 – 4,95) / 60000•0,95)] =
= 220 • [0,00037 + 0,0038] = 0,92 (ВА).
Потребляемый устройством ток от сети в ждущем режиме при номинальном сетевом напряжении, составляет 4,0 мА.
Отсюда P = 220 • 0,004 = 0,88 ВА, что находится в пределах рассчитанной величины.
Поскольку в ждущем режиме устройство представляет собой чисто активную нагрузку, активная мощность в данном случае эквивалентна полной мощности: Р = 0,92 ВА = 0,92 Вт.
Интересно отметить, что при увеличении яркости канала с минимума до максимума коэффициент мощности (power factor) увеличивается с 0,22 до 0,98.
Рассчитанная потребляемая мощность соответствует европейской директиве 1275/2008/ЕС от 17 декабря 2008 года, согласно которой уровень энергопотребления устройств, выпускаемых с 07 января 2010 года, не должен превышать 1 Вт в ждущем режиме.
2.7 Разработка схемы электрической принципиальной
После выбора компонентов и расчета элементной базы приступаем к разработке схемы электрической принципиальной в Accel EDA (Рис. 2.7).
Рисунок 2.7 - Принципиальная схема устройства автоматического регулирования света в Accel EDA
Схема электрическая принципиальная устройства автоматического регулирования света на микроконтроллере приведена в Приложении Ж.
3 ТЕХНИКО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ ОБЪЕКТА РАЗРАБОТКИ
В данном разделе проводится технико-экономический расчет стоимости устройства автоматического регулирования света.
Стоимость устройства будет состоять из стоимости разработки ПО для микроконтроллера и стоимости разработки конструкторской документации и сборки устройства.
3.1 Расчет расходов ПО для микроконтроллера, которое разрабатывается
Исходные данные для расчета стоимости разработки ПО, которое разрабатывается приведенны в таблице 3.1.
Таблица 3.1 – Данные на 1.01.2010 г.
№п/п |
Статьи затрат |
Усл. обозн. |
Ед. изм. |
Значения |
|
Проектирование и разработка ПЗ |
|||||
1 |
Часовая тарифная ставка программиста |
Зпр |
грн. |
8,00 |
|
2 |
Коэффициент сложности программы |
с |
коэф. |
1,40 |
|
3 |
Коэффициент коррекции программы |
Р |
коэф. |
0,05 |
|
4 |
Коэффициент увеличения расходов труда |
Z |
коэф. |
1,3 |
|
5 |
Коэффициент квалификации программиста |
k |
коэф. |
1,0 |
|
6 |
Амортизационные отчисления |
Амт |
% |
10,0 |
|
7 |
Мощность компьютера, принтера |
WМ |
Квт/ч |
0,40 |
|
8 |
Стоимость ПЕОМ IBM Sempron LE1150(AM2)/1GB/TFT |
Втз |
грн. |
3200,00 |
|
9 |
Тариф на электроэнергию |
Це/е |
грн. |
0,56 |
|
10 |
Норма дополнительной зарплаты |
Нд |
% |
15,0 |
|
11 |
Отчисление на социальные расходы |
Нсоц |
% |
37,2 |
|
12 |
Транспортно-заготовительные расходы |
Нтр |
% |
4,0 |
|
Эксплуатация П0 |
|||||
13 |
Численность обслуживающего персонала |
Чо |
чел |
1 |
|
14 |
Часовая тарифная ставка обслуживающего персонала |
Зперс |
грн. |
6,00 |
|
15 |
Время обслуживания систем |
То |
час/г |
150 |
|
16 |
Стоимость ПЕОМ |
Втз |
грн. |
3200,00 |
|
17 |
Норма амортизационных отчислений на ПЕОМ |
На |
% |
10,0 |
|
18 |
Норма амортизационных отчислений на ПЗ |
НаП |
% |
10,0 |
|
19 |
Накладные расходы |
Рнак |
% |
25,0 |
|
20 |
Отчисление на содержание и ремонт ПЕОМ и ПО |
Нр |
% |
10,0 |
|
21 |
Стоимость работы одного часа ПЕОМ |
Вг |
грн. |
6,5 |
Первичными исходными данными для определения себестоимости ПО является количество исходных команд (операторов) конечного программного продукта. Условное количество операторов Q в программе задания может быть оценено по формуле:
, (3.1)
где у – расчетное количество операторов в программе, что разрабатывается (единиц);
с – коэффициент сложности программы;
р – коэффициент коррекции программы в ходе ее разработки.
Рассчитанное количество операторов в разработанной программе – 500.
Коэффициент с – относительная сложность задания относительно отношения к типичной задаче, сложность которой принята более 1, лежит в границах от 1,25 до 2,0 и выбирается равным 1,30.
Коэффициент коррекции программы р – увеличение объема работ за счет внесения изменений в программу лежит в границах от 0,05 до 0,1 и выбирается равным 0,05.
Подставим выбранные значения в формулу (3.1) и определим величину Q:
Q = 500∙1,3 (1 + 0,05) = 682,5.
3.2 Расчет расходов на создание ПО
Расчет расходов на ПО проводится методом калькуляции расходов, в основу которого положена трудоемкость и заработная плата разработчиков. Трудоемкость разработки ПЗ рассчитывается по формуле:
(3.2)
где То – расходы труда на описание задания;
Ти – расходы труда на изучение описания задания;
Та – расходы труда на разработку алгоритма решения задания;
Тп – расходы труда на составление программы по готовой блок-схеме;
Тотл – расходы труда на отладку программы на ЭВМ;
Тд – расходы труда на подготовку документации.
Составные расходы труда, в свою очередь, можно определить по числу операторов Q для ПО, что разрабатывается. При оценке составных расходов труда используются:
- коэффициенты квалификации разработчика алгоритмов и программ – к;
– увеличение расходов труда в результате недостаточного описания задания – Z.
Коэффициент квалификации разработчика характеризует меру подготовленности исполнителя к порученной ему работе (он задается в зависимости от стажа работы), к = 1,0.
Коэффициент увеличения расходов труда в результате недостаточного описания задания характеризует качество постановки задания, выданной для разработки программы, в связи с тем, что задание требовало уточнения и некоторой доработки. Этот коэффициент принимается равным 1,3.
Все исходные данные приведенные в таблице 3.1.
а) Трудоемкость разработки П0 составляет:
Расходы труда на подготовку описания задания То принимаются равными 5 чел/час, исходя из опыта работы.
Расходы труда на изучение описания задания Те с учетом уточнения описания и квалификации программиста могут быть определены по формуле:
; (3.3)
Ти = 682,5∙1,3/80∙1 = 11(чел/час)
Расходы труда на разработку алгоритма решения задачи рассчитываются по формуле:
; (3.4)
Та=682,5/25∙1 = 27 (чел/час)
Расходы труда на составление программы по готовой блок-схеме Тп рассчитываются по формуле:
; (3.5)
(чел/час)
Расходы труда на отладку программы на ПЕОМ Тотл рассчитываются по формуле:
при автономной отладке одного задания:
; (3.6)
(чел/час)
при комплексной отладке задания:
; (3.7)
(чел/час)
Расходы труда на подготовку документации по заданию Тд определяются по формуле:
, (3.8)
где Тдр – расходы труда на подготовку материалов в рукописи:
; (3.9)
(чел/час)
Тдо – расходы труда на редактирование, печать и оформление документация:
. (3.10)
(чел/час)
Подставляя приобретенных значений в формулу (3.8), получим:
(чел/час)
Определим трудоемкость разработки ПО, подставив полученные значения составляющих в формулу (3.2):
Расчет трудоемкости и зарплаты приведен в таблице 3.2.
б) Расчет материальных расходов на разработку ПЗ
Материальные расходы Мз, которые необходимы для создания ПО приведенные в таблице 3.3.
Таблица 3.2 – Трудоемкость и зарплата разработчиков ПО
Наименование этапов разработки |
Трудоемкость чел/часов |
Почасовая тарифная ставка программиста, грн. |
Сумма зарплаты, грн. |
Описание задания |
5 |
8,00 |
40,00 |
Изучение задания |
11 |
8,00 |
88,00 |
Составление алгоритма решения задачи |
27 |
8,00 |
216,00 |
Программирование |
31 |
8,00 |
248,00 |
Отладка программы |
136,5 |
8,00 |
1092,00 |
Оформление документации |
59 |
8,00 |
472,00 |
Вместе: |
269,5 |
8,00 |
2156,00 |
Таблица 3.3 – Расчет материальных расходов на разработку ПО
Материал |
Фактическое количество |
Цена за единицу, грн. |
Сумма, грн. |
1. DVD |
1 |
3,00 |
6,00 |
2. Бумага |
500 |
0,10 |
50,00 |
ВМЕСТЕ: |
56,00 |
||
ТЗР (4%) |
2,24 |
||
ВМЕСТЕ: |
57,24 |
в) Расходы на использование ЭВМ при разработке ПО
Расходы на использование ЭВМ при разработке ПО рассчитываются, исходя из расходов одного часа, по формуле:
, (3.12)
где Вг – стоимость работы одного часа ЭВМ, грн.;
Тотл – расходы труда на наладку программы на ЭВМ, чел./час.;
Тд – расходы труда на подготовку документации, чел./час.;
Тп – расходы труда на составление программы по готовой блок-схеме, чел./час.
(грн.)
г) Расчет технологической себестоимости создания программы
Расчет технологической себестоимости создания программы (ПО) проводится методом калькуляции расходов (таблица 3.4).
Таблица 3.4 – Калькуляция технологических расходов на создание ПО
Наименование |
Расходы, грн. |
|
1 |
Материальные расходы |
57,24 |
2 |
Основная зарплата |
2156,00 |
3 |
Дополнительная зарплата (15,0 %) |
323,40 |
4 |
Отчисление на социальные мероприятия (37,2 %) |
922,19 |
5 |
Накладные расходы (25,0 %) |
539,00 |
6 |
Расходы на использование ЭВМ составлении программного обеспечения ПО |
1472,25 |
7 |
Себестоимость ПО микроконтроллера |
5470,08 |
В таблице 3.4 величина материальных расходов Мз рассчитана в таблице 3.3, основная зарплата С берется из таблицы 3.2, дополнительная зарплата составляет 15% от основной зарплаты, отчисление на социальные потребности – 37,2% от основной и дополнительной зарплат (вместе), накладные расходы – 25% от основной зарплаты. Себестоимость разработанной программы СПО рассчитывается как сумма пунктов 1 – 6.
Стоимость ПО для микроконтроллера составляет 5470,08 грн. на единицу продукции. Если организовать массовый выпуск продукции эта стоимость разделится на количество выпущенных изделий.
3.2 Расчет стоимости разработки конструкторской документации и сборки устройства
а) Трудоемкость разработки КД изделия (Т) рассчитывается по формуле:
, (3.13)
где Татз – расходы труда на анализ технического задания (ТЗ), чел./час;
Трес – расходы труда на разработку электрических схем, чел./час;
Трк – расходы труда на разработку конструкции, чел./час;
Трт – расходы труда на разработку технологии, чел./час;
Токд – расходы труда на оформление КД, чел./час;
Твидз – расходы труда на изготовление и эиспытание опытного образца.
Данные расчета заносятся в таблицу 3.5.
Таблица 3.5 - Расчет заработной платы на разработку КД изделия
Виды работ |
Условные обозначения |
Почасовая тарифная ставка - Сст, грн. |
Факт. расходы времени чел./час; |
Зарплата, грн. |
1. Анализ ТЗ |
Татз |
6,00 |
2 |
12,00 |
2. Разработка электрических схем |
Трес |
6,00 |
4 |
24,00 |
3. Разработка конструкции |
Трк |
6,00 |
4 |
24,00 |
4. Разработка технологии |
Трт |
6,00 |
2 |
12,00 |
5. Оформление КД |
Токд |
6,00 |
2 |
12,00 |
6. Изготовление и испытание опытного образца |
Твидз |
6,00 |
8 |
48,00 |
Всего: |
|
6,00 |
22 |
132,00 |
Заработная плата на разработку КД изделия С определяется по формуле:
, (3.14)
где - почасовая тарифная ставка разработчика, грн.;
- трудоемкость разработки КД изделия.
б) Расчет материальных расходов на разработку КД
Материальные расходы Мв, которые необходимы для разработки (создании) КД, приведенны в таблице 3.6.
Таблица 3.6 - Расчет материальных на разработку КД
Материал |
Обозначение пометь. |
Факт. кол. чество |
Цена за ед. грн. цу, грн. |
Сумма, грн. |
1. CD DVD |
1 |
2,00 |
2,00 |
|
2. Бумага |
500 |
0,07 |
35,00 |
|
Всего: |
|
37,00 |
||
ТЗР (4%) |
1,48 |
|||
Итого: |
Мв |
38,48 |
в) Расходы на использование ЭВМ при разработке КД
Расходы, на использование ЭВМ при разработке КД, рассчитываются исходя из расходов работы одного часа ЭВМ по формуле, грн.:
, (3.15)
где Вг – стоимость работы одного часа ЭВМ, грн.
Трес – расходы труда на разработку электрических схем, чел./час;
Трк – расходы труда на разработку конструкции, чел./час;
Трт – расходы труда на разработку технологии, чел./час;
Токд – расходы труда на оформление КД, чел./час;
При этом, стоимость работы одного часа ЭВМ (других технических средств - ТС) Вг определяется по формуле, грн.:
, (3.16)
где Те/е – расходы на электроэнергию, грн.;
Ваморт – величина 1-ого часа амортизации ЭВМ (ТС), грн.;
Зперс – почасовая зарплата обслуживающего персонала, грн.;
Трем – расходы на ремонт, покупку деталей, грн.;
Стоимость одного часа амортизации Ваморт определяется по формуле, грн.:
при 40 часовой рабочей неделе:
, (3.17)
где Втз - стоимость технических средств, грн.
На - норма годовой амортизации (%).
Кт - количество недель на год (52 недели/год).
Гт - количество рабочих часов на неделю (40 час/неделю)
Почасовая оплата обслуживающего персонала Зперс рассчитывается по формуле, грн.:
, (3.18)
где Окл - месячный оклад обслуживающего персонала, грн.
Крг - количество рабочих часов в месяц (160 часов/месяц);
Нрем - расходы на оплату труда ремонта ЭВМ (6 % Окл).
Расходы на ремонт, покупку деталей для ЭВМ Трем определяются по формуле, грн.:
, (3.19)
где Втз - стоимость технических средств, грн.
Нрем - процент расходов на ремонт, покупку деталей (%);
Кт - количество недель на год (52 недели/год).
Гт - количество рабочих часов на неделю (36 168 час./неделю)
Расходы на использование электроэнергии ЭВМ и техническими средствами Те/е определяются по формуле, грн.:
, (3.20)
где Ве/е – стоимость одного кВт/час электроэнергии, грн.;
Wпот – мощность компьютера, принтера и сканера (за 1 час), (кВт/час.).
Таким образом, стоимость одного часа работы ЭВМ при разработке КД будет составлять (см. формулу 3.16), грн.:
.
Расходы на использование ЭВМ при разработке, грн. (см. формулу 3.15):
г) Расчет технологической себестоимости создания КД
Расчет технологической себестоимости создания КД изделия проводится методом калькуляции расходов (таблица 3.7).
Таблица 3.7 - Калькуляция технологических расходов на создание КД изделия
№ п/п |
Наименование статей |
Условны обозначения |
Расходы (грн.) |
1 |
2 |
3 |
4 |
1. |
Материальные расходы |
Мв |
38,48 |
2. |
Основная зарплата |
Зо |
132,00 |
3. |
Дополнительная зарплата |
Зд |
13,20 |
4. |
Отчисление на социальные мероприятия |
37,2%(Зо+Зд) |
54,01 |
5. |
Общепроизводственные (накладные) расходы предприятия |
Ннакл |
33,00 |
6. |
Расходы на использование ЭВМ при составлении программного обеспечения КД |
ВЕОМ |
18,00 |
7. |
Себестоимость КД изделия |
Скд = (16) |
288,69 |
В таблице 3.7 величина материальных расходов Мв рассчитана в таблице 3.6, основная зарплата С берется из таблицы 3.5, дополнительная зарплата 10 % от основной зарплаты, отчисление на социальные мероприятия 37,2% - от основной и дополнительной зарплаты (вместе). Общезаводские (накладные) расходы 25% от основной зарплаты.Себестоимость разработанной конструкторской документации Скд рассчитывается как сумма пунктов 1–6.
3.3 Расчет расходов на стадии производства изделия
Себестоимость изделия которое разрабатывается рассчитывается на основе норм материальных и трудовых расходов. Среди исходных данных, которые используются для расчета себестоимости изделия, выделяют нормы расходов сырья и основных материалов на одно изделие.
Таблица 3.8 -Расчет расходов на сырье и основные материалы на одно изделие
Материалы |
Норма расходов (единиц) |
Оптовая цена грн./ед. |
Фактические расходы (единиц) |
Сумма грн. |
1 |
2 |
3 |
4 |
5 |
Стеклотекстолит СФ-2-35 (лист 1,0 ГОСТ 10316 - 78), кг |
0,5 |
24,00 |
0,4 |
9,60 |
Припой ПОС - 61 (ГОСТ 21930 - 76), кг |
0,05 |
18.00 |
0,05 |
0,90 |
Всего: |
10,50 |
|||
Транспортно-заготовительные расходы (4%) |
0,42 |
|||
Итого: |
10,92 |
В ходе расчета себестоимости изделия, как исходные данные, используют спецификации материалов, покупных комплектующих изделии и полуфабрикатов, которые используются сборке одного изделия (таблица Приложение Д). Расчет зарплаты основных производственных рабочих проводим на основе норм трудоемкости за видами работ и почасовыми ставками рабочих (таблица 3.9).
Таблица 3.9 - Расчет основной зарплаты
Наименование операции |
Почасовая тарифная ставка, грн. |
Норма времени чел./час. |
Сдельная зарплата, грн. |
1 |
2 |
3 |
4 |
Заготовительная |
5,67 |
0,5 |
2,84 |
Фрезерная |
6,08 |
0,8 |
4,86 |
Слесарная |
6,08 |
1,0 |
6,08 |
Гравировка |
5,67 |
0,5 |
2,84 |
Фотохимпечать |
5,67 |
1,2 |
6,80 |
Гальваническая |
6,08 |
2,0 |
12,16 |
Маркировочная |
5,67 |
0,1 |
0,57 |
Сборка |
5,67 |
1,2 |
6,80 |
Монтаж |
5,67 |
0,5 |
2,84 |
Настройка |
6,08 |
0,7 |
4,26 |
Другие |
- |
- |
- |
Всего: |
|
|
50,05 |
Калькуляция себестоимости и определения цены выполняется в таблице 3.10.
Таблица 3.10 - Калькуляция себестоимости и определения цены изделия
Наименование статей расходов |
Расходы грн. |
Прямые расходы |
|
Сырье и материалы |
10,92 |
Покупные комплектующие изделия |
209,85 |
Основная зарплата рабочих |
50,05 |
Дополнительная зарплата (10%) |
5,00 |
Отчисление на социальные мероприятия (37,2%) |
20,48 |
Накладные расходы (25% по данным предприятия) |
12,51 |
Производственная себестоимость |
288,69 |
Общая стоимость базового блока |
597,50 |
Общая стоимость изделия будет составлять:
Собщ. = С прог. + С баз. Бл. (3.21)
где С прог. – себестоимость составления программы для микроконтроллера;
С баз. Бл – себестоимость подготовки КД и сборки устройства.При единичном изготовлении
Собщ. = 5470,08 + 597,50 = 6067,58 (грн.).
Если же поступит заказ на изготовление 1000 устройств, себестоимость устройства будет:
Собщ.1000 = 5470,08/1000 + 288,69/1000 + 308,81 = 314,57 (грн.)
Вывод: чем больше производится устройств, тем меньше их стоимость (не учитывалась стоимость оптовой закупки комплектующих).
3.4 Анализ аналогичных устройств
Рассмотрим теперь стоимость аналогичных устройств, предлагаемыемых различными производителями (Таблица 3.11).
Таблица 3.11 – Стоимость аналогичных устройств
Название, марка |
Страна-производитель |
Стоимость в грн. |
«Светлячек-1» |
Россия |
300 |
Dimmer-01 |
Германия |
360 |
Светильник (без назв.) |
Беларусь |
320 |
SWN-01-1 |
Китай |
280 |
«Світло-24» |
Украина, Харьков |
320 |
Стоимость нашего устройства выше аналогичных, но устройство, которое мы разрабатываем выполняет ряд функций, которые не выполняет ни одно из рассматриваемых (Таблица 3.12).
Таблица 3.12 – Сравнительные характеристики устройств-аналогов*
Характеристика |
Производитель |
|||||
«Светлячек-1» |
Dimmer-01 |
Светильник без назв. |
SWN-01-1 |
«Сві-тло-24» |
Наше устройство |
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Каналы управления |
1 |
1 |
1 |
1 |
1 |
2 |
Стабилизация яркости |
- |
- |
- |
- |
+ |
+ |
Помехи радиоприему |
+ |
+ |
+ |
+ |
+ |
_ |
Звон нитей ламп |
+ |
+ |
+ |
+ |
- |
- |
Жужжание встроенного фильтра |
+ |
+ |
+ |
+ |
+ |
- |
Режим ИПХ |
- |
- |
- |
- |
- |
+ |
Схемное решение |
сл. |
сл. |
сл. |
сл. |
сл. |
пр. |
Таблица 3.12 – Продолжение
1 |
2 |
3 |
4 |
5 |
6 |
7 |
Защита от КЗ |
- |
- |
- |
+ |
+ |
+ |
Защита от всплесков напряжения |
- |
- |
- |
- |
- |
+ |
Мерцание ламп |
+ |
+ |
+ |
+ |
- |
- |
Энергопотребление |
с |
с |
с |
б |
н |
н |
Нагревание корпуса |
н |
с |
с |
б |
с |
н |
*- В таблице 3.12 приведены условные обозначения:
«+» - присутствует;
«-» - отсутствует;
«сл.»- сложное;
«пр.»- простое;
«с» - среднее;
«б» - большое;
«н» - низкое.
Как видим, сопоставляя Таблицу 3.11 и Таблицу 3.12 характеристики нашего устройства на порядок лучше и выше, хотя цена нашего устройства выше, при единичном изготовлении. Данное устройство конкурентоспособно при массовом изготовлении.
РАЗДЕЛ 4 ОХРАНА ТРУДА
Научно-технический прогресс внес серьезные изменения в условия производственной деятельности работников умственного труда. Их труд стал более интенсивным, напряженным, требующим значительных затрат умственной, эмоциональной и физической энергии. Это потребовало комплексного решения проблем эргономики, гигиены и организации труда, регламентации режимов труда и отдыха.
В настоящее время компьютерная техника широко применяется во всех областях деятельности человека. При работе с компьютером человек подвергается воздействию ряда опасных и вредных производственных факторов: электромагнитных полей (диапазон радиочастот: ВЧ, УВЧ и СВЧ), инфракрасного и ионизирующего излучений, шума и вибрации, статического электричества и др..
Работа с компьютером характеризуется значительным умственным напряжением и нервно-эмоциональной нагрузкой операторов, высокой напряженностью зрительной работы и достаточно большой нагрузкой на мышцы рук при работе с клавиатурой ЭВМ. Большое значение имеет рациональная конструкция и расположение элементов рабочего места, что важно для поддержания оптимальной рабочей позы человека-оператора.
В процессе работы с компьютером необходимо соблюдать правильный режим труда и отдыха. В противном случае у персонала отмечаются значительное напряжение зрительного аппарата с появлением жалоб на неудовлетворенность работой, головные боли, раздражительность, нарушение сна, усталость и болезненные ощущения в глазах, в пояснице, в области шеи и руках.
4.1 Требования к производственным помещениям
4.1.1 Окраска и коэффициенты отражения
Окраска помещений и мебели должна способствовать созданию благоприятных условий для зрительного восприятия, хорошего настроения.
Источники света, такие как светильники и окна, которые дают отражение от поверхности экрана, значительно ухудшают точность знаков и влекут за собой помехи физиологического характера, которые могут выразиться в значительном напряжении, особенно при продолжительной работе. Отражение, включая отражения от вторичных источников света, должно быть сведено к минимуму.
Для защиты от избыточной яркости окон могут быть применены шторы и экраны.
В зависимости от ориентации окон рекомендуется следующая окраска стен и пола:
окна ориентированы на юг: - стены зеленовато-голубого или светло-голубого цвета; пол - зеленый;
окна ориентированы на север: - стены светло-оранжевого или оранжево-желтого цвета; пол - красновато-оранжевый;
окна ориентированы на восток: - стены желто-зеленого цвета; пол зеленый или красновато-оранжевый;
окна ориентированы на запад: - стены желто-зеленого или голубовато-зеленого цвета; пол зеленый или красновато-оранжевый.
В помещениях, где находится компьютер, необходимо обеспечить следующие величины коэффициента отражения: для потолка: 60-70%, для стен: 40-50%, для пола: около 30%. Для других поверхностей и рабочей мебели: 30-40%.
4.1.2 Освещение
Правильно спроектированное и выполненное производственное освещение улучшает условия зрительной работы, снижает утомляемость, способствует повышению производительности труда, благотворно влияет на производственную среду, оказывая положительное психологическое воздействие на работающего, повышает безопасность труда и снижает травматизм.
Недостаточность освещения приводит к напряжению зрения, ослабляет внимание, приводит к наступлению преждевременной утомленности. Чрезмерно яркое освещение вызывает ослепление, раздражение и резь в глазах.
Неправильное направление света на рабочем месте может создавать резкие тени, блики, дезориентировать работающего. Все эти причины могут привести к несчастному случаю или профзаболеваниям, поэтому столь важен правильный расчет освещенности.
Существует три вида освещения - естественное, искусственное и совмещенное (естественное и искусственное вместе).
Естественное освещение - освещение помещений дневным светом, проникающим через световые проемы в наружных ограждающих конструкциях помещений.
Естественное освещение характеризуется тем, что меняется в широких пределах в зависимости от времени дня, времени года, характера области и ряда других факторов.
Искусственное освещение применяется при работе в темное время суток и днем, когда не удается обеспечить нормированные значения коэффициента естественного освещения (пасмурная погода, короткий световой день).
Освещение, при котором недостаточное по нормам естественное освещение дополняется искусственным, называется совмещенным освещением.
Искусственное освещение подразделяется на рабочее, аварийное, эвакуационное, охранное. Рабочее освещение, в свою очередь, может быть общим или комбинированным. Общее - освещение, при котором светильники размещаются в верхней зоне помещения равномерно или применительно к расположению оборудования. Комбинированное - освещение, при котором к общему добавляется местное освещение.
Согласно СНиП II-4-79 в помещений вычислительных центров необходимо применить систему комбинированного освещения.
При выполнении работ категории высокой зрительной точности (наименьший размер объекта различения 0,3…0,5мм) величина коэффициента естественного освещения (КЕО) должна быть не ниже 1,5%, а при зрительной работе средней точности (наименьший размер объекта различения 0,5…1,0 мм) КЕО должен быть не ниже 1,0%. В качестве источников искусственного освещения обычно используются люминесцентные лампы типа ЛБ или ДРЛ, которые попарно объединяются в светильники, которые должны располагаться над рабочими поверхностями равномерно.
Требования к освещенности в помещениях, где установлены компьютеры, следующие: при выполнении зрительных работ высокой точности общая освещенность должна составлять 300лк, а комбинированная - 750лк; аналогичные требования при выполнении работ средней точности - 200 и 300лк соответственно.
Кроме того все поле зрения должно быть освещено достаточно равномерно – это основное гигиеническое требование. Иными словами, степень освещения помещения и яркость экрана компьютера должны быть примерно одинаковыми, т.к. яркий свет в районе периферийного зрения значительно увеличивает напряженность глаз и, как следствие, приводит к их быстрой утомляемости.
4.1.3 Параметры микроклимата
Параметры микроклимата могут меняться в широких пределах, в то время как необходимым условием жизнедеятельности человека является поддержание постоянства температуры тела благодаря терморегуляции, т.е. способности организма регулировать отдачу тепла в окружающую среду. Принцип нормирования микроклимата – создание оптимальных условий для теплообмена тела человека с окружающей средой.
Вычислительная техника является источником существенных тепловыделений, что может привести к повышению температуры и снижению относительной влажности в помещении. В помещениях, где установлены компьютеры, должны соблюдаться определенные параметры микроклимата. В санитарных нормах СН-245-71 установлены величины параметров микроклимата, создающие комфортные условия. Эти нормы устанавливаются в зависимости от времени года, характера трудового процесса и характера производственного помещения (см. табл. 4.1)
Объем помещений, в которых размещены работники вычислительных центров, не должен быть меньше 19,5м3/человека с учетом максимального числа одновременно работающих в смену. Нормы подачи свежего воздуха в помещения, где расположены компьютеры, приведены в табл. 4.2.
Таблица 4.1- Параметры микроклимата для помещений, где установлены компьютеры
Период года |
Параметр микроклимата |
Величина |
Холодный |
Температура воздуха в помещении |
22…24°С |
Относительная влажность |
40…60% |
|
Скорость движения воздуха |
до 0,1м/с |
|
Теплый |
Температура воздуха в помещении |
23…25°С |
Относительная влажность |
40…60% |
|
Скорость движения воздуха |
0,1…0,2м/с |
Таблица 4.2 - Нормы подачи свежего воздуха в помещения, где расположены компьютеры
Характеристика помещения |
Объемный расход подаваемого в помещение свежего воздуха, м3 /на одного человека в час |
Объем до 20м3 на человека |
Не менее 30 |
20…40м3 на человека |
Не менее 20 |
Более 40м3 на человека |
Естественная вентиляция |
Для обеспечения комфортных условий используются как организационные методы (рациональная организация проведения работ в зависимости от времени года и суток, чередование труда и отдыха), так и технические средства (вентиляция, кондиционирование воздуха, отопительная система).
4.1.4 Шум и вибрация
Шум ухудшает условия труда оказывая вредное действие на организм человека. Работающие в условиях длительного шумового воздействия испытывают раздражительность, головные боли, головокружение, снижение памяти, повышенную утомляемость, понижение аппетита, боли в ушах и т. д. Такие нарушения в работе ряда органов и систем организма человека могут вызвать негативные изменения в эмоциональном состоянии человека вплоть до стрессовых. Под воздействием шума снижается концентрация внимания, нарушаются физиологические функции, появляется усталость в связи с повышенными энергетическими затратами и нервно-психическим напряжением, ухудшается речевая коммутация. Все это снижает работоспособность человека и его производительность, качество и безопасность труда. Длительное воздействие интенсивного шума [выше 80 дБ(А)] на слух человека приводит к его частичной или полной потере.
В табл. 4.3 указаны предельные уровни звука в зависимости от категории тяжести и напряженности труда, являющиеся безопасными в отношении сохранения здоровья и работоспособности.
Таблица 4.3 - Предельные уровни звука, дБ, на рабочих местах
Категория напряженности труда |
Категория тяжести труда |
|||
Легкая |
Средняя |
Тяжелая |
Очень тяжелая |
|
I. Мало напряженный |
80 |
80 |
75 |
75 |
II. Умеренно напряженный |
70 |
70 |
65 |
65 |
III. Напряженный |
60 |
60 |
- |
- |
IV. Очень напряженный |
50 |
50 |
- |
- |
Уровень шума на рабочем месте математиков-программистов и операторов видеоматериалов не должен превышать 50дБА, а в залах обработки информации на вычислительных машинах - 65дБА. Для снижения уровня шума стены и потолок помещений, где установлены компьютеры, могут быть облицованы звукопоглощающими материалами. Уровень вибрации в помещениях вычислительных центров может быть снижен путем установки оборудования на специальные виброизоляторы.
4.1.5 Электромагнитное и ионизирующее излучения
Большинство ученых считают, что как кратковременное, так и длительное воздействие всех видов излучения от экрана монитора не опасно для здоровья персонала, обслуживающего компьютеры. Однако исчерпывающих данных относительно опасности воздействия излучения от мониторов на работающих с компьютерами не существует и исследования в этом направлении продолжаются.
Допустимые значения параметров неионизирующих электромагнитных излучений от монитора компьютера представлены в табл. 4.4.
Максимальный уровень рентгеновского излучения на рабочем месте оператора компьютера обычно не превышает 10мкбэр/ч, а интенсивность ультрафиолетового и инфракрасного излучений от экрана монитора лежит в пределах 10-100мВт/м2.
Таблица 4.4 - Допустимые значения параметров неионизирующих электромагнитных излучений (в соответствии с СанПиН 2.2.2.542-96)
Наименование параметра |
Допустимые значения |
Напряженность электрической составляющей электромагнитного поля на расстоянии 50см от поверхности видеомонитора |
10В/м |
Напряженность магнитной составляющей электромагнитного поля на расстоянии 50см от поверхности видеомонитора |
0,3А/м |
Напряженность электростатического поля не должна превышать: для взрослых пользователей для детей дошкольных учреждений и учащихся средних специальных и высших учебных заведений |
20кВ/м 15кВ/м |
Для снижения воздействия этих видов излучения рекомендуется применять мониторы с пониженным уровнем излучения (MPR-II, TCO-92, TCO-99), устанавливать защитные экраны, а также соблюдать регламентированные режимы труда и отдыха.
4.2 Эргономические требования к рабочему месту
Проектирование рабочих мест, снабженных видеотерминалами, относится к числу важных проблем эргономического проектирования в области вычислительной техники.
Рабочее место и взаимное расположение всех его элементов должно соответствовать антропометрическим, физическим и психологическим требованиям. Большое значение имеет также характер работы. В частности, при организации рабочего места программиста должны быть соблюдены следующие основные условия: оптимальное размещение оборудования, входящего в состав рабочего места и достаточное рабочее пространство, позволяющее осуществлять все необходимые движения и перемещения.
Эргономическими аспектами проектирования видеотерминальных рабочих мест, в частности, являются: высота рабочей поверхности, размеры пространства для ног, требования к расположению документов на рабочем месте (наличие и размеры подставки для документов, возможность различного размещения документов, расстояние от глаз пользователя до экрана, документа, клавиатуры и т.д.), характеристики рабочего кресла, требования к поверхности рабочего стола, регулируемость элементов рабочего места.
Главными элементами рабочего места программиста являются стол и кресло.
Основным рабочим положением является положение сидя.
Рабочая поза сидя вызывает минимальное утомление программиста.
Рациональная планировка рабочего места предусматривает четкий порядок и постоянство размещения предметов, средств труда и документации. То, что требуется для выполнения работ чаще, расположено в зоне легкой досягаемости рабочего пространства.
Моторное поле - пространство рабочего места, в котором могут осуществляться двигательные действия человека.
Максимальная зона досягаемости рук - это часть моторного поля рабочего места, ограниченного дугами, описываемыми максимально вытянутыми руками при движении их в плечевом суставе.
Оптимальная зона - часть моторного поля рабочего места, ограниченного дугами, описываемыми предплечьями при движении в локтевых суставах с опорой в точке локтя и с относительно неподвижным плечом.
Оптимальное размещение предметов труда и документации в зонах досягаемости:
ДИСПЛЕЙ размещается в зоне а (в центре);
СИСТЕМНЫЙ БЛОК размещается в предусмотренной нише стола;
КЛАВИАТУРА - в зоне г/д;
«МЫШЬ» - в зоне в справа;
СКАНЕР в зоне а/б (слева);
ПРИНТЕР находится в зоне а (справа);
ДОКУМЕНТАЦИЯ: необходимая при работе - в зоне легкой досягаемости ладони – в, а в выдвижных ящиках стола - литература, неиспользуемая постоянно.
На рис. 4.1 показан пример размещения основных и периферийных составляющих ПК на рабочем столе программиста.
Для комфортной работы стол должен удовлетворять следующим условиям :
- высота стола должна быть выбрана с учетом возможности сидеть свободно, в удобной позе, при необходимости опираясь на подлокотники;
- нижняя часть стола должна быть сконструирована так, чтобы программист мог удобно сидеть, не был вынужден поджимать ноги;
- поверхность стола должна обладать свойствами, исключающими появление бликов в поле зрения программиста;
- конструкция стола должна предусматривать наличие выдвижных ящиков (не менее 3 для хранения документации, листингов, канцелярских принадлежностей);
Рисунок 4.1- Размещения основных и периферийных составляющих ПК на рабочем столе программиста:
1 – сканер, 2 – монитор, 3 – принтер, 4 – поверхность рабочего стола,
5 – клавиатура, 6 – манипулятор типа «мышь».
- высота рабочей поверхности рекомендуется в пределах 680-760мм;
- высота поверхности, на которую устанавливается клавиатура, должна быть около 650мм.
Большое значение придается характеристикам рабочего кресла. Так, рекомендуемая высота сиденья над уровнем пола находится в пределах 420-
550мм. Поверхность сиденья мягкая, передний край закругленный, а угол наклона спинки - регулируемый.
Необходимо предусматривать при проектировании возможность различного размещения документов: сбоку от видеотерминала, между монитором и клавиатурой и т.п. Кроме того, в случаях, когда видеотерминал имеет низкое качество изображения, например заметны мелькания, расстояние от глаз до экрана делают больше (около 700мм), чем расстояние от глаза до документа (300-450мм). Вообще при высоком качестве изображения на видеотерминале расстояние от глаз пользователя до экрана, документа и клавиатуры может быть равным.
Положение экрана определяется:
- расстоянием считывания (0,6 - 0,7м);
- углом считывания, направлением взгляда на 20˚ ниже горизонтали к центру экрана, причем экран перпендикулярен этому направлению.
Должна также предусматриваться возможность регулирования экрана:
- по высоте +3 см;
- по наклону от -10˚ до +20˚ относительно вертикали;
- в левом и правом направлениях.
Большое значение также придается правильной рабочей позе пользователя.
При неудобной рабочей позе могут появиться боли в мышцах, суставах и сухожилиях. Требования к рабочей позе пользователя видеотерминала следующие:
- голова не должна быть наклонена более чем на 20˚,
- плечи должны быть расслаблены,
- локти - под углом 80˚-100˚,
- предплечья и кисти рук - в горизонтальном положении.
Причина неправильной позы пользователей обусловлена следующими факторами: нет хорошей подставки для документов, клавиатура находится слишком высоко, а документы - низко, некуда положить руки и кисти, недостаточно пространство для ног.
В целях преодоления указанных недостатков даются общие рекомендации: лучше передвижная клавиатура; должны быть предусмотрены специальные приспособления для регулирования высоты стола, клавиатуры и экрана, а также подставка для рук.
Существенное значение для производительной и качественной работы на компьютере имеют размеры знаков, плотность их размещения, контраст и соотношение яркостей символов и фона экрана. Если расстояние от глаз оператора до экрана дисплея составляет 60-80 см, то высота знака должна быть не менее 3мм, оптимальное соотношение ширины и высоты знака составляет 3:4, а расстояние между знаками – 15-20% их высоты. Соотношение яркости фона экрана и символов - от 1:2 до 1:15.
Во время пользования компьютером медики советуют устанавливать монитор на расстоянии 50-60 см от глаз. Специалисты также считают, что верхняя часть видеодисплея должна быть на уровне глаз или чуть ниже. Когда человек смотрит прямо перед собой, его глаза открываются шире, чем когда он смотрит вниз. За счет этого площадь обзора значительно увеличивается, вызывая обезвоживание глаз. К тому же если экран установлен высоко, а глаза широко открыты, нарушается функция моргания. Это значит, что глаза не закрываются полностью, не омываются слезной жидкостью, не получают достаточного увлажнения, что приводит к их быстрой утомляемости.
Создание благоприятных условий труда и правильное эстетическое оформление рабочих мест на производстве имеет большое значение, как для облегчения труда, так и для повышения его привлекательности, положительно влияющей на производительность труда.
4.3 Режим труда
Как уже было неоднократно отмечено, при работе с персональным компьютером очень важную роль играет соблюдение правильного режима труда и отдыха. В противном случае у персонала отмечаются значительное напряжение зрительного аппарата с появлением жалоб на неудовлетворенность работой, головные боли, раздражительность, нарушение сна, усталость и болезненные ощущения в глазах, в пояснице, в области шеи и руках.
В табл. 4.5 представлены сведения о регламентированных перерывах, которые необходимо делать при работе на компьютере, в зависимости от продолжительности рабочей смены, видов и категорий трудовой деятельности с ВДТ (видеодисплейный терминал) и ПЭВМ (в соответствии с САнНиП 2.2.2 542-96 «Гигиенические требования к видеодисплейным терминалам, персональным электронно-вычислительным машинам и организации работ»).
Таблица 4.5 - Время регламентированных перерывов при работе на компьютере
Категория работы с ВДТ или ПЭВМ |
Уровень нагрузки за рабочую смену при видах работы с ВДТ, количество знаков |
Суммарное время регламентированных перерывов, мин |
|
При 8-часовой смене |
При 12-часовой смене |
||
Группа А |
до 20000 |
30 |
70 |
Группа Б |
до 40000 |
50 |
90 |
Группа В |
до 60000 |
70 |
120 |
Примечание. Время перерывов дано при соблюдении указанных Санитарных правил и норм. При несоответствии фактических условий труда требованиям Санитарных правил и норм время регламентированных перерывов следует увеличить на 30%.
В соответствии со САнНиП 2.2.2 546-96 все виды трудовой деятельности, связанные с использованием компьютера, разделяются на три группы: группа А: работа по считыванию информации с экрана ВДТ или ПЭВМ с предварительным запросом; группа Б: работа по вводу информации; группа В: творческая работа в режиме диалога с ЭВМ.
Эффективность перерывов повышается при сочетании с производственной гимнастикой или организации специального помещения для отдыха персонала с удобной мягкой мебелью, аквариумом, зеленой зоной и т.п.
4.4 Расчет освещенности
Расчет освещенности рабочего места сводится к выбору системы освещения, определению необходимого числа светильников, их типа и размещения. Исходя из этого, рассчитаем параметры искусственного освещения.
Обычно искусственное освещение выполняется посредством электрических источников света двух видов: ламп накаливания и люминесцентных ламп. Будем использовать люминесцентные лампы, которые по сравнению с лампами накаливания имеют ряд существенных преимуществ:
- по спектральному составу света они близки к дневному, естественному свету;
- обладают более высоким КПД (в 1,5-2 раза выше, чем КПД ламп накаливания);
- обладают повышенной светоотдачей (в 3-4 раза выше, чем у ламп накаливания);
- более длительный срок службы.
Расчет освещения производится для комнаты площадью 15м2 , ширина которой - 5м, высота - 3 м. Воспользуемся методом светового потока.
Для определения количества светильников определим световой поток, падающий на поверхность по формуле:
F = E∙S∙Z∙К / n , (4.1)
Где F - рассчитываемый световой поток, Лм;
Е - нормированная минимальная освещенность, Лк (определяется по таблице). Работу программиста, в соответствии с этой таблицей, можно отнести к разряду точных работ, следовательно, минимальная освещенность будет Е = 300Лк;
S - площадь освещаемого помещения (в нашем случае S = 15м2);
Z - отношение средней освещенности к минимальной (обычно принимается равным 1,1-1,15 , пусть Z = 1,1);
К - коэффициент запаса, учитывающий уменьшение светового потока лампы в результате загрязнения светильников в процессе эксплуатации (его значение зависит от типа помещения и характера проводимых в нем работ и в нашем случае К = 1,5);
n - коэффициент использования, (выражается отношением светового потока, падающего на расчетную поверхность, к суммарному потоку всех ламп и исчисляется в долях единицы; зависит от характеристик светильника, размеров помещения, окраски стен и потолка, характеризуемых коэффициентами отражения от стен (РС) и потолка (РП)), значение коэффициентов РС и РП были указаны выше: РС=40%, РП=60%. Значение n определим по таблице коэффициентов использования различных светильников.
Для этого вычислим индекс помещения по формуле:
I = A∙B / h (A+B), (4.2)
где h - расчетная высота подвеса, h = 2,92 м;
A - ширина помещения, А = 3 м;
В - длина помещения, В = 5 м.
Подставив значения получим:
I= 0,642.
Зная индекс помещения I, по таблице 7 [23] находим n = 0,22.
Подставим все значения в формулу (4.1) для определения светового потока F, получаем F = 33750 Лм.
Для освещения выбираем люминесцентные лампы типа ЛБ40-1, световой поток которых Fл = 4320 Лк.
Рассчитаем необходимое количество ламп по формуле:
N = F / Fл, (4.3)
где N - определяемое число ламп;
F - световой поток, F = 33750 Лм;
Fл- световой поток лампы, Fл = 4320 Лм.
N = 8 ламп.
При выборе осветительных приборов используем светильники типа ОД. Каждый светильник комплектуется двумя лампами.
Значит требуется для помещения площадью S = 15 м2 четыре светильника типа ОД.
Расчет естественного освещения помещений
Организация правильного освещения рабочих мест, зон обработки и производственных помещений имеет большое санитарно-гигиеническое значение, способствует повышению продуктивности работы, снижения травматизма, улучшения качества продукции. И наоборот, недостаточное освещение усложняет исполнения технологического процесса и может быть причиной несчастного случая и заболевания органов зрения.
Освещение должно удовлетворять такие основные требования:
- быть равномерным и довольно сильным;
- не создавать различных теней на местах работы, контрастов между освещенным рабочем местом и окружающей обстановкой;
- не создавать ненужной яркости и блеска в поле взора работников;
- давать правильное направление светового потока;
Все производственные помещения необходимо иметь светлопрорезы, которые дают достаточное природное освещение. Без природного освещения могут быть конференц-залы заседаний, выставочные залы, раздевалки, санитарно-бытовые помещения, помещения ожидания медицинских учреждений, помещений личной гигиены, коридоры и проходы.
Коэфициент естественного освещения в соответствии с ДНБ В 25.28.2006, для нашого III пояса светового климата составляет 1,5.
Исходя из этого произведем расчет необходимой площади оконных проемов.
Расчет площади окон при боковом освещении определяется, по формуле:
Sо = (Ln*Кз.*N0*Sn*Кзд.)/(100 *T0*r1) (4.4)
где: Ln – нормированное значение КЕО
Кз – коэффициент запаса (равен 1,2)
N0 – световая характеристика окон
Sn – площадь достаточного естественного освещения
Кзд. – коэффициент, учитывающий затенение окон противостоящими зданиями
r1 – коэффициент, учитывающий повышение КЕО при боковом освещении
T0 – общий коэффициент светопропускания, который рассчитывается по формуле:
T0 = T1 * T2 * T3 * T4 * T5, (4.5)
где T1 – коэффициент светопропускания материала;
T2 – коэффициент, учитывающий потери света в переплетах светопроема;
T3 – коэффициент, учитывающий потери света в несущих конструкциях;
T4 – коэффициент, учитывающий потери света в солнцезащитный устройствах;
T5 – коэффициент, учитывающий потери света в защитной сетке, устанавливаемой под фонарями, принимается равным 1;
Теперь следует рассчитать боковое освещение для зоны, примыкающей к наружной стене. По разряду зрительной работы нужно определить значение КЕО. КЕО = 1,5 нормированное значение КЕО с учетом светового климата необходимо вычислить по формуле:
Ln=l*m*c, (4.6)
где l – значение КЕО (l=1.5);
m – коэффициент светового климата (m=1);
c – коэффициент солнечности климата (c=1)
Ln=1,5
Теперь следует определить отношение длины помещения Ln к глубине помещения B:
Ln/B=3/5 =0,6;
Отношение глубины помещения В к высоте от уровня условной рабочей поверхности до верха окна h1 (в данном случае h1=1,8) :
B/h1=5/1,8 = 2,77.
Световая характеристика световых проемов N0=9.
Кзд=1
Значение T0=0,8*0,7*1*1*1=0,56.
Ln для 4 разряда зрительных работ равен 1,5 при мытье окон два раза в год.
Определяем r1, r1=1,5.
Кз.=1,2.
Теперь следует определить значение Sп:
Sп=Ln*В=3*10=30 м2.
Кзд.=1.
На данном этапе следует рассчитать необходимую площадь оконных проемов: (Ln* Кз.*N0*Sn*Кзд.) / (100*T0*r1)
Sо = (1,5*1,2*9*30*1)/(100*0,56*1,5)=486/84= 5,78 м2;
Принимаем количество окон 1 штука:
S1=5,78 м2 площадь одного окна
Высота одного окна составляет – 2,5 м, ширина 2,3 м.
4.5. Расчет вентиляции
В зависимости от способа перемещения воздуха вентиляция бывает естественная и принудительная.
Параметры воздуха, поступающего в приемные отверстия и проемы местных отсосов технологических и других устройств, которые расположены в рабочей зоне, следует принимать в соответствии с ГОСТ 12.1.005-76. При размерах помещения 3 на 5 метров и высоте 3 метра, его объем 45 куб.м. Следовательно, вентиляция должна обеспечивать расход воздуха в 90 куб.м/час. В летнее время следует предусмотреть установку кондиционера с целью избежания превышения температуры в помещении для устойчивой работы оборудования. Необходимо уделить должное внимание количеству пыли в воздухе, так как это непосредственно влияет на надежность и ресурс эксплуатации ЭВМ.
Мощность (точнее мощность охлаждения) кондиционера является главной его характеристикой, от неё зависит на какой объем помещения он рассчитан. Для ориентировочных расчетов берется 1 кВт на 10 м2 при высоте потолков 2,8 – 3 м (в соответствии со СНиП 2.04.05-86 "Отопление, вентиляция и кондиционирование").
Для расчета теплопритоков данного помещения использована упрощенная методика:
Q=S·h·q (4.8)
где: Q – Теплопритоки
S – Площадь помещения
h – Высота помещения
q – Коэффициент равный 30-40 вт/м3 (в данном случае 35 вт/м3)
Для помещения 15 м2 и высотой 3 м теплопритоки будут составлять:
Q=15·3·35=1575 вт
Кроме этого следует учитывать тепловыделение от оргтехники и людей, считается (в соответствии со СНиП 2.04.05-86 "Отопление, вентиляция и кондиционирование") что в спокойном состоянии человек выделяет 0,1 кВт тепла, компьютер или копировальный аппарат 0,3 кВт, прибавив эти значения к общим теплопритокам можно получить необходимую мощность охлаждения.
Qдоп=(H·Sопер)+(С·Sкомп)+(P·Sпринт) (4.9)
где: Qдоп – Сумма дополнительных теплопритоков
C – Тепловыделение компьютера
H – Тепловыделение оператора
D – Тепловыделение принтера
Sкомп – Количество рабочих станций
Sпринт – Количество принтеров
Sопер – Количество операторов
Дополнительные теплопритоки помещения составят:
Qдоп1=(0,1·2)+(0,3·2)+(0,3·1)=1,1(кВт)
Итого сумма теплопритоков равна:
Qобщ1=1575+1100=2675 (Вт)
В соответствии с данными расчетами необходимо выбрать целесообразную мощность и количество кондиционеров.
Для помещения, для которого ведется расчет, следует использовать кондиционеры с номинальной мощностью 3,0 кВт.
4.6 Расчет уровня шума
Одним из неблагоприятных факторов производственной среды в ИВЦ является высокий уровень шума, создаваемый печатными устройствами, оборудованием для кондиционирования воздуха, вентиляторами систем охлаждения в самих ЭВМ.
Для решения вопросов о необходимости и целесообразности снижения шума необходимо знать уровни шума на рабочем месте оператора.
Уровень шума, возникающий от нескольких некогерентных источников, работающих одновременно, подсчитывается на основании принципа энергетического суммирования излучений отдельных источников:
∑L = 10·lg (Li∙n), (4.10)
где Li – уровень звукового давления i-го источника шума;
n – количество источников шума.
Полученные результаты расчета сравнивается с допустимым значением уровня шума для данного рабочего места. Если результаты расчета выше допустимого значения уровня шума, то необходимы специальные меры по снижению шума. К ним относятся: облицовка стен и потолка зала звукопоглощающими материалами, снижение шума в источнике, правильная планировка оборудования и рациональная организация рабочего места оператора.
Уровни звукового давления источников шума, действующих на оператора на его рабочем месте представлены в табл. 4.6.
Таблица 4.6 - Уровни звукового давления различных источников
Источник шума |
Уровень шума, дБ |
Жесткий диск |
40 |
Вентилятор |
45 |
Монитор |
17 |
Клавиатура |
10 |
Принтер |
45 |
Сканер |
42 |
Обычно рабочее место оператора оснащено следующим оборудованием: винчестер в системном блоке, вентилятор(ы) систем охлаждения ПК, монитор, клавиатура, принтер и сканер.
Подставив значения уровня звукового давления для каждого вида оборудования в формулу (4.4) , получим:
∑L=10·lg(104+104,5+101,7+101+104,5+104,2)=49,5 дБ
Полученное значение не превышает допустимый уровень шума для рабочего места оператора, равный 65 дБ (ГОСТ 12.1.003-83). И если учесть, что вряд ли такие периферийные устройства как сканер и принтер будут использоваться одновременно, то эта цифра будет еще ниже. Кроме того при работе принтера непосредственное присутствие оператора необязательно, т.к. принтер снабжен механизмом автоподачи листов.
В данном разделе дипломной работы были изложены требования к рабочему месту инженера - программиста. Созданные условия должны обеспечивать комфортную работу. На основании изученной литературы по данной проблеме, были указаны оптимальные размеры рабочего стола и кресла, рабочей поверхности, а также проведен выбор системы и расчет оптимального освещения производственного помещения, произведен расчет рационального кондиционирования помещения, а также расчет уровня шума на рабочем месте. Соблюдение условий, определяющих оптимальную организацию рабочего места инженера - программиста, позволит сохранить хорошую работоспособность в течение всего рабочего дня, повысит как в количественном, так и в качественном отношениях производительность труда программиста, что в свою очередь будет способствовать быстрейшей разработке и отладке программного продукта.
ВЫВОДЫ
В процессе выполнения дипломной работы было разработано устройство автоматического регулирования света на микроконтроллере. Актуальностью данной темы являлось то, что в процессе проектирования ставилась задача спроектировать устройство, которое не имело бы аналогов и отличалось новизной, простотой и дешевизной.
Был разработан светильник, который устранил почти все недостатки ранее существовавших похожих устройств, чем в свою очередь улучшил показатели по санитарным, энергосберегающим и пожаробезопасным нормам.
В похожих конструкциях наблюдается жжужание дросселя и звон нитей ламп, достаточно высокий нагрев корпуса при максимальной яркости свечения осветительных ламп, большое потребление электроэнергии, отсутствие дополнительных функций.
В процессе разработке было изучено множество отечественных и зарубежных источников, информация сети Интернет, технические характеристики и принцип действия устройств-аналогов. Единственным недостатком разработанного устройства является высокая цена (по отношению к аналогичным). Но цена рассматривалась при единичном исполнении, цены на комплектующие брались согласно цен интернет-магазинов при покупке одного комплекта, естественно, при оптовом приобретении материалов и комплектующих цена будет ниже.
В процессе разработки был составлен алгоритм управления, программное обеспечение микроконтроллера, произведен расчет элементов электрической схемы, согласно справочных данных.
В разделе «Охрана труда» был произведен расчет искусственного освещения помещения, в котором производятся работы на компьютере, рассчитан уровень шума, который образуется при использовании оргтехники.
ПЕРЕЧЕНЬ ССЫЛОК
1. "Dimmable Fluorescent Ballast" – User Guide, 10/07, Atmel Corporation, http://www.atmel.com/dyn/resources/prod_documents/doc7597.pdf
2. А. Евсеев "Стабилизированный регулятор мощности" // Радио, 2002г., №4, стр.36.
3. М. Марков "АЦП с интерфейсом RS-232" // Радио, 2005г., №2, стр.26; файл ADC675.zip.
4. ГОСТ13109-97. Нормы качества электрической энергии в системах электроснабжения общего назначения.
5. G. Howell "Five questions about resistors" // EDN, 9/28/2006, http://www.edn.com/contents/images/6372835.pdf
6. П. Хоровиц, У. Хилл "Искусство схемотехники" – Изд. 6-е, М.: Мир, 2003.
7. J. Israelsohn "Miller on edge: The role of Miller capacitance in nonlinear circuits" // EDN, 3/29/2007 http://www.edn.com/contents/images/6426883.pdf
8. C. Hillman "Common mistakes in electronic design" // EDN, 12/14/2007 http://www.edn.com/contents/images/6512156.pdf
9. А. Колпаков "Особенности применения электролитических конденсаторов" // Схемотехника, 2000г., №2, стр.30.
10. "The Do's and Don'ts of Using MOS-Gated Transistors" – Application Note AN-936, International Rectifier
11."TVS/Zener Theory and Design Considerations" – Handbook, Rev. 0, Jun−2005, On Semiconductor, http://www.onsemi.com/pub/Collateral/HBD854-D.PDF
12. "Characterization and Calibration of the ADC on an AVR" – Application Note AVR120, 02/06, Atmel Corporation,.pdf
13."The Eye’s Response to Light" – Lutron Electronics, 8/97, 14. Д. А. Гурский, Е. С. Турбина "Вычисления в Mathcad 12" – СПб.: Питер, 2006,
15."Four Great Reasons to Dim" – Lutron Electronics, http:// www.lutron.com/dim.htm
16."Frequently asked questions about dimmers" // http://www .lutron.com/product_technical/faq.asp
17."LEDs move from indication to illumination" // EDN, 8/2/2001 http://www.edn.com/contents/images/149134.pdf
18. Л. Н. Кечиев, Е. Д. Пожидаев "Защита электронных средств от воздействия статического электричества" – М.: ИД "Технологии", 2005.
19. Жидецкий В.Ц., Джигирей В.С., Мельников А.В. Основы охраны труда: Учебник – Львов, Афиша, 2008 – 351с.
20. Денисенко Г.Ф. Охрана труда: Учебн.пособие – М., Высшая школа, 1989 – 319с.
21. Самгин Э.Б. Освещение рабочих мест. – М.: МИРЭА, 1989. – 186с.
22. Справочная книга для проектирования электрического освещения. / Под ред. Г.Б. Кнорринга. – Л.: Энергия, 1976.
23. Борьба с шумом на производстве: Справочник / Е.Я. Юдин, Л.А. Борисов;
Под общ. ред. Е.Я. Юдина – М.: Машиностроение, 1985. – 400с., ил.
24. Зинченко В.П. Основы эргономики. – М.: МГУ, 1979. – 179с.
25.Методичні вказівки до виконання дипломної роботи для учнів спеціальності «Оператор комп’ютерного набору; оператор комп’ютерної верстки»/ Упоряд.: Д.О. Дяченко, К.О. Ізмалкова, О.Г. Меркулова. – Сєверодонецьк: СВПУ, 2007. – 40 с.
ПРИЛОЖЕНИЯ
ПРИЛОЖЕНИЕ А
/*********************************************
Date : 05.03.2010
Управление лампой накаливания.
*********************************************/
#include "90s2313.h"
#include "delay.h"
#define red PORTD.4
#define green PORTD.5
#define number_of_impuls 63 //64 - max
#define udervanie 1563
#define ofa_min 0x80
#define ofa_max 0xE8
#define kn_plus PIND.0;
#define kn_minus PIND.6;
unsigned char s_reg;//хранилище SREG
unsigned char ofa;//отсечка фазы -> ofa_min <= ofa <= ofa_max
unsigned char mode;//режим работы прграммы обработки ДУ.
bit infra, infra_old;//текущее, предыдущее значение сигнала с ПДУ
bit second_half_period;//для двойного прохода по прерыванию timer1.
bit ir_plus, ir_minus, ir_plus_old, ir_minus_old;//нажатие на ПДУ "+", "-"
bit closed;//идет обработка полученного сигнала ПДУ; не нужно прерываться по OVF_timer0
unsigned char num;//
bit on_new, on_old, off_new, off_old;//биты состояния кнопок.
bit enable_count;
bit error;//определение идентичности посылки
bit ir_p_otp, ir_m_otp;//отпускание кнопки ДУ
unsigned int timer_ofa;//таймер задержки изменения ofa;
eeprom unsigned char pusto[1];
eeprom unsigned char plus[number_of_impuls];
eeprom unsigned char minus[number_of_impuls];
unsigned char serial[number_of_impuls];
flash unsigned char copyright[]="AMAR T0260";
unsigned int tic;//отсчет секунд
unsigned int clock;//отсчет времени
bit second;//флаг секунды
bit in_home;//флаг "хозяин дома"
#include "infrared.c"
void write(eeprom char *kuda)
{
for(num=0; num<number_of_impuls; num++) kuda[num]=serial[num];
mode=7;
num=0;
serial[0]=0;
}
void verify(unsigned char temp)
{
if((serial[num]<(temp-temp/4)) || (serial[num]>(temp+temp/4))) error=1;
}
void infrared(void)
{
static unsigned int zader;
static unsigned char prop;
unsigned char temp;
if(zader)//ждем окончания приема сигнала
{
if(infra_old==1 && infra==1)
{
if(--zader)return;
ir_minus=ir_plus=0;
return;
}
zader=udervanie;
return;
}
if(!prop)
{
if(!infra) goto rc5_fr;
return;
}
if(prop < 7)
{
if(infra_old)
{
if(infra) goto rc5_count;
}
else
{
if(!infra)
{
rc5_count: if(++serial[0] > 250) prop=0;
return;
}
}
if(serial[0] > 0x14) ++prop;
rc5_fr: ++prop;
serial[0]=0;
return;
}
if(infra_old != infra)
{
++num;
serial[num]=0;
return;
}
//infra_old == infra
if(num<number_of_impuls && serial[num]<255) ++serial[num];
else//проверка полученной последовательности
{
closed=1;
prop=0;
switch(mode)
{
case 5:
write(plus);
break;
case 6:
write(minus);
break;
default:
error=0;
for(num=0; num<number_of_impuls-1; num++)
{
temp=plus[num];
if(temp==0xFF) break;
verify(temp);
}
if(!error)
{
ir_plus=1;
ir_minus=0;
}
error=0;
for(num=0; num<number_of_impuls-1; num++)
{
temp=minus[num];
if(temp==0xFF) break;
verify(temp);
}
if(!error)
{
ir_plus=0;
ir_minus=1;
}
if(ir_plus || ir_minus) zader=udervanie;
//очистка массива и переменной num
num=number_of_impuls;
while(num) serial[--num]=0;
break;
}
}
}
#include "keyboard.c"
//==========================================================
//обработка кнопок.
//==========================================================
void keyboard(void)
{
#define press_time 10
static unsigned int counter;//счетчик для снижения частоты вызова опроса клавиатуры.
static unsigned char press_plus;//счетчик последовательных нажатий на кнопку "+"
static unsigned char press_minus;//счетчик последовательных нажатий на кнопку "-"
static unsigned char press_key;//отсчет лимита времени на вход в mode=5 или 6.
static unsigned int zader;//счетчик времени нажатия на кнопку.
if(++counter<2000) return;
//обнуляем счетчик
counter=0;
//опрашиваем кнопки.
on_old=on_new;
off_old=off_new;
on_new=kn_plus;
off_new=kn_minus;
//удерживаем "+" и "-"
if(!on_old && !off_old && !on_new && !off_new)
{
if(zader > press_time*3)
{
mode=0;//хозяин дома
in_home=1;
clock=0;
}
else zader++;
return;
}
//удерживаем "-"
if(on_old && !off_old && on_new && !off_new || (ir_minus && !in_home))
{
if(zader>=press_time)
{
mode=1;//медленно снижать яркость
in_home=0;
}
else zader++;
return;
}
//удерживаем "+"
if(!on_old && off_old && !on_new && off_new || (ir_plus && !in_home))
{
if(zader>=press_time)
{
mode=2;//медленно повышать яркость
in_home=0;
}
else zader++;
return;
}
//отпускаем "-"
if(on_old && !off_old && on_new && off_new && (mode!=5) && (mode!=6) || ir_m_otp)
{
ir_m_otp=0;
if(zader<press_time)
{
mode=3;//быстро выключить
in_home=0;
ofa=ofa - (ofa - ofa_min)/4;
}
return;
}
//отпускаем "+"
if(!on_old && off_old && on_new && off_new && (mode!=5) && (mode!=6) || ir_p_otp)
{
ir_p_otp=0;
if(zader<press_time)
{
mode=4;//быстро включить
in_home=0;
}
return;
}
//нажатие "+"
if(on_old && off_old && !on_new && off_new)
{
enable_count=1;
if(++press_plus>7)
{
mode=5;//режим запоминания посылки ДУ "+"
goto l1;
}
return;
}
//нажатие "-"
if(on_old && off_old && on_new && !off_new)
{
enable_count=1;
if(++press_minus>7)
{
mode=6;//режим запоминания посылки ДУ "-"
l1:
clock=0;
}
return;
}
//
if(enable_count) ++press_key;
if(press_key>press_time*2)
{
enable_count=0;
press_key=0;
press_plus=0;
press_minus=0;
}
//если при медленном изменении яркости ничего не нажато, то остановить изменение яркости.
if(mode==1 || mode==2) mode=7;
//обнуляем счетчик
zader=0;
}
#include "faza.c"
//==========================================================
//обработка прерывания от положительного перепада полуволны.
//==========================================================
#pragma savereg-
interrupt [EXT_INT0] void ext_int0_isr(void)
{
s_reg=SREG;
#asm
PUSH R30
#endasm
second_half_period=0;//предустановка на двойную обработку прерывания timer1.
TCNT1H=0xFF;//выдержка timer1
TCNT1L=ofa;
TIMSK=0x82;//разрешение прерывания по переполнению timer1.
#asm
POP R30
#endasm
SREG=s_reg;
}
#pragma savereg+
#include "timer0.c"
//==========================================================
//обработка прерывания таймера0.
//==========================================================
#pragma savereg-
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
if(closed) #asm("RETI");
//сохраняем используемые регистры
#asm
PUSH R24
PUSH R25
PUSH R26
PUSH R27
PUSH R28
PUSH R29
PUSH R30
PUSH R31
IN R30,SREG
ORI R30,0x80
PUSH R30
#endasm
//опросим пульт ДУ
infra_old=infra;
infra=PINB.0;
if(ir_plus_old && !ir_plus && !in_home && (mode!=1) && (mode!=2)) ir_p_otp=1;
if(ir_minus_old && !ir_minus && !in_home && (mode!=1) && (mode!=2)) ir_m_otp=1;
ir_plus_old=ir_plus;
ir_minus_old=ir_minus;
//разрешаем прерывания
#asm("SEI");
//обработаем пульт ДУ
infrared();
//опрашиваем кнопки
keyboard();
if(++tic>=7813)//ждем 0,5сек
{
tic=0;
clock++;//0 to 4294967295
second=~second;
}
//восстанавливаем использованные регистры и возвращаемся.
#asm
POP R30
OUT SREG,R30
POP R31
POP R30
POP R29
POP R28
POP R27
POP R26
POP R25
POP R24
#endasm
closed=0;
#asm
RET
#endasm
}
#pragma savereg+
#include "timer1.c"
//==========================================================
//обработка прерывания таймера1 (включение симистора).
//==========================================================
#pragma savereg-
interrupt [TIM1_OVF] void timer1_ovf_isr(void)
{
//сохраняем регистры
s_reg=SREG;
#asm
PUSH R30
#endasm
//формируем импульс зажигания.
PORTB=0x00;
//delay_us(7);
#asm
LDI R30,9
__DELAY:
DEC R30
BRNE __DELAY
#endasm
PORTB=0b00011110;
//выдержка 10мсек для второго прохода.
TCNT1H=0xFF;
TCNT1L=0x64;
if(second_half_period) TIMSK=0x02;//запрещаем прерывания таймера1.
second_half_period=1;
//восстанавливаем регистры
#asm
POP R30
#endasm
SREG=s_reg;
}
#pragma savereg+
void main(void)
{
begin:
#asm("cli");
#include "init.c"
// Input/Output Ports initialization
// Port B initialization
// Func0=In Func1=Out Func2=Out Func3=Out Func4=Out Func5=In Func6=In Func7=In
// State0=T State1=1 State2=1 State3=1 State4=1 State5=T State6=T State7=T
DDRB =0b00011110;
PORTB=0b00011110;
// Port D initialization
// Func0=In Func1=In Func2=In Func3=In Func4=Out Func5=Out Func6=In
// State0=P State1=T State2=T State3=T State4=0 State5=1 State6=P
DDRD =0b00110000;
PORTD=0b01000001;
// Timer/Counter 0 initialization
// Clock source: System Clock
TCCR0=0x01;
TCNT0=0x02;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x02;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 125,000 kHz
// Mode: Normal top=FFFFh
// OC1 output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
TCCR1B=0x04;
TCCR1A=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1H=0x00;
OCR1L=0x00;
// External Interrupt(s) initialization
// INT0: On
// INT0 Mode: Rising Edge
// INT1: Off
GIMSK=0x00;
MCUCR=0x03;
GIFR=0x40;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
// Analog Comparator Output: Off
ACSR=0x80;
//подготовка данных
second_half_period=closed=0;
on_old=off_old=infra=infra_old=in_home=1;
mode=0;
ofa=ofa_min;
#asm("sei");
while (1)
{
switch(mode)
{
case 0: #include "mode_0.c";//хозяин дома
//хозяин дома
red=second;//моргаем красным и зеленым светодиодами
green=second;
//4 часа
if(clock==28800) mode=4;//быстро включить
//еще полчаса
if(clock>32400)
{
mode=3;//быстро погасить
clock=0;
}
break;
case 1: #include "mode_1.c";//медленно снижать яркость
//медленно снижать яркость
if(GIMSK==0x00)
{
mode=7;
break;
}
if(++timer_ofa>7500)
{
timer_ofa=0;
if(ofa>ofa_min) ofa--;
else GIMSK=0x00;
}
break;
case 2: #include "mode_2.c";//медленно повышать яркость
//медленно повышать яркость
if(GIMSK==0x00)
{
ofa=ofa_min;
GIMSK=0x40;
timer_ofa=0;
}
if(++timer_ofa>7500)
{
timer_ofa=0;
if(ofa<ofa_max) ofa++;
else mode=7;
}
break;
case 3: #include "mode_3.c";//быстро погасить
//быстро погасить
if(GIMSK==0x00)
{
if(in_home) mode=0;
else mode=7;
break;
}
if(++timer_ofa>21000)
{
timer_ofa=0;
if(ofa>ofa_min) ofa--;
else GIMSK=0x00;
}
break;
case 4: #include "mode_4.c";//быстро включить
//быстро включить
if(GIMSK==0x00)
{
ofa=ofa_min;
GIMSK=0x40;
timer_ofa=0;
}
if(++timer_ofa>330)
{
timer_ofa=0;
if(ofa<ofa_max) ofa++;
else
{
if(in_home) mode=0;
else mode=7;
}
}
break;
case 5: #include "mode_5.c";//запомнить ДУ "+"
//запомнить ДУ "+"
red=0;
green=second;
//если за 10 сек не приняли сигнал программирования, то выход из программирования
if(clock>20) mode=7;
break;
case 6: #include "mode_6.c";//запомнить ДУ "-"
//запомнить ДУ "-"
green=0;
red=second;
//если за 10 сек не приняли сигнал программирования, то выход из программирования
if(clock>20) mode=7;
break;
case 7: #include "mode_7.c";//просто ждем
//просто ждем
if(GIMSK==0x00) green=1;//зажигаем зеленый светодиод
else green=0;//тушим зеленый светодиод
break;
default:
goto begin;
}
#asm
SBIS 0x16,0
RJMP L1
CBI 0x12,4
RJMP L2
L1:
SBI 0x12,4
L2:
#endasm
}
}
ПРИЛОЖЕНИЕ Б
:1000000011C06DC2FDCFFCCFFBCFCEC274C2F8CF02
:10001000F7CFF6CFF5CF414D415220543032363034
:1000200000000000F894EE27ECBBE5BFF8E1F1BD5D
:10003000E1BD8DE0A2E0ED938A95E9F780E8A0E6C6
:10004000ED938A95E9F7E2E2F0E0C8953196802DCC
:10005000C8953196902D0097B9F0C8953196A02D8E
:10006000C8953196B02DC8953196102CC89531960B
:100070006E2F7F2FF02DE12DC89531960D920197AF
:10008000D9F7E62FF72FE1CFEFEDEDBFC0E8D0E0D5
:10009000A1C28824EFE38E1680F4E82DA881B981EF
:1000A000F0E0EA0FFB1FFF93EF93A0E8A80DEC919F
:1000B000AF91BF9197D38394EDCFE7E07E2E882454
:1000C000E0E0E093800022960895A0E8A80DEC916E
:1000D000EF93E881E695E695A88175D3EA1BAF9189
:1000E000AE1760F0A0E8A80DEC91EF93E881E695DB
:1000F000E695A881EA0FAF91EA1710F4689435F8F5
:10010000219608950A93E091BF00F091C0003097C6
:10011000E1F021FE02C020FC01C010C0E091BF0050
:10012000F091C0003197E093BF00F093C00030978A
:1001300009F0B5C0E89423F824F8B1C0EBE1F6E08B
:10014000E093BF00F093C000AAC0E091C100E0308E
:1001500019F420FE22C0A3C0A091C100A73030F541
:1001600021FE03C020FC03C00EC020FC0CC0A0E890
:10017000EC91EF5FEC93AE2FEAEFEA1718F4E0E0B2
:10018000E093C1008CC0A0918000E4E1EA1728F45C
:10019000E091C100EF5FE093C100E091C100EF5F2B
:1001A000E093C100E0E0E093800079C0E0E021FC52
:1001B000E1E0EF93E0E020FCE1E0AF91EA1731F0FD
:1001C0008394A0E8A80DE0E0EC9369C0EFE38E16FD
:1001D00028F4A0E8A80DAC91AF3F08F006C0A0E855
:1001E000A80DEC91EF5FEC935AC0689427F8E0E01B
:1001F000E093C100E72DE53031F4E1E0F0E0FA935F
:10020000EA9347DF4CC0E63031F4E0E4F0E0FA93E3
:10021000EA933FDF44C0E89435F88824EEE38E1675
:1002200060F4A82DB0E0AF5FBF4FD1D20E2F0F3FCB
:1002300021F00A934ADF8394F1CF35FC04C068941F
:1002400023F8E89424F8E89435F88824EEE38E1631
:1002500060F4A82DB0E0A05CBF4FB9D20E2F0F3FC5
:1002600021F00A9332DF8394F1CF35FC04C0E89487
:1002700023F8689424F823FC02C024FE06C0EBE1B6
:10028000F6E0E093BF00F093C000EFE38E2E8820ED
:1002900031F08A94A0E8A80DE0E0EC93F8CF099142
:1002A0000895A091C200B091C3001196A093C2001E
:1002B000B093C300A03DE7E0BE0708F40895E0E076
:1002C000E093C200E093C30030FA31F832FA33F819
:1002D000E8948099689430F8E8948699689432F8A4
:1002E00031FC06C033FC04C030FC02C032FE01C049
:1002F00019C0A091C700B091C800EEE1F0E0EA1784
:10030000FB0730F47724689441F8DD24EE2409C01B
:10031000E091C700F091C8003196E093C700F093D8
:10032000C800089531FE06C033FC04C030FE02C090
:1003300032FE05C024FE02C041FE01C017C0A091DC
:10034000C700B091C800AA30E0E0BE0728F0E1E0A5
:100350007E2EE89441F809C0E091C700F091C800F2
:100360003196E093C700F093C800089531FC06C0B1
:1003700033FE04C030FC02C032FC05C023FE02C0C4
:1003800041FE01C017C0A091C700B091C800AA30BB
:10039000E0E0BE0728F0E2E07E2EE89441F809C0D4
:1003A000E091C700F091C8003196E093C700F09348
:1003B000C800089531FE0CC033FC0AC030FE08C0EE
:1003C00032FE06C0E5E0E71519F0E6E0E71511F4A6
:1003D00037FE15C0E89437F8A091C700B091C80067
:1003E000AA30E0E0BE0750F4E3E07E2EE89441F846
:1003F000A62DA058EA2FE695E6956E1A089531FCD1
:100400000CC033FE0AC030FE08C032FE06C0E5E074
:10041000E71519F0E6E0E71511F436FE0FC0E89491
:1004200036F8A091C700B091C800AA30E0E0BE073E
:1004300020F4E4E07E2EE89441F8089531FE06C0F1
:1004400033FE04C030FC02C032FC01C00DC0689411
:1004500034F8A091C400AF5FA093C400E7E0EA17AE
:1004600010F4E5E015C0089531FE06C033FE04C067
:1004700030FE02C032FE01C00FC0689434F8A09173
:10048000C500AF5FA093C500E7E0EA1720F4E6E0FF
:100490007E2EDD24EE24089534FE05C0E091C600D2
:1004A000EF5FE093C600A091C600E4E1EA1748F4CC
:1004B000E89434F8E0E0E093C600E093C400E093F1
:1004C000C500E1E0E71519F0E2E0E71511F4E7E017
:1004D0007E2EE0E0E093C700E093C80008955FB689
:1004E000EF93E89422F8EFEFEDBD6CBCE2E8E9BFD2
:1004F000EF915FBE189527FE01C018958F939F93CB
:10050000AF93BF93CF93DF93EF93FF93EFB7E06881
:10051000EF9320FA21F8E894B099689420F825FE2A
:100520000AC023FC08C041FC06C0E1E0E71519F051
:10053000E2E0E71509F402C0689436F826FE0AC026
:1005400024FC08C041FC06C0E1E0E71519F0E2E038
:10055000E71509F402C0689437F823FA25F824FA5D
:1005600026F87894CFDD9DDEEB2DFC2D3196BE2E46
:10057000CF2EE538AEE1FA0748F0BB24CC24ED2DB0
:10058000FE2D3196DE2EEF2EE1E04E26EF91EFBFED
:10059000FF91EF91DF91CF91BF91AF919F918F919B
:1005A000E89427F8089518955FB6EF93E0E0E8BB6C
:1005B000E9E0EA95F1F7EEE1E8BBEFEFEDBDE4E647
:1005C000ECBD22FE02C0E2E0E9BF689422F8EF91A0
:1005D0005FBE1895F894EEE1E7BBE8BBE0E3E1BB52
:1005E000E1E4E2BBE1E0E3BFE2E0E2BFE9BFE4E077
:1005F000EEBDE0E0EFBDEDBDECBDEBBDEABDEBBF98
:10060000E3E0E5BFE0E4EABFE0E8E8B9E89427F812
:1006100022F8689441F821F820F833F831F877246B
:100620006E2E7894E72DE030C9F440FAE2B3E4F995
:10063000E2BB40FAE2B3E5F9E2BBE0E8F0E7ED1532
:10064000FE0511F4E4E07E2EE0E9FEE7ED15FE057F
:1006500020F4E3E07E2EDD24EE24AEC0E130E1F4B0
:10066000EBB7E03019F4E7E07E2EA6C0E92DFA2DB5
:1006700031969E2EAF2EAE2FBF2FECE4FDE1EA1790
:10068000FB0748F49924AA24E0E8E61510F46A94DC
:1006900002C0E0E0EBBF90C0E230F9F4EBB7E0302D
:1006A00031F4E0E86E2EE0E4EBBF9924AA24E92DB2
:1006B000FA2D31969E2EAF2EAE2FBF2FECE4FDE12A
:1006C000EA17FB0748F49924AA24E8EE6E1610F402
:1006D000639402C0E7E07E2E6FC0E33001F5EBB714
:1006E000E03039F441FE02C0772402C0E7E07E2EFC
:1006F00063C0E92DFA2D31969E2EAF2EAE2FBF2F5F
:10070000E8E0F2E5EA17FB0748F49924AA24E0E8B8
:10071000E61510F46A9402C0E0E0EBBF4DC0E4308F
:1007200019F5EBB7E03031F4E0E86E2EE0E4EBBF12
:100730009924AA24E92DFA2D31969E2EAF2EAE2FA4
:10074000BF2FEAE4F1E0EA17FB0768F49924AA2432
:10075000E8EE6E1610F4639406C041FE02C07724E2
:1007600002C0E7E07E2E28C0E53069F4949840FA94
:10077000E2B3E5F9E2BBE4E1F0E0ED15FE0510F4CB
:10078000E7E07E2E19C0E63069F4959840FAE2B3AE
:10079000E4F9E2BBE4E1F0E0ED15FE0510F4E7E07A
:1007A0007E2E0AC0E73039F4EBB7E03011F4959AA9
:1007B00001C0959801C00ECFB09B02C0949801C0B3
:1007C000949A30CFFFCF1A2EAE2FE12D0895E199E4
:1007D000FECFFF93FFB7F894AEBBE09AEDB3FFBF37
:1007E000FF910895E199FECF9FB7F894AEBBE09AD0
:1007F0008DB3E81719F0EDBBE29AE19A9FBF089517
:00000001FF
ПРИЛОЖЕНИЕ Г
Расчет балластного сопротивления в Excel
Продолжение Приложение Г
ПРИЛОЖЕНИЕ Д
Калькуляция комплектующих проектируемого устройства в Excel
ПРИЛОЖЕНИЕ Ж
Схема принципиальная электрическая устройства автоматического регулирования света