Ethersweep: легкий
[Ньюми] на Hackaday.IO хотел найти простой в использовании способ управления шаговыми двигателями, который можно было бы быстро использовать в самых разных приложениях, которые еще предстоит определить. Решение называется Ethersweep и представляет собой небольшой стек печатных плат, расположенный сзади обычного шагового двигателя формата NEMA17. Единственными физическими соединениями, помимо двигателя, являются Ethernet и источник питания через удобный для пользователя разъем XT30. Система может быть замкнутой, как с входом конечного ограничителя, так и со встроенным магнитным поворотным энкодером AMS AS5600 (который распознает вращающееся магнитное поле на задней стороне узла двигателя – умно!), обеспечивая необходимую обратную связь. Использование драйвера шагового двигателя Trinamic TMC2208 обеспечивает Ethersweep плавное и тихое управление двигателем, что может быть очень важно для некоторых приложений. На OLED-дисплее, расположенном на задней панели, отображается полезная информация об отладке, а также весь важный IP-адрес, назначенный устройству.
Управление осуществляется с помощью вездесущего микроконтроллера ATMega328 с развернутым программным стеком Arduino, что упрощает загрузку прошивки. Для этого также предусмотрен USB-порт, подключенный к uC с помощью дешевого USB-мостового чипа CP2102, как в большинстве Arduino-подобных конструкций. Что делает эту сборку немного необычной, так это порт Ethernet. За аппаратную часть отвечает сетевой чип Wiznet W5500, который реализует MAC и PHY в одном устройстве, для работы которого требуется всего лишь несколько пассивных устройств и магджек. Чип также обрабатывает весь стек TCP/IP внутри себя, поэтому для связи с хост-устройством требуется только внешний интерфейс SPI.
Говоря о прошивке, для облегчения развертывания конфигурация сети осуществляется с помощью DHCP, хотя в будущем обещают некоторый контроль над назначением MAC-адресов. Все управление осуществляется через UDP через Ethernet, и базовая функциональность опять же присутствует, но некоторые тонкости, такие как синхронизация двигателей и запрос состояния, снова будут подлежать дальнейшим выпускам. Проектирование аппаратного обеспечения реализовано в KiCAD и FreeCAD, а Arduino обеспечивает прошивку и управление хостом на Python. Вы можете прочитать все об этом на GitHub проекта Ethersweep, что здесь может не понравиться?
Если вы думали, что уже видели эту установку драйвера с шаговым двигателем, вы были правы: вот заявка на премию Hackaday Prize 2017 для драйвера, управляемого по CANBUS. Мы также видели это на Манекене: неприлично хорошо сделанная роботизированная рука от [Чжихуэй Цзюнь], если вы ее пропустили, вернитесь назад и посмотрите, вы не пожалеете!