Страница 18 из 28

Re: Модернизация токарного станка

Добавлено: 12 апр 2012, 15:17
nkp
Dmaster писал(а):как кого нибудь на станок намотает- скажу, что ты виноват!))))
Вот так помогай людям :lol:

Re: Модернизация токарного станка

Добавлено: 12 апр 2012, 15:26
Nick
А размер секции никак нельзя увеличить?

Re: Модернизация токарного станка

Добавлено: 12 апр 2012, 17:34
Dmaster
увы никак(...

Re: Модернизация токарного станка

Добавлено: 13 апр 2012, 19:20
Dmaster
nkp писал(а):КОЛХОЗ!А какая разница сколько там разных цяцек . Лишь бы работало надежно! А работать будет
Сломался я и сделал колхоз. ..... И ОНО РАБОТАЕЕЕТ!!!!!!! :cheesy: :good: ....
Меняте инструмент!.. две резцедержки крутятся как часы!)!!
Осталась коробка на понедельник))
Ах .да забыл.. СППАСИИИИИИБО!!!!

Re: Модернизация токарного станка

Добавлено: 13 апр 2012, 19:34
nkp
Я вот думаю надо с нуля CL описать-очень трудно (по крайней мере мне так было :) ) с наскоку въехать во все это.Такой маленький (или не очень) ликбез для тех, кто
столкнется в первый раз.Хочу для этого дополнять в свою тему в шапку инфу-если Ник не против.http://cnc-club.ru/forum/viewtopic.php?f=15&t=1470
Или другую тему открыть?

Re: Модернизация токарного станка

Добавлено: 13 апр 2012, 19:53
Dmaster
Я вот только за, но увы понимаю, что мало-мальски сложную вещь не стоит писать на ладдере. Надо-бы язык какой нибудь поучить.
да и грамоско на ладдере выходит.. смена инструмента 6+6 умена вышла на 19 секций. а если там будет нормальная такая штука на 30 инструментов?.....

Из опыта по ладдеру скажу вот что. Когда присваиваешь имена переменным, то не работает compare с этими переменными))) лучше без имен.
Дальше .. если использовать call coil , то если с пина call coil снять true раньше, чем cнимется true в цикле описанном , на который call coil ссылается, то заклинит нафиг все перенные в том цикле.
Если спользовать jumpcoil и сослаться на секцию выше ..., то чпу нафиг зависнет!)))

Re: Модернизация токарного станка

Добавлено: 13 апр 2012, 19:57
nkp
Dmaster писал(а): Если спользовать jumpcoil и сослаться на секцию выше ..., то чпу нафиг зависнет!)))
Ну об этом прямо сказано в wiki

Re: Модернизация токарного станка

Добавлено: 13 апр 2012, 20:04
nkp
Dmaster писал(а):Я вот только за, но увы понимаю, что мало-мальски сложную вещь не стоит писать на ладдере. Надо-бы язык какой нибудь поучить.
А можно аргументировать (не в порядке спора,а только лишь для образовательных целей) "не стоит" .
CL по моему весь написан на си ,интерфейс на gtk.c .

Re: Модернизация токарного станка

Добавлено: 13 апр 2012, 20:07
Nick
nkp писал(а):Хочу для этого дополнять в свою тему в шапку инфу-если Ник не против.http://cnc-club.ru/forum/viewtopic.php?f=15&t=1470
Не понял, чего ты хочешь, но я не против :)!

ИМХО, все, чему не нужен реалтайм можно писать без классик ладдера, но если речь идет о той же смене инструмента, где нужно четко тормозить карусель... хотя до конца не ясно, надо все это тестировать...

ЗЫ если будешь изучать языки, то изучай или Си или питон. Питон проще ;).

Re: Модернизация токарного станка

Добавлено: 22 апр 2012, 19:08
Dmaster
Коробка запущена!)))) Инструмент меняется!))) скоро буду требовать медальку за собранный станок)
остались мелочи).
скорость шпинделя при M3 выводится с положительным знаком, а при M4 с отрицатльным. Я всю логику уже написал с тем условием, что задание на вращение всегда положительно. Как это поменять?).

Re: Модернизация токарного станка

Добавлено: 23 апр 2012, 16:00
Nick
Ну можешь сделать через mux или через sum или через scale, и от этого компонента получить модуль от задания скорости шпинделя.
Как тебе больше нравится?

Для медальки надо будет отчет о проделанной работе, а то тема большая, лень всю перечитывать :).

Re: Модернизация токарного станка

Добавлено: 26 апр 2012, 19:45
Dmaster
Запуск станка отожен в связи с мааааленьки упущением, ... А НЕТ В EMC кодов M10 M11(Открыть/Закрыть патрон)
Исходя из этого
http://www.linuxcnc.org/docs/devel/html ... cture.html
Добавить в ини файл такое - не проблема.
[RS274NGC]
REMAP=M10 modalgroup=10 ngc=chuckopen
REMAP=M11 modalgroup=10 ngc=chuckclose

Но вот как описать "O" процедуру, которая запретит исполнение м10 при вращении шпиндея. запретит вращение шпинделя, если не была проведена процедура м11.
Ой как не хочется запустить по цеху заготовку... потому. что кто-то невовремя на педаль нажал...

Re: Модернизация токарного станка

Добавлено: 26 апр 2012, 20:09
Nick
ИМХО это надо не на o коде писать, а на hal... Есть какие-то датчики состояния патрона?

В о-кодах можно попробовать сделать через motion.digital-in-NN или motion.analog-in-NN

Re: Модернизация токарного станка

Добавлено: 26 апр 2012, 20:18
Dmaster
датчиков состояния патрона нет( точнее из не стало еще давно.)
Nick писал(а):это надо не на o коде писать, а на hal..
а как это сделать, и как потом из хаа назначить М10

Re: Модернизация токарного станка

Добавлено: 26 апр 2012, 20:46
Nick
Если датчиков нет, тогда хреново...
Тогда делаем так на motion.digital-in-NN заводим пин состояния шпинделя - 1 вращается, 0 не вращается.
В O процедуре пишем:

M66 P[NN] L2
M65 P[хх] - говорим, что патрон разжат
И потом разжатие патрона. Вместо L2 - ожидание ниспадающего сигнала можно поставить L4 - ожидаание 0.

Зажатие:
M64 P[хх] - говорим, что патрон зажат

И в управлении шпинделем добавляем дополнительное условие, на наличие этого пина.

Re: Модернизация токарного станка

Добавлено: 26 апр 2012, 21:11
Dmaster
Nick писал(а):M66 P[NN] L2 M65 P[хх] - говорим, что патрон разжат
а м11 м10 поставить можно?.
что такое L2 и L4 ... что-то не могу найти мануал по O процедуре

Re: Модернизация токарного станка

Добавлено: 26 апр 2012, 22:00
Nick
Dmaster писал(а):что такое L2 и L4 ... что-то не могу найти мануал по O процедуре
Это от M66 параметры: http://linuxcnc.org/docs/html/gcode/m-c ... ut-Control
Dmaster писал(а):а м11 м10 поставить можно?.
ты же вот это писал:
Dmaster писал(а):[RS274NGC]REMAP=M10 modalgroup=10 ngc=chuckopen
REMAP=M11 modalgroup=10 ngc=chuckclose
я правда такое не пробовал никогда.
По логике вещей, должно быть после такой настройки m11 будет вызывать файл chuckclose.ngc, в котором надо создать такую штуку:
o<chuckclose> sub
(сюда пишешь Gкод для зажима)
o<chuckclose> endsub
По О кодам вот тут ман: http://linuxcnc.org/docs/html/gcode/o-c ... ubroutines

Re: Модернизация токарного станка

Добавлено: 26 апр 2012, 22:32
Dmaster
Получается так. Добавляю в ини файл.
[RS274NGC]
REMAP=M10 modalgroup=10 ngc=chuckopen
REMAP=M11 modalgroup=10 ngc=chuckclose

в файле chuckopen.ngc
o<chuckopen> sub
M5
setp halcmd parport.5.pin-01-out 1
o<chuckopen>endsub

в файле chuckclose.ngc
o<chuckclose> sub
setp halcmd parport.5.pin-01-out 0
o<chuckclose> endsub

Завтра буду проверять)))

Re: Модернизация токарного станка

Добавлено: 26 апр 2012, 22:38
Nick
Dmaster писал(а):setp halcmd parport.5.pin-01-out 0
Не, так не должно сработать внутри файла по-идее должен быть Gкод...
И вообще ИМХО лучше это делать через digital-in/out M66...

Re: Модернизация токарного станка

Добавлено: 27 апр 2012, 07:17
Dmaster
Вот пример того, как делали M код с подключением к халу. Но я его не понимаю. ибо не програмист. Можешь построчно объяснить что и зачем в этом коде.?
This is how I manipulate extra features on my lathe from gcode. For instance I use M106 to set "high gear". The HighGearRequest? signal is an input to Ladder. M106 sets HighGearRequest? to TRUE. Ladder waits until it's safe to switch gears (the spindle has stopped, etc.), then does it. The end result of the gear change is the HighClutch? HAL signal is set to TRUE. M106 uses the waitfor script to wait for this HighClutch? signal. EMC2, in turn, waits for M106 to complete before continuing.

The contents of ~/emc2/nc_files/M106:

#!/bin/sh
halcmd sets HighGearRequest 1
~/emc2/nc_files/waitfor HighClutch TRUE
halcmd sets HighGearRequest 0

The contents of ~/emc2/nc_files/waitfor:

#!/bin/bash

if [ $# != 2 ]; then
echo usage: $0 SignalName DesiredValue
exit 1
fi

signal=$1
value=$2

while :; do
set -- $(halcmd -s show sig $signal)
if [ x"$2" == x"$value" ]; then
exit 0
fi
sleep 1
done