18
3.1 Зертханалық жұмысты жасау барысында студент келесі
тапсырмаларды орындау керек
- алдынғы жіне артқы фронт операторларын оқыңыз;
- жасалатын процеспен танысыңыз;
- тәжірибені берілген алгоритм бойынша құрастырыңыз;
- стендте
тәжіреибелер өткізіңіз;
-
манипулятор қармауыштарына санағыш бойынша алгоритм
құрастырыңыз;
- стендте тәжірибе өткізіңіз;
- манипулятор қармауышын жабуға арналған
санағыш бағдарламасының
алгоритмін және бағдарлама кодын жазыңыз (Е қосымшасы);
- нәтижелерді талқылап, қорытынды жасаңыз.
3.3 Процесті бейнелеу
Жұмыс объектісі MP03 3D манипуляторы. Объектінің қозғалысы
көлденең бағыт, жоғары-төмен бағыт, ось бойынша қозғалыс жасайды.
Бұл зертханалық жұмыста көлденең бағыт бойынша алдығы және артқа
қозғалыс үшін екі шығыс сигналы: алдыға бағдарлама сигналын – DO07,
пульттегі сигналы – D19; артқа-кері бағытта бағдарлама сигналы – DO08,
пульттегі сигналы – D20. Қармаушта ашып жабуға екі шығыс сигналы: ашылуы
бойынша бағдарлама сигналы – DO05, пульттегі сигнал – D17; жабылуы
бойынша бағдарлама сигналы – DO06, пульттегі сигнал – D18 (1.1 кесте).
Берілген бағыттарды тоқтатушы екі кіріс құрылғы бар, олар: артқа-кері
бағыттың тоқтату нүктесінің кіріс сигналы – DI05;
қармауыштың тоқтату
нүктесінің сигналы – DI03 (1.1 кесте), көлденең алдыға қозғалыстың тоқтату
нүктесі қойылмаған және қармауыштың жабылуын тоқтату нүктесі
қойылмаған.
Процесс бойынша көлденең бағыт бойынша манипулятор тоқтату
нүктесіне тиіп тұру қажет; оны пультпен реттеуге болады, қармауыш бойынша
тоқтату нүктесіне тиіп тұру қажет; пульт көмегімен манипулятор қармауышын
ашуға болады. Кері бастапқы орынға келу үшін тоқтату нүктелері арқылы код
жазылады. Көлденең бағытта алдығы және артқа қозғалыс бойынша санағыш
10 қадамды санай алады, қауіпсіз болу үшін біз тек 5 қадам деп аламыз, себебі
манипулытор шынайы болғандықтан қателіктер болады, ал қармауыш
толықтай санығыш 5 қадамды санағанда жабылады. Қауіпсіздік үшін санғыщ
мәніне кіші сандарды алуға болады. Манипуляторды
бастапқы орындарына
алып келу үшін пульт көмегіне жүгініңіз.
«REDGE» операторы.
Аты:
REDGE
Мағынасы:
логикалық өрнектің алдыңғы фронтын анықтайды;
Синтаксис:
: = edge (, );
19
Операндтар:
бірінші операнд - кез келген логикалық айнымалы
немесе күрделі өрнек, екінші операнд-өрнектің соңғы
күйін сақтау үшін қолданылатын ішкі айнымалы.
Қайтару мәні:
егер өрнектің мәні FALSE-ден TRUE-ге өзгерсе.
Барлық басқа жағдайларда FALSE.
Алдыңғы фронт: REDGE операторының көмегімен бір цикл
ішінде бір
реттен артық анықталмайды. Бұл мәлімдемені SFC-ге қосылған ауысудың
күйін сипаттау үшін пайдалануға болады.
Егер өрнек «xxx» деп аталатын
логикалық айнымалы болса,
онда ішкі
айнымалының ерекше атауын «EDGE_xxx» деп жариялап, оны осы айнымалы
үшін REDGE өрнегінде қолдану керек. Бұл әдіс басқа RIDGE есептеулері
кезінде бұл айнымалының өзгермеуін қамтамасыз етеді.
Мысалы 1:
ST тіліндегі REDGE операторын қолда бағдарламасы
Бұл бағдарлама логикалық кірістің алдыңғы фронтын санайды.
Bi120 – логикалық айнымалы кіріс.
Edge_Bi120 – Bi120 айнымалысын жад күйі
Бағдарлама:
If REDGE (Bi120, Edge_Bi120) Then
Counter := Counter + 1;
End_if;
«FEDGE» операторы
Аты:
FEDGE;
Мағынасы:
логикалық өрнектің артқы жағын анықтайды;
Синтаксис:
: = edge (, );
Қайтару мәні:
TRUE егер өрнек мәні TRUE-ден өзгереді FALSE.
Барлық басқа жағдайларда FALSE.
Артқы фронтты FEDGE операторының көмегімен бір цикл ішінде
бірнеше рет анықтау мүмкін емес. Бұл мәлімдемені SFC-ге қосылған ауысудың
күйін сипаттау үшін пайдалануға болады.
Егер өрнек «xxx» деп аталатын логикалық айнымалы болса, онда ішкі
айнымалының ерекше атауын «EDGE_xxx» деп жариялап, оны осы айнымалы
үшін FEDGE өрнегінде қолдану керек. Бұл әдіс басқа FEDGE есептеулерінде
бұл айнымалының өзгермеуін қамтамасыз етеді.
Мысалы 2:
ST тіліндегі FEDGE операторын қолда басғдарламасы
Бұл бағдарлама логикалық кірістің артқы фронтын санайды.
Bi120 – логикалық айнымалы кіріс.
Edge_Bi120 – Bi120 айнымалысын жад күйі
Бағдарлама:
If FEDGE (Bi120, Edge_Bi120) Then
Counter := Counter + 1;