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

Токарные станки с ЧПУ.
Аватара пользователя
Dmaster
Мастер
Сообщения: 1271
Зарегистрирован: 15 июл 2011, 13:36
Репутация: 476
Контактная информация:

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

Сообщение Dmaster »

говорит что хал уже запущен . предлагает halrun -U .. после выполнения всё равно одно и то-же.

В Ladder кстати в списке переменных значение %I1 Изменяется ( пропадает и появляется галка)..
что-ж тогда до завтра..
Во сколько тебя ожидать в сети, чтоб биться над непосильным мне вопросом?
" Linux CNC - наше всё"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

А при этом %Q1 не меняется?

PS В сети появлюсь часа через 2.
Аватара пользователя
Dmaster
Мастер
Сообщения: 1271
Зарегистрирован: 15 июл 2011, 13:36
Репутация: 476
Контактная информация:

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

Сообщение Dmaster »

Разобрался) заработало) С какогото перепугу написанный в ладдере файл оказывался пустым после сохранения проекта. ( когда запускаешь его через PNCCONF) а вот когда --nogui убрали и при запуске ладдер появился. его стопнуть по человечески, нарисовать и сохранить, ТО! после этого всё заработало и сохранилось.

Теперь вопросы по соединению хала. Вот комманды которые относятся к смене инструмента

tool-change iocontrol.0.tool-change
tool-changed iocontrol.0.tool-changed
tool-number iocontrol.0.tool-prep-number
tool-prepare-loopback iocontrol.0.tool-prepare
iocontrol.0.tool-prepared

это все или нет, или есть какие-то еще?

Теперь разберем саму комманду iocontrol.0.tool-change
Что означает нолик команде?
сама эта команда присваивает нужной мне переменной значение требуемого инструмента?
тоесть при "net smenainstr iocontrol.0.tool-change => моя переменная в ладдере " работать будет этот так.
в коде программы идет код T6M6 следовательно "моей переменной в ладдере" будет присвоено значение 6

ТАК?

и как привязать команды в коде программы S1, S2,..... S16 что-б ЕМС их поняла не как 1, 2 ... 16 оборотов в минуту, а просто сигнал на влючение той , или иной передачи?
как вариант.. если трудно заставить S1, S2,..... S16 , то как назначиь М101 м102 итд.
" Linux CNC - наше всё"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

iocontrol.0.tool-change
(Bit, Out) TRUE when a tool change is requested
Т.е. это только запрос на смену инструмента.

iocontrol.0.tool-number
(s32, Out) Current tool number - текущий инструмент

iocontrol.0.tool-prep-number
(s32, Out) The number of the next tool, from the RS274NGC T-word
А вот это как раз номер инструмента который мы хотим забрать. Причем команду на подготовку инструмента лучше давать заранее, чтобы карусель была уже готова. Т.е. команду T1 делаем заранее, а потом уже M6.

iocontrol.0.tool-prep-pocket
(s32, Out) The pocket number (location in tool storage mechanism) of the next tool, as described in the tool table
Это номер ячейки в карусели, в которой находится нужный нам инструмент (ячейки задаются в таблице инструментов).

iocontrol.0.tool-prepare
(Bit, Out) TRUE when a Tn tool prepare is requested
Это команда приготовить инструмент, наверное, появится на код Tхx. Причем это только команда, сам номер инструмента в пине выше.

iocontrol.0.tool-prepared
(Bit, In) Should be driven TRUE when a tool prepare is completed.
Это внутренний пин который будет говорить, что инструмент подготовлен. После него будет команда iocontrol.0.tool-change и после этого должен появиться выход iocontrol.0.tool-changed.

Да, переменная с номером инструмента не бит, а s32, поэтому ее пихать нужно в classicladder.0.s32in-XX.
Кстати, по смене инструмента на токарке на linuxcnc есть пример, но я не особо вчитывался: http://wiki.linuxcnc.org/emcinfo.pl?Cla ... ool_Turret

По передачам еще гляну.
Аватара пользователя
Dmaster
Мастер
Сообщения: 1271
Зарегистрирован: 15 июл 2011, 13:36
Репутация: 476
Контактная информация:

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

Сообщение Dmaster »

Nick писал(а):: http://wiki.linuxcnc.org/emcinfo.pl?Cla ... ool_Turret
Уже читал))) спасибо)...
Думаю этой информации достаточно по смене инструмента.) именно то что хтелось.

да, и где ты переменные ищешь? так и не нашел их полного собрания с маломальским описанием. вроде integrators manual весь пролистал.
" Linux CNC - наше всё"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Набери в консоле man iocontrol ;). Но обычно ищу тот же ман в сети, т.к. emc2 не везде установлен.
Либо вот тут: http://www.linuxcnc.org/docview/html/

По шестеренкам шпинделя. Можно сделать все автоматически, для этого есть компонент gearchange:

Gearchange

gearchange − Выбор из нескольких диапазонов скоростей Select from one two speed ranges

Описание

Вывод будет значением уменьшенным в соответствии с выбранной шестерней, и обрезанный до значений min/max для этой передачи. Размерность 1 шестерни считается 1. Размер второй шестеренки определяется относительно первой, т.е. если вторая шестеренка крутит шпиндель в 2.5 раза быстрее первой, то ее scale должен быть равен 2.5.

Функции

gearchange.N (требует поток с поддержкой floating-point)

Пины

gearchange.N.sel bit in - Ввод на выбор шестеренки
gearchange.N.speed-in float in - Ввод желаемой скорости
gearchange.N.speed-out float out - Команда скорости, вывод на ЦАП/ШИМ
gearchange.N.dir-in bit in - Ввод заданного направления
gearchange.N.dir-out bit out - Вывод направления, возможно инвертированный для второй шестерни

Параметры

gearchange.N.min1 float rw (default: 0) - Минимально разрешенная скорость для диапазона 1
gearchange.N.max1 float rw (default: 100000) - Максимально разрешенная скорость для диапазона 1
gearchange.N.min2 float rw (default: 0) - Минимально разрешенная скорость для диапазона 2
gearchange.N.max2 float rw (default: 100000) - Максимально разрешенная скорость для диапазона 2
gearchange.N.scale2 float rw (default: 1.0) Относительный размер шестеренки 2 от шестеренки 1, Т.к. подразумевается, что шестеренка 2 это "повышенная передача", то scale2 должен быть больше 1, и будет сброшен на 1 если установлен меньше.
gearchange.N.reverse bit rw (default: 0) - Установите в 1 для изменения направления вращения шпинделя на второй шестерне.

http://www.linuxcnc.org/docview/html//m ... nge.9.html
Аватара пользователя
Dmaster
Мастер
Сообщения: 1271
Зарегистрирован: 15 июл 2011, 13:36
Репутация: 476
Контактная информация:

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

Сообщение Dmaster »

то что доктор прописал)! но вопросы пока не иссякнут)
" Linux CNC - наше всё"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Хотя с этим gearchange не так все просто... на сколько я понимаю, он нужен тупо для вычисления ШИМ после выставления нужных шестерней, но сам вроде как их не выбирает :think:..... Т.е. выбирать придется отдельным компонентом. Возможно через тот же ladder logic, отслеживаем запрошенную скорость и в случае необходимости меняем шестеренку.
Аватара пользователя
Dmaster
Мастер
Сообщения: 1271
Зарегистрирован: 15 июл 2011, 13:36
Репутация: 476
Контактная информация:

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

Сообщение Dmaster »

Что через Ladder надо будет делать я вообще не сомневался, но вот как получить сигнал назначения той или иной шестеренки?
" Linux CNC - наше всё"
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Наверное также как и с инструментами. Делаем несколько сравнений по числу шестеренок. На входе заданная скорость шпинделя, потом сравниваем с текущим номером если отличаются, меняем.
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

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

Сообщение roach »

вопрос по classic ladder
как в реализовать включение выключение одной кнопкой? триггер? подскажите пожалуйста
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Попробуй вот так:

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

     Button          a      a
-----|/\|-----------| |----(R)---
               |
               |     a      a
               -----|\|----(S)---
Если не выйдет, добавим туда еще и таймер...
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

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

Сообщение roach »

Nick писал(а):Попробуй вот так:

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

     Button          a      a
-----|/\|-----------| |----(R)---
               |
               |     a      a
               -----|\|----(S)---
Если не выйдет, добавим туда еще и таймер...
спасибо! - лампа освещения работает.

а есть литература для начинающих? поделитесь.
Последний раз редактировалось roach 18 ноя 2011, 10:52, всего редактировалось 2 раза.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Пока только на английском... на LinuxCNC (правда у меня он что-то последнее время глючит).
http://linuxcnc.org/docs/html/ladder_cl ... adder.html
+ Integrators manual :).
Если есть вопросы не стесняйся спрашивай :).
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

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

Сообщение roach »

траспортер влево вправо - аналогично,
а как запретить, срабатывание одновременного нажатия влево и вправо?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Кнопка одна, или несколько?
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

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

Сообщение roach »

Nick писал(а):Кнопка одна, или несколько?
две - вправо и влево
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

так, а логика какая,

Стоим + нажали вправо = едем вправо
Стоим + нажали влево = едем влево
Едем влево + нажали вправо = ?
...
И едем пока держим кнопку или нажали - поехали, пока не нажали повторно?
Аватара пользователя
roach
Мастер
Сообщения: 205
Зарегистрирован: 01 июн 2011, 07:55
Репутация: 0
Контактная информация:

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

Сообщение roach »

Nick писал(а):так, а логика какая,

Стоим + нажали вправо = едем вправо
Стоим + нажали влево = едем влево
Едем влево + нажали вправо = ?
...
И едем пока держим кнопку или нажали - поехали, пока не нажали повторно?
стоим, нажали вправо 1 - едем вправо (нажатие влево не должно срабатывать )- нажали вправо 2 - остановились
стоим, нажали влево 1 - едем влево (нажатие вправо не должно срабатывать ) - нажали влево 2 - остановились
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

Ага, все просто, делаем таких две штуки и к каждой добавляем спереди "не другая" т.е., что-то типа такого (R и L - это сигнал вправо и влево):

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

   LButton   R         L      L
-----|/\|---|\|-------| |----(R)---
                  |
                  |    L      L
                  ----|\|----(S)---
                  
                  
   RButton   L         R      R
-----|/\|---|\|-------| |----(R)---
                  |
                  |    R      R
                  ----|\|----(S)---
Ответить

Вернуться в «Токарные станки»