
- •5.1. Пристрої управління з «жорсткою» логікою
- •5.1.1. Лінійні процеси
- •5.1.2. Командоапарати без зворотного зв'язку
- •5.1.3. Командоапарати із зворотним зв'язком
- •5.2. Мікропроцесорні керуючі пристрої
- •7.3. Еом в системах управління
- •7.4. Програмне забезпечення систем контролю і управління
- •7.5. Сполучення еом з об'єктом управління
- •Глава 8 гнучкі автоматизовані виробництва і робототехнічні системи
- •8.1. Гнучкі виробничі системи
- •8.1.1. Жорсткі і гнучкі системи
- •8.1.2. Структура гап
- •8.2. Роботи і робототехнічні системи
7.4. Програмне забезпечення систем контролю і управління
Будь-яка ЕОМ, від мікро ЕОМ до великої, здатна лише на те, щоб мільйони разів в секунду виконувати примітивні операції порівняння, складання і зрушення двійкових чисел. Увесь інтелект ЕОМ, усі її можливості, у тому числі по управлінню тех-нологічними процесами, знаходяться в програмному забезпеченні ЕОМ.
Як вказувалося в роз. 2, програма — це алгоритм, записаний на зрозумілому машині мові. У свою чергу, алгоритм — це послідовність дій, що ведуть до досягнення мети. Відповідно, для того, щоб автоматична система вела технологічний процес, необхідно скласти алгоритм цього процеса і записати його на мові, зрозумілій машині.
Будь-який технологічний процес можна підрозділити на етапи, які, у свою чергу, можна розділити на дрібніші кроки, і так далі. Кожен етап, кожен крок мають свою мету, і можна скласти послідовність дій з досягнення цих цілей, з яких і складеться алгоритм усього процесу. Складальник алгоритму повинен чітко знати усі нюанси роботи обладнання, усі умови і обмеження, усі особливості технологічного процесу.
Він повинен описати кожну дію робітника, який виконував би вручну відповідні операції ТП, і врахувати причини, по яких був вибраний той або інший варіант дій і які не завжди очевидні (т. е. врахувати те, що називається досвід і кваліфікацією) — адже машині припаде самою усе враховувати і приймати рішення.
Коли алгоритм складений, треба записати його на мові, зрозумілій машині. Для найперших ЕОМ програми писали на так званих машинних мовах, які були набором двійкових кодів, що відповідали командам роботи арифметико-логічногого пристрою з двійковими числами. Витрати праці і часу на це були величезні, до того ж у кожного типу ЕОМ була своя машинна мова.
Зараз програми складають на мовах високого рівня, близьких до людської мови, що дуже зручно, а машина сама перекладає команди з цих мов на свій (витрачаючи на цей деякий час). Проте для вирішення конкретних завдань управління створюються спеціальні мови низького рівня, ближчі до машинних і тому що забезпечують більше оперативне управління.
Наприклад, для програмування верстатів з ЧПУ використовують команди для виконання кожної операції, що представляють собою поєднання буквених і цифрових символів. Буквами позначають найменування операції, умови її виконання, координату (чи інший параметр), а цифри виражають чисельне значення або умовний код параметра. В якості буквених позначень використовують скорочення або початкові буквенні позначення термінів, тому вони легко запам'ятовуються і розуміються, що спрощує складання програми.
Так, команда установки частоти обертання шпинделя верстата може виглядати таким чином: N35 С95 8800 М4, що оз-начает: N35 — номер (И) команди (35); 095 — завдання (О) частоти обертання шпинделя (код 95); 8800 — чисельне значення (8) частоти обертання (800 про/мін); М — завдання напряму обертання; 4 — код напряму обертання (проти годинної стрілки). Аналогічно крок за кроком програмуються усі операції, що виконуються верстатом. Програма записується на магнітну стрічку або диск, який встановлюється в командоаппарат верстата.
Переклад команд в двійкові коди робиться за допомогою спеціальної програми — асемблера. Асемблер порівнює кожну команду із списком команд, представлених в двійковому коді, і робить заміну набору буквено-цифрових символів на двійковий еквівалент, що со-ответствующий. Розшифровані команди відпрацьовуються мікро ЕОМ верстата, тобто за кожним двійковим кодом формується однозначно відповідний йому конкретний сигнал, що управляє, для конкретного старанного механіз-ма.
Сучасні верстати з ЧПУ містять потужні мікро ЕОМ і оснащені пультами управління з дисплеями, що дозволяють вводити і відлагоджувати програми безпосередньо на верстаті. Велику роль грає зручність спілкування оператора з програмою (наприклад, кількість помилок істотно зменшується, якщо вме-сто використання клавіатури можна просто вибирати потрібні пункти екранного меню).
Мікро ЕОМ, обслуговуючі групу технологічного обору-дования, вирішують ширший круг завдань управління і спавши за т.! з великим об'ємом джерел і приймачів інформації, тому алгоритми управління для них складніші. Програми для них створюють на мовах вищого впустимо, наприклад мові FORTRAN або С. Для скорочення програм широко використовують підпрограми, аналогічно допоміжним алгоритмам. Багатократні звернення до підпрограм можливі як з різних місць однієї і тієї ж робочої програми, так і з різних робочих програм. Коли в основній програмі виникає необхідність звернення до підпрограми, робиться введення даних в цю підпрограму, після чого їй передається управління. Після виконання підпрограми управління повертається ос-новной програмі.
Розглянемо в якості прикладу спрощені дії по програмуванню роботи побутової пральної машини. Нехай стир-ка включає наступні етапи: впускання визначеного кількості води, підігрівши води до заданої температури, обертання барабана впродовж заданого часу зі зміною напряму обертання, злив води, віджимання. Які особливості цього технологічного процесу треба взяти до уваги для його автоматизації?
Почнемо з впускання води. Для управління потоком води можна використовувати електроклапан, управління яким зводиться до подачі на нього сигналу, що управляє, у вигляді електричної напруги на увесь час впускання. Закінчення цього часу можна оп-ределить по сигналу датчика рівня рідини, який може бути дискретним і видати інформацію про досягнення потрібного рівня шляхом замикання контактів електричного ланцюга. Цей сигнал використовується для виключення електроклапана.
Наступний етап — підігрівши води до потрібної температури. Нам треба буде видати дискретний сигнал, що управляє, на нагрівач, включивши його, і стежити за інформацією з датчика температури. Оскільки значення температури прання є фіксованими і задаються заздалегідь, можна використовувати дискретний релейний датчик, який після досягнення заданої температури замкне електричний ланцюг. По цьому сигналу нагрівач следу-ет вимкнути.
Потім треба запустити процес прання. На електродвигун машини видається сигнал, що управляє, включає його на заданий час, наприклад на 10 с. Цей час повинен відлічуватися лічильником, що включається по команді пристрою, що управляє, і сполученим з генератором імпульсів. Після вступу коли-чества імпульсів, відповідного (з урахуванням їх частоти) інтервалу часу 10 з, код на виході лічильника досягає значення, на яке налаштований дешифратор, і той формує сигнал виключення двигуна.
Пристрій, що потім управляє, видає сигнал на реле переключення напряму обертання двигуна і знову включає його на заданий час, повторюючи ці операції в циклі задане ко-личество разів (наприклад, 100).
Злив води аналогічний впусканню, але одночасно з електроклапаном зливу включається насос, що відкачує воду, а для їх ви до включення використовується сигнал датчика нульового рівня води.
Для віджимання знову включається двигун на заданий час (наприклад, на 30 с) і паралельно включається реле, перемикаючий ланцюг управління швидкістю обертання двигуна, оскільки при віджиманні вона істотно вища, ніж в режимі прання.
Таким чином, пристрій, що управляє, повинен сприймати дискретні сигнали двох датчиків рівня води, датчика температури і дешифратора і видавати дискретні сигнали, що управляють, на електроклапани впускання і випуску води, нагрівач, електродвигун, лічильник і реле перемикання напряму обертання і перемикання швидкості двигуна.
Після такого детального аналізу технологічного процесу і необхідних інформаційних сигналів не важливо скласти алгоритм процесу, що управляють, а потім і програму на одній з мов програмування.
Цей приклад дає уявлення про роботу, яку необхідно виконати для автоматизації тільки одного невеликого процеса. Уявіть собі увесь об'єм робіт по автоматизації технологічних процесів на виробництві.
Нині використовують розподілені АСОВІ ТП, в яких програми виконання окремих етапів процесу виконуються програмованими контроллерами і мікро ЕОМ, що оббслуговуються окремі одиниці або групи технологічного устаткування. Координацію роботи цих пристроїв виконує ЕОМ верхнього рівня.
Зазвичай в пам'ять ЕОМ завантажують багато програм, розрахованих як на обслуговування різних ділянок технологічного процесу, так і на рішення паралельних завдань : обчислення, аналіз, представлення інформації операторові та ін. Річ у тому, що центральний процесор ЕОМ працює набагато швидше, ніж устаткування ТП. Поки старанні механізми відпрацьовує видані ним команди, ЕОМ може зайнятися іншою роботою (фоновою), наприклад пересилкою інформації операторові, виконуючи цю роботу за іншою (фоновою) програмою. Коли контроллер або мікро ЕОМ нижнього рівня потребуватиме підключення до верхньої ЕОМ, він сформують сигнал, який викличе переривання фонової програми і ЕОМ повернеться до програми обслуговування устаткування технологічного процесу.
Такий режим використання ЕОМ називається мультипрограмним. І хоча машина вирішує різні завдання (точніше, фрагменти різних завдань) послідовно в часі, із-за високої швидкості її роботи складається враження, що усі завдання вирішуються одночасно.
Програми різного рівня складності можуть створюватися на ШМ загального призначення за допомогою систем автоматизації проектування. Ці системи дозволяють не лише скласти програму, але і змоделювати її роботу в тій ЕОМ, де вона буде розміщена, а також відлагодити програму, виконуючи при необхідності і мости коригування у будь-якому її місці.