baritono 0 13 апреля, 2021 Опубликовано 13 апреля, 2021 · Жалоба Сделал прототип специализированного ЧПУ-станка на Ардуине Мега. Всё бы ничего, но проц подтормаживает. Запаздывает управление несколькими шаговиками на приличной скорости и микрошаге, реакция на датчики. И это ещё прототип, на рабочем варианте скорости будут выше. Подскажите, на какой "взрослый" микроконтроллер лучше заменить? По периферии ничего особенного не надо, кроме GPIO ничего не используется, максмум будет I2C. Главное - скорость проца и минимум гемора с разработкой под Линкусом из командной строки. Загрузка-отладка через UART, без проприетарных IDE и тому подобного. Смотрю на STM32 и платы на его основе - правильно? Ещё смотрю платы вроде Raspberry Pi (лежат несколько без дела разных видов), но не охота возиться с Линкусом на станке, нравится простота работы с микроконтроллером. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Stepanov 9 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба Для начала, что есть "приличная" и "не приличная" скорость, сколько шагов в секунду? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrBearManul 0 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба В своё время работал в подобном направлении. Я бы посоветовал вам связаться с промышленным электроприводом. Тот же Siemens, ABB и т.п. Если вопрос коммерческий, то проще купить. Разработка привода будет дороже. 3 часа назад, baritono сказал: Подскажите, на какой "взрослый" микроконтроллер лучше заменить? Для начала сформируйте все требования, которые "взрослый" микроконтроллер должен окучить. Вы один МК хотите нагрузить тремя (или сколькими?) осями + интерфейс пользователя + ещё что? 3 часа назад, baritono сказал: возиться с Линкусом на станке Он уместен для графического интерфейса пользователя. Для управления приводами в реальном времени он мне видится скептически. Тут лучше взять bare-metal. 3 часа назад, baritono сказал: Смотрю на STM32 и платы на его основе - правильно? Смотрите на те МК, которые обеспечат вас нужной периферией в первую очередь. Например, если для обратной связи у вас используется квадратурный энкодер, то и МК нужно выбирать с таким аппаратным входом и таймером, который вам аппаратно посчитает расстояние, скорость, ускорение. Связь по току планируете? Если да, то нужно выбирать МК с АЦП с нужной разрядностью, скоростью преобразования и т.п. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
baritono 0 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба Для начала, что есть "приличная" и "не приличная" скорость, сколько шагов в секунду? Шаговики сейчас работают в режиме 1600 шагов на оборот, один из них на максимальной скорости (до 2000 об/мин). То есть, более 50 тыс. шагов (там ещё понижающий редуктор стоит). Есть желание заменить этот быстрый на сервопривод, которому не нужны будут шаги, но это пока только желание. Например, если для обратной связи у вас используется квадратурный энкодер, то и МК нужно выбирать с таким аппаратным входом и таймером, который вам аппаратно посчитает расстояние, скорость, ускорение. Связь по току планируете? Если да, то нужно выбирать МК с АЦП с нужной разрядностью, скоростью преобразования и т.п. Эти функции лежат на драйверах двигателей. Ток, может быть, будет нужно мерять, но чисто порогово - обнаружить близость к предельному. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 2 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба Рекомендую попробовать, например, STM32F072: у него достаточно таймеров, чтобы одновременно работать с тремя шаговыми двигателями (три таймера на генерирование сигналов STEP и три таймера на прием данных от инкрементальных энкодеров). Сам собираюсь управление одной штукой на этом МК сделать. Другой недорогой вариант — STM32F303, но там уже кортекс-М4 со всеми вытекающими… Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 143 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба 5 часов назад, baritono сказал: Смотрю на STM32 и платы на его основе - правильно? Вчера было правильно, сегодня - только если вы делаете изделие в единичном экземпляре. Тогда можно купить у китайцев одну-две BluePill на STM32F103 и строить вокруг нее. Если же изделие хоть сколько-нибудь серийное - с поставками STM32 сейчас полный швах. Лучше сразу закладываться на чистокровного китайца GD32, с ними вроде как проблем поставок не наблюдается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrBearManul 0 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба 2 часа назад, baritono сказал: Эти функции лежат на драйверах двигателей. Что вы ещё скрываете от нас, мистер? По каким критериям мы должны угадывать вам подходящую модель "взрослого проца"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба - Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 14 апреля, 2021 Опубликовано 14 апреля, 2021 (изменено) · Жалоба 35 минут назад, AlexandrY сказал: Специально для таких приложений как ваше был сделан Raspberry Pi RP2040 Угу, заложится под нишевое нераспространенное и полудокументированное железо - это супер! По сути STM или LPC(NXP) - будет правильным выбором, ИМХО. 7 часов назад, baritono сказал: Ещё смотрю платы вроде Raspberry Pi (лежат несколько без дела разных видов), но не охота возиться с Линкусом на станке Если не охота, то и не надо, тем более, что под мегу уже осилили. Под линем есть что-то вроде LinuxCNC, если только его допиливать... Изменено 14 апреля, 2021 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба - Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 14 апреля, 2021 Опубликовано 14 апреля, 2021 (изменено) · Жалоба 6 минут назад, AlexandrY сказал: С STM32 пришлось бы метаться по всем углам пытаясь составить целостную картину. И что я там увидел? Гайд по написанию хелло ворд? Поделье типа куба, так и на СТМ на нем без проблем хелло ворд написать... Изменено 14 апреля, 2021 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 2 14 апреля, 2021 Опубликовано 14 апреля, 2021 (изменено) · Жалоба 1 hour ago, AlexandrY said: В STM32 вы не получите такого жесткого детерминизма временных диаграм переключения пинов как в Pi RP2040 Ну и чушь! Это ж как, интересно, в линуксе получить "жесткий детерминизм", если он вообще не ртось ни разу? И не надо про кубы тут расписывать: с STM32 элементарно можно работать без всякой дряни. Другое дело, что, как правильно заметил Сергей, сейчас проблемы с поставками МК (в результате цены загнули в 6..10 раз: если год назад я брал STM32F072CBT6 по 60-70 рублей за штучку, то сейчас за них 400-500 просят!). Изменено 14 апреля, 2021 пользователем Eddy_Em Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
baritono 0 14 апреля, 2021 Опубликовано 14 апреля, 2021 (изменено) · Жалоба А почему не STM32H7, он вроде мощнее? Таймеры - штука хорошая, но в Ардуине я вполне обошёлся, эмулируя их софтово. Рекомендую попробовать, например, STM32F072: у него достаточно таймеров, чтобы одновременно работать с тремя шаговыми двигателями (три таймера на генерирование сигналов STEP и три таймера на прием данных от инкрементальных энкодеров). А почему не STM32H7, он вроде мощнее? Таймеры - штука хорошая, но в Ардуине я вполне обошёлся, эмулируя их софтово. Вчера было правильно, сегодня - только если вы делаете изделие в единичном экземпляре. Тогда можно купить у китайцев одну-две BluePill на STM32F103 и строить вокруг нее. Если же изделие хоть сколько-нибудь серийное - с поставками STM32 сейчас полный швах. Лучше сразу закладываться на чистокровного китайца GD32, с ними вроде как проблем поставок не наблюдается. Девайс только для себя, максимум несколько штук. И не хотелось бы вкладываться в изучение сравнительно малоиспользуемой платформы. STM32 Nucleo вроде есть в продаже, даже в магазинах в Москве. Или это мы остатки доедаем? Миландровские МК сильно хуже китайских?Вот на такие, например, устройства с STM32 смотрю: https://www.chipdip.ru/product/nucleo-h743zi2 Изменено 14 апреля, 2021 пользователем baritono глюк Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
baritono 0 14 апреля, 2021 Опубликовано 14 апреля, 2021 (изменено) · Жалоба В STM32 вы не получите такого жесткого детерминизма временных диаграм переключения пинов как в Pi RP2040 У Pi RP2040 есть специальный движок для скоростного управления пинами с единичным тактом, такое никакие STM32 не могут. А если нужна многозадачность, то просто сможете использовать два ядра. Ну и главное, у Pi RP2040 все сделано чтобы без проблем программировать его из командной строки. Вкусно всё это выглядит. Но тактовая в 3 с лишним раза ниже, чем у STM32H7, несколько смущает. Как и отсутствие аппаратной плавающей точки. В целом устройство оставляет впечатление варианта "для бедных". Меня цена, в общем, не волнует, продукт не серийный. Изменено 14 апреля, 2021 пользователем baritono Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 14 апреля, 2021 Опубликовано 14 апреля, 2021 · Жалоба 17 минут назад, baritono сказал: Вкусно всё это выглядит. Но тактовая в 3 с лишним раза ниже, чем у STM32H7, несколько смущает. Вы же Ардуине замену ищете. Эта RP2040 заткнёт за пояс десяток Ардуин. Самое подходящее решение для вас. И модно-популярное. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться