Настраиваемая система автоматического управления освещенностью и температурой в террариуме
Для привязки портов схемы к контактам чипа Altera MAX7000S используется утилита PinPlanner, встроенная в систему автоматизированного проектирования Quartus II. привяжем сигналы к портам микросхемы. В основном поле утилиты располагается графическое изображение чипа «MAX700S EPM7128SLC84−7» с указанием свободных и занятых контактов. К свободным контактам можно привязать порты своей схемы (рис. 7… Читать ещё >
Настраиваемая система автоматического управления освещенностью и температурой в террариуме (реферат, курсовая, диплом, контрольная)
1. ТЕХНИЧЕСКОЕ ЗАДАНИЕ
В первой лабораторной работе, по согласованию с преподавателем, было написано техническое задание к дипломному проекту.
НАСТРАИВАЕМАЯ СИСТЕМА АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ ОСВЕЩЕННОСТЬЮ И ТЕМПЕРАТУРОЙ В ТЕРРАРИУМЕ «ЗАРЯ»
1) НАИМЕНОВАНИЕ И ОБЛАСТЬ ПРИМЕНЕНИЯ
1.1) Настраиваемая система автоматического управления освещенностью и температурой в террариуме на базе программно-аппаратной платформы arduino (далее «Заря»).
1.2) «Заря» используется в домашних террариумах для создания климатических условий, приближенных к местам обитания конкретных рептилий.
2) СОСТАВ КОМПЛЕКТА
2.1) «Заря», -1 шт
2.2) Внешний блок питания, -1 шт
2.3) Кабель USB, -1 шт
2.4) Комплект документации, -1 компл.
2.5) Штатная упаковка
3) ТЕХНИКО-ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ
3.1) «Заря» должна обладать функцией ввода со встроенной клавиатуры базовых настроек и их вывод на встроенный монохромный дисплей.
3.1.1) Базовые настройки должны включать в себя установку текущей даты (день, месяц), времени (час, мин), региона происхождения рептилии.
3.1.2) Введенные настройки должны отображаться на дисплее после их применения через равные промежутки времени (5−10 сек)
3.2) «Заря» должна обладать функцией регулировки интенсивности свечения УФ лампы и греющей лампы, в зависимости от настроек.
3.2.1) Интенсивность свечения УФ лампы должна зависеть от текущих времени, даты и региона.
3.2.2) Интенсивность греющей лампы должна зависеть от текущих времени, даты, региона и показаний датчика температуры.
3.2.3) В качестве греющей лампы должна использоваться лампа накаливания от 40 до 60 Вт с цоколем E27.
3.3) «Заря» должна иметь возможность обновлять программное обеспечение при подключении системы «Заря» к персональному компьютеру через интерфейс USB.
3.4) «Заря» должна иметь в своем составе управляемый (диммируемый) ЭПРА 1×18 Вт для люминесцентных ламп T8.
3.5) Внешний блок питания должен обеспечивать выходное напряжение 5−12 В постоянного тока.
4) УСЛОВИЯ ЭКСПЛУАТАЦИИ И ХРАНЕНИЯ
4.1) «Заря» должна сохранять работоспособность при воздействии следующих параметров окружающей среды:
· Температура: от +10 до + 40? С
· Относительная влажность воздуха до 99%
4.2) «Заря» должна сохранять работоспособность при наличии следующих механических воздействий:
· Вибрация с ускорением 10g и частотой 20 Гц.
· Ударные нагрузки до 15g
4.3) «Заря» должна сохранять работоспособность после воздействия следующих параметров окружающей среды:
· Температура: от -10 до + 60? С
· Относительная влажность воздуха до 100%
4.4) «Заря» должна сохранять работоспособность после механических воздействий в виде вибрации с ускорением 20g и частотой 20 Гц. продолжительностью 15 минут и ударных нагрузок с ускорением 30g в количестве 10 раз.
5) КОНСТРУКТИВНОЕ ИСПОЛНЕНИЕ
5.1) «Заря» должна быть исполнена в виде прямоугольного параллелепипеда высотой 5 см, шириной 60?120 см, шириной 40?60см, в зависимости от размеров террариума.
5.2) «Заря» должна в своем составе отражатель с цоколем G13.
5.3) «Заря» должна иметь в своем составе регулируемый по углу наклона и углу поворота кронштейн с цоколем E27.
6) ТРЕБОВАНИЯ К УСЛОВИЯМ ТРАНСПОРТИРОВКИ
6.1) Изделие должно транспортироваться в штатной упаковке
6.2) Изделие предназначено для транспортировки автомобильным, железнодорожным, авиационным и водным транспортом, без нарушения условий хранения.
7) ТЕХНИКО-ЭКОНОМИЧЕСКИЕ ТРЕБОВАНИЯ
7.1) Стоимость комплекта изделия, при производстве 1000 шт., не должна превышать 5000 руб.
7.2) Срок гарантийного обслуживания — 2 года с момента покупки
2. БЛОК-СХЕМА ЦИФРОВОГО УЗЛА
В ходе выполнения лабораторной работы № 2 в среде разработки Quartus была разработана блок-схема цифрового узла (Рис. 1), реализующая генератор прямоугольных импульсов с изменяемой частотой (меандр, изменение осуществляется с помощью двух кнопок: «больше», «меньше»).
Рисунок 1 «Блок-схема цифрового узла»
В данной схеме используются следующие компоненты:
1. INPUT — входной порт:
1.1. sysclk — вход тактового генератора;
1.2. up — сигнал кнопки, увеличивающей значение счетчика;
1.3. down — сигнал кнопки, уменьшающей значение счетчика;
2. OUTPUT — выходной порт:
2.1. bus[3.0] - содержимое реверсивного счетчика нажатий кнопок, выведена для диагностики работы схемы;
2.2. RS — состояние RS-триггера, определяющее направление счета в реверсивном счетчике.
2.3. MEANDR — на этот выход подаются прямоугольные импульсы с выбранной частотой.
3. OR2 — логическое ИЛИ.
4. NOTИнверсия сигнала.
5. RSFF — RS-триггер, задающий направление счета.
6. TFF — T-триггер, формирующий прямоугольные импульсы.
7. Lpm_counter1 — счетчик, созданный путем выбора параметров макрофункции lpm_counter. Настроены следующие параметры: разрядность 4 бита, вход синхронного сброса, вход синхросигнала.
8. Lpm_counter2 — реверсивный счетчик, созданный путем выбора параметров макрофункции lpm_counter. Настроены следующие параметры: разрядность 4 бита, вход направления счета, вход синхросигнала.
9. Lpm_compare — комапратор, созданный путем выбора параметров макрофункции lpm_compare. Настроены следующие параметры: разрядность операндов A и B 4 бита, выход сигнала равенства операндов AeB.
Тестирование работы цифрового узла, описанного блок-схемой, выполнено следующим образом:
1. Необходимо создать файл векторной диаграммы (vector waveform file). Затем в поле Name нужно вставить входные и выходные порты схемы. (Рис. 2)
Рисунок 2 «Добавление портов на диаграмму»
2. Задать входным портам соответствующие значения (рис.3).
Рисунок 3 «Задание значений входных портов»
3. Затем запустить симуляцию.
4. Проанализировать полученные результаты (Рис. 4).
Рисунок 4 «Результат симуляции».
В результате анализа временных диаграмм видно, что при нажатии на кнопку «UP» значение счетчика увеличивается, а частота уменьшается. При нажатии на кнопку «DOWN» значение счетчика уменьшается, а частота увеличивается. Для оптимизации схемы к работе на плате был добавлен счетчик, понижающий частоту мерцания светодиода с 25 МГц до 3 Гц. Также была добавлена цепь подавления дребезга контактов (рис. 5).
Рисунок 5 «Схема с подавлением дребезга»
Рисунок 6 «Подавление дребезга на временной диаграмме».
3. ОПИСАНИЕ ЦИФРОВОГО УЗЛА НА ЯЗЫКЕ AHDL
регулировка лампа настройка свечение
Схема цифрового устройства, описанного в предыдущем разделе, создана заново с использованием языка описания AHDL. Далее приведен текст программы на языке AHDL.
Title «Meandr Generator (lab3)» ;
INCLUDE «lpm_counter0.inc» ;
INCLUDE «lpm_counter1.inc» ;
INCLUDE «lpm_compare0.inc» ;
Subdesign laba3
(
sysclk, up, down: INPUT;
rs, meandr: OUTPUT;
cnt0[3.0]: OUTPUT;
cnt1[3.0]:OUTPUT;
)
VARIABLE
syscnt:lpm_counter1;%сч-к импульсов такт генер-ра%
updowncnt:lpm_counter0;%сч-к нажатий кнопок%
cmp:lpm_compare0;%компаратор шин данных счетчиков %
rstri:SRFF;%RS триггер%
ttri:TFF;%T триггер%
BEGIN
%системный счетчик %
syscnt.clock=sysclk;
syscnt.sclr=(cmp.aeb # cmp. ageb);
cnt0[3.0]=syscnt.q[3.0]; %значение системного счетчика на выход для проверки %
%RS триггер%
rstri.s=up;
rstri.r=down;
rstri.clk=sysclk;
rs=rstri.q;% состояние триггера на выход для проверки %
%счетчик нажатий%
updowncnt.updown=rstri.q;%Направление счета %
updowncnt.clock=(up#down); %Счет нажатий%
cnt1[3.0]=updowncnt.q[3.0]; %значение счетчика нажатий на выход для проверки %
%Компаратор%
cmp.dataa=syscnt.q[3.0];
cmp.datab=updowncnt.q[3.0];
%Т триггер%
ttri.clk=sysclk;
ttri.t=cmp.aeb;
meandr=ttri.q;
END;
Для уменьшения трудоемкости разработки программ существует возможность включения в программу ранее созданного экземпляра макрофункции. Например, команда INCLUDE «lpm_counter0.inc», включает в программу счетчик lpm_counter0 из предыдущего раздела.
Тестирование работы цифрового узла, описанного на языке AHDL, аналогично тестированию цифрового узла, описанного блок-схемой.
4. ПРИВЯЗКА ПОРТОВ К СИГНАЛАМ И ПРОГРАММИРОВАНИЕ МИКРОСХЕМЫ
Для привязки портов схемы к контактам чипа Altera MAX7000S используется утилита PinPlanner, встроенная в систему автоматизированного проектирования Quartus II. привяжем сигналы к портам микросхемы. В основном поле утилиты располагается графическое изображение чипа «MAX700S EPM7128SLC84−7» с указанием свободных и занятых контактов. К свободным контактам можно привязать порты своей схемы (рис. 7).
Рисунок 7. «Привязка портов к контактам чипа»
Сигналы TCK, TDI, TDO, TMS создаются автоматически при компиляции после выполнения привязки. Перед обновлением информации о используемых контактах (create/update) эти порты необходимо удалить из таблицы.
После привязки портов можно произвести прошивку микросхемы через утилиту Programmer, так же встроенную в САПР Quartus. Отмеченными должны быть пункты «Program/configure» и «Verify» (рис 8.).
Рисунок 8. «Привязка портов к контактам чипа»
Перед прошивкой платы необходимо соединить порты чипа с соответствующей периферией (DIP-переключатели, кнопки, светодиоды, 7-сегментные переключатели). После этого можно начать прошивку, нажав кнопку «Start» утилиты Programmer.
После выполнения вышеуказанных действий производится проверка соответствия работы платы и поставленной задачи. При несовпадении цели и результата производится отладка.
5. ОТЛАДОЧНЫЕ РАБОТЫ ПРИ ПРОГРАММИРОВАНИИ МИКРОСХЕМЫ
В ходе первого тестирования выяснилось, что светодиод мигает с базовой частотой (3 Гц) и плата схема не реагировала на нажатие кнопок.
В цепь кнопки «UP» и кнопки «DOWN» пришлось добавить по инвертору (NOT), т.к. кнопки при нажатии формируют сигнал «0», а в не нажатом состоянии — «1». Это значит, что обе кнопки все время формировали сигнал «1», который поступал на входы «R» и «S» RS-триггера, что приводило к некорректной работе.
Также выяснилось, что была неправильно подключена задержка в цепь подавления дребезга контактов. Для получения задержки ~50мс при работе от тактового генератора 25,175 МГц, нужен счетчик разрядностью 20−21 бит. Был выбран счетчик разрядностью 20 бит, что должно было обеспечить задержку 41 мс. Однако, к тактовому входу счетчика был подключен сигнал не от тактового генератора 25,175 МГц, а от счетчика, задающего базовую частоту светодиода 3 Гц. Это обеспечило задержку величиной 96,11 часов.
На случай непредвиденных обстоятельств, к прошивке была подготовлена отладочная версия схемы с выводом 4-разрядного содержимого обоих счетчиков на светодиоды (рис. 9).
Рисунок 9. «Отладочный вариант схемы»
ВЫВОД
Была спроектирована схема, реализующая генератор прямоугольных импульсов с изменяемой частотой (меандр, изменение осуществляется с помощью двух кнопок: «больше», «меньше»), была проведена подготовка к прошивке, прошивка и отладка. В ходе выполнения лабораторных работ и курсовой работы были получены навыки проектирования цифровых схем в САПР Quartus II. Проектирование производилось как в виде блок-схем, так и в текстовом виде (на языке описания аппаратуры AHDL).