Re: Mesa 5i25+7i77 и фрезерный станок 6Р13ф3
Добавлено: 17 апр 2014, 10:41
Ура все заработало огромное спасибо !
Статьи, обзоры, цены на станки и комплектующие.
https://www.cnc-club.ru/forum/
Nick писал(а):Ууу... тогда все сложнее...
Фух... как-то так... писал прямо в форум, так что могут быть ошибки...Код: Выделить всё
# отключаем сигнал от halui.jog-speed, хрен знает зачем его в pncconf назначают unlinkp halui.jog-speed # выставляем нужную скорость # отключаем mux16, который был загружен ранее для feed-override unloadrt mux16 loadrt mux16 addf mux16.0 servo-thread net gal-0 => mux16.0.sel0 net gal-1 => mux16.0.sel1 net gal-2 => mux16.0.sel2 net gal-3 => mux16.0.sel3 setp mux16.0.suppress-no-input true setp mux16.0.in1 3 setp mux16.0.in2 30 setp mux16.0.in4 240 setp mux16.0.in8 1000 net jog-speed <= mux16.0.out => halui.jog-speed # Выделим кнопку в отдельный сигнал - кнопка нажата = любой из контактов галетника замкнут, т.е. or для всех контактов. loadrt or2 count=3 addf or2.0 servo-thread addf or2.1 servo-thread addf or2.2 servo-thread net gal-0 => or2.0.in0 <= hm2_5i25.0.7i77.0.0.input-XX net gal-1 => or2.0.in1 <= hm2_5i25.0.7i77.0.0.input-XX net gal-2 => or2.1.in0 <= hm2_5i25.0.7i77.0.0.input-XX net gal-4 => or2.1.in1 <= hm2_5i25.0.7i77.0.0.input-XX net or-01 => or2.2.in0 <= or2.0.out net or-02 => or2.2.in0 <= or2.1.out net jog <= or2.2.out # Это по переключателям xyz - фактически делаем and2 кнопки и каждого пина переключателя, и вывод на перемещение оси. loadrt and2 count=6 addf and2.0 servo-thread addf and2.1 servo-thread addf and2.2 servo-thread addf and2.3 servo-thread addf and2.4 servo-thread addf and2.5 servo-thread net jog => and2.0.in1 net jog => and2.1.in1 net jog => and2.2.in1 net jog => and2.3.in1 net jog => and2.4.in1 net jog => and2.5.in1 net and2-0-in0 => and2.0.in0 <= hm2_5i25.0.7i77.0.0.input-XX net and2-1-in0 => and2.1.in0 <= hm2_5i25.0.7i77.0.0.input-XX net and2-2-in0 => and2.2.in0 <= hm2_5i25.0.7i77.0.0.input-XX net and2-3-in0 => and2.3.in0 <= hm2_5i25.0.7i77.0.0.input-XX net and2-4-in0 => and2.4.in0 <= hm2_5i25.0.7i77.0.0.input-XX net and2-5-in0 => and2.5.in0 <= hm2_5i25.0.7i77.0.0.input-XX net and2-0-out <= and2.0.out => halui.jog.0.minus net and2-1-out <= and2.1.out => halui.jog.0.plus net and2-2-out <= and2.2.out => halui.jog.1.minus net and2-3-out <= and2.3.out => halui.jog.1.plus net and2-4-out <= and2.4.out => halui.jog.2.minus net and2-5-out <= and2.5.out => halui.jog.2.plus
Вместо input-XX - поставь нужные пины
Да, там два файла, один на pncconf сделан, и иногда правится, поэтому я там делал unlinkpnkp писал(а):я так понял - у тебя два хал файла?
во втором убрать строку
Т.е. чтобы сразу по двум осям ездить было нельзя?SONIC300077 писал(а):А как тут бы дописать, например чтобы пока включен тумблер +X (net and2-0-out <= and2.0.out => halui.jog.0.minus) Все остальные были блокированы и аналогично для всех осей! так сказать от греха подальше
Nick писал(а):Т.е. чтобы сразу по двум осям ездить было нельзя?
Код: Выделить всё
net and2-0-in0 => and2.0.in0 <= hm2_5i25.0.7i77.0.0.input-19
net and2-1-in0 => and2.1.in0 <= hm2_5i25.0.7i77.0.0.input-20
net and2-2-in0 => and2.2.in0 <= hm2_5i25.0.7i77.0.0.input-21
net and2-3-in0 => and2.3.in0 <= hm2_5i25.0.7i77.0.0.input-22
net and2-4-in0 => and2.4.in0 <= hm2_5i25.0.7i77.0.0.input-23
net and2-5-in0 => and2.5.in0 <= hm2_5i25.0.7i77.0.0.input-24
net and2-0-out <= and2.0.out => halui.jog.0.minus
net and2-1-out <= and2.1.out => halui.jog.0.plus
net and2-2-out <= and2.2.out => halui.jog.1.minus
net and2-3-out <= and2.3.out => halui.jog.1.plus
net and2-4-out <= and2.4.out => halui.jog.2.minus
net and2-5-out <= and2.5.out => halui.jog.2.plus
Код: Выделить всё
loadrt classicladder_rt numPhysInputs=15 numPhysOutputs=15 numS32in=10 numS32out=10 numFloatIn=10 numFloatOut=10 numTimersIec=20
loadusr classicladder butt.clp
addf classicladder.0.refresh servo-thread
net clin0 classicladder.0.in-00 hm2_5i25.0.7i77.0.0.input-19
net clin1 classicladder.0.in-01 hm2_5i25.0.7i77.0.0.input-20
net clin2 classicladder.0.in-02 hm2_5i25.0.7i77.0.0.input-21
net clin3 classicladder.0.in-03 hm2_5i25.0.7i77.0.0.input-22
net clin4 classicladder.0.in-04 hm2_5i25.0.7i77.0.0.input-23
net clin5 classicladder.0.in-05 hm2_5i25.0.7i77.0.0.input-24
net clout0 classicladder.0.out-00 and2.0.in0
net clout1 classicladder.0.out-01 and2.1.in0
net clout2 classicladder.0.out-02 and2.2.in0
net clout3 classicladder.0.out-03 and2.3.in0
net clout4 classicladder.0.out-04 and2.4.in0
net clout5 classicladder.0.out-05 and2.5.in0
net and2-0-out <= and2.0.out => halui.jog.0.minus
net and2-1-out <= and2.1.out => halui.jog.0.plus
net and2-2-out <= and2.2.out => halui.jog.1.minus
net and2-3-out <= and2.3.out => halui.jog.1.plus
net and2-4-out <= and2.4.out => halui.jog.2.minus
net and2-5-out <= and2.5.out => halui.jog.2.plus
Ну они как таковые на работу не влияют - они влияют на условие аварии. Т.е. если рассогласование текущего положения оси и заданного положения оси будет больше FERROR - это авария. Это чисто контрольная величина... Какую ее выставить зависит от отого как настроен ПИД.SONIC300077 писал(а):И еще вот думал спросить про вот эти параметры
сейчас они у меня с вот такими значениями
FERROR = 1.0
MIN_FERROR = 0.5
да все классно ! все работает, только вотnkp писал(а):если подходит - пропишем в хал...
Спасибо Ник, в принципе так думал, просто решил разогнать сомнения !Nick писал(а):Ну они как таковые на работу не влияют - они влияют на условие аварии. Т.е. если рассогласование текущего положения оси и заданного положения оси будет больше FERROR - это авария. Это чисто контрольная величина... Какую ее выставить зависит от отого как настроен ПИД.
(кроме самых правых)Nick писал(а):Оно вроде так и должно сработать... Или может надо еще все %Qх поменять на %Iх...
Сейчас оно работает так ! какой первый тумблер включил он всегда будет активный ! просто если его забыли выключить или мало ли что ! то оператор включает другую ось и надеется что поедет именно она ! а едет совсем другая (та которую забыл выключить) а при привязке инструмента это может оказаться чреватое, да и оператор в шокеNick писал(а):Оно вроде так и должно сработать... Или может надо еще все %Qх поменять на %Iх...
Я как бы с этой штукой ток что познакомился, поэтому мы еще не нашли общего языка !Nick писал(а):(кроме самых правых)Nick писал(а):Оно вроде так и должно сработать... Или может надо еще все %Qх поменять на %Iх...
Код: Выделить всё
net clin0 classicladder.0.in-00 hm2_5i25.0.7i77.0.0.input-19
net clin1 classicladder.0.in-01 hm2_5i25.0.7i77.0.0.input-20
net clin2 classicladder.0.in-02 hm2_5i25.0.7i77.0.0.input-21
net clin3 classicladder.0.in-03 hm2_5i25.0.7i77.0.0.input-22
net clin4 classicladder.0.in-04 hm2_5i25.0.7i77.0.0.input-23
net clin5 classicladder.0.in-05 hm2_5i25.0.7i77.0.0.input-24
net clout0 classicladder.0.out-00 and2.0.in0
net clout1 classicladder.0.out-01 and2.1.in0
net clout2 classicladder.0.out-02 and2.2.in0
net clout3 classicladder.0.out-03 and2.3.in0
net clout4 classicladder.0.out-04 and2.4.in0
net clout5 classicladder.0.out-05 and2.5.in0
net and2-0-out <= and2.0.out => halui.jog.0.minus
net and2-1-out <= and2.1.out => halui.jog.0.plus
net and2-2-out <= and2.2.out => halui.jog.1.minus
net and2-3-out <= and2.3.out => halui.jog.1.plus
net and2-4-out <= and2.4.out => halui.jog.2.minus
net and2-5-out <= and2.5.out => halui.jog.2.plus
Код: Выделить всё
net and2-0-in0 => and2.0.in0 <= classicladder.0.in-00 hm2_5i25.0.7i77.0.0.input-19
net and2-1-in0 => and2.1.in0 <= classicladder.0.in-01 hm2_5i25.0.7i77.0.0.input-20
net and2-2-in0 => and2.2.in0 <= classicladder.0.in-02 hm2_5i25.0.7i77.0.0.input-21
net and2-3-in0 => and2.3.in0 <= classicladder.0.in-03 hm2_5i25.0.7i77.0.0.input-22
net and2-4-in0 => and2.4.in0 <= classicladder.0.in-04 hm2_5i25.0.7i77.0.0.input-23
net and2-5-in0 => and2.5.in0 <= classicladder.0.in-05 hm2_5i25.0.7i77.0.0.input-24
net and2-0-out <= and2.0.out => halui.jog.0.minus
net and2-1-out <= and2.1.out => halui.jog.0.plus
net and2-2-out <= and2.2.out => halui.jog.1.minus
net and2-3-out <= and2.3.out => halui.jog.1.plus
net and2-4-out <= and2.4.out => halui.jog.2.minus
net and2-5-out <= and2.5.out => halui.jog.2.plus
net feed-hold classicladder.0.out-00 motion.feed-hold