R13_Forum
Проекты => ЧПУ и 3Д принтеры => Тема начата: Пишу_Видяхи от Апреля 12, 2022, 10:53:52 pm
-
Доволно часто меня просили собрать внешний контроллер для GRBL, я собирался его делать, кое какие наброски сделал даже, думал STM32 использовать и цветной дисплей, но оказалось, что прогресс не стоит на месте, и GRBL перевели на ESP32. А это значит, что появился безпроводный интерфейс, но не это главное, была добавлена поддержка внешней флешки и веб интерфейс! контроллер стал независимым, и управлять им можно даже с телефона теперь и файлы с флешки запускать в работу.
https://cnc-tex.ru/news/13/ustanovka-i-nastroika-grbl-esp32.html
Тут буду выкладывать свои идеи и наработки по этому устройству, если ни кто не захочет присоедениться.
-
Да, довольно интересно - https://cnc-tex.ru/news/15/lazernyi-graver-na-esp32-proshivka-grbl_esp32.html
Было бы интересно развести платку под него соответствующую. Правда, не могу понять нафига там еще и камера?
1. Какой картридер предпочтителен, на Micro SD или SD карту?
2. Не попадалось схемы драйвера тока с TTL регулировкой, как у автора или в аттаче?
-
камера - наблюдать удаленно.
Схему можно на ОУ собрать можно, обычный источник тока, но вход операционника просто притягивать к земле, когда погасить диод нужно. У меня два драйвера и оба при включении включают лазер, вход нужно на землю сажать. Схему можно попробовать с него срисовать, но там детали для него искать еще придется.
В приведенной схеме вывод R3 можно к земле приживать, когда нужно погасить, соответственно этим резистором можно и ток на диоде установить.
-
камера - наблюдать удаленно
Это понятно что наблюдать. Там что, прожиг по времени сопоставим со временем печати крупных деталей? Не, ну понятно что там только питание берется, плата как бы в воздухе отдельно. Просто интересно на фига)
Схему можно на ОУ собрать можно, обычный источник тока, но вход операционника просто притягивать к земле, когда погасить диод нужно. У меня два драйвера и оба при включении включают лазер, вход нужно на землю сажать. Схему можно попробовать с него срисовать, но там детали для него искать еще придется.
В приведенной схеме вывод R3 можно к земле приживать, когда нужно погасить, соответственно этим резистором можно и ток на диоде установить.
А какова частота шиммирования TTL идет с ESP32_GRBL ? И это получится, что сигнал будет инвертирован? Т.е. выставляешь 10% мощности а лазер будет работать на 90% ?
1. Какой картридер предпочтителен, на Micro SD или SD карту?
- ?
Да, еще вопрос - на какие выводы вешаются эндстопы X и Y ?
-
Да, если выжигать что то размером с А4 и с градациями серого и с 10 линий на 1мм, то вполне может и 4-5 часов выжигание длиться. если функция фрезерования, то и 30 часов.
Частота задается в прошивке, там значение указывается для градаций серого, для лазера обычно 0-255, а частота шима помоему (могу быть не прав) 1 килогерц. Сигнал - да, будет инвертирован, но в операционниках все равно обычно 2 шт в 1 корпусе, можно и инвертор сделать. А так - да, при включении лазера у меня он сразу зажигается на полную мошьность, если вход на землю посадить, то гаснет. сигнал в настройках прошивки инвертируется, через программу управления это можно сделать, с этим тоже проблем нет, это настраивается - даже перепрошивать ничего не надо, команду только отправить.
там не только эндстопы, там много чего вешается, это прошивка для ЧПУ фрезера, поддерживает 6 осей, то есть 6 шаговиков. Помимо эндстопов есть вывод для включения СОЖ, есть кнцевик открытия дверки корпуса, есть кнопка экстренной остановки, есть вход на шуп для определения карты высот поверхности и т.д.
во вложении для голубой таблетки пиноут. для есп32 будет то же самое.
-
Привет коллеги, подскажите компилятор ругается FreeRTOS.h: No such file or directory. Я установил все как в описании пошагово. Ардуино 1,8,13 что-то нужно добавить?
-
Он же и пишет, что файл FreeRTOS.h отсутствует.
я скачал проект с гитхаба, он настроен под atolic true studio.
Атолик скачал с оф сайта ST (они купили этот компилятор). открыл и скомпилилровалось без проблем. Со средой ардуино я стараюсь не сталкиваться без крайней нужды, переписывал прошивку под ардуино, и наловил глюков на ровном месте. Поэтому подсказать или проконсультировать не могу.
-
в общем прошил через через платформио, почему-то нет данных с адресом esp32
подскажите куда копать. Если подключаю только кабелем просадка до 4в монитор порта работает, но нет точки wifi. Если блоком питания нормально работает точка доступа. Пробовал нажимать boot и en.
rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:9720
ho 0 tail 12 room 4
load:0x40080400,len:6352
entry 0x400806b8
[MSG:Grbl_ESP32 Ver 1.3a Date 20211103]
[MSG:Compiled with ESP32 SDK:v3.2.3-14-gd3e562907]
[MSG:Using machine:ESP32_V4]
[MSG:Axis count 3]
[MSG:RMT Steps]
[MSG:Init Motors]
[MSG:Global stepper disable pin:GPIO(13)]
[MSG:X Axis Standard Stepper Step:GPIO(12) Dir:GPIO(14) Disable:None Limits(0.000,300.000)]
[MSG:Y Axis Standard Stepper Step:GPIO(33) Dir:GPIO(35) Disable:None Limits(0.000,300.000)]
[MSG:PWM spindle Output:GPIO(2), Enbl:GPIO(22), Dir:None, Freq:5000Hz, Res:13bits]
[MSG:Local access point GRBL_ESP started, 192.168.4.1]
[MSG:Captive Portal Started]
[MSG:HTTP Started]
[MSG:TELNET Started 23]
[MSG:Flood coolant on pin GPIO(25)]
[MSG:Mist coolant on pin GPIO(21)]
[MSG:X Axis limit switch on pin GPIO(27)]
[MSG:Y Axis limit switch on pin GPIO(26)]
[MSG:Z Axis limit switch on pin GPIO(16)]
[MSG:Probe on pin GPIO(32)]
Grbl 1.3a ['$' for help]
-
atolic true studio скачать не получается Not available for download
-
Для есп32 атолик не нужен, для того, что в статье, он для STM32 проекта GRBL, я темы перепутал. Пока для есп32 не разбирался, сейчас видео одно смонтирую, займусь уже есп32, вначале с софтом разберусь, так как мне 3 проекта с есп32 делать надо, буду ее усилино копать.
Атолик хоть и не нужен но подскажу в чем проблема - с сайта ST ничего с российского ip не скачать, ВПН включать надо, тогда и ошибка уйдет.
-
Пишу_Видяхи, выложите пожалуйста полную таблицу соответствия пинов ESP32 38 pin с их назначением в GRBL для 3-х осевого фрезерного станка, с прошивки которого потом строят 2-х осевой гравер? Просто рассматриваю проекты, практически в каждом несовпадение. Под что плату то разводить?
И еще - есть какая то подробная статья, описывающая назначение выводов и типы сигналов, которые на них подаются/снимаются?
-
Надо в даташит глянуть. Переназначить в прошивке можно но не все пины, не все могут быть входами, не все выходы могут работать все время (например при старте должны быть в 1 или в 0. Надо разбираться. Домонтирую видео и подключусь.
-
Надо в даташит глянуть. Переназначить в прошивке можно но не все пины, не все могут быть входами, не все выходы могут работать все время (например при старте должны быть в 1 или в 0. Надо разбираться. Домонтирую видео и подключусь.
Не, я спрашиваю не о том, что и куда можно переназначить. А о другом - есть ли просто базовый, изначальный проект? В котором еще никто ничего не переназначал? Ну типа опорный какой то? И описание на него? (к примеру - вывод 22 используется для вывода такого то сигнала с таким то назначением, с такой то требуемой подтяжкой и т.д.)
---
И как то я уже спрашивал/писал - было бы интересно на базе 3-х осевого GRBL контроллера для фрезера сделать лазерный гравер с 3-мя осями передвижения, для маркировки разноуровневых деталей.
-
trolls, в прошивке есть папка Grbl>src>machines>3axis_v4
это на 3 оси, я использую 2, выглядит примерно так, только цифры другие, эти я под себя менял, но моя esp32 не дает после прошивки адрес подключения. Через ардуино прошит не смог, прошил через платформио в визуал студио коде.
мdefine MACHINE_NAME "ESP32_V4"
#define X_STEP_PIN GPIO_NUM_12//25
#define X_DIRECTION_PIN GPIO_NUM_14
#define Y_STEP_PIN GPIO_NUM_33//32
#define Y_DIRECTION_PIN GPIO_NUM_35//15
//#define Z_STEP_PIN GPIO_NUM_17
//#define Z_DIRECTION_PIN GPIO_NUM_33
-
TERECON, выводы в этом файле я изучал, спасибо.
Есть вопросы ко всем по назначениям выводов, я спрашивал их описание где то, ткните ссылкой или просветите, пжс. Красным отметил выводы, по которым не понятно, зеленым по которым, в принципе, понятно.
3V3 - это понятно, вывод напряжения 3v3 после встроенного в ESP32 стабилизатора. Можно, к примеру, запитать картридер.
5V - понятно, вход питания.
HOLD, START, RESET, DOOR, PROBE, FLOOD - какое точное назначение выводов, их логика работы, требуется ли подтяжка и т.д.
FLOOD - какое назначение, это вход или выход?
SPINDLE_EN - так понимаю, что при запуске работы на этом выводе единица для включения шпинделя (лазера) ?
MIST - назначение вывода, это вход или выход?
MOSI, MISO, SCK, CS - это понятно, вешаем на них картридер с подтяжкой к 3в3 5.1к-10к на каждый вывод.
X_LIMIT, Y_LIMIT, Z_LIMIT - входы концевиков, вопрос - входы толерантны к 5в или нет?
SPINDLE_PWM - управление TTL для шпинделя или лазера?
Возможно ли без особой крови перекинуть Y_DIR с вывода G15 на вывод SD2 или SD3 ?
И я так понимаю, для соблюдения кошерности управляющие выходы надо делать с уровнем 5в ? Например, SPINDLE_PWM, SPINDLE_EN и т.д. ?
Прибрасываю плату, у меня получается размер 100 мм х 65 мм, вариант с 3-мя драйверами. А потом не нужное можно не паять и заремить.
-
Пока отвечу, то , что знаю на вскидку.
SPINDLE_EN - так понимаю, что при запуске работы на этом выводе единица для включения шпинделя (лазера) ?
Разрешает работу шпинделя, например включает реле, подающее питание на шпиндель, если в станке регулирование оборотами не предусмотрено, то просто включает шпиндель на "всю катушку"
X_LIMIT, Y_LIMIT, Z_LIMIT - входы концевиков, вопрос - входы толерантны к 5в или нет?
с толерантностью не экспериментировал бы, народ говорит, что от 5 вольт иногда дохнет иногда нет, но чаще всего дохнет постепенно. я концевики питаю от 3,3 вольта, даже оптические работают исправно.
SPINDLE_PWM - управление TTL для шпинделя или лазера?
управление оборотами шпинделя, если он умеет, либо яркостью лазера. GRBL одной командой можно переключить с режима лазера на режим фрезера. разница в том, что прошивка не будет притормаживать при смене оборотов (яркости лазера) - эта задержка нужна, что бы шпинделю дать время раскрутиться или сбросить обороты.
И я так понимаю, для соблюдения кошерности управляющие выходы надо делать с уровнем 5в ? Например, SPINDLE_PWM, SPINDLE_EN и т.д. ?
-не обязательнр, там ттл логика, если выше половины напряжения питания то контроллер считает что 1, тут же 3,3 вольта на выходе, это выше, чем 2,5 вольта (половина от 5) проверял, работает, шаговики и лазер понимают команды. 5 вольт стоит использовать, если соединяющие провода будут длинные и тонкие, потери могут быть, тут сигнал жидкий.
я сейчас экспериментирую с с есп в форм факторе SOC. Им для запуска и работы нужно 1 внешнй резистор, - на сигнал EN (он же ресет, если там 0). на фото второй резистор ограничивает ток через светодиод.
-
провозившись полтора вечера в попытках скомпиллировать проект в ардуино я пошел в гугл. у многих проблема компиляции, и все ищут струю версию GRBL ESP32. полазив по справке на гитхабе я обнаружил то, что этот проект теперь называется по другому
The next generation of Grbl_ESP32 was such a massive upgrade we decided to change the name. It is called FluidNC and is available here. Please check it out and give us a star. It is compatible with all Grbl_ESP32 hardware.
.
и живет теперь вот здесь
https://github.com/bdring/FluidNC
Авторы отказались от ардуино иде (ура! хоть где то трезво мыслящие люди есть) и там же написали почему (как я их понимаю, я не смог скомпиллировать, потому, что вечная бида с версиями библиотек на ардуино, всегда не любил эту среду разработки, ну не упрощает она разработку, а усложняет.. как бы не ругали чистый си, там таких проблем не бывает)
Use VS Code & PlatformIO to Compile
VS Code $ PlatformIO is the only method we offer support for compiling. VS Code $ PlatformIO is the only method we offer support for compiling.VS Code $ PlatformIO is the only method we offer support for compiling. VS Code $ PlatformIO is the only method we offer support for compiling.
Используйте VS Code и PlatformIO для компиляции
VS Code $ PlatformIO — единственный метод, который мы предлагаем для поддержки компиляции. Это позволяет нам контролировать гораздо больше вещей, чем что-то вроде Arduino IDE. Нам нужно контролировать библиотеки и версии. Опытные пользователи могут использовать и другие методы, но не ждите подробной помощи.
Собралось все без проблем, но собирать прошивку необязательно, есть готовые прошивки на плату, (https://github.com/bdring/FluidNC/releases) а конфигурация делается скриптом и через их приложение грузится потом в плату, проект действительно сильно шагнул в перед. детально не разбирался с ним еще, но прошилось и запустилось, вайфай точка доступа появилась. На этом пока все на сегодня, в выходные буду уже проводить тесты и разбираться с конфигурацией, и тем как можно развести плату.
-
Ну плату я развел, схему отрисовал. Никаких переназначений выводов я не делал, все в оригинале. Навеяно было проектом https://github.com/bdring/Grbl_ESP32_Development_Controller и авторским проектом https://cnc-tex.ru/news/15/lazernyi-graver-na-esp32-proshivka-grbl_esp32.html
-
Проект мне все больше и больше нравится. Конфигурацию свою можно прописать в файл, а потом через веб интерфейс загрузить. Обновление так же через веб интерфейс возможно. один раз прошил и забыл, если что то перенастроить, файл подготовил, и через веб интерфейс закинул, все, плата работает по другому. ни тебе перекомпилировать, ни тебе программатор искать, подключать.
Справки по настройки файла конфигурации нет, но есть куча примеров и готовых конфигов, где все понятно, авторы так и пишут - возьмите пример и правте там. вот как настраивается например шаговик по Х
x:
steps_per_mm: 800
max_rate_mm_per_min: 2000
acceleration_mm_per_sec2: 25
max_travel_mm: 1000
homing:
cycle: 2
mpos_mm: 10
positive_direction: false
motor0:
limit_all_pin: gpio.17:low:pu
stepstick:
direction_pin: gpio.14
step_pin: gpio.12
или настройка внешних интерфейсов
spi:
miso_pin: gpio.19
mosi_pin: gpio.23
sck_pin: gpio.18
sdcard:
cs_pin: gpio.5
card_detect_pin: NO_PIN
coolant:
flood_pin: gpio.25
mist_pin: gpio.21
Так же можно и кинематику заменить:
kinematics:
corexy:
-
ну плату я прибросил, схему отрисовал. но практически все вопросы, которые я задавал, остались неотвеченными. Никаких переназначений выводов я не делал, все оригинально. Навеяно было проектом https://github.com/bdring/Grbl_ESP32_Development_Controller и авторским проектом https://cnc-tex.ru/news/15/lazernyi-graver-na-esp32-proshivka-grbl_esp32.html
Надо будет посмотреть и проверить. Так же конфигурацию под плату накидать. С прошивкой и настройкой теперь справится даже домохозяйка... если в массы пойдет.
-
Вот спрошу еще раз: где есть описание проекта с распиновками выводов, какие сигналы на них приходят или выходят с них, для чего они предназначаются, логика их работы и все прочее.
Кстати, плата получилась размерами 100 х 65 мм. Но плотненькая, картинки я выложил.
Там я несколько расширил входные и выходные цепи, в крайнем случае можно все не запаивать.
А что проверять? Ошибок нет, сам несколько раз проверял. Распиновка выводов сделана с ориг. файла 3axis_v4.h
-
Если с авторской, то работать будет.
Народ и 5 осевые ваяет.
https://forum.v1engineering.com/t/esp32-based-grbl-cnc-control-board/8555/11
-
Из приятного - на плате можно хранить несколько конфигураций, под разные задачи, под граверовку, под фрезеровку и под лазер, прошивать ничего не надо, в веб панели просто переключается конфигурация и все, все настройки новые, например ускорения для лазера и фрезеровки разные, скорости максимальные тоже, разные настройки пинов для подключения оборудования и т.д. просто переключается файл конфигурации и все - считай новая плата. для понимания удобства - в 3д принтере для этого требуется пересобирать прошивку и перезагружать через программатор. тут же просто переключается заранее загруженный файл с конфигурацией и все!
GRBL для домохозяек на максималках и для домохозяек!
И в отличии от классического GRBL можно подключить дисплей, на котором выводится дополнительная информация, например положение осей...
-
Из приятного - на плате можно хранить несколько конфигураций, под разные задачи, под граверовку, под фрезеровку и под лазер, прошивать ничего не надо, в веб панели просто переключается конфигурация и все, все настройки новые, например ускорения для лазера и фрезеровки разные, скорости максимальные тоже, разные настройки пинов для подключения оборудования и т.д. просто переключается файл конфигурации и все - считай новая плата. для понимания удобства - в 3д принтере для этого требуется пересобирать прошивку и перезагружать через программатор. тут же просто переключается заранее загруженный файл с конфигурацией и все!
GRBL для домохозяек на максималках и для домохозяек!
И в отличии от классического GRBL можно подключить дисплей, на котором выводится дополнительная информация, например положение осей...
Это все просто шикарно)) Но у людей есть разные направленности, к примеру, софтовая и железячная. Я по железу. Подскажи пожалуйста, где получить ответы на мои вопросы еще с предыдущей страницы?
-
TERECON, выводы в этом файле я изучал, спасибо.
Есть вопросы ко всем по назначениям выводов, я спрашивал их описание где то, ткните ссылкой или просветите, пжс. Красным отметил выводы, по которым не понятно, зеленым по которым, в принципе, понятно.
HOLD, START, RESET, DOOR, PROBE, FLOOD - какое точное назначение выводов, их логика работы, требуется ли подтяжка и т.д.
Как настроить так и будет.
$5 — Инверсия входов концевых выключателей, логический
По умолчанию входы, к которым подключаются концевые выключатели подтянуты через резистор к + шины питания платы, и на них высокий уровень. $5=1 $5=0
$6 — Инверсия входа контактного датчика, логический
По умолчанию контроллер настроен на нормально разомкнутый концевой выключатель, который при срабатывании замкнет вход на землю.
$6=1 $6=0
FLOOD - какое назначение, это вход или выход?
Насколько я понимаю, то это сигнал включения СОЖ для охлаждения детали.
MIST - назначение вывода, это вход или выход?
не могу прокомментировать, сам не знаю
-
Спасибо. А интересно, сколько по 5в этот модуль потребляет при работе вайфая и обработке программы?
---
вывод MIST - порывшись в аналогиях, предполагаю что это вывод включения пылеуловителя/фильтра. Блин, где во внятной форме есть описание выводов - входов проекта????????????
-
А в проектах GRBL ESP32 / FluidNC есть управление драйверами через UART ? К примеру, если на этой платке развести возможность управления драйверами через UART, к каким ножкам ESP32 вести линии? У нее, вроде, аж три порта RX/TX.
-
А в проектах GRBL ESP32 / FluidNC есть управление драйверами через UART ? К примеру, если на этой платке развести возможность управления драйверами через UART, к каким ножкам ESP32 вести линии? У нее, вроде, аж три порта RX/TX.
Судя по тому, что для сборки GRBL требовалось устанавливать библиотеки под драйвера с управлением по UART, то оно управлять ими умеет. В файле конфигурации можно прописать к каким выводам, что подключено, и думаю номер порта (порядковый номер UART) указать можно. С такими драйверами я не работал, посмотрю что к чему, что бы не вводить кого то в заблуждение.
-
Хорошо... А есть еще вопрос - в проекте GRBL ESP32 данные о назначении выводов содержатся в файле 3axis_v4 (это применительно к 3-х осевому). А в проекте FluidNC где содержится назначение выводов?
(обновил файлы по разводке и схеме).
-
3axis_v4.yaml
так он выглядит
https://github.com/bdring/FluidNC/blob/main/example_configs/3axis_v4.yaml
-
Приехали платки для гравера. размкр 5х5см.