Умный принтер. Часть 2 или у кого биты больше.

49

‘).appendTo(this.inner).click(function () { $(document).toggleFullScreen(); $.fancybox.toggle(); $(‘.fullscreen’).hide(); }); }, afterClose: function () { $(document).fullScreen(false); $(‘.fullscreen’).show(); }, scrolling: ‘yes’, helpers: { title: { type: ‘over’ }, overlay: {locked: false} } }); });

PREVIEW

Прошло уже больше месяца с моей предыдущей публикации, посвященной интеграции OctoPrint’а и принтера Z-Bolt. Все это время мы не стояли на месте. Поскольку решение, которое у нас получается, нравится нам все больше и больше, мы постарались сделать так, чтобы каждый обладатель 3D принтера смог им воспользоваться.

Итак, что было сделано:

  • Подобраны оптимальные экраны для проекта
  • Сделан “hard-fork” от Octoprint-TFT
  • Пересмотрен взгляд на программно-аппаратную архитектуру принтера
  • Создана своя тема для интерфейса Octoprint

Но обо всем по порядку…

fdf2516c23cc17a349e3698e420e5f24.png

Выборы экранов

8078b52904b2e2d753e228559068c385.jpg

Мы начала с экрана TFT 3.5, который, мягко говоря, не выдержал никакой критики. Углы обзора никакие, картинка блеклая. Поэтому было решено подобрать более качественное решение.

Главными критериями были:

  • IPS матрица
  • размер 4 — 5 дюйма
  • емкостной экран (желательно)
  • приемлемая цена

В итоге остановились на двух вариантах:

1. Вариант попроще. 4’’ IPS резистивный Touchscreen

2d9183181b052fe3130faaf50abc67c7.png

2. Вариант побогаче. 4.3’’ IPS емкостной Touchscreen

4f6410c0287ea4105e496a90f81747ff.png

Оба экрана имеют разрешение 800х400. У обоих великолепная картинка, цветопередача и угол обзора. Главное их отличие — это емкостной touchscreen. К нему (как и ко всему хорошему) очень быстро привыкаешь и пользоваться им намного приятнее, чем резистивным. Тем не менее, экран с резистивным touchscreen’ом также вполне жизнеспособен.

fdf2516c23cc17a349e3698e420e5f24.png

Это Hard-Fork, детка!

373c8722c141d07d43a17a57c95e2e93.jpg

Приложение было серьезно доработано. И почти перестало напоминать своего родителя. Поэтому (а также потому, что создатель Octoprint-TFT официально заморозил развитие своего детища) было принято решение сделать hard-fork и назвать новый проект OctoScreen.
1. В первую очередь была полностью устранена проблема зависания экрана, которой страдал Octoprint-TFT.
2. Заметно изменился дизайн и компоновка:

51cfd29da2bc7f3165f217b30b80acb0.png

3. Экран научился понимать состояния принтера (ожидание/печать):

6f4547a101bc06f890b36d184dc1b4a1.png

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

a04df27cb4db98e237991754360750f5.png

5. Добавлен экран ручной калибровки стола:

199ef0208aa1250e6fc90e945c8d4d22.png

6. Пункт “Menu” вынесен на отдельный экран:

db44d2a770c5cf72e8715673fb1e3cd3.png

7. Добавлена функция управления WiFi:

9f592ec1358d7d2ba91e231cf95b6517.png

Само приложение теперь поддерживает до 4-х экструдеров. Напомним что проект изначально начинался с поиска экрана и прошивки для многоэкструдерного принтера Z-Bolt:

0aed25ffbb683bbd72be0698acb6b6af.png

Краткое видео о том как работает экран

Скачать приложение и найти краткую инструкцию по установке можно с нашего GitHub:
https://github.com/Z-Bolt/OctoScreen

Также есть подробная инструкция под экран 3.5, за что отдельное спасибо нашему соратнику Денису (@negativ72rus):
https://community.z-bolt.ru/t/octoscreen-na-3-5inch-rpi-lcd-a/18

fdf2516c23cc17a349e3698e420e5f24.png

Пересмотр взглядов на программно-аппаратную архитектуру принтера или переобувание на ходу

6e7f5b4350c98fc380e68970350b4719.png

В прошлой статье мы упоминали о планах использования Marlin в нашем многоэкструдерном принтере, однако в итоге выбор пал на Klipper. Причин несколько:

  1. Одна из главных для нас, как разработчиков, причина — это его гибкость. Marlin и его “макаронный” код делают настоящим вызовом процесс внесения в него доработок, а тем более их дальнейшую поддержку.
  2. Klipper в этом плане полная противоположность Marlin. Во-первых все конфигурирование Klipper вынесено из программного кода. Сам код хорошо структурирован. Но что самое важное, Klipper предусматривает модульность!!! Можно добавлять свою логику в прошивку, не внося изменение в ее ядро, и тем самым колоссально упрощать дальнейшую поддержку своего кода.
  3. Всю настройку прошивки можно осуществляется прямо через web интерфейс OctoPrint. И при этом возможности настройки на много мощнее чем у Marlin или Smootheiware.
  4. Как же тут не сказать о битах, за которыми в последнее время все гонятся )). Сама архитектура Klipper предполагает, что вычислительная нагрузка ложится на Raspberry PI. Функция платы управления MKS Gen L (в случае с принтерами Z-Bolt) остается в передаче сигналов к/от периферии (двигателям, сенсорам, нагревателям, элементам управления).

А ведь Raspberry Pi 3 Model B+ оснащен 64-х битным, 4-х ядерным чипом Broadcom BCM2837B0 A53 1.4GHz.

По сути Octoprint + Klipper, запущенные на Raspberry Pi + тот же MKS Gen L —
на порядок более функциональное и прогрессивное решение, чем Marlin, запущенный на каком-нибудь 32-х битном чипе.

Конфигурационные файлы для Klipper’а для принтеров Z-Bolt также можно найти тут:
https://community.z-bolt.ru/t/konfiguraczionnye-fajly-dlya-klipper-dlya-printerov-z-bolt/52

fdf2516c23cc17a349e3698e420e5f24.png

Небольшой бонус напоследок!
Также мы сделали свою тему для интерфейса OctoPrint:

c7f0cdb825eea7fcd7d2791ea727cfe8.png

Шапку можно настроить нативным пунктом выбора цвета в разделе Appearance:

8ba76efda814f6e64aec084b225b68d2.png

Инструкция как установить тему вы можете найти у нас на GitHub: https://github.com/Z-Bolt/OctoPrint-Z-Bolt-Theme

fdf2516c23cc17a349e3698e420e5f24.png

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

Всем добра, позитива и хорошего обдува нависающих элементов!

Ссылка на источник

Читайте также

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here

Solve : *
16 × 26 =