Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Теоретична частина






ВСТУП

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

Термостат може міняти температуру в приміщенні по заданому користувачем графіку (наприклад, підтримувати більш низьку температуру вдень, коли в будинку нікого немає, і підвищувати температуру ввечері, коли всі повертаються з роботи додому).

У термодинаміці термостатом часто називають систему, що володіє такою великою теплоємністю, що що підводиться до неї тепло не міняє її температуру.

Термостати розрізняються набором функцій, наявністю/відсутністю графічного дисплея та можливістю підключати додаткові датчики.

Термостати можна класифікувати за діапазоном робочих температур:

‒ термостати високих температур (300-1200 °C);

‒ термостати середніх температур (-60-500 °C);

‒ термостати низьких температур (менш -60 °C).

Термостати можна класифікувати за типом теплоносію:

‒ повітря;

‒ рідинна;

 

‒ твердотільні.

Термостати можна класифікувати за точністю підтримки температури:

5-10 градусів і гірше, як правило, досягається без перемішування, за рахунок природної конвекції;

1-2 градуси (хороша теплова стабільність для повітря, дуже посередня для рідинних), як правило, з перемішуванням;

0, 1 градуса (дуже хороша теплова стабільність для повітря, на рівні кращих зразків, середня для рідинних);

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

Можна виділити два основні способи роботи термостатів:

1. У термостаті підтримується постійною температура теплоносія, що заповнює термостат. Досліджуване тіло при цьому знаходиться у контакті з робочою речовиною і має його температуру. Як робочу речовину зазвичай використовують повітря, спирт (від 110 до 60 °C), воду (10 до – 95 °С), масло (-10 до +300 °С) і ін.

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

1 ТЕХНІКО-ЕКОНОМІЧНЕ ОБГРУНТУВАННЯ

 

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

 

Рисунок 1.1 – Структурна схема цифрового термостата

ТЕОРЕТИЧНА ЧАСТИНА

 

2.1 Основні функції та архітектура мікроконтролерів AVR

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

Мікропроцесор – це напівпровідниковий прилад, який складається з однієї або кількох програмно-керуючих великих інтегральних схем і виконує функції автоматичної обробки інформації. Сучасні мікропроцесорні вимірювальні прилади можуть бути подані як засоби вимірювання, що здійснюють двосторонню взаємодію: з оператором і системою збирання інформації, і односторонньою: з об’єктом вимірювання і навколишнім середовищем. Застосування у вимірювальних приладах мікропроцесорів, що мають можливість програмної обробки інформації, вводить у прилад деякий «інтелект» і дозволяє не тільки поліпшити параметри приладу, але й надати йому абсолютно нових якостей.

Мікропроцесорне управління в вимірювальних приладах дозволяє здійснити:

- розширення вимірювальних можливостей. Застосування МП дозволяє істотно розширити можливості переліку параметрів сигналів і характеристик пристроїв. Це пов’язано, перш за все, з використанням, здавалося б, застарілих видів вимірювань: непрямих та сукупних. Через необхідність застосування кількох приладів, зняття деяких характеристик і наступних обчислень непрямі вимірювання сприймаються багатьма експериментаторами як примітивні, несучасні. Корінним чином змінюється положення при включенні до складу приладу мікропроцесорів. За командою, одержаною з клавіатури, автоматично до заданої програми визначаються режими вимірювань, запам’ятовуються результати прямих вимірювань, виконуються необхідні обчислення і видається значення вимірюваної фізичної величини на дисплей.

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

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

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

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

Останнім часом компанії-виробники один за одним представляють новинки, як аналогові, так і цифрові. Це служить підтвердженням того, що споживач давно вже чекав на подібні пристрої і тепер вони користуються популярністю та великим попитом.

До сучасних методів проектування можна віднести наступні види: на базі МК, на базі МП.

Мікроконтролер – мікросхема, призначена для управління електронними пристроями. Типовий МК поєднує в собі функції процесора і периферійних пристроїв, може містити ОЗП і ПЗП. По суті, це однокристальний комп’ютер, здатний виконувати прості завдання. Використання однієї мікросхеми, замість цілого набору, як в разі звичайних процесорів, вживаних в персональних комп’ютерах, значно знижує розміри, енергоспоживання і вартість пристроїв, побудованих на базі МК. МК є основою для побудови вбудовуваних систем, їх можна зустріти в багатьох сучасних приладах, таких, як телефони, пральні машини і тому подібне. Більша частина процесорів, що випускаються в світі – МК.

Мікропроцесор (англ. microprocessor) – інтегральна схема, яка виконує функції ЦП або спеціалізованого процесора. Сьогодні слово мікропроцесор є практично повним синонімом слова процесор, оскільки функціональний блок, що на ранніх стадіях розвитку обчислювальної техніки займали цілу плату чи навіть шафу, тепер вміщається в одну невеличку інтегральну схему із сотнями мільйонів транзисторів всередині. З середини 1980-х мікропроцесори витіснили інші види ЦП. Проте загалом це не так: центральні процесорні пристрої деяких суперкомп’ютерів навіть сьогодні є складними комплексами ВІС і НВІС.

Всі МК AVR спроектовані для роботи в складі дуже продуктивної малопотужної архітектури RISC. Але по якій же причині це нове покоління комп’ютерів стало таким небезпечним конкурентом для вже затвердилися на ринку? Всі мікропроцесори першого покоління володіли жорстко «прошитою» логікою декодування команд.

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

У результаті були розроблені складні й комплексні машинні команди. Виникли команди, які виконувалися послідовно усередині процесорних операцій доти, поки не надходила наступна зовнішня команда. Так з’явилися процесори CISC (Complex Instruction Set Computer - комп’ютер зі складним набором команд). Типовими представниками цієї архітектури процесорів є сімейства 80x86 і процесор Pentium компанії Intel або сімейства 680x0 компанії Motorola. Практично всі процесори CISC працюють за принципом мікропрограмування, тобто, кожна машинна команда послідовно обробляється мікропрограмою, що виконується усередині кристала процесора.

Однак якщо глянути на існуючі програми через призму статистики, то виявиться, що з великого набору команд процесорів CISC (у деяких типів понад 300) використовується тільки невелика, постійно повторювана частина в розмірі близько 20 відсотків.

На додаток до цього, комплексну програму можна найчастіше замінити декількома ефективними командами, які в стані впоратися з поставленим завданням швидше. Згодом виробникам модулів пам’яті вдалося різко скоротити час доступу, у результаті чого в середині 1980-х років відбулося повернення «до джерел», і була розроблена архітектура RISC – виникли комп’ютери зі скороченим набором команд, у яких команди, як і в процесорах перших поколінь, знову декодувались за допомогою «твердого прошивання».

Перелічимо характерні риси архітектури RISC:

- обмежена кількість ефективних команд;

- відсутність класичного нагромаджуючого суматора на користь більшого числа рівноправних робочих регістрів;

- організація діапазонів пам’яті по гарвардській моделі;

- єдиний інтерфейс із запам’ятовувальними пристроями за рахунок виняткового застосування команд виду «Завантаження/Збереження»;

- обробка майже всіх команд протягом єдиного машинного такту;

- оптимізація апаратного забезпечення й набору команд із метою застосування програмування на мовах високого рівня. Спочатку використання архітектури RISC було обмежено потужними комп’ютерами, що виступають у ролі робочих станцій, однак незабаром були відкриті переваги цієї архітектури для однокристальних МК, що доводить сімейство AVR компанії Atmel;

- представники сімейства AVR мають обмежений набір з 118 високоефективних команд;

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

Мікроконтролери AVR побудовані по гарвардській архітектурі (рис. 2.2).

Рисунок 2.1 – Структурна схема AVR-контролерів

 

Вони використовують одноступінчасту конвеєрну обробку. Це означає, що під час виконання команди виконується завантаження наступної команди з пам’яті програм. Завдяки цьому, досягається можливість виконання команди протягом одного тактового циклу.

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

У більшості звичайних процесорів і контролерів такт, згенерований кварцовим осцилятором, ділиться на заздалегідь заданий коефіцієнт для одержання властиво системного такту. Так, наприклад, у контролері 8051, що працює із частотою кварцу 12 Мгц, при внутрішньому коефіцієнті розподілу мінімальний час виконання команд становить усього лише одну секунду, причому «мінімальний час» у цьому випадку має на увазі, що для виконання деякої кількості команд буде потрібно більше часу.

Однак у випадку з МК сімейства AVR такого не відбувається. У них дійсно майже всі команди виконуються протягом одного періоду частоти кварцового генератора, що при максимально припустимій частоті 12 Мгц у випадку мікроконтролера AT90S1200 означає всього лише 83, 33 нc.

Інакше кажучи, досягається швидкодія до 12 MIPS (Million Instructions Per Second), тобто, – 12 мільйонів виконаних команд протягом однієї секунди! І, за деякими виключеннями, МК сімейства AVR дійсно обробляють всі команди протягом єдиного системного такту.

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

2.2 Програмування мікроконтролерів

Для початку потрібно визначити які бувають типи пам’яті і які найчастіше використовується при створені програми:

Пам’ять програм (Flash ROM або Flash ПЗП)

Пам’ять програм призначена для зберігання послідовності команд, які керують функціонуванням мікроконтролера, та має 16-ти бітну організацію. Усі AVR мають Flash-пам’ять програм, яка може бути різного розміру - від 1 до 256 КБайт. Її головна перевага в тому, що вона побудована на принципі електричної перепрограмованості, тобто допускає багатократне стирання та запис інформації. Програма заноситься у Flash-пам’ять AVR як з допомогою звичайного програматора, так і з допомогою SPI-інтерфейсу, в тому числі безпосередньо на зібраній платі. Можливість програмування всередині схеми (функція ISP) через комунікаційний інтерфейс SPI мають усі мікроконтролери AVR, крім Tiny11 та Tiny28.

Усі мікроконтролери сімейства Mega мають можливість самопрограмування, тобто самостійно змінювати вміст своєї пам’яті програм. Ця особливість дозволяє створювати на їх основі дуже гнучкі системи, алгоритм роботи яких буде змінюватись самим мікроконтролером в залежності від будь-яких внутрішніх умов або зовнішніх подій.

Гарантоване число циклів перезапису Flash-пам’яті у мікроконтролерів AVR другого покоління складає не менше 10 тис. циклів при типовому значенні 100 тис. циклів. (В офіційній технічній документації Atmel Corp. Вказує значення 10 тис.циклів.)

Пам’ять даних

Пам’ять даних розділена на три частини: регістрова пам’ять, оперативна пам’ять (ОЗП – оперативний запам’ятовуючий пристрій або RAM) та енергонезалежна пам’ять (EEPROM).

Регістрова пам’ять (РЗП та РВВ)

Регістрова пам’ять включає 32 регістра загального призначення (РЗП або GPR), об’єднаних у файл, та службові регістри вв/вив (РВВ). І ті і інші розміщені в адресному просторі ОЗП, але не являються його частиною.

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

Енергонезалежна пам’ять даних (EEPROM)

Для довгострокового зберігання різної інформації, яка може змінюватись в процесі функціонування мікроконтролерної системи, використовується EEPROM-пам’ять. Усі AVR мають блок енергонезалежної елекрично перезаписуваної пам’яті даних EEPROM від 64 Байт до 4 КБайт. Цей тип пам’яті, доступний програмі мікроконтролера безпосередньо в ході її виконання, зручний для зберігання проміжних даних, різних констант, коефіцієнтів, серійних номерів, ключів і т.д. EEPROM може бути завантажена ззовні як через SPI-інтерфейс, так і з допомогою звичайного програматора. Число циклів стирання/запису - не менше 100 тис.

Оперативна пам’ять (ОЗП або RAM)

Внутрішня оперативна статична пам’ять Static RAM (SRAM) має байтовий формат та використовується для оперативного зберігання даних.

Розмір оперативної пам’яті може відрізнятись у різних чипів від 64 Байт до 4 КБайт. Число циклів читання та запису в RAM необмежено, але при вимиканні живлення уся інформація стирається.

Для деяких мікроконтролерів можлива організація підключення зовнішнього статичного ОЗП об’ємом до 64К.

Після короткого огляду типів пам’яті мікроконтролерів сімейства AVR можна перейти до власне створення програми.

Програмування мікроконтролерів зазвичай здійснюється на асемблері або Сі, хоча існують компілятори для інших мов, використовуються також вбудовані інтерпретатори BASIC та Fortran. Для відлагодження програм використовуються програмні симулятори (спеціальні програми для персональних комп'ютерів, що імітують роботу мікроконтролера), внутрішньосхемні емулятори (електронні пристрої, що імітують мікроконтролер, які можна підключити замість нього до вбудованого пристрою, що розробляється) і інтерфейс JTAG. JTAG (вимовляється «дже́ й-таг»; скорочення від англ. Joint Test Action Group) — спеціалізований апаратний інтерфейс, розроблений для тестування зібраних друкованих плат (з використанням стандарту IEEE 1149.1). Через широку функціональність JTAG почав широко використовуватись для відладки та програмування.

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

Загальний алгоритм створення програми можна звести до простої діаграми, яку наведено на рисунку 2.2.

 

Рисунок 2.2 – Діаграма створення програми

 

Для запуску асемблера з використанням підказок необхідно ввести командний рядок, що містить тільки ім'я асемблера MASM зі специфікацією підзаголовку, якщо вона потрібна. MASM перейде в діалоговий режим і серією підказок запросить у користувача інформацію про наступні файли (відповідь полягає в наборі необхідних символів і натисканні клавіші ENTER):

1) Ім'я вихідного файлу. Якщо при відповіді не зазначене розширення, передбачається ASM.

2) Ім'я об'єктного файлу. Якщо при відповіді не зазначене розширення, передбачається OBJ. Базове ім'я об'єктного файлу за замовчуванням збігається з базовим ім'ям вихідного файлу.

3) Ім'я файлу лістинга. Якщо при відповіді не зазначене розширення, передбачається LST. Базове ім'я файлу лістинга за замовчуванням NUL.

4) Ім'я файлу перехресних посилань. Якщо при відповіді не зазначене розширення, передбачається CRF. Базове ім'я файлу лістинга за замовчуванням NUL.

Наприкінці будь-якої відповіді після символів " /" або - ", " можуть бути задані опції асемблера.

Якщо вякій-небудь відповіді специфіковано символ "; ", MASM вийде з діалогового режиму й встановить імена, що залишилися, за замовчуванням з наступного списку:

< ім'я вихідного файлу>.OBJ

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

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.