Страница 73 из 123

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 23 дек 2013, 16:54
Nick
Т.е. тоже с таймером делал? Не пробовал с --(R)- или --(S)-?
По ошибке - тупо возьми пин start и заведи на таймер выход которого на ошибку. Или лучше наверное в hal написать
iocontrol.0.tool-change => timedelay.N.in
setp timedelay.N.on-delay - время на смену
timedelay.N.out => not.in
not.out => or2.in1
estop-ext => or2.in0
or2.out => iocontrol.0.emc-enable-in

или и правда на ладдере проще сделать :)... хммм... но or2 всеравно придется использовать, чтобы сделать несколько условий на estop...

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 23 дек 2013, 16:59
aftaev
Nick писал(а):но or2 всеравно придется использовать, чтобы сделать несколько условий на estop...
мне еще estop на светофор заводить нужно :)

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 23 дек 2013, 21:13
NightV
aftaev писал(а):estop на светофор
блин! хорошая идея! :good: себе тоже выведу
какие еще идеи есть насчет светофора? на пром станках там 3 света

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 23 дек 2013, 23:53
Lexxa
зеленый - раотает по прогамме,
красный - авария или е-стоп
оранжевый - в ручном режиме работает или просто простаивает

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 23 дек 2013, 23:55
Lexxa
вариант 2:

только один цвет
горит - по программе работает
моргает - авария или е-стоп
не горит - все и так понятно

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 10:01
Nick
aftaev писал(а):мне еще estop на светофор заводить нужно
Светофор это вывод - с ним проще, к одному пину вывода можно подключить хоть 10 светофоров.
А вот авария по не смене инструмента - это ввод, для комбинации вводов надо писать логику. Т.е. если у тебя 10 кнопок Estop и ты хочешь их программно объединить то нужно описать логику объединения.

Кстати если у тебя будет много таких кнопочек, то их можно объединить через компонент logic http://linuxcnc.org/docs/html/man/man9/logic.9.html

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 10:27
NightV
Nick писал(а): если у тебя 10 кнопок Estop и ты хочешь их программно объединить
вообщето если их несколько (реальных на станке) то лучше все последовательно и "нормально закрытые".
в этом случае ты всегда знаеш что они исправны (ну почти) и ни одна не нажата, и понадобится всего один вход.
Nick писал(а):авария по не смене инструмента - это ввод
думаю это должна быть не "авария" а просто "ждать" пока не отработает. кстате у меня на окуме так сделано, концевик висит

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 10:30
aftaev
NightV писал(а):какие еще идеи есть насчет светофора? на пром станках там 3 света
У меня 3х цветные.

1. Моргает желтый - не найдены НОМЕ
2. Горит зеленый работает программа
3. Моргает зеленый работаем в ручном режиме
4. Горит красный - СТОП(пауза)
5. Моргат красный - Естоп

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 10:55
Nick
NightV писал(а):думаю это должна быть не "авария" а просто "ждать" пока не отработает. кстате у меня на окуме так сделано, концевик висит
Если за час не сменился - наверное все таки авария... :)
aftaev писал(а):У меня 3х цветные.

1. Моргает желтый - не найдены НОМЕ
2. Горит зеленый работает программа
3. Моргает зеленый работаем в ручном режиме
4. Горит красный - СТОП(пауза)
5. Моргат красный - Естоп
Это все можно, только моргалку надо будет сделать...
По моргалке - либо ladder с таймерами, либо timedelay на hal, тебе как больше нравится?

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 10:56
PKM
Nick писал(а):По моргалке - либо ladder с таймерами, либо timedelay на hal, тебе как больше нравится?
а Stepgen не подойдет? )))

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 11:02
Nick
Можно и его... Как раз смотрел по докам :)
Интересно, кто больше всего проца сожрет?

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 11:30
Сергей Саныч
pwmgen на низкой частоте можно использовать как моргалку. Или siggen.
а если вход первого подключить к выходу второго, так можно и плавное мигание устроить.
И к ёлке подключить :hehehe:

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 11:54
NightV
заведи siggen.N.clock в ладер и моргай чем хош :hehehe:
я здесь так сделал Всего понемногу (реанимация 4 axis гравера по стеклу) #151

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 11:59
Nick
NightV писал(а):заведи siggen.N.clock в ладер и моргай чем хош
О, а я этот пин никак не мог найти, думал там только float.

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 14:51
aftaev
Nick писал(а):По моргалке - либо ladder с таймерами, либо timedelay на hal, тебе как больше нравится?
чтобы что то нравилось нужно знать вообще что это такое :)

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 15:38
Nick
Короче, делай лучше всего через siggen, как написал NightV :
В hal надо добавить

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

# загружаем siggen для моргания светофором
loadrt siggen names=siggen.blink
addf siggen.blink.update servo-thread
# устанавливаем частоту
setp siggen.blink.frequency 1 # 1Гц
# подключаем выход к ladder
net blink		 <= siggen.blink.clock 			=> classicladder.0.in-XX # сюда номер входа поставь
# подключаем пины текущего состояния к ladder
net is-running	 <= halui.program.is-running 	=> classicladder.0.in-XX
net is-paused	 <= halui.program.is-paused		=> classicladder.0.in-XX
net is-idle		 <= halui.program.is-idle 		=> classicladder.0.in-XX
net estop-out 									=> classicladder.0.in-XX
net x-homed 	<= halui.joint.0.is-homed 		=> classicladder.0.in-XX # найдено начало по X
net z-homed 	<= halui.joint.2.is-homed		=> classicladder.0.in-XX # найдено начало по Z

# разводим пины вывода
net red-led 		<= classicladder.0.out-XX	=> hm2_5i25.0.7i77.0.0.output-XX
net yellow-led 		<= classicladder.0.out-XX 	=> hm2_5i25.0.7i77.0.0.output-XX
net green-led 		<= classicladder.0.out-XX 	=> hm2_5i25.0.7i77.0.0.output-XX
Собственно осталось вместо XX поставить номера пинов и сделать схему на ladder, например, для "Моргает желтый - не найдены НОМЕ":

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

  x-homed    z-homed    blink     yellow
----|/|--------|/|-------| |--------()---

хотя нет, надо не так, а так: 

  x-homed   
 +--|/|------+    blink     yellow
-| z-homed   |-----| |--------()---
 +--|/|------+


Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 15:53
Serg
Nick писал(а):Можно и его... Как раз смотрел по докам :)
Интересно, кто больше всего проца сожрет?
Извращенцы! А железное реле поворота от грузовика не проще? Типа аппаратная реализация. :)

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 24 дек 2013, 18:20
aftaev
UAVpilot писал(а):Извращенцы! А железное реле поворота от грузовика не проще? Типа аппаратная реализация.
тогда нужны будут выводы: красный,желтый,зеленый, просто горит, мигает. Тобишь лишний канал.

Попробую с Ардуиной разобраться HAL2Arduino #34 на ней мож и мигалка и панелька заработает :)

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 06 янв 2014, 21:40
NightV
а готового пина на Зеленый разве нет? я вот не нашел :( придется в ладере мудрить...

Re: Восстановление токарного 16К20Т1 ЧПУ

Добавлено: 16 янв 2014, 01:18
nkp
тут вот мысли по поводу подключению "галетника"
через подправленый MUX8:

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

component mux8 "Select from one of eight input values"; // sudo comp --install mux8.comp
pin in bit sel0;
pin in bit sel1;
pin in bit sel2;
pin out s32 out;

function _;
license "GPL";
;;
FUNCTION(_) {
    if(sel0) {
        if(sel1) {
            if(sel2) out = 8;
            else     out = 4;
        }
        else {
            if(sel2) out = 6;
            else     out = 2;
        }
    }
    else {
       if(sel1) {
            if(sel2) out = 7;
            else     out = 3;
        }
        else {
            if(sel2) out = 5;
            else     out = 1;
        }
    }
}
при загрузке его в Hal появляются пины

mux8.0.sel0
mux8.0.sel1
mux8.0.sel2
их конектим к выходам галетника и на
mux8.0.out
имеем просто номер требуемого инструмента 1-6
---------------
mux8.comp.rar
(284 байт) 238 скачиваний
распаковать в домашнюю папку
в терминале:
sudo comp --install mux8.comp