Пристрій термоконтролю на базі мікроконтролера ATMEGA16 - Коммуникации, связь, цифровые приборы и радиоэлектроника курсовая работа
Главная
Коммуникации, связь, цифровые приборы и радиоэлектроника
Пристрій термоконтролю на базі мікроконтролера ATMEGA16
Розробка пристрою термоконтролю на базі мікроконтролера ATMEGA16, який через аналогово-цифрове перетворення визначає значення температури з заданим коефіцієнтом перерахунку. Мікроконтролер, його призначення у приладі. Параметри елементів системи живлення.
посмотреть текст работы
скачать работу можно здесь
полная информация о работе
весь список подобных работ
Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
1. Мікроконтролер та його призначення у приладі
Метою курсової роботи є розробка пристрою термоконтролю на базі мікроконтролера ATMEGA16, який би через аналогово-цифровеперетворення визначав значення температури. Курсова робота призначена для закріплення теоретичних та практичних навичок у програмуванні та налаштуванні мікроконтролерів.
Температура є фізичною величиною, яка характеризується внутрішньою енергією кіл і не підлягає безпосередньому методу вимірювання. Тому всі методи вимірювання температури основані на перетворенні її в іншу фізичну величину, яку можна виміряти безпосередньо.
В сучасному житті вимірювання температури займає важливу роль. В наукових дослідах та на виробництві, при дослідженні матеріалів і зразків вимірювання температури є найпоширенішим. Широкий діапазон вимірювальних температур і вимог до точності їх виміру спонукають до розробки нових пристроїв вимірювання. Одним з видів приладів для виміру температури являються цифрові термометри.
Цифрові термометри активно використовуються в повсякденному житті. Дешеві побутові термометри встановлюються в різних місцях для контролю температури на вулиці та усередині житлових будинків. Дорогі професійні термометри використовуються на виробництві для дотримання певних температур, адже мають кращу точність вимірювань.
Курсова робота має на меті поглиблення знань і розвиток практичних навичок з втілення алгоритмів роботи та розробки електронних пристроїв на основі мікроконтролера AVR-архітектури. Прилад, що буде розроблено в даній курсовій роботі також можна віднести до класу цифрових термометрів, а саме прилад який знімає значення наруги з аналого-цифрового перетворювача та перераховує її у еквівалентну їй температуру. Крім того, прилад буде відображати температуру процесу на індикаторі та порівнювати її з номінальною.
Основою приладу буде AVR мікроконтролер, ATMEGA16, згіднозавдання. Також до складу приладу увійдуть діоди, які будуть відображати рівні температури, семи сегментний індикатор на три знакомісцядля відображення поточного значення температури який буде працювати у режимі динамічної індикації.
1. Мікроконтролер та його призначення у приладі
Мікроконтролер (МК) - мікросхема, призначена для управління електронними пристроями. Типовий мікроконтролер поєднує у собі функції процесора і периферійних пристроїв, містить оперативний запам'ятовуючий пристрій (ОЗУ) та постійний запам'ятовуючий пристрій (ПЗП). По суті, це одно кристальний комп'ютер, призначений для виконання простих завдань. Використання однієї мікросхеми, замість набору різних елементів, як в звичайних процесорах персональних комп'ютерів, значно зменшує розміри, енергоспоживання та вартість пристроїв, побудованих на базі мікроконтроллерів. Мікроконтролери є основою для побудови вбудованих систем, їх можна зустріти в таких приладах як: телефон, мікрохвильова піч і тому подібне. Мікроконтролери широко застосовуються у сучасному машино будівництві.
При проектуванні мікроконтролерів доводиться дотримувати рівновагу між розмірами і вартістю з одного боку та гнучкістю і продуктивністю з іншого. Для різних застосувань знаходяться різні оптимальні співвідношення цих параметрів. Тому існує широкий вибір мікроконтролерів які відрізняються між собою: архітектурою процесора, розміром і типом вбудованої пам'яті, набором периферійних пристрої і типом корпусу.
В наш час 8-розрядні процесори були витіснені продуктивнішими моделями більшої розрядності, в той же час 8-розрядні мікроконтролерипрдовжують використовуватися в різних сферах людської діяльності. Це пояснюється ти, що існують задачі в яких не потрібна висока продуктивність, але вони потребують низької вартості.
Обмеження за ціною і енерговитратами стримують збільшення тактової частоти контролерів. Хоча з'являються моделі для роботи на високих частотах, виробники надають вибір, випускаючи модифікації, які розраховані на різні частоти і напругу живлення. У багатьох мікроконтролерах використовується статична пам'ять для ОЗУ і внутрішніх регістрів. Це дає контролеру можливість працювати на менших частотах і не втрачати дані навіть при повній зупинці тактового генератора. Виробники додають різні режими енергоспоживання, які дозволяють відключати частину периферійних пристроїв і обчислювальний модуль.
Окрім ОЗУ, мікроконтролер має постійну пам'ять яка призначена для зберігання програмного забезпечення та даних. У більшості мікроконтролерів відсутня шина для підключення зовнішньої пам'яті. Дешеві типи пам'яті призначені лише для однократного запису, така пам'ять потрібна тільки якщо ми впевнені, що програма контролера не буде змінюватися. Інші типи контролерів володіють можливістю багаторазового перезапису енергонезалежної пам'яті. Зазвичай в контролерах застосовується гарвардська архітектура пам'яті, тобто роздільне зберігання команд і даних в ОЗУ і ПЗП.
Зазвичай мікроконтролер включає в себе:
Інтерфейси вводу-виводу (UART, I2C, SPI, CAN, USB)
Програмування мікроконтроллерів в основному здійснюється на мові асемблера або С, хоча існують компілятори і для інших мов. Також використовуються вбудовані інтерпретатори Basic. Також використовується спеціальне програмне забезпечення для створення і налагодження програм, такі як MCSStudio, AVRStudio, AlgorithmBuilder та інші.
Мікроконтролер, що використовується у даній курсовій роботі повинен виконувати такі завдання:
Перерахунок значення напруги у температуру;
Відображення значень температури на індикаторі;
Порівняння отриманого значення температури з номінальним;
Для реалізації цих завдань необхідно програмно описати зовнішні переривання (обнулення від таймера для виводу наступного знаку). Для забезпечення індикації необхідно описати роботу портів, та створити підпрограму виведення значень на індикатор.
Реалізувати це можна за допомогою мікроконтролера ATMEGA16.
Загальні характеристики даного мікроконтролера:
8-розрядний високопродуктивний AVR мікроконтролер з малим споживанням
130 високопродуктивних команд, більшість команд виконується за один тактовий цикл
328 - розрядних робочих регістра загального призначення
Продуктивність наближається до 16 MIPS ( при тактовій частоті 16 МГц)
Вбудований 2 - циклової перемножувач
16 КбайтВнутрішньосистемної програмованої Flash пам'яті (In - SystemSelf - ProgrammableFlash)
Забезпечує 1000 циклів стирання / запису
Додатковий сектор завантажувальних кодів з незалежними бітами блокування
Внутрішньосистемне програмування вбудованої програмою завантаження
Забезпечено режим одночасного читання/запису (Read- While - Write)
Забезпечує 100000 циклів стирання / запису
Програмоване блокування, що забезпечує захист програмних засобів користувача
Інтерфейс JTAG (сумісний з IEEE 1149.1)
Можливість сканування периферії, відповідно стандарту JTAG
Розширена підтримка вбудованого налагодження
Програмування через JTAG інтерфейс: Flash, EEPROM пам'яті, перемичок і бітів блокування
Два 8 - розрядних таймера/лічильника з окремим попередніми дільником , один з режимом порівняння
Один 16 - розрядний таймер/лічильник з окремим попередніми дільником і режимами захоплення і порівняння
Лічильник реального часу з окремим генератором
8 -канальний 10 - розрядний аналого- цифровий перетворювач
7 диференціальних каналів ( тільки в корпусі TQFP )
2 диференціальних канали з програмованим посиленням в 1, 10 або 200 раз (тільки в корпусі TQFP)
Байт -орієнтований 2-дротовий послідовний інтерфейс
Послідовний інтерфейс SPI ( ведучий / ведений )
Програмований сторожовий таймер з окремим вбудованим генератором
Спеціальні мікроконтролерні функції
Скидання по подачі живлення і програмований детектор короткочасного зниження напруги живлення
Вбудований калібрований RC -генератор
Внутрішні і зовнішні джерела переривань
Шість режимів зниженого споживання: Idle, Power- save, Power- down, Standby, ExtendedStandby і зниження шумів ADC
40 - вивідний корпус PDIP і 44 - вивідний корпус TQFP
Алгоритм роботи нашого приладу досить примітивний. Після налаштування ліній портів, опису знаків, налаштування АЦП, таймерів та дозволу переривань головна програма зациклюється на команді переходу з міткою. Далі код з регістра ADCH пересилається у робочий регістр. Наступним кроком зчитується відповідне значення температури, після цього визначається модуль прийнятого числа, а саме: сотні, десятки, одиниці. Потім ці числа замінюються відповідними образами та засилаються у порт який зв'язаний з індикатором. Крім того, аналізується відхилення температури від заданого значення і видається відповідний код на світло діоди.
Метою даного проекту є розробка пристрою термоконтролю з індикацією. Для цього нам необхідно зняти значення температури та вивести це значення на індикатор.
Мікроконтролер типу ATMEGA16 використовується для вимірювання температури процесу Т0 у певному об'єкті (у нашому випадку потенціометр) та порівняння її з номінальною Т0ном.. Сигнал про температуру надходить до пристрою контролю у вигляді певної напруги U. Характеристика датчика описується виразами:
Відповідно до варіанту вибираються параметри:
Порогові значення температури (10% від ):
Мікроконтролер працює з внутрішнім тактовим генератором частотою 1МГц. Задача полягає у створенні програми для мікроконтролера, яка забезпечує періодичне вимірювання напруги, перераховує її значення у температуру, підготовлює дані для виводу на індикатор та керує ним. Крім того, він порівнює отримане значення температури з номінальним . Якщо температура менше норми на 10%, то світиться жовтий діод, при нормальній - зелений, при перевищенні значення на 10% - червоний. Датчик напруги (U) та світло діоди підключені до порту А (таблиця 1):
U-PA2; жовтий(Ж) - РА3; червоний(Ч) - РА0; зелений(З) - РА6;
Такожсегменти світлодіодів у цифрових індикаторах розміщуються згідно варіанту (таблиця 2):
В залежності від розташування цих сегментів буде відповідне розташування образів символів в ОЗП (таблиця 3):
Отже кожному кроку квантування буде відповідати 0.92 градуси. Для реалізації алгоритму скористаємося множенням з плаваючою комою:
Переведемо значення нашого коефіцієнта в двійкову систему числення:
Зсунемо дане значення на 8 розрядів вліво:
Переведемо отримане значення назад у десяткову систему числення:
Програма розроблялася для мікроконтролера ATMEGA16 у середовищі програмування AlgorithmBuilder. Ця мова дозволяє наочно побачити логіку програми, за допомогою службових вікон спостерігати зміни у різних прапорцях статусу, значення на портах та інші параметри. Це середовище дозволяє не тільки розробляти програму, а й перевірити її роботу. Лістинг програми для нашого курсового проекту приведено нижче:
Reset - налаштування векторів переривань;
$...->ddr(A,B,C,D) - налаштування портів;
$...->[300] - збереження образів символів в ОЗП;
ADC_Complete - вектор переривання від ADC;
ADCH->data - зчитування даних з ADC;
porig - підпрограма порівняння значення температури з пороговими;
mod - підпрограма перерахунку значення температури;
vuvid - підпрограма виводу значень на індикатор;
Згідно завдання до курсової роботи необхідно передбачити проведення виміру температури через заданий інтервал часу згідно варіанту.
Для цього використовують таймер та регістр порівняння, що дозволяє таймеру не працювати весь час згідно частоти дільника до переповнення розрядної сітки, а обнулятися при досягненні відповідного значення яке занесене у регістр порівняння.
Timer_2_Compare_Match - переривання від таймера 2;
Porig - підпрограма,яка виконує порівняння отриманого значення з номінальною температурою. Якщо T менше ніж 94, то світиться жовтий діод, якщо більше 115 - червоний, якщо ж температура у нормі світиться зелений діод.
$...->porta - підсвічування відповідних діодів;
ret - повернення до основної програми;
Mod - це підпрограма, яка виконує цілочисельне ділення для аналізу результату та визначення кількості сотень, десятків та одиниць у числі. Спочатку обнуляються значення сотень, десятків та одиниць. Далі у програмі задається цикл: якщо число більше за сотню то від нього віднімається одна сотня, а значення яке відповідає за рахунок сотень збільшується на один. Аналогічна дія проводиться з десятками та одиницями.
Vuvid -це підпрограма, яка забезпечує вивід символів на індикатор. Спочатку гасяться усі індикатори, числу сотень присвоюється відповідний знак, далі знак засилається у порт та засвічується перше знакомісце далі процедура повторюється для десятків і одиниць.
data=(100;10) - умова для встановлення кількості сотень і десятків;
0->portc - гасіння усіх сегментів індикатора;
300->х - встановлення базової адреси;
x+sot(des;odn) - вибір символу з пам'яті;
[x] ->portc - засилання символу в порт С;
6->portd - вибір певного знакомісця на індикаторі;
pauza - виконання підпрограми pauza;
255->lich - засилання числа в робочий регістр для створення паузи певної тривалості
lich=1 - перевірка умови для завершення підпрограми
lich-- - зменшення числа в робочому регістрі;
ret - повернення до виконання основної програми;
Pauza - це підпрограма необхідна для реалізації динамічної індикації. Справа в тому, що знакомісця індикатора засвічуються не одразу, а по черзі. Ця дія відбувається надто швидко для людського ока, щоб людина не помітила мерехтіння індикатора, але і з достатньою паузою, щоб людина побачила висвітлений символ. Для створення паузи ми засилаємо число у відповідний робочий регістр і займаємо мікроконтролер процедурою віднімання.
Згідно завдання було виготовлено проектований пристрій:
Жовтий світлодіод горить, якщо температура приймає значення які менше за 940 градуси.
Робота приладу коли температура приймає значення нижче дозволеного
Червоний світлодіод горить, якщо температура перевищує 1150 градусів.
Робота приладу коли температура перевищує допустиме значення
Зелений світлодіод горить, якщо температура знаходиться в межах 940-1150 градусів
Робота приладу коли температура приймає вище порогове значення
Згідно поставленої задачі та заданого варіанту було розроблено схему даного приладу на основі мікроконтролера ATMEGA16. Для даної схеми були розраховані параметри елементів системи живлення та параметри обмежуючих резисторів для індикатора та світлодіодів.
Параметри елементів системи живлення:
Згідно документації конденсатори для системи живлення повинні лежати у межах (12-22)пФ;
Оберемо кварцовий резонатор з частотою 8 МГц;
Дросель згідно документації повинен мати індуктивність 10мкГн;
Параметри обмежуючих резисторів для світло діодів та індикатора:
Опір обмежуючих резисторів будемо розраховувати за законом Ома, як різницю напруг живлення і напруги на індикаторі поділеної на робочий струм:
Оберемо резистор більший за значенням 330 Ом;
Опір резисторів для світлодіодів знайдемо аналогічно:
Оберемо резистор більший за значенням 510 Ом;
Метою курсової роботи було розробити та реалізувати найпростіший термометр на основі мікроконтролера ATMEGA16, який би через значення напруги визначав температуру з заданим коефіцієнтом перерахунку. Дана задача була виконана. Був розроблений прилад який це виконує, роботу даного приладу можна оглянути у попередніх розділах даної роботи. Під час виконання даного курсового проекту були закріплені теоретичні і практичні навички у розробці та реалізації приладів основаних на базі AVR - мікроконтролерів, покращені навички програмування мікроконтролерів даного типу у візуальному середовищі програмування МК AlgorithmBuilder.
Можна констатувати, що елементної бази яка існує на даному етапі розвитку комп'ютерної електроніки цілком достатньо для створення приладів даного класу. Для цього достатньо мати мікроконтролер та знання з налаштування його роботи. При виконанні даного курсового проекту була використана схема на основі мікроконтролера ATMEGA16, яка дозволила використати мінімальну кількість елементів для реалізації термометра. Адже у даного мікроконтролера присутній власний АЦП та АЛП, що дозволило перерахувати значення температури за допомогою мікроконтролера. Використовуючи візуальне середовище програмування AlgorithmBuilder була створена програма для керування мікроконтролером. Дана програма була перевірена на робочому приладі.
пристрій термоконтроль мікроконтролер
Панчук О. О. та Іщенко І. А. Архітектура та програмування мікроконтролерів. Методичні рекомендації для самостійної роботи з вивчення дисципліни та з виконання курсової роботи. - Житомир: ЖВІ НАУ, 2010. - 44 с.
Панчук О. О., Смолянець Ю. О., Хливнюк М.Г. та ін. Цифрові пристрої та мікропроцесори: Підручник. - Житомир: ЖВІРЕ, 2006. - 444 с.
Панчук О. О., Смолянець Ю. О. Цифрові пристрої та мікропроцесори. Ч. 2. Основи побудови та програмування мікропроцесорних пристроїв: Навчальний посібник. - Житомир: ЖВІРЕ, 2006. - 268 с.
Розробка термометра на базі мікроконтролера Atmega 8535. Визначення температури через аналогово-цифрове перетворення. Принципова схема пристрою. Варіанти з'єднання ліній портів з сегментами індикатора. Алгоритм роботи мікроконтролера у пристрої. курсовая работа [1,8 M], добавлен 11.08.2012
Найдоцільніший тип мікропроцесорного пристрою для керування обладнанням - однокристальний мікроконтролер (ОМК). Розробка принципової схеми пристрою контролю температури процесу. Складання програми мікроконтролера та її симуляція в Algorithm Builder. реферат [2,1 M], добавлен 11.08.2012
Функціональна схема мікроконтролера ATMega8. Розробка робота на базі мікроконтролера ATMega8 з можливістю керування електродвигунами за допомогою програми. Функціональна і принципова схеми пристрою з вибором додаткових елементів, алгоритм його роботи. курсовая работа [1,3 M], добавлен 08.10.2012
Розробка цифрового дозиметра з трьома режимами вимірювання з виводом значення вимірювання на дисплей. Аналіз мікроконтролера для керування його роботи, функціональна схема на базі мікроконтролера та програмного забезпечення для роботи дозиметра. курсовая работа [2,4 M], добавлен 18.06.2010
Докладний опис складових електричної схеми. Характеристика мікроконтролера PIC16F877. Рідкокристалічний індикатор МТ12864А. Призначення виводів рідкокристалічного індикатора. Цифро-аналоговий перетворювач MCP 4921. Алгоритм роботи цифрового генератора. курсовая работа [1,5 M], добавлен 20.09.2011
Розробка автономного недорогого універсального охоронного пристрою, виконаного на сучасній елементній базі, призначеного для цілодобової охорони об'єктів різного призначення. Принцип роботи охоронної сигналізації. Вибір мікроконтролера, елементної бази. дипломная работа [356,8 K], добавлен 24.08.2014
Визначення основних технічних характеристик та режимів роботи мікроконтролера для подальшого застосування у пристроях управління. Системи переривань та режими роботи. Будова мікроконтролера, модулі синхронізації. Вбудовані низькочастотні генератори. курсовая работа [1,2 M], добавлен 10.12.2013
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д. PPT, PPTX и PDF-файлы представлены только в архивах. Рекомендуем скачать работу .
© 2000 — 2021
Пристрій термоконтролю на базі мікроконтролера ATMEGA16 курсовая работа. Коммуникации, связь, цифровые приборы и радиоэлектроника.
Контрольная работа: Леонардо да Винчи
Отчет по практике по теме Технология производства хлебобулочных изделий
Дипломная Работа На Тему Особенности Логопедической Работы По Развитию Фонематического Восприятия У Детей Старшего Дошкольного Возраста С Аккустико-Фонематической Дислалией
Дипломні Роботи Электромонтеров Для Профтехучилищ
Лабораторная Работа Номер 3 Биология
Курсовая работа: Контрактная система найма
Отчет по практике по теме Технологическая линия для производства керамического гранита
Сочинение На Тему Санкт Петербург На Английском
Сочинение На Тему Занятия Моей Семьи
Курсовая работа по теме Понятия и системы трудового права
Курсовая Работа На Тему Естествознание Как Средство Эстетического Воспитания В Младших Классах
Реферат На Тему Средневековье
Эссе Наука Примеры
Курсовая работа по теме Автоматизация процесса обезвоживания карналлита в хлораторе
Философские Школы Древней Греции Реферат
Контрольная работа по теме Исследование конкурентоспособности товара (на примере ОАО ТФК 'КамАЗ')
Реферат: Ритуальное совокупление. Скачать бесплатно и без регистрации
Реферат: История болезни - терапия (острая левосторонняя нижнедолевая пневмония)
Фас России Точка Роста Эссе Награждение
Физические основы электрографии. Электрокардиография
Ревизия операций по формированию финансовых результатов деятельности организации - Бухгалтерский учет и аудит курсовая работа
Біологія представників ряду Blattoptera та заходи боротьби з ними - Биология и естествознание дипломная работа
Управление по сельским населенным пунктам и регулированию потребительского рынка - Государство и право отчет по практике