Модернизация фрезерного 6Р13Ф3-01
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
ща сделлаю инверт им.
Кстати, с чего Axis решила, что концевики замкнуты. У меня сейчас кроме 5i20 ничего не подключено.
Кстати, с чего Axis решила, что концевики замкнуты. У меня сейчас кроме 5i20 ничего не подключено.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
Не, имхо F1 - включение станка, F2 - сброс estop. Т.е. при включении станка он всегда на estop-е, на всякий случай.
вообще чтобы установить пин в положение и там и оставить наверное понадобится ladder logic. Но, если мы хотим, чтобы на пине enable приводов была 1 тогда и только когда 1 на пине готовности привода и станок не в состоянии estop, то можно сделать так:
loadrt and2 names=motor-enable
addf and2.motor-enable base-thread
net estop-active <= halui.estop.is-activated => add2.motor-enable.in0
net amp-rd => add2.motor-enable.in1
net motor-enable <= add2.motor-enable.out => НУЖНЫЙ ПИН НА МЕСЕ
---------------------
Скинь сюда все hal и ini
вообще чтобы установить пин в положение и там и оставить наверное понадобится ladder logic. Но, если мы хотим, чтобы на пине enable приводов была 1 тогда и только когда 1 на пине готовности привода и станок не в состоянии estop, то можно сделать так:
loadrt and2 names=motor-enable
addf and2.motor-enable base-thread
net estop-active <= halui.estop.is-activated => add2.motor-enable.in0
net amp-rd => add2.motor-enable.in1
net motor-enable <= add2.motor-enable.out => НУЖНЫЙ ПИН НА МЕСЕ
---------------------
Скинь сюда все hal и ini
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
F1 - аварийная остановка - ВКЛ/ВЫКЛ
F2 - питание станка ВКЛ/ВЫКЛ.
это не принципиально.
Не, наверное надо ladder logic привлекать сразу, потому что все равно это делать придется.
-------
Меня ща волнуют концевики. На станке они у меня НО типа.
Сейчас к 5i20 ничего не подключено, т.е. на по идее все её выходы поддтянуты вверх, т.е. там логическая 1.
Следовательно Axis думает иначе. По умолчанию концевики в EMC нормально размокнутые или замкнутые?
F2 - питание станка ВКЛ/ВЫКЛ.
это не принципиально.
Не, наверное надо ladder logic привлекать сразу, потому что все равно это делать придется.
-------
Меня ща волнуют концевики. На станке они у меня НО типа.
Сейчас к 5i20 ничего не подключено, т.е. на по идее все её выходы поддтянуты вверх, т.е. там логическая 1.
Следовательно Axis думает иначе. По умолчанию концевики в EMC нормально размокнутые или замкнутые?
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
Это все в hal прописано. Ищи пины neg-lim-sw-in или .pos-lim-sw-in, ну в общем limLexxa писал(а):По умолчанию концевики в EMC нормально размокнутые или замкнутые?
- NightV
- Почётный участник

- Сообщения: 6610
- Зарегистрирован: 30 дек 2011, 09:14
- Репутация: 2279
- Настоящее имя: Владимир Айрапетян
- Откуда: Israel
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
каждый канал 1А, только не забуть соблюсти полярность, если перепутаеш не сгорит но и нагрузку не включит.Lexxa писал(а):Кстати, ток 1А у 7i37 на 1 канал или общий по выходам?
по поводу разводки пинов, зачем искать себе лишний гимор, через stepconf или pncconf разведи основные Вх\Вых, энайблы Е-стопы и концевики с хомами, уже готовые, только выбирай из списка, кнопки, тоже есть несколько готовых (типа Jog'и запуск програмы и ручное перемещение осей), если хочеш изголится можеш добавить свои (давать свои названия, без пробелов, слова только через "_", например knopka_vsem_hana) он их тебе пропишет, потом ручками поправиш что они должны делать.
а дальше разводи ручками что не доделал с 7i49
разница лиш в конце строчки просто "in" или "in_not", тоесть прямой или инвертирован, я у себя завел лимиты что всегда дают 24в, тоесть на разрыв (NC), сработает даже если просто оборвется провод, дасть знать что лимит не рабочийПо умолчанию концевики в EMC нормально размокнутые или замкнутые
Последний раз редактировалось NightV 13 янв 2012, 00:29, всего редактировалось 1 раз.
Всё просто! если знаешь КАК!
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
инвертировал концевики, не ругатся вроде. Завтра подцеплю 7i37, позамыкаю пинцетиком концевики, посмотрим, будет писать или нет.
Как ladder редактор запускать отдельно от pncconf.
Кстати, я там косяк заметил) При выставлении конечников можно два раза выбрать МАКСИМУМ Y и нет максумум Х.
Выбирая разные Максимы Y в .hal имеется
Как ladder редактор запускать отдельно от pncconf.
Кстати, я там косяк заметил) При выставлении конечников можно два раза выбрать МАКСИМУМ Y и нет максумум Х.
Выбирая разные Максимы Y в .hal имеется
Код: Выделить всё
# --- MAX-X ---
net max-x <= hm2_5i20.0.gpio.031.in_not
# --- MAX-X ---
net max-x <= hm2_5i20.0.gpio.031.in_not
# --- MAX-Z ---
net max-z <= hm2_5i20.0.gpio.032.in_not- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
7i49 пока у меня отсутствует в наличии и скорее всего отсутствовать будет и дальше.NightV писал(а): а дальше разводи ручками что не доделал с 7i49
Про полярность учту)))
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
а еще там
а должно быть
p.s врсия emc2 - 2.4.6
Код: Выделить всё
net home-y => axis.1.home-sw-in
net min-y => axis.1.neg-lim-sw-in
net y-pos-limit => axis.1.pos-lim-sw-inКод: Выделить всё
net home-y => axis.1.home-sw-in
net min-y => axis.1.neg-lim-sw-in
net max-y => axis.1.pos-lim-sw-in- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
По classic ladder вопрос
1) Рисую схему ----|%I1|-------------|%Q1|-----,
2) открываю Symbols.
3) В поле variable пишу %I1 и %Q1,
4) В поле Symbol name пишу Amp_ready и Amp_Enbl. Имя переменной, я так понимаю задается любое.
6) в hal есть loadusr classicladder --nogui custom.clp
7) перезагружаю на всякий случай axis и открываю там hal-метр.
Я правильно понимаю, что на вкладке ножки должны появиться пины ladder'а и у двух из них должны быть имена Amp_ready и Amp_Enbl?
Или что-то я не так делаю?
1) Рисую схему ----|%I1|-------------|%Q1|-----,
2) открываю Symbols.
3) В поле variable пишу %I1 и %Q1,
4) В поле Symbol name пишу Amp_ready и Amp_Enbl. Имя переменной, я так понимаю задается любое.
6) в hal есть loadusr classicladder --nogui custom.clp
7) перезагружаю на всякий случай axis и открываю там hal-метр.
Я правильно понимаю, что на вкладке ножки должны появиться пины ladder'а и у двух из них должны быть имена Amp_ready и Amp_Enbl?
Или что-то я не так делаю?
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
наверное так можно:Lexxa писал(а):Как ladder редактор запускать отдельно от pncconf.
halrun loadusr classicladder custom.clp
Не совсем понял, в чем косяк?Lexxa писал(а):Кстати, я там косяк заметил) При выставлении конечников можно два раза выбрать МАКСИМУМ Y и нет максумум Х.Выбирая разные Максимы Y в .hal имеется
Нет, скорее всего они будут типа того, как на твоей картинке: classicladder.o.in-00Lexxa писал(а):Я правильно понимаю, что на вкладке ножки должны появиться пины ladder'а и у двух из них должны быть имена Amp_ready и Amp_Enbl? Или что-то я не так делаю?
Если уберешь --nogui, то при запуске emc2 будет запускаться редактор classic ladder, в котором можно на живую менять схему, плюс к этому в нем отображаются активные сигналы и куда они доходят. Это может быть очень удобно при настройке. Только не забывай, что все это может быть подключено к реальному станкуLexxa писал(а):6) в hal есть loadusr classicladder --nogui custom.clp
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
а как же мне узнать какой из classicladder.0.in-00 мне нужен?
Там есть еще classicladder.0.s32in-00 и classicladder.0.floatin-00
или переменным типа %Ix соответствует classicladder.0.in-0x?
тогда как работать с classicladder.0.s32in-00 и classicladder.0.floatin-00
Там есть еще classicladder.0.s32in-00 и classicladder.0.floatin-00
или переменным типа %Ix соответствует classicladder.0.in-0x?
тогда как работать с classicladder.0.s32in-00 и classicladder.0.floatin-00
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
s32 - signed integer = целое число - туда можно направлять пины s32, например, номер инструмента
float - действительное число, туда можно отправлять пины float, например скорость или скорость шпинделя.
classicladder.0.in-N IN bit
Эти сигналы отображаются на переменные %INNN в classicladder
classicladder.0.out-N OUT bit
На эти битовые пины отображаются на переменные вывода %QnNN из classicladder
classicladder.0.in-N IN s32
Эти пины отображаются на переменные %IWNNN в classicladder
classicladder.0.out-N OUT s32
На эти численные пины отображаются на переменные вывода %QWNNN из classicladder
float - действительное число, туда можно отправлять пины float, например скорость или скорость шпинделя.
classicladder.0.in-N IN bit
Эти сигналы отображаются на переменные %INNN в classicladder
classicladder.0.out-N OUT bit
На эти битовые пины отображаются на переменные вывода %QnNN из classicladder
classicladder.0.in-N IN s32
Эти пины отображаются на переменные %IWNNN в classicladder
classicladder.0.out-N OUT s32
На эти численные пины отображаются на переменные вывода %QWNNN из classicladder
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
Да, я тоже ща кое что нарыл на эту тему
http://wiki.linuxcnc.org/cgi-bin/emcinf ... 0#CONTACTS
Вот что пишут
http://wiki.linuxcnc.org/cgi-bin/emcinf ... 0#CONTACTS
Вот что пишут
How do I set up HAL pins in Classicladder?
If you just want to use BIT (they represent on or off states) pins it's easy the pins names look like this:
classicladder.0.in-00 This pin connects BIT HAL pins for signal going IN to classicladder. They correspond to %I variables with the same number eg. %I0
classicladder.0.out-01 This pin connects BIT HAL pins for signals going OUT from classicladder. They correspond to %Q variables with the same number eg %Q0
If you want to use S32 pins (they represent a +- quantity) then you have to do a little more work. You have to tell the realtime module to create the s32 pins. You do this by adding commands when loading the module
loadrt classicladder_rt numS32in=5 numS32out=5 This adds 5 S32in and 5 S32out pins to classicladder
When doing this you need to make sure that the number of S32 in and out pins plus the number of word variables is not more then the number of words loaded by the realtime module
(100 words is the default, so in this example we will have 90 words variables + 5 S32in + 5 S32out =100)
The pin names for S32 look like this:
classicladder.0.S32in-00 This pin connects S32 HAL pins for signals going IN to Classicladder. They correspond to %W -the numbers depend
classicladder.0.S32out-00 This pin connects S32 HAL pins for signals coming OUT of classicladder. They correspond to %W -the numbers depend
Using the example above (5 S32 in and out requested from realtime) The numbering system for %W variable works like this:
Pin name classicladder.0.S32in-00 to 04 coresponds to %W0 to %W4
Pin name classicladder.0.S32out-00 to 04 coresponds to %W5 to %W9
words (internal memory varaibles) are %W10 to %W99
If there are no S32in pin requested then the numbering for S32out Variables start at %W0
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
суть такая
Пин classicladder.0.in-00 соединяет BIT HAL пины для сигналов входящих в classicladder. Им соответсвуеют переменные %I с таким же номером, т.е. %I0
Пин classicladder.0.out-00 соединяет BIT HAL пины для сигналов выходящих bp classicladder. Им соответсвуеют переменные %Q с таким же номером, т.е. %Q0
Если вы хотите использовать пины S32, то должны сделать небольшую дополнительную работу. Вам придется сказать модулю реального времени создать s32 пин.
Вы сделаете это добавлением команды, когда загружаете модуль:
Она добавит 5 S32-пинов ввода и пять S32-пина вывода в classicladder.
Когда вы это сделаете, вам необходимо убедиться, что число S32 вводов и выводов плюс число переменных типа WORD не более чем число переменных типа word, загруженных в модуль реального времени. (по умолчанию 100, таким образом в этом примере мы будем иметь 90 переменных типа word + 5 вводов + 5 выводов S32).
Имена пинов для S32 выглядят следующим образом:
Пин classicladder.0.in-00 соединяет BIT HAL пины для сигналов входящих в classicladder. Им соответсвуеют переменные %W с зависимыми номерами.
Пин classicladder.0.out-00 соединяет BIT HAL пины для сигналов выходящих из classicladder. Им соответсвуеют переменные %W с зависимыми номерами.
Пользуемся примером выше (5 входов и выходов S32 запрашиваемых из модуля реального времени). Система нумерации для переменных %W работает следующим образом:
Пинам ввода с именами от classicladder.0.S32in-00 до classicladder.0.S32in-04 соответствуют переменные от %w0 до %W4.
Пинам вывода с именами от classicladder.0.S32out-00 до classicladder.0.S32out-04 соответствуют переменные от %w5 до %W9.
Внутренним переменным типа word - от %W10 до %W99.
Если не требуется вводных пинов S32, то нумерация выводных пинов S32 начинается с %W0.
Пин classicladder.0.in-00 соединяет BIT HAL пины для сигналов входящих в classicladder. Им соответсвуеют переменные %I с таким же номером, т.е. %I0
Пин classicladder.0.out-00 соединяет BIT HAL пины для сигналов выходящих bp classicladder. Им соответсвуеют переменные %Q с таким же номером, т.е. %Q0
Если вы хотите использовать пины S32, то должны сделать небольшую дополнительную работу. Вам придется сказать модулю реального времени создать s32 пин.
Вы сделаете это добавлением команды, когда загружаете модуль:
Код: Выделить всё
loadrt classicladder_rt numS32in=5 numS32out=5 Когда вы это сделаете, вам необходимо убедиться, что число S32 вводов и выводов плюс число переменных типа WORD не более чем число переменных типа word, загруженных в модуль реального времени. (по умолчанию 100, таким образом в этом примере мы будем иметь 90 переменных типа word + 5 вводов + 5 выводов S32).
Имена пинов для S32 выглядят следующим образом:
Пин classicladder.0.in-00 соединяет BIT HAL пины для сигналов входящих в classicladder. Им соответсвуеют переменные %W с зависимыми номерами.
Пин classicladder.0.out-00 соединяет BIT HAL пины для сигналов выходящих из classicladder. Им соответсвуеют переменные %W с зависимыми номерами.
Пользуемся примером выше (5 входов и выходов S32 запрашиваемых из модуля реального времени). Система нумерации для переменных %W работает следующим образом:
Пинам ввода с именами от classicladder.0.S32in-00 до classicladder.0.S32in-04 соответствуют переменные от %w0 до %W4.
Пинам вывода с именами от classicladder.0.S32out-00 до classicladder.0.S32out-04 соответствуют переменные от %w5 до %W9.
Внутренним переменным типа word - от %W10 до %W99.
Если не требуется вводных пинов S32, то нумерация выводных пинов S32 начинается с %W0.
Последний раз редактировалось Lexxa 13 янв 2012, 14:29, всего редактировалось 1 раз.
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
Nick, по поводу косяка.
Ну во-первых, криво подписано:
Вкладка первая: Configuration page - норм
Вкладка вторая : I/O Connector 2 - норм
Вкладка третья : II/O Connector 3 - не норм, надо -то I/O
Вкладка четвертая : I/O Connector 4 - норм
Во-вторых, открываем II/O Connector 3 и выбираем
1) меньший предел X
2) меньший предел Y
3) меньший предел Z
4) больший предел X - так вот больший предел в мастере отсутствует. Вместо него есть больший предел Y. Т.е больший предел Y там есть два раза.
5) больший предел Y
6) больший предел Z
Если предположить, что на месте первого большего предела Y должен быть больший предел X и выбрать его, то в выходном файле будет
Т.е. мастер вместо того чтобы назначить net max-y <= hm2_5i20.0.gpio.032.in_not делает net max-x <= hm2_5i20.0.gpio.031.in_not
Мастер вместо того чтобы написать net max-y => axis.1.pos-lim-sw-in пишет net y-pos-limit => axis.1.pos-lim-sw-in
При всем этом концевикам оси X он прописывает все вроде бы правильно.
Ну во-первых, криво подписано:
Вкладка первая: Configuration page - норм
Вкладка вторая : I/O Connector 2 - норм
Вкладка третья : II/O Connector 3 - не норм, надо -то I/O
Вкладка четвертая : I/O Connector 4 - норм
Во-вторых, открываем II/O Connector 3 и выбираем
1) меньший предел X
2) меньший предел Y
3) меньший предел Z
4) больший предел X - так вот больший предел в мастере отсутствует. Вместо него есть больший предел Y. Т.е больший предел Y там есть два раза.
5) больший предел Y
6) больший предел Z
Если предположить, что на месте первого большего предела Y должен быть больший предел X и выбрать его, то в выходном файле будет
Код: Выделить всё
...
# --- MAX-X ---
net max-x <= hm2_5i20.0.gpio.031.in_not
# --- MAX-X ---
net max-x <= hm2_5i20.0.gpio.031.in_not
# --- MAX-Z ---
net max-z <= hm2_5i20.0.gpio.032.in_not
...
net home-y => axis.1.home-sw-in
net min-y => axis.1.neg-lim-sw-in
net y-pos-limit => axis.1.pos-lim-sw-in
Мастер вместо того чтобы написать net max-y => axis.1.pos-lim-sw-in пишет net y-pos-limit => axis.1.pos-lim-sw-in
При всем этом концевикам оси X он прописывает все вроде бы правильно.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
Это надо будет на linuxcnc.org написать, чтобы пофиксили. Спасибо за подробное объяснение, сейчас psha чиркану, может он сам порядок наведет
.
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
Тем временем близится к финалу resolver to encoder на ПЛИСке)))
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
А как называется сигнал включения станка?
Спустя час. Пофиг как он называется. xenable, yenable и zenable скорее всего появляются после нажатия кнопки Включить станок в Axis.
В общем получается такая схема включения приводов:
E-stop-out -|amp_RD|-----|xenable|-----|yenable|----|zenable|-----(amp_enable)
Если я правильно разобрался в net и classicladder то в custom.hal я прописываю связи,
при том что в основной.hal у меня есть
Правильно?
Спустя час. Пофиг как он называется. xenable, yenable и zenable скорее всего появляются после нажатия кнопки Включить станок в Axis.
В общем получается такая схема включения приводов:
E-stop-out -|amp_RD|-----|xenable|-----|yenable|----|zenable|-----(amp_enable)
Если я правильно разобрался в net и classicladder то в custom.hal я прописываю связи,
Код: Выделить всё
net a_e_0 classicladder.0.in-00 <= estop-out
net a_e_1 classicladder.0.in-01 <= xenable
net a_e_2 classicladder.0.in-02 <= yenable
net a_e_3 classicladder.0.in-03 <= zenable
net a_e_4 classicladder.0.in-04 <= amp_RD
net a_e_out classicladder.0.out.00 => amp_enableКод: Выделить всё
# --- Включить приводы ---
setp hm2_5i20.0.gpio.045.is_output true
net amp_enable => hm2_5i20.0.gpio.045.out
# --- Готовность привода ---
net amp_RD <= hm2_5i20.0.gpio.033.in
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
Чего-то я все таки не догоняю.
Включаем станок. Для этого сбросить АВОСТ F1 и включаем сам станок F2.
За это время где-то должны успеть проверить готовы ли сервы и если они готовы включить станок.
Может логика должна быть чем-то типа:
1. включаем электричество.
2. станок встает на авост, если сервы не готовы сразу.
3. пытаемся сбросить авост через 1 секунду, если сервы готовы, то все ок - станок enable, если нет - то опять авост.
Тогда схема будет простой. Заводим пины axis.N.amp-enable-out OUT bit и axis.N.amp-fault-in IN bit к выводам сервы и все. Если есть пин готовности сервы, то его подключаем к fault с инвертом.
----------
Вот, что еще нашел:
John discovered that the servo amp "fault" signals actually indicate "not running", so they can't be connected directly to EMC. (EMC won't enable the amps if they are faulted, and the amps will indicate faulted until they are enabled... chicken and egg situation.) The answer is to condition the fault lines with "servo_enable", which is a natural job for ladder logic, which we will need later for the toolchanger anyway. With help from Pete in California, John was able to get ClassicLadder running, and wrote a few rungs of ladder logic to solve the fault logic problem. (Pete is the one who converted ClassicLadder to be compatible with EMC and HAL back in June.) With the fault and enable issues out of the way, John was able to hook a PID block to the X axis and get it tuned. By about 5:30am, X could be jogged and homed using EMC.
Включаем станок. Для этого сбросить АВОСТ F1 и включаем сам станок F2.
За это время где-то должны успеть проверить готовы ли сервы и если они готовы включить станок.
Может логика должна быть чем-то типа:
1. включаем электричество.
2. станок встает на авост, если сервы не готовы сразу.
3. пытаемся сбросить авост через 1 секунду, если сервы готовы, то все ок - станок enable, если нет - то опять авост.
Тогда схема будет простой. Заводим пины axis.N.amp-enable-out OUT bit и axis.N.amp-fault-in IN bit к выводам сервы и все. Если есть пин готовности сервы, то его подключаем к fault с инвертом.
----------
Вот, что еще нашел:
John discovered that the servo amp "fault" signals actually indicate "not running", so they can't be connected directly to EMC. (EMC won't enable the amps if they are faulted, and the amps will indicate faulted until they are enabled... chicken and egg situation.) The answer is to condition the fault lines with "servo_enable", which is a natural job for ladder logic, which we will need later for the toolchanger anyway. With help from Pete in California, John was able to get ClassicLadder running, and wrote a few rungs of ladder logic to solve the fault logic problem. (Pete is the one who converted ClassicLadder to be compatible with EMC and HAL back in June.) With the fault and enable issues out of the way, John was able to hook a PID block to the X axis and get it tuned. By about 5:30am, X could be jogged and homed using EMC.
- Lexxa
- Мастер
- Сообщения: 2703
- Зарегистрирован: 16 дек 2011, 16:48
- Репутация: 319
- Настоящее имя: Алексей
- Откуда: ryazan
- Контактная информация:
Re: Модернизация фрезерного 6Р13Ф3-01
Не, насколько я понимаю, сброс АВОСТа это возможность включить станок. Это кнопка-грибок с фиксацией на пром. станках. До тех пор пока она нажата станок включить нельзя. Максимум, что можно это только вводной автомат включить только для того, чтобы на НЗ контакте грибка появилось напряжение, которое подается на пусковую кнопку.
В нашем случае АВОСТ это программная штука, которая только отключает ЧПУ.
Я хочу привязать её еще и к приводам.
Авария вообще может произойти и со стороны привода. При возникновении таковой необходимо снять сигнал разрешения включения приводов (amp_enable).
xenable, yenable, zenable - прграммные сигналы.
amp_enable - аппаратный.
Последовательность включения приводов такая должна быть
Включаем станок на шкафу электроавтоматики.
Как только включился шкаф электроавтоматики приводы сами вырабатывают сигнал готовности, в случае, если на них никакой аварии не было (там есть куча всяки защит).
Как только мы в Axis сбрасываем АВОСТ мы получаем возможность включить приводы.
Приводы мы имеем право включать только если они готовы.
Итак, если нет никаких аварий, если снят сигнал АВОСТ и нажата кнопка включить станок F2, то только в этом случае включаются привода.
Аварийные отключения в этом случае произойдут автоматически в случае аварии на приводах, нажатия E-stop ну или выключения станка по F2.
В нашем случае АВОСТ это программная штука, которая только отключает ЧПУ.
Я хочу привязать её еще и к приводам.
Авария вообще может произойти и со стороны привода. При возникновении таковой необходимо снять сигнал разрешения включения приводов (amp_enable).
xenable, yenable, zenable - прграммные сигналы.
amp_enable - аппаратный.
Последовательность включения приводов такая должна быть
Включаем станок на шкафу электроавтоматики.
Как только включился шкаф электроавтоматики приводы сами вырабатывают сигнал готовности, в случае, если на них никакой аварии не было (там есть куча всяки защит).
Как только мы в Axis сбрасываем АВОСТ мы получаем возможность включить приводы.
Приводы мы имеем право включать только если они готовы.
Итак, если нет никаких аварий, если снят сигнал АВОСТ и нажата кнопка включить станок F2, то только в этом случае включаются привода.
Аварийные отключения в этом случае произойдут автоматически в случае аварии на приводах, нажатия E-stop ну или выключения станка по F2.
