libximc: Структура calibration_t

libximc 3.1.1

Поля данных
Структура calibration_t

Структура калибровок Подробнее...

## Поля данных
double | A
| Коэффициент преобразования, равный количеству миллиметров (или других пользовательских единиц) на один шаг. Подробнее...
unsigned int | MicrostepMode
| Настройка контроллера, определяющая режим пошагового деления. Подробнее...

## Подробное описание

Структура калибровок

Где найти все значения для расчета?

- XILab (не забудьте загрузить профиль для вашего позиционера. Профиль должен соответствовать полному названию вашего позиционера. Например: 8MT173-25-MEn1.cfg):
  - В настройках XILab перейдите во вкладку user units. Разделите второе число на первое — это и будет коэффициент A
  - В настройках XILab, перейдите во вкладку DC motor/BLDC motor/Stepper motor (зависит от используемого типа двигателя). Подставьте значение из поля Encoder counts per turn в формулу подсчета B коэффициента
- Профиль (откройте профиль любым текстовым редактором. Профиль должен соответствовать полному названию вашего позиционера. Например: 8MT173-25-MEn1.cfg):
  - Найдите в файле профиля поля Step_multiplier= и Unit_multiplier=. Разделите второе число на первое — это и будет коэффициент A
  - Найдите в файле профиля поле Encoder_CPT=. Подставьте значение из этого поля в формулу подсчета B коэффициента вместо ENCODER_COUNTS_PER_TURN

Как посчитать Speed, Accel, Decel и AntiplaySpeed в пользовательских единицах при использовании шагового двигателя с энкодером или DC/BLDC двигателей?

1. Используя XILab, загрузите профиль для вашего позиционера. Профиль должен соответствовать полному названию вашего позиционера. Например: 8MT173-25-MEn1.cfg
2. Включите режим Feedback encoder, если он не был включен ранее
3. Вводите скорость в пользовательских единицах в поле Working speed
4. Во вкладке User units выключите флаг User units. Это позволит видеть значение в поле Working speed в RPM
5. Умножьте значение из поля Working speed (в RPM) на коэффициент B. Например: 480 * 0.0000009375 = 0.00045. Значение 0.00045 для позиционера 8MT173-25-MEn1 в режиме Encoder будет равно скорости 2 мм/сек

Ускорение, замедление и скорость в режиме антилюфта считаются аналогично

## Поля

## ◆ A

double A

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

Должен быть отличным от нуля и положительным. Используется для пересчёта положений и перемещений.

- Для шагового двигателя без энкодера используется только один коэффициент A. Формула пересчёта: [user_unit/steps]. Пример: 800 шагов = 1 мм, тогда A = 1/800 = 0.00125
- При использовании шагового двигателя с энкодером или двигателей DC/BLDC позиция задаётся в counts, но скорость, ускорение/замедление и скорость в режиме антилюфта задаются в RPM, поэтому требуются два коэффициента:
  - A. Формула пересчёта для позиции: [user_unit/counts]. Пример: 16000 counts = 1 мм, тогда A = 1/16000 = 0.0000625
  - B. Формула пересчёта для скорости, ускорения/замедления и скорости в режиме антилюфта: [60/ENCODER_COUNTS_PER_TURN * A]. Пример: 60 / 4000 * 0.0000625 = 0.0000009375

## ◆ MicrostepMode

unsigned int MicrostepMode

Настройка контроллера, определяющая режим пошагового деления.