libximc 3.0.2
Работа с пользовательскими единицами

Кроме работы в основных единицах(шагах, отчетах энкодера) библиотека позволяет работать с пользовательскими единицами. Для этого используются:

  • Cтруктура пересчета единиц calibration_t
  • Функции дублеры для работы с пользовательскими единицами и структуры данных для них
  • Таблица коррекции координат для более точного позиционирования

Cтруктура пересчета единиц calibration_t

Для задания пересчета из основных единиц в пользовательские и обратно используется структура calibration_t. С помощью коэффициентов A и MicrostepMode, заданных в этой структуре, происходит пересчет из шагов и микрошагов являющихся целыми числами в пользовательское значение действительного типа и обратно.

Формулы пересчета:

  • Пересчет в пользовательские единицы.
         user_value = A*(step + mstep/pow(2,MicrostepMode-1))
    
  • Пересчет из пользовательских единиц.
         step = (int)(user_value/A)
         mstep = (user_value/A - step)*pow(2,MicrostepMode-1)
    

Функции дублеры для работы с пользовательскими единицами и структуры данных для них

Структуры и функции для работы с пользовательскими единицами имеют постфикc _calb. Пользователь используя данные функции может выполнять все действия в собственных единицах не беспокоясь о том, что и как считает контроллер. Для _calb функций отдельных описаний нет. Они выполняют те же действия, что и базовые функции. Разница между ними и базовыми функциями в типах данных положения, скоростей и ускорений определенных как пользовательские. Если требуются уточнения для _calb функций они оформлены в виде примечаний в описании базовых функций.

Таблица коррекции координат для более точного позиционирования

Некоторые функции для работы с пользовательскими единицами поддерживают преобразование координат с использованием корректировочной таблицы. Для загрузки таблицы из файла используется функция set_correction_table(). В ее описании описаны функции и их данные поддерживающие коррекцию движения.

Заметки
Для полей данных которые корректируются в случае загрузки таблицы в описании поля записано - корректируется таблицей.

Формат файла:

  • два столбца разделенных табуляцией;
  • заголовки столбцов строковые;
  • данные действительные, разделитель - точка;
  • первый столбец координата, второй - отклонение вызванное ошибкой механики;
  • между координатами отклонение расcчитывается линейно;
  • за диапазоном - константа равная отклонению на границе;
  • максимальная длина таблицы 100 строк.

Пример файла:

     X  dX
     0  0
     5.0        0.005
     10.0       -0.01