Ввод в эксплуатацию ЧПУ системы на основе контроллера Kflop.

KFlop, KStep, KAnalog, KMotion...

Имеете ли вы контроллер Kflop? :-)

Можно выбрать до 1 варианта ответа

 
 
Результаты голосования

Brestden
Кандидат
Сообщения: 58
Зарегистрирован: 20 окт 2015, 21:12
Репутация: 61
Настоящее имя: Андросюк Андрей
Откуда: Беларусь, г. Брест
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение Brestden »

mial писал(а): Brestden будет, там подтяжка к земле 150 Ом. Но я бы сделал по другому. По входу оптопара в привычном режиме, резистор в цепи коллектора, эмиттер на GND. Далее с коллектора на вход инвертируещего триггера Шмитта, к примеру 74LVC14AD. Будет надежно, и более помехоустойчиво.
Спасибо, буду пробовать.
Duhas
Мастер
Сообщения: 1949
Зарегистрирован: 10 окт 2015, 23:25
Репутация: 284
Настоящее имя: Андрей
Откуда: Красноярск
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение Duhas »

почитайте, блин, документацию!

https://www.dynomotion.com/Help/Schemat ... analog.htm чуть ниже середины ...
megablast3000
Кандидат
Сообщения: 40
Зарегистрирован: 04 дек 2012, 20:08
Репутация: 9
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение megablast3000 »

Не надо нервничать. Документацию читал, этот момент мне непонятен, поэтому спросил тут.
Duhas
Мастер
Сообщения: 1949
Зарегистрирован: 10 окт 2015, 23:25
Репутация: 284
Настоящее имя: Андрей
Откуда: Красноярск
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение Duhas »

если вот эта картинка непонятна и нет желания закупать железки по несколько раз советую подтянуть свои знания перед тем как продолжить.
Вложения
SwitchMisc.png
SwitchMisc.png (6.7 КБ) 4932 просмотра
vershininv
Опытный
Сообщения: 172
Зарегистрирован: 21 ноя 2017, 14:40
Репутация: 39
Настоящее имя: Василий
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение vershininv »

У меня другой вопрос. Откуда у SnapAmp такая чувствительность к наводкам что даже клацанье релюшкой порождает инкремент энкодера которого на том канале физически нет?
Аватара пользователя
ukr-sasha
Мастер
Сообщения: 3401
Зарегистрирован: 21 мар 2011, 07:47
Репутация: 2180
Настоящее имя: Украинец Александр Григорьевич
Откуда: Киев, Украина
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение ukr-sasha »

megablast3000 писал(а):Не надо нервничать. Документацию читал, этот момент мне непонятен, поэтому спросил тут.
8) 24V @ 1Amp relay FET Switch Outputs are available on Kanalog mapped as Output Bits 152-159. When activated (checked on or with state "1") the FET Switches make a connection to ground.
megablast3000
Кандидат
Сообщения: 40
Зарегистрирован: 04 дек 2012, 20:08
Репутация: 9
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение megablast3000 »

Спасибо за ответы. Нефига не понятно, но буду разбираться). Спалить, конечно желания нет. Выкладываю пару схем по подключению Каналога, если не затруднит, посмотрите, корректно ли там подключен JP8.
Вложения
Kanalog_to_Tree_Journeyman_325_by_Rick_B.pdf
(93.95 КБ) 371 скачивание
Kflop-Kanalog_wiring_11-19-2018.pdf
(612.72 КБ) 329 скачиваний
Duhas
Мастер
Сообщения: 1949
Зарегистрирован: 10 окт 2015, 23:25
Репутация: 284
Настоящее имя: Андрей
Откуда: Красноярск
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение Duhas »

не нужны вам масштабные схемы сейчас, научитесь подключать по 1 устройству 1 типа.
Аватара пользователя
ukr-sasha
Мастер
Сообщения: 3401
Зарегистрирован: 21 мар 2011, 07:47
Репутация: 2180
Настоящее имя: Украинец Александр Григорьевич
Откуда: Киев, Украина
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение ukr-sasha »

megablast3000 писал(а): Нефига не понятно, но буду разбираться).
Гугл переводчик говорит:

8) Выходы переключателя FET реле 24 В при 1 А на Kanalog отображаются как выходные биты 152-159. При активации (проверено или в состоянии «1»)

переключатели FET подключаются к земле.

megablast3000
Кандидат
Сообщения: 40
Зарегистрирован: 04 дек 2012, 20:08
Репутация: 9
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение megablast3000 »

Все заработало как надо. Едрить я бестлочь! Всем спасибо.
Alex63
Опытный
Сообщения: 143
Зарегистрирован: 13 апр 2015, 07:12
Репутация: 32
Настоящее имя: Александр
Откуда: Новосибирск
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение Alex63 »

Добрый день!
Возник вопрос. На шлифовальном станке надо сделать программную коррекцию геометрии (Z в зависимости от Х), гуляет на пару соток на длинне подачи, а для шлифовки это много. Знаю, что в KMotion такая возможность есть (хотя как создать файл с измеренными величинами неясно).
Но основная работа идет в ручном режиме, когда по X ездит заготовка, а рабочий вручную по микрону - два подводит шпиндель по Z , т е управляет с пульта в режиме маятника и собственно KMotion и ее планировщик траектории не работает. А хочется чтобы шпиндель кривизну подрабатывал сам по таблице.
Вариант в лоб - написать очередную программу в Кфлоп, где будет измеряться позиция по Х , сравниваться с таблицей, вводится коррекция Z, подрабатывает шпиндель... Логика понятна, неясно только какой величины таблицу переварит контроллер, у него КЭШ не бесконечен и время вычисления ограничено.
Есть у кого нибудь такой опыт, или хотя бы мысли на тему?
Аватара пользователя
ukr-sasha
Мастер
Сообщения: 3401
Зарегистрирован: 21 мар 2011, 07:47
Репутация: 2180
Настоящее имя: Украинец Александр Григорьевич
Откуда: Киев, Украина
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение ukr-sasha »

GeoTable работает и при ручных перемещениях.
Если память не подводит. :-)
Alex63
Опытный
Сообщения: 143
Зарегистрирован: 13 апр 2015, 07:12
Репутация: 32
Настоящее имя: Александр
Откуда: Новосибирск
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение Alex63 »

как конкретно можно задать в гео таблицу коррекции?
Аватара пользователя
ukr-sasha
Мастер
Сообщения: 3401
Зарегистрирован: 21 мар 2011, 07:47
Репутация: 2180
Настоящее имя: Украинец Александр Григорьевич
Откуда: Киев, Украина
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение ukr-sasha »

Alex63 писал(а):как конкретно можно задать в гео таблицу коррекции?
Тут есть информация:
https://dynomotion.com/Help/KMotionCNC/ ... ection.htm
Нужно только инструментальными методами измерить отклонения.

Вот данные с реального станка:

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

5,5
50,50
0,0
0,0,0.00000,0.00000,0
0,1,50.00000,-0.05875,0
0,2,100.00000,-0.12250,0
0,3,150.00000,-0.17825,0
0,4,200.00000,-0.23500,0
1,0,0.00000,50.00000,0
1,1,50.00000,49.94125,0
1,2,100.00000,49.87750,0
1,3,150.00000,49.82175,0
1,4,200.00000,49.76500,0
2,0,0.00000,100.00000,0
2,1,50.00000,99.94125,0
2,2,100.00000,99.87750,0
2,3,150.00000,99.82175,0
2,4,200.00000,99.76500,0
3,0,0.00000,150.00000,0
3,1,50.00000,149.94125,0
3,2,100.00000,149.87750,0
3,3,150.00000,149.82175,0
3,4,200.00000,149.76500,0
4,0,0.00000,200.00000,0
4,1,50.00000,199.94125,0
4,2,100.00000,199.87750,0
4,3,150.00000,199.82175,0
4,4,200.00000,199.76500,0
Alex63
Опытный
Сообщения: 143
Зарегистрирован: 13 апр 2015, 07:12
Репутация: 32
Настоящее имя: Александр
Откуда: Новосибирск
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение Alex63 »

Спасибо,
подсказки реально помогают, поскольку в документации есть ошибки и неточности!
Как я понял приведенный пример ,
первая строка - это число столбцов (первое число) и число строк (второе),
вторая - общий размер корректируемой площади.Сразу вопрос - в дюймах, как только и понимает планировщик, или в мм, если они выставлены на главной странице KMotion?
третья - координаты точки 0,0 таблицы
дальше измеренные значения реальных точек по осям. При стольких знаках после запятой видимо в дюймах :roll: . С другой стороны, значения до 200 ед на таблицу, а во второй строке задано 50 на 50. не совсем ясно. Или вторая строка задает не размер всей площади в таблице, а размер одного шага по строке\столбцу?
Alex63
Опытный
Сообщения: 143
Зарегистрирован: 13 апр 2015, 07:12
Репутация: 32
Настоящее имя: Александр
Откуда: Новосибирск
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение Alex63 »

ОК, с таблицей практически все понятно!
В приведенном примере корректируется поворот оси при котором на ходе Х 50 см Y уходит примерно на 6 мм...
Как я понял, она подключается к KMotion и используется в планировщике траектории.
В нашей любимой программе Маятник, которую я делал для шлифовки, работают команды МоveExp & Move At Vel, ИМХО, они обрабатываются напрямую в Kflop, как и просто такие же команды энкодера и кнопок ручного пульта и планировщик траектории KMotion тут как может и не влиять...
Как бы это проверить? Например, на станке с введенной программой геокоррекции из поста выше - что будет в ручном режиме, т е при прогоне по Х маховичками или кнопками с ручного пульта - отработает коррекцию? К сожалению, мой станок все еще в полуразобранном состоянии (долечивается шпиндель) и проверить на нем не могу...
megablast3000
Кандидат
Сообщения: 40
Зарегистрирован: 04 дек 2012, 20:08
Репутация: 9
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение megablast3000 »

Доброй ночи.
Занимаюсь настройкой осей. За основу взял шаблон InitAnalog3Axis.c из папки C Program.
Настроил ось X (ch0), рисунок 1. С осями Y, Z (ch1,2) сложнее, график выглядел как на рисунке 2, мигал значок FeedHold. Так как на оси Z двигатель пока не подключен к нагрузке, решил экспериментировать с ней, в файле настроек поменял полярность ch2->InputGain0=-1.000000; было 1, помогло, причем заработали обе оси, но значок FeedHold мигать не перестал. При этом, когда включил ось X (нажал Move), та стала дергаться, пришлось выключить. Я конечно могу и дальше переключать полярность InputGain, но наверно есть какой то более разумный способ? И еще, в шаблоне у Тома нет значений OutputGain – как их назначать?

Когда жму Move, моторы перед основным движением, немножко дергаются в обратном направлении, причем на всех осях. Проверил, люфта в опорах и швп нет. Было у кого-нибудь такое?
[youtube]https://youtu.be/JAALQNB4pjE[/youtube]
(для просмотра содержимого нажмите на ссылку)
#include "KMotionDef.h"

main()
{
SetBit(152); // enable AMPS
SetBit(153);
SetBit(154);

ch0->InputMode=ENCODER_MODE;
ch0->OutputMode=DAC_SERVO_MODE;
ch0->Vel=150000.000000;
ch0->Accel=1500000.000000;
ch0->Jerk=15000000.000000;
ch0->P=0.860000;
ch0->I=0.001500;
ch0->D=0.000700;
ch0->FFAccel=0.000007;
ch0->FFVel=0.00415;
ch0->MaxI=2047.000000;
ch0->MaxErr=100000.000000;
ch0->MaxOutput=2047.000000;
ch0->DeadBandGain=1.000000;
ch0->DeadBandRange=0.000000;
ch0->InputChan0=0;
ch0->InputChan1=0;
ch0->OutputChan0=0;
ch0->OutputChan1=0;
ch0->LimitSwitchOptions=0x0;
ch0->InputGain0=1.000000;
ch0->InputGain1=1.000000;
ch0->InputOffset0=0.000000;
ch0->InputOffset1=0.000000;
ch0->invDistPerCycle=0.000250;
ch0->Lead=0.000000;
ch0->MaxFollowingError=100000.000000;
ch0->StepperAmplitude=100.000000;

ch0->iir[0].B0=1.000000;
ch0->iir[0].B1=0.000000;
ch0->iir[0].B2=0.000000;
ch0->iir[0].A1=0.000000;
ch0->iir[0].A2=0.000000;

ch0->iir[1].B0=1.000000;
ch0->iir[1].B1=0.000000;
ch0->iir[1].B2=0.000000;
ch0->iir[1].A1=0.000000;
ch0->iir[1].A2=0.000000;

ch0->iir[2].B0=1.000000;
ch0->iir[2].B1=0.000000;
ch0->iir[2].B2=0.000000;
ch0->iir[2].A1=0.000000;
ch0->iir[2].A2=0.000000;

ch1->InputMode=ENCODER_MODE;
ch1->OutputMode=DAC_SERVO_MODE;
ch1->Vel=150000.000000;
ch1->Accel=1500000.000000;
ch1->Jerk=15000000.000000;
ch1->P=0.5500000;
ch1->I=0.000000;
ch1->D=0.000000;
ch1->FFAccel=0.000000;
ch1->FFVel=0.000000;
ch1->MaxI=2047.000000;
ch1->MaxErr=100000.000000;
ch1->MaxOutput=2047.000000;
ch1->DeadBandGain=1.000000;
ch1->DeadBandRange=0.000000;
ch1->InputChan0=1;
ch1->InputChan1=1;
ch1->OutputChan0=1;
ch1->OutputChan1=1;
ch1->LimitSwitchOptions=0x0;
ch1->InputGain0=1.000000;
ch1->InputGain1=1.000000;
ch1->InputOffset0=0.000000;
ch1->InputOffset1=0.000000;
ch1->invDistPerCycle=0.000250;
ch1->Lead=0.000000;
ch1->MaxFollowingError=100000.000000;
ch1->StepperAmplitude=100.000000;

ch1->iir[0].B0=1.000000;
ch1->iir[0].B1=0.000000;
ch1->iir[0].B2=0.000000;
ch1->iir[0].A1=0.000000;
ch1->iir[0].A2=0.000000;

ch1->iir[1].B0=1.000000;
ch1->iir[1].B1=0.000000;
ch1->iir[1].B2=0.000000;
ch1->iir[1].A1=0.000000;
ch1->iir[1].A2=0.000000;

ch1->iir[2].B0=1.000000;
ch1->iir[2].B1=0.000000;
ch1->iir[2].B2=0.000000;
ch1->iir[2].A1=0.000000;
ch1->iir[2].A2=0.000000;

ch2->InputMode=ENCODER_MODE;
ch2->OutputMode=DAC_SERVO_MODE;
ch2->Vel=500000.000000;
ch2->Accel=1000000.000000;
ch2->Jerk=10000000.000000;
ch2->P=0.100000;
ch2->I=0.000000;
ch2->D=0.000000;
ch2->FFAccel=0.000000;
ch2->FFVel=0.000000;
ch2->MaxI=200.000000;
ch2->MaxErr=20000.000000;
ch2->MaxOutput=2000.000000;
ch2->DeadBandGain=1.000000;
ch2->DeadBandRange=0.000000;
ch2->InputChan0=2;
ch2->InputChan1=2;
ch2->OutputChan0=2;
ch2->OutputChan1=2;
ch2->LimitSwitchOptions=0x0;
ch2->InputGain0=-1.000000; было 1
ch2->InputGain1=1.000000;
ch2->InputOffset0=0.000000;
ch2->InputOffset1=0.000000;
ch2->invDistPerCycle=0.000250;
ch2->Lead=0.000000;
ch2->MaxFollowingError=100000.000000;
ch2->StepperAmplitude=100.000000;

ch2->iir[0].B0=1.000000;
ch2->iir[0].B1=0.000000;
ch2->iir[0].B2=0.000000;
ch2->iir[0].A1=0.000000;
ch2->iir[0].A2=0.000000;

ch2->iir[1].B0=1.000000;
ch2->iir[1].B1=0.000000;
ch2->iir[1].B2=0.000000;
ch2->iir[1].A1=0.000000;
ch2->iir[1].A2=0.000000;

ch2->iir[2].B0=1.000000;
ch2->iir[2].B1=0.000000;
ch2->iir[2].B2=0.000000;
ch2->iir[2].A1=0.000000;
ch2->iir[2].A2=0.000000;

EnableAxis(0);
EnableAxis(1);
EnableAxis(2);

DefineCoordSystem(0,1,2,-1);
}
Вложения
SR.jpg (4416 просмотров) <a class='original' href='./download/file.php?id=173115&sid=d8fef78143967fcd1cf911833bfb3076&mode=view' target=_blank>Загрузить оригинал (246.06 КБ)</a>
Аватара пользователя
donvictorio
Мастер
Сообщения: 2449
Зарегистрирован: 11 окт 2012, 16:26
Репутация: 680
Настоящее имя: Виктор
Откуда: Санкт-Петербург
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение donvictorio »

megablast3000 писал(а):Когда жму Move, моторы перед основным движением, немножко дергаются в обратном направлении, причем на всех осях.
дергаются при переходе через ноль машинных координат? (галочка возле dro, g53/g54)
megablast3000
Кандидат
Сообщения: 40
Зарегистрирован: 04 дек 2012, 20:08
Репутация: 9
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение megablast3000 »

Нет, это я Move в StepResponse при настройке осей, к KMoution я пока не лез.
megablast3000
Кандидат
Сообщения: 40
Зарегистрирован: 04 дек 2012, 20:08
Репутация: 9
Контактная информация:

Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf

Сообщение megablast3000 »

По поводу дергания сервы Том ответил так: This is mainly a quirk with the way the Step Response Screen works in combination with the above issue. The "Move" button disables the axis, sets all the axis parameters, then re-enables the axis to a destination of where it originally was. If there was drift motion while the axis was disabled the axis will jump back to where it was. If you fix the amplifier enable issue it should drift less. Also the Step Response Screen and changing parameters will not happen in normal operation so I wouldn't worry about this.

Так же, как и многие столкнулся с дрейфом серв. После нажатия Stop в KMotion моторы начинают медленно вращаться.
Победил это так: настроил сервоусилители таким образом, что при включении они переходят в сразу импульсный режим, а при подаче сигнала S-ON переходят в режим скорости.
Выглядит это так: включаю силу -> включаю комп, Kflop, логику сервоусилителей -> сервы автоматом переходят импульсный режим и моторы встают в удержание -> загружаю KMotion, жму INIT -> активируется сигнал S-ON, сервы переходят в режим скорости, соответственно моторы снова держат позиции уже силами Kflop-а -> жму Stop -> сервы снова переходят в импульсный режим и удерживают позицию сами. Но это, конечно будет будет работать только у сервы которые могут работать в импульсном режиме...
(для просмотра содержимого нажмите на ссылку)
for (;;) //loop forever
{
WaitNextTimeSlice();
if (ch0->Enable || ch1->Enable || ch2->Enable)
SetBit(152);
else
ClearBit(152);
WaitNextTimeSlice();
if (ch0->Enable || ch1->Enable || ch2->Enable)
SetBit(153);
else
ClearBit(153);
WaitNextTimeSlice();
if (ch0->Enable || ch1->Enable || ch2->Enable)
SetBit(154);
else
ClearBit(154);
}
Ответить

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