Страница 2 из 3

Re: Программирование LPT порта вручную

Добавлено: 23 окт 2012, 13:08
osminoglover
Nick писал(а):Кстати, osminoglover, а для каких целей используется этот пин? Не для контроля выезда за пределы осей случаем?
Для остановки подачи на электроэрозионке, провод рвется - станок становиться.

Re: Программирование LPT порта вручную

Добавлено: 23 окт 2012, 13:09
Nick
Ну тогда Estop-вход.

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 08:58
osminoglover
А по поводу понижения подачи. Это в принципе реально что бы при изменении напряжения на порт шел... Ну пусть "0" и он дал 10% подачи? А если вернется напряжение то "1" и подача - 100%?

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 09:34
Rafiq
Что-то не совсем понятно, чего ты хочешь. Изменение напряжения на чем? На проволоке? Ну и вообще для измерения плавных изменений АЦП нужен в составе контроллера, да и не обойтись тогда уж ЛПТ. А так в принципе по ЛПТ управление подачей проволоки можно сделать через ШИМ шпинделя.

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 10:31
osminoglover
Rafiq писал(а):управление подачей проволоки можно сделать через ШИМ шпинделя.
И как это сделать?

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 10:36
osminoglover
Кстати у меня вообще не работает из под степ конфига аварийная остановка. Я приложу конфиг свой, может глянет кто.
http://ge.tt/9YntW7Q/v/0?c

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 10:54
Nick
osminoglover писал(а):А по поводу понижения подачи. Это в принципе реально что бы при изменении напряжения на порт шел... Ну пусть "0" и он дал 10% подачи? А если вернется напряжение то "1" и подача - 100%?
Т.е. уменьшать подачу в зависимости от состояния внешнего пина?
Сделать можно, для этого надо в hal добавить примерно следующее:

Код: Выделить всё

# Загружаем компонент mux2 
loadrt mux2 names=mux2.feed
addf mux2.feed servothead

#назначаем параметры выбора:
setp mux2.feed.in0 1
setp mux2.feed.in1 0.1

#присоединяем пин LPT
net feed-pin <=  parport.0.pin-XX-in
net feed-pin => mux2.feed.sel

# настраиваем поведение halui.feed-override
setp halui.feed-override.direct-value 1

#присоединяем пин к halui.feed-override:
net feed-val <= mux2.feed.out
net feed-val =>  halui.feed-override.counts


osminoglover писал(а):И как это сделать?
Про ШИМ, в том же stepconf делаешь на какой-нибудь пин ШИМ шпинделя, потом параметры в последнем окне настраиваешь и все. После этого при указании в Gкоде S100 на выходном пине будет появляться соответствующий ШИМ.
osminoglover писал(а):Кстати у меня вообще не работает из под степ конфига аварийная остановка.
В смысле программа не запускается и выдает ошибку? Тогда текст ошибки скопируй сюда.
ЗЫ файлы можешь прикреплять прямо на форум.

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 11:30
osminoglover
Nick писал(а):В смысле программа не запускается и выдает ошибку? Тогда текст ошибки скопируй сюда.
ЗЫ файлы можешь прикреплять прямо на форум.
Нет, все работает, но аварийной остановки при обрыве провода не происходит как в обычном режиме, так и в инверсированном.
Теперь про *.hal, есть ли значение в какую часть документа вставлять?
Nick писал(а):parport.0.pin-XX-in
это в процентах или строгая установка скорости?

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 11:34
Nick
osminoglover писал(а):Нет, все работает, но аварийной остановки при обрыве провода не происходит как в обычном режиме, так и в инверсированном.
Это с той конфигурацией, что в архиве? Там не настроен ни один входной пин...
osminoglover писал(а):Теперь про *.hal, есть ли значение в какую часть документа вставлять?
В принципе нет. Но loadrt и addf лучше в верху. Причем addf можно под остальными addf.
Остальное все ниже. Да, в ini может понадобится написать HALUI = halui, если его там нет.
osminoglover писал(а):это в процентах или строгая установка скорости?
Это в процентах, точнее
(текущий Feed) * halui.feed-override.scale * halui.feed-override.counts

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 11:41
osminoglover
Nick писал(а):Это с той конфигурацией, что в архиве? Там не настроен ни один входной пин...
Можешь помочь с этим?
Если на первый "0" - остановка.
Как это будет выглядеть?

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 11:52
Nick
На первый не выйдет - первый это пин вывода, а тебе нужен ввод
Я обычно для этого создаю за 20 сек конфигурацию в stepconf и тырю оттуда то, что надо :):

Код: Выделить всё

net estop-ext <= parport.0.pin-10-in
net estop-ext => iocontrol.0.emc-enable-in

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 12:10
Rafiq
Доки на контроллер есть? Там должно быть указано, на каком пине сидит EStop кнопка. А в stepconf просто говоришь, что пин с этим номером будет работать как EStop вход (вход с точки зрения компа). И будет тебе щастье :) Кнопка и датчик обрыва я так понимаю объединены монтажным ИЛИ?

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 12:14
osminoglover
В какую часть документа запихать этот код?

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 12:15
osminoglover
Rafiq писал(а):Доки на контроллер есть?
Нет, приходиться тыкаться почти в слепую, пока настроил приводы чуть с ума не сошел.

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 12:36
Nick
osminoglover писал(а):В какую часть документа запихать этот код?
В hal в конец. (хотя в принципе все равно :) )
Номер пина поставь какой нужно.

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 12:43
Rafiq
Фота контроллера есть? Может, распространенная модель (типа красная или синяя плата), которых полно на Ибэе. К ним документацию в принципе можно найти.

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

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 12:51
Nick
Rafiq писал(а):Вслепую EStop проще найти, чем с приводами разбираться. Есть только пять входов (это пины 10 ... 15), каждый из них по очереди устанавливай как EStop вход, сохраняй конфиг, запускай LinuxCNC и смотри реакцию на нажатие кнопки. Если реагирует - пин найден. Если стопарится при отжатой кнопке и работает при нажатой (т.е. наоборот) - ставишь галочку "Инвертировать".
Лучше так:
запускаешь LinuxCNC
открываешь несколько HAL meter (в главном меню), выбираешь в них пины parport - in
создаешь аварийную ситуацию
смотришь какой пин изменился

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 22:54
vmarkiv
Лет десять-двенадцать тому делали задачу управления искровым станкам через паралельный порт , все работает до сегодняшних дней , при нулевом напряжении была стоп подачи , при высоком - подача до остановки . Условия - - Cdos - риалтаймовский ДОС , машина уровня 386-486 . При пне 3 тяжело было выставить подачу , паралельный порт слишком шустрый . Но система Пифагор , не для рекламы , использует прямое управление LPT , на базе ДОС с исходниками ( на сайте ) . Но теперь УМНЫЕ программисты напрямую не управляют LPT . В MACH3 есть вход управления паузой подачи , в ЛИНУКСЧПУ ДЕЛАЕТСЯ АНАЛОГИЧНО .

Re: Программирование LPT порта вручную

Добавлено: 24 окт 2012, 23:20
Nick
vmarkiv писал(а): Но система Пифагор , не для рекламы
А что за программа такая? Почемуссылку не дал :) :pssdoff:?

ЗЫ у нас и реклама не возбраняется, лишь бы в тему :)

Re: Программирование LPT порта вручную

Добавлено: 25 окт 2012, 06:04
vmarkiv
http://sokiev.narod.ru/
Управление осями через отдельную плату на МАКСе , но с исходников можно перекомпилить на паралельный , шпиндель напрямую с LPT . В системе действительно много умных вещей , с поддержкой автора станки переделывают рабочие уровня электромеханика ( сам видел )