Апельсиновый осьминог: начало.

eta4ever
Идет загрузка
Загрузка
22.03.2017
22306
61
печатает на PICASO Designer X PRO
Техничка

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.

Отписаться от уведомлений вы всегда сможете в профиле автора.

84
В общей сложности, я написал уже двенадцать статей по разным аспектам использования OctoPrint. Но почему-то вниманием оказалось обделено самое начало - что это, зачем и почему. Я-то начал сразу с установки и настройки на Orange Pi. Поэтому и апельсиновый осьминог. Но, лучше поздно, чем никогда. Уподоблюсь Лукасу (да я круче, у меня первый эпизод пойдет после двенадцатого).

Вводная

Итак. В далекой-далекой галактике. 3D-принтер нужно кормить не только физической пищей (филаментом), но и духовной. В качестве последней используются команды G-Code, основная масса которых - подвинуть туда, выдавить столько-то. В простейшем случае принтер подключен к компьютеру и по цепочке 'управляющая программа - USB - мост USB UART - UART микроконтроллера' получает команды. В качестве управляющей программы обычно используется Repetier-Host или Pronterface, также средства управления можно встретить в неожиданных местах, вроде слайсера Cura. Да, я говорю сейчас о RepRap-совместимой технике, а не о наглухо закрытых проприетарных продуктах.

Второй вариант - это печать с карточки. Подготовленный G-код записывается на SD, карточка вставляется в принтер, и дальше он оттуда забирает команды средствами прошивки. Удобно тем, что не нужно держать включенным компьютер, неудобно отсутствием возможности управления иначе как очно. Ну и плюс, карточку туда-сюда дергать постоянно.

А вот OctoPrint (а также Repetier-Server) - это третий вариант, хотя, строго говоря, не принципиально отличающийся от первого. По сути, OctoPrint - это тоже управляющая программа, как Repetier-Host или Pronterface. Ее задача - кормить принтер G-кодом через последовательный порт. Но есть два ключевых момента.

Первый - это ориентация на удаленное управление по локальной сети или через интернет. То есть, вместо локального пользовательского интерфейса, у нас веб-сервер, который рисует органы управления в браузере. Второй - это 'заточенность' под работу на мини-ПК типа Raspberry Pi. На самом деле, OctoPrint можно развернуть и на роутере с достаточно мощным 'железом', и на полноценном ПК.

Про роутеры и прочие утюги здесь не будет. Сосредоточусь на маленьких, но удаленьких, компьютерах. C Raspberry Pi все максимально просто - есть проект OctoPi, который представляет собой Linux-дистрибутив с уже встроенным OctoPrint. На кривых китайских поделках вроде Orange Pi сложнее - кое-что приходится делать руками. По сути, плюс у 'китайства' один - это очень низкая цена. И оно в рамках нашей задачи работает. В общем случае, чтобы устроить себе и принтеру осьминога, потребуется установить на мини-ПК Linux (обычно установка заключается в скачивании подходящего образа и разворачивании его на карточку), а затем - установить и настроить OctoPrint. Можно воспользоваться готовыми образами, я недавно делал такой для Orange Pi One (здесь, ближе к концу).

Функционал

Не рассматривая вопрос установки (см. в одной из предыдущих серий), перейду сразу к тому, что с помощью OctoPrint можно делать. Как минимум, загрузить по сети на карточку мини-ПК G-код и отправить его на печать. Уже неплохо и, да, это основная задача OctoPrint. А вот дальше - уже дополнительные функции, без которых это было бы совсем спартанским решением.

Интерфейс

Основной интерфейс OctoPrint состоит из двух колонок. В левой - блоки, ответственные за подключение, непосредственнно процесс печати (прогресс, пауза, остановка), простой файловый менеджер (создание и удаление папок, загрузка и удаление файлов). В правой - несколько вкладок.
Temperature - показывает график температур нагревателей, ниже - поля для ручной установки температуры, например, чтобы запустить прогрев, пока готовится код для печати.
Control - здесь 'шевелить ушами' - двигать и парковать головку и/или стол, смотря что у вас за кинематика; вручную запускать экструзию или ретракт. Здесь же ползунки, ответственные за относительную (в процентах) коррекцию скорости перемещения (Feed Rate) и количества подаваемого филамента (Flow Rate). В этой же вкладке отображается картинка с веб-камеры, если она у вас подключена и настроена.
GCode Viewer визуализирует подаваемые принтеру команды - где сейчас находится голова, что она печатает. Отмечу, что если G-код достаточно тяжелый, OctoPrint при попытке открытия этой вкладки будет предупреждать, мол, это приведет к серьезной нагрузке на мини-ПК и может сказаться на стабильности печати.
Terminal показывает буквами, что OctoPrint 'говорит' принтеру (G-код) в настоящий момент, и что принтер на это отвечает. Можно применять фильтры (например, не показывать команды контроля температуры), можно вмешаться в процесс и отправить свой G-код.
Timelapse - при наличии веб-камеры, можно снимать видеоролики с процессом печати. По сути, OctoPrint делает снимки с заданной периодичностью, а потом собирает их в видео.

Также установленные плагины могут добавлять вкладки в интерфейс OctoPrint. Например, плагин Print History позволяет собиратьс статистику - что печаталось, в течение какого времени, завершилась ли печать или была остановлена и т.д.
Наконец, в верхней части основного окна расположена полоска меню - переход в настройки, системные команды, вход-выход пользователем, сюда же некоторые плагины добавляют свои значки, например, TouchUI (интерфейсный плагин для маленьких экранов).

Настройки

В целом, на более-менее обычных принтерах, OctoPrint может работать вообще без настроек. Но, по-хорошему, надо бы создать профиль принтера (указать размер печатной области, форму стола и подобные параметры). Но серьезного влияния на процесс печати уже загруженного G-кода они не оказывают, ведь G-код уже сформирован с учетом профиля принтера в слайсере. Тем не менее, указанные в профиле OctoPrint параметры будут влиять на ручное управление, визуализацию и некоторые другие вещи.

Кроме того, здесь куча разделов с настройками соединения (есть смысл лезть, если что-то работает не так), вебкамеры, плагинов. Здесь останавливаться на этом вопросе не буду, ибо практически все нужное рассмотрено в более узких материалах, ссылки - в конце.

Слайсинг

Да, в OctoPrint можно загружать не только готовый G-код, но и stl-модели. То есть, если вы засунете мини-ПК в принтер (как это сделал я), то после этого можете с гордостью утверждать - ваш принтер печатает STL. Но есть, опять же, нюансы. Во-первых, к OctoPrint можно прикрутить только Slic3r или Cura. Во-вторых, что очень важно, вы не получите всех удобств полноценного слайсера - OctoPrint при 'нарезке' оперирует готовыми профилями слайсинга (выгруженными со 'старшего брата';), поэтому что-то внезапно подкрутить в настройках не получится. Далее, полноценно изучить, что же слайсер наворотил, средствами OctoPrint сложно. Для простых моделей не критично, а вот что-то навороченное желательно тщательно контролировать. Наконец, вычислительной мощности у мини-ПК немного, поэтому нарезается модель долго. Резюмирую - слайсинг средствами OctoPrint возможен, но не очень удобен.

Сборная солянка

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

Пошаговый гайд по установке на Orange Pi PC. Не советую использовать как прямое руководство к действию, т.к. основан на сборке linux, которую я больше не рекомендую и не использую.

Работа со штатной камерой Orange Pi. TLDR - работает, но камера - кусок коричневого пластилина.

Работа с вебкамерой.

Настройка Wi-Fi.

Установка Armbian на Orange Pi One. Вот это достаточно актуально, т.к. Armbian - хороший.

Работа с клавиатурой-мышью-монитором (как с полноценным ПК), плюс немного про слайсинг.

Timelapse.

Обновление OctoPrint.

Плагины.

Чуток об управлении несколькими принтерами.

Изменение интерфейса управления а-ля Pronterface.

Управление через Telegram-бота.

Защита удаленного подключения.

Использование старого смартфона в качестве камеры.

Выключение Orange Pi кнопкой Power.

Запись Timelapse с управлением подсветкой.

Управление питанием принтера.

Прямая выгрузка G-кода из Slic3r в OctoPrint.

Подключение через аппаратный UART. Также про ручное расширение раздела на карточке.

Еще один вариант управления питанием принтера.
Да пребудет с вами осьминог, как бы говорит вам Gina Häußge, ведущий разработчик OctoPrint.

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых постах.

Отписаться от уведомлений вы всегда сможете в профиле автора.

84
Комментарии к статье

Комментарии

22.03.2017 в 01:12
1

Спасибо!
Этой информации очень не хватало.

22.03.2017 в 01:16
4

Меня вчера когда спросили, что такое вообще OctoPrint - я аж как под дых получил.

23.03.2017 в 18:27
1

Смотря кто спросил, потому что множество людей вообще не знает, что такое 3d-принтер

23.03.2017 в 19:25
1

А, уже неважно. Это послужило напоминанием о том, что самые основы OctoPrint тут не описаны.

22.03.2017 в 01:34
1

Для многих этот вопрос актуален!

22.03.2017 в 02:13
1

А это из любого браузера работает?

22.03.2017 в 02:16
1

С экзотикой - не проверял. Chrome, FF - без проблем. Для малоэкранных обмылков есть плагин TouchUI, он автоматом (по юзерагенту, я думаю) включается, когда видит мобильный браузер.

22.03.2017 в 03:44
1

Зачет. Спасибо :-) Все подумываю заняться головастиками но все не соберусь...

22.03.2017 в 03:47
1

Неплохой (правда платный) клиент для Андроид для подключения к OctoPrint. Ссылка на триал - https://play.google.com/store/apps/details?id=fr.yochi76.printoid.phones.trial. Стоимость версии Pro - 200 рублей.
Пользуюсь им несколько месяцев, свои деньги отрабатывает на 100% - очень удобно контролировать процесс печати с телефона в дали от принтера.

[IMG]https://lh3.googleusercontent.com/aEVv160S7GQ2tFqYEtCnkfKBgVgCiknD8JV0mDC0ggCt5gRPtjv7_FnJ3gfI520K-w=h900-rw[/IMG]

22.03.2017 в 03:51
1

В курсе о его существовании, но не пробовал, не было нужды. В основном, все-таки, с настоящих компов работаю. А когда с чего-то мобильного, TouchUI хватает.

22.03.2017 в 06:54
1

качественный материал, плюсую

22.03.2017 в 09:24
2

Спасибо!
В ближайшие пару месяцев хочу посадить  апельсинового (хотя мб и малинового) осьминога в свой принтер.

Orange Pi имеет больше вычислительной мощности, чем Raspberry Pi?
И какую модель Orange Pi взять, чтобы был 'полный фарш'? :) И какой магазин на Али проверенный?

22.03.2017 в 12:04
2

там он единственный почти - от производителя напрямую https://ru.aliexpress.com/store/1553371
под принтсервер полный фарш не нуен - лишняя трата денег
у меня и на Zero работает - с 512 оперативы
думаю и с 256 справится пока веб камеру не подключишь

22.03.2017 в 19:26
1

На Zero не будет тормозить с веб-камерой?

22.03.2017 в 12:07
1

полный фарш https://ru.aliexpress.com/store/product/Orange-Pi-Plus-2-H3-Quad-Core-1-6GHZ-2GB-RAM-4K-Open-source-development-board/1553371_32516755321.html

22.03.2017 в 12:24
1

Магазин официальный, дали уже ссылку. Фарш - не надо, он работает через опу. Берите One, Zero, максимум - PC.
Вместо фарша лучше брать третью малину.

22.03.2017 в 19:26
1

Спасибо:)

23.03.2017 в 13:13
1

Можете пояснить, почему лучше рассматривать  Raspberry Pi3, а не Orange Pi Plus 2?   Я так понимаю дело не в 'железе' если рассматривать данную задачу применения.

23.03.2017 в 13:25
1

Для задачи октопринта навороты Pi Plus 2 никаких плюсов не несут, поэтому разумно брать что подешевле. А для других целей оказывается, что, как говорил rstepanov, 'ковырять кривое китайское говно с закрытыми спеками и угребищным говнокодом в бинарниках'

23.03.2017 в 18:30
1

Стоп, а точно ли у апельсинки больше мощность? Мб всё-таки у Малинки?

23.03.2017 в 18:47
1

Если честно, то не узнавал ещё, а только по слухам знаю.

22.03.2017 в 10:11
1

В последнее время лагает камера. При старте печати она отваливается. Запускаю скрипт запуска веб камеры из октопринта и  веб-интерфейс вообще виснет (печать продолжается). Raspberry pi 2.

22.03.2017 в 12:25
1

Надо смотреть, какая камера, что в это время в процессах происходит.

22.03.2017 в 11:16
1

а на Orange Pi Zero будет работать?

22.03.2017 в 12:07
1

вай нот? мощности хватит
пины есть

22.03.2017 в 12:21
1

Октопринт можно везде практически поставить, даже на ноутПК c windows.

22.03.2017 в 12:25
2

Я запускал на роутере с одним ядром и 128 Мб оперативы. И устойчиво печатал. Без камеры.

22.03.2017 в 20:57
3

Добавлю в копилочку свой пост по фиксированным ссылкам на принтеры, при большом их количестве :)
Octoprint: Symlink для /dev/

22.03.2017 в 20:59
2

А я вашу статью упомянул как 'Чуток про управление несколькими принтерами'

22.03.2017 в 21:20
1

А, сорри! Спасибо;)

23.03.2017 в 00:58
1

Я подумал, что слово symlink может напугать неподготовленного читателя :D

24.03.2017 в 01:15
0

eta4ever,

Я подумал, что слово symlink может напугать неподготовленного читателя :D
Меня вот чуть слово 'апельсинка' - не напугало... ;)

https://youtu.be/MCIfjcc8J2M

ski
24.03.2017 в 03:03
1




Вот вам менее трешовую ориентальную ска-апельсинку.

24.03.2017 в 10:19
0

eta4ever,
это - увы, уже прошлый век 3D-печати и виртуализации (если мы про японцев и про передачу эмо-информации).

Вот Вам - августовский хит 2016, с новейшими видеотехнологиями - 3D-шникам даже есть чему поучиться.
если очень внимательно просмотреть, пытаясь не поддаваться очевидно вирусным 'эмоциям':

[url]https://youtu.be/z4ndY5pQkWM




Меня приятно порадовала работа оператора и светотехника...

Ну а когда у него морква выросла из под ног - ваще улёт...

ski
24.03.2017 в 10:28
0

Хватит жить в пещере каменного века.
На улице уже 2017.

'Лампа Алладина' Марко Бруни от bq - там тоже есть!

Правильного такого, амбициознейшего размера, и в новомодном нынче стиле 'Low Poly'...

Весь этот япо-сюр просто нагляднейше показывает, к какому именно 1984-му году цензуры мы движемся c китайской поступью...
И с Ленинским прищуром,
и Сталинской усмешкой.

Статистика доказывает мою правоту - см. цифровые выкладки в том же клипе.

23.03.2017 в 22:18
1

А как на dietpi (на orange pi pc) поставить?

23.03.2017 в 23:14
1

Предполагаю, что так же, как и на Armbian, это ж тоже Debian. Ну, какие-то пакеты доставлять придется, возможно.

24.03.2017 в 00:55
1

Вот такой вопрос есть. Мой принтер (Malyan M180) кушает только *.X3G формат. Соответственно, печатает либо из-под MakerWare древнего (даже не пробовал), либо с SD-карты X3G-файлы полученные конвертором GPX из нормального g-code. Может ли Octoprint что-то предложить в таком  случае? Вроде, этот GPX можно прикрутить к программам слайсинга/печати в качестве 'фильтра' stdin->stdout, но это под PC. Есть ли подобное решение для Апельсинового Осьминога? ;-)

24.03.2017 в 02:56
2

Есть плагин, по описанию - похоже на то, что вам нужно.

10.04.2017 в 13:10
0

Последняя версия Cura умеет сохранять в *x3g формат. 
Сам сейчас с М180 мучаюсь, как-то не выходит у меня на нем качественная печать(

25.03.2017 в 20:28
0

Спасибо за статьи. 
Сегодня как раз бьюсь с Октопринтом. До этого стоял на CubieTrack. Сегодня включаю его, а он не стартует, после танцев выяснилось что отвалился WiFi, по быстрому не получилось разобраться с причиной, я не большой спец в линуксах и терминалах, тут как раз OrPiZero пришла, думаю сейчас быстренько установлю и начну печатать.... ага... щаз..... OctoPrint поднялся вроде настроился, подключаю принтер и тишина, перезагружаю апельсинку, а OctoPrint больше не хочет стартовать, кучу ошибок вываливает....
В общем вместо того чтобы рисовать и печатать как планирую, бью в бубен весь день вокруг апельсинов

03.04.2017 в 15:50
0

Задумался я перевести свой принтер на печать по сети. С ЮСБ есть проблемы, карточку дергать надоело. Почитал статейки, решил заказать платку. Но появились вопросы, очевидных ответов на которые я не нашел. Я правильно понимаю, что с одной платы можно рулить несколькими принтерами? И какую конкретно плату лучше взять для управления 2-3 принтерами? Смотрю в сторону Orange PI PC, но есть еще Orange PI PC2. Она не на много дороже, стоит ли взять ее? Ну и последний вопрос. К данной плате можно любой контроллер подключить? Заранее благодарю за ответы.

03.04.2017 в 15:54
1

Pi PC2 не использовал. На мой взгляд, PC хватит. Рулить несколькими принтерами можно, установив несколько экземпляров OctoPrint, но я так не делал. По контроллерам (имеются в виду платы принтеров?) вроде бы, все более-менее известное цепляется.

03.04.2017 в 16:44
0

А есть ли смысл взять PC Plus с wi-fi на борту? Доп ЮСБ будет свободный.

03.04.2017 в 16:47
1

Слышал много гадостей о набортных вайфайках апельсинов. Не могу рекомендовать.

07.04.2017 в 13:20
0

Решил посадить в свои Alekmakers фруктового осминога на ПМЖ, образ залил, все видит, камера показывает, флешку вставленную в принтер вижу, а вот скажите как и откуда печать можно запустить? У меня как-то не получается- либо вообще на это не реагирует, либо пару раз было стартует ездить сразу, без разогрева, подъема стола и т.п.... Начал печать вручную, попробовал со смартфона остановить - тоже ноль эмоций, хотя по домам, температуру и прочее выставляет. У меня ультиковая электроника стоит, да и вроде осминог к нему изначально делался? Как Осминог, с Ультиком дружит? Где-то что-то может подправить надо?

07.04.2017 в 13:28
0

Так. С родной ультиковской электроникой не знаком. Ну, допустим, загружаем G-код (Upload - на карту малинки), нажимаем иконку печати. Что во вкладке Terminal при этом происходит?

07.04.2017 в 13:42
0

так вот последовательность действий для старта печати? Выгрузить Gcode сначала на карту малины и оттуда он уже будет отправлять построчно через USB в ультик? Дать команду печатать с СД карты нельзя? Тогда кажется понятно. Кура для ультика по-другому Gcode варит - Все настойки пластика, стола и прочих предварительных ласк у Ультика в своей голове хранится, а из Куры он получает только основные команды.
Для примера кусок Ультяшного Gcoda:

;FLAVOR:UltiGCode
;TIME:12114
;MATERIAL:75069
;MATERIAL2:0
;NOZZLE_DIAMETER:0.800000
;NOZZLE_DIAMETER2:0.800000

;Layer count: 543
;LAYER:0
M107
G0 F9000 X60.900 Y76.904 Z0.400
;TYPE:SKIRT
G1 F1200 X161.873 Y76.900 E32.31136
G1 X170.675 Y93.451 E38.31007
Нет ни G28, ничего.... т.е. Осминог с ультиком взаимоисключающие понятия, получаются. Ультиковская прелесть вся исчезает, получается?

07.04.2017 в 14:21
0

Можно загрузить на SD принтера и дать команду на печать с нее. Но никогда этой функцией не пользовался. Готовил всегда обычный G-код для марлина или смузи. Надо погуглить на тему специфики работы осьминога с ультиковской прошивкой.

07.04.2017 в 14:41
0

Погуглил, вроде на Ultimaker форуме упомянули какие-то плагины под Куру 2.3  и Ultimaker 3... А так пишут, что если Gcode делать как reprap, и это запустить через Окту, то вроде качество печати сильно страдает. 
Тут самое главное, чтобы остановить бы принтер, если видишь косяк или температуру или FLOW подправить? Хотя бы...

24.10.2017 в 21:16
1

Подскажите, мы тут уже толпой голову ломаем)
Как можно сделать резервную копию внутренней памяти апельсинки?
Например Armbian Orange PI PC+ ?

24.10.2017 в 21:25
1

Загрузиться с SD (она же умеет, или нет?), и отдедешить встроенную память?

24.10.2017 в 23:09
1

Загрузиться с SD может при уже записанной внутренней.
А как скопировать внутреннюю на внешнюю?
Одедешить умею только с карты на внутреннюю)

24.10.2017 в 23:17
1

Ммм. Ну, а нельзя загрузиться с карты, отмонтировать внутреннюю и dd внутреннюю на внешнюю?

24.10.2017 в 23:26
1

Расскажите подробнее))
'отмонтировать внутреннюю и dd внутреннюю на внешнюю?'

Для тех, кто не в теме)

24.10.2017 в 23:34
1

Я, знаете ли, линуксоид-теоретик диванный в этом вопросе. Думаю о том, что если мы загружаемся с SD, то eMMC при этом можно именно что отмонтировать - а потом сделать дамп с помощью dd в файл на SD. Т.е., точного синтаксиса я не скажу, но вижу это примерно как umount /dev/как там раздел на emmc зовется и потом dd все emmc -> файл на SD. 

24.10.2017 в 23:39
0

Попробуем, может кто что родит.
А то на форумах совсем замудрено пытаются...

25.06.2018 в 16:01
0

Привет. 
Случайно не нашлось рабочего способа сделать копию?)

25.06.2018 в 16:28
0

Так и не искал, у меня ж нет апельсинов с emmc.

14.03.2018 в 16:50
0

Друзья, подскажите кто в курсе, нужно ли для работы OCTOPRINT делать оптимизацию работы с SD card (что бы карточка не умерла через какое-то непродолжительное время от частой перезаписи файлов), для RASPBERRY PI ZERO и ORANGE PI ZERO, как это многие делают для RASPBERRY PI2 или переводить файловую систему с ext4 на F2FS, как это многие делают для RASPBERRY PI3?

29.12.2018 в 10:16
1

Вдохновился статьей и перевел малину на OctoPrint. Очень понравилось.

Для написания комментариев, пожалуйста, авторизуйтесь.

Читайте в блогах

О точности печати фотополимерных принтеров

TriGorilla + Klipper + OLED SSD1306 I2C

Штатив для подводной съемки.

Очередная сушилка для ногт... Ан нет!

Держатель на стену для штангенциркуля

Коробка для алмазных буров или боров, кому как нравится