DeltaTau CK3E все что нужно
По работе пришлось осваивать новый контроллер CK3E. По рекламе поставщик обещал многое.
В процессе применения этого агрегата, выяснилось, что это лучшее с чем я имел дело ...
Архитектура
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 баксов с девелопера в год ... и т.п. короче индусский маркетинг.