Skip to content

yurc/is620n

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IS620N Inovance Servo Drive - Complete Reference

Оглавление

  1. Быстрый старт
  2. Формула конвертации H-кодов
  3. Таблица всех параметров
  4. Примеры конфигурации
  5. Утилиты

Быстрый старт

Основная информация о приводе

  • Модель: IS620N Series (EtherCAT)
  • Протокол: CiA 402 over EtherCAT (CoE)
  • Vendor ID: 0x00100000
  • Product Code: 0x000C0108
  • Энкодер: 20-bit incremental / 23-bit absolute

Режимы работы (CiA 402)

  • 1 = PP (Profile Position)
  • 3 = PV (Profile Velocity)
  • 4 = PT (Profile Torque)
  • 6 = HM (Homing)
  • 8 = CSP (Cyclic Synchronous Position) ⭐ Рекомендуется для LinuxCNC
  • 9 = CSV (Cyclic Synchronous Velocity)
  • A = CST (Cyclic Synchronous Torque)

Формула конвертации

H-код → SDO адрес

Object dictionary index = 0x2000 + parameter group No.
Object dictionary sub-index = hexadecimal offset in parameter group No. + 1

Примеры:

H-код Расчет SDO Index SDO SubIndex Результат
H00-00 0x2000+0, 00+1 0x2000 0x01 2000:01h
H02-15 0x2000+2, 15+1 0x2002 0x10 2002:10h
H08-15 0x2000+8, 15+1 0x2008 0x10 2008:10h
H09-03 0x2000+9, 03+1 0x2009 0x04 2009:04h

Команды ethercat

# Прочитать параметр
ethercat upload -p 0 -t uint16 0x2008 0x10

# Записать параметр
ethercat download -p 0 -t uint16 0x2008 0x10 200

# Показать все SDO объекты
ethercat sdos -p 0

# Показать PDO mapping
ethercat pdos -p 0

Таблица параметров

Group H00 (0x2000): Servo Motor Parameters

H-Code SDO Название R/W Тип Единица Диапазон Умолч. Описание
H00-00 2000:01h Motor SN RW Uint16 - 0-65535 14000h Серийный номер мотора
14000=20-bit incr
14101=23-bit abs
H00-02 2000:03h Firmware version RO Uint16 - 0-65535 0h Версия прошивки
H00-04 2000:05h Encoder version RO Uint16 - 0-65535 0 Версия энкодера
H00-05 2000:06h Encoder motor SN RO Uint16 W 0-65535 0 SN энкодера

Group H01 (0x2001): Servo Drive Parameters

H-Code SDO Название R/W Тип Единица Диапазон Умолч. Описание
H01-00 2001:01h MCU firmware RO Uint8 - 0-6553.5 0 Версия MCU
H01-01 2001:02h FPGA firmware RO Uint16 - 0-6553.5 0 Версия FPGA
H01-02 2001:03h Drive SN RW Uint16 - 0-65535 0 SN привода

Group H02 (0x2002): Basic Control Parameters

H-Code SDO Название R/W Тип Единица Диапазон Умолч. Описание
H02-00 2002:01h Control mode RW Uint16 - 0-9 9 9=EtherCAT mode
H02-01 2002:02h Absolute system RW Uint16 - 0-2 0 0=Incr, 1=Abs linear, 2=Abs rot
H02-02 2002:03h Direction RW Uint16 - 0-1 0 0=CCW fwd, 1=CW fwd
H02-03 2002:04h Output pulse phase RW Uint16 - 0-1 0 0=A leads B, 1=A lags B
H02-05 2002:06h Stop mode S-ON off RW Uint16 - 0-1 0 0=Coast, 1=Zero speed
H02-07 2002:08h Stop at limit RW Uint16 - 0-2 1 Режим остановки на лимите
H02-08 2002:09h Stop at fault RW Uint16 - 0 0 Режим при ошибке
H02-09 2002:0Ah Brake ON delay RW Uint16 ms 0-500 250 Задержка вкл. тормоза
H02-10 2002:0Bh Brake OFF delay RW Uint16 ms 1-1000 150 Задержка выкл. тормоза
H02-11 2002:0Ch Brake speed threshold RW Uint16 RPM 0-3000 30 Порог скорости тормоза
H02-15 2002:10h Warning display RW Uint16 - 0-1 0 Показ предупреждений
H02-31 2002:20h Init parameters RW Uint16 - 0-2 0 0=No, 1=Reset, 2=Clear faults

Group H03 (0x2003): Input Terminal Parameters

H-Code SDO Название R/W Тип Единица Диапазон Умолч. Описание
H03-00 2003:01h DI FunIN1-16 RW Uint16 - 0-65535 0 Битовая маска DI1-16
H03-01 2003:02h DI FunIN17-32 RW Uint16 - 0-65535 0 Битовая маска DI17-32

Функции DI (примеры):

  • 0 = Disabled
  • 1 = Servo ON
  • 2 = Alarm reset
  • 10 = Forward limit (POT)
  • 11 = Reverse limit (NOT)
  • 12 = Home switch

Group H08 (0x2008): Gain Parameters ⭐ КРИТИЧЕСКИ ВАЖНО

H-Code SDO Название R/W Тип Единица Диапазон Умолч. Описание
H08-00 2008:01h Speed loop gain RW Uint16 Hz×0.1 1-20000 250 Kp контура скорости (25.0 Hz)
H08-01 2008:02h Speed integration time RW Uint16 ms×0.01 15-51200 3183 Ti контура скорости (31.83 ms)
H08-02 2008:03h Position loop gain RW Uint16 Hz×0.1 1-20000 400 Kp контура позиции (40.0 Hz)
H08-03 2008:04h 2nd speed gain RW Uint16 Hz×0.1 1-20000 400 2-е усиление скорости
H08-04 2008:05h 2nd speed Ti RW Uint16 ms×0.01 15-51200 2000 2-я постоянная интегрирования
H08-05 2008:06h 2nd position gain RW Uint16 Hz×0.1 0-20000 640 2-е усиление позиции
H08-08 2008:09h 2nd gain mode RW Uint16 - 0-1 1 Режим переключения
H08-09 2008:0Ah Gain switch condition RW Uint16 - 0-10 0 Условие переключения
H08-10 2008:0Bh Switch delay RW Uint16 ms×0.1 0-10000 50 Задержка переключения
H08-15 2008:10h Inertia ratio RW Uint16 ×0.01 0-12000 100 ⭐ J_load/J_motor (1.00)
H08-18 2008:13h Speed FF filter RW Uint16 ms×0.01 0-6400 50 Фильтр feedforward
H08-19 2008:14h Speed FF gain RW Uint16 %×0.1 0-1000 0 Усиление feedforward
H08-22 2008:17h Speed FB filter RW Uint16 - 0-4 0 0=OFF, 1-4=усреднение
H08-23 2008:18h Speed FB LPF RW Uint16 Hz 0-4000 4000 Частота среза ФНЧ

Group H09 (0x2009): Automatic Gain Tuning Parameters

H-Code SDO Название R/W Тип Единица Диапазон Умолч. Описание
H09-00 2009:01h Auto-tune mode RW Uint16 - 0-4 0 0=OFF, 1=Auto, 2=Pos, 3=Auto+fric, 4=Pos+fric
H09-01 2009:02h Rigidity level RW Uint16 - 0-31 12 Жесткость (0=мягко → 31=жестко)
H09-02 2009:03h Adaptive notch RW Uint16 - 0-4 0 Адаптивный notch-фильтр
H09-03 2009:04h Online inertia tuning RW Uint16 - 0-3 0 0=OFF, 1=Slow, 2=Always, 3=Quick
H09-04 2009:05h Resonance suppress RW Uint16 - 0-1 0 Подавление резонанса
H09-05 2009:06h Offline tune mode RW Uint16 - 0-1 0 0=Triangle, 1=Jog
H09-06 2009:07h Max tune speed RW Uint16 RPM 100-1000 500 Макс. скорость настройки

Ключевые параметры для настройки

Минимальная конфигурация для LinuxCNC + EtherCAT:

# 1. Режим управления = EtherCAT
ethercat download -p 0 -t uint16 0x2002 0x01 9

# 2. Инерция нагрузки (например, 2.5:1)
ethercat download -p 0 -t uint16 0x2008 0x10 250

# 3. Включить онлайн-настройку инерции
ethercat download -p 0 -t uint16 0x2009 0x04 1

# 4. Уровень жесткости (средний)
ethercat download -p 0 -t uint16 0x2009 0x02 12

Настройка PID регуляторов вручную:

# Контур скорости
ethercat download -p 0 -t uint16 0x2008 0x01 350  # Kp = 35.0 Hz
ethercat download -p 0 -t uint16 0x2008 0x02 1500 # Ti = 15.0 ms

# Контур позиции
ethercat download -p 0 -t uint16 0x2008 0x03 600  # Kp = 60.0 Hz

PDO Mapping (EtherCAT)

Рекомендуемый mapping: 1702h/1B02h

Универсальный для режимов PP/PV/PT/CSP/CSV/CST.

RxPDO (1702h) - Master → Slave:

Index SubIdx Название Размер Описание
6040h 00h Controlword 16 bit Слово управления CiA402
607Ah 00h Target position 32 bit Целевая позиция
60FFh 00h Target velocity 32 bit Целевая скорость
6071h 00h Target torque 16 bit Целевой момент
6060h 00h Modes of operation 8 bit Режим работы (8=CSP)
60B8h 00h Touch probe 16 bit Датчик касания
607Fh 00h Max profile velocity 32 bit Макс. скорость профиля

TxPDO (1B02h) - Slave → Master:

Index SubIdx Название Размер Описание
603Fh 00h Error code 16 bit Код ошибки
6041h 00h Statusword 16 bit Слово состояния CiA402
6064h 00h Position actual 32 bit Текущая позиция
6077h 00h Torque actual 16 bit Текущий момент
6061h 00h Modes display 8 bit Текущий режим
60B9h 00h Touch probe status 16 bit Статус датчика
60BAh 00h Touch probe pos1 32 bit Позиция касания 1
60BCh 00h Touch probe pos2 32 bit Позиция касания 2
60FDh 00h Digital inputs 32 bit Цифровые входы

Понимание Inertia Ratio (H08-15)

Что это такое?

Inertia Ratio = J_load / J_motor

Отношение инерции нагрузки к инерции ротора мотора.

Значения:

Значение H08-15 Описание Применение
0.0 0 Нагрузки нет Мотор вхолостую
1.0 100 Нагрузка = ротор Легкий шпиндель
2.0 200 Средняя нагрузка Стол ЧПУ станка
5.0 500 Тяжелая нагрузка Портал, редуктор
10.0+ 1000+ Очень тяжелая Большие массы

Как определить правильное значение?

Метод 1: Расчет (для винтовой передачи)

J_load = m × (pitch / 2π)²

Где:
m     = масса нагрузки (kg)
pitch = шаг винта (m)

Пример:
Масса стола = 50 кг
Шаг винта = 5 мм = 0.005 м
J_motor = 0.0005 kg·m² (из даташита мотора)

J_load = 50 × (0.005 / 6.28)² = 0.0003 kg·m²
Ratio = 0.0003 / 0.0005 = 0.6

Установить H08-15 = 60

Метод 2: Автонастройка (рекомендуется)

# 1. Включить онлайн-настройку (медленный режим)
ethercat download -p 0 -t uint16 0x2009 0x04 1

# 2. Запустить систему в работу
# Привод автоматически измерит и установит H08-15

# 3. Прочитать результат
ethercat upload -p 0 -t uint16 0x2008 0x10

Симптомы неправильного Inertia Ratio:

Проблема Причина Решение
Вибрации на высокой скорости Слишком низкий ratio Увеличить H08-15
Медленный отклик Слишком высокий ratio Уменьшить H08-15
Перерегулирование Неправильный Kp Настроить H08-00, H08-02
Звон, резонанс Механический резонанс Использовать H09-02 (notch)

Типичные сценарии настройки

Сценарий 1: Фрезерный станок (жесткая система)

# Высокая жесткость, быстрый отклик
ethercat download -p 0 -t uint16 0x2009 0x02 25   # Rigidity = 25
ethercat download -p 0 -t uint16 0x2008 0x01 500  # Speed Kp = 50 Hz
ethercat download -p 0 -t uint16 0x2008 0x03 800  # Pos Kp = 80 Hz
ethercat download -p 0 -t uint16 0x2009 0x04 3    # Online tune = Quick

Сценарий 2: Плазменная резка (средняя жесткость)

# Средняя жесткость, стабильность
ethercat download -p 0 -t uint16 0x2009 0x02 15   # Rigidity = 15
ethercat download -p 0 -t uint16 0x2008 0x01 300  # Speed Kp = 30 Hz
ethercat download -p 0 -t uint16 0x2008 0x03 500  # Pos Kp = 50 Hz
ethercat download -p 0 -t uint16 0x2009 0x04 1    # Online tune = Slow

Сценарий 3: Робот-манипулятор (переменная нагрузка)

# Адаптивная настройка
ethercat download -p 0 -t uint16 0x2009 0x00 1    # Auto-tune ON
ethercat download -p 0 -t uint16 0x2009 0x02 12   # Rigidity = 12
ethercat download -p 0 -t uint16 0x2009 0x04 2    # Online tune = Always

Диагностика

Чтение всех критичных параметров:

#!/bin/bash
echo "=== IS620N Diagnostics ==="
echo ""
echo "Motor SN:          $(ethercat upload -p 0 -t uint16 0x2000 0x01)"
echo "Control mode:      $(ethercat upload -p 0 -t uint16 0x2002 0x01)"
echo "Speed Kp:          $(ethercat upload -p 0 -t uint16 0x2008 0x01) (×0.1 Hz)"
echo "Speed Ti:          $(ethercat upload -p 0 -t uint16 0x2008 0x02) (×0.01 ms)"
echo "Position Kp:       $(ethercat upload -p 0 -t uint16 0x2008 0x03) (×0.1 Hz)"
echo "Inertia Ratio:     $(ethercat upload -p 0 -t uint16 0x2008 0x10) (×0.01)"
echo "Rigidity level:    $(ethercat upload -p 0 -t uint16 0x2009 0x02)"
echo "Auto-tune mode:    $(ethercat upload -p 0 -t uint16 0x2009 0x01)"
echo "Online tune:       $(ethercat upload -p 0 -t uint16 0x2009 0x04)"

Быстрая справка

Основные команды:

# Показать slaves
ethercat slaves

# Показать SDO объекты
ethercat sdos -p 0

# Показать PDO mapping
ethercat pdos -p 0

# Прочитать параметр
ethercat upload -p 0 -t uint16 0x2008 0x10

# Записать параметр
ethercat download -p 0 -t uint16 0x2008 0x10 250

# Состояние master
ethercat master

Типы данных:

  • uint8 - 1 байт (0-255)
  • uint16 - 2 байта (0-65535)
  • uint32 - 4 байта (0-4294967295)
  • int16 - 2 байта со знаком (-32768 до 32767)
  • int32 - 4 байта со знаком

Файлы в /opt/is620n/

  • README.md - Этот файл
  • parameters_table.md - Полная таблица всех параметров
  • ethercat-conf.xml - XML конфигурация для LinuxCNC
  • custom.hal - HAL файл с cia402
  • is620n_tool.sh - Утилита для работы с параметрами
  • diagnostics.sh - Скрипт диагностики
  • CLAUDE.md - Полный мануал IS620N

Полезные ссылки

About

IS620N EtherCAT servo drive documentation and tools

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors