[WIKI] Работа с центроискателем в LinuxCNC

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение Сергей Саныч »

nkp писал(а):а разве "система измерения" емс активна без G38 ??
Да. И это правильно. Датчик целее будет. В крайнем случае всегда можно устроить блокировку сигнала датчика.
nkp писал(а):но ошабки то случаются не при касании(хотя тоже бывает) , а во время "поиска"...
Надо "лампочку" поставить на сигнал датчика. Лучше через одновибратор (oneshot).
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение Nick »

nkp писал(а):но ошабки то случаются не при касании(хотя тоже бывает) , а во время "поиска"...
Возможно срабатывает датчик, проба считается выполненой, после этого выполняем отъезд - и в этот момент датчик срабатывает еще раз. В итоге имеем замыкание при холостом перемещении.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение nkp »

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

Re: [WIKI] Работа с центроискателем

Сообщение Nick »

через and2 вместе с comp с motion.motion-type ==5
motion.motion-type OUT S32
These values are from src/emc/nml_intf/motion_types.h
1: Traverse
2: Linear feed
3: Arc feed
4: Tool change
5: Probing
6: Rotary axis indexing
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение Сергей Саныч »

nkp писал(а):надо пробовать отключать после измерения...
Рисковый ты парень :)
я, наоборот, на днях строил блокировку перемещения при срабатывании центроискателя при перемещении штурвалом - в LCNC этот момент сделан как-то кривовато - ошибку-то он выдает, но ломать датчик не мешает (не блокирует перемещение).
А с ложными срабатываниями боролся с помощью debounce и отъезда не по G1, а по G38.5
Чудес не бывает. Бывают фокусы.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение nkp »

Сергей Саныч писал(а):Рисковый ты парень
а в чем риск то?
какие то механические повреждения? так проволока жеш...
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение Сергей Саныч »

nkp писал(а):а в чем риск то?
какие то механические повреждения? так проволока жеш...
А... упустил этот момент.
Чудес не бывает. Бывают фокусы.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение nkp »

Nick писал(а):через and2 вместе с comp с motion.motion-type ==5
а and2 с чем?
вроде бы и одного comp хватает :thinking:
отслеживаем :
пока motion.motion-type < 5 Probe выключен
иначе - включен...
6- это движение поворотной оси??
у меня ее нет ;)
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение Сергей Саныч »

nkp писал(а):а and2 с чем?
с сигналом от датчика, видимо.
Чудес не бывает. Бывают фокусы.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение nkp »

так прописал- работает (в эмуляторе)

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

#++++++++++++++++++++++++++
loadrt comp
addf comp.0 servo-thread
loadrt conv_s32_float 
addf conv-s32-float.0 servo-thread 
net s32-float-in  motion.motion-type  conv-s32-float.0.in
net s32-float-out    conv-s32-float.0.out  comp.0.in1 
setp comp.0.in0  4
yell
Опытный
Сообщения: 183
Зарегистрирован: 28 июн 2013, 14:27
Репутация: 22
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение yell »

Сойдет ли вместо "активной схемы Starik'a" (инвертор с триггером Шмитта) использовать для устранения дребезга контактов hal-компонент debounce?
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение Сергей Саныч »

Схема Starik'a не устраняет дребезг, а только "окультуривает". Чтобы устраняла, нужно добавить на вход RC-цепочку.
Но польза от нее все равно есть - она имеет четкие пороги срабатывания и создает нормированную нагрузку на контакты, в отличие от прямого подключения контактов датчика к коммутационной плате или порту LPT.
debounce использовать можно, только надо подбирать разумную задержку.
Чудес не бывает. Бывают фокусы.
yell
Опытный
Сообщения: 183
Зарегистрирован: 28 июн 2013, 14:27
Репутация: 22
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение yell »

Понял. Почему ж никто не жалуется на дребезг этих шариковых контактов, интересно? Не проявляют себя критично? Хватает паразитных rc-цепочек?

Какие недостатки будут у такой схемы? На шарики подать 12В через резистор, через оптрон связать это с LPT, а на компе уже заюзать HAL debounce.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение Сергей Саныч »

yell писал(а):Почему ж никто не жалуется на дребезг этих шариковых контактов
Жалуются, как не жаловаться :)
Только на этом форуме несколько раз поднимался вопрос. И даже в этой теме.
yell писал(а):Какие недостатки будут у такой схемы? На шарики подать 12В через резистор, через оптрон связать это с LPT, а на компе уже заюзать HAL debounce.
Работать будет. Правда, через контакты потечет ток в районе 10мА, что при медленном разрыве цепи может вызывать электроэрозию. Микроскопическую, конечно, но на точных измерениях может и сказаться.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение verser »

yell писал(а):Почему ж никто не жалуется на дребезг этих шариковых контактов, интересно?
Дребезг катострофически мешает измерениям. Жалуюсь :).
Поэтому приходится с ним бороться всеми доступными средствами.
Я, например, использую такую комбинацию, чтобы забыть об ошибке "probe tripped ...", останавливающей всю работу:
- триггер шмитта (встроен в probe)
- debounce 5ms (в .hal)
- G4 0.4 в одиночных замерах (в g-code)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение nkp »

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

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

G40
G92.1
G10 L20 P0  X[#<_hal[axis.0.joint-pos-cmd]>] Y[#<_hal[axis.1.joint-pos-cmd]>]
G91
F #<_hal[probe.ps_searchvel]>
G38.2 Y[#<_hal[probe.ps_probe_max]>]
#1=4
#2=0
o100 repeat [#1]
G0 Y[-#<_hal[probe.ps_probe_latch]>/2]
F #<_hal[probe.ps_probevel]>
G4 P2
G38.2 Y[#<_hal[probe.ps_probe_latch]>*2]
o110 IF [#2 EQ 0]
 #3=#5062
o110 ELSEIF [#2 EQ 1]
#4=#5062
o110 ELSEIF [#2 EQ 2]
#5=#5062
o110 ELSEIF [#2 EQ 3]
#6=#5062
o110 ENDIF
#2=[#2+1]
G0 Y[-#<_hal[probe.ps_probe_latch]>/2]
o100 endrepeat
G4 P2
(debug,P0 = #3)
(debug,P1 = #4)
(debug,P2 = #5)
(debug,P3 = #6)
#7=[[#3 + #4 + #5 + #6] / 4]
(debug,mean = #7)
G10 L20 P1 Y#7
o101 IF[#<_hal[probe.ps_zero]>]
G10 L20 P1  Y[#<_hal[probe.ps_offs_y]>]
o101 ENDIF
G90
M2
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение verser »

Релиз Probe Screen ver. 1.0.0
Что нового:
- появилась новая группа измерений "Angle", позволяющая находить угол и поворачивать координатную систему под заготовку, как автоматически, так и вручную, с выбором центра вращения,
- теперь при измерениях все отступы учитываются и результаты выводятся в локальных координатах,
- индикация ошибок в истории, другие мелкие правки.
ProbeScreen_v1.jpg (2316 просмотров) <a class='original' href='./download/file.php?id=52145&mode=view' target=_blank>Загрузить оригинал (222.64 КБ)</a>
Находится здесь.
Руководство пользователя для Angle скоро появится в шапке.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение Serg »

А как работает Angle? - Не пойму зачем столько кнопок?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение verser »

UAVpilot писал(а):А как работает Angle? - Не пойму зачем столько кнопок?
Вопрос UAVpilot навел на мысль, что правильнее новую группу назвать Rotation, что я и сделал в следующем обновлении.
Кнопки предусмотрены для разных граней, ведь не всегда грань вдоль X прямолинейна.
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Работа с центроискателем

Сообщение verser »

Обновление Probe Screen ver. 1.0.1
- Связал новую группу измерений Rotation со всеми остальными измерениями. Теперь можно обмерять и привязывать даже "криво" установленные заготовки.
- Исправлены баги.

В двух словах как пользоваться (подробнее скоро будет шапке).
Заводим центроискатель над нужным ребром 2-10 мм (примерное положение показывает цветная точка на кнопке) и жмем только! соответствующую этому положению кнопку.
rotation.jpg (2266 просмотров) <a class='original' href='./download/file.php?id=52348&mode=view' target=_blank>Загрузить оригинал (68.38 КБ)</a>
Далее произойдет два обмера, как обозначено стрелками на кнопке.
Параметры задаются так
edge length = расстояние между обмеряемыми точками,
xy clearance = отступ от грани
z clearance = заглубление
Auto Rott:
-если Да, то после измерения коорд. система автоматически развернется на измеренный угол,
-если Нет, то просто измеряется и выписывается угол,
угол вычисляется относительно оси X для передней и задней грани, относительно оси Y для правой и левой грани.
После разворота координатной системы все остальные группы измерений начнут работать в новой коорд. системе.
Так же можно повернуть коорд. систему на произвольный угол вручную - набрать угол в поле New angle и кнопкой рядом утвердить.
Ответить

Вернуться в «LinuxCNC»