Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: LPT Interface for Mach
Все о станках с ЧПУ > Станки с ЧПУ, Hobby CNC > Электронные компоненты
arisov77
Хочу поделиться своим схемным решением гальваноразвязки LPT порта с поддержкой Charge Pump (накачка заряда) для Mach. Схема опторазвязки входов-выходов особенностей не имеет. Делал под промышленный станок, поэтому особо постарался уделить внимание безопасности.
На DD1, DD2 собрана схема блокировки питания двигателей подач и шпинделя (чтобы не было «дёргания») во время включения самой платы согласования, «загрузки» компа, разрыве цепи внешней кнопки SB1, при пропадании сигнала Charge Pump. Также для маловероятной, но возможной ситуации: когда комп зависает, выдаёт сигнал Charge Pump и не реагирует на кнопки предусмотрено принудительное выключение питания двигателей кратковременным нажатием кнопки SB1. Это позволяет использовать кнопку без фиксации, хотя для большей безопасности лучше всё-таки с неё. К тому - же, аварийное выключение происходит быстрее и надёжней, чем если бы только через управление Machем. SB1 имеет приоритет перед сигналом Mach (из компа).

Если в Масhе назначить выв.10 LPT под E-Stop, (Config/Port and Pins/Input Signal/ EStop: Port=1, Pin=10, Active Low=1), то SB1, будет действовать как «Аварийный Стоп», включение производиться только с экранной кнопки Reset или назначенной под неё клавиши клавиатуры.
Если под пин10 назначить, например Триггер1 (Config/Port and Pins/Input Signal/ OEM Trig#1: Port=1, Pin=10, Active Low=1), а триггеру 1 назначить в Config/System HotKeys/Trigger 1 = OEM Code 1021 (целый день искал номер этого кода am.gif ), то SB1 будет дистанционно включать-выключать Mach и питание приводов. Причём выключение происходит сразу, а включение требует двойное нажатие SB1 (при Active Low=1 в Config/Port and Pins/Input Signal…).

Питание основной части схемы производиться по скрученному вместе с LPT-Cable шнурочку от USB порта.
Транзисторы DTC114E – «цифровые», со встроенными токоограничительными резисторами. Печатная плата рассчитана под их установку. При другой трассировке печатки возможно использование более распространенных n-p-n транзисторов с внешними резисторами. Реле старайтесь выбирать с минимальным током срабатывания, т.к. нагрузочная способность USB не безгранична.
Схема и печатка в архиве.
Men
Цитата(arisov77 @ 23.9.2008, 8:53) *
Хочу поделиться своим схемным решением гальваноразвязки LPT порта с поддержкой Charge Pump (накачка заряда) для Mach.


Спасибо .
Baha
Цитата(arisov77 @ 23.9.2008, 8:53) *
Схема и печатка в архиве.

Андрей, а Charge Pump , это для чего? Ключ на полевике, частотное управление или ШИМ, типа релюшки?
kentawrik
2Baha
Человек написал несколько неправильно - но из схемы видать, что Charge Pump используется для устранения дрыганий шаговиками и шпинделем так как многие программы даже если к порту не обращаешься оставляют его в непонятном состоянии(проверено). - т.е. запустил программу - пошли импульсы из мача - через некоторое время идет разрешение на включение питания драйверов и шпинделя. Можно станок вручную и не выключать.
можно поставить ULN2003 вместо транзисторов - компактнее будет. да и логику можно поменять на МК.
это не критика - а просто тем кто не любит в слепую схемы повторять в своих разработках.
решение интересное.
smile.gif
Baha
Цитата(kentawrik @ 25.9.2008, 9:09) *
2Baha
Человек написал несколько неправильно - но из схемы видать, что Charge Pump используется для устранения дрыганий шаговиками и шпинделем так как многие программы даже если к порту не обращаешься оставляют его в непонятном состоянии(проверено). - т.е. запустил программу - пошли импульсы из мача - через некоторое время идет разрешение на включение питания драйверов и шпинделя. Можно станок вручную и не выключать.
можно поставить ULN2003 вместо транзисторов - компактнее будет. да и логику можно поменять на МК.
это не критика - а просто тем кто не любит в слепую схемы повторять в своих разработках.
решение интересное.
smile.gif


Понял для чего, дрыгание во время включения и выключения драйверов? А как он эту функцию выполняет? Как он следит активна программа или просто Mach на pin посылает сигнал, и отключает. А то что вопросы задавал, я не смотрел схему Андрея.
Мне попался этот файл из сайта Artofcnc.
arisov77
Приведу отрывок из переведённого Mach3 HELP:
……………………………
4.13 Зарядка помпы – наблюдение за импульсами.
При нормальной работе Mach3 выдаёт постоянный ряд импульсов с частотой примерно 12,5 килогерц на один или оба параллельных порта. Этих сигналов не будет, если Mach3 не была запущена, находится в режиме E-Stop или если генератор ряда импульсов по какой-то причине отказал. Этот сигнал можно использовать для зарядки накопителя через диодную помпу (отсюда и название) чей вывод, показывая работоспособность Mach3, включает приводы осей и шпинделя и т.п. Эта функция часто предусмотрена в коммерческих breakout boards.
…………………………….
Эти импульсы также могут быть частотой 5кГц – для совместимости с некоторыми лазерами. Можно конечно было применить простую схемку с диодом, накопительным конденсатором и ключом на транзисторе и релюшке, чем «городить огород» на DD1 и DD2, но тогда не было бы (повторяю их моего 1 поста) - дополнительной защиты от маловероятной, но возможной ситуации: когда комп зависает, выдаёт сигнал Charge Pump и не реагирует на кнопки предусмотрено принудительное выключение питания двигателей кратковременным нажатием кнопки SB1. Также надо было бы обязательно применять кнопу SB1 c фиксацией.
kentawrik
Отсюда вопрос:
а был ли у кого случай подвисания мача с выдачей импульсов управления не только на помпу но и(или) на драйвера?
Baha
Цитата(arisov77 @ 25.9.2008, 9:42) *
Приведу отрывок из переведённого Mach3 HELP:


Подразумевается что рабочий Мач постоянно посылает 12.5кгц, а если он слетел,то из за отсутствия 12.5 кгц, система должна выключиться?

Вот еще одна схемка, http://www.cnc4pc.com/Safety_Charge_Pump.htm

Надо сделать обратную связь. Часто бывает сбои по сети, если произошел сбои, станок сбивается а управление работает (ноутбук или комп на ббп). При пропадании сигнала питания с драйвера на комп приходит сигнал, выполнение проги останавливается и идет обратный сигнал естоп на станок. Или одновременно из ЗАЩИТЫ сигнал СТОП идет на комп и на станок ВЫКЛЮЧИТЬ.
arisov77
Цитата(kentawrik @ 25.9.2008, 9:59) *
Отсюда вопрос:
а был ли у кого случай подвисания мача с выдачей импульсов управления не только на помпу но и(или) на драйвера?

Наверное ни у кого не было, у меня тоже, но от компа можно ожидать чего угодно. Просто у меня деталей, особенно логики полно, вот и решил если уж защищаться, то возможности от всего. А аварийный стоп (ручной) стоп для моего применения необходим. У меня применяется серводвигатель, представьте, что произойдёт пробой пары выходных транзисторов и понеслось… Концевик только в конце, и то он здесь не поможет, т.к. он входу контроллера. Можно конечно поставить концевик «обрубающий» питание. Этот концевик, для большей безопасности, с моей схемой, можно включить последовательно с кнопкой «Стоп», но за счёт инерции всё равно будет удар или что-то ещё. А так может оператор успеет нажать кнопочку. Лучше один раз потратиться на копеечную логику, чем потом на возможное восстановление дорогой механики.
Вот так примерно я рассуждал при проектировании схемы.


Цитата(Baha @ 25.9.2008, 10:09) *
Подразумевается что рабочий Мач постоянно посылает 12.5кгц, а если он слетел,то из за отсутствия 12.5 кгц, система должна выключиться?

Да.
Цитата(Baha @ 25.9.2008, 10:09) *
Надо сделать обратную связь. Часто бывает сбои по сети, если произошел сбои, станок сбивается а управление работает (ноутбук или комп на ббп). При пропадании сигнала питания с драйвера на комп приходит сигнал, выполнение проги останавливается и идет обратный сигнал естоп на станок. Или одновременно из ЗАЩИТЫ сигнал СТОП идет на комп и на станок ВЫКЛЮЧИТЬ.

Спасибо. Я подумаю об этом.
Baha
Цитата(arisov77 @ 25.9.2008, 10:22) *
У меня применяется серводвигатель,


Андрей, а сервокомплекты от DeskCnc не пробовали?
arisov77
Цитата(Baha @ 25.9.2008, 10:24) *
Андрей, а сервокомплекты от DeskCnc не пробовали?

Нет. Какие в них особенности?



Цитата(Baha @ 25.9.2008, 10:09) *
Надо сделать обратную связь. Часто бывает сбои по сети, если произошел сбои, станок сбивается а управление работает (ноутбук или комп на ббп). При пропадании сигнала питания с драйвера на комп приходит сигнал, выполнение проги останавливается и идет обратный сигнал естоп на станок. Или одновременно из ЗАЩИТЫ сигнал СТОП идет на комп и на станок ВЫКЛЮЧИТЬ.

Самое простое в данном случае релюшка параллельно питанию движков и нормально-разомкнутый контакт в цепь SB1.
Baha
Цитата(arisov77 @ 25.9.2008, 10:27) *
Нет. Какие в них особенности?
Самое простое в данном случае релюшка параллельно питанию движков и нормально-разомкнутый контакт в цепь SB1.


Просто поинтересовался, потому как пользуете сервопривода. Они предлагают дешевые комплекты, на 4 ося, серводвигатели со шнурками, контроллер, и софт где то 900 долларов.
arisov77
Цитата(arisov77 @ 25.9.2008, 9:27) *
Самое простое в данном случае релюшка параллельно питанию движков и нормально-разомкнутый контакт в цепь SB1.

Никакой релюшки для обратной связи не надо, т.к. при пропадании напряжения питания движков пропадёт напряжение и со входа оптопары U3. Только желательно, чтобы электролиты побыстрее разряжались в БП для двигателей.

Для уменьшения задержки сигналов Step/Dir можно применить вместо оптопар U1, U2 - ADuM1400 или Si8440. Их входа "напрямую к LPT, без промежуточных транзисторов, а выхода "усилить", например какой нибудь ULN2801-2805. И добавить стабилизатор на 5В для питания вых.части ADuM.
Spuff
какая программа с протоколом шаг+ шаг- работает?
mura
Нажмите для просмотра прикрепленного файла
Цитата(Spuff @ 29.12.2008, 17:17) *
какая программа с протоколом шаг+ шаг- работает?


cобери такую схему, и работай с любой
arisov77
С одним из компов («материнкой») и данной платой согласования не работал сигнал включения шпинделя. Как выяснилось – из-за того, что лог. 1 с LPT порта была около 3В.
Проблему решил «подтяжкой» до 5В (установка резистора 2,2кОм между +5В USB (к + С1) и выходом 16 LPT (к левому по схеме выводу R23)). Можно вместо этого попытаться уменьшить сопротивление R23 до 200-470 Ом (я это не пробовал).
Всё остальное работает, проверено в диапазоне температур от -12С (в станке, в не отапливаемом помещении) до +20С («на столе»).
Кстати, комп при минусовой температуре отказывается загружать Windows – Hardware Monitor пишет про ошибку (в Биосе температура +255С). Немного выжидаю, нажимаю F1 и «в бой». biggrin.gif Компа, наверное, при этом надолго не хватит - из-за возникающего конденсата.
rcforge
Цитата(arisov77 @ 23.9.2008, 12:53) *
Хочу поделиться своим схемным решением гальваноразвязки LPT порта с поддержкой Charge Pump (накачка заряда) для Mach...


Я как раз читал доку Мача вчера про эту функцию... у меня не скачивается архив во вложении... все впорядке или я так далеко? rolleyes.gif

Кто нибудь собрал схему??? Какой результат по ее надежности???
arisov77
Наверное, никто собирал. И результатов по надёжности (статистики) соответственно - нет.
У меня проблем с этой платой нет (в эксплуатации около 3 месяцев на пром. станке). Несмотря на то, что используются «низкоскоростные» оптопары.

Кстати,
Цитата(kentawrik @ 25.9.2008, 8:59) *
…а был ли у кого случай подвисания мача с выдачей импульсов управления не только на помпу но и(или) на драйвера?

Цитата(arisov77 @ 25.9.2008, 9:22) *
Наверное ни у кого не было, у меня тоже, но от компа можно ожидать чего угодно...

У меня было такое всё таки было и много раз, правда только при отладке макросов http://www.cnczone.ru/forums/index.php?showtopic=516 . Например, когда после команды на быстрое перемещение, следует опрос состояния кнопки и если в цикле опроса не делать задержку, то Mach начинает сильно «тормозить» - «мышка» слушается с большой задержкой. Кнопки на клаве и концевики тоже срабатывают с опозданием на несколько секунд. И в «панике», когда портал начинает очень быстро ехать и кнопками на экране не останавливается и не знаешь что делать – единственное спасение «вырубать» питание приводов или нажать кнопочку AlarmStop, которая всегда под рукой.
При нормальной работе, такого не наблюдалось. При зависании Mach – «накачка заряда» прекращалась и питание с приводов «снималось».
Pavel
раз было. ехал от кнопок, кнопку отпустил, а станок пер до упора.
винда выдала сообщение что-то про рабочую станцию и комп завис намертво.
Sign of Chaos
Оптопары PC817 можно заменить на SFH6106-3?
печатку надо будет переделать немного - это я уже понял. вопрос в том, подойдут ли они по быстродействию?
и еще: какие диоды можно поставить вместо BAS21?
----------
Заранее благодарен!
arisov77
Особой разницы по быстродействию между PC817 и SFH6106-3 нет.
Печатку в любом случае надо другую, т.к. недавно я обнаружил, что печатка которую я выложил в архиве немного не та. Она не соответствует схеме, которая находится там же. Несоответствие в узле на DD1, DD2. Схему я выложил правильную, а печатка от предыдущего варианта (тоже рабочего). А вариант платы под схему, у меня к сожалению затерялся.
Печатка была сделана под мои нужды (размеры, расположение и т.п.). И если, уж решитесь делать новый вариант, то постарайтесь вместо диодов BAS21 (SMD) применить более распространённые 1N4148 (КД522) и на входах/выходах предусмотреть клеммники или разъёмы.
Кстати, вот здесь http://robozone.su/2009/03/18/interfejsnay...-porta-lpt.html мне кажется неплохой вариант интерфейсной платы для самостоятельной сборки.
Sign of Chaos
То, что в логике с разводкой чегото не то я заметил, да забыл сказать...

кстати, какой драйвер используете сами или чтонибудь дельное по этому поводу посоветовать сможете? я сам пока не определился. движки у меня, в основном, биполяры и униполяры.

а в той схеме 4 оси... если мне одна пока без надобности, пока 3х хватит, ее можно программно отключить? или можно так собрать и 4ю ось попросту игнорировать?
arisov77
Драйвер (сервоконтроллер) использовал самодельный. Для ШД - поспрашивайте на форумах.
Любые оси можно отключать программно и переназначать под любые ножки выходов LPT (в Mach). Тоже самое и с входами. Например, сигнал Step оси Y можно назначить на любой из выводов 1-8 (для данной схемы платы согласования).
Лучше собрать все 4 оси. К свободным выходам от неиспользуемой оси Z, в будущем возможно понадобиться подключение дополнительного оборудование (через дополнительный силовой ключ), например, пылесос или систему смазки. Или вкл/выкл. клапанов подачи кислорода и газа в машине газовой резки (в моём случае).
Sign of Chaos
Цитата(arisov77 @ 20.7.2009, 18:28) *
К свободным выходам от неиспользуемой оси Z, в будущем возможно понадобиться подключение дополнительного оборудование (через дополнительный силовой ключ), например, пылесос или систему смазки. Или вкл/выкл. клапанов подачи кислорода и газа в машине газовой резки (в моём случае).


Интересное решение... как я сам до этого недодумался... biggrin.gif
Sign of Chaos
2 arisov77:

кстати о сайте robozone.su... никак не могу там зарегистрироваться... толи они банят нероссийскте айпишники, толи на сайте глюк - захожу в регистрацию - там правила сайта, а кнопки или ссылки вида "я согласен" или "продолжить регистрацию" нет ((

незарегистрированному пользователю, ессесно, там ничего не скачать...
помоги плиз!
нужны печатки, схемы и прошивки из вот этих статей:
http://robozone.su/2009/01/07/mikroshagovy...gatelja-na.html
http://robozone.su/2009/03/18/interfejsnay...-porta-lpt.html
... ну все, что там попутно к статье скачивается...

если что, стучи в асю: 290333321
firefly
регистрация на робозоне исправлена - пробуй
VLAS
Ув. Гуру при использовании опторазвязки насколько я понимаю происходит инверсия упр. сигналов тоесть если на выходе лпт 0 (низкий уровень) то на входе драйвера 1(высокий уровень) он становится высокий, если это так то подскажите нужно ли в настройках мача менять уровни или это не имеет особого значения...!!!???
Зарание спасибо извините если спросил глупость... unsure.gif
arisov77
Цитата(VLAS @ 21.10.2010, 23:48) *
Ув. Гуру при использовании опторазвязки насколько я понимаю происходит инверсия упр. сигналов тоесть если на выходе лпт 0 (низкий уровень) то на входе драйвера 1(высокий уровень) он становится высокий, если это так то подскажите нужно ли в настройках мача менять уровни или это не имеет особого значения...!!!???

Гуру, это ко мне что ли? biggrin.gif Я пока себя таким не считаю, к пенсии может достигну этого уровня. biggrin.gif Надо ещё много учиться, учиться и учиться, как завещал мой земляк. biggrin.gif

Но попробую ответить: надо ещё смотреть какой дальше драйвер ШД или серво установлен, т.е. какой импульс им нужен. Например, L297 для «совершения шага» необходимо, чтобы импульс Step менялся с лог. «1» на «0». В самом драйвере движка перед управляющей микросхемой тоже может стоять оптопара и она тоже может инвертировать сигнал. В моём случае так и было, т.е. сигнал 2 раза инвертировался (в плате согласования и драйвере – в итоге на МК без инверсии).

qwerty1000
а подскажите. есть концевик. при нажатии, нужно чтобы срабатывала кнопка STOP, не E-STOP.
если возможно, то как реализовать?
dima23595
http://robozone.su/cnc-home/28-interfejjsn...azvjazkojj.html

Здесь для чего используются 10,11,12,13, 15,16,17 пины от LPT?


http://robozone.su/cnc-home/56-interfejsna...-porta-lpt.html

1) с функией Charge Pump (Это что за функция?)

2)с поддержкой сигналов STEP, DIR, ENABLE первые два ясно, а вот ENABLE что за функция ( дословно переводится как я понимаю включено)

3)датчики (LIMIT, HOME, E-STOP) примерно понимаю... если не трудно может разъясните конкретно.

4) высокоскоростной выход для управления скоростью шпинделя (PWM) задаются обороты в проге на шпиндель правильно?(это тоже выход импульсов задающих программой на шпиндель, как генератор сигналов да??
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.