Перейти к содержанию

    

Разработка комплекса программа+железо LPT/USB для станков

Тут только по верхнему софту задача далеко не на пару недель.

ТС похоже уже сдался и наши измышления ему не интересны. :bb-offtopic:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ТС похоже уже сдался и наши измышления ему не интересны. :bb-offtopic:

Нет, я думаю он паяет проводки на PCI-E. Их там ох как много... :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Новая тема называется "Управление станком по шине PCI"

Вводные: мы имеем платформу 4 ядра по 4 ГГц AMD.

Компьютер моделирует процесс работы станка в соответствии с программой, в G-кодах. Для каждой из задействованных в работе осей высчитывается положение, с частотой 1 МГц, ни больше ни меньше.

На плате имеется выход ШИМ для 20 Н-мостов и последовательная шина, совместимая с rs485, а также входы на 10 TTL датчиков. На шаговый двигатель ставится датчик обратной связи TTL. Обмотки управляются через 2 Н-моста. По последовательной шине идёт зацикленный сигнал с частотой 1 МГц следующего вида: стартовый байт 11111111, два байта адреса, два байта данных, 4 бит пауза - резерв для запроса прерывания ведомым устройством, два байта обратной связи, 4 бит пауза, затем по кругу.

Цена вопроса полсотни тысяч рублей. sayt1000@ya.ru

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Новая тема называется "Управление станком по шине PCI"

Хм. Но там тоже нужна FPGA :laughing: По другому к той шине не подключиться (насколько мне известно). Только затраты на такое применение FPGA будут ещё бОльшие.

 

А чем вариант с LPT вдруг не понравился? Мне кажется, там можно рулить движками с большой точностью.

Или нужна совместимость с программами типа Mach 3 и т.д.?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Хм. Но там тоже нужна FPGA :laughing: По другому к той шине не подключиться (насколько мне известно). Только затраты на такое применение FPGA будут ещё бОльшие.

Есть и DSP с шиной и мосты отдельно.

А чем вариант с LPT вдруг не понравился? Мне кажется, там можно рулить движками с большой точностью.

Или нужна совместимость с программами типа Mach 3 и т.д.?

Да дело не в том какой порт взять. Заводит "наивность" : возьмем и будемуправлять из ПК без всяких причиндал и будет вселенское счастье.

ТС возжелал практически в реальном времени управлять работой станка из ПК, не учитывая что интерфейсы (RS232, LPT, да и тот же PCI-e) работают под управлением операционки, а в ней еще крутится его эфемерная программка.

Рулить с большой точностью, можно, но не всегда в реальном масштабе времени. И опять же, есть подозрение, что у ТС в качестве исполнительного узла шаговый мотор (или группа) не охваченный(ные) обратной связью. Вот он и делает "четкий" формирователь управления с наблюдением на экране осциллографа, вместо того что бы отладить "механику" и имеющийся блок внешнего управления.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня уточняющий вопрос к автору темы.

Вот есть станок, там есть механика и шаговые двигатели в N-ом количестве. А драйвера к этим двигателям есть? Блок питания, который обеспечивает энергией все эти движки?

Или предполагается разработка вообще всей электрической части: БП, драйверов шаговых движков, точных концевых, сопряжение с компьютером, и в итоге программы на комп?

 

Я например полагал, что шаговики уже укомплектованы драйверами и блоками питания для них. Что автор может через LPT хотя бы зажечь светодиод - из какой-нить тестовой программки (к примеру на Visual Basic). Возможно даже через LPT, в тестовом режиме, был включен\выключен хотя бы один движок. И на основании подобного успешного опыта было принято решение использовать LPT. А как на самом деле? :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
А как на самом деле? :rolleyes:

Подозреваю что драйвера и источники есть. И даже некий контроллер, который управляет есть.

С программкой для управления - беда.

Будь исходники на контроллер - наверное решили бы в них поковыряться (что более правильно).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
И опять же, есть подозрение, что у ТС в качестве исполнительного узла шаговый мотор (или группа) не охваченный(ные) обратной связью. Вот он и делает "четкий" формирователь управления с наблюдением на экране осциллографа, вместо того что бы отладить "механику" и имеющийся блок внешнего управления.

Мне это тоже не совсем понятно. Вот есть задача резать резьбу. Если всё управляется шаговыми двигателями, то вероятно замысел такой: один движок вращает заготовку, а другой в это время двигает суппорт с резцом, нарезая резьбу...

Но при этом могут быть разные ситуации! Движок вращающий заготовку может "забуксовать", пропустить несколько шагов из-за нагрузки создаваемой резцом... Или "суппорт" может пропустить свои шаги из-за нагрузки. Могут пробуксовать и оба двигателя.

Как избежать пропуска шагов под нагрузкой? Добавлять понижающую передачу, наверное. А какая тогда будет скорость резки, если движок даже напрямую, не может больше 6 оборотов в секунду выдать (если 100 импульсов на оборот)?

Изменено пользователем controller_m30

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Единственный вариант, позволяющий избежать пропуска шагов — обратная связь. Без хотя бы инкрементального энкодера придется очень часто выполнять операции координатной инициализации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Подозреваю что драйвера и источники есть. И даже некий контроллер, который управляет есть.

Все что есть автор показал: https://electronix.ru/forum/index.php?s=&am...t&p=1479018

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цена вопроса полсотни тысяч рублей. sayt1000@ya.ru

Сначала почудилось 500, даже мысль мелькнула - it's a deal!

а так - купите лучше у китайцев готовый контроллер

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Новая тема называется "Управление станком по шине PCI"

Вводные: мы имеем платформу 4 ядра по 4 ГГц AMD.

Компьютер моделирует процесс работы станка в соответствии с программой, в G-кодах. Для каждой из задействованных в работе осей высчитывается положение, с частотой 1 МГц, ни больше ни меньше.

На плате имеется выход ШИМ для 20 Н-мостов и последовательная шина, совместимая с rs485, а также входы на 10 TTL датчиков. На шаговый двигатель ставится датчик обратной связи TTL. Обмотки управляются через 2 Н-моста. По последовательной шине идёт зацикленный сигнал с частотой 1 МГц следующего вида: стартовый байт 11111111, два байта адреса, два байта данных, 4 бит пауза - резерв для запроса прерывания ведомым устройством, два байта обратной связи, 4 бит пауза, затем по кругу.

Цена вопроса полсотни тысяч рублей. sayt1000@ya.ru

 

Я бы предложил сделать скромно, но со вкусом.

 

Сделать несколько одинаковых плат с драйверми моторов. На чипах MK58 от NXP. Каждая плата работает с однм мотором и всеми типами энкодеров и конечников при нем.

Платы вроде таких -

post-2050-1486553979_thumb.jpg

На тех же платах поставить чипы EtherCAT от Beckhoff

Таким образом все платы соединяются в жестком реалтайме по шине EtherCAT.

А мастер шины сделать на индустриальном BeagleBone Black Industrial c Add-On платой на том же ET1100.

Соединение мастера с компьютером через HS USB

 

На первых порах можно вместо EterCAT использовать CAN. Он, кстати, есть на показаной выше плате и USB HS есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Новая тема называется "Управление станком по шине PCI"

Вводные: мы имеем платформу 4 ядра по 4 ГГц AMD.

Компьютер моделирует процесс работы станка в соответствии с программой, в G-кодах. Для каждой из задействованных в работе осей высчитывается положение, с частотой 1 МГц, ни больше ни меньше.

На плате имеется выход ШИМ для 20 Н-мостов и последовательная шина, совместимая с rs485, а также входы на 10 TTL датчиков. На шаговый двигатель ставится датчик обратной связи TTL. Обмотки управляются через 2 Н-моста. По последовательной шине идёт зацикленный сигнал с частотой 1 МГц следующего вида: стартовый байт 11111111, два байта адреса, два байта данных, 4 бит пауза - резерв для запроса прерывания ведомым устройством, два байта обратной связи, 4 бит пауза, затем по кругу.

Цена вопроса полсотни тысяч рублей. sayt1000@ya.ru

То есть дополнительно к управляющему софту и плате PCI добавляются еще и самопальные драйвера? И все за полтинник? Серьезно? :lol:

ЗЫ: Не буду спрашивать какому станку нужно столько шаговых двигателей :)

 

Автор действительно очень наивен.

А чем вариант с LPT вдруг не понравился? Мне кажется, там можно рулить движками с большой точностью.

Нельзя, к сожалению. Вернее, можно, но для этого нужна RTOS, коей ни винда ни линукс не являются. У меня буквально на днях управление станком по LPT (под виндой) начало прерываться на какие-то миллисекунды раз в 15-40 секунд, что-то в системе начало периодически занимать ресурсы в эти моменты. Восстановление системы до состояния недельной давности помогло. А в прошлый раз, когда комп начал так выделываться, восстановление системы не помогло, пришлось полностью переустанавливать винду :)

Хорошо, что я за несколько дней до этого заказал-таки внешний контроллер, подключаемый по Ethernet, ему затыки операционки и до 0.5 сек не страшны :) Вчера получил, подключил - доволен как слон.

 

Единственный вариант, позволяющий избежать пропуска шагов — обратная связь. Без хотя бы инкрементального энкодера придется очень часто выполнять операции координатной инициализации.

 

Я бы предложил сделать скромно, но со вкусом.

 

Сделать несколько одинаковых плат с драйверми моторов. На чипах MK58 от NXP. Каждая плата работает с однм мотором и всеми типами энкодеров и конечников при нем.

Энкодеры нужны очень хорошие. В промышленных сервомоторах на станках ставят энкодеры на несколько тысяч/десятков тысяч линий на оборот. Другой используемый в станках вариант контроля - измерительные линейки непосредственно на осях, попросту линейные энкодеры с разрешением в единицы-десятки микрон. И тут мы опять приходим к тому, что все уже придумано до нас - есть и сервокомплекты (драйвер плюс двигатель) с высокоточными энкодерами, которые сами внутри себя следят за правильностью перемещений, есть и контроллеры движений, к которым можно подключать линейки на осях :)

ТС действительно наивен. Один только качественный алгоритм управления шаговым двигателем съест не один месяц упорного труда и не один авторский бюджет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Энкодеры нужны очень хорошие. В промышленных сервомоторах на станках ставят энкодеры на несколько тысяч/десятков тысяч линий на оборот.

...не один месяц упорного труда и не один авторский бюджет.

 

Шаговые то зачем? Нынче кругом BLDC. Вон тот движок на моей фотке дает 1800 импульсов на оборот. Без всяких энкодеров.

Качественный алгоритм нынче в матлабе делается за спасибо.

Технологии знаете ли меняются.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Шаговые то зачем? Нынче кругом BLDC. Вон тот движок на моей фотке дает 1800 импульсов на оборот. Без всяких энкодеров.

Они банально дешевле и проще в управлении и настройке, а обратная связь по положению не везде требуется. Ну и ТС на них настаивает :) Современные сервоприводы - да, почти все на бесколлекторниках, имеют несколько преимуществ и один большой недостаток - цена :)

Кстати, а какое усилие удержания на валу у движка с Вашей фотки?

Качественный алгоритм нынче в матлабе делается за спасибо.

Технологии знаете ли меняются.

Вы лучше объясните это китайцам. А то они отстают от технологий, похоже, - только одна их контора делает приличные драйвера для ШД. Видимо, никто больше в Китае не владеет матлабом, или не хочет говорить спасибо тому кто им владеет :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация