Skip to content

About

Универсальный плоттер — программа для Windows для перьевых и режущих плоттеров: HP-GL, G-code, GP-GL, DMPL, AxiDraw. Автопоиск плоттера, редактор, 7 языков, MCP-сервер для ИИ-помощников.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Универсальный плоттер

Русский · English

Бесплатная программа для Windows, которая работает с перьевыми и режущими плоттерами: открывает рисунок, позволяет его поправить, сама находит плоттер и отправляет ему задание.

Главное окно

Плоттер описывается профилем — единицы, угол начала координат и шаблоны команд. Готовые профили есть для HP-GL, G-code (GRBL, Marlin), Graphtec GP-GL, DMPL и AxiDraw. Если вашего плоттера нет в списке, можно взять похожий профиль, поправить команды и сохранить свой.

Возможности

  • Сама находит плоттер. Проверяет USB-устройства, COM-порты и принтеры Windows, определяет модель и подбирает профиль. Подключается при запуске и когда вставляют кабель.
  • Работает напрямую по USB. Плоттеры класса «принтер» (Roland, Graphtec, Mimaki и многие другие) сообщают свою модель, и программа отправляет им задание без драйвера.
  • Три способа отправки: COM-порт (USB-serial, RS-232), USB напрямую и любой принтер Windows в режиме RAW.
  • Открывает SVG, DXF, HPGL/PLT и картинки PNG/JPG. Картинки переводятся в контуры или штриховку.
  • Редактор: узлы, линии, прямоугольники, эллипсы, текст любым шрифтом, группировка, отмена действий. «Сохранить» записывает изменения обратно в SVG, DXF или PLT.
  • Для резки: компенсация вылета ножа, перерез, несколько проходов, рамка для выборки. Сначала режутся внутренние контуры, чтобы плёнка не сдвигалась.
  • Оптимизация порядка контуров (меньше холостых ходов), оценка времени, пошаговая симуляция.
  • Код для плоттера можно посмотреть и поправить вручную перед отправкой.
  • Работает с ИИ-помощниками (MCP). Claude и другие помощники с поддержкой MCP могут сами открыть файл, нарисовать по описанию, найти плоттер и отправить задание — всё видно в окне программы.
  • Семь языков интерфейса: русский, English, Español, Français, Deutsch, 中文, हिन्दी. Выбираются в «Настройках», там же светлая или тёмная тема.
  • Один файл, установка не нужна. Есть и версия для браузера.

Скачать

Откройте раздел Releases и скачайте PlotterUniversal-<версия>.exe. Запустите его — установка не нужна.

Нужно: Windows 10 или 11. Компонент Microsoft Edge WebView2 уже есть в Windows 11 и в обновлённой Windows 10. Если его нет, программа сама предложит скачать.

Программа не подписана сертификатом, поэтому Windows SmartScreen при первом запуске может показать предупреждение. Нажмите «Подробнее» → «Выполнить в любом случае». Контрольные суммы файлов — в SHA256SUMS.txt рядом с релизом.

При первом запуске программа берёт язык Windows. Поменять его можно в любой момент в «Настройках».

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

  1. Запустите программу и откройте рисунок: Файл → Открыть… (Ctrl+O) или перетащите файл в окно.
  2. Подключите плоттер. Вкладка «Связь» → «Найти плоттер»: программа найдёт его, подберёт профиль и подключится.
  3. Нажмите «Тест-фигура» и «Отправить». Должен получиться квадрат 25×25 мм с кругом в центре.
  4. Если вышло зеркально или повёрнуто, смените угол начала координат или поменяйте оси на вкладке «Плоттер». Если размер не тот, поправьте «Единиц на 1 мм».

Поиск плоттера

Как подключить плоттер

Как подключён плоттер Что выбрать в программе
USB-кабель, плоттер виден как USB-принтер «Найти плоттер» — появится в разделе «USB напрямую»
USB-serial (CH340, FTDI, CP210x) или RS-232 «Найти плоттер» или выбрать COM-порт вручную
Установлен в Windows как принтер Выбрать принтер в разделе «Принтеры Windows (RAW)»
  • Многие режущие плоттеры не отвечают на запросы по COM-порту. В этом случае выберите порт вручную и выставьте скорость, как в меню плоттера (часто 9600). Программа запомнит выбор.
  • Если у принтера-плоттера драйвер вроде «Microsoft Print To PDF», он не передаёт команды плоттеру. Подключите плоттер кабелем напрямую или поставьте драйвер «Generic / Text Only».
  • Чужие COM-порты автоматически не опрашиваются: при открытии порта платы на Arduino перезагружаются. Полный опрос — только по кнопке «Найти плоттер».

Поддерживаемые плоттеры

Профиль Для каких устройств
HP-GL — перьевой HP, Roland DXY, Graphtec (режим HP-GL), Calcomp и другие перьевые плоттеры
HP-GL — режущий Roland CAMM-GL (GX, Stika, CAMM-1), Redsail, Teneth, GCC, Liyu, Creation и большинство плоттеров для плёнки
HP 7475A / 7550 / DraftPro Старые HP по RS-232 с протоколом Xon/Xoff
Graphtec GP-GL Graphtec CE, FC, Craft ROBO
DMPL Houston Instrument, старые Roland
G-code GRBL — серво-перо Самодельные плоттеры на Arduino + GRBL
G-code GRBL / CNC — ось Z Станки с пером, ножом или гравёром на оси Z
G-code Marlin — серво Плоттеры и 3D-принтеры на Marlin
AxiDraw / EBB AxiDraw и другие плоттеры на EiBotBoard (экспериментально)
Свой протокол Любой плоттер с текстовыми командами

Свой профиль

На вкладке «Плоттер» в разделе «Шаблоны команд» задаются начало и конец задания, перемещения, подъём и опускание пера. В шаблонах можно использовать переменные:

Переменная Значение
{x} {y} координаты в единицах плоттера
{pen} номер пера слоя
{speed} {speed_cm} скорость рабочего хода, мм/с и см/с
{feed} {travel_feed} подача, мм/мин (для G-code)
{force} давление / сила
{delay_s} {delay_ms} задержка пера
\x1B \r \n управляющие символы

Профиль можно сохранить, экспортировать в .json и передать на другой компьютер.

Редактирование

Правка узлов

Клавиша Действие
V N L R E T выбор, узлы, линия, прямоугольник, эллипс, текст
двойной щелчок по линии правка узлов, ещё один — новый узел
Ctrl+Z / Ctrl+Y отменить / повторить
Ctrl+C / Ctrl+V / Ctrl+D копировать / вставить / дублировать
Ctrl+G / Ctrl+Shift+G сгруппировать / разгруппировать
Ctrl+N / Ctrl+O / Ctrl+S новый / открыть / сохранить
стрелки, Shift+стрелки сдвиг на 1 мм / 10 мм
Delete удалить объект, узел или контур

Форматы сохранения: SVG, DXF (R12), PLT (HP-GL) и проект программы .plotter.json, в котором сохраняются положение, слои и номера перьев.

Симуляция

Симуляция

Кнопка «Перемещения» показывает холостые ходы, «Симуляция» — порядок, в котором плоттер пройдёт контуры.

Работа с ИИ-помощником (MCP)

Программа работает как MCP-сервер. Claude и другие ИИ-помощники с поддержкой MCP могут открывать файлы, рисовать по описанию, подбирать профиль, искать плоттер и отправлять задания. Помощник работает в открытом окне программы (если окно закрыто — запускает его): все изменения видны сразу, их можно поправить руками.

Например: «Нарисуй рамку 100×60 мм с надписью „С днём рождения“ посередине, покажи, что получилось, и отправь на плоттер».

Как подключить. Положите PlotterUniversal.exe в постоянную папку: в настройках помощника записывается путь к нему. Затем откройте «Настройки» → «ИИ-помощник (MCP)»:

  • Claude Desktop — нажмите «Копировать для Claude Desktop». В Claude Desktop откройте Settings → Developer → Edit Config, вставьте текст в файл claude_desktop_config.json и перезапустите Claude Desktop. Если в файле уже есть раздел mcpServers, добавьте в него только запись plotter-universal.
  • Claude Code — нажмите «Копировать для Claude Code» и выполните команду в терминале.
  • Другие программы (Cursor, VS Code и т. п.) — команда сервера показана в «Настройках»: "C:\…\PlotterUniversal.exe" --mcp.
{
  "mcpServers": {
    "plotter-universal": {
      "command": "C:\\Programs\\PlotterUniversal.exe",
      "args": ["--mcp"]
    }
  }
}

Безопасность. Прежде чем помощник отправит задание или команду на плоттер, программа показывает окно подтверждения. Выключить его можно только в «Настройках» — сам помощник этого сделать не может. Сервер доступен только на этом компьютере и только текущему пользователю Windows.

Что умеет помощник Инструменты MCP
Смотреть состояние и рисунок get_status, list_objects, get_preview (картинка листа)
Рисовать и править add_text, add_paths, import_drawing (SVG, DXF, HPGL), edit_objects, delete_objects, undo, new_document
Работать с файлами open_file (в том числе картинки с векторизацией), save_file (SVG, DXF, PLT, проект, код плоттера)
Настраивать плоттер list_profiles, set_profile, get_settings, set_settings, get_code
Подключаться и отправлять list_devices, find_plotter, connect, disconnect, send_job, job_control, send_command

Координаты для помощника — миллиметры от левого верхнего угла рабочей области, X вправо, Y вниз. Описания инструментов — в src/PlotterUniversal/mcp-tools.json.

Браузерная версия

Файл web/plotter.html — тот же интерфейс без установки. Откройте его в Google Chrome или Microsoft Edge: в них есть Web Serial для COM-портов. Прямой USB и принтеры Windows доступны только в программе для Windows.

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

Нужен .NET SDK 8 или новее. Программа собирается под .NET Framework 4.8, который уже есть в Windows.

powershell -ExecutionPolicy Bypass -File build.ps1

Результат появится в папке release\: exe, zip-архив, контрольные суммы, текст для страницы релиза и папка github-upload с файлами репозитория.

GitHub Actions собирает программу при каждом изменении. Чтобы выпустить релиз:

  1. Поменяйте версию в src/PlotterUniversal/PlotterUniversal.csproj (<Version>) и в web/plotter.html (APP_VERSION).
  2. Добавьте раздел в CHANGELOG.md.
  3. Создайте и отправьте тег:
git tag v1.3.0
git push origin v1.3.0

Переводы

Исходный язык интерфейса — русский: русские строки прямо в разметке и в коде (L('…') и L`…` в web/plotter.html). Переводы лежат в том же файле:

  • блок window.PU_I18N — словарь «русская строка»: [English, Español, Français, Deutsch, 中文, हिन्दी];
  • шаблоны <template id="help-xx"> — справка на каждом языке;
  • src/PlotterUniversal/Tr.cs — системные окна Windows и фильтры файловых диалогов.

Чтобы исправить перевод, найдите русскую строку в window.PU_I18N и поправьте нужный столбец. Новую строку интерфейса оборачивайте в L('…') и добавляйте в словарь. Если строки в словаре нет, показывается русский оригинал.

Описания инструментов MCP и ответы помощнику написаны по-английски: их читает ИИ, а не пользователь.

Устройство проекта

web/plotter.html                 интерфейс: импорт, редактор, профили, генерация команд
src/PlotterUniversal/
  Program.cs                     запуск, один экземпляр, встроенные библиотеки WebView2
  MainForm.cs                    окно, WebView2, уведомления о подключении устройств
  Tr.cs                          переводы системных окон
  PlotterHost.cs                 мост для страницы: COM-порты, принтеры, файлы
  UsbPrint.cs                    USB-плоттеры: список, модель по IEEE 1284, запись
  McpServer.cs                   MCP-сервер (запуск с ключом --mcp): протокол на stdin/stdout
  McpBridge.cs                   канал от MCP-сервера к открытому окну программы
  mcp-tools.json                 инструменты MCP: названия, описания, параметры
tools/make-icon.ps1              генерация значка app.ico
examples/                        файлы для проверки
build.ps1                        сборка и пакет для публикации

Интерфейс встраивается в exe при сборке, а библиотеки WebView2 упакованы внутрь. Поэтому программа — один файл.

Участие

Сообщения об ошибках и предложения принимаются в разделе Issues. Если программа не работает с вашим плоттером, создайте задачу по шаблону «Поддержка плоттера»: укажите модель, способ подключения и что происходит. Готовый профиль в .json тоже очень поможет.

Лицензия

MIT © 2026 Plotter Universal contributors

About

Универсальный плоттер — программа для Windows для перьевых и режущих плоттеров: HP-GL, G-code, GP-GL, DMPL, AxiDraw. Автопоиск плоттера, редактор, 7 языков, MCP-сервер для ИИ-помощников.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages