Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
черновик.doc
Скачиваний:
3
Добавлен:
14.09.2019
Размер:
1.16 Mб
Скачать

ВСТУП

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

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

Середньо температурні терморегулятори призначені для автоматичного виміру і підтримки стабільної температури, наприклад, в термостатах, інкубаторах,теплицях і тому подібне

Регулятори температури, або, як їх ще називають,терморегулятори, призначені для підтримки заданої температури рідини(наприклад, фото розчину, води в акваріумі, води в системі електричного водяного опалювання), повітря в теплиці, в житлі і ін. Принцип роботи будь-якого терморегулятора полягає в плавній або стрибкоподібній зміні потужності нагрівального елементу відповідно до температури датчика.

Існують терморегулятори із стрибкоподібною зміною потужності, при навантаженні яких нагрівальний елемент відключається, як тільки температура датчика досягає певного значення, і вимикається при пониженні температури до її заданого значення. Нагрівальний елемент при цьому знаходиться в одному з двох станів :включений або вимкнений, тому регулятор з таким законом управління часто називають релейним.

У цьому дипломному проекті реалізована мікропроцесорна система на базі мікроконтролера для терморегулятора акваріума. Пристрій побудований на мікроконтролері PIC16F873.

Нині більше тридцяти зарубіжних фірм випускають мікроконтролери масового застосування з розрядністю 8 біт, недорогі і придатні для використання в найрізноманітніших застосуваннях. Проте а саме мікроконтролери серії РІС фірми Microchip® TechnologyInc. переживають останні три-чотири роки в Україні воістину вибухове зростання популярності. Ці мікроконтролери також украй популярні у всьому світі,як у виробників електронної техніки, так і серед радіоаматорів.

У чому ж причина такої популярності? Звичайно, не останню роль зіграли правильна маркетингова політика,потужна і продумана підтримка розробників з боку фірми і низька вартість мікросхем. Окрім цього, сам продукт має ціле рядом незаперечних переваг.

Мікроконтролери РІС фірми Microchip® об'єднали в собі усі передові технології, вживані у виробництві мікроконтроллерів : розвинену RISC- архітектуру,мінімальне енергоспоживання при високій швидкодії,ППЗП, програмоване користувачем, функціональну закінченість.

Чітка і продумана внутрішня структура контролерів і невелика, але потужна система команд з інтуїтивно зрозумілою мнемонікою значно полегшують процес вивчення контролерів РІС і написання для них програм.

1 Опис об'єкту і функціональна специфікація

1.1 Опис автомату для акваріума

Пристрій відрізняється від відомих вимірників температури на DS1820 можливістю одночасного регулювання температури в двох точках з точністю ±0,5° інтервалі температур від - 10 до 85 °З, малим часом реагування 11,4 мс в порівнянні з 1мс у прототипів. Пристрій призначено для роботи з нагрівачами і може бути використано, наприклад, для регулювання температури в інкубаторі(вивідний і інкубаційний),акваріумах (видовий і нерестовий), в овочесховищах в зимовий час або просто як вимірника температури у будинку і на вулиці.

Микроконтролерний термометричний датчик DS1820 розрахований на вимір температури від - 55 до 125 °З,але на межах межі точність виміру погіршується

до 2 °С.Управління нагрівачами виконується за принципом цифрового компаратора.

На однорядному ЖК-дисплеї індикатора можна одночасно спостерігати поточну температуру в двох точках, температуру в різних точках і її встановлене значення. Прийом даних, їх обробка і видача на індикатор виконуються мікроконтролером PIC16F873

1.2 Функціональна специфікація

Має 2 входи для микроконтролерних термометричних датчиків, а також кнопку для запуску(включення живлення, режиму, установка,розряд).

На пристрою є входи для рідкокристалічного індикатора, оптопари для управління навантаженням (тенами, нагрівачами),та вхід для запису програми в пам'ять.

Вимоги до пристрою акваріума:

- включення навантаження (тени);

- індикація температури на рідкокристалічному індикаторі;

- індикація програмованих даних (температури).

1.3  Опис структурної схеми регулятора температури для акваріума

Після визначення входів і виходів пристрою розробленаструктурна схема пристрою

Структурна схема регулятора температури для акваріума показана на рисуноку 1.

1

1

М

І

К

Р

О

К

О

Н

Т

Р

О

Л

Е

р

Датчики

2

2

Рідкокристалічний індикатор

Пульт керування

Стабілізатор

Мережа

Рисунок 1-Структурна схема регулятора температури для акваріума

Для того щоб мікроконтролер працював йому необхідно подати напругу не менше 5В і не більше 15В. Для цього в схемі використано стабілізатор напруги ,який понижує напругу до необхідної для мікроконтролера. Сам мікроконтролер виконує роль,відслідження температури датчиків за рахунок зміни опору на них. Після цього він обробляє інформацію і видає на екран. В залежності від необхідних температур пультом керування задаємо необхідна температура. Після цього мікроконтролер починає контролювати необхідну температуру, при цьому включається і вимикається напруга на тені.

2 Опис роботи пристрою регулятора температури акваріума

2.1 Опис вибіра елементів бази рабати принципіальної схеми

Схема терморегулятора показана на рис.2 . Резистором R8 встановлюють необхідну контрастність зображення індикатора. Всі блоки пристрою включені за стандартною схемою. Робота з терморегулятором зводиться до установки температури регулювання для обох датчиків. При включенні пристрою на дисплеї з'явиться значення температури першого і другого датчика з вказівкою стрілкою (>) номера датчика мал. 8. Натисненням кнопки Режим на дисплеї послідовно з'являтимуться зображення, лівих цифр показують поточну температуру відповідних датчиків, а праві цифри — встановлені значення температур. При включенні режимів роботи, мікроконтролер переходить в режим установки. У цьому режимі під встановлюваним розрядом з'являється миготливий курсор (на рисунках під знаком плюс). Кнопкою Розряд переміщають курсор по розрядах, а кнопкою Установка встановлюють необхідне значення температури.

При установці немає обмеження по максимуму і мінімуму, тому необхідно бути уважним. Можна встановити знак мінус і не діждатися включення нагрівача, і навпаки, встановити температуру регулювання більш +125° і не діждатися виключення нагрівача. Під час установки порівняння температур не припиняється, тому нагрівачі в цей час бажано відключити. Оскільки встановлені значення запам'ятовуються в незалежній пам'яті, то нагрівачі можна підключити при вимкненому напругі. При індикації і установці температур для 100 в розряді десятків буде індикація двокрапки (:), для 110 крапка з комою (;), для 120 зворотна стрілка (<)

2.2 Опис ресурсів мк pic16f873

У дипломному проекті був вибраній одно кристальний 8 -розрядний Flash CMOS мікроконтролер Pic16f873.Pic16f873 - це 8 pозpядний мікpоконтpолеpи з RISC архітектурою, вироблювані фірмою Microchip technology .Це сімейство мікpоконтpолеpів відрізняється низькою ціною, низьким енергоспоживанням і високою швидкістю. Мікроконтролери мають вмонтоване ЕППЗП пpогpамму ОЗУ даних і випускаються в 18 і 28 відвідних корпусах. Микpоконтpоллеpы сімейства PIC мають дуже ефективну систему команд, що складається всього з 35инстpукций.Усі інстpукції виконуються за один цикл, за винятком умовних переходів і команд, що змінюють програмний лічильник, який виконуються за 2 цикли. Один цикл виконання інструкції складається з 4 пеpиодов тактової частоти. Таким обpазом, пpи частоті 4МГц, вpемя виконання інстpукцій складає 1 мксек. Кожна інструкція складається з 14 біт, що діляться на код операції і опеpанд(можлива маніпуляція з pегістpами, елементами пам'яті і безпосередніми даними.

Висока скоpость виконання команд в PIC досягається за рахунок використання двох шинної Гаpваpдской аpхитектуpы замість традиційно одношинною Фон-Hеймановской. Гаpваpдская аpхитектуpа ґрунтується нанабоpе pегістpів зpоздільнними шинами і адpесним пpостpанством для команд і для даних. Hабоp pегістpов означає, що усі пpогpаммні об' єкти, такі як поpти введення/виведення,елементу пам'яті і таймеp, пpедставляют собою фізично реалізовані апаратні регістри.

Використання Гаpваpдскій архітектури дозволяє досягти високою скорості виконання бітових, байкових і регістрових операцій. Крім того, Гаpвардська архітектура допускає конвейеpное виконання інструкцій, коли одночасно виконується поточна інструкція і прочитується наступна.

У традиційній же Фон Hейманівській архітектури команди і дані передається через одну роздільну або мультиплексійну шину, тим самим обмеженими можливості конвейєpизації, внутpеній фізичні і логічні компоненти, з яких складається PIC16FXX аналогічні будь-кому другому мікpоконтpолеpу Гаpваpдска архітектура і велика розрядність команди дозволяють зробити код для PIC значно компактнішим, ніж для других мікpоконтpолеpів і істотно підвищити скорості виконання пpогpамм.

PIC16F873 мають вбудовані пристрої, властиві більшості прикладних систем, що дозволяє понизити вартість,споживану потужність і збільшити надійність кінцевого пристрою. Наприклад, вбудована схема скидання і запуску генератора дозволяють позбавитися від зовнішніх RC схем. Пропонується чотири типи вбудованих генераторів на вибір, включаючи економічний LP(LowPower) і дешевий RC генератори.

Економічний режим SLEEP, Watchdog таймер і облаштування захисту коду програми знижують вартість і збільшують потужність плюс надійність вашої системи.

Мікросхеми з ультрафіолетовим стиранням ідеальні для процесу відробітку програми. Одночасно існують одноразово програмовані(OTP) кристали. Тут розробник може витягнути повну перевагу з поєднання низької ціни і гнучкості OTP версій.

Розробка на базі контролерів PIC16C5X підтримується асемблером, програмним симулятором емулятором(тільки фірми Microchip) і програматором. Існують усі ці засоби для IBM, внутрішньо схемним PC і сумісних комп'ютерів.

Серія PIC16F873 підходить для широкого спектру додатків від схем високошвидкісного управління автомобільними і електричними двигунами до економічних видалених приймачів, показуючи приладів і зв'язних процесорів. Наявність ПЗП дозволяє підлаштовувати параметри в застосовних програмах(коди передавача швидкості двигуна, частоти приймача і так далі). Малі розміри корпусів, як для звичайного, так і для поверхневого монтажу, робить цю серію мікроконтролерів придатною для портативних застосувань. Низька ціна, економічність, швидкодія,простота використання і гнучкість введення/виведення робить серію PIC16F873 привабливою навіть в тих областях, де раніше не застосовувалися мікроконтролери. Наприклад, таймери, заміна жорсткої логіки у великих системах, співпроцесори.

Облаштування серії PIC16F873 мають великий вибір ПЗПІ ОЗУ різних розмірів, різну кількість ліній введення/виведення, різні види збудження генераторів, різну швидкість, климатику і типи корпусів. З чотирьох кристалівPIC16F873 можна вибрати пристрій з відповідними ПЗП/ОЗУ і конфігурацією введення/виведення.

Пристрої з ультрафіолетовим стиранням зручно використати в прототип них і досвідчених партіях. Конфігурація генератора("RC", " XT", " HS", " LP")програмується самим користувачем на UF EPROM. При UF стиранні або за умовчанням встановлюється тип "RC". Залежно від вибраного типу генератора і частоти,робоча напруга живлення має бути в тому ж діапазоні, що буде і в майбутньому пристрої на OTP кристалі (якщо OTP передбачається використати).

2.3 Ядро мікроконтролера

Ядро відноситься до основних особливостей, воно примушує мікроконтролер працювати. До складу цієї групи входить:

2.3.1 Тактовий генератор

Для формування тактового сигналу мікроконтролера передбачений внутрішній генератор(приклад підключення кварцового/керамічного резонатора у режимі тактового генератора зображено на рисунку 2.1). Тактовий сигнал потрібний для виконання інструкцій мікроконтролера і роботи периферійних модулів. Внутрішній машинний цикл мікроконтролера складається з чотирьох періодів тактового сигналу.

Рисунок 2.1 – Підключення кварцового/керамічного резонатора у режимі тактового генератора

Тактовий генератор мікроконтролера може працювати в одному з восьми режимів. Існує два режими внутрішнього RC генератора, що відрізняються між собою режимом роботи виведення мікроконтролера (виведення мікроконтролера працює як CLKOUT або як універсальний порт введення/виводу). Режим роботи тактового генератора визначається бітами в слові конфігурації, розташованими в незалежній пам' яті. Настроїти біти конфігурації можна тільки при програмуванні мікроконтролера. Можливі режими тактового генератора :

  • LP - низькочастотний кварцевий резонатор (знижене енергоспоживання);

  • хт - стандартний кварцевий/керамічний резонатор:

  • HS - високочастотний кварцевий резонатор;

  • RC - зовнішній резистор/конденсатор (ідентичний EXTRC з CLKOUT);

  • EXTRC - зовнішній резистор/конденсатор;

  • EXTRC - зовнішній резистор/конденсатор з CLKOUT;

  • INTRC - внутрішній резистор/конденсатор (4МГц);

  • INTRC - внутрішній резистор/конденсатор (4МГц) з CLKOUT;

Різні режими тактового генератора дозволяють використовувати один тип мікроконтролерів в застосуваннях з різними вимогами до генератора RC режим генератора знижує вартість прибудую, a LP режим генератора має менше енергоспоживання За допомогою бітів конфігурації встановлюється необхідний режим тактового генератора Додаткову інформацію про біти конфігурації дивитеся в розділі 'Біти конфігурації мікроконтролерів".

Середнє сімейство мікроконтролерів PlCmicro може мати до восьми режимів тактового генератора- для вибору режиму тактового генератора користувач повинний запрограмувати до трьох бітів конфігурації (FOSC2, FOSC1 і FОSСО):

  • LP - низькочастотний кварцевий резонатор (знижене енергоспоживання);

  • XT - стандартний кварцевий/керамічний резонатор;

  • HS - високочастотний кварцевий резонатор;

  • RC - зовнішній резистор/конденсатор (ідентичний EXTRC з CLKOUT);

  • EXTRC - зовнішній резистор/конденсатор;

  • EXTRC - зовнішній резистор/конденсатор з CLKOUT;

  • INTRC - внутрішній резистор/конденсатор (4МГц);

  • INTRC - внутрішній резистор/конденсатор (4МГц) з CLKOUT.

Основною відмінністю між режимами LP. XT і HS являється значення коефіцієнта посилення інвертора внутрішньої схеми генератора.

Режими тактового генератора RC і EXTRC з CLKOUT мають однакові функціональні особливості , але мають різні назви, щоб полегшити опис інших режимів генератора.

Найкращий метод вибору зовнішніх компонентів можна сформулювати так. на основі нескладних правив створити схему, провести випробування і тестування прибудую.

Кварцевий резонатор необхідно вибирати з паралельним резонансом, але у вашому проекті можуть потрібно і інші параметри резонаторів (наприклад, температурний дрейф або стабільність частоти) В документації AN588 можна знайти додаткову інформацію по вибору кварцевого резонатора.

Внутрішній тактовий генератор PICmicro виконаний за схемою паралельного генератора, що вимагає використання кварцевих резонаторів з паралельним резонансом. Типове значення місткості конденсаторів навантажень від 20пФ до 32пФ Частота тактового сигналу, при вказаній місткості конденсаторів навантажень, буде найбільш близькою до потрібної. Іноді може виникнути необхідність змінити частоту генерації в невеликих межах для досягнення інших цілей.

Режим роботи тактового генератор вибирається відповідно до технічної документації на мікроконтролер бітами FOSC. Вибір режиму тактового генератора (окрім RC) полягає у виборі коефіцієнта посилення інвертора генератора (малий коефіцієнт посилення - низька частота, великий коефіцієнт посилення -высокая частота тактового генератора) Допускається вибирати високий коефіцієнт посилення внутрішнього інвертора для реалізації певних вимог до схеми тактового генератора.

Спочатку ємність конденсаторів С1 і С2 вибирається відповідно до вимог виробника кварцевого резонатора і представленими в технічній документації на мікроконтролер таблицями. Значення місткості конденсаторів, вказане в технічній документації на мікроконтролер, може використовуватися тільки як відправна точка, оскільки технологія виготовлення резонатора, напруга живлення і інші вже згадані чинники можуть змінити параметри роботи резонатора у вашій схемі, в порівнянні із заявленими виробником.

У ідеалі значення ємність конденсаторів повинне вибиратися з урахуванням максимально можливої робочої температури і мінімально можливої напруги живлення Vdd (у межах, рекомендованих виготівником резонатора). Висока температура і низька напруга живлення мають дію на коефіцієнт посилення інвертора, тому якщо пристрій стійко працює в цьому режимі, то проектувальник може бути упевненіший в нормальній роботі прибудую при інших комбінаціях робочої температури і напруги живлення. Синусоїдальний сигнал не повинний обмежуватися при найвищому коефіцієнті посилення (найвище Vdd і саме низька температура) і амплітуда сигналу на виводі має бути досить великою при мінімальному коефіцієнті посилення інвертора (найнижче Vdd і найвища температура), щоб задовольняти вимогам логічного входу тактового сигналу мікроконтролера.

Послідовний резистор Rs необхідно використовувати, якщо підбір зовнішніх компонентів не давши задовільної роботи тактового генератора. Резистор може бути підключений до виведення OSC2, до якого підключений осцилограф. Підключення осцилографа до виведення OSC1 може бути причиною зриву генерації, оскільки воно чинитиме істотний вплив на негативний зворотний зв'язок інвертора. Необхідно враховувати ті. що підключення вимірювального устаткування додає власну місткість до схеми. Наприклад, якщо тактовий генератор краще всього працював при місткості 20пФ і був підключений вимірювальний прилад з місткістю входу 10пФ, то необхідно встановлювати конденсатор в ЗОпФ Сигнал з виходу не повинний обмежуватися або навантажуватися вимірювальним ланцюгом Перезбудження резонатора може привести до переходу генерації сигналу на вищій гармоніці або ушкодження резонатора.

На виводі OSC2 має бути присутнім сигнал у вигляді чистої синусоїди, розмах якої легко досягає мінімального і максимального значення сигналу на тактовому вході (добрий тактовий сигнал - рівень сигналу від 4В до 5В при напрузі живлення 5В). Необхідно добитися вказаних параметрів тактового сигналу, а потім перевірити схему при мінімальній температурі і максимальному Vdd. очікуваному в проекті В цьому режимі буде отримана максимальна амплітуда тактового сигналу Якщо відбувається обмеження амплітуди або постійна складова зміщена до Vdd або до Vss. а значення ємності конденсаторів значно перевищило рекомендоване виробником резонатора, необхідно підключити змінний резистор між виведенням мікроконтролера і конденсатором С2. Змінним резистором добитися "чистого" синусоїдального сигналу. При низькій температурі і високій напрузі живлення виходить максимальна амплітуда тактового сигналу, що гарантує запобігання перезбудженню Замість змінного резистора має бути встановлений постійний резистор з найбільш близьким сопротивпением. Якщо опір Rs більш 20кОм, вхід більш ізольований від виходу, що робить схему сприйнятливішою до шуму Якщо Ви вирішили, що великий опір Rs потрібний, то для запобігання перезбудженню спробуйте збільшити ємність С2 Спробуйте отримати комбінацію, в якій опір Rs не більш 10кОм, а значення конденсаторів навантажень не сильно відрізняється від 20пФ до 32пФ ипи специфікації виготівника резонатора.

Внутрішній RC генератор може бути налагоджений для роботи в режимі формування на виведенні CLKOUT тактового сигналу з частотою Fosc/4 (біти FOSC2, FOSC1, FOSC0 в слові конфігурації (адреси 2007h) повинні дорівнювати '101 'для внутрішнього RC генератора і '111' для зовнішнього RC генератора) Вихід тактового сигналу може використовуватися для виміру частоти генератора або синхронізації зовнішньої логіки.

Якщо калібрувальна інформація внутрішнього RC генератора стерта, вхідний тактовий сигнал дозволяє скоректувати частоту генератора Це може бути реалізовано написанням додаткової програми. що змінює значення регістра OSCCAL Колі на виведенні CLKOUT присутній сигнал з частотою 1 Мгц (±1.5%) при Vdd = 5B і температурі 25 С. ті значення в регістрі OSCCAL правильне Це значення має бути передане через пуск введення/виводу для збереження його в калібрувального елементу пам' яті програм.