Страница 1 из 4
помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 14:36
kens
Доброе всем! Может кто помочь подключить EMC2 к PLC4x(purelogic)
http://purelogic.ru/Netshop/up-shag-dvig/mshagdvig-3/
Судя по прочтеным постам стандартное подключение к трем осям через LPT не так сложно. Сложность возникает у меня при активации 2 выходов одновременно(силовое реле). Например командой М3 мне нужно активировать первый выход, спустя доли секунды второй, командой М5 соответственно все выходы заглушить. В mach3 я редактирую макрос m3:
activatesignal(output1)
sleep(500)
activatesignal(output2)
А как это можно сделать в EMC2?
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 14:47
Nick
А что означают эти выходы? Управление шпинделем? Тогда нужно подключить специальные пины.
Если настраивать через stepconf то в настройке пинов есть пины включения / выключения шпинделя.
Если прописывать вручную, то в hal файле:
управление шпинделем - пин
motion.spindle-on OUT bit
TRUE when spindle should rotate
и пин
motion.spindle-reverse OUT bit
TRUE when the spindle should rotate backward
т.е. нужно будет добавить что-то вроде
net spindle-on motion.spindle-on parport.0.pin-XX-out
Но лучше настроить через stepconf и оттуда скопировать

.
ЗЫ пинов управления шпинделем больше, чем 2:
управление шпинделем (для просмотра содержимого нажмите на ссылку)motion.spindle-at-speed IN bit
Motion will pause until this pin is TRUE, under the following conditions: before the first feed move after each spindle start or speed change; before the start of every chain of spindle-synchronized moves; and if in CSS mode, at every rapid->feed transition.
motion.spindle-brake OUT bit
TRUE when the spindle brake should be applied
motion.spindle-forward OUT bit
TRUE when the spindle should rotate forward
motion.spindle-index-enable I/O bit
For correct operation of spindle synchronized moves, this signal must be hooked to the index-enable pin of the spindle encoder.
motion.spindle-on OUT bit
TRUE when spindle should rotate
motion.spindle-reverse OUT bit
TRUE when the spindle should rotate backward
motion.spindle-revs IN float
For correct operation of spindle synchronized moves, this signal must be hooked to the position pin of the spindle encoder.
motion.spindle-speed-in IN float
Actual spindle speed feedback in revolutions per second; used for G96 feed-per-revolution and constant surface speed modes.
motion.spindle-speed-out OUT float
Desired spindle speed in rotations per minute
motion.spindle-speed-out-rps OUT float
Desired spindle speed in rotations per second
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 15:08
kens
Nick писал(а): что означают эти выходы? Управление шпинделем?
Несовсем. Первое реле-это опускание пневмоцилиндра и второе поджиг плазмы.
Если уж начинать совсе с азов. Как редактировать этот Hal файл и где он находится ?
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 15:29
Nick
Находится в директории с конфигурацией станка. Там должны быть файлы станок.ini и станок.hal, будут и другие, но эти самые важные.
Если все эти операции происходят по Gкодам M3, M4 и M5, то можно особо не задумываясь подключить из к старт/стопу шпинделя и правому/левому вращениям.
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 15:46
kens
Nick писал(а):Находится в директории с конфигурацией станка. Там должны быть файлы станок.ini и станок.hal, будут и другие, но эти самые важные.
Спасибо, обязательно во всем буду сам разбираться. Но хочется решить эту проблему уже сегодня.
У меня 2 CAM программы, одна выдает м3-м5, другая м4-м3 у последней постпроц. даже не редактируется. И все таки не совсем понятно куда, а главное что написать что бы у меня сработали эти реле от одной буковки (мз или м4)
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 16:02
Nick
Ты уже хоть как-от настраивал EMC2? Видел stepconf - "мастер" простой настройки emc2?
Вот тут описано, какие есть пины:
http://www.cnc-club.ru/forum/viewtopic. ... figuration
По идее, если назначишь Шпиндель вкл и Шпиндель вперед, то
M3 будет включать первый и второй.
M5 будет оба выключать.
M4 будет выключать только второй.
Хотя, лучше это протестировать.
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 16:04
Nick
Еще можно побаловаться с M62-65 и цифровыми выходами. Или, если нужен дополнительный контроль, с Ladder logic.
M62
Turn on digital output synchronized with motion
M63
Turn off digital output synchronized with motion
M64
Turn on digital output immediately
M65
Turn off digital output immediately
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 16:11
kens
Nick писал(а):Ты уже хоть как-от настраивал EMC2? Видел stepconf - "мастер" простой настройки emc2?
Ну да, это базовые настройки. Hal получается только найдя в дериктории можно редактировать.
Nick писал(а):M3 будет включать первый и второй.
M5 будет оба выключать.
Я сужу по мачу-он дублировать команды на разные пины не дает. Надо будет попробывать.
Совсем забыл, нужен sleep между активированием выходов.
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 16:26
Nick
kens писал(а):Hal получается только найдя в дериктории можно редактировать.
Да, причем, если отредактируешь что-то вручную, потом эти настройки через GUI не поменять, более того, gui просто сотрет все правки сделанные вручную!
Поэтому лучше всего со stepconf и pncconf баловаться на отдельной конфигурации!
kens писал(а):Я сужу по мачу-он дублировать команды на разные пины не дает. Надо будет попробывать.
В emc2 все построено на HAL и его пинах. Выглядит, если грубо, так: есть куча пинов, которые можно соединять проводками, как соединишь, так и будет работать

. По ограничениям:
1. Есть пины ввода (в который вводят инфу, например, пин step контроллера) и пины вывода (который что-то выводит, например, пин step emc2 или пин parport.0.pin-01-in).
2. К пинам ввода можно подключить только 1 пин вывода. Т.е. к пину step контроллера можно подключить только один вывов.
3. К пину вывода можно подключить любое количество пинов ввода. Т.е. к пину enable можно подключить все пины enble осей контроллера.
4. Пункт 2. можно обойти использованием компонентов and, or, xor, mux и т.д.
kens писал(а):Совсем забыл, нужна пауза между активированием выходов.
Какая по продолжительности?
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 16:32
kens
Nick писал(а): kens писал(а):Совсем забыл, нужна пауза между активированием выходов.
Какая по продолжительности?
0.2-1сек.
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 16:39
Nick
Это лучше через ladder logic. Там есть компонент timer.
А эта пауза не может лимитироваться каким-то датчиком? Есть специальные Gкоды, которые ждут сигнала на пине цифрового ввода.
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 16:40
Nick
Опиши всю схему работы, какие есть управляющие пины и какие есть датчики.
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 16:59
kens
Вообщем это станок плазменой резки, слежение шариковыми опорами на пневмоцилиндрах. По команде м3 срабатывает первый выход(опускается пневмоцилиндр) спустя 0,5сек програмируемой паузы, срабатывает второй выход(поджигается дуга) опять пауза 0,3сек и поехала резка. По окончание реза м5-все выходы отключены.
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 17:04
Nick
А у пневмоцилиндра концевика нет?
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 17:20
kens
нет, он работает как да или нет
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 17:36
kens
Можете взглянуть на этот NC файл, у вас он без проблем пройдет? Я пытаюсь сделать запуск, наткнулся на следующую ошибку-Не могу исполнить программу, если не найдены начала.Это исходная позиция?
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 17:38
Nick
Т.е. никаких дополнительных датчиков контроля нет?
Тогда наверное будет лучше все сделать через Ladder Logic.
В ладдер нужно будет завести сигнал
motion.spindle-on
В самом Ladder Logic нужно будет описать всю логику процесса:
Код: Выделить всё
Выход на
spindle-on пневмоцилиндр
----| |-----+-----------------------------------------------------( )-----
|
| %TM0 Выход на
| +---------+ зажигание дуги
+--------| TON |-----+----------------------------( )-----
| 0.5 | |
+---------+ | %TM0 Выход на
| +---------+ motion.spindle-at-speed
+-----| TON |------------( )-----
| 0.3 |
+---------+
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 07 дек 2011, 17:52
Nick
kens писал(а):Я пытаюсь сделать запуск, наткнулся на следующую ошибку-Не могу исполнить программу, если не найдены начала.Это исходная позиция?
По умолчанию EMC2 не дает выполнять программы пока не найдены начала осей. Это нужно для того, чтобы станок не выскочил за пределы осей. EMC2 следит за реальным положением станка несмотря ни на какие отступы и дополнительные системы координат.
Перед работой нужно выполнить поиск нулей, это если есть концевики на осях. Если их нет, то просто выбираешь по очереди оси и нажимаешь home.
Если концевиков нет и ты понимаешь всю ответственность, то можно
отключить необходимость поиска нулей (третий вопрос).
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 08 дек 2011, 12:28
Anonymouss
в порядке бреда:
Можно задавать свои коды M100..M199 закинув исполняемый файл с названием "M100" (итд) в директорию, указанную в файле ini в разделе [DISPLAY] (по умолчанию PROGRAM_PREFIX = ../../nc_files/ ).
Содержимое файла - что нибудь типа:
#!/bin/sh
halcmd setp parport.0.pin-14-out True
sleep 0.2
halcmd setp parport.0.pin-16-out True
exit 0
http://linuxcnc.org/docs/html/gcode_mai ... 00-to-M199:
для того, чтоб M3 автоматически заменялось на M100 (или на "M3 M100" )
можно в том-же ini файле в рубрике [FILTER] написать "ngc = moi_preprocessor.sh"
и положить куда-нибудь к исполняемым файлам файл moi_preprocessor.sh вида
#!/bin/sh
echo "(коменты, лицензия GPL:)"
cat $1 | sed 's/M3/M100/g' | sed 's/M5/M101/g'
exit 0
Re: помощь с подключением к PLC4x(purelogic)
Добавлено: 08 дек 2011, 12:50
Nick
Можно и так, быстро но не тру

. Как быстрый вариант отлично

!