Skip to content

Движок таблицы точек и синхронизатор файлов .DAT ​

Управление координатами точек, автоматическая синхронизация структуры данных и кинематические трансформации.


Обзор ​

В архитектуре KRL команды движения в файлах программ .src ссылаются на структуры пространственных координат (E6POS, POS, FRAME, E6AXIS) и технологические параметры (FDAT, PDAT, LDAT), объявленные в парных файлах данных .dat.

Ручная синхронизация между .src и .dat при пусконаладке часто приводит к ошибкам компилятора KSS (Переменная не объявлена) или повреждению координат при сохранении точек через Touch-Up на SmartPAD.

Point Table Engine & Auto-Synchronizer (krl.syncPointsToDat, krl.batchShiftPoints, krl.mirrorTrajectory) обеспечивает автоматическую целостность данных, поиск неиспользуемых точек и точные 6D геометрические расчёты.


Ключевые возможности ​

1. Автосинхронизация точек в .DAT (krl.syncPointsToDat) ​

  • AST-сканер команд движения: Анализ активного файла .src на наличие команд движения (PTP, LIN, CIRC, SPTP, SLIN, SCIRC) и заголовков Inline Form (PDAT_ACT, FDAT_ACT, LDAT_ACT).
  • Автоматическое создание .DAT: При отсутствии файла данных расширение генерирует корректный модуль DEFDAT <MODULE> PUBLIC.
  • Безопасная вставка объявлений: Добавление недостающих объявлений (DECL E6POS, DECL FDAT, DECL PDAT, DECL LDAT) в структурированный блок ;FOLD Auto-Synchronized Points перед ENDDAT. Ранее обученные координаты сохраняются в неизменном виде.

2. Сплит-режим таблицы точек ​

  • Параллельное отображение: Одновременный просмотр команд движения .src и соответствующих векторных координат .dat.
  • Валидация в реальном времени: Проверка координат на соответствие рабочей зоне манипулятора.

3. Детектор неиспользуемых точек-сирот ​

  • Аудит забытых координат: Сканирование .dat на точки, ни разу не вызываемые в коде программы.
  • Оптимизация памяти: Безопасная очистка лишних точек для предотвращения переполнения памяти контроллера.

4. Калибровка баз и инструмента по методу Кабша (SVD) ​

  • Точный пересчёт фреймов: Расчёт рамок TOOL_DATA и BASE_DATA методом сингулярного разложения (SVD Kabsch) по физически замеренным точкам.
  • Углы Эйлера (A, B, C): Точное вычисление ориентации в стандарте KUKA ($Z-Y'-X''$) с защитой от сингулярностей.

5. 6D зеркалирование траекторий и пакетное смещение ​

  • Зеркалирование траекторий (krl.mirrorTrajectory): Отражение траекторий относительно плоскостей X, Y, Z с пересчётом битов статуса и поворота ($A_1..A_6$).
  • Пакетный сдвиг точек (krl.batchShiftPoints): Пространственное смещение группы точек через оператор композиции фреймов (:) при переносе оснастки или смене инструмента без переобучения с пульта.

Команды ​

КомандаИдентификаторОписание
KUKA KRL: Автосинхронизация точек в .DATkrl.syncPointsToDatАнализ .src и добавление объявлений
KUKA KRL: Пакетное смещение координатkrl.batchShiftPoints6D пространственный сдвиг группы точек
KUKA KRL: Зеркалировать траекториюkrl.mirrorTrajectoryЗеркальное отражение траектории
KUKA KRL: Перенумеровать точки движенияkrl.renumberPointsСинхронное переименование точек

Проприетарная лицензия (EULA). Независимая разработка Liskin Labs; не аффилировано с KUKA AG.