Предположим, что у вас есть программа детали с множеством элементов, но вы хотите измерить только некоторые из них для получения полного статистического набора данных для этих элементов. Предположим, вы хотите перейти к определенной части в вашей программе в зависимости от реакции пользователя. Вы можете выполнять подобные задачи, и многие другие, используя команды управления потоком. Путем установки условий для определенных команд, вы можете управлять ходом вашей программы детали.
Эта глава содержит информацию о выполнении таких задач. Она объясняет синтакцис обычных операторов, циклов и подпрограмм. Она также содержит множество примеров кода.
Примечание: При возникновении циклов и ветвления в примерах кода, в целях удобочитаемости было использовано структурированное расположение текста (с отступами) – чтобы показать операторы, назначенные определенному условию. В настоящем коде в окне Edit, вы не увидите структирирования текста.
Основные темы, описанные в этой главе, включают в себя:
· Использование контрольных пар
· Создание обычных циклов
· Завершение обычных циклов
· Создание меток
· Переход к метке
· Переход к метке, основанный на условиях
· Ветвление при ошибке КИМ
· Ветвление с подпрограммами
Подменю ControlPairs (контрольные пары) предлагает различные парные команды, которые работают в окне Edit для управления или "контроля" ходом программы детали. Для вставки контрольной пары введите команду в окно Edit, просто наберите команду, или выберите команду из этого подменю.
Пункт меню If / EndIf позволяет добавить условный блок в программу детали. Пункты между командами IF и END IF будут выполнены, только если выражение для команды IF определяется как истинное (ненулевое). В противном случае, ход выполнения перейдет первой команде посел команды END/IF.
Командная строка окна Edit для оператора IF / END IF: IF/выражение END_IF/
Для вставки команд If / End If:
1. Расположите курсор в нужном месте окна Edit.
2. Выберите If / EndIf из панели меню. Оператор IF / END IF появится в окне Edit.
Рассмотрите следующий пример, когда пользователю задается вопрос, хочет ли он измерить элемент "точка".
C1= COMMENT/YESNO,Would you like to measure the point feature, PNT1?
IF/C1.INPUT=="YES"
PNT1=FEAT/POINT,RECT
…
…
ENDMEAS/
END_IF/
Пояснение к примеру кода
C1=COMMENT/YESNO Эта строка воспринимает и сохраняет ответ YES или NO от пользователя.
IF/C1.INPUT=="YES" Эта строка является выражением. Она проверяет, является ли введенный ответ на комментарий 1 YES/ДА. Если это YES/ДА, то оператор IF является истинным (TRUE) и продолжается выполнение операторов после оператора IF, в этом случае – измерения элемента PNT1. При ответе NO/НЕТ выполняется переход к оператору END_IF.
END_IF Эта строка завершает выполнение команд внутри блока кода IF / END IF. Любая команда, следующая за этой строкой – это та команда, к которой PC-DMIS перейдет, если пользователь щелкнет на кнопке Noв комментарии.
Пункт меню ElseIf / EndElseIf позволяет вам добавить условный блок в программу детали. Пункты между командами ELSE IF и END ELSE IF будут выполнены, только если выражение для команды ELSE IF определяется как истинное (ненулевое). Блок ELSE IF / END ELSE IF должен располагаться непосредственно после блока IF / END IF или другого блока ELSE IF / END ELSE IF. Если все выражения IF / ELSE IF выше текущего блока определяются как ложные, то выражение будет выполняться. Если выражение определяется как ложное (ноль), то выполнение перейдет к команде, следующей за END ELSE IF. Если одно из веражений if / else IF выше текущего блока определяются как истинные, все последующие блоки else if / end else if в этой последовательности будут пропущены.
Командная строка окна Edit для оператора ELSE IF / END ELSE IF: ELSE_IF/expression END_ELSE_IF/
Для вставки команд Else If / End Else If:
1. Расположите курсор в нужном месте окна Edit, после имеющегося оператора IF/END IF или оператора ELSE IF/END ELSE IF.
2. Выберите Else If / End Else If из панели меню. Оператор ELSE IF / End ELSE IF появится в окне Edit.
Примечание: Этот тип блока действует только, если его расположить после блока IF / END IF или ELSE IF / END ELSE IF. Отдельно расположенные контрольные пары такого блока выделяются красным цветом в окне Edit.
Рассмотрите следующий пример, отображающий сообщение, извещающее пользователя в случае, если одно из значений X, Y, или Z для измеренной точки выходит за определенные границы допусков:
PNT2=FEAT/POINT,RECT
…
…
ENDMEAS/
IF/PNT2.X<6.9 OR PNT2.X>7.1
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.