Зачем мы разработали UniTesS

Последнее

Уже более 12 лет мы занимаемся разработкой автоматизированных рабочих мест и аппаратно-программных комплексов для испытательных, поверочных и калибровочных лабораторий. Более 200 раз внедрялись наши решения, в том числе для национальных эталонов РБ. Нашими силами был реализован аппаратно-программный комплекс специального назначения для решения задач ЭМС РЭС. Диапазон реализованных нами проектов очень широк - от самых простых, таких как поверка манометров, мультиметров, до уникальных, не имеющих аналогов. Например, испытания системы ЭРА-ГЛОНАСС в рамках подтверждения соответствия качества. Среди наших клиентов и крупнейшие ЦСМ Республики Беларусь и Российской Федерации, и центры сертификации, и небольшие независимые лаборатории. Для своих клиентов мы предлагаем комплексные решения по автоматизации: от регистрации образцов и СИ, назначения и выполнения работ, автоматизированного управления приборами и составления протоколов\свидетельств, до выдачи заказчику. Мы выполняем полное внедрение и сопровождение своих решений. В ходе реализации некоторых проектов мы сталкивались с разнообразными задачами и неожиданными проблемами,  набили немало «шишек» и сформировали успешный коллектив. В результате нами выработана собственная эффективная концепция автоматизации измерений в лабораториях.

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

Вот эти проблемы:

  • Большие затраты на разработку ПО.

Программисты всегда стоили дорого, поэтому разработка программного обеспечения не может быть дешевой. Особенно учитывая, что для эффективной работы программиста необходимо обеспечить обслуживающую его инфраструктуру: бизнес-аналитики для постановки задачи, менеджеры проекта для обеспечения надлежащего качества и соблюдения сроков, тестировщики для выявления ошибок. Таким образом, к высокой стоимости программиста добавляются огромные накладные расходы.

 

  • Длительность разработки и отладки.

Используя популярные средства разработки, мы столкнулись с очень длительным процессом отладки уже почти готового продукта. Для отладки необходимо повторять измерения множество раз, последовательно устраняя ошибки и реализуя пожелания заказчика. Во многих случаях одна итерация измерений может быть достаточно продолжительной – от 5 минут до 9 часов. Простые замечания программист может устранить на месте. Для исправления сложных могут потребоваться дни. Но даже при устранении простых замечаний необходимо останавливать процесс измерений, вносить правки в исходный код и перекомпилировать приложение.

 

  • Стандартизация архитектуры

Разные программисты могут реализовать одну и ту же задачу самыми разными способами. Увы, иногда они увольняются. И перед нами встала важнейшая задача строгой стандартизации

  • подходов к интерфейсу пользователя,
  • подходов к базовому функционалу
  • способов взаимодействия с приборами и обработку ошибок,
  • этапов разработки,
  • документирования.

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

 

  • Специфика метрологии, не понятная программистам.

Практически невозможно найти программиста, хотя бы отдаленно знакомого со спецификой метрологии. Заказчику необходимо детально объяснять методики измерений, особенности управления приборами, дать понятие бюджета неопределенности. Как правило, это очень не нравится заказчику, который ожидает, что с ним будут работать уже подготовленные специалисты. Для заказчика это лишние затраты времени дорогостоящих специалистов, которые он рассматривает как непроизводительные.  

 

  • Сложность проведения валидации ПО (метрологической аттестации)

Согласно системе качества специалисты лаборатории обязаны убедиться в правильности применяемых методов измерений. Валидировать же программное обеспечение, написанное на C#,  практически невозможно! Процесс обработки данных программой непрозрачен – мы не видим, что делается «внутри» программы. Можно конечно использовать режим отладки в среде разработки, но это может делать только сам разработчик и для “не программиста” это практически невозможно. Конечно, можно продумать систему логов, например с интерфейса управления прибором. Однако, эти способы сложны и носят формальный характер. Особенно остро вопрос валидации стоит в испытательных лабораториях при проведении сертификационных испытаний, так как лаборатория несет юридическую ответственность за их результаты.

 

  • Сложность управления приборами, высокие риски при отладке ПО.

Нам приходится работать с приборами самых разных поколений - от спроектированного ещё в Советском Союзе калибратора-вольтметра В1-28 до ультрасовременного векторного генератора сигналов Rohde & Schwarz SMBV100A, которые  используют различные интерфейсы. Так как в любом программном обеспечении есть ошибки, то всегда существует вероятность порчи дорогостоящей техники, из-за неправильно выбранного режима эксплуатации. Очень много средств измерения, приходящих в поверку, вообще не имеет интерфейса для подключения к компьютеру

.

  • Сложность внедрения программного обеспечения, психологические аспекты.

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

 

Методом проб и ошибок нам удалось решить все вышеописанные проблемы.

Мы спроектировали оригинальную среду разработки автоматизированных рабочих мест UniTesS со своим языком программирования и множеством сервисных и вспомогательных средств!

 

Структурная схема Unitess

 

Структурно UniTesS состоит из:

  • UniTesS DB - базы данных, развернутой на сервере предприятия;
  • UniTesS Manager - клиентского ПО для работы с базой данных UniTesS DB;
  • UniTesS APM  - ПО автоматизированного рабочего места;
  • UniTesS Vision  - ПО для считывания показаний с экрана приборов;

 

  • База данных UniTesS DB обеспечивает доступ ко всей информации лаборатории, поддерживает аутентификацию пользователей и разграничение доступа, содержит персональные настройки. UniTesS DB содержит большой перечень информации, в полном объеме характеризующий все аспекты деятельности лаборатории.
  • Клиентское программное обеспечение UniTesS Manager обеспечивает доступ сотрудников к базе данных в зависимости от их полномочий. Оно позволяет: регистрировать новые задания, контролировать ход работ, формировать отчеты по базе данных, производить администрирование и настройку.
  • UniTesS APM предназначен для автоматизированного выполнения поверок, калибровок СИ и испытаний оборудования различного назначения. Последовательность действий при выполнении измерений задается с помощью скрипта.
  • UniTesS Vision - ПО предназначенное для автоматизации поверки/калибровки приборов без интерфейсов управления, позволяет считывать показания с экранов приборов с индикаторами любого типа c USB камеры.

 

Как правило, наибольший интерес вызывает программное обеспечение UniTesS APM, которое по сути является набором библиотек для:

  • управления приборами,
  • математических расчетов,
  • взаимодействия с базой данных,
  • расчета неопределённости измерений.

UniTesS APM состоит из редактора\отладчика скрипта, и исполнительного модуля.  Скрипт (англ. Script - сценарий) – файл, в котором в текстовой форме содержится последовательность действий, реализующих методику измерений. Скрипты разрабатываются с использованием языка программирования Unitess Script Language. Скрипт позволяет реализовать: управление приборами, математические расчеты, сравнения, отправку данных в отчет и тд.

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

Наш скриптовый язык имеет огромные преимущества:

  • Скрипты строго стандартизированы и имеют четкую структуру, что гарантирует понятность и прозрачность. Любой  сотрудник может быстро разобраться с особенностями реализации и внести в скрипты необходимые изменения.
  • Наш язык очень прост и требует не более двух недель для глубокого изучения. Нет никаких сложных структур и классов, не требуется определять переменные и даже задумываться об их типе.
  • Простейшие шаблоны протоколов в формате MS Word позволяют любому вносить в них исправления, даже не читая документацию.
  • Скрипт может быть приостановлен в любой момент во время измерений, что даёт возможность просмотреть все промежуточные результаты и по шагам валидировать методику измерений.
  • Важнейшее преимущество – можно править скрипт непосредственно во время его выполнения, без потери данных и дополнительной перекомпиляци, что значительно уменьшает время на отладку.
  • Огромный перечень реализованных драйверов: В7, Г4, Н4, В1-28, В1-18 , Fluke, Transmille, Tektronix , Agilent, R&S,  Lecroy и тд.
  • Для всех однотипных приборов используются одни и те же команды управления. Так для всех типов калибраторов команды VDC = 10 или VAC = 10 50   будут выполняться одинаково.
  • Строгая типизированная архитектура драйверов, каждая команда скрипта проверяется на выполнение, ожидается установление показаний, контролируются ошибки.
  • Машинное зрение для считывания показаний с любых экранов. Можно считывать показания с любых экранов и шкал.
  • Все АРМ UniTesS имеют одинаковый интерфейс, методика измерений определяется только загруженным скриптом.
  • Большой перечень вспомогательных функций для обеспечения автоматизации бизнес-процессов в лаборатории – от автоматизации бюро приемки и склада, до учета рабочих мест\эталонов.

 

Известно, что на рынке присутствуют аналогичные решения от именитых брендов со большой историей. Начиная разработку своей системы мы предполагали ориентироваться на готовые решения типа NI Labview, NI TestStand, Fluke Metcal, Transmille ProCal, детально анализировали их преимущества и недостатки. 

NI Labview отпало сразу, так как не решает ни одной из упомянутых проблем, и, по сути, является всего лишь визуальным представлением языка С. Разработка в NI Labview идет, конечно, быстрее и не требует особого документирования, но не позволяет стандартизировать процесс и прогнозировать результат. Тем не менее, Labview мы широко используем для разработки разнообразных модулей и драйверов к UniTesS APM.

NI TestStand отличное мощное масштабируемое решение. Какое то время мы думали, что TestStand станет основой для нашего продукта. Однако столкнулись с непреодолимой сложностью – практическая невозможность редактирования методики измерений со стороны сотрудников наших заказчиков. Что могло привести утрате нашего ключевого преимущества.

Transmille ProCal – очень узкоспециализированный продукт для электроизмерений. Для простых решений типа поверки Agilent 34410 с  помощью Fluke 5520 очень удобен, но не позволяет двигаться дальше. 

Fluke Metcal – продукт с очень давней историей, ему более 30 лет. Различные компании-интеграторы пытались внедрять Metcal в лаборатории РФ на протяжении 15 лет, но по различным причинам не смогли развить это направление. Мы так же рассматривали Metcal как основу наших АРМ, поскольку выявили у него недостатки, которые не позволяли нам полностью удовлетворять заказчика.

Мы проанализировали все технические и функциональные возможности вышеперечисленных систем и выявили следующие основные факторы:

Наименование параметра

UniTesS

Metcal

1

Назначение

Все виды измерений, от поверки манометров до ГЛОНАСС навигационных приёмников.

Сертификационные испытания.

Автоматизация контроля качества на производственной линии

Поверка СИ, электро- и радиоизмерения

2

Условия лицензирования

Бессрочная

Каждая новая версия требует затрат

3

Поддержка СИ

В7, Г4, Н4, В1-28, В1-18 , Fluke, Transmille, Agilent, R&S, Tektronix ,  Lecroy и тд.

Однотипные приборы имеет одинаковые команды, контроль исполнения и ошибок.

Fluke.

Поддержка остальных СИ возможна при использовании “родных” команд управления  через программный интерфейс NI VISA. Процедура должна содержать обработчик ошибок, что на практике никогда не делается.

Обработка ошибок для приборов серии В7 и Н4 практически невозможна из-на недоработанного интерфейса

4

Сертификат РФ, РБ.

Есть

ГОСТ Р 8.654-2009

МИ 2955-2010, ГОСТ28195-89

ГОСТ Р ИСО/МЭК 12119-2000
ГОСТ  ИСО МЭК 14764-2002

ГОСТ Р ИСО 9127-94

ГОСТ Р ИСО/МЭК 9126-93

ГОСТ 19.105-78, ГОСТ19.502-78, ГОСТ19.503-79, ГОСТ 19.505-79

Нет

5

Интерфейс пользователя на русском языке

Есть

Есть, но этот интерфейс содержит ошибки и Metcal  с ним работает некорректно, что фактически исключает его использование.

6

Документация на русском языке

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

Только основные презентационные материалы

7

Машинное зрение

Есть

Считывает с любых экранов и шкал

Нет

8

Простой интерфейс пользователя

Есть упрощённое представление скрипта в виде дерева на русском языке с указанными точками поверки \испытаний

Нет

9

Управление объемом измерений

Есть. Пользователь может ограничивать объем измерений, загружать ранее полученные результаты, частично перезапускать скрипт

Нет, полностью выполняются все процедуры

10

Многоэтапные измерения

Есть. Вы можете проводить поверку одного и того же СИ в разные дни и автоматически склеивать результаты.

Нет

11

Коррекция скрипта во время его выполнения

Есть

Эта возможность позволяет на лету вносить правки без перекомпиляций и потери результатов. Скорость отладки значительно увеличивается.

Нет

12

Возможность исправления шаблона протокола

Есть.

Шаблон в формате MS Word. Очень просто редактировать

Есть.

Используется Crystal Reports.

Высокая сложность освоения по сравнению с MS Word

13

Контроль ошибок при управлении приборами

Есть.

Все драйвера  UniTesS отслеживают не только ошибки интерфейса, но и ошибки выполнения

Есть только для приборов Fluke

14

Поддержка IVI драйверов

Есть

Вы сможете очень просто управлять всеми приборами с IVI драйверами

Нет

Для прибора “не Fluke” вы можете использовать только нативные  команды управления, без контроля ошибок выполнения

15

Стандартизованная архитектура скриптов

Четкая архитектура позволяет быстро разобраться с алгоритмами работы.

UniTesS требует наличия комментариев  для ключевых функций.

Нет.

Каждый волен писать процедуры как захочет. Комментарии по желанию.

16

Техническая поддержка

Техническая поддержка от разработчика на русском языке

Зависит от интегратора

17

Внедрение

Профессиональная команда внедрения с широкими компетенциями по различным измерениям

Зависит от интегратора

18

Обучение

Обучение сотрудников заказчика на месте по эксплуатации и модернизации скриптов.

Обучение в Минске в классе.

Обучение в Минске на базе БелГИСС с выдачей свидетельства

Зависит от интегратора

О UniTesS

UniTesS – система менеджмента и автоматизации в лаборатории.

Структурно UniTesS состоит из:

Разработка АРМ

Вы не нашли необходимого АРМ в перечне нашей продукции?
В представленных АРМ используются другие эталоны?
У вас другой парк поверяемых/калибруемых средств измерений?

Мы сможем разработать для вас автоматизированное рабочее место под заказ в короткие сроки.

Заполните заявку

Контакты

UniTesS Россия 

  • mb@unitess.by
  • +7 (495) 975-72-83 
  • 127055, Россия, г. Москва,
    ул. Новослободская, д. 67/69, этаж 1, пом. VIII, офис 7а 

 

UniTesS Беларусь 

  • mb@unitess.by
  • +375 (44) 594-63-87
  • +375 (17) 365-35-28
  • 220104, Республика Беларусь,
    г.
    Минск, ул. П. Глебки, 15А

Партнёры и официальные представители