@startuml |#696969|Оператор-наладчик| :Выполнить программу для проверки калибровки. По этой подпрограмме робот подводит сварочные клещи к эталонной пластине и в предназначенном для выполнения проверки калибровки месте сжимает клещи; |#fc9738|Робот| :Сигнал об успешном завершении работы подпрограммы и выходе в точку для проверки; :Запросить актуальные значения дальномеров и координат точек на грани детали с камеры; |#458ff7|ТСК| :Обработать запрос на отправку в контроллер робота значений датчиков сенсорной системы; :Выполняет диагностику сенсорной системы; note right: Алгоритм 51 if (Система исправна?) then (нет) :Отправить код и описание ошибки; |#fc9738|Робот| :Отобразить принятые коды и описание ошибки работы сенсорной системы; end else (да) |#458ff7|ТСК| :Применить калибровку для перевода значений смещений из пикселей в миллиметры и расчета угла наклона (для камеры), значения с дальномеров получить как есть, без применения калибровок; :Отправить в контроллер робота значения датчиков сенсорной системы, а также значения порогов для последующего сравнения; |#fc9738|Робот| :Вывести в ЧМИ полученные значения; if (Значения с дальномеров и камеры в диапазоне?) then (да) end else (нет) :Сделать кнопку "Откалибровать" доступной для нажатия оператором; if (Кнопка нажата?) then (нет) end else (да) |#458ff7|ТСК| :Разжать клещи; |#fc9738|Робот| :Вывести робот в домашнее положение; :Выдать сообщение "Установить оснастку для калибровки камеры и дальномеров"; |#696969|Оператор-наладчик| :Установить оснастку и подтвердить продолжение калибровки; |#fc9738|Робот| if (Подтверждение получено?) then (нет) end else (да) :Отправить сигнал "откалибровать дальномеры", если было превышение порога по дальномерам, "откалибровать камеру", если было превышение по камере; |#458ff7|ТСК| :Получение сигнала; split :Обработать сигнал на калибровку дальномеров из состава сенсорной системы; :По каждому дальномеру принять текущее значение как эталонное для перевода в систему координат электрода; split again :Обработать сигнал на калибровку камеры из состава сенсорной системы; :Переключить профиль в ПО камеры (профиль создается на заводе изготовителе); :Получить данные с камеры; :Выполнить расчет данных согласно описанию алгоритма "Вычисление координат ценра электрода"; end split :Сохранить калибровку (Значения с дальномеров и центр электрода); :Отправить сигнал о завершении калибровки; |#fc9738|Робот| :Вывести в ЧМИ сообщение об успешном завершении калибровки; endif endif endif endif @enduml