Разработка интерпретаторов
  • Разработка интерпретаторов
v3.0.3
Search Results for

    Show / Hide Table of Contents

    Загрузка и инициализация интерпретатора

    В CAM системе процесс загрузки интерпретатора в память состоит из следующих шагов:

    • Чтение файла настроек интерпретатора.
    • Загрузка списка регистров из файла настроек интерпретатора.
    • Загрузка интерпретатора-родителя в память (процесс загрузки интерпретатора-родителя повторяет все шаги загрузки интерпретатора в память в той же последовательности).
    • Загрузка программной библиотеки интерпретатора в память, получение интерфейса INCT_Interpreter (путём вызова функции NCT_GetInterface загруженной программной библиотеки).
    • Проверка совпадения идентификаторов файла настроек и программной библиотеки (получение идентификатора программной библиотеки производится путём вызова функции INCT_Interpreter.GetIdentifier), и идентификаторов интерпретатора-родителя.
    • Передача значений собственных параметров, если объект интерпретатора реализует интерфейс INCT_CustomInterpreter (вызов метода INCT_CustomInterpreter.SetCustomValues, значения берутся из файла *.sncix; см. Список используемых типов). Шаг выполняется, только когда интерпретатор загружается для работы, а не для проверки и не для чтения его параметров в окне Конфигуратор интерпретатора УП.
    • Загрузка списка регистров из программной библиотеки (вызов функции INCT_Interpreter.GetRegisters).
    • Загрузка списка регистров интерпретаторов-родителей.

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

    Инициализация интерпретатора состоит из следующих шагов:

    • Инициализация интерпретаторов-родителей (процесс инициализации интерпретатора-родителя повторяет все шаги инициализации интерпретатора в той же последовательности).
    • Последовательная передача интерфейсов CAM системой программной библиотеке (метод программной библиотеки интерпретатора INCT_Interpreter.SetInterface будет вызван несколько раз, по количеству передаваемых интерфейсов).
    • Инициализация программной библиотеки (вызов метода INCT_Interpreter.Initialize).

    В результате инициализации интерпретатору будут переданы объекты CAM системы, реализующие интерфейсы:

    • доступа к сформированному (базовому) списку регистров INCT_SysState;
    • управления настройками анализа текста управляющей программы INCT_Analyzer;
    • доступа к списку объектов для интерпретации INCT_BlockExecArray;
    • получения настроек оборудования INCT_Equipment;
    • формирования траектории движения инструментов с использованием осей станка (если в файле настроек интерпретатора UseGeomCLData = False) INCT_CLData;
    • формирования траектории движения инструментов с использованием геометрических осей (если UseGeomCLData = True) INCT_GeomCLData;
    • взаимодействия с ядром CAM системы, обслуживающим интерпретатор INCT_Kernel;
    • интерпретатора-родителя INCT_Interpreter (если он есть);
    • контура (интерфейс, переданный в INCT_Kernel.InterpreteContour), если интерпретатор запущен в режиме формирования контура;
    • защиты INCT_Connect, только для защищённых интерпретаторов.

    Будет выполнен метод инициализации библиотеки интерпретатора.

    In this article