Исследование генераторов шагов LinuxCNC, Mach и прочих

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

Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

Цель исследования

Узнать как на самом деле обстоят с генерацией шагов. Проверить стабильность частоты сигнала шагов, в будущем проверить влияние стабильности частоты на крутящий момент двигателей.

Методика исследования

Создаем тестовую конфигурацию с целью выдачи стабильной частоты на определенный пин. При помощи осциллографа записываем сигнал и анализируем его.

LinuxCNC

Для тестирования используется специальный файл hal, в котором содержатся загрузки и настройки необходимых компонентов.
В случае с LPT портом используется компонент stepgen с управлением по скорости.
Тестовый hal для LinuxCNC (для просмотра содержимого нажмите на ссылку)

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

loadrt hostmot2
#loadrt hm2_pci config="num_encoders=4 num_pwmgens=4 num_3pwmgens=0 num_stepgens=8  " 
#unloadrt hm2_pci 
loadrt hm2_pci 
#config="num_stepgens=4"

loadrt trivkins
loadrt motmod base_period_nsec=10000 servo_period_nsec=1000000 num_joints=5

loadrt hal_parport cfg="0x378 out  "
setp parport.0.reset-time 5000
loadrt stepgen step_type=0 ctrl_type=v
loadrt pwmgen output_type=1

addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf pwmgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread

addf stepgen.capture-position servo-thread
addf stepgen.update-freq servo-thread
addf pwmgen.update servo-thread

net step stepgen.0.step parport.0.pin-03-out
setp stepgen.0.enable 1

setp stepgen.0.position-scale 1000
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 3500
setp stepgen.0.dirsetup 3500
setp stepgen.0.maxaccel 500000
setp stepgen.0.maxvel 1000000

setp stepgen.0.velocity-cmd 10


#
#  HOSTMOT2
#

setp     hm2_5i25.0.watchdog.timeout_ns 10000000
addf hm2_5i25.0.read servo-thread
addf hm2_5i25.0.write         servo-thread
addf hm2_5i25.0.pet_watchdog  servo-thread

setp hm2_5i25.0.stepgen.00.control-type 1
setp hm2_5i25.0.stepgen.00.dirhold 3500
setp hm2_5i25.0.stepgen.00.dirsetup 3500
setp hm2_5i25.0.stepgen.00.maxaccel 10000000
setp hm2_5i25.0.stepgen.00.maxvel 10000000
setp hm2_5i25.0.stepgen.00.position-scale 1000
setp hm2_5i25.0.stepgen.00.step_type 0
setp hm2_5i25.0.stepgen.00.steplen 10000
setp hm2_5i25.0.stepgen.00.stepspace 0

setp hm2_5i25.0.stepgen.00.enable 1

setp hm2_5i25.0.stepgen.00.velocity-cmd 10

start
Конфигурация компьютера:
Latency Test: Base thread max jitter 25000;
Конфигурация компьютера (для просмотра содержимого нажмите на ссылку)

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

ubuntu@ubuntu:~/Desktop$ sudo lshw
ubuntu                    
    description: Desktop Computer
    product: D525TUD
    vendor: Gigabyte Technology Co., Ltd.
    width: 32 bits
    capabilities: smbios-2.4 dmi-2.4 smp-1.4 smp
    configuration: boot=normal chassis=desktop cpus=2 uuid=00000000-0000-0000-0000-50E5499E63F0
  *-core
       description: Motherboard
       product: D525TUD
       vendor: Gigabyte Technology Co., Ltd.
       physical id: 0
       version: x.x
     *-firmware
          description: BIOS
          vendor: Award Software International, Inc.
          physical id: 0
          version: F5 (06/20/2011)
          size: 128KiB
          capacity: 448KiB
          capabilities: pci pnp apm upgrade shadowing cdboot bootselect edd int13floppy360 int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer int10video acpi usb ls120boot zipboot biosbootspecification
     *-cpu:0
          description: CPU
          product: Intel(R) Atom(TM) CPU D525   @ 1.80GHz
          vendor: Intel Corp.
          physical id: 4
          bus info: cpu@0
          version: 6.12.10
          serial: 0001-06CA-0000-0000-0000-0000
          slot: Socket 775
          size: 1800MHz
          capacity: 4GHz
          width: 64 bits
          clock: 200MHz
          capabilities: boot fpu fpu_exception wp vme de tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx x86-64 constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl tm2 ssse3 cx16 xtpr pdcm movbe lahf_lm pse
          configuration: id=1
        *-cache:0
             description: L1 cache
             physical id: a
             slot: Internal Cache
             size: 56KiB
             capacity: 56KiB
             capabilities: synchronous internal write-back
        *-cache:1
             description: L2 cache
             physical id: b
             slot: External Cache
             size: 512KiB
             capacity: 2MiB
             capabilities: synchronous internal write-back
        *-logicalcpu:0
             description: Logical CPU
             physical id: 1.1
             width: 64 bits
             capabilities: logical
        *-logicalcpu:1
             description: Logical CPU
             physical id: 1.2
             width: 64 bits
             capabilities: logical
        *-logicalcpu:2
             description: Logical CPU
             physical id: 1.3
             width: 64 bits
             capabilities: logical
        *-logicalcpu:3
             description: Logical CPU
             physical id: 1.4
             width: 64 bits
             capabilities: logical
     *-memory
          description: System Memory
          physical id: 18
          slot: System board or motherboard
          size: 4GiB
        *-bank:0
             description: DIMM 400 MHz (2.5 ns)
             physical id: 0
             slot: A0
             size: 2GiB
             width: 196 bits
             clock: 400MHz (2.5ns)
        *-bank:1
             description: DIMM 400 MHz (2.5 ns)
             physical id: 1
             slot: A1
             size: 2GiB
             width: 196 bits
             clock: 400MHz (2.5ns)
        *-bank:2
             description: DIMM [empty]
             physical id: 2
             slot: A2
        *-bank:3
             description: DIMM [empty]
             physical id: 3
             slot: A3
     *-cpu:1
          physical id: 1
          bus info: cpu@1
          version: 6.12.10
          serial: 0001-06CA-0000-0000-0000-0000
          size: 1800MHz
          capabilities: ht
          configuration: id=1
        *-logicalcpu:0
             description: Logical CPU
             physical id: 1.1
             capabilities: logical
        *-logicalcpu:1
             description: Logical CPU
             physical id: 1.2
             capabilities: logical
        *-logicalcpu:2
             description: Logical CPU
             physical id: 1.3
             capabilities: logical
        *-logicalcpu:3
             description: Logical CPU
             physical id: 1.4
             capabilities: logical
     *-pci
          description: Host bridge
          product: N10 Family DMI Bridge
          vendor: Intel Corporation
          physical id: 100
          bus info: pci@0000:00:00.0
          version: 02
          width: 32 bits
          clock: 33MHz
          configuration: driver=agpgart-intel
          resources: irq:0
        *-display
             description: VGA compatible controller
             product: N10 Family Integrated Graphics Controller
             vendor: Intel Corporation
             physical id: 2
             bus info: pci@0000:00:02.0
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: msi pm bus_master cap_list rom
             configuration: driver=i915 latency=0
             resources: irq:27 memory:fdf00000-fdf7ffff ioport:ff00(size=8) memory:d0000000-dfffffff(prefetchable) memory:fdd00000-fddfffff
        *-multimedia
             description: Audio device
             product: N10/ICH 7 Family High Definition Audio Controller
             vendor: Intel Corporation
             physical id: 1b
             bus info: pci@0000:00:1b.0
             version: 02
             width: 64 bits
             clock: 33MHz
             capabilities: pm msi pciexpress bus_master cap_list
             configuration: driver=HDA Intel latency=0
             resources: irq:16 memory:fdff8000-fdffbfff
        *-pci:0
             description: PCI bridge
             product: N10/ICH 7 Family PCI Express Port 1
             vendor: Intel Corporation
             physical id: 1c
             bus info: pci@0000:00:1c.0
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm bus_master cap_list
             configuration: driver=pcieport
             resources: irq:24 ioport:e000(size=4096) memory:c0000000-c03fffff ioport:fdb00000(size=1048576)
           *-network
                description: Ethernet interface
                product: RTL8111/8168B PCI Express Gigabit Ethernet controller
                vendor: Realtek Semiconductor Co., Ltd.
                physical id: 0
                bus info: pci@0000:01:00.0
                logical name: eth0
                version: 06
                serial: 50:e5:49:9e:63:f0
                size: 100MB/s
                capacity: 1GB/s
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
                configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full ip=192.168.1.42 latency=0 link=yes multicast=yes port=MII speed=100MB/s
                resources: irq:26 ioport:ee00(size=256) memory:fdbff000-fdbfffff(prefetchable) memory:fdbf8000-fdbfbfff(prefetchable)
        *-pci:1
             description: PCI bridge
             product: N10/ICH 7 Family PCI Express Port 2
             vendor: Intel Corporation
             physical id: 1c.1
             bus info: pci@0000:00:1c.1
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm bus_master cap_list
             configuration: driver=pcieport
             resources: irq:25 ioport:d000(size=4096) memory:fde00000-fdefffff memory:c0400000-c05fffff(prefetchable)
           *-storage
                description: SATA controller
                product: JMB362/JMB363 Serial ATA Controller
                vendor: JMicron Technology Corp.
                physical id: 0
                bus info: pci@0000:02:00.0
                version: 02
                width: 32 bits
                clock: 33MHz
                capabilities: storage pm pciexpress bus_master cap_list
                configuration: driver=ahci latency=0
                resources: irq:17 memory:fdefe000-fdefffff
           *-ide
                description: IDE interface
                product: JMB362/JMB363 Serial ATA Controller
                vendor: JMicron Technology Corp.
                physical id: 0.1
                bus info: pci@0000:02:00.1
                version: 02
                width: 32 bits
                clock: 33MHz
                capabilities: ide pm bus_master cap_list
                configuration: driver=pata_jmicron latency=0
                resources: irq:18 ioport:df00(size=8) ioport:de00(size=4) ioport:dd00(size=8) ioport:dc00(size=4) ioport:db00(size=16)
        *-usb:0
             description: USB Controller
             product: N10/ICH7 Family USB UHCI Controller #1
             vendor: Intel Corporation
             physical id: 1d
             bus info: pci@0000:00:1d.0
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: driver=uhci_hcd latency=0
             resources: irq:23 ioport:fe00(size=32)
        *-usb:1
             description: USB Controller
             product: N10/ICH 7 Family USB UHCI Controller #2
             vendor: Intel Corporation
             physical id: 1d.1
             bus info: pci@0000:00:1d.1
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: driver=uhci_hcd latency=0
             resources: irq:19 ioport:fd00(size=32)
        *-usb:2
             description: USB Controller
             product: N10/ICH 7 Family USB UHCI Controller #3
             vendor: Intel Corporation
             physical id: 1d.2
             bus info: pci@0000:00:1d.2
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: driver=uhci_hcd latency=0
             resources: irq:18 ioport:fc00(size=32)
        *-usb:3
             description: USB Controller
             product: N10/ICH 7 Family USB UHCI Controller #4
             vendor: Intel Corporation
             physical id: 1d.3
             bus info: pci@0000:00:1d.3
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master
             configuration: driver=uhci_hcd latency=0
             resources: irq:16 ioport:fb00(size=32)
        *-usb:4
             description: USB Controller
             product: N10/ICH 7 Family USB2 EHCI Controller
             vendor: Intel Corporation
             physical id: 1d.7
             bus info: pci@0000:00:1d.7
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: pm bus_master cap_list
             configuration: driver=ehci_hcd latency=0
             resources: irq:23 memory:fdfff000-fdfff3ff
        *-pci:2
             description: PCI bridge
             product: 82801 Mobile PCI Bridge
             vendor: Intel Corporation
             physical id: 1e
             bus info: pci@0000:00:1e.0
             version: e2
             width: 32 bits
             clock: 33MHz
             capabilities: pci bus_master cap_list
             resources: memory:fdc00000-fdcfffff
           *-generic UNCLAIMED
                description: DPIO module
                physical id: 0
                bus info: pci@0000:03:00.0
                version: 00
                width: 32 bits
                clock: 33MHz
                configuration: latency=0
                resources: memory:fdcf0000-fdcfffff
        *-isa
             description: ISA bridge
             product: NM10 Family LPC Controller
             vendor: Intel Corporation
             physical id: 1f
             bus info: pci@0000:00:1f.0
             version: 02
             width: 32 bits
             clock: 33MHz
             capabilities: isa bus_master cap_list
             configuration: latency=0
        *-ide
             description: IDE interface
             product: N10/ICH7 Family SATA IDE Controller
             vendor: Intel Corporation
             physical id: 1f.2
             bus info: pci@0000:00:1f.2
             version: 02
             width: 32 bits
             clock: 66MHz
             capabilities: ide pm bus_master cap_list
             configuration: driver=ata_piix latency=0
             resources: irq:19 ioport:1f0(size=8) ioport:3f6 ioport:170(size=8) ioport:376 ioport:fa00(size=16) memory:fdffe000-fdffe3ff
        *-serial UNCLAIMED
             description: SMBus
             product: N10/ICH 7 Family SMBus Controller
             vendor: Intel Corporation
             physical id: 1f.3
             bus info: pci@0000:00:1f.3
             version: 02
             width: 32 bits
             clock: 33MHz
             configuration: latency=0
             resources: ioport:500(size=32)
     *-scsi
          physical id: 2
          bus info: usb@1:5
          logical name: scsi6
          capabilities: emulated scsi-host
          configuration: driver=usb-storage
        *-disk
             description: SCSI Disk
             physical id: 0.0.0
             bus info: scsi@6:0.0.0
             logical name: /dev/sda
             size: 7643MiB (8015MB)
             capabilities: partitioned partitioned:dos
             configuration: signature=00034a54
           *-volume
                description: Windows FAT volume
                vendor: SYSLINUX
                physical id: 1
                bus info: scsi@6:0.0.0,1
                logical name: /dev/sda1
                logical name: /cdrom
                logical name: /casper-rw-backing
                version: FAT32
                serial: 07ae-725b
                size: 7641MiB
                capacity: 7642MiB
                capabilities: primary bootable fat initialized
                configuration: FATs=2 filesystem=fat label=�_�������_�� mount.fstype=vfat mount.options=rw,relatime,fmask=0022,dmask=0022,codepage=cp437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro state=mounted

Mach3

Настраивается ось X таким образом, чтобы на максимальной скорости на пине step была частота 10 кГц. Ось X перемещается в режиме MDI командой G0 X1000. В приведенном ниже результате использовались параметры
1000 Шагов на мм
Максимальная скорость 600 мм мин.

Конфигурация компьютера:
Будет добавлена позже.

Результаты тестов

LinuxCNC LPT
Base Period 10 000 нс
Stepgen Частота 10 000 Гц
oscilloscope-0.png
oscilloscope-0.png (5.01 КБ) 8994 просмотра
Хочется отметить, три теста LinuxCNC с разными base-period проводились на одном и том же компьютере, при этом замер latency по всем правилам выдает base thread max litter около 24 000 нс. В принципе, это не мешает запускать LinuxCNC с base-period 10000, но возможны выпады шагов при нагрузке компьютера из-за latency большего текущего base-period.
LinuxCNC LPT
Base Period 20 000 нс
Stepgen Частота 10 000 Гц
oscilloscope-1.png
oscilloscope-1.png (4.93 КБ) 8994 просмотра
LinuxCNC LPT
Base Period 30 000 нс
Stepgen Частота 10 000 Гц
oscilloscope-2.png
oscilloscope-2.png (4.95 КБ) 8994 просмотра
LinuxCNC MESA 5i25
Прошивка prob_rfx2
Stepgen Частота 10 000 Гц
oscilloscope-3.png
oscilloscope-3.png (5.62 КБ) 8994 просмотра
Mach R3.043.066
пин X step 10 000 Гц
MACH 10kHz.png
MACH 10kHz.png (5.85 КБ) 8926 просмотров
Test.c FreeDOS 1.1 LiveUSB
10 000 Hz
test.c FreeDOS 10rHz.png
test.c FreeDOS 10rHz.png (5.36 КБ) 8635 просмотров
Тест проводился при помощи простого генератора сигнала. См. приложение test.c.
Test.c показал очень ровную частоту. Пропуск одного импульса в Общей картине - скорее всего погрешность осциллографа, длинна импульса в этой программе очень короткая.
test.zip
(11.6 КБ) 481 скачивание
Исследование генераторов шагов LinuxCNC, Mach и прочих #42
TurboCNC 4.01 FreeDOS 1.1 LiveUSB
10 000 Hz
TurboCNC 10kHz overview.png
TurboCNC 10kHz overview.png (5.56 КБ) 8635 просмотров
Тест проводился на TurboCNC запущенным под FreDOS 1.1 LiveUSB, конфигурация компьютера такая де как у тестов с LinuxCNC.
Общая картина шагов - хороший равномерный сигнал. Но иногда возникают "лаги". См. следующий тест.
Исследование генераторов шагов LinuxCNC, Mach и прочих #42
TurboCNC 4.01 FreeDOS 1.1 LiveUSB
10 000 Hz
Отставания!
TurboCNC 10rHz error.png
TurboCNC 10rHz error.png (5.72 КБ) 8635 просмотров
При проведении предыдущего теста выявлены непонятные задержки сигнала с последующей "догонкой" с увеличением частоты. Такие отставания отлавливались много раз, сразу после певого теста был проведен етс на LinuxCNC, на котором выявить такие ошибки не удалось.
После этого был проведен повторный тест TurboCNC - ошибка повторилась. Не перезагружая компьютер был проведен тест на Test.c, на котором ошибок не наблюдалось.

Общая картина

oscilloscope.png (8635 просмотров) <a class='original' href='./download/file.php?id=9174&sid=162f9117edea5fbf92ae16a1ee9204e1&mode=view' target=_blank>Загрузить оригинал (459.97 КБ)</a>
Данные в формате CSV, смотрите 1 и 4 каналы:
LinuxCNC Basethread 10000 - 10kHz.CSV
(67.83 КБ) 1193 скачивания
LinuxCNC Basethread 20000 - 10kHz.CSV
(72 КБ) 1221 скачивание
LinuxCNC Basethread 30000 - 10kHz.CSV
(72 КБ) 1256 скачиваний
LinuxCNC MESA 5i25 10kHz.CSV
(72 КБ) 1244 скачивания
Mach R3.043.066 Xstep 10kHz.CSV
(72 КБ) 1254 скачивания
TurboCNC Normal.CSV
(72 КБ) 1205 скачиваний
TurboCNC Errors.CSV
(72 КБ) 1213 скачиваний
test.c 10kHz.CSV
(72 КБ) 1191 скачивание

Выводы

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

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

Сразу вопрос Где можно Мач правильный скачать? :)
Вроде у него есть бесплатная версия на 200 строк.

И второй вопрос, какое ПО еще тестировать?
aftaev
Зачётный участник
Зачётный участник
Сообщения: 32509
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 5819
Откуда: Казахстан. Шымкент
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение aftaev »

Nick писал(а):При помощи осциллографа записываем сигнал и анализируем его.
что за осцил?
Nick писал(а):Вроде у него есть бесплатная версия на 200 строк.
Да демка до 500 строк чтоль.
Nick писал(а):Сразу вопрос Где можно Мач правильный скачать?
с офсайта www.machsupport.com
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 32509
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 5819
Откуда: Казахстан. Шымкент
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение aftaev »

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

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

aftaev писал(а):что за осцил?
тот самый ds203: Нужен не дорогой осциллограф :) #32
aftaev писал(а):Nick, мож еще видео снимешь с каким звуком работают шаговики от разных систем.
Это будет но позже :)
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

aftaev писал(а):Да демка до 500 строк чтоль.
Там пишут:
Kernel Frequency locked at 25kHz (only applicable if using the parallel port driver)
но ладно, попробуем для начала на этой версии.
Аватара пользователя
Starik
Опытный
Сообщения: 130
Зарегистрирован: 13 май 2012, 21:22
Репутация: 17
Откуда: Долгопрудный

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Starik »

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

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

Не уверен, что мой осциллограф это умеет. Могу также выложить запись в формате CSV, там около 4000 сэмплов (то, что на нижнем рисунке в виде графика)...
vmarkiv
Мастер
Сообщения: 501
Зарегистрирован: 21 янв 2012, 00:23
Репутация: 31
Откуда: Ивано-Франковск
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение vmarkiv »

Я пробовал слушать LPT port в Mach3 на звук , действительно слышны щелчки , а при работе на большой подаче на приводе с шаговым двигателем ШД-5 ощутимы удары по редуктору . Аналогичный эффект при использовании FullCNC from Armaud2 , на выходе неравномерность ощутима . На анализаторе ВМ8023 это также видно. Но сервопривода это дело сглаживают , главное что-бы количество импульсов не пропало
Аватара пользователя
Starik
Опытный
Сообщения: 130
Зарегистрирован: 13 май 2012, 21:22
Репутация: 17
Откуда: Долгопрудный

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Starik »

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

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

Добавил Мач и csv всех замеров...
Попробовал сделать БПФ для полученного ряда, в принципе ничего особенного, явные пики в 10кГц и кратных. Завтра посмотрю по больше по этому поводу.
glaz
Кандидат
Сообщения: 57
Зарегистрирован: 06 фев 2012, 13:02
Репутация: 7
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение glaz »

NC Studio неплохо добавить и посмотреть что там ее плата выдает, т.к. китайцы ставят именно ее.

http://mir-cnc.ru/index.php?app=core&mo ... ch_id=2355
aftaev
Зачётный участник
Зачётный участник
Сообщения: 32509
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 5819
Откуда: Казахстан. Шымкент
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение aftaev »

glaz писал(а): т.к. китайцы ставят именно ее.
а мы потом их выбрасываем и ставим ЕМС или Мач :)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
glaz
Кандидат
Сообщения: 57
Зарегистрирован: 06 фев 2012, 13:02
Репутация: 7
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение glaz »

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

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

Где бы ее найти... :thinking:
aftaev
Зачётный участник
Зачётный участник
Сообщения: 32509
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 5819
Откуда: Казахстан. Шымкент
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение aftaev »

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

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

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

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

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

БПФ здесь мало что даст, тут джиттер считать надо (разброс периода). Причем ловить максимальные отклонения.
Имеет также смысл усложнить условия, скажем, запустить движение сразу по нескольким осям с разными скоростями. Типа такого:
G00 X0 Y0 Z0 (для определенности)
G01 X100 Y50 Z30 F600 (а мерить по Х)
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Nick
Мастер
Сообщения: 22731
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1693
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение Nick »

Надо еще TurboCNC испытать, кто-нибудь знает где его взять? Есть ли легальная версия?
Еще мне 495 подкинул еще один генератор под DOS, надо его тоже протестировать.
2cme
Почётный участник
Почётный участник
Сообщения: 1043
Зарегистрирован: 24 янв 2012, 13:18
Репутация: -209

Re: Исследование генераторов шагов LinuxCNC, Mach и прочих

Сообщение 2cme »

Nick писал(а):Надо еще TurboCNC испытать, кто-нибудь знает где его взять? Есть ли легальная версия?
http://www.dakeng.com/turbo.html . Цитата с сайта: "TurboCNC is fully functional shareware with a $60 registration fee (US dollars)."Source code and free support is yours when you register this program for $60 US. See the ordering page for details".
Ответить

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