Плата для управления севро двигателями через EMC2

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Impartial писал(а): Выбирайте самую дешевую в корпусе LQFP. Подойдут также все EPM570T100xx. В них ножек меньше (100) проще будет разводить.
Если схему сделаете в ORCAD то помогу с коррекцией
Как ни странно но 144 вывода выходят дешевле. Ссылка где буду брать http://imrad.kiev.ua/search.shtml?qs=EPM570T&query=any
На чем остановимся? Корпуса у всех TQFP, и пока это не проблема, печатку разведу и из домашних технологий даже ЛУТ позволяет работать с этим корпусом (проверял :) )
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

Предлагаю остановиться на EPM570T144C5N.
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Наконец то приехали ПЛИСы и переходные платы для удобства в работе. Вот теперь можно и схемку рисовать ... за одно и с ORCAD разберусь... всё руки не доходили, в других прогах работаю.
130920112130.jpg (3241 просмотр) <a class='original' href='./download/file.php?id=2127&mode=view' target=_blank>Загрузить оригинал (707.04 КБ)</a>
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

Предлагаю схему для начала.
Критика и дополнения приветствуются :)
SCHEMATIC1 _ PAGE1.pdf
Схема в PDF формате
(33.33 КБ) 840 скачиваний
Непонятно почему расширение .dsn запрещено модератором.
Поэтому файл для ОРКАДА выкладываю c расширением .PDF.
Расширение должно быть .dsn
MAX2PLUTO.pdf
Оригинальное имя файла MAX2PLUTO.DSN Файл ORCAD CAPTURE
(85.5 КБ) 657 скачиваний
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Nick »

Impartial писал(а):Непонятно почему расширение .dsn запрещено модератором.
Потому, что запрещено все, что не разрешено, чтобы ненароком не распространять вирусы ;). Теперь dsn разрешено.

ЗЫ Если какое-то расширение запрещено, то просто делай архив (zip,rar,tar,tar.gz ......) и присоединяй его.
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Impartial писал(а):Предлагаю схему для начала.
Критика и дополнения приветствуются :)
Большое СПАСИБО! Тяжеловато осваивать ОРКАД и одновременно работу работать... Но вроде начал разбираться.
Тогда сразу вопрос - У нас выходит 4 оси? Как я вижу 4 выхода вверх и 4 вниз (я понимаю что два мотора будут токать стол или возить портал вперед/назад и по одному мотору вправо/влево и вверх/вниз ), входов энкодера - 3 блока по 4 входа. Каждому типу сигналов с энкодеров свой блок со своим названием. Далее - концевики позиции HOME по 3 осям 3шт и один общий сигнал E-STOP, на который можно повесить и концевики лимитов по трем осям. Всего у нас выходит 4 цифровых входа. Еще 4 входа мы заберем для сигналов датчиков тока на каждом моторе (каждому мотору свой компаратор тока и на выходе готовый лог 1 при превышении тока выделенного мотору, будь то наезд оси или клин механики). Выходит что всё.... входа кончились. А я уже задумался на самодельный Ренишоу (в ветке по измерению длины инструмента подробно рассказали), и коль пошла такая пьянка - тот требует еще один цифровой вход.
Вообщем я тут немного покроил схемку, выкладываю. Может чего не так соорудил, не серчайте!
MAX2PLUTO.DSN
(85.5 КБ) 694 скачивания
Тут у нас и входов должно хватить и выхода как я понял на реле или еще по потребностям можно повесить. А так вроде бы как ОНО...

ЗЫ - как я понимаю, через один из цифровых выходов можно будет управлять скоростью шпинделя?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Nick »

Klim_1 писал(а):входов энкодера - 3 блока по 4 входа
А на энкодер разве трех входов не хватит? Фаза А, фаза В и индекс.
Кстати, если использовать концевики, то индекс тоже не нужен.

Под ренишоу можно отдельный вход не делать, запихать его на какой-нибудь из концевиков. После выставления осей концевики не особо нужны.
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Nick писал(а):
Klim_1 писал(а):входов энкодера - 3 блока по 4 входа
А на энкодер разве трех входов не хватит? Фаза А, фаза В и индекс.
Кстати, если использовать концевики, то индекс тоже не нужен.

Под ренишоу можно отдельный вход не делать, запихать его на какой-нибудь из концевиков. После выставления осей концевики не особо нужны.
Ну смотри 4 мотора, в каждом сигналы А, B, Z. Итого 12 выводов, всё верно! Не факт что будем пользовать все 4 мотора, но по закону жанра может же стоять 2 мотора двигать стол вперед/назад.
Ну концевики будут индуктивные, и я переживаю за их точность, потому как буду делать их сам для наглядности (наверно). А индекс даст точность :)
А ренишоу - да пусть будет! Как опция, стоять где нить в уголке для калибровки инструмента. Если входов у нас на ПЛИС за глаза, чего переживать? Пусть будет :)
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Nick »

Klim_1 писал(а): Если входов у нас на ПЛИС за глаза, чего переживать?
Упс, я видать упустил, что входы свободные есть. Я то думал, что наоборот нехватка по входам.

Тогда еще обязательно нужен EStop, СОЖ и выход на реле шпинделя, плюс еще можно реле на пылесос и что-нибудь еще :).
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

Если входов у нас на ПЛИС за глаза, чего переживать? Пусть будет
В данном случае назначение входов определяется не возможностями CPLD а характеристиками драйвера ПЛУТО из ЕМС.
Эти характеристики я приводил в посте №6.
Правда там не совсем понятно так как движок сайта безжалостно, и по одному ему известному закону выбрасывает все символы форматирования из текста.
Еще одно ограничение, правда менее существенное, это скорость обмена через LPT порт.
За один цикл обмена драйвер ПЛУТО передает в плату 10 байт, а принимает 20. Этот трафик можно поднять в два раза, соответственно расширив возможности платы, но это связано со значительной переделкой драйвера и HAL настроек. Стоит ли это делать каждый решает индивидуально :)
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Impartial писал(а):
Если входов у нас на ПЛИС за глаза, чего переживать? Пусть будет
В данном случае назначение входов определяется не возможностями CPLD а характеристиками драйвера ПЛУТО из ЕМС.
Эти характеристики я приводил в посте №6.
Правда там не совсем понятно так как движок сайта безжалостно, и по одному ему известному закону выбрасывает все символы форматирования из текста.
Еще одно ограничение, правда менее существенное, это скорость обмена через LPT порт.
За один цикл обмена драйвер ПЛУТО передает в плату 10 байт, а принимает 20. Этот трафик можно поднять в два раза, соответственно расширив возможности платы, но это связано со значительной переделкой драйвера и HAL настроек. Стоит ли это делать каждый решает индивидуально :)
Ну так глубоко зарываться я думаю что не стоит... и надеюсь для той схемки что я перекроил - нам хватит 10/20 байт? А если что нужно взрослее - тогда уже меса и им подобные платы расширения.
Схема жизнеспособна?
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

Klim_1 писал(а):Схема жизнеспособна?
Да, при условии 8 дискретных входов и 10 дискретных выходов, по указанным выше причинам.
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Impartial писал(а):
Klim_1 писал(а):Схема жизнеспособна?
Да, при условии 8 дискретных входов и 10 дискретных выходов, по указанным выше причинам.
ОК, восемь - так восемь! Тогда сделаем 3 входа датчиков тока (одна ось будет ведь двумя моторами ходить при желании, можно запараллелить 2 сигнала), 3 датчика позиции HOME и один вход для лимитов по всем осям и иже с ними ESTOP, и один вход остается для Ренишоу. Как раз вписываемся в 8 входов.
Так пойдет?
MAX2PLUTO_2.DSN
(85.5 КБ) 625 скачиваний
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

Входы датчиков тока не считаются в те 8 входов.
Их можно отдельно на любые пустые пины завести и добавить для них отдельный разъем.
Обработка датчиков тока происходит аппаратно без участия ЕМС.
При срабатывании компаратора будет просто выключаться ключ, не зависимо от текущего параметра ШИМ, и выставлять бит ошибки драйвера для ЕМС.
Входы энкодеров и выхода управления ключами может лучше разбить по каналам на выходном разъеме?
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Impartial писал(а):Входы датчиков тока не считаются в те 8 входов.
Их можно отдельно на любые пустые пины завести и добавить для них отдельный разъем.
.......
Входы энкодеров и выхода управления ключами может лучше разбить по каналам на выходном разъеме?
Сказано - сделано :) Добавил входа компараторов для обработки датчиков тока и разбил по каналам.
Так будет хорошо?
MAX2PLUTO_3.DSN
(88 КБ) 589 скачиваний
Я вот только не понял: что значит - разбить по каналам на выходном разъеме? Имеется в виду разбить входа энкодеров и выхода управления группами, для каждого мотора своя группа и таких групп 4 шт? Можно и так... я подумываю разделить оптикой выхода на силовые ключи (поставить оптодрайвера), дабы 100% уйти от помех при искрении щеток на моторах. Да и модуль получиться универсальный, какой мотор хочешь - такой и ставь, мозг одинаков будет.

PS - если поставить плату второго ЛПТ порта и повесить туда еще 8 входов и 10 выходов - это вообще взрослый станок выйдет?
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

для каждого мотора своя группа и таких групп 4 шт?
Да, я это имел в виду. Вообще все назначения пинам сигналов преследуют, в данном случае, только одну цель - удобство трассировки.
PS - если поставить плату второго ЛПТ порта и повесить туда еще 8 входов и 10 выходов - это вообще взрослый станок выйдет?
Намного проще дописать 5 строк на С в драйвере и строк 10 на Верилоге в HDL описании контроллера. :)
Мне кажется, что необходимо вывести все свободные ноги на разъемы.
Тем более, что простой сменой прошивки из платы можно сделать контроллер шагового двигателя, либо комбинацию шаговых и серво.
Сказано - сделано Добавил входа компараторов для обработки датчиков тока и разбил по каналам.
Так будет хорошо?
Нормально. Делать под эту схему прошивку?
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Impartial писал(а): Мне кажется, что необходимо вывести все свободные ноги на разъемы.
Тем более, что простой сменой прошивки из платы можно сделать контроллер шагового двигателя, либо комбинацию шаговых и серво.
Нормально. Делать под эту схему прошивку?
Тогда перерисую по группам на 4 мотора и выведу свободные пины на выход, насколько получиться.
Все порты выводить? Или десятка 2 хватит? И еще вопрос - может добавить буззер на Ренишоу (пусть попискивает при касании) и обрабатывать Ренишоу аппаратно в ПЛИС, а на порт ЛПТ выдавать флаг? Или не стоит и посадить Ренишоу на один из свободных логических входов?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Nick »

Klim_1 писал(а):И еще вопрос - может добавить буззер на Ренишоу (пусть попискивает при касании) и обрабатывать Ренишоу аппаратно в ПЛИС, а на порт ЛПТ выдавать флаг? Или не стоит и посадить Ренишоу на один из свободных логических входов?
Бузер это хорошо, только нужно, учесть нормально замкнутые и нормально открытые датчики, чтобы не пищать постоянно.
А что ты хочешь аппаратно обрабатывать в ПЛИС? Тебе все равно придется в EMC2 выдавать сигнал о срабатывании пробы, чтобы emc2 засек ее координаты.
Аватара пользователя
Klim_1
Опытный
Сообщения: 169
Зарегистрирован: 30 авг 2011, 10:13
Репутация: 0
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Klim_1 »

Nick писал(а): Бузер это хорошо, только нужно, учесть нормально замкнутые и нормально открытые датчики, чтобы не пищать постоянно.
А что ты хочешь аппаратно обрабатывать в ПЛИС? Тебе все равно придется в EMC2 выдавать сигнал о срабатывании пробы, чтобы emc2 засек ее координаты.
Я за то что бы при касании ПЛИС сама остановила транзисторы драйверов до выдав при этом флаг в ЛПТ порт, и пусть себе EМС привязывает координаты по флагу, а когда даст команду на движение в противоположную сторону - тогда транзисторы и отпускать. Хотя я понятия не имею - можно так али нет, или может это у меня что-то с фантазией....
Жду ответа от гуру :)
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

Понял наконец о чем идет речь при упоминании о ренишоу :)
Я делал такую разработку, но называлась она иначе.
Принцип такой.
В качестве датчика используется датчик с ювелирных весов. Сигнал с тензодатчика цифруется АЦП и используется в качестве входного параметра контурного ПИД регулятора реализованного с помощью ХАЛа ЕМС.
Да, сигнал с АЦП нужно обработать ПЛИС и выдать в ЕМС.
Ответить

Вернуться в «LinuxCNC»