Руководство по программированию
приложений визуализации
TM630TRE.00-ENG
2013/09/02
Необходимые условия и требования
Обучающие кур-
сы (тренинг-моду-
ли) TM600 — Описание системы визуализации
Программное
обеспечение Нет
Аппаратное обес-
печение Нет
ОГЛАВЛЕНИЕ
1 ВВЕДЕНИЕ.......................................................................................................................................... 4
1.1 Цель обучающего курса....................................................................................................... 4
2 ПРОЦЕСС РАЗРАБОТКИ ПРОЕКТА................................................................................................ 5
2.1 Этапы проекта....................................................................................................................... 5
3 СПЕЦИФИКАЦИИ............................................................................................................................... 6
1 ВВЕДЕНИЕ
На определенном этапе перед нами может возникнуть вопрос «Каким образом следует присту-
пать к работе с новым проектом»?
В особенности это может произойти в тех случаях, когда отсутствует руководство по реализации
проекта или принципы реализации еще не определены. В данном обучающем курсе приводятся
рекомендации, воспользовавшись которыми пользователи смогут преодолеть трудности, возни-
кающие на начальном этапе разработки проекта визуализации, и в итоге обеспечить себе эконо-
мию времени и денежных средств.
Ряд советов, касающихся разработки нового проекта визуализации, могут оказаться полезными
также и для экспертов в этой области.
При создании приложения визуализации следует попытаться поставить себя на место тех лю-
дей, для которых эта программа разрабатывается (операторы, технические специалисты, опыт-
ные программисты), и хорошо разобраться с ориентированным на выполнение задачи процес-
сом. Только в таком случае может быть найдено оптимальное решение для любой стоящей перед
вами задачи.
Четко определенный процесс разработки представляет собой план действий, который обеспечи-
вает хорошую структуризацию проекта и позволяет учесть все необходимые факторы.
Перед тем как приступить к выполнению проекта, необходимо предварительно уточнить все тре-
бования заказчика.
Обзор процесса разработки проекта приведен в следующей таблице.
3 СПЕЦИФИКАЦИИ
Как показано в таблице выше, 1/3 времени, отведенного на проект, должна затрачиваться на
определение технических условий. Это позволяет сократить количество времени, необходимого
для внесения изменений в процессе разработки проекта.
При этом, на практике этап подготовки технических условий часто сокращают до минимума, осо-
бенно когда разработчики считают, что у них не хватает времени даже на решение «нормальных»
задач разработки. Тем не менее, следует учесть, что четкое определение технических условий
помогает сэкономить время на последующих этапах разработки проекта.
При составлении технических условий важно найти баланс между включением всей
необходимой информации и предоставлением программисту творческой свободы. Опи-
сание каждого конкретного бита, конечно же, будет излишним.
Заказчик / клиент:
• Знает свое оборудование и предъявляемые требования, умеет управлять оборудова-
нием
→→→
Технические
требования на
проектирование
Применение
↓
Поставщик услуг / программист:
• Умеет использовать инструменты программирования и знает их возможности
Уже на этапе определения технических условий программист должен быть знаком с ин-
струментом программирования, который будет использоваться для создания приложе-
ния визуализации.
Незнание возможностей инструмента программирования, который будет использовать-
ся далее, не может дать никакой гарантии того, будут ли конкретные требования реали-
зованы на практике.
Проектирование программного
обеспечения
Разработка новой проекта обычно начинается с пустой страницы. Затем на нее добавляются все
необходимые компоненты, например, растровые изображения и тексты. Однако, при таком под-
ходе общая структура и расположение отдельных элементов изменяются от одного проекта к
другому.
Использование проектов по умолчанию или шаблонов позволяет программисту начинать разра-
ботку не с чистого листа, а опираясь на определенную базовую структуру. Вне зависимости от
того, насколько похожи или различаются проекты, хорошая основа в любом случае позволяет
сэкономить время при создании нового проекта.
Элементы проекта по умолчанию:
• Конфигурация клавиатуры и сенсорного экрана
(для цифрового и буквенно-цифрового ввода данных)
• Группы единиц измерения
(масштабирование и форматирование)
• Растровые изображения и группы растровых изображений
• Шрифты и их размер
• Страница по умолчанию
(верхний и нижний колонтитулы, шаблоны)
• Стили
После того как подготовлена основа для нового проекта, она должна использоваться
каждый раз при создании проекта. Все элементы проекта по умолчанию должны быть
одобрены заказчиком.
По мере необходимости эти компоненты могут быть дополнены другими. Кроме того, любые функ-
ции, отсутствующие в приложении, могут быть реализованы путем дополнительного программи-
рования.
Элемент Правило
Шрифт Количество используемых шрифтов должно быть сведено к минимуму. Изменяя
размеры шрифта, вы можете акцентировать внимание на определенных объек-
тах.
Имейте в виду, что операторы должны быть в состоянии прочитать содержа-
щийся на странице текст с расстояния в несколько метров.
Шрифт Основное внимание следует уделять тому, чтобы текст хорошо читался, а не то-
му, как он будет выглядеть.
Шрифт Если это возможно, следует использовать один и тот же шрифт для всех языков
одного приложения визуализации.
Графика Графический элемент или символ часто может содер-
жать больше информации, чем текст. К тому же, симво-
лы не требуют никакого перевода.
Пример графического
элемента
Элемент Правило
Элементы Поля ввода и кнопки должны иметь достаточно большие размеры, чтобы их
управления можно было легко использовать обслуживающему персоналу. Следует также
учитывать тот факт, что оператор может носить перчатки.
Элементы Элементы страницы, которым не назначена никакая функция или которые от-
управления ключены, должны четко идентифицироваться как таковые.
Компоновка Не следует перегружать страницы элементами. Важная информация на страни-
це должна быть видна сразу же.
Компоновка Элементы, выполняющие одинаковые функции, должны размещаться на стра-
ницах в одном и том же месте.
Компоновка Различные элементы на странице должны быть выровнены друг относительно
друга.
Компоновка Выработайте стратегию навигации с помощью клавиш (порядок управления кур-
сором и перехода со страницы на страницу) и примените ее последовательно
ко всем страницам.
Компоновка Если определенные параметры установки могут быть скрыты, то следует преду-
смотреть соответствующее перераспределение остальных элементов. Не
оставляйте на странице больших пустых участков.
В некоторых случаях может потребоваться размещение параметров на отдель-
ных страницах, и если инструмент программирования позволяет это, вы можете
расположить элементы динамически.
Текст Если для текста предусмотрен вывод на различных языках, то следует убедить-
ся, что текстовое поле имеет достаточно большие размеры для размещения са-
мого длинного текста.
Table: Элементы страницы
Как только станет известно содержание всех страниц, они могут быть объединены в группы.
Эти группы могут быть структурированы для отображения:
• технологических схем процесса,
• уровней управления,
• сервисных и технических уровней.
Для определения наилучшей структуры меню и навигации по страницам полезно составить схему
прикладной программы.
Использование слоев позволяет размещать на них элементы связанных между собой страниц
и затем многократно использовать эти элементы. Имеются свои особенности в том, как слои на-
страиваются, как функционируют и как используются в различных средах программирования ви-
зуализации.
Слои могут использоваться для размещения элементов следующих типов:
• Верхние и нижние колонтитулы
• Поля ввода
• Кнопки
• Поля вывода
• Диалоговые окна
Преимущества:
• Текстовый элемент, используемый на нескольких страницах, создается только один раз.
• Изменение текста на последующих этапах производится только в одном месте.
• Перевод текстов осуществляется только один раз для каждого языка.
Для программистов доступен широкий выбор стандартных диалоговых окон, в особенности для
ОС Windows.
При этом необходимо принять во внимание следующее:
• В стандартных диалоговых окнах текст всегда отображается на установленном в систе-
ме языке.
Как правило, во время запуска системы этот язык не может быть изменен.
• Кнопки в этих диалоговых окнах не всегда имеют достаточно большие размеры.
• Не всегда возможно отображение символов Unicode.
Чтобы избежать указанных выше проблем, все используемые в визуализации диалоговые окне
следует размещать на отдельных страницах или уровнях.
При добавлении в приложение элемент получает имя по умолчанию. Это имя точно определяет
тип элемента, но если у вас имеется несколько элементов одного типа отличить их друг от друга
становится невозможно.
Кроме того, это значительно усложняет совместную работу над одним проектом, разрабатывае-
мым несколькими программистами.
Как вы можете видеть, описательные имена позволяют сразу определить, для какой цели исполь-
зуется каждый из элементов.
Клавиатура
Необходимо проверить, поддерживает ли клавиатура одновременное нажатие нескольких кла-
виш.
Мышь
Мышь не очень часто используют для управления установкой. Но в то же время использования
мыши очень распространено на станцияхуправления и в офисах.
Одна из наиболее важных задач при разработке приложения визуализации заключается в на-
стройке переменных и точек данных.
Свойство Описание
Основанное на По умолчанию все переменные в прикладной программе считываются
опросе и (опрашиваются) контроллером циклически. Чем больше в текущий момент
событиях должно быть считано переменных, тем больше времени занимает процесс
циклического обновления дисплея.
В случае реализации управления на основе событий канал циклического
обмена данными может быть частично разгружен, поскольку контролле-
ру необходимо будет отслеживать изменения части переменных только по
определенным событиям.
Остальные опрашиваемые переменные могут быть обновлены быстрее и
чаще.
Цикл считывания Время обновления переменной определяет, насколько быстро [мс] должна
быть считана переменная контроллером или с каким интервалом контрол-
лер должен отслеживать события.
Увеличение времени обновления переменных, которые изменяются мед-
ленно или только один раз, позволяет разгрузить каналы циклического об-
мена данными (цикл считывания изменений температуры > 2000 мс).
Table: Способ и время доступа к переменным
Во время выполнения имеется ряд факторов, которые оказывают влияние на качество и рабочие
характеристики визуализации.
Особое внимание необходимо обратить на следующее:
• Переходы с одной страницы на другую
Переход с одной страницы на другую должен осуществляться достаточно быстро после
нажатия кнопки.
Необходимо иметь в виду, что количество элементов на странице напрямую влияет на
время, необходимое для выполнения перехода с одной страницы на другую.
• Блокирование интерфейса отдельными операциями
Следует избегать действий, которые могут заблокировать работу интерфейса.
Если этого не возможно избежать, то о выполнении таких действий пользователю должна
выдаваться соответствующая информация, например, с помощью индикатора выполне-
ния.
• Информативные тексты
Не оставляете на страницах тексты, задаваемые по умолчанию.
До получения фактических данных должно отображаться, по крайней мере, какое-либо
разумное начальное значение.
• Страница инициализации
Если приложению визуализации требуется инициализация при запуске, то она должна
быть реализована с помощью отдельного начального экрана.
Исходная страница управления системой не будет отображаться до тех пор, пока иници-
ализация не будет завершена.
Для каждой функции должен быть предусмотрен обработчик исключений, который от-
слеживает все типы ошибок времени выполнения.
Все среды программирования для Windows поддерживают обработку ошибок времени
выполнения.
(On Error GoTo, Try...Catch...Finally).
Символы Unicode
Часто визуализация используется не только для «нормального» управления системой. Для об-
служивания установки и ввода ее в эксплуатацию уполномоченному техническому персоналу мо-
гут потребоваться также дополнительные страницы.
Обычным операторам не предоставляется право доступа к сервисным страницам и страницам
обслуживания, поэтому эти страницы должны быть защищены паролем.
Для ввода в эксплуатацию и проведения текущего ремонта часто необходимы специальные ин-
струменты, которые должны быть сконфигурированы как часть приложения визуализации, или же
могут быть использованы уже имеющиеся программные пакеты.
Особое внимание необходимо обратить на следующее:
• Имеются ли уже в наличии инструменты или программные пакеты, которые предостав-
ляют решение данных технических задач?
• Возможно ли встраивание имеющихся пакетов в приложение визуализации?
Если да, то каким образом?
• Необходимы ли лицензии на данные программные продукты?
• Возможно ли возникновение проблем с совместимостью при использовании нового обо-
рудования?
• Где можно получить техническую поддержку по вопросам интеграции инструментов в
свое программное обеспечение?
Связанные данные должны храниться в одних и тех же каталогах, что позволяет упростить доступ
к ним для проведения последующего анализа.
В зависимости от типа данных также должны быть заданы соответствующие имена и расширения.
Имена в пределах существующих систем сигнализации, анализа трендов и регистрации часто
задаются самой системой.
ASCII-файл
ASCII-файл представляет собой любой файл, который содержит только простой текст, соответ-
ствующий стандарту ASCII. Эти файлы могут быть считаны на любом компьютере и следователь-
но могут легко перенесены с одной системы на другую.
Тем не менее, одним из недостатков ASCII-файлов является то, что их структура не поддержива-
ет правила и форматы. Кроме того, поиск информации в больших ASCII-файлах занимает доста-
точно много времени, поскольку производится по всему файлу.
Исключением являются файлы CSV-типа. CSV-файл представляет собой текстовый файл, кото-
рый содержит структурированные в таблицы данные. Аббревиатура CSV расшифровывается, как
Character Separated Values (значения, разделенные знаками) или Comma Separated Values (зна-
чения, разделенные запятыми), т.е. отдельные значения в этих файлах отделяются друг от друга
специальным разделительным знаком, обычно запятой. Кроме того, в этих файлах часто исполь-
зуются точка с запятой, двоеточие, знак табуляции и другие знаки. Официально принятого стан-
дарта для этого формата файлов нет.
Часто CSV-файлы вместо расширения .csv используют .txt и в этом случае могут быть также со-
зданы и отредактированы в любом текстовом редакторе.
Реестр (Windows)
Реестр содержит не документы, а параметры, которые позволяют программам и операционной
системе динамически настраиваться под конкретного пользователя. Эта информация включает
в себя данные по размещению элементов программы, например, предпочтительное положение
окна.
Записи реестра создаются в разделах, которые ответвляются от основного раздела, расположен-
ного выше их в иерархии.
Недостаток сохранения динамических параметров в реестре заключается в том, что в них сложно
вносить какие-либо изменения.
XML-файл
XML (Extensible Markup Language — расширяемый язык разметки) является стандартом, позво-
ляющим создавать документы в форме древовидной структуры, информация из которой может
быть считана как людьми, так и машинами.
XML определяет правила структуризации этих документов. Структура соответствующих докумен-
тов должна быть отдельно описана для каждого конкретного приложения XML. Описание пред-
полагает определение элементов структуры и указание их расположения в дереве документа.
XML предоставляет правила, используемые для создания этих описаний.
Базы данных
Базы данных используются для управления большими объемами данных. Регистрация, органи-
зация и хранение этих данные осуществляются на основе определенных характеристик и правил.
Пользователям предоставляются стандартизированные функции для доступа к этим базам дан-
ных.
При использовании баз данных необходимо следить за тем, чтобы автоматически не происходи-
ла их очистка. Это означает, что для хранения каждой новой записи в базе данных требуется
выделять больший объем памяти, даже в том случае если производится удаление этих данные,
кроме того базы данных должны подвергаться регулярному сжатию с целью реорганизации.
Двоичные файлы
В отличие от простых текстовых файлов двоичные файлы содержат неалфавитные знаки и могут
использовать любое значение байта. Двоичные файлы чаще используются для хранения данных,
чем текстовой информации.
После того как указанные условия будут выяснены, следует определить их взаимозависимость
и используемые форматы данных.
4.8.2.2 Совместимость
Интеграция продукта (т.е. функциональный тест) является важным этапом процесса разработки.
По возможности необходимо обеспечить привлечение заказчика к участию в планировании и про-
ведении этого тестирования. Порядок тестирования должен быть определен в самом начале при
составлении технических требований на проектирование.
Часто в процессе разработки наступает такой момент, когда «план А» приводит в тупик или к
излишне сложным решениям.
Если решения этих проблем известны, примите их к сведению и реализуйте на этапе «очистки»
проекта. Не вносите никакие изменения непосредственно перед завершением проекта. Измене-
ния лучше всего вносить по окончании текущего этапа.
Обязательно задокументируйте все внесенные в проект изменения, заархивируйте предыдущую
версию проекта и, если необходимо, проинформируйте об этом заказчика.
Все изменения, которые были внесены в проект, должны быть запротоколированы неза-
висимо от того, поставлено ли было такое условие со стороны заказчика или они были
внесены разработчиком для исправления ошибок, что позволит проследить все этапы
проекта в письменной форме. Формат журнала и способ его ведения должны быть со-
гласованы с заказчиком.
Архивирование
6.4 Документация
Документация обязательно
необходима
Документация этого вида предоставляет пользователю всю необходимую для работы с установ-
кой информацию.
В документации для пользователей необходимо различать информацию, предназначенную для
обслуживающего персонала, технических специалистов и других лиц, которые будут использо-
вать приложение визуализации.
Это связано с тем, что, например, в процессе ежедневной работы оператору не требуется ника-
кой информации о вводе в эксплуатацию, обслуживанию и т.п. Кроме того, в документации для
пользователей должны быть приведены экранные снимки каждой страницы, используемой для
работы.
Встроенная справочная система может рассматриваться как отдельный проект. Эта система слу-
жит в качестве дополнения к пользовательской документации.
При планировании всего объема работ следует принять во внимание необходимость создания
файлов справочной системы. При использовании ОС Windows имеются различные способы со-
здания и вызова интерактивной справочной системы.
Если необходимо, справочная система программы визуализации может быть сделана контекст-
но-зависимой.
7 ИТОГ
В данном обучающем курсе была представлена информация о различных аспектах систем визу-
ализации. Тщательное рассмотрение различных ситуаций, с которыми могут столкнуться поль-
зователи, позволяет улучшить эргономику и, следовательно, повысить удобство работы опера-
торов.
Разработка удобных для пользователя систем способствует созданию выгодных решений, в том
числе с точки зрения усовершенствования оборудования и систем.