Устранение проблем
Ассистент не видит навыки
Спросите, какие навыки у него сейчас есть. Если шести навыков для интерпретаторов среди них нет, проверьте, что папки навыков лежат в той папке, которую действительно читает ваш клиент, что в каждой есть файл SKILL.md и что клиент их подхватил: Claude Code видит новые навыки сразу, а если папки навыков до копирования не было — после команды /reload-skills; Kilo Code — в новой сессии или после команды /reload; другие клиенты — по своей документации, часто только после перезапуска. Где какой клиент ищет навыки — в расширенной настройке.
Ассистент отвечает по памяти вместо программ
Так бывает, когда в запросе не названы файлы или когда от ответа не требуют ссылок на данные. Укажите программы и руководство явно, спросите, из какого файла и какого кадра он взял слово, и попросите работать по навыкам — они требуют сначала прочитать программы.
Ассистент докладывает об успехе, ничего не запустив
Сборка — это не результат. Спросите, какие программы прогнаны, где журнал этого прогона и чем результат отличается от предыдущего. Если этого нет, состояние — Не проверено, см. Проверка и подтверждение результата.
Интерпретатор не загружается
Сначала прочитайте, какой Файл интерпретатора указан на вкладке Стратегия параметров операции, и журнал CAM системы. Если интерпретатор не загружен, каждое слово программы будет ошибкой.
Любую неудачу загрузки интерпретатора на C# CAM система описывает одинаково — сообщением «Внешняя библиотека не поддерживает интерфейс NCT:» с путём к библиотеке; то же сообщение выдаётся для нативной библиотеки без нужных экспортов. Настоящая причина в сообщение не попадает. Чаще всего это:
- рядом с файлом
*.snciнет библиотеки, названной в нём, или нет её зависимостей; - библиотека собрана для другой версии .NET, чем нужна этой версии продукта;
- при создании объекта интерпретатора возникло исключение — обычно при создании регистров.
Попросите ассистента проверить файлы и создать объект интерпретатора в маленькой консольной программе с тем же пакетом SDK — так видно настоящее сообщение об ошибке.
Для нативного интерпретатора проверьте разрядность библиотеки, экспорт NCT_GetInterface и NCT_FreeMemory и совпадение GetIdentifier с LibraryID — см. Рабочий цикл нативного интерпретатора.
Два интерпретатора путаются
CAM система различает интерпретаторы по идентификаторам в файле *.snci. Скопированный интерпретатор с теми же LibraryID и ID неотличим от оригинала: моделирует то один, то другой. Дайте копии новые идентификаторы.
Точка останова не срабатывает
Проверьте по порядку: рядом с библиотекой есть файл *.pdb (сборка без отладочной информации делает любую точку останова «мёртвой»); операция использует именно ваш интерпретатор; сборка перед запуском прошла успешно — откройте панель терминала и прочитайте её результат; в CAM систему передан файл *.snci из папки той версии, которую вы запустили.
Настройки из InterpreterSettings.ini не действуют
В шаблонах есть известные ошибки чтения InterpreterSettings.ini: файл может не читаться совсем, а в журнале остаётся только информационная строка, начинающаяся с Error reading settings file. Отфильтрованный по ошибкам журнал её не покажет. Попросите ассистента проверить шаблон, из которого создан интерпретатор, — навык develop-dotnet-interpreter перечисляет эти ошибки и их исправления.
Ось моделируется не там или не моделируется вовсе
Помощник из пакета SDK, через который шаблоны .NET находят оси станка, предупреждает о неизвестном имени оси один раз, а дальше молча пропускает её значения. Проверьте, что имя оси в программе совпадает с адресом оси в схеме станка, и что сопоставление имён работает для всех написаний из перечня слов: B90, B=90, B1=90.
Второй канал двигает оси первого или не моделируется
Интерпретатор должен двигать те оси, которые ему передаёт CAM система для канала его программы: для второго канала — например, X2, Y2, Z2. Если второй канал двигает оси первого или его траектория сжимается в точку, сравните эти оси с осями, которые интерпретатор передаёт в команды движения. Расхождение — ошибка интерпретатора или его файла *.snci, а не CAM системы.
Синхронизацию каналов проверяйте в CAM системе: в зависимости от версии и лицензии NC Тюнер может моделировать каналы не одновременно, а по очереди, и тогда точки ожидания ничего не задерживают.
Пустая траектория без ошибки
Частые причины:
- в программе нет заголовка, с которым её выводит постпроцессор: проверочная программа, собранная из одних проверяемых кадров, может не дать ни одного движения — собирайте её из заголовка настоящей программы той же операции;
- интерпретатор-родитель предназначен только для импорта траектории (в списке интерпретаторов у таких указано «Только для импорта траектории»);
- имя оси в программе не совпадает с адресом оси в схеме станка (см. раздел выше);
- интерпретатор с защитой не получил своих данных защиты — например, запущен из обычной папки, а не из контейнера — и написан так, что тогда молча ничего не моделирует. См. Интерпретаторы с защитой.
Результат не совпадает с тем, что даёт другая версия продукта
У каждой версии CAM системы и NC Тюнера своя версия .NET и своя версия пакета SDK (см. Версии продукта). Проверьте, в какой версии продукта шёл прогон и для какой собрана библиотека, — см. Несколько версий продукта на одном компьютере.
Документация, которую читает ассистент, устарела
Локальная копия — это снимок: скачайте архив заново, когда выходит новая версия, и записывайте, на какой версии основано решение. Подробности, зависящие от версии, — версию пакета SDK, имена интерфейсов — сверяйте с установленным продуктом, а не с копией.