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

libximc 3.0.3

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

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

- 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