
- •1 Создание кластеров из элементов управления и индикации
- •2 Порядок элементов в кластере
- •3 Создание кластера констант
- •4 Функции работы с кластерами
- •5 Сборка кластеров
- •6 Разделение кластера
- •7 Преобразование кластера в массив
- •8 Кластеры ошибок
- •9 Обработка ошибок
- •10 Кластеры ошибок
- •11 Объяснение ошибки
- •12 Использование цикла пока (While) при обработке ошибок
- •13 Использование структуры варианта (Case) при обработке ошибок
10 Кластеры ошибок
На рис.10 приведены компоненты кластеров ошибок, расположенных на палитре Controls=>Array&Cluster.
status является логической величиной, принимающей значение True в случае возникновения ошибки. Большинство ВП, функций и структур, которые принимают логические данные, используют этот параметр. При возникновении ошибки кластер ошибок передает функции значение True.
code является целым 32-х битным числом со знаком, которое соответствует ошибке. В случае если status имеет значение False, а code отличен от нуля, то, скорее всего, это предупреждение, а не фатальная ошибка.
source является строкой, которая определяет место возникновения ошибки.
Для создания входа и выхода ошибок в подпрограммах ВП используются кластеры ошибок из элементов управления и индикации.
|
|
Рисунок 10 – Компоненты кластеров ошибок
11 Объяснение ошибки
При появлении ошибки можно щелкнуть правой кнопкой мыши внутри кластера и из контекстного меню (рис.11) выбрать пункт Explain Error. Появится диалоговое окно Explain Error, содержащее информацию об ошибке. В контекстном меню также есть пункт Explain Warning, если в ВП нет ошибок, но есть предупреждения.
Рисунок 11 – Выбор пункта контекстного меню для объяснения ошибки
Диалоговое окно Explain Error также можно вызвать из меню Help.
12 Использование цикла пока (While) при обработке ошибок
Кластер ошибок может быть подсоединен к терминалу условия цикла While для остановки цикла. Когда кластер ошибок подсоединен к терминалу условия, на терминал подаются только значения параметра status – True или False. Например, цикл While, показанный на рис.12, выполняется до тех пор, пока не возвратит в выходном кластере наличие ошибки (поле status примет значение True).
Рисунок 12 – Применение цикла While в выходном кластере для определения наличия ошибки
Если к терминалу условия подсоединен кластер ошибок, пункты контекстного меню меняются с Stop if True и Continue if True на Stop on Error и Continue while Error.
13 Использование структуры варианта (Case) при обработке ошибок
Кластер ошибок может управляться «структурой варианта» (Case), в этом случае есть только два варианта структуры: нет ошибки (No Error) и ошибка (Error), для которых граница структуры имеет красный и зеленый цвет соответственно (рис.13). Структура Case выполняет вариант, основываясь на информации о наличии ошибки.
Рисунок 13 – Применение структуры Case при обработке ошибок
В диалоге New (сразу после запуска LabVIEW) присутствует шаблон «SubVI with Error Handling» (ВПП с обработкой ошибок). Данный шаблон предназначен для создания ВПП, который имеет входной и выходной терминал ошибки и две поддиаграммы структуры Case: на случай наличия и отсутствия ошибки на входе. Данный шаблон рекомендуется использовать для создания ВПП, в которых требуется обработка ошибок.
Индивидуальные задания
Разработать ВП, содержащие все рассмотренные функции работы с кластерами.