Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

АМ-212_Ткаченко_№3

.pdf
Скачиваний:
0
Добавлен:
23.08.2024
Размер:
910.26 Кб
Скачать

Міністерство освіти і науки України Національний університет «Одеська політехніка» Інститут комп’ютерних систем

Кафедра комп'ютерних інтелектуальних систем та мереж

Лабораторна робота №3 з дисципліни

«Системи реального часу» Варіант 10

Виконав студент Ткаченко Т.С. Групи АМ-212.

Перевірили викладачі Шапоріна О.Л. Нагорна А.А.

Одеса 2024

2

ЗМІСТ

1 ХІД РОБОТИ ................................................................................................................

5

1.1

Створення обертового двигуна на мові FBD ...................................................

5

1.2

Перевірка роботи обертового двигуна..............................................................

6

1.3

Створення програми для світлодіоду на мові FBD .......................................

10

1.4

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

10

1.5

Створення схеми для генерації часової діаграми на мові FBD....................

11

1.6

Перевірка роботи схеми часової діаграми......................................................

13

1.7

Створення схеми для індикації значень потенціометра на мові FBD .........

16

1.8

Перевірка роботи схеми для індикації значень потенціометра....................

17

ВИСНОВОК...................................................................................................................

20

3

Тема: «Ознайомлення з апаратним комплексом ILC 130 Starterkit».

Мета роботи: ознайомитись з апаратним комплексом лабораторії

EduNet PhoenixContact™. Придбання практичних навичок написання програм для ПЛК на основі мови FBD (мова функціональних блоків) згідно стандарту

IEC 61131-3. Отримання практичних навичок роботи з PC WORX. Навчитись конфігурувати пристрої та діагностувати помилки. Навчитись створювати та використовувати компоненти програмної організації. Навчитись працювати з периферійними пристроями. Закріплення отриманих навичок у формі виконання індивідуальних завдань.

Завдання роботи:

1.Знайомство з особливостями апаратного комплексу ILC 130 Starterkit та його підключенням. Знайомство з промисловою технологією - шиною Interbus.

2.Знайомство с індикаційної панеллю. Особливості підключення та програмування.

3.Виконання індивідуального завдання: Побудова програм з урахуванням часових вимог. Побудова часових діаграм роботи програми.

Індивідуальне завдання:

1.Побудувати програму мовою FBD згідно з умовами:

1)Час обертання двигуна потрібно контролювати. Обертання вліво повинно припинятися через 5 с, а обертання вправо - через 10 с.

2)Напрямок обертання змінюється автоматично після закінчення зазначеного часу;

3)Двигун обертається вліво при високому рівні на виході Q0;

4)Двигун обертається вправо при високому рівні на виході Q1;

5)Двигун починає обертання вправо при високому рівні на вході I1;

6)Двигун починає обертання вліво при високому рівні на вході I0.

2.Реалізувати програму на FBD, яка встановлює високий рівень на виходах

Q0 і Q1, через час 5 і 3 секунди після включення входів I0 і I1 відповідно. А також

4

опитувати входи I2 і I3 і якщо хоча б один вхід встановлений, то із затримкою 4 секунди запалити світлодіод підключений до виходу Q2.

3.Побудувати часову діаграму: Вхідні дані на роботу наведені у таблиці 1. Очікуваний результат — графічне відображення роботи часової діаграми, програмна реалізація за допомогою мови програмування FBD.

4.Використовуючи аналоговий модуль, задіяти вихідну індикацію. Використовувати значення потенціометру 1,3,5,7,9. Алгоритм індикації виходів (Q1,Q2,Q3,Q4) наведений у таблиці 2. Виходи, що повинні відображатися, в таблиці показані «1».

Таблиця №1 — Вхідні дані до часової діаграми

 

 

 

 

Критичний час, сек.

 

 

 

 

 

 

 

 

 

 

 

 

t1

t2

t3

t4

t5

t6

 

 

 

 

 

 

 

 

 

 

1

5

10

13

20

22

 

 

 

 

 

 

 

 

Стан

С1

1

0

0

0

1

1

вихідних

 

 

 

 

 

 

 

С2

0

0

1

1

0

0

сигналів

 

 

 

 

 

 

 

С3

1

0

1

0

0

0

 

 

 

 

 

 

 

 

 

С4

0

1

1

0

0

0

 

 

 

 

 

 

 

 

 

С5

1

1

0

1

0

0

 

 

 

 

 

 

 

 

 

С6

1

0

1

0

1

0

 

 

 

 

 

 

 

 

Таблиця №2 — Значення потенціометра та вихідна індикація

 

 

Значення потенціометра

 

 

 

 

 

 

 

 

1

3

5

7

9

 

 

 

 

 

 

Індикація

 

 

 

 

 

виходів

1000

0010

1001

0111

1010

(Q1,Q2,Q3,Q4)

5

1 ХІД РОБОТИ

1.1 Створення обертового двигуна на мові FBD

Згідно першого завдання, необхідно створити двигун, що автоматично змінює напрямок обертання. Для задавання напрямку обертання, необхідно створити вхідні зміні IN0 та IN1. IN0 відповідає за лівий напрямок обертання, а IN1 — правий.

Також, потрібно створити змінні, що будуть ідентифікувати поточний напрямок обертання двигуна — Q0 (обертання вліво) та Q1 (обертання вправо). Для перевірки закінчення обертання двигуна в певну сторону, треба створити відповідні зміні, а

саме: time_left_end (закінчення обертання вліво) і time_right_end (закінчення обертання вправо). Змінні time_left і time_right відповідають за затримку, тобто за час, який буде використано для обертання двигуна в певну сторону. Для повної зупинки двигуна використовується змінна stop.

Щоб запобігти обертання двигуна одразу в обидві сторони, потрібно додати на схему два елементи AND. На перший вхід елемента, подається сигнал керуючої змінної IN0, а на другий — інверсне значення Q1. Для другого елемента AND,

навпаки, подається IN1 та інверсне значення Q0 у відповідні входи.

Для того, щоб забезпечити переключення напрямку обертання, необхідно додати на схему: два елемента OR, які перевіряють спосіб перемикання (від сигналу керуючої змінної IN0/IN1 або від закінчення часу обертання time_right_end/time_left_end), та додати на схему два RS-тригери, які будуть встановлювати одиницю на вихід Q0/Q1 при початку обертання двигуна, а потім після закінчення — скидати його в нуль.

Щоб реалізувати скидання тригерів, потрібно доєднати до входів RESET1

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

6

Вихід RS-тригера Q потрібно з’єднати з елементом TON, який реалізує затримку сигналу відповідно значенню змінних time_left (time#5s) і time_right (time#10s). Повністю зібрана схема обертового двигуна показана на рисунку 1.1.

Рисунок 1.1 — Схема обертового двигуна на мові FBD

1.2 Перевірка роботи обертового двигуна

Для тестування схеми на можливі помилки, потрібно використати засіб Make.

Потім, потрібно завантажити проект у Project Control Dialog та запустити схему у режимі Cold. Для подачі сигналів на схему потрібно увімкнути Debug, як показано на рисунку 1.2.

Рисунок 1.2 — Схема двигуна у режимі Debug

7

Як видно з рисунку 1.2, коли схема обертання «активована», обертання двигуна не відбувається. Для того, щоб запустити обертання двигуна вліво, треба подати сигнал логічної одиниці на вхід IN0, як показано на рисунку 1.3.

Рисунок 1.3 — Двигун обертається вліво Після проходження певного часу, двигун автоматично змінює напрям

обертання, що продемонстровано на рисунку 1.4.

Рисунок 1.4 — Двигун автоматично змінює напрямок обертання на право

8

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

Рисунок 1.5 — Зупинка обертового двигуна Для того, щоб запустити обертання двигуна вправо, треба подати сигнал

логічної одиниці на вхід IN1, як показано на рисунку 1.6.

Рисунок 1.6 — Двигун обертається вправо Після проходження певного часу, двигун автоматично змінює напрям

обертання, що продемонстровано на рисунку 1.7.

9

Рисунок 1.7 — Двигун автоматично змінює напрямок обертання на ліво Якщо подати обидва сигнали логічної одиниці на входи IN0 та IN1, то двигун

не зупиниться та продовжить роботу, як показано на рисунку 1.8.

Рисунок 1.8 — Робота схеми після подачі логічних одиниць на входи IN0 та IN1

10

1.3 Створення програми для світлодіоду на мові FBD

Згідно другого завдання, треба реалізувати схему, яка встановлює високий рівень на виходах Q0 і Q1, через час 5 і 3 секунди після включення входів I0 і I1.

Для цього потрібно використати блок TON, який створює затримку, яка подається на вхід PT. Для того, щоб реалізувати перевірку рівня входу I2 та I3, треба встановити блок OR та з’єднати його з блоком TON, як показано на рисунку 1.9.

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

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

Кроки для запуску схеми вже наведені у пункті 1.2. Результат роботи схеми продемонстровано на рисунку 1.10.

Соседние файлы в предмете Системы реального времени