Портал освітньо-інформаційних послуг «Студентська консультація»

  
Телефон +3 8(066) 185-39-18
Телефон +3 8(093) 202-63-01
 (093) 202-63-01
 studscon@gmail.com
 facebook.com/studcons

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

 

  ga('create', 'UA-53007750-1', 'auto');

  ga('send', 'pageview');

 

</script>

Система керування складом готової продукції

Тип роботи: 
Курсова робота
К-сть сторінок: 
24
Мова: 
Українська
Оцінка: 

Він оснащений двома входами і двома виходами: Q-прямий вихід; і  - інверсний.

У середовищі ElectronicsWorkbenchреалізуємо асинхронний RS-тригер на основі логічних елементів 2АБО-НІ.
Рис. 2. 1 – Асинхронний RS-тригер на логічних елементах 2АБО-НІ
Розглянемо принцип роботи даного тригеру.
В нульовий момент часу, коли на жоден вхід (R і S) не подали логічну одиницю, прямий вихід Q = 0, інверсний, відповідно,  = 1. Якщо на вхід S подати напругу, рівень якої відповідатиме одиниці, то вихід Q стрибкоподібно змінить своє значення на 1, а  на 0. В даному випадку відбудеться запис інформації. Якщо прибрати одиницю з «Set», тоді виходи не змінять свій стан, залишаться такими, якими були – прояв властивості пам'яті. При подачі позитивного сигналу на вхід скидання, тобто R = 1, інверсний вихід різко стане дорівнювати 1, а прямий Q – 0. У роботі
RS-тригера є недолік: існує заборонена комбінація. Не можна одночасно подавати поодинокі сигнали на обидва входи, нормальна робота тригера в цьому випадку неможлива.
Рис. 2. 2 – Робота тригера при R = 0, S = 1
Рис. 2. 3 – Робота тригера при R = 1, S = 0
Згідно вище описаному принципу роботи тригера побудуємо таблицю істинності.
Таблиця 2. 1 – Таблиця істинності тригера
RSQ (t) Q (t+1) Опис
0000Зберігання інформації
0011
0101Установка “1”
0111
1000Установка “0”
1010
110*Заборонена комбінація
111*
* – неможливий стан
Реалізуємо RS-тригер у середовищі Active-HDL та складемо його структурний опис.
Оскільки у вбудованій бібліотеці VHDL немає елемента RS-тригер, його треба створити. Для початку створимо та пропишемо лістинг логічних елементів: АБО-НІ та НІ.
Лістинг елемента АБО-НІ:
library IEEE;
use IEEE. STD_LOGIC_1164. all;
entity abo_ni is
port (
x1: in STD_LOGIC;
x2: in STD_LOGIC;
y: out STD_LOGIC
) ;
end abo_ni;
architecture abo_ni of abo_ni is
begin
y <= not (x1 or x2) after 2 ns;
end abo_ni;
Лістинг елемента НІ:
library IEEE;
use IEEE. STD_LOGIC_1164. all;
entity ni is
port (
x: in STD_LOGIC;
y: out STD_LOGIC
) ;
end ni;
architecture ni of ni is
begin
y <= not x after 2 ns;
end ni;
Зберігаємо дані файли та компілюємо.
Далі створюємо новий файл Blockdiagram, на якому позначаємо входи та вихід майбутнього RS-тригера.
Створені щойно елементи з’явились в даному робочому просторі, які можна побачити на панелі інструментів ShowSymbolsToolbox (S).
Блок-діаграма RS-тригера має вигляд:
Рис. 2. 4 – RS-тригер, спроектований у програмі VHDL
Таблиця 2.2 – Таблиця функціонування тригера
RSQN
00N
010
1-1
Символ N означає незмінне (попереднє) значення сигналу, через “-” позначено будь-яке із значень сигналу (0, 1).
Згідно таблиці функціонування тригера складемо його алгоритмічний опис. Для цього використаємо оператор process.
library IEEE;
use IEEE. STD_LOGIC_1164. all;
entity RS_trigger2 is
port (
R: in STD_LOGIC;
S: in STD_LOGIC;
Q: out STD_LOGIC
) ;
end RS_trigger2;
architecture RS_trigger2 of RS_trigger2 is
begin
process (R, S)
begin
if R='0'
then if S='0'
then Q <= S;
end if;
if S='1'
then Q <= '0';
end if;
end if;
if R='1'
then Q <= '1';
end if;
end process;
end RS_trigger2;
Побудуємо часову діаграму роботи тригера, реалізованого при структурному описі. Пункт меню Simulation →Initializesimulation →Newwaveform. Перетаскуємо на робочу область ініціалізований файл, згідно якого побудується часова діаграма.
Задаємо частоту вхідних сигналів R та S. На діаграмі NET66 та NET90 – елементи АБО-НІ та НІ, які були створені в ході програми.
Натискаємо кнопку RunFor (F5) для побудови часової діаграми.
Рис. 2. 5 – Часова діаграма роботи тригера
Зафарбовані сірим кольором переходи на виході Q означають невизначені стани (згідно таблиці функціонування тригера).
Побудуємо часову діаграму роботи тригера, реалізованого при алгоритмічному описі.
Рис. 2.6 – Часова діаграма роботи тригера
 
Висновки до розділу
В даному розділі була проведена розробка перетворювача логічного синтезу, а саме RS-тригера. Виконаний структурний та алгоритмічний опис пристрою, побудовані його часові діаграми, які відповідають заданій таблиці функціонування. Також виконана реалізація даного елементу в середовищі ElectronicsWorkbench, описаний принцип роботи схеми.
 
3. РОЗРОБКА БЛОК-СХЕМИ ТА ДІАГРАМИ СТАНІВ РОБОТИ ПРИСТРОЮ
 
Реалізуємо роботу системи керування складом готової продукції за допомогою діаграми станів. Діаграма станів будується в програмі Active-HDL.
Оскільки створюється нова діаграма станів, для неї необхідно створити свій власний файл бібліотеки, в який включити інформації щодо входів, виходів та станів даної системи.
Створюємо звичайний файл vhdl-source під назвою my_type, в який вписуємо наступний лістинг:
package my_type is
type type1 is (x1, x2, x3) ; -- vhodu
type type2 is (y1, y2, y3) ; -- vіhodu
end my_type;
Зберігаємо файл (Ctrl+S) та компілюємо його (F11). Після компіляції біля імені повинна з’явитися зелена галочка – це означає, що компіляція пройшла успішно й помилки не виявлені.
Рис. 3. 1 – Успішна компіляція
Далі створений щойно файл треба підключити до загальних бібліотек. На створеному файлі діаграми станів угорі можна спостерігати надпис, на якому натиснути правою кнопкою миші та в контекстному меню обрати Властивості.
Рис. 3.2 – Контекстне меню файлу діаграми станів
У вкладці DesignUnitHeaderвідкритого вікна CodeGenerationSettingsокрім існуючих бібліотек прописуємо нещодавно створену.
Рис. 3. 3 – Додання власної бібліотеки
Тепер програма остаточно готова до роботи.
Задаємо входи х, Reset, синхровхід clkта вихід y.
Рис. 3. 4 – Входи та вихід діаграми
Для побудови діаграми станів потрібно застосувати стани (зелені кола) та переходи між ними (стрілки). У властивостях кожної стрілки (її контекстне меню) задається умова переходу з одного стану в інший.
Рис. 3. 5 – Задання умови переходу
Рис. 3. 6 – Задання умови переходу
У полі Conditionзадаємо умову переходу (при якому значенні вхідного сигналу здійсниться перехід), а в полі Action вписуємо дію, яка виконається при виконанні заданої умови (значення перейде до певного виходу).
Аналогічно задаємо умови переходу для всієї діаграми станів.
Готова діаграма має вигляд:
Рис. 3. 7 – Діаграма станів системи керування складом готової продукції
Далі у властивостях входів та виходів необхідно задати кожному відповідний тип, який раніше було прописано в бібліотеці.
Рис. 3. 8 – Задання типу входів та виходів
 
Висновки до розділу
В даному розділі була реалізована робота системи керування складом готової продукції за допомогою діаграми станів. Діаграма побудована на основі таблиці станів кінцевого автомату Мілі, складеної в першому розділі.
 
4. ТЕСТУВАННЯ РОБОТИ ПРИСТРОЮ ТА АНАЛІЗ ЧАСОВИХ ДІАГРАМ
 
Побудуємо часову діаграму роботи тригера, реалізованого при структурному описі. Пункт меню Simulation →Initializesimulation →Newwaveform. Перетаскуємо на робочу область ініціалізований файл, згідно якого побудується часова діаграма.
Задаємо частоту вхідних сигналів R та S. На діаграмі NET66 та NET90 – елементи АБО-НІ та НІ, які були створені в ході програми.
Натискаємо кнопку RunFor (F5) для побудови часової діаграми.
Рис. 4. 1 – Часова діаграма роботи тригера
Зафарбовані сірим кольором переходи на виході Q означають невизначені стани (згідно таблиці функціонування тригера).
Побудуємо часову діаграму роботи тригера, реалізованого при алгоритмічному описі.
Рис. 4. 2 – Часова діаграма роботи тригера
 
Висновки
 
В ході виконання курсової роботи було спроектовано та написано програму для функціональної системи, що керує складом готової продукції.
Було виконано такі єтапи:
  • ознайомлення з мовою VHDL, її перевагам та недолікам, а також огляду та опису функціонування системи керування складом готової продукції.
  • виконаний аналіз, опис та побудова асинхронного RS-тригера, що відповідає роботі даної системи. RS-тригер побудований на логічних елементах.
  • розробка та реалізація діаграми станів кінцевого автомату, що відповідає функціонуванню системи керування складом.
 
Список використаних джерел
  1. Алексенко А. Г., Шагурин П. И. Микросхемотехника: Учеб. пособие для вузов. – М. : Радио и связь, 1990, – 496 с.
  2. Бабич М. П., Жуков І. А. Комп'ютерна схемотехніка. Навч. посібник. – К. : НАУ, 2002. – 508 с.
  3. Горошков Б. И. Радиоэлектронные устройства: Справочник / Б. И. Горошков. – М. : Радио и связь, 1984. – 400 с.
  4. Генератор импульсов прямоугольной формы [Електронний ресурс] – Режим доступу: http://edu.dvgups.ru/METDOC/GDTRAN/YAT/TELECOMM/METR_SERT/METOD/LAB_2/fr...
  5. Бибило П. Н. Основы языка VHDL. – Мінськ: Ин-т техн. кибернетики НАН Беларуси, 1999. – 202 с. – ISBN 985-6453-30-5.
Фото Капча