Страница 41 из 70
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 24 авг 2016, 18:02
robinnn
Алгоритм (основной смыл это обнулять координату при выключении датчика)
(для просмотра содержимого нажмите на ссылку)// поиск НОМЕ по Z
//этап 1 - поиск датчика, до его включения (порт 138)
ch2->LimitSwitchOptions=0x100; // отключение обработки концевого датчика на оси Z, чтобы не блокировалась ось
Jog(2,2500); // перемещение оси Z в положительном направлении на скорости 2500 имп/сек
while (!ReadBit(138)) ; // ожидание срабатывания датчика по Z пин 138 - появление сигнала
Zero(2); // обнуление координаты оси Z
Jog(2,0); // остановка оси Z
//этап 2 - отъезд от датчика, до его отключения (порт 138)
Jog(2,-2500); // перемещение оси Z в отрицательном направлении на скорости 2500 имп/сек
while (ReadBit(138)) ; // ожидание срабатывания датчика по Z пин 138 - пропадание сигнала
Zero(2); // обнуление координаты оси Z
Jog(2,0); // остановка оси Z
Jog(2,-2500); // перемещение оси Z в отрицательном направлении на скорости 2500 имп/сек
//этап 3 -Движение от датчика до включения индексных меток (порт 38)
while (!ReadBit(38)) ; // ожидание срабатывания индексной метки по Z- пин 38 - появление сигнала
Zero(2); // обнуление координаты оси Z
Jog(2,0); // остановка оси Z
//этап 4 - отъезд от датчика на 5мм
MoveAtVel(2,2000,-2500 ); // перемещение оси Z с датчика в позицию 2000 имп (5мм) на скорости 2500имп/сек
while (!CheckDone(2)) ;
ch2->LimitSwitchOptions=0x123;// включение обработки концевого датчика на оси Z
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 24 авг 2016, 18:08
Duhas
на всякий случай - в примерах есть готовая функция "хоминга" для одной оси с заданием всех параметров и файл с примером ее использования.
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 27 авг 2016, 00:47
robinnn
Duhas писал(а): в примерах есть готовая функция "хоминга" для одной оси с заданием всех параметров и файл с примером ее использования.
Спасибо, сделал работу ХОУМ по примеру, вроде все вышло.
На основе примера сделал скрипт для поиска заготовки. Фреза должна "включить" индуктивный датчик (нормально открытый), который подсоединен к пину 139.
Датчик срабатывает но ход не останавливается. Где не доглядел?
(для просмотра содержимого нажмите на ссылку)#include "KMotionDef.h"
int SimpleZprobeFunction(int axis, // axis number to Probe
float speed, // speed to move toward probe
float speed_slow, // slow speed to move toward probe
int dir, // direction to move toward probe (+1 or -1)
int probezbit, // limit bit number to watch for probe
int probezlimitpolarity, // limit polarity to wait for (1 or 0)
float Zup1, // move up for slow motion
float Zup2) // move up after all done
{
// probe z- jog until it sees the limit
Jog(axis,dir*speed); // jog slowly
while (ReadBit(probezbit)!=probezlimitpolarity) // loop until Limit bit goes to specified polarity
Jog(axis,0); // stop
while (!CheckDone(axis)) // loop until motion completes
if (!chan[axis].Enable) return 1; // abort/exit if disabled
Move(axis,-dir * Zup1); // move up for Zup1
while (!CheckDone(axis)) // loop until motion completes
if (!chan[axis].Enable) return 1; // abort/exit if disabled
// test if probe still active
if (ReadBit(probezbit)==probezlimitpolarity) // probez bit specified?
{
Move(axis,-dir * Zup1); // move up for some mm
//while (!CheckDone(axis)) // loop until motion completes
//if (!chan[axis].Enable) return 1; // abort/exit if disabled
}
if (ReadBit(probezbit)!=probezlimitpolarity) //
{
Jog(axis,speed_slow*dir); // repeat jog slowly
while (ReadBit(probezbit)!=probezlimitpolarity) // loop until Limit bit goes to specified polarity
Jog(axis,0); // stop
while (!CheckDone(axis)) // loop until motion completes
if (!chan[axis].Enable) return 1; // abort/exit if disabled
Zero(axis); // Zero the position
printf ("Axis Z probe DONE!!!");
if (!chan[axis].Enable) return 1; // abort/exit if disabled
}
Move(axis,-dir * Zup2); // move some amount
while (!CheckDone(axis)) ; // loop until motion completes
if (!chan[axis].Enable) return 1; // abort/exit if disabled
//chan[axis].LimitSwitchOptions = SaveLimits; // restore limit settings
return 0;
}
int DoPC(int cmd);
int DoPCInt(int cmd, int i);
#define GATH_OFF 0 // define the offset into the Gather buffer where strings are passed
main()
{
SimpleZprobeFunction(2, // axis number to home
500, // speed to move toward probe
800, // slow speed to move toward probe
-1, // direction to move toward home (+1 or -1)
139, // limit bit number to watch for probe
0, // limit polarity to wait for (1 or 0)
1200, // move up for slow motion 3mm
6000); // move up after all done 15mm
}
Как-то можно программно отследить направление движение оси или количество пройденных импульсов?
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 29 авг 2016, 17:13
Александр_
Попробовал сегодня управлять станком с аналогового геймпада про который написано в руководстве к кфлопу - ездит! как понять что означают остальные кнопки? как-то размыто в мануале написано. в частности - как ездить по 0,1 и 0,01 мм?
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 01 сен 2016, 01:31
robinnn
есть код для установки координаты оси? Тоесть записать текущему положению оси некоторую величину
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 01 сен 2016, 07:44
ukr-sasha
Кнопка Set
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 01 сен 2016, 13:01
robinnn
ukr-sasha писал(а):Кнопка Set
А в коде как прописать установку координат или офсетов для начальной точки?
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 01 сен 2016, 13:23
vektor_z
robinnn писал(а):А в коде как прописать установку координат или офсетов для начальной точки?
А системы координат G54-G59.3 не вариант??
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 01 сен 2016, 20:26
robinnn
vektor_z писал(а):А системы координат G54-G59.3 не вариант??
Конечно вариант, но в мануале как прописать програмно не нашел. Обнуление координат есть, а присвоение какого-то значения сумел найти
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 02 сен 2016, 11:29
vektor_z
robinnn писал(а):Обнуление координат есть, а присвоение какого-то значения сумел найти
На главном экране, fixture offset . Обнуляем станок- в окошке fixture offset жмакаем кнопку edit - открывается таблица, пишем в нужные СК нужные координаты - ОК.
Или обнуляем станок- подводим фрезу в нужную точку- выбираем в окошке fixture offset нужную СК- жмакаем set , смещение пропишется в таблицу автоматически.. повторяем действие на остальные СК.
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 03 сен 2016, 21:31
robinnn
vektor_z писал(а):На главном экране, fixture offset . Обнуляем станок- в окошке fixture offset жмакаем кнопку edit - открывается таблица, пишем в нужные СК нужные координаты - ОК.
Или обнуляем станок- подводим фрезу в нужную точку- выбираем в окошке fixture offset нужную СК- жмакаем set , смещение пропишется в таблицу автоматически.. повторяем действие на остальные СК.
Как в ручную сделать знаю, но я хотел узнать программный способ, что б можно было в скрипте описать
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 03 сен 2016, 21:40
Дмитро
robinnn писал(а): что б можно было в скрипте описать
В примерах есть SetFixtureX (Y,Z).c при желании правите под свои нужды. Но в KMotionCNC нужно нажимать кнопку сохранить в edit fixture offset, иначе после закрытия программы ничего не сохраняется.
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 03 сен 2016, 21:44
ukr-sasha
И в файле-примере KFLOPtoPCCmdExamples, команда DoPCFloat(PC_COMM_SET_X,0.0);
Попробуйте.
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 11 сен 2016, 14:58
Duhas
раньше не трогал смену инструмента из программы, менял выбирая в выпадающем меню и все было ок, а сейчас пролетел отрезным резцом из-за того что коррекция на инструмент не применилась. пробую ручками - на один потом назад на другой резец, все стабильно, из кода/"командной строки" фиг. пишу в коде M6 Tx или Tx M6 - результат вроде один, то ли совсем не применяется коррекция, то ли не всегда.
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 11 сен 2016, 17:57
ukr-sasha
G43 Hx
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 12 сен 2016, 06:53
Duhas
Речь о смещениях для смены инструмента, у меня в револьверке на токарном 6 инструментов, если я меняю инструмент тыкая мышкой - смещения пименяются, а если из кода - то нет.
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 12 сен 2016, 07:04
ukr-sasha
Смещения применяются во время движения по команде G43 Hx.
Команда М6 Тх по большому счету нужна для электроавтоматики, чтобы сменить инструмент.
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 12 сен 2016, 07:28
Duhas
как раз пошел писать что понял что оно так, спасибо!
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 24 сен 2016, 23:49
tommygun
Привет всем.
Какое-то время назад закончил монтаж 3-осевого фрезера под управлением kflop/kanalog. Моторы и сервопаки - Yaskawa.
Оси ездють, но не могу победить одну неприятность. После включения контроллера все моторы "подрагивают". То есть они находятся в удержании, но оси моторов все время еле заметно подергиваются - это не видно на глаз, но слышно.
Судя по данным во вкладке Analog Status - на выходах DAC все время что-то пульсирует. В KMotion CNC это выглядит так:
https://www.youtube.com/watch?v=liUi3qvONA4
Может кто сталкивался с этим? Питание пробовал разное, уже хотел линейный стаб прикрутить, но народ питает от обычных компутерных блоков.
Кабели от сервопаков до кфлопа экранированные, землить пробовал и на стороне контроллера и на стороне сервопаков - разницы нет..
При отключенном контроллере все тихо, JOG работает прекрасно.
Спасибо.
Re: Ввод в эксплуатацию ЧПУ системы на основе контроллера Kf
Добавлено: 25 сен 2016, 07:42
ukr-sasha
К сожалению, при аналоговом управлении от дрожания полностью избавиться не удастся. Кфлоп при нулевом задании имеет на выходе несколько мВ.
Можно подстроить оффсет на приводе и в СИ файле настроек осей. Но это только уменьшит проблему.
Дрожание в третьем знаке, т.е. в мкм, на большинстве работ не отразиться.
Если этот момент критичен, то надо управлять сервой по Степ/Дир.