О. В. Байдакова
Московська державна академія приладобудування іінформатики
Москва, 2001
Текстзавдання. Розробити автоматизовану систему відбраковування резисторів навиробництві. Виготовлені резистори необхідно розсортувати по допусках іпомістити в окремі контейнери. Управління операціями по сортуваннюздійснюється роботом, який бере черговий резистор і поміщає його в затиск,він же після вимірювання опору виймає його і кладе у відповіднийконтейнер. Вимірювання опору проводитися на основі вимірювання напругина резисторі при проходженні через нього відомого струму, тобтоRізм. = Uізм./Iеталон. Управління роботом і вимірами здійснюється МПС. Їїфункції наступні:
Видачакоманди роботові на установку резистора;
Перевірка,чи встановлений резистор;
Проведеннявимірювання опору резистора;
Командароботові зняти резистор і помістити його в заданий контейнер.
Необхіднопередбачити включення режиму "еталонний резистор" - тобто Вимірювання тазанесення в пам'ять номінального значення при зміні партії резисторів. Потрібновибрати значення "еталон" для даного номіналу резистора, щоб вихіднанапруга вимірника відповідало діапазону вхідних напруг АЦП.Необхідно в пам'яті підрахувати число резисторів, що потрапили в кожний контейнер.Передбачити запалювання світлодіода "поза допуску" при вимірі опорурезистора, яке не входить в самий широкий заданий допуск.
Вихіднідані для проектування:
Кількістьполів допуску: 2
Діапазонноміналів резисторів: 1 ... 100Ом
Полядопуску: 5 і 10%
Видмікропроцесорної системи: К1816ВЕ48
Введення
Вданій курсовій роботі описується відбраковування резисторів на виробництві.Резистори сортуються по допусках і розкладаються у відповідніконтейнери. Якщо опір не входить ні в один діапазон допуску, вінпоміщається в окремий контейнер і включає сигнал, що попався шлюб. Системапобудована на мікропроцесорі К1816ВЕ48.
Вимірюванняопору проводитися за допомогою вимірювання падіння напруги надосліджуваному резисторі при пропусканні через нього фіксованого струму.
Працюєсистема таким чином:
Вдеякий момент часу процесор подає роботу команду встановити резистор іпочинає чекати. Робот, коли встановить резистор в измеряющее пристрій, сигналізуєпро це процесору. Процесор виходить з режиму очікування і видає командупочати перетворення і знову починає чекати. АЦП, завершивши перетворенняпадіння напруги на вимірюваному резистори в цифровий код, подає сигналпроцесору. Процесор зчитує з АЦП цифровий код і приступає до порівняння йогоіз записаним в пам'ять еталонним опором. У результаті обчисленьпроцесор визначає до якої групи по відхиленню від номіналу відноситьсявимірюваний резистор і видає відповідну команду роботові-помістити резисторв один з п'яти контейнерів з відхиленнями
Даліцикл повторюється спочатку.
Попередній розподіл пам'яті
Попереднєрозподіл пам'яті в системі показано на рис. 2.1. Т. к. програма, управляючасистемою швидше за все буде порівняно невеликою, то вона вся поміститися підвнутрішньому ПЗУ процесора (пам'яті комп'ютера), тому на малюнку зображенатільки ця пам'ять; зовнішні ПЗУ не потрібні і тому розподіл для них непоказано.
Системабуде обробляти порівняно невеликий обсяг даних, тому показання насхемою розподілу пам'яті даних область "ОЗУ даних" швидше за все залишитьсянезадіяною.
3FFh
YYYh
XXXh
000h
Вільно
3Fh
20h
1Fh
18h
17h
08h
07h
00h
ОЗУ даних
Банк регістрів RB1
Підпрограма
8-рівневий стек
Програма, що управляє роботою системи
Банк регістрів RB0
Пам'ятькоманд Пам'ять даних
3.АЛГОРИТМ функціонування мікропроцесорної системи.
Укрупненаструктурна схема алгоритму програми, що управляє процесором, зображена нарис. 3.1.
Привключенні системи спочатку вона примусово переходить в режим занесенняеталонного опору. Процесор зчитує з АЦП значення опору, записуєйого в пам'ять і обнуляє всі лічильники, в яких ведеться облік резисторів зпевним допуском.
Даліслід установка та вимірювання опору чергового резистора. Лічене зАЦП значення опору піддається обробці процесором і обчислюєтьсявідсоток відхилення опору резистора від еталонного. В залежності відзначення цього відхилення процесором видається команда роботові на розміщеннярезистора в певному контейнері і збільшення на одиницю відповідноголічильника резисторів.
Даліаналізується стан перемикача "ЕТАЛОН". Якщо він замкнутий, то зновупроводиться заміна в пам'яті еталонного опору і обнуління лічильників.Якщо цей перемикач розімкнений, то система починає обробку наступногорезистора.
4.РОЗПОДІЛ РЕСУРСІВ
Врегістрі R0 банку 0 знаходиться поточне еталонне опір. Рештарегістри банку 0 використовуються у міру потреби для зберігання проміжнихрезультатів і тимчасового збереження вмісту акумулятора.
Врегістрі R0 банку 1 знаходиться лічильник кількості резисторів з опоромпоза допуску.
Врегістрі R2 банку 1 знаходиться лічильник кількості резисторів з відхиленням небільше 10% від еталону.
Врегістрі R2 банку 1 знаходиться лічильник кількості резисторів з відхиленням небільше 10% від еталону.
Врегістрі R2 банку 1 знаходиться лічильник кількості резисторів з відхиленням небільше 10% від еталону.
Врегістрі R2 банку 1 знаходиться лічильник кількості резисторів з відхиленням небільше 10% від еталону.
Врегістрі R2 банку 1 знаходиться лічильник кількості резисторів з відхиленням небільше 10% від еталону.
Черезвисновок Р10 процесору повідомляється режим роботи:
сортуваннярезисторів по допусках;
змінаеталонного опору.
Черезвисновок Р20 роботу видається команда "встановити резистор". Активний стан -1.
Черезвисновок Р21 роботу видається команда покласти резистор в контейнер "ПОЗА ДОПУСКУ".Активний стан - 1.
Черезвисновок Р22 здійснюється запуск АЦП. Активний стан - 0.
Черезвисновки Р25, Р26, р27, Р28 і Р29 роботу видається команда покласти резистор вконтейнер з допуском відповідно. Активний стан - 1.
Нависновок Т0 від робота надходить 1, якщо резистор встановлений.
Нависновок Т1 від АЦП надходить 1, коли дані готові до зчитування.
Програмав пам'яті починається з адреси 000h.
ПРОГРАМАРОБОТИ СИСТЕМИ.
Адреса
Код
Кількість циклів
Мітка
Мнемоніка
Коментар
000
002
003
004
008
00А
00С
00D
00F
010
011
12
013
015
017