Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Yazyk_AS_programmirovania.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
4.69 Mб
Скачать

6.6. Инструкции построения программных структур

IF……THEN…ELSE……END

WHILE……DO……END

DO……UNTIL

FOR……END

CASE……OF……VALUE……ANY……END

If logical expression then

program instruction(1)

ELSE

program instruction(2)

END

Назначение

Выполняет группу программных шагов в соответствии с результатом логического выражения.

Параметры

1.Логическое выражение

Логическое выражение или реальное значение выражения. Проверяет если это значение TRUE (не 0) или FALSE (0).

2.Программные инструкции (1)

Программные инструкции, введенные здесь, выполняются, если вышеупомянутое логическое выражение истинно.

3.Программные инструкции (2)

Программные инструкции, введенные здесь, выполняются, если вышеупомянутое логическое выражение ложно.

Пояснение

1.Вычисляется логическое выражение и переходится к шагу 4, если выражение ложно или 0.

2.Вычисляется логическое выражение, и выполняются программные инструкции (1), если результат 1 или истинно.

3.Переход к шагу 5.

4.Если есть ELSE состояние, выполняются программные инструкции (2)

5.Продолжается выполнение программы с шага, следующего после END.

(ПРИМЕЧАНИЕ)

ELSE и END должны быть в строчке единственными словами. IF....THEN структура может заканчиваться только END состоянием.

В примере, показанном ниже, если n больше 5, скорость устанавливается 10%, если нет, скорость устанавливается 20%.

В следующем примере, во-первых, проверяется значение переменной “m”. Если “m” не равно 0, программа проверяет внешний входной сигнал 1001 и отображает различные записи в зависимости от состояния сигнала. В данном случае внешняя IF структура не имеет состояния ELSE.

WHILE condition DO

program instruction

END

Назначение

В то время, как определенное условие истинно, выполняются программные инструкции. Когда условие ложно, WHILE состояние перескакивается.

Параметры

1.Условие

Логическое условие или реальное значение условия. Проверяет если это значение TRUE (не 0) или FALSE (0).

2.Программные инструкции

Программные инструкции, введенные здесь, выполняются, если вышеупомянутое логическое выражение истинно.

Пояснение

1.Вычисляется логическое выражение и переходится к шагу 4, если выражение ложно или 0.

2.Вычисляется логическое выражение, и выполняются программные инструкции, если результат (1) или истинно.

3.Переход к шагу 1.

4.Продолжается выполнение программы с шага, следующего после END.

(ПРИМЕЧАНИЕ)

В отличие от структуры DO, если состояние FALSE (ложно), ни один программный шаг в структуре WHILE не выполняется.

Когда эта структура используется, в конечном итоге условие должно измениться из TRUE (истина) в FALSE (ложь).

В следующем примере контролируются внешние входные сигналы 1001 и 1002 и робот останавливает движение, основываясь на состоянии этих сигналов. Когда и тот и другой сигналы от двух транспортеров изменяются в 0 (транспортеры пусты), робот останавливается, и выполнение программы продолжается с шага, идущего после состояния END.

Если один из транспортеров пуст во время начала выполнения структуры WHILE ни один из шагов структуры не выполняется, происходит скачок на шаг 27.

Пример

DO

program instruction

UNTIL logical expression

Назначение

Создает цикл

Параметры

1.Программные инструкции

Эти инструкции повторяются до тех пор, пока логическое выражение ложно.

2.Логическое выражение

Логическое выражение или реальное значение выражения. Когда результат логического выражения меняется на истинное, выполнение программных инструкций в этой структуре завершается.

Пояснение

Эта структура управления технологическим процессом выполняет группу программных инструкций в то время как данное условие (логическое выражение) является ЛОЖНЫМ.

1.Выполняет программные инструкции.

2.Проверяет значение логического выражения и если результат ложный, шаг 1 повторяется. Если результат истинный, переходит к шагу 3.

3.Продолжает программное выполнение с шага, следующего за UNTIL состоянием.

Выполнение структуры DO осуществляется до тех пор, пока значение логического выражения изменится от FALSE к TRUE.

(ПРИМЕЧАНИЕ)

В отличие от структуры WHILE, программные инструкции в структуре DO выполняются по крайней мере один раз.

Программные инструкции между DO состоянием и UNTIL состоянием могут быть опущены. Если инструкций нет, логическое выражение после UNTIL оценивается повторно. Когда значение логического выражения изменяется в TRUE (истина), тогда заканчивается выполнение цикла и происходит переход на шаг после структуры UNTIL.

DO структура должна заканчиваться состоянием UNTIL.

В примере, показанном ниже, DO структура управляет следующей задачей: деталь поднимается и переносится в буфер. Когда буфер заполняется, двоичный входной сигнал “buffer.full” принимает состояние ON. Робот останавливается, и начинаются другие операции.

Пример

FOR loop variable=start value TO end value STEP step value

program instruction

END

Назначение

Повторяет программное выполнение

Параметры

1.Переменная управления циклом

Переменная или реальное значение. Эта переменная первая и устанавливается как начальное значение, единица прибавляется все время, пока цикл выполняется.

2.Начальное значение

Реальное значение или выражение. Устанавливает первое значение для переменной управления циклом.

3.Конечное значение

Реальное значение или выражение. Это значение сравнивается с существующим значением переменной управления циклом и, если переменная управления циклом меньше или равна конечному значению, цикл выполняется, если больше цикл завершается.

4.Величина шага

Реальное значение или выражение, которое может быть пропущено. Это значение прибавляется или вычитается с переменной управления циклом после каждого цикла. Вводится эта команда с STEP состоянием. Если величина шага не задана, прибавляется 1.

Пояснение

Эта структура управления технологическим процессом повторяет выполнение программных инструкций между FOR и END состояниями. Переменная цикла увеличивается на значение заданного шага каждый раз, когда цикл повторяется.

1.Начальное значение присваивается переменной управления циклом.

2.Вычисляется конечное значение и величина шага.

3.Сравнивается значение переменной управления циклом с конечным значением.

А. Если величина шага положительна и переменная управления циклом больше чем конечное значение происходит переход на шаг 7.

Б. Если величина шага отрицательна и переменная управления циклом меньше чем конечное значение происходит переход на шаг 7.

В других случаях переход на шаг 4.

4.Выполняются программные инструкции после FOR состояния.

5.Когда END состояние достигнуто, величина шага прибавляется к переменной управления циклом.

6.Возврат к шагу 3.

7. Выполняются программные инструкции после END состояния.

(ПРИМЕЧАНИЕ)

Должна быть инструкция END для каждой инструкции FOR.

Остерегайтесь того, что если переменная цикла больше чем конечное значение (меньше, если значение шага - отрицательное) в первый раз, когда происходит проверка, ни одна из инструкций программы между FOR и END не выполнится.

Значение для количества циклов (переменная цикла) не должна изменяться другими программными средствами (операторы, выражения, и т.д.) для FOR цикла.

В примере, показанном ниже, подпрограмма “pick.place” поднимает детали и располагает их в точках “hole”. Детали располагаются, как показано на рисунке. Паллета размещена параллельно осям X, Y рабочей системы координат и расстояние между деталями 100 мм.

Пример

CASE index variable OF