По работе пришлось осваивать новый контроллер CK3E. По рекламе поставщик обещал многое.

undefined
 

В процессе применения этого агрегата, выяснилось, что это лучшее с чем я имел дело ...

Архитектура

DeltaTau CK3E имеет компактный размер, разъем питания распространенный и копеечный.

На торце два RJ45 UTP: один для сети Ethernet TCP/IP, другой для каскадного подключения устройств EtherCAT.

Также есть стандартный USB разъем под флешку и Micro USB для диагностики.

Авторы устройства это американская кантора, существует давно и позиционирует устройства как cost effective motion controller. Надо сказать, что им удалось создать именно такое.

Аппаратно я не вникал но вроде это неколько вроде несколько ASICS ядер для real-time управления устройствами и движением и головной ARM процессор для взаимодействия с внешним миром. Как-нибудь разберу, посмотрю на платку - если будет время.

Управление

Внутри крутиться форк Debian/Linux и можно просто зайти на девайс по ssh. В принципе не нужно никаких сред для программирования или управления контроллером. Все можно сделать через терминал putty.

IP адрес по умолчанию

192.168.0.200

Лoгинпаpoль:

root/deltatau

После подключения по ssh в консоле доступно большинство обычных команд и программ Linux. Но для взаимодействия с функционалом контроллера нужно запустить его командный процессор:

gpascii -2

Теперь через командную строку можно управлять контроллером движения. Команды описаны в PDF'ках.

Также есть отдельная PowerPMAC IDE на базе движка VisualStudio 2015. Она пока бесплатна и доступна для скачивания. В ней есть несколько визардов для управления и настройки драйверов. Можно создавать скрипты и программы. Отображать текущие значения переменных.

 

Сброс до заводских настроек

Если, в ходе смены IP адреса или других манипуляций, что-то пошло не так и контроллер не отвечает даже после холодного рестарта  по питанию, можно сбросить агрегат и открыть вновь дефолтный IP адрес 192.168.0.200.

Этот процесс довольно прост: нужно подготовить пустую флешку FAT32 и создать на ней папку PowerPmacFactoryReset. Выключаем CK3E, втыкаем флешку, включаем. Все - сейчас контроллер должен стать виден по адресу 192.168.0.200. Заходим на него через PowerPMAC IDE и в терминале выполняем команду save. Теперь выключаем питание и вынимаем флешку.

В принципе, для сброса IP команда save наверно лишняя - но так пишут в мануале.

 

Смена IP адреса

Иногда вызывает затруднение процесс смены IP адреса контроллера из самой среды Power PMAC.

Тогда проще это сделать по терминалу SSH:

# логинимся ...

login as: root
root@192.168.0.200's password:deltatau

# смотрим что разделы в режиме RO ...
root@192.168.0.200:/opt/ppmac# mount -v | grep "^/"
/dev/root on / type ext2 (ro,noatime,errors=continue,user_xattr)
/dev/sda1 on /opt type vfat (ro,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro )
/dev/sda3 on /opt/user type ext4 (ro,nodev,noatime,nodiratime,sync,data=ordered)

# выйдем в корень чтобы освободить раздел для изменений ...
root@192.168.0.200:/opt/ppmac# cd /

# меняем RO на RW для нужного раздела ...
root@192.168.0.200:/# mount -o remount,rw /dev/sda1 /opt

# проверяем что раздел /opt теперь досутпен для записи ...
root@192.168.0.200:/# mount -v | grep "^/"
/dev/root on / type ext2 (ro,noatime,errors=continue,user_xattr)
/dev/sda1 on /opt type vfat (rw,noatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
/dev/sda3 on /opt/user type ext4 (ro,nodev,noatime,nodiratime,sync,data=ordered)

# открываем сетевые настройки и выставляем IP
root@192.168.0.200:/# cd /opt/etc/network/
root@192.168.0.200:/opt/etc/network# nano interfaces

# в редакторе nanо изменяем IP адрес на нужный. В гейт можно прописать тот же IP. Сохраняемся и выходим из nano.

# ребутимся чтобы контроллер вернул RO назад ...
root@192.168.0.200:/# reboot

Теперь можно пинговать контроллер по новому IP.

 

Круговая интерполяция

При попытке выполнить команды движения по осям по дуге или кругу - происходило только линейное странное движение.

Как оказалось нужно из коробки не работает и нужно добавить настройку для системы координат примерно такое:

Coord[1].SegMoveTime = 3

Coord[1].MinArcLen=0.0001

 

Всякое разное

За полгода использования CK3E выяснилось, что оно умеет все что было от нее нужно. Были не очевидные ньюансы, но всегда удавалось победить.

Еще осталось разобраться с прямой и обратной кинематикой - надеюсь оно не подведет.

 

Немного пессимизма

Американская DeltaTau куплена Omron. Надеюсь манагеры-дармоеды из Omron НЕ придумают "новые продвинутые" фичи направленные на изымание денег у клиентов без нарушения Уголовного Кодекса типа: за каждую ось больше 3х брать больше денег; разъем питания (на фото зеленый), который стоит копейки заменить на "супер надежный" и хитровыебанный и ценой в $199; бесплатную IDE заменить на платную с "супер техподдержкой" за $999 баксов с девелопера в год ... и т.п. короче индусский маркетинг.