Блок терморегулятора инкубатора
Разработка схемы электрической структурной блока терморегулятора инкубатора. Энергосберегающий режим SLEEP. Расчет схемы сопряжения с нагревателем, потребляемой мощности и схемы индикации. Расчет норм времени по операциям технического процесса.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 25.06.2017 |
Размер файла | 1,1 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
Введение
1. Разработка схемы электрической структурной блока терморегулятора инкубатора
2. Выбор элементной базы
2.1 Описание микроконтроллера PIC16F84
2.1.1 Память микроконтроллера
2.1.2 Микропроцессор
2.1.3 Порты ввода-вывода
2.1.4 Таймеры
2.1.5 Система прерываний
2.1.6 Синхронизация микроконтроллера PIC16F84
2.1.7 Энергосберегающий режим SLEEP
3. Разработка схемы электрической принципиальной
3.1 Разработка схемы электрической принципиальной схемы синхронизации
3.2 Разработка схемы электрической принципиальной датчика температуры
3.3 Разработка схемы электрической принципиальной схемы выбора режима
3.4 Разработка схемы электрической принципиальной схемы индикации
3.5 Разработка схемы электрической принципиальной схемы сопряжения с нагревателем
4. Разработка программы
5. Описание работы устройства
6. Расчётная часть
6.1 Расчёт фильтров по питанию
6.2 Расчет схемы индикации
6.3 Расчет схемы сопряжения с нагревателем
6.4 Расчет потребляемой мощности
7. Конструкторско - технологический раздел проекта
7.1 Выбор и обоснование выбора конструкции изделия с учетом требований технического задания
7.2 Разработка технологического процесса сборки и монтажа
7.3 Расчет надежности
7.4 Расчет элементов рисунка печатного монтажа
7.5 Расчет комплексного показателя технологичности
8. Экономический раздел
8.1 Расчет норм времени по операциям технического процесса и трудоемкости производственной программы
8.2 Расчет количества рабочих мест и производственных рабочих
8.3 Расчет заработной платы и отчислений, расходов по обслуживанию и управлению производством.
8.4 Расчет стоимости материалов и комплектующих
8.5 Расчет полной себестоимости и цены изделия
9. Охрана труда
9.1 Требования к рабочим местам и персоналу
9.2 Противопожарные мероприятия
Заключение
Список используемых источников
Введение
На сегодняшний день фермеры и птицеводы стараются менять поголовье кур-несушек каждые 2 года. Существует два варианта замены поголовья кур: купить цыплят или вывести их самостоятельно. Покупные цыплята могут оказаться некачественными и каждый фермер рискует остаться с поголовьем кур, которые несутся плохо, либо не несутся совсем. Вывод маленьких курочек самостоятельно, уменьшает вероятность риска и при этом не нужно тратить свои деньги каждые 2 года. Для самостоятельного вывода цыплят необходим электронный инкубатор.
Каждый опытный птицевод знает, что для того, чтобы получить хороший вывод цыплят нужно поддерживать определенный температурный режим. Основные требования к температурному режиму - это максимальная точность измерения и поддержания температуры с допустимой погрешностью 0,1 - 0,2?С.
Созревание эмбрионов делится на 4 этапа:
а) первый этап - с 1 по 7 сутки. Формируется сердце, кровеносная система и зачатки внутренних органов. В этот период проветривание не требуется, но к концу этапа эмбриону уже нужен кислород. Самая оптимальная температура - 37,8 °C. Яйца нужно переворачивать каждый 6 часов, то есть 4 раза в сутки. При этом открывать инкубатор крайне не рекомендуется;
б) второй этап - с 8 по 14 сутки. В течение этого времени у эмбриона оформляется скелет и клюв. Температура та же, что и в предыдущем периоде. Менять положение яиц нужно уже каждые 4 часа - 6 раз в сутки. Также требуется проветривать яйца для поступления кислорода, делать это надо 2 раза в сутки по 5 минут;
в) третий этап - с 15 по 18 сутки. Переворачивать яйца надо также 6 раз в сутки, при этом проветривание увеличивают до 15-20 минут 2 раза в день. Температуру снижают до 37,5°C. В конце периода при удачном выведении цыплята начинают издавать едва слышные звуки и переворачиваться в яйце;
г) четвертый этап - с 19 по 21 сутки. В первую очередь прекращают переворачивать яйца, цыплята достаточно сильные и делают это самостоятельно. Снижают время проветривания до 5 минут два раза в день. Температуру снижают до 37,3°C. В конце этого периода происходит вылупление цыплят в инкубаторе.
Электронный инкубатор помогает птицеводам довольно в короткие сроки получить большой процент вывода цыплят, при этом не навредив их здоровью. Блок терморегулятора инкубатора обеспечивает поддержание необходимой температуры.
Цели дипломного проектирования:
- разработка схем электрических структурной и принципиальной блока терморегулятора инкубатора;
- выбор и обоснование выбора конструкции модуля первого уровня с учетом требований технического задания;
- разработка сборочного чертежа и чертежа печатной платы;
- разработка технологического процесса сборки и монтажа модуля первого уровня;
- расчет норм времени по операциям технологического процесса и трудоемкости производственной программы;
- расчет количества рабочих мест и производственных рабочих;
-расчет полной себестоимости и цены модуля первого уровня;
-описание мероприятий по охране труда, технике безопасности и производственной санитарии на рабочем месте монтажника РЭА.
1. Разработка схемы электрической структурной
Блок терморегулятора инкубатора автоматизирует процесс поддержания постоянной температуры в инкубационной камере 37,3 - 37,8?С. Для этого необходимо устройство, которое будет замерять температуру и устройство, которое будет нагревать температуру воздуха в инкубационной камере. В качестве устройства замеряющего температуру используется электронный датчик температуры. Датчиком необходимо управлять. С целью минимизации аппаратной части все выше перечисленные функции может реализовать микроконтроллер. Микроконтроллер содержит порты ввода - вывода позволяющие подключить к нему различные устройства.
Для корректной работы микроконтроллера необходима схема синхронизации. Период сигналов, формируемый схемой синхронизации, определяет такт микроконтроллера.
Для измерения температуры воздуха в инкубационной камере, необходим датчик температуры, который выдает данные о температуре на микроконтроллер.
Для установки температуры воздуха, которая будет поддерживаться в инкубационной камере, используется схема выбора режима.
Для взаимодействия микроконтроллера с нагревательным устройством, необходима схема сопряжения с нагревателем.
Пользователь должен видеть температуру воздуха в инкубационной камере, для этого используется схема индикации.
Функции микроконтроллера:
- обеспечение взаимодействия со схемой сопряжения с нагревателем;
- обеспечение взаимодействия с датчиком температуры;
- управление схемой индикации.
2. Выбор элементной базы
Схемы, выполненные на базе микроконтроллера, позволяют минимизировать аппаратные затраты. В схемах, использующих микроконтроллер, упрощается управление устройством.
На сегодняшний день широкое распространение получили фирмы Atmelи PIC, выпускающие микроконтроллеры.
Среди двух микроконтроллеров Atmega16 фирмы Atmel, представляющий 8-разрядный RISC-микроконтроллер общего назначения c быстрым процессорным ядром. Он имеет Flash-память программ, память данных EEPROM и SRAM, порты ввода-вывода и интерфейсные схемы. Гарвардская архитектура AVR реализует полное логическое и физическое разделение как адресных пространств, так и информационных шин для обращения к памяти программ и данных и PIC16F84фирмы Microchip, представляющий 8-разрядный микроконтроллер с RISC-архитектурой, поддерживает ввод-вывод 16-разрядного процессора. Использует Гарвардскую архитектуру, основанную на разделении шин и областей памяти для данных и команд.
Среди представленных микроконтроллеров выбирается PIC, т.к. он имеет следующие преимущества по сравнению с Atmel:
- высокую производительность, которая позволяет реализовывать различные устройства, работающие в реальном времени с большими скоростями;
- малое энергопотребление, открывающее широкие возможности для создания устройств с батарейным питанием, питанием от телефонной линии, солнечных батарей;
- мощную поддержку разработок, которую осуществляет фирма Microchip.
Микроконтроллеры PIC16F84A выпускаются в двух исполнениях коммерческом и индустриальном. Они отличаются рабочей температурой микроконтроллера. От 0 до +40 °C в коммерческом исполнении и от -40 до +85 °C в индустриальном исполнении. Для счетчика людей в помещении будет использоваться индустриальное исполнение.
Для счетчика людей в помещении не требуется высокая частота микроконтроллера. Поэтому выбирается микроконтроллер PIC16F84A - 4МГц в индустриальном исполнении.
Электрические параметры микроконтроллера представлены в таблице 2.1.
Таблица 2.1 - Основные электрические параметры микроконтроллера PIC16F84A
Параметр |
Значение |
Примечание |
|
Рабочая температура TA, ?C |
-40 … + 85 |
Индустриальное исполнение. |
|
Максимальная тактовая частота FOSC, МГц |
4 |
||
Напряжение питания VDD, В |
4,0 … 6,0 |
||
Потребляемый ток в стандартном режиме IDD, мА |
1,8 … 4,5 |
FOSC= 4 МГц, VDD = 5.5 В |
|
Потребляемый ток в режиме SLEEPIPD, мкА |
7 … 28 1 … 16 1 … 14 |
VDD = 4 В, WDTвкл., инд. VDD = 4 В, WDTвыкл., инд. VDD = 4 В, WDTвыкл., комм. |
|
Максимальный втекающий ток для любого вывода, мА |
25 |
Управление светодиодами без дополнительного буфера (но с резистором) |
|
Максимальный вытекающий ток для любого вывода, мА |
20 |
Управление светодиодами без дополнительного буфера (но с резистором) |
|
Количество циклов стирание/запись для флэш-памяти программ, не менее |
1000 |
||
Количество циклов стирание/запись для памяти данных EEPROM, не менее |
10.000.000 |
2.1 Описание микроконтроллера PIC16F84
2.1.1 Память микроконтроллера
Используется Гарвардская архитектура, в которой программы и данные размещаются в разной памяти.
Память программ - постоянная память объёмом 1К слово, разрядность ячейки 14 бит.
Диапазон адресов ячеек: 000h - 3FFh.
Программа записывается в память программ микроконтроллера с помощью программатора.
Память данных - оперативная память, объёмом 256 байт, разрядность ячейки 8 бит.
Память данных делится на два банка, объёмом 128 байт каждый.
Переключение банков происходит при помощи указания пятого разряда RP0. Если бит установлен в 0, адресуется нулевой банк, если бит установлен в 1, адресуется первый банк.
Каждый банк памяти данных содержит РОНы и специальные регистры. Специальные регистры применяются для хранения битов состояния, определяющих работу портов ввода/вывода, таймеров и других модулей микроконтроллера. В таблице 2.2 показано распределение регистров в банках.
Таблица 2.1 - Распределение регистров в банках памяти данных
Адреса ячеек 0 банка в 16 С.С. |
Банк 0 |
Банк 1 |
Адреса ячеек 1 банка в 16 С.С. |
|
00h |
Косвенный адрес |
Косвенный |
80h |
|
01h |
TMR0 |
PCL |
81h |
|
02h |
PCL |
PCL |
82h |
|
03h |
STATUS |
STATUS |
83h |
|
04h |
FSR |
FSR |
84h |
|
05h |
PORTA |
TRISA |
85h |
|
06h |
PORTB |
TRISB |
86h |
|
07h |
Недоступен |
Недоступен |
87h |
|
08h |
EEDATA |
EECON1 |
88h |
|
09h |
EEADR |
EECON2 |
89h |
|
0Ah |
PCLATH |
PCLATH |
8Ah |
|
0Bh |
INTCON |
INTCON |
8Bh |
|
0Ch … 4Fh |
Регистры общего назначения |
8Сh … FFh |
Постоянная память данных EEPROM- память, доступная для чтения и записи во всём рабочем диапазоне питающих напряжений, объёмом 64 байта. Перед записью нового значения предыдущее стирается. Для доступа к ней используется косвенно-регистровая адресация через специальные регистры EEADR, EEDATA, EECON1, EECON2.
Стековая память - имеет объём восемь тринадцати битных ячеек. Стек не является частью памяти данных или программ, указатель стека не доступен для чтения и записи. Также стек не доступен программисту.
2.1.2 Микропроцессор
Аккумулятор - восьмиразрядный рабочий регистр W. При выполнении двух адресных команд, один операнд должен находится в аккумуляторе.
Арифметико-логическое устройство выполняет арифметические операции (сложение и вычитание), логические операции (дизъюнкция, конъюнкция, инверсия, неравнозначность), а также устанавливает флаги (С - флаг переноса/заёма, DC - флаг десятичного переноса/заёма, Z - флаг нуля).
Устройство управления микропроцессора обеспечивает выполнение команды, формирует управляющие сигналы для блоков процессора. Состав устройства управления:
а) регистр команд (IP) обеспечивает приём из памяти программ и хранение команды, разрядность данного регистра 14 бит;
б) счётчик команд (PC) хранит адрес команды и увеличивает своё состояние на единицу перед считыванием следующей команды из памяти. Разрядность счётчика 13 бит, следовательно, он позволяет адресовать восемь килослов памяти команд. Младший байт счётчика команд является полностью доступным для чтения и записи регистром PCL. Обращение к старшим пяти битам происходит аппаратно через регистр PCLATH. Содержимое PCLATHпереноситься в старшие разряды счётчика команд, когда происходит запись нового значения в счётчик команд (переход на подпрограмму, безусловный переход и если регистр PCLявляется регистром назначения для операции);
в) устройство декодирования команды и управления служит для преобразования кода операции команды в сигналы управляющие аппаратурой;
г) конвейер, позволяет обеспечить выполнение текущей команды и выборку следующей команды. Время выборки команды из памяти и её выполнение называется командным циклом.
В первом такте Q1 команда из конвейера загружается в регистр команд и счётчик команд увеличивается на единицу. Во втором такте Q2 считывается команда из памяти программы и происходит декодирование команды и чтение операндов. В третьем такте Q3 выполняется заданная операция, а в четвёртом такте Q4 записывается результат. Все команды кроме команд передачи управления выполняются за 4 такта, они в свою очередь выполняются за 8 тактов, так как при выполнении конвейер очищается и один цикл требуется для выборки команды по адресу перехода.
2.1.3 Порты ввода-вывода
Микроконтроллеры PIC16F84 имеют два порта ввода-вывода PORTA и PORTB.
Каждый вывод порта может быть запрограммирован на ввод или на вывод установкой соответствующего бита в регистрах TRISA и TRISB. Выводимые значения фиксируются в регистрах-защелках PORTAи PORTB. Направление ввода-вывода может быть изменено в произвольный момент времени.
Регистр PORTA имеет разрядность 5 бит. Линия RA4 имеет триггер Шмитта на входе в режиме ввода и открытый сток в режиме вывода. Остальные линии PORTA по входу работают со стандартными уровнями TTL, выходы подключаются к комплементарным выходным CMOS драйверам. Линия RA4 используется также как вход внешних тактовых импульсов для таймера TMR0.
Направление передачи данных для каждой линии программируется отдельно, установкой или сбросом битов регистра TRISA. Установка бита в 1 настраивает соответствующую линию на ввод. Выходной драйвер при этом переходит в высокоимпедансное состояние. Установка бита в 0 настраивает линию порта на вывод выводит на нее содержимое соответствующего бита регистра PORTA. По умолчанию при включении питания все линии настроены на ввод. При чтении PORTA всегда считываются действительные логические уровни на выводах, независимо от того, запрограммированы отдельные разряды как входы или как выходы.
PORTB представляет собой 8-битный двунаправленный порт. Выходные значения записываются в регистр PORTB. Направление ввода-вывода определяется установкой или сбросом битов регистра TRISB. Установка бита в 1 настраивает соответствующую линию на ввод, переводя выходной драйвер в высокоимпедансное состояние, а-0 - на вывод. При включении питания все линии по умолчанию настроены на ввод. Чтение порта В всегда возвращает действительные значения на выводах, независимо от направления передачи
Все выводы PORTB имеют встроенную отключаемую нагрузку в виде резисторов, подключенных к шине питания (подтягивающие резисторы). Нагрузка включается и отключается одновременно для всех выводов при помощи бита 7 (RBPU) регистра OPTION_REG. Программное обнуление бита RBPU подключает нагрузку, но для линий, настроенных на вывод, нагрузка автоматически отключается.
Линии RB4-RB7 могут использоваться как входы прерывания по изменению уровня. Линия RB0 может использоваться как вход прерывания по фронту.
2.1.4 Таймеры
Модуль таймера состоит:
- восьмиразрядный таймер TMR0;
- программируемый восьмиразрядный предварительный делитель;
- мультиплексор входного сигнала;
- генератор прерывания по переполнению таймера.
Режим работы таймера от внутреннего тактового сигнала выбирается обнулением разряда T0CS регистра OPTION_REG. В этом режиме инкрементирование TMR0 происходит в каждом машинном цикле. Частота сигнала на счётном входе таймера в четыре раза меньше, чем частота микроконтроллера. Таймер может считать внешние сигналы, поступающие на вход RA4 микроконтроллера.
Модуль таймера содержит предделитель, который может быть подключен либо к TMR0, либо к сторожевому таймеру WDT.
Сторожевой таймер WDT представляет собой комбинацию RC-генератора и восьмиразрядного таймера, при переполнении которого происходит сброс микропроцессора микроконтроллера. Между генератором и таймером WDT может быть включён предварительный делитель. Время выдержки таймера зависит от температуры, напряжения питания и коэффициента деления предделителя.
При подключении предделителя в WDTс максимальным коэффициентом деления 128, выдержка может достигать почти 2,3 секунды. Минимальная номинальная выдержка WDTбез предделителя 18 миллисекунд.
терморегулятор инкубатор нагреватель мощность
2.1.5 Система прерываний
Все прерывания микроконтроллера PIC16F84 аппаратные маскируемые.
Микроконтроллер имеет четыре источника прерывания:
- внешние прерывания (прерывание по входу RB0, прерывание по изменению состояния одной из линий RB4-RB7);
- внутренние прерывания (прерывание по переполнению таймера TMR0, прерывание по окончанию записи в энергонезависимую память данных EEPROM).
Вектор прерывания один и имеет адрес 04h. В нём хранится первая команда обработчика прерываний. Для управления системой прерываний используется регистр INTCON.
2.1.6 Синхронизация микроконтроллера PIC16F84
Микроконтроллеры PIC16F84 не имеют встроенного генератора, работающего без внешней цепи. Он содержит только элементы, которые можно использовать для построения генератора, а именно инвертор с отрицательной обратной связью.
2.1.7 Энергосберегающий режим SLEEP
Этот режим характерен низким потреблением тока, около 1 мкА. Вход в режим SLEEPосуществляется командой SLEEP. Выход из режима SLEEP осуществляется в результате следующих событий:
- внешним сбросом по входу MCLR;
- сброс при переполнении WDT;
- прерыванием.
При первом событии происходит сброс всего устройства. Два других события предполагают продолжение выполнения программы [1].
3. Разработка схемы электрической принципиальной
3.1 Разработка схемы электрической принципиальной схемы синхронизации
Микроконтроллер PIC16F84 не содержит встроенного генератора, а только его элементы, поэтому необходимо подключить кварцевый резонатор. Так как разрабатывается схема электрическая принципиальная блока терморегулятора инкубатора, то для него не требуется высокая частота синхронизации. Выбирается кварцевый резонатор HC-49S с частотой 4МГц. В таблице 3.1 представлены электрические характеристики кварцевого резонатора[2].
Таблица 3.1 - Электрические характеристики кварцевого резонатора HC-49S
Параметр |
Значение |
|
Резонансная частота, МГц |
4 |
|
Рабочая температура, °С |
-20…70 |
|
Точность настройки, dF/Fx10-6 |
50 |
Кварцевый резонатор подключается к входам OSC1 и OSC2 микроконтроллера. Для повышения стабильности работы кварцевого генератора к нему параллельно подключаются конденсаторы С4 и С5. Емкость конденсаторов выбирается в соответствии с таблицей 3.2[2].
Таблица 3.2 - Режим XT микроконтроллера
Режим генератора |
Частота кварцевого резонатора, КГц |
Емкость конденсатора С4, пФ |
Емкость конденсатора С5, пФ |
|
XT |
4000 |
15…33 |
Выбирается ёмкость конденсатора 30 пФ. Выбираются конденсаторы C4, C5 К10-17А-М47 30пФ±10%.
Микроконтроллер необходимо настроить на режим работы XT установкой в 1 нулевого разряда и установкой в 0 первого разряда в слове конфигурации по адресу 2007h.
При включении напряжения питания схема синхронизации формирует тактовые сигналы частотой 4 МГц. Период этих сигналов определяет такт микроконтроллера.
Схема электрическая принципиальная схемы синхронизации ZQ1, C4, C5 PK 02.01.09.441 04 Э3.
3.2 Разработка схемы электрической принципиальной датчика температуры
Датчик температуры служит для измерения температуры в инкубационной камере. Для этого выбирается цифровой термометр. Сравнение наиболее используемых цифровых термометров представлено в таблице 3.3.
Таблица 3.3 - Сравнение характеристик цифровых термометров
Название |
DS18B20 |
DS1822 |
|
Минимальная измеряемая температура, ?С |
-55 |
-55 |
|
Максимальная измеряемая температура, ?С |
125 |
125 |
|
Точность измерения,% |
0,5 |
2 |
|
Напряжение питания,В |
3…5.5 |
3…5.5 |
|
Интерфейс |
1 - wire |
1 - wire |
|
Цена, руб |
190 |
380 |
Датчик температуры подключается к плате через разъем XP2. Выбирается разъем PLS-2R. В таблице 3.4 представлены электрические характеристики [12].
Таблица 3.4 - Электрические характеристики разъема PLS-2R
Параметры |
Значение |
|
Прямой ток, А |
1 |
|
Рабочее напряжение, В |
500 |
|
Рабочая температура, °С |
-55…140 |
Выбирается цифровой термометр DS18B20, так как для инкубации яиц необходима точность измерения температуры 0,1 - 0,2°С.
DS18B20 обменивается даннымипоинтерфейсу 1-wire.1-Wire - интерфейсобеспечивает передачу информации последовательным кодом по одному проводу.
Основа цифрового термометра DS18B20 - его температурный преобразователь. Разрешающая способность температурного преобразователя может быть выбрана при инициализации DS18D20 и составляет 9, 10, 11, или 12 бит, соответствуя приращениям (дискретности измерения температуры) 0.5 °C, 0.25°C, 0.125°C, и 0.0625°C, соответственно. Разрешающая способность по умолчанию установлена 12-бит. В исходном состоянии DS18B20 находится в состоянии покоя (в неактивном состоянии).Чтобы начать температурное измерение и преобразование, микроконтроллер должен подать команду начала конвертирования температуры [0х44]. После конвертирования, полученные данные запоминаются в 2-байтовом регистре температуры в оперативной памяти, и DS18B20 возвращается к неактивному состоянию. Микроконтроллер может контролировать конвертирование температуры (после команды [0х44]) по состоянию шины. На шине будет присутствовать логический «0» когда происходит температурное преобразование. И логическая «1», когда конвертирование выполнено. После выполненного конвертирования команда [0хBE] позволяет устройству управления шиной читать память подчиненного устройства. Выходные температурные данные DS18B20 калиброваны в градусах Цельсия. Температурные данные запоминаются как 16-битовое число со знаком. Биты признака (S) указывают, является ли температура положительной или отрицательной: для положительных S равно 0, а для отрицательных чисел S равно 1. Если DS18B20 будет настроен для конвертирования в 12-битныйкод, то все биты в температурном регистре будут содержать действительные данные. Для 11-битного кода, бит 0 не определён. Для 10-битного кода, биты 1 и 0 неопределенны, и для 9-битногокода,биты 2, 1 и0 неопределенны.
Вывод GNDцифрового термометра соединяется с общим проводом источника питания. Вывод VCCцифрового термометра соединяется с напряжением питания +5В. Вход/выход данных DQсоединяется с линией микроконтроллера RA4, которая настраивается, то на ввод установкой в единицу четвертого бита регистра TRISA, то на вывод установкой в ноль четвертого бита регистра TRISA, при этом вход/выход данных DQ подключается к источнику питания через подтягивающий резистор. Сопротивление подтягивающего резистора R1 выбирается 4,7 кОм [13].Выбирается резистор C2-33-0,125-4,7кОм±10%.
При включении напряжения питания цифровой термометр по команде от микроконтроллера начинает замерять температуру воздуха и передавать данные по линии DQ на микроконтроллер.
Схема электрическая принципиальная датчика температуры XP2, R1 РК 09.02.01.441 04 Э3.
3.3 Разработка схемы электрической принципиальной схемы выбора режима
Для установки диапазона, в пределах которого будет поддерживаться температура воздуха в инкубационной камере, используются кнопки SB1 - SB3. Выбираются кнопки TC - 0404. Электрические характеристики приведены в таблице 3.5 [12].
Таблица 3.5 - Электрические характеристики кнопки TC-0404
Параметры |
Значение |
|
Прямой ток, мА |
50 |
|
Рабочее напряжение, В |
12 |
|
Рабочая температура, °С |
-55…140 |
|
Количество коммутаций |
500000 |
Кнопки SB1 -SB3 подключаются через резисторы R3 - R5 к линиям RB5 - RB7 микроконтроллера. Резисторы предназначены для защиты от статического электричества входов микроконтроллера. Выбирается сопротивление резисторов 100 Ом [1]. Выбираются резисторы С2-23 - 0,125 - 100 Ом±10%.
Для обеспечения уровня логической единицы на входах микроконтроллера, при не нажатом состоянии кнопок SB1 - SB3,подключаются встроенные подтягивающие резисторы, установкой в ноль седьмого бита регистра OPTION_REG.
Кнопка SB1 предназначена для переключения блока терморегулятора инкубатора в режим установки нижнего порога температуры. Нажатием кнопки SB1 начинается установка нижнего порога температуры, например, 37,5?С. При температуре ниже этого порога включается нагреватель. КнопкаSB2 устанавливается нужное число десятых долей градусов (от 0 до 9), при этом мигает младший разряд индикатора. Кнопка SB3 предназначена для выбора установки единиц градусов или десятков градусов. В режиме установки единиц градусов мигает средний разряд индикатора HG1. В режиме установки десятков градусов мигает старший разряд индикатора HG1. Нажатием кнопки SB1 второй раз, блок терморегулятора переключается в режим установки верхнего порога температуры порога температуры, например, 38?С, при превышении которого нагреватель выключается. Процедура установки верхнего порога температуры аналогична установке нижнего порога. Третье нажатие на кнопку SB1 обеспечивает выход из режима установки и блок терморегулятора обеспечивает поддержание температуры в заданных пределах. Все введенные значения сохраняются в энергонезависимой памяти данных микроконтроллера EEPROM.
Линии RB5 - RB7 настраиваются на ввод установкой в единицу одноименных разрядов регистра TRISB.
Схема электрическая принципиальная схемы выбора режима R3 - R5,SB1 - SB3
РК 09.02.01.441 04 Э3.
3.4 Разработка схемы электрической принципиальной схемы индикации
Схема индикации отображает данные о температуре внутри инкубационной камеры.
Существует три варианта индикаторов: полупроводниковые семисегментные, жидкокристаллические семисегментные, жидкокристаллические дисплеи. Инкубатор может устанавливаться в помещениях с недостаточной освещенностью. Для отображения трехразрядного числа достаточно три разряда индикатора. В связи с этим выбирается полупроводниковый семисегментный индикатор. Сравнение характеристик семисегментных индикаторов представлены в таблице 3.6 [12].
Таблица 3.6 - Сравнение характеристик полупроводниковых семисегментных индикаторов
Название |
BC56-12GWA |
BC56-12EWA |
|
Дополнительный символ |
Точка |
Точка |
|
Цвет свечения |
Зеленый |
Красный |
|
Максимальная сила света, мКд, при токе 10мА |
10,5 |
6,4 |
|
Количество сегментов |
7 |
7 |
|
Количество разрядов |
3 |
3 |
|
Схема включения |
Общий катод |
Общий катод |
|
Максимальное обратное напряжение,В |
5 |
5 |
|
Максимальное прямое напряжение, В |
2,5 |
2,5 |
|
Рабочая температура, ?С |
-40..85 |
-40..85 |
|
Цена, руб |
130 |
130 |
Выбирается полупроводниковый семисегментный индикатор BC56-12GWA, так как сила света, при одинаковом токе, больше чем у индикатора BC56-12EWA. А также зеленый цвет свечения более приятен для глаз человека.
Полупроводниковый семисегментный индикатор отображает три цифры, в связи с этим применяется динамическое управление индикатором. Динамическое управление индикатором экономит линии портов ввода - вывода микроконтроллера. Двоично - десятичный код цифры выдается микроконтроллером на линии RB0 -RB3, в то время как объединенные катоды индикатора HG1 поочерёдно коммутируются через порт PORTA.
Для преобразования двоично - десятичного кода в семисегментный код необходим преобразователь. Выбирается микросхема с напряжением питания +5В и вытекающим током не менее 10мА, токи сегментов 10мА должны обеспечить максимальную силу света полупроводникового семисегментного индикатора. Выбирается преобразователь CD4511BE. В таблице 3.7 представлена электрические характеристики [12].
Таблица 3.7 - Электрические характеристики преобразователя CD4511BE.
Параметры |
Значение |
|
Входной ток, мА |
10 |
|
Выходной ток, мА |
25 |
|
Напряжение питания, В |
3...18 |
|
Рабочая температура, °С |
-55…125 |
Таблица истинности преобразователя представлена на рисунке 3.1.
Рисунок 3.1 - Таблица истинности преобразователя
При включении всех сегментов одного разряда полупроводникового семисегментного индикатора ток, протекающий через общий катод равен 80мА, максимальный вытекающий ток микроконтроллера 20мА. Для управления общими катодами полупроводникового семисегментного индикатора необходим транзисторный ключ. Выбирается транзистор, у которого ток коллектора не менее 80мА и напряжение коллектор - эмиттер не менее 5В. Выбираются транзисторы VT1 - VT3КТ315Б. В таблице 3.9 представлены электрические характеристики [12].
Таблица 3.9 - Электрические характеристики транзистора КТ315Б
Параметры |
Значение |
|
Максимальный ток коллектора, мА |
100 |
|
Статический коэффициент передачи тока |
50…350 |
|
Напряжение насыщения коллектор-эмиттер, В |
0,4 |
|
Напряжение насыщения база-эмиттер, В |
1,1 |
|
Рабочая температура, °С |
-40…85 |
Информационные входы (1, 2,4,8) преобразователя кода DD2 подключаются к линиям микроконтроллера RB0 - RB3. Вход разрешения работы преобразователя E# соединяется с общим проводом источника питания, тем самым разрешается работа преобразователя. Вход тестирования индикатора LT#и вход гашения подсветки индикатора BL#соединяются с напряжением питания +5В, тем самым отключаются тестирование индикатора и подсветка индикатора.
Ток, протекающий через сегмент индикатора HG1 равен 10мА, что не превышает максимальный вытекающий ток линии преобразователя кода DD2 20мА. Поэтому каждый сегмент A - G индикатораHG1 соединяется с одноименными выходами преобразователя кода DD2 через токоограничительные резисторы R10 - R16. Дополнительный символ DP семисегментного индикатора соединяется с линией микроконтроллера RB4 через токоограничительный резистор R6. Общий катод разряда десятков KA1 соединяется с коллектором транзистора VT1, общий катод разряда единиц KA2соединяется с коллектором транзистора VT2 и общий катод разряда десятых долей KA3соединяется с коллектором транзистора VT3.
Эмиттеры транзисторов VT1 - VT3 соединяются с общим проводом источника питания. База транзистора VT1 соединяется через токоограничительный резисторR7 с линией RA2микроконтроллера, база транзистора VT2 соединяется через токоограничительный резисторR8 с линией RA1 микроконтроллера, база транзистора VT3 соединяется через токоограничительный резисторR9 с линией RB0микроконтроллера.
Семисегментный индикаторHG1 отображает температуру воздуха в инкубационной камере. Данные о температуре с выходов микроконтроллера (RB0 - RB4)поступают в двоично-десятичном коде на информационные входы преобразователя кода DD2. Преобразователь кода DD2 преобразует двоично-десятичный код в семисегментный и с выходов преобразователя DD2 семисегментный код поступает на сегменты A - G семисегментного индикатораHG1. Одновременно с этим микроконтроллер по линиям RA0 - RA2 подключает на базу одного из транзисторов VT1 - VT3 уровень логической единицы, тем самым открывая транзистор. Через сегменты индикатораHG1, на которые отпреобразователя DD2 поступили высокие уровни напряжения протекает ток и на знакоместе отображается цифра. В случае, если транзистор закрыт, то соответствующий разряд семисегментного индикатора не светиться.
Линии микроконтроллера RA0 -RA2и RB0 - RB4 настраиваются на вывод, установкой в ноль одноименных разрядов регистров TRISAиTRISB.
Расчет схемы индикации представлены в разделе 6.
Схема электрическая принципиальная схемы индикации R6 - R9, R11 - R17, VT1 - VT3, HG1, DD2РК 09.02.01.441 04 Э3.
3.5 Разработка схемы электрической принципиальной схемы сопряжения с нагревателем
Схема сопряжения с нагревателем служит для подключения к нагревателю напряжения питания и запуска нагревателя инкубатора. Существует несколько типов нагревателей: нагревательный шнур из углеродистого волокна, трубчатый электронагреватель (ТЕН), лампа накаливания.
Лампа накаливания недолговечна и при запуске в первые секунды резко меняет сопротивление вольфрамовой нити, которая используется в них. Из-за этого искра проскакивающая между контактами электромагнитного реле, стоящего в терморегуляторе, может очень быстро вывести его из строя.
Трубчатый электронагреватель нагревает воздух в инкубационной камере не равномерно, что недопустимо для инкубации яиц. ТЕН может выйти из строя при механическом повреждении.
В нагревательном шнуре отсутствует инерция, за счет этого воздух в инкубационной камере нагревается равномерно, так же если не повредить оплетку и далее волокна, то это вечный нагреватель. Нагревательный шнур не меняет резко своего сопротивления и считается резистивной нагрузкой, т. е можно подключать напрямую к терморегулятору не опасаясь, что реле выйдет из строя.
В качестве нагревателя выбирается нагревательный шнур из углеродистого волокна. В таблице 3.10 представлены электрические характеристики нагревательного шнура [12].
Таблица 3.10 - Электрические характеристики нагревательного шнура из углеродистого волокна
Параметры |
Значение |
|
Рабочий ток на 10 метров, А |
0,68 |
|
Рабочее напряжение на 10 метров, В |
220 |
|
Сопротивление на метр, Ом |
33 |
|
Максимальная мощность на метр, Вт |
14 |
|
Рабочая температура, °С |
-40…200 |
Для инкубации от 80 до 100 яиц необходимо 10 метров нагревательного шнура. Микроконтроллер не может обеспечить напряжение питания нагревательного шнура, поэтому его необходимо подключить к напряжению питания 220В. Нагревательный шнур находится в инкубационной камере инкубатора. В связи с этим один конец нагревательного шнура подключить к напряжению 220Висточника питания, а второй конец нагревательного шнура подключить к плате через разъем XS1. Так же через разъем XS1 к плате подключается «ноль» источника питания 220В. Выбирается разъем MF-2. В таблице 3.11 представлены электрические характеристики разъема [12].
Таблица 3.11 - Электрические характеристики разъема MF-2
Параметры |
Значение |
|
Прямой ток, А |
9 |
|
Рабочее напряжение, В |
600 |
|
Рабочая температура, °С |
-55…105 |
Ток нагревательного шнура 0,68А превышает максимальный ток микроконтроллера 20мА. Напряжение питания микроконтроллера +5В.
Напряжение питания 220В подключается непосредственно к нагревательному шнуру, а «ноль» источника питания коммутируется реле. Выбирается реле K1, у которого переменное напряжение коммутации не менее 220В, а ток коммутации не менее 0,68А. Выбирается реле V23026-A1001-B201. В таблице 3.12 представлены электрические характеристики реле [12].
Таблица 3.12 - Электрические характеристики реле V23026-A1001-B201
Параметры |
Значение |
|
Ток срабатывания не более, мА |
13,5 |
|
Максимальный коммутируемый ток, А |
1 |
|
Максимальное коммутируемое напряжение, В |
250 |
|
Номинальное рабочее напряжение, В |
5 |
|
Рабочая температура, °С |
-40…85 |
Третий контакт реле подключается к линии RA3, которая настраивается на вывод, установкой в ноль третьего разряда регистра TRISA, 8 контакт реле подключается к общему проводу источника питания.
Пятый контакт реле подключается к нулевому проводу источника питания 220В (контакт 1 разъемаXP3). Десятый контакт реле подключается к нагревательному шнуру (контакт 2 разъема XP3).Нормально разомкнутые контакты реле 5, 10 соединяются с разъемом XP3.
Для защиты выхода микроконтроллера от ЭДС самоиндукции обмотки реле параллельно реле K1 устанавливается диод VD1. Диод VD1 должен иметь допустимое обратное напряжение в 3 - 4 раза больше [12] напряжения питания реле K1, а также запас по току. Выбирается диод VD1 КД512Б. В таблице 3.14 представлены электрические характеристики диода [12].
Таблица 3.12 - Электрические характеристики диода КД512Б
Параметры |
Значение |
|
Максимальное обратное напряжение, В |
20 |
|
Максимальный прямой ток, мА |
200 |
|
Максимальное прямое напряжение, В |
1 |
|
Рабочая температура, °С |
-55…105 |
На выходе RA3 микроконтроллера формируется высокий уровень напряжения, в обмотку срабатывания протекает ток, контакты 5 и 10 реле замыкаются и обеспечивают подключение нулевого провода источника питания 220В к нагревательному шнуру, шнур начинает нагреваться. Когда температура воздуха в инкубационной камере повышается на линии RA3 формируется низкий уровень напряжения, ток через обмотку срабатывания не протекает, контакты 5 и 10 реле размыкаются, нагревательный шнур моментально остывает.
Расчет схемы сопряжения с нагревателем представлен в разделе 6
Схема электрическая принципиальная схемы сопряжения с нагревателем VD1, K1, XP3 РК 09.02.01.441 04 Э3.
4. Разработка программы
В таблице 4.1 представлены переменные, используемые в программе.
Таблица 4.1 - Переменные, используемые в программе
Имя переменной |
Адрес регистра или значение |
Назначение переменной |
|
fig_0.1 |
0x0C |
Регистр количества десятых долей градуса |
|
fig_1 |
0x0D |
Регистр количества единиц градусов |
|
fig_10 |
0x0E |
Регистр количества десятков градусов |
|
AdrFig |
0x0F |
Регистр адреса ячейки fig, которая выводится на индикатор |
|
Katod |
0x10 |
Регистр выбора одного из катодов индикатора |
|
W_copy |
0x11 |
Временное хранение аккумулятора W |
|
STATUS_copy |
0x12 |
Временное хранение регистра STATUS |
|
FSR_copy |
0x13 |
Временное хранение регистра FSR |
|
COM_REG |
0x14 |
Регистр команд для датчика |
|
count |
0x15 |
Счетчик цикла |
|
TEMP_LO |
0x16 |
Регистр младшего байта измеренной температуры |
|
TEMP_HI |
0x17 |
Регистр старшего байта измеренной температуры |
|
dopcontr |
0x18 |
Счетчик контроля подключения термодатчика |
|
Schet |
0x19 |
Счетчик записанных байтов |
|
Contr_L0.1 |
0х1A |
Регистры нижнего предела установленной температуры |
|
Contr_L1 |
0х1B |
||
Contr_L10 |
0х1C |
||
Contr_H0.1 |
0х1D |
Регистры верхнего предела установленной температуры |
|
Contr_H1 |
0x1E |
||
Contr_H10 |
0x1F |
||
Interval |
0x20 |
Счетчик для таймера |
|
contr |
0x21 |
Счетчик выводимых данных на индикатор |
|
Mercan |
0x22 |
Счетчик, обеспечивающий мерцание индикатора |
|
_adrec_ |
0x23 |
Дополнительная ячейка памяти |
|
zapcontr |
0x24 |
Дополнительная ячейка памяти для увеличения числа на 1 |
При подключении напряжения питания к блоку терморегулятора инкубатора подпрограмма Portinc инициализирует микроконтроллер. Обнуляются РОНы fig_0.1, fig_1, fig_10. Затем PORTA настраивается на вывод, установкой в 0 всех разрядов регистра TRISA, следовательно, в регистр TRISA загружается код 00000000. Линии RB0 - RB4 настраиваются на вывод, а линии RB5 - RB7 настраиваются на ввод, следовательно, в регистр TRISB загружается код 11100000. После этого подпрограмма Timerinic сбрасывает счетчик count инициализирует таймер TMR0. Выбирается время свечения одного знакоместа 4 мс, то есть время выдержки таймера 4 мс.
Рассчитывается частота входного сигнала таймераfТ по формуле
, (4.1)
где fмк - частота микроконтроллера, МГц.
Рассчитывается период входного сигнала таймера ТТ по формуле
, (4.2)
где fT - частота сигнала на входе таймера, МГц.
Рассчитывается коэффициент деления таймераКдел по формуле
, (4.3)
где Tвых- период выходного сигнала таймера, мс;
Твх - период входного сигнала таймера, мкс.
Максимальный коэффициент деления таймера равен 256, поэтому необходимо к таймеру TMR0 подключить предделитель. Выбирается коэффициент деления предделителя 16.
Рассчитывается коэффициент деления таймера TMR0Кдел по формуле
, (4.4)
где КделТ - коэффициент деления таймера;
Кделпд - коэффициент деления предделителя.
Если производится запись в таймер TMR0, его инкрементирование начинается спустя 2 цикла, поэтому коэффициент деления TMR0 следует уменьшить на 2, то есть число 248.
Рассчитывается число N загружаемое в TMR0 для обеспечения коэффициента деления 248 по формуле
N = Kделmax - (KделT - 1), (4.5)
гдеKделT - коэффициент деления TMR0;
Кделmax - максимальный коэффициент деления TMR0.
N = 256 - (248 - 1) = 9.
Для запуска таймера TMR0 в него загружается число 9.
Подпрограмма PredelTemp производит чтение диапазона установленной температуры из энергонезависимой памяти EEPROM, который был записан в EEPROM подпрограммой zapis.
Ячейки памяти EEPROM недоступны путем прямой адресации в адресном пространстве микроконтроллера. Для доступа к ячейкам энергонезависимой памяти используются регистры: EEDATA, EEADR, EECON1, EECON2.Подпрограмма zapis выполняется после установки кнопками SB1 - SB3 нижнего и верхнего порога температуры. При первоначальном запуске блока терморегулятора диапазон температуры не установлен, таким образом подпрограмма прекращает чтение из EEPROM обнаружив 0 в первой ячейке и принудительно устанавливает нижний порог равный 37.3?С, верхний порог равный 37,8?С.
После принудительной установки диапазона температуры необходимо очистить ячейки памяти TEMP_LO и TEMP_HI, которые хранят ранее измеренную температуру. На момент измерения температуры запрещаются прерывания, следовательно, в регистр INTCON загружается код 00000000. В таблице 4.2 представлена структура регистра INTCON.
Таблица 4.2 - Структура регистра INTCON
Номер бита |
Имя |
Назначение |
Пояснения |
|
7 |
GIE |
Бит глобального запрета прерываний |
1 - Разрешены все прерывания 0 - запрещены все прерывания |
|
6 |
EEIE |
Разрешение прерывания по окончанию записи в EEPROM |
1 - разрешено 0 - запрещено |
|
5 |
T0IE |
Прерывания по переполнению таймера TMR0 |
1 - разрешено 0 - запрещено |
|
4 |
INTE |
Прерывание по входу RB0 |
1 - разрешено 0 - запрещено |
|
3 |
RBIE |
Прерывание по изменению состояния на входах порта B (RB7 - RB4) |
1 - разрешено 0 - запрещено |
|
2 |
T0IF |
Флаг прерывания по переполнению TMR0 |
1 - был переполнен 0 - не был переполнен |
|
1 |
INTF |
Флаг прерывания по входу RB0 |
1 - произошло изменение сигнала на входе RB0 0 -не было изменения сигнала на входе RB0 |
|
0 |
RBIF |
Флаг прерывания по изменению состояния на входах RB7 - RB4 |
1 - на одном из выводов произошло изменение уровня 0 - не было изменения уровня ни на одном из выводов |
Запись - чтение данных происходит по интерфейсу 1 - wire. Передача данных по линии осуществляется импульсами нулевого уровня, но различной длительности логического 0 и логической 1. Длительность нулевого сигнала равна 60мкс, длительность сигнала логической единицы равна 15мкс.
Далее запускается подпрограмма Test_inic, которая производит проверку подключения термодатчика и его инициализацию. Временная диаграмма инициализации термодатчика представлена на рисунок 4.1.
Рисунок 4.1 - Временная диаграмма инициализации
Подпрограммы DOUT_HIGH линия RA4 настраивается на прием информации от датчика, установкой в единицу 4 бита регистра TRISA. После этого проверяется состояние линии RA4 микроконтроллера, если датчик неактивен (на линии RA4 присутствует 1), то запускается подпрограмма DOUT_LOW, которая настраивает линию RA4 на передачу информации установкой в ноль 4 бита регистраTRISA. После этого микроконтроллер формирует импульс сброса длительностью 480 мкс, установив линию RA4 в 0. Длительность импульса формируется подпрограммой DLIT_160,которая запускается 3 раза. Временной интервал 160 мкс формируется циклом.
Рассчитывается длительность такта микроконтроллера
, (4.6)
где fмк - частота микроконтроллера, МГц.
Рассчитывается количество тактов микроконтроллера N, необходимое для формирования длительности сигнала 160 мкс
, (4.7)
где Тз - время задержки, мкс;
Тмк - длительность такта микроконтроллера, мкс.
Цикл состоит из команд, представленных на рисунке 4.2
Рисунок 4.2 - Команды цикла
Цикл выполняется за 12 тактов. Рассчитывается количество повторений цикла Кц
, (4.8)
где N - количество тактов микроконтроллера;
Nц - количество тактов за цикл.
В счетчик цикла count необходимо загрузить число 54.
После сброса термодатчика линияRA4 настраивается на прием информации, запуском подпрограммы DOUT_HIGH, при этом необходимо выдержать паузу 75мкс. Пауза формируется подпрограммами DLIT_WR15, DLIT_WR60.
Временной интервал 15 мкс формируется циклом.
Рассчитывается количество тактов микроконтроллера необходимое для формирования длительности 15 мкс по формуле 4.7
Цикл состоит из команд, представленных на рисунке 4.3.
Рисунок 4.3 - Команды цикла
Цикл выполняется за 12 тактов. Рассчитывается количество повторений цикла Кц по формуле 4.8
В счетчикцикла count в подпрограмме DLIT_WR15 необходимо загрузить число 5.
Временной интервал 60 мкс формируется циклом.
Рассчитывается количество тактов микроконтроллера необходимое для формирования длительности 60 мкс по формуле 4.7
Цикл состоит из команд, представленных на рисунке 4.4.
Рисунок 4.4 - Команды цикла
Цикл выполняется за 12 тактов. Рассчитывается количество повторений цикла по формуле 4.8
В счетчик задержки count в подпрограмме DLIT_WR60 необходимо загрузить число 20. После паузы снова происходит проверка состояния датчика.
Таблица 4.3 - Команды датчика температуры
Команда |
Назначение |
|
ССh |
Пропуск ROM |
|
44h |
Инициализация преобразования температуры |
|
BEh |
Чтение данных преобразованной температуры |
Если датчик активен он формирует на линии RA4 уровень логического 0, происходит выход из подпрограммы Test_inic. Команда 44hгрузится в аккумулятор W, после чего запускается подпрограмма передачи команды от микроконтроллера к термодатчику DSEND. Необходимо выдержать паузу 750мкс, пока датчик конвертирует температуру. Далее микроконтроллер посылает команду BEh (чтение данных). Запускается подпрограмма DRECEIVE для чтения данных из термодатчика. На рисунке 4.5 представлены диаграммы временных интервалов чтения записи.
Рисунок 4.5 - Диаграммы временных интервалов чтения - записи
Младший байт считаных данных записываются в ячейку TEMP_LO, старший байт считанных данных записывается в ячейку TEMP_HI. Далее производится преобразование двоичного кода в двоично-десятичный неупакованный код и каждый код записывается в ячейки fig_0,1, fig_1, fig_10 соответственно.
После преобразования в двоично-десятичный код разрешается прерывание от таймера TMR0, загрузкой в регистр INTCON кода 10100000. Это значит, что при переполнении таймера запускается обработчик прерывания, который обеспечивает вывод измеренной температуры на семисегментный индикатор. Далее запускается подпрограмма PROVERKA,в которой выполняется сравнение измеренной температуры воздуха в инкубационной камере с установленным диапазоном. Если температура воздуха в инкубационной камере выше значения верхнего порога, тогда обнуляется 3 разряд PORTA, в связи с этим выключается нагреватель инкубатора. В противном случае подпрограмма переходит к проверке нижнего порога. Если температура воздуха в инкубационной камере ниже нижнего порога, тогда 3 разряд PORTA устанавливаем в 1, включается нагреватель инкубатора.
После проверки пределов программа опрашивает кнопку SB1. Для обеспечения уровня логической 1 на входах микроконтроллера, при не нажатом состоянии кнопок SB1 - SB3,подключаются встроенные подтягивающие резисторы, установкой в ноль седьмого бита регистра OPTION_REG. Если кнопка не нажата, на линии присутствует уровень логической 1, программа вновь начинает выполнять измерение температуры. В противном случае программа начинает настройку нижнего порога. КнопкаSB2 служит для установки цифры одного из разрядов. Кнопка SB3 служит для перехода на следующий разряд числа. Для настройки верхнего порога необходимо второй раз нажать кнопку SB1. Запускается подпрограмма Verx, которая производит настройку верхнего порога. Настройка верхнего порога производится аналогично настройке нижнего порога. После третьего нажатия кнопки SB1 программа начинает поддерживать температуру в установленном диапазоне.
Для защиты от дребезга контактов, после каждого нажатия кнопок, запускается подпрограмма zvon. Дребезг контактов длится не более 10мс.
Временной интервал 10мс формируется циклом. Длительность такта микроконтроллера равна 0,25мкс.
Количество тактов микроконтроллера для формирования длительности 10мс рассчитывается по формуле 4.7
Цикл состоит из команд, представленных на рисунке 4.6
Рисунок 4.6 - Команда внутреннего цикла
Цикл выполняется за 12 тактов. Рассчитывается количество повторений цикла по формуле 4.8
В качестве счетчика используется РОН. Максимальное число, которое можно загрузить в РОН 255, поэтому необходимо использовать вложенный цикл. Выбирается количество повторений цикла 255.
Рассчитывается количество тактов внутреннего цикла Nвнтц выполненного 255 раз
Nвнтц = Nц ЧNпов, (4.9)
где Nц - количество тактов за цикл;
Nпов - количество повторений внутреннего цикла.
Nвнтц = 12 Ч 255 = 3060 тактов.
Вложенный цикл состоит из команд, представленных на рисунке 4.7.
Рисунок 4.7 - Команды вложенного цикла
Вложенный цикл выполняется 3080 тактов.
Рассчитывается количество повторений внешнего цикла Nвнешц по формуле
, (4.10)
где N - количество тактов микроконтроллера;
Kвлц - количество тактов вложенного цикла.
В счетчик внешнего цикла следует загрузить число 13. В счетчик внутреннего цикла следует загрузить число 255.
Подпрограмма DSEND передает команды от микроконтроллера к термодатчику. DSEND преобразует двоичный код в последовательный и обеспечивает передачу последовательного кода через флаг переноса С. Для старта передачи бита линия RA4 настраивается подпрограммой DOUT_LOW на передачу данных и устанавливается в 0. Для передачи логического 0 линию RA4 необходимо удерживать в нуле 60 мкс, что обеспечивается подпрограммой DLIT_WR60. Для передачи логической 1 линия RA4 настраивается на прием данных и устанавливается в 1 подпрограммой DOUT_HIGH.
Подпрограмма DRECEIVE считывает данные передаваемые термодатчиком. Для старта чтения бита линия RA4 настраивается подпрограммой DOUT_LOW на передачу данных и устанавливается в 0 не менее 1мкс. После этого линия RA4 настраивается на прием данных от термодатчика подпрограммой DOUT_HIGH. Выборка бита производится через 15мкс, для этого запускается подпрограмма DLIT_WR15. Если на линии присутствует логический 0, то обнуляется флаг С в регистре STATUS. В противном случает флаг С регистра STATUS устанавливается в 1. С помощью циклического сдвига содержимое флага С записывается в регистр COM_REG.
Исходный код программы управления представлен в Приложении А.
5. Описание работы устройства
При включении напряжения питания выполняется подпрограмма инициализации микроконтроллера Portinic. Линии RA0 - RA3 и RB0 - RB4 настраиваются на вывод, линии RA4, RB5 -RB7 настраиваются на ввод. К линии микроконтроллера RA4 подключен термодатчикDS18B20. Взаимодействие микроконтроллера с датчиком температуры осуществляется по интерфейсу 1 - wire, который реализуется программно.
Термодатчик, после получения команды 44hот микроконтроллера, начинает конвертировать температуру воздуха в инкубационной камере инкубатора. Микроконтроллер ожидает не менее 750мкс пока датчик конвертирует температуру. После получения команды BEh от микроконтроллера, термодатчик выдает данные о температуре последовательным кодом. Микроконтроллер принимает последовательный код и подпрограмма DRECEIVE преобразует его в параллельный двоичный код. После получения данных о температуре воздуха микроконтроллер сравнивает их с установленным диапазоном температур, если полученные данные меньше установленного диапазона, то на линии микроконтроллера RA3 устанавливается уровень логической единицы. Через обмотку срабатывания реле, контакты реле 5 и 10 замываются и обеспечивают подключение напряжения 220В к нагревательному шнуру. Шнур начинает нагреваться. В противном случае шнур не нагревается.
Подобные документы
Разработка структурной, функциональной и принципиальной схемы контроллера, управляющего работой инкубатора. Аналогово-цифровой преобразователь, потребляемая мощность и быстродействие системы. Алгоритмическое и программное обеспечение, листинг программы.
курсовая работа [900,8 K], добавлен 28.12.2012Основные структуры, характеристики и методы контроля интегральных микросхем АЦП. Разработка структурной схемы аналого-цифрового преобразователя. Описание схемы электрической принципиальной. Расчет надежности, быстродействия и потребляемой мощности.
курсовая работа [261,8 K], добавлен 09.02.2012Радиопередающие устройства, их назначение и принцип действия. Разработка структурной схемы радиопередатчика, определение его элементной базы. Электрический расчет и определение потребляемой мощности радиопередатчика. Охрана труда при работе с устройством.
курсовая работа [1,8 M], добавлен 11.01.2013Обзор аналогов изделия. Описание структурной схемы. Описание схемы электрической принципиальной. Разработка и расчет узлов схемы электрической принципиальной. Обоснование выбора элементов схемы. Расчет печатной платы. Тепловой расчет.
дипломная работа [622,7 K], добавлен 14.06.2006Анализ существующих методов и устройств для измерения высоты и дальности. Разработка структурной схемы микропроцессорного блока отображения информации и электрической принципиальной схемы блока измерительного преобразователя. Описание функций выводов.
курсовая работа [3,5 M], добавлен 13.03.2012Разработка структурной схемы электронного устройства. Синтез и расчет транзисторного усилителя. Синтез преобразователей уровня, схемы арифметических преобразователей. Схема компаратора, разработка цифровой схемы. Расчет тока нагрузки блока питания.
реферат [1,4 M], добавлен 06.11.2013Техническое обоснование структурной схемы и разработка универсального источника бесперебойного питания с цифровым управлением. Электрический расчет силовых элементов и структурной схемы Line-interractive устройства. Расчет себестоимости блока питания.
дипломная работа [883,1 K], добавлен 09.07.2013Расчет усилителя мощности с представлением структурной схемы промежуточных каскадов на операционных усилителях. Расчет мощности, потребляемой оконечным каскадом. Параметры комплементарных транзисторов. Выбор операционного усилителя для схемы бустера.
курсовая работа [1,6 M], добавлен 05.02.2013Описание работы блока управления привода Fm-Stepdrive по схеме электрической структурной, необходимость её модернизации. Расчет временных соотношений командного цикла и надежности модернизированной схемы блока управления, выбор её элементной базы.
курсовая работа [573,5 K], добавлен 13.03.2014Выбор схемы выходного каскада. Расчет напряжений питания, потребляемой мощности, КПД, мощности на коллекторах оконечных транзисторов. Выбор оконечных транзисторов, расчет площади теплоотводов. Выбор и расчет выпрямителя, блока питания и схемы фильтра.
курсовая работа [997,7 K], добавлен 28.01.2016