|
На чем лучше организовать 180 IO |
|
|
|
Sep 18 2012, 08:43
|
вопрошающий
    
Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436

|
Всем привет, хочу двигать 10-12 моторами (скорее всего степ моторами) с обратной связью через оптоэнкодер и концевиками, посылая команды из линукс копьютера. На мотор нужно 11 дигитальных выходных ножек, 5 дигитальных входных и 2 аналоговые ноги. Стою перед выбором, на чем это все организовать, вижу четыре варианта: 1. поставить на каждый мотор atmega328p (там как раз 18 свободных ног в дип корпусе, не считаю ком порта) а ком порт воткнуть в mega2560. В самой Arduino mega2560 есть только 4 свободных ком порта, остальные 8 проэмулировать на софтверном уровне. 2. поставить три плиски типа Terasic DE0, у каждой из которых есть 66 дигитальных и 12 аналоговых портов, соединить их между собой, а какой-нибудь интерфейс с плиски вывести на FTDI и на комп. 3. поставить 3 штуки Arduino mega2560, к каждой подключить по 4 мотора, выходы каждой из них воткнуть в USB линукс компьютера, 4. купить что-то, что бы имело 24 аналоговых и 192 дигитальные ножки, и могло бы ими очень ассинхронно дрыгать, типа какой-то правильной плисоборды. Недостаток варианта 1 - моторы могут разползтись во время работы, что не есть хорошо + проблемы по организации 12 ком портов с Arduino mega2560. Недостаток варианта 2 - не очень тривиально все это запрограммировать, хотя, думаю, я бы смог бы, Недостаток варианта 3 - может не хватить ресурсов Arduino mega2560 чтобы организовать все необходимые обработки ввода вывода на моторы, Недостаток варианта 4 - не знаю что бы это могло быть  Посоветуйте, пожалуйста, к чему склоняться, что выбрать, возможно есть еще более разумные варианты? Хочется быстро, не очень дорого, и, по возможности, без паяния плат с плисками и цплд, и без бга корпусов. Спасибо ИИВ
|
|
|
|
|
 |
Ответов
|
Sep 18 2012, 14:23
|
вопрошающий
    
Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436

|
Цитата(attache @ Sep 18 2012, 16:30)  А зачем СОМ порты? Можно объеденить через SPI. Если будут применяться относительные энкодеры, то желательно применять ПЛИС. SPI ножек много съест, так как надо и туда и обратно данные таскать, хотелось для этого решения остаться в дип28 корпусе, да и замахаюсь синхронизовать все через одну шину. У ком порта свои недостатки  Правильно я понимаю, что из-за дребезга контактов и скорости надо плиску брать? В моем случае я планирую иметь только 20-30кГц с оптоэнкодера, что, по идее, не так много даже для дохлых атмег на уровне прерывания. С логикой - в принципе это идейно, спасибо за идею, VCO! Тогда можно сильно сожмотить число ног и воткнуть все в одну плиску, которой уже управлять как единым целым.
|
|
|
|
|
Sep 18 2012, 15:25
|

Знающий
   
Группа: Свой
Сообщений: 531
Регистрация: 1-02-05
Из: Украина, Киев
Пользователь №: 2 342

|
На сколько надежным должно быть управление этими 10-12 моторами? Какова цена ошибки управления? ... что будет если пропустим шаг 1 мотора? ... или не вовремя сделаем шаг? Синхронность шагания? Какая скорость шагания? Какой режим планируется использовать , шаг, микрошаг? Для "шагового" кодера двигателя достаточно 1 счетчика и диодного шифратора, это если сильно экономить Обработчик энкодера - тоже вполне строится на логике, хотя есть и готовые микросхемы со счетчиками внутри. От компа с линухом вполне может хватить 1 шт. КОМ порта в режиме 485, и каждый мотор на чем нибудь вроде ModBus. Программно будет проще и меньше писать. Модбас - протокол верхнего уровня, можно передавать как "1 шаг " конкретному мотору, так и макросы, или тот же G-code. "20-30кГц с оптоэнкодера" Мега может не успеть делать остальную задачу, опто энкодеры обычно на моного шагов расчитаны, и мега завязнет в математике, дребезг опять же... SPI - тоже не фонтан ... либо веер строит (10 chip select) либо проходную шину строить, если 1 мотор не успел, занят, отвалился - время затянется на восстановлении и коррекции ошибок. В общем мало данных по задаче ... может прийти модератор и отправить читаь "Гайку М3"
|
|
|
|
|
Sep 18 2012, 16:19
|
вопрошающий
    
Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436

|
Цитата(izerg @ Sep 18 2012, 20:25)  На сколько надежным должно быть управление этими 10-12 моторами? Какова цена ошибки управления? ... что будет если пропустим шаг 1 мотора? ... или не вовремя сделаем шаг? Синхронность шагания? Какая скорость шагания? Какой режим планируется использовать , шаг, микрошаг? система должна быть надежной и, если пропустили шаг, надо исправляться. Ситуация в том, что иногда некоторые (до 4-х) осей должны двигаться полностью параллельно или синхронно но с разной скоростью, а иногда - нет. Скорость должна быть до 40об/сек, точность позиционирования 1.8градуса. Оптоэнкодер, который я присмотрел HEDM-5540-H06 имеет три выхода и точность 0.9градуса. В принципе есть желание по возможности переходить на микростеп, но, не факт, что это желание будет всегда. По умолчанию мне нужна точность 3.6градуса, которая реализуется без микростепа. Почему 11 выходов: 8 на два полных моста, 1 на реле, выключающее питание одной пары полного моста, 2 на управление датчика Холла (можно 1), которым мониторить ток, идущий на мотор - для проверки не перегрелся ли мотор, и не сдохли ли мосфеты. Сдыхание мотора и/или мосфета может тут же потянуть на большие последствия. Почему 2 аналоговых входа: опорное напряжение, и выход с датчика Холла, почему 5 входов: 3 сигнала с енкодера, 2 сигнала с концевиков. А, да, забыл сказать, моторы Nema 42 c 23нм моментом, как я понял их правильнее питать от выпрямленного сетевого. Управление всего - не Г-код, а нечно, на лету вычисляемое самопально сделанным софтом. То есть реально могу сам подстроиться под команды и хоть длину пульса посылать, хоть коэффициенты сплайна на приращение сдвига. EDIT: концевики планировал использовать в качестве градуировки и самонастройки, поэтому их всех запараллелить вроде бы нельзя. Оси по полтора метра. Цитата(_pv @ Sep 18 2012, 20:09)  может я ошибаюсь, но под мой мотор только один такой драйвер 180 бакс будет стоить и тут-то как раз хотелось бы сожмотить, так как два полных моста я могу с бюджетом в 30 бакс построить.
|
|
|
|
|
Sep 18 2012, 19:30
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(iiv @ Sep 18 2012, 22:19)  может я ошибаюсь, но под мой мотор только один такой драйвер 180 бакс будет стоить и тут-то как раз хотелось бы сожмотить, так как два полных моста я могу с бюджетом в 30 бакс построить. ну телепат из меня хреновый, то что нужны драйвера ампер на 8-10 как-то не догадался. тем не менее я бы всё равно поискал сначала готовые драйвера. там есть и более могучие http://www.aliexpress.com/item/Freeshippin.../483624595.html уже 6.5А, но напряжения не те, а вот это уже ближе http://www.aliexpress.com/item/3-Axis-Cnc-.../475286543.html, 8A, 80V, 70$ т.е. дешевле 100$ вполне найти можно, хотя если считаете что такая разработка будет стоить дешевле 12*(100 - 30) = $840, остаётся только пожелать удачи.
|
|
|
|
|
Sep 18 2012, 22:38
|
вопрошающий
    
Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436

|
Цитата(_pv @ Sep 19 2012, 01:30)  ну телепат из меня хреновый, то что нужны драйвера ампер на 8-10 как-то не догадался. да, как-то упустил об этом сразу сказать, простите, пожалуйста! А также не сказал, что полномостовые схемы готовые для ВВ трансформаторов у меня тоже есть и до 500-700кГц функционирующие и с бюджетом в 20-30 бакс за комплектующие. Для более низких частот можно немного сожмотить на драйверах мосфетов так, что два полных моста выйдут мне в 30 бакс по компонентам. Не спорю, с енкодерами и оптодатчиками концевиков не работал, но, так как их нет в обычных драйверах, всяко в них надо будет разбираться. Похоже вырисовывется гибрид: управлять мостами через атмеги по процессору на мотор, энкодеры и концевики все воткнуть в плиску (типа Терасика ДЕ0), а всякие остальные свистелки - датчики тока, реле итд - в atmega2560. Последняя будет рассылать атмегам по параллельному SPI сколько и куда надо двинуться, а с терасика получать инфу куда что уже заехало.
|
|
|
|
Сообщений в этой теме
iiv На чем лучше организовать 180 IO Sep 18 2012, 08:43      Timmy Вы пищете про 40об/сек - это правда, с минутами не... Sep 20 2012, 16:05       iiv Цитата(Timmy @ Sep 20 2012, 21:05) Вы пищ... Sep 21 2012, 07:35        Timmy Цитата(iiv @ Sep 21 2012, 11:35) 1. иметь... Sep 21 2012, 15:21         alexPec Цитата(Timmy @ Sep 21 2012, 19:21) Повтор... Sep 21 2012, 18:20         iiv Цитата(Timmy @ Sep 21 2012, 21:21) Повтор... Sep 23 2012, 09:07          alexPec Цитата(iiv @ Sep 23 2012, 13:07) вот тут ... Sep 23 2012, 19:47           iiv Цитата(alexPec @ Sep 24 2012, 01:47) Как ... Sep 23 2012, 20:58            Timmy Допустимая частота ШИМа не имеет прямой связи с ма... Sep 25 2012, 19:50      alexPec Цитата(iiv @ Sep 19 2012, 02:38) Похоже в... Sep 21 2012, 08:34       iosifk Цитата(alexPec @ Sep 21 2012, 12:34) ... ... Sep 21 2012, 09:15        alexPec Цитата(iosifk @ Sep 21 2012, 13:15) Но и ... Sep 21 2012, 11:31    _Pasha Цитата(iiv @ Sep 18 2012, 19:19) 1 на рел... Sep 21 2012, 11:45 VCO Цитата(iiv @ Sep 18 2012, 11:43) Посовету... Sep 18 2012, 12:13 _pv что-то много ног получается на каждый двигатель ос... Sep 18 2012, 15:09 _Pasha Управлять прямоугольниками - моветон. А у ТС - воо... Sep 21 2012, 18:27
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|