|
В начало
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ.
Создание программы
на языке ST
ЗАДАНИЕСоздать программу на языке ST согласно
условиям задания 1. РЕШЕНИЕПри создании программы используем команду VAR...END_VAR
для объявления функциональных блоков и блоков DFB.
Объявляем переменные и их начальные значения в редакторе
переменных. VAR FBI_1_10:TON; FBI_1_15:RS; FBI_1_9:TON; FBI_1_3:RS; END_VAR FBI_1_3(S:=on_le AND NOT mot_ri OR time_ri, R1:=stop OR time_le); mot_le:=FBI_1_3.Q1; FBI_1_9(IN:=FBI_1_3.Q1,PT:=t#5s); time_le:=FBI_1_9.Q; et_le:=TIME_TO_INT(IN:=FBI_1_9.ET); FBI_1_15(S:=on_ri AND NOT mot_le OR time_le, R1:=stop OR time_ri); mot_ri:=FBI_1_15.Q1; FBI_1_10(IN:=FBI_1_15.Q1,PT:=t#10s); time_ri:=FBI_1_10.Q; et_ri:=TIME_TO_INT(IN:=FBI_1_10.ET); Рис. 1. Окно редактора переменных Рис.
2 ОТВЕТЫ
НА КОНТРОЛЬНЫЕ ВОПРОСЫ
1. Охарактеризуйте язык структурированного
текста ST. Язык ST (Structured Text) является языком высокого уровня
(типа Паскаля). Был популярен в середине 70-х годов XX
века для сложных компьютерных приложений. Он предназначен для универсального
анализа данных. Удобен для программ, включающих числовой анализ или сложные
алгоритмы. Может использоваться в главных программах, в теле функции или FBD, а также для описания действий внутри элементов редакторов
SFC или Flow Chart. Обладает высокой читабельностью исходного кода, ключевые
слова, такие как AND, OR,
NOT, IF, THEN,
ELSE, WHILE и т. д., легко понимаемы. Прост в
сопровождении, если имена переменных понятны, имеются комментарии, код хорошо
структурирован. Язык ST можно использовать, например, для
того, чтобы вызывать функциональные блоки, выполнять функции и распределения,
условно выполнять и повторять их. При вводе ключевых слов, разделителей и комментариев осуществляется
непосредственная проверка по буквам. При обнаружении ключевого слова,
разделителя или комментария, они идентифицируются через цветное затенение. При
вводе несанкционированных ключевых слов (утверждений или операторов) они также
идентифицируются через цветное затенение. Согласно IEC
61131-3 ключевые слова должны быть введены в символах верхнего регистра.
Пробелы и метки табуляции не влияют на синтаксис, они могут использоваться везде. Объект может быть выбран с помощью правой кнопки мыши при
одновременном вызове контекстно-зависимого меню. В FFB,
например, возможно вызвать соответствующее описание блока, используя правую
кнопку мыши. 2. С помощью какой
команды объявляются блоки FB/DFB в языке ST? С использованием VAR
и END_VAR объявляются блоки FB/DFB в языке ST. 3. Что такое оператор в языке ST? Оператор – символ арифметической или логической операции, которая
будет выполнена. Операторы являются обобщенными, т. е. они автоматически
корректируются к типу данных операнда. Оценка выражения включает приложение операторов к операндам
в порядке, определенном правилом старшинства операторов. Оператор с самым
высоким старшинством в выражении будет выполнен в первую очередь, затем будет
выполнен оператор со следующим ниже старшинством и так до тех пор, пока
обработка не завершится. Операторы с равным старшинством выполняются слева
направо, как написано в выражении. Этот порядок может быть изменен через
заключение в скобки. 4. Что такое операнд в языке ST? Операндом является литерал, переменная, структурированная
переменная, компонент структурированной переменной, обращение к функции, выход
FB/DFB или прямой адрес. 5. Что такое утверждение в языке ST? Утверждения являются командами языка программирования ST. Утверждения должны закрываться точками с запятой. Одна
строка может содержать несколько утверждений (отделяемые
точками с запятой). 6. Какое утверждение используется в языке ST для завершения
утверждения повторения (FOR, WHILE, REPEAT) прежде, чем конечное условие будет выполнено? Утверждение
FOR…TO…BY…DO…END_FOR. Утверждение FOR используется, если число повторений
может быть определено заранее. Иначе используются WHILE или REPEAT. Утверждение FOR повторяет последовательность утверждений, пока
утверждение END_FOR не достигнуто. Число повторений определяется начальным или
конечным значением и переменной управления. Начальное или конечное значение и
переменная управления должны быть одного и того же типа данных (DINT или INT),
и не могут быть изменены одним из повторяемых утверждений. Утверждение FOR увеличивает
значение переменной управления от начального значения до конечного значения.
Значение приращения по умолчанию равно 1. Конечное условие будет проверяться в
начале каждого повторения, что означает невыполнение последовательности
утверждений, когда начальное значение больше конечного значения. Это правило позволяет избегать бесконечных контуров. |
|