UAVpilot писал(а):Для резьбы достаточно только индексной метки. Для измерения скорости нужен как минимум один канал энкодера, количество импульсов на оборот у энкодера может быть любым, даже 1имп/об. (для танкистов: подключаем индекс и на вход индекса и на вход канала А). Однако чем больше имп/об, тем точнее меряет мгновенную скорость, тем точнее будет резать многозаходные резьбы
Спасибо. Это радует.
А то засело в голове из мануала 100 меток
Как говорится "броня крепка и танки наши быстры" а то ведь засело в голове
Сегодня утречком пробежался по диагонали по мануалу
в разделе 3.7.8.2 Spindle-synchronized motion ничего про сто меток не сказано
When the appropriate signals from a spindle encoder are connected to LinuxCNC via HAL, LinuxCNC supports lathe threading.
These signals are:
• Spindle Index - Is a pulse that occurs once per revolution of the spindle.
• Spindle Phase A - This is a pulse that occurs in multiple equally-spaced locations as the spindle turns.
• Spindle Phase B (optional) - This is a second pulse that occurs, but with an offset from Spindle Phase A. The advantages to
using both A and B are direction sensing, increased noise immunity, and increased resolution.
If Spindle Phase A and Spindle Index appear on the pinout, the following information should be entered:
• Use Spindle-At-Speed - With encoder feedback one can choose to have linuxcnc wait for the spindle to reach the commanded
speed before feed moves. Select this option and set the close enough scale.
• Speed Display Filter Gain - Setting for adjusting the stability of the visual spindle speed display.
• Cycles per revolution - The number of cycles of the Spindle A signal during one revolution of the spindle. This option is only
enabled when an input has been set to Spindle Phase A
• Maximum speed in thread - The maximum spindle speed used in threading. For a high spindle RPM or a spindle encoder with
high resolution, a low value of BASE_PERIOD is required.
В разделе про токарку 3.10 Lathe User Information четко указано что для синхронизации достаточно одной метки
3.10.5 Spindle Synchronized Motion
Spindle synchronized motion requires a quadrature encoder connected to the spindle with one index pulse per revolution. See
the motion man page and the Spindle Control Example for more information.
Threading The G76 threading cycle is used for both internal and external threads. For more information see the G76 Section.
Constant Surface Speed CSS or Constant Surface Speed uses the machine X origin modified by the tool X offset to compute
the spindle speed in RPM. CSS will track changes in tool offsets. The X machine origin should be when the reference tool (the
one with zero offset) is at the center of rotation. For more information see the G96 Section.
Feed per Revolution Feed per revolution will move the Z axis by the F amount per revolution. This is not for threading, use G76
for threading. For more information see the G95 Section
в разделе 6.1. Spindle Synchronized Motion
Spindle feedback is needed by LinuxCNC to perform any spindle coordinated motions like threading and constant surface speed. The StepConf Wizard can perform the connections for you if you select Encoder Phase A and Encoder Index as inputs.
Hardware assumptions:
An encoder is connected to the spindle and puts out 100 pulses per revolution on phase A
The encoder A phase is connected to the parallel port pin 10
The encoder index pulse is connected to the parallel port pin 11
# add the encoder to HAL and attach it to threads.
loadrt encoder num_chan=1
addf encoder.update-counters base-thread
addf encoder.capture-position servo-thread
# set the HAL encoder to 100 pulses per revolution.
setp encoder.3.position-scale 100
# set the HAL encoder to non-quadrature simple counting using A only.
setp encoder.3.counter-mode true
# connect the HAL encoder outputs to LinuxCNC.
net spindle-position encoder.3.position => motion.spindle-revs
net spindle-velocity encoder.3.velocity => motion.spindle-speed-in
net spindle-index-enable encoder.3.index-enable <=> motion.spindle-index-enable
# connect the HAL encoder inputs to the real encoder.
net spindle-phase-a encoder.3.phase-A <= parport.0.pin-10-in
net spindle-phase-b encoder.3.phase-B
net spindle-index encoder.3.phase-Z <= parport.0.pin-11-in
походу про 100 меток написано
для примера ("
Hardware assumptions") И приведен пример конфигурирования хал фйла.
получается то и не нужно 100 меточного канала, если хотим скорость более точно отслеживать то вешаем на канал А энкодер меток на 20 (тут уже точно хватит пропускной способности ЛПТ)
Я планирую вместо родного приводного шкива того что под защитной крышкой, сделать муфту с наружной резьбой + 3 гайки, между ними два диска с прорезями один с одной меткой, другой скажем с 20-30 метками, благодаря гайкам, диски можно будет заменить и насторить их пложение, в том числе и радиальное биение что бы не "прыгали"