NoRT CNC Control 0.5

good-penguin.png

После долгого периода разработки, наконец вышел NoRT CNC Control 0.5.

Он являет собой систему управления трехкоординатным фрезерным станком с ЧПУ, позволяющую в качестве управляющего компьютера использовать обычный ноутбук или даже планшет.

Ключевая особенность заключается в разделении кода на 2 большие части: требующую realtime и не требующую. Та часть, которая требует realtime, выполняется на недорогом микроконтроллере. А остальное исполняется на обычном компьютере. И в отличии от других схожих систем, где к компьютеру добавляется некая плата расширения, тут нет жестких realtime требований к каналу связи, достаточно чтобы хватало пропускной способности. В качестве такого канала может выступать ethernet, uart (включая usb-uart переходник).

Это позволяет с одной стороны, обходиться доступным компьютерным железом, с другой объем памяти микроконтроллеров ограничен и поместить все в него было бы тупиком, т.к. это накладывает ограничения на развитие проекта.

Проект состоит из 3 компонент:

В качестве микроконтроллеров поддерживаются stm32f103 с модулем enc28j60 для связи, а также arduino mega2560 со связью через штатный usb

Изменения:

  • Добавлена поддержка ethernet для увеличения пропускной способности по сравнению с uart
  • Код сервера полностью переписан на C#
  • Добавлена поддержка arduino mega2560
  • Устранены многочисленные баги (но возможно появились новые)
  • Добавлен режим эмуляции в прошивку. В этом случае компилируется программа, выполняемая на компьютере, а не на микроконтроллере, что позволяет «пощупать» работу системы без наличия железа
  • Добавлена возможность включать/выключать лазер или иное устройство во время движения
  • UI тоже переписан, на QT

Обработка нештатных ситуаций:

  • детектирование упирания в концевики. При этом происходит немедленная остановка. При движении на большой скорости фактическое положение головки не гарантируется, т.к. инерция

Система используется мною на моем настольном ЧПУ роутере

>>> Подробности

©  Linux.org.ru