Страница 1 из 2

Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 13:00
jo_key
Доброго времени суток, друзья!!
Анализировал топик Коробка шпинделя.. Нужны советы!) но что-то не могу осилить свою конфигурацию: 4-х скоростную коробку передач.
Вот исходные данные, но они возможно потом немного поменяются.
- имеется КС (коробка скоростей) с двумя блоками шестерён без нейтрального положения (4 диапазона)
- положение блоков шестерён определяется датчиками, активное состояние которых "0"
- Привод шпинделя - двигатель постоянного тока, возможно потребуется изменение скорости в пределах этих 4-х диапазонов (но это не первостепенная задача)
Вопросы нашему обществу, посоветуйте
1) философию подхода к решению данной задачи. (CL или средствами .comp и других разных костылей)
2) возможно вопросов будет куча - поэтому буду задавать по мере поступления.... или не буду вообще))

Заранее благодарен за понимание.

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 13:17
jo_key
Получается, что для переключения этих диапазона будет применяться команда типа M111-M114 ?
Где в данных М11х будут описываться действия...

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 13:24
nkp
jo_key писал(а):к решению данной задачи
а как переключаются передачи - вручную?
если да - то так ли нужны команды М... ??
я про то ,что стоит задача всего лишь "сделать" соответствие задаваемых оборотов и
фактических...
(это всё - если переключаем руками)

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 13:38
jo_key
переключение будет в автоматическом режиме по М-коду

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 13:45
jo_key
В ближайшее время опишу полностью процесс переключения. но они сходны с 2-х скоростными коробками..

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 13:47
nkp
есть такой пример:

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

!/bin/bash

## sets scale gain to make output speed accurate
## for each of 4 pulley settings

if [ ! $# -ge 1 ]; then
  echo "Usage: M101 n - where n is speed range 1 - 4"
  exit 1
fi

float=$1
int=${float/\.*}

case $int in

    1 ) halcmd setp scale.0.gain 0.595;;
#       accurate at 1200 in M4 for turning

    2 ) halcmd setp scale.0.gain 1.16;;
#       accurate at 600 in M4 for turning

    3 ) halcmd setp scale.0.gain 2.175;;
#       accurate at 300 in M3 for threading

    4 ) halcmd setp scale.0.gain 4.3;;
#       accurate at 150 in M3 for threading
esac

exit 0
дополнить его командами для пинов включения передач ...
ну и контроль реального включения через какую нибудь логику (and ,...)

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 13:55
jo_key
:o

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 13:56
jo_key
Вери сенкс....пошел усваивать написанное...))

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 14:27
Dmaster
А нафига по м коду? Ц меня шпиндель сам выбирает нужную скорость в зависимости от оборотов.

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 14:47
nkp
Dmaster писал(а):А нафига по м коду? Ц меня шпиндель сам выбирает нужную скорость в зависимости от оборотов.
а если 800 об\мин можно выбрать в двух диапазонах(или в трех) - тогда как?

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 14:56
jo_key
Вероятнее всего скорости и положение шестерен будут выбираться из УП.... но это еще не факт...
Dmaster писал(а):А нафига по м коду? Ц меня шпиндель сам выбирает нужную скорость в зависимости от оборотов.
а как он определяет положение блока шестерен??

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 15:20
Dmaster
Так вы сказали, что есть концевики

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 02 апр 2016, 17:50
jo_key
точно

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 05 апр 2016, 13:15
jo_key
Коллеги! Предоставляю более развернутую задачу по КС. Заранее простите за глупые вопросы, но они буду такими:
- имеется КС (коробка скоростей) с двумя блоками шестерён без нейтрального положения (4 диапазона)
- положение блоков шестерён (БШ) определяется датчиками, активное состояние которых "0" (К1-К4)
- Перемещение БШ осуществляется гидроцилиндрами, через золотники (3-6)
- При переключении КС необходимо также необходимо использовать ограничение момента двигателя.
Из всего этого мы мы имеем:
5 выходов (4 золотника и ограничитель момента) и 4 входа (концевики положения БШ)
Принцип работы хочется таковой:
при получения команды M41-M44 или M141-M144 задается скорость вращения шпинделя 20-30 об-мин и вкл. реле ограничения момента привода шпинделя
при команде Мх41 (1 диапазон) включаются золотники 3 и 4 и действуют до срабатывания концевиков 1 и 3 (акт состояние "0") после срабатывания концевиков не отключаем золотники (установить таймер на 1 сек), что бы шестерни зашли в полное зацепление. после - считаем что переключение произошло успешно и снимаем сигнал с золотников.
соответсвенно при Мх42 золотники 4 и 5, концевики 3 и 2
соответсвенно при Мх43 золотники 3 и 6, концевики 1 и 4
соответсвенно при Мх44 золотники 4 и 6, концевики 3 и 4

сообсна вопрос - как лучше реализовать такой алгоритм переключения?

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 05 апр 2016, 22:06
nkp
"красивей" всего написать компонент под эту коробку...
но можно попытаться и ладдером разрулить...
--------------
Выделение_025.png (4209 просмотров) <a class='original' href='./download/file.php?id=76872&mode=view' target=_blank>Загрузить оригинал (98.56 КБ)</a>
я так - попробовал,нужно конечно поподправлять))
используем remap:
в ини

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

[RS274NGC]
REMAP=M41  modalgroup=10  ngc=m41
REMAP=M42  modalgroup=10  ngc=m42
REMAP=M43  modalgroup=10  ngc=m43
REMAP=M44  modalgroup=10  ngc=m44
файлы m41.ngc,m42.ngc,m43.ngc,m44.ngc в папку со всеми жкодами
они такого вида:

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

o<m42>sub
M5 
M65 P1 ; деактивируем P1 
M65 P3 ; деактивируем P3 
M65 P4 ; деактивируем P4 
S20 M3 ; включаем нужные обороты
M64 P0 ; включаем реле момента
M64 P2 ;включаем 2 ступень
M66 P2 L0 Q60
o100 if[#5399 eq -1]
  (debug, !!) 
  m0
o100 endif

M65 P0

M5
o<m42>endsub
файл ладдера:
4.clp
(5.82 КБ) 1013 скачиваний
в хал:

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

loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES num_dio=12 num_aio=12

#######Ladder##################################################################################
loadrt classicladder_rt numPhysInputs=25 numPhysOutputs=25 numS32in=10 numS32out=10 numFloatIn=10 numFloatOut=10
loadusr classicladder 4.clp
addf classicladder.0.refresh servo-thread

#######Ladder##################################################################################
net  m64p1  motion.digital-out-01  classicladder.0.in-01
net  m64p2  motion.digital-out-02  classicladder.0.in-02
net  m64p3  motion.digital-out-03  classicladder.0.in-03
net  m64p4  motion.digital-out-04  classicladder.0.in-04

net  q11    motion.digital-in-01    classicladder.0.out-11
net  q12    motion.digital-in-02    classicladder.0.out-12
net  q13    motion.digital-in-03    classicladder.0.out-13
net  q14    motion.digital-in-04    classicladder.0.out-14
если вызываем М41 , в нем строкой

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

M64 P1 ;включаем 1 ступень
через пин motion.digital-out-01
включаем classicladder.0.in-01,
а он уже "включает" выходы Q3,Q4
(для просмотра содержимого нажмите на ссылку)
Выделение_026.png (4209 просмотров) <a class='original' href='./download/file.php?id=76873&mode=view' target=_blank>Загрузить оригинал (97.98 КБ)</a>
ну и так далее:
(для просмотра содержимого нажмите на ссылку)
Выделение_027.png (4209 просмотров) <a class='original' href='./download/file.php?id=76874&mode=view' target=_blank>Загрузить оригинал (96.62 КБ)</a>
Выделение_028.png (4209 просмотров) <a class='original' href='./download/file.php?id=76875&mode=view' target=_blank>Загрузить оригинал (81.75 КБ)</a>
Выделение_029.png (4209 просмотров) <a class='original' href='./download/file.php?id=76876&mode=view' target=_blank>Загрузить оригинал (80 КБ)</a>
входы для датчиков: I11,I12,I13,I14
если пара датчиков сработала,только тогда выдается сигнал на соответствующий выход(Q11-Q14)
а с него на пины motion.digital-in-01-motion.digital-in-04 ,
которые ждет M66 в наших файлах m41.ngc - m44.ngc
(для просмотра содержимого нажмите на ссылку)
Выделение_030.png (4209 просмотров) <a class='original' href='./download/file.php?id=76877&mode=view' target=_blank>Загрузить оригинал (49.93 КБ)</a>
Выделение_031.png (4209 просмотров) <a class='original' href='./download/file.php?id=76878&mode=view' target=_blank>Загрузить оригинал (56.49 КБ)</a>
Выделение_032.png (4209 просмотров) <a class='original' href='./download/file.php?id=76879&mode=view' target=_blank>Загрузить оригинал (51.35 КБ)</a>
Выделение_033.png (4209 просмотров) <a class='original' href='./download/file.php?id=76880&mode=view' target=_blank>Загрузить оригинал (49.86 КБ)</a>

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 06 апр 2016, 17:19
jo_key
Капец....))) Низкий поклон...и огромное спасибо!!! Буду пробовать

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 20 апр 2016, 13:27
jo_key
Вопросец, а как привязать classicladder.0.in-01 к пину hm2_5i25.0.7i77.0.0.input-16-not ??

net m64p1 motion.digital-out-01 classicladder.0.in-01
net m64p2 motion.digital-out-02 classicladder.0.in-02
net m64p3 motion.digital-out-03 classicladder.0.in-03
net m64p4 motion.digital-out-04 classicladder.0.in-04

net q11 motion.digital-in-01 classicladder.0.out-11
net q12 motion.digital-in-02 classicladder.0.out-12
net q13 motion.digital-in-03 classicladder.0.out-13
net q14 motion.digital-in-04 classicladder.0.out-14
------
net GB-I-up <= hm2_5i25.0.7i77.0.0.input-16-not
net GB-I-down <= hm2_5i25.0.7i77.0.0.input-17-not
net GB-II-up <= hm2_5i25.0.7i77.0.0.input-18-not
net GB-II-down <= hm2_5i25.0.7i77.0.0.input-19-not

не могу понять соответствие. я должен исправить GB-I-up на m64p1??

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 29 апр 2016, 11:56
Nick
jo_key писал(а):Вопросец, а как привязать classicladder.0.in-01 к пину hm2_5i25.0.7i77.0.0.input-16-not ??
net signal => classicladder.0.in-01
net signal <= hm2_5i25.0.7i77.0.0.input-16-not
Другое дело, что у тебя: classicladder.0.in-01 уже привязан к motion.digital-out-01. И если хочешь к нему дополнительно привязать еще один пин OUT (а hm2...input-xx это out), то нужна какая-то логическая связка. Или сделать отдельный пин в classic ladder и связать их уже внутри ладдера.

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 31 авг 2016, 11:40
vmarkiv
Аналогичная проблема с коробкой скоростей на шпинделе вылезла у меня . Станок модели SMO32 -аналог MAHO 700 . На коробке передач есть 4 концевика -перебор и 2 концевика -выбор ступени , хотя в результате 4 диапазона . Переключение коробки делается на ползучей и знакопеременной скорости шпинделя и сначала переключается электродвигатель перебора , потом диапазона . На видео https://www.youtube.com/watch?v=kmLmR8ckn2s видно как это работает . Была ли похожая задача у кого-то ?

Re: Коробка шпинделя. (4-х скоростная) Нужен совет!

Добавлено: 31 авг 2016, 12:05
nkp
vmarkiv писал(а):Аналогичная проблема с коробкой скоростей на шпинделе вылезла у меня
а в чем конкретно проблема?