Страница 7 из 8
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 24 сен 2014, 15:30
michael-yurov
ukr-sasha писал(а):konstantinshr писал(а):обнуление Z
Это датчик длины инструмента?
Я себе примерно такую программку наваял:
Код: Выделить всё
#include "KMotionDef.h"
int DoPC(int cmd);
int DoPCFloat(int cmd, float f);
int DoPCInt(int cmd, int i);
int MsgBox(char *s, int Flags);
int SetVars(int poff, int varoff, int n);
int GetVars(int varoff, int n, int poff);
main()
{
int Answer;
double *pD = (double *)persist.UserData;
Jog(2,-2500); // start moving
while (ReadBit(15)) ; // wait for switch (input #15) to change
Jog(2,0); // stop
EnableAxisDest(2, 2066.4); // Set Z to 1.535 mm (1440 steps/mm)
Delay_sec(0.1);
DoPCFloat(PC_COMM_SET_Z,1.435);
Delay_sec(0.1);
Move(2,7200); // Move to Z=5 mm (1440 steps/mm)
Delay_sec(0.1);
// DoPC(PC_COMM_ESTOP);
// DoPC(PC_COMM_HALT);
// DoPC(PC_COMM_EXECUTE);
// DoPC(PC_COMM_SINGLE_STEP);
// DoPCFloat(PC_COMM_SET_FRO,0.25f);
// DoPCFloat(PC_COMM_SET_FRO_INC,1.1f);
// DoPCFloat(PC_COMM_SET_X,0.0);
// DoPCFloat(PC_COMM_SET_Y,0.0);
// DoPCFloat(PC_COMM_SET_Z,2.25);
// DoPCInt(PC_COMM_USER_BUTTON,3);
// DoPCInt(PC_COMM_MCODE,3);
// Answer = MsgBox("Hello World",MB_YESNO|MB_ICONEXCLAMATION);
// if (Answer == IDYES)
// printf("Answer is Yes\n");
// else
// printf("Answer is No\n");
// MDI("G0 X1.2 Y2.2 Z3.3");
// MDI("M5");
// MoveRel(2,28800); // Move Z +20 mm (1440 steps/mm)
// put 3 double values in the persist vars
// pD[10] = 123.456;
// pD[11] = 1000.0;
// pD[12] = 999.9;
// transfer up to the GCode Vars
// SetVars(100,3,10); // Upload 3 to GCode 100 from persist 10
// MDI("#100 = [#100 + 1]");
// read them back into different persist Vars
// GetVars(100,3,13); // Download 3 from GCode 100 to persist 13
// printf("%f %f %f\n",pD[13],pD[14],pD[15]);
}
int SetVars(int varoff, int n, int poff)
{
persist.UserData[PC_COMM_PERSIST+2] = n; // number of elements
persist.UserData[PC_COMM_PERSIST+3] = poff; // persist offset (doubles)
return DoPCInt(PC_COMM_SET_VARS,varoff); // Var index and Cmd
}
int GetVars(int varoff, int n, int poff)
{
persist.UserData[PC_COMM_PERSIST+2] = n; // number of elements
persist.UserData[PC_COMM_PERSIST+3] = poff; // persist offset (doubles)
return DoPCInt(PC_COMM_GET_VARS,varoff); // Var index and Cmd
}
#define GATH_OFF 0 // define the offset into the Gather buffer where strings are passed
// Trigger a message box on the PC to be displayed
// defines for MS Windows message box styles and Operator
// response IDs are defined in the KMotionDef.h file
int MsgBox(char *s, int Flags)
{
char *p=(char *)gather_buffer+GATH_OFF*sizeof(int);
int i;
do // copy to gather buffer w offset 0
{
*p++ = *s++;
}while (s[-1]);
persist.UserData[PC_COMM_PERSIST+2] = Flags; // set options
DoPCInt(PC_COMM_MSG,GATH_OFF);
return persist.UserData[PC_COMM_PERSIST+3];
}
// put the MDI string (Manual Data Input - GCode) in the
// gather buffer and tell the App where it is
int MDI(char *s)
{
char *p=(char *)gather_buffer+GATH_OFF*sizeof(int);
int i;
do // copy to gather buffer w offset 0
{
*p++ = *s++;
}while (s[-1]);
// issue the command an wait till it is complete
// (or an error - such as busy)
return DoPCInt(PC_COMM_MDI,GATH_OFF);
}
// Put a Float as a parameter and pass the command to the App
int DoPCFloat(int cmd, float f)
{
int result;
persist.UserData[PC_COMM_PERSIST+1] = *(int*)&f;
return DoPC(cmd);
}
// Put an integer as a parameter and pass the command to the App
int DoPCInt(int cmd, int i)
{
int result;
persist.UserData[PC_COMM_PERSIST+1] = i;
return DoPC(cmd);
}
// Pass a command to the PC and wait for it to handshake
// that it was received by either clearing the command
// or changing it to a negative error code
int DoPC(int cmd)
{
int result;
persist.UserData[PC_COMM_PERSIST]=cmd;
do
{
WaitNextTimeSlice();
}while (result=persist.UserData[PC_COMM_PERSIST]>0);
//printf("Result = %d\n",result);
return result;
}
Смысл в том, что сначала едем вниз до появления контакта. Останавливаемся, задаем координату Z равную высоте контактной пластины (в импульсах),
А потом - самое сложное - передать в поле координаты Z требуемое значение (толщину пластины) - для этого написана хитрая функция DoPCFloat(), которая может много всего разного в плане обмена данными между контроллером и программой.
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 24 сен 2014, 15:48
ukr-sasha
michael-yurov писал(а):Я себе примерно такую программку наваял:
Миша, давай оформляй, и вставим, как главу в тему.

Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 24 сен 2014, 16:02
michael-yurov
ukr-sasha писал(а):michael-yurov писал(а):Я себе примерно такую программку наваял:
Миша, давай оформляй, и вставим, как главу в тему.

Не, не могу (((
Я же это все давно делал - все из головы вылетело,
и станка сейчас под рукой нет, чтобы проверить.
Да и времени нет, прошу простить.
Чтобы понятно написать - нужно вникать в тему, а мне сейчас совсем не до этого.
Я вот здесь писал с более подробными пояснениями: http://cnc-club.ru/forum/viewtopic.php? ... 299#p61605
Вот здесь автор что-то писал на эту тему:
http://www.dynomotion.com/Help/KMotionC ... rKFLOP.htm
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 24 сен 2014, 16:57
konstantinshr
ukr-sasha писал(а):konstantinshr писал(а):обнуление Z
Это датчик длины инструмента?
Да датчик длины инструмента. В Маче понятно. А в кфлопе сам пока не смогу написать програму.
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 24 сен 2014, 18:06
konstantinshr
michael-yurov писал(а):
Смысл в том, что сначала едем вниз до появления контакта. Останавливаемся, задаем координату Z равную высоте контактной пластины (в импульсах),
А потом - самое сложное - передать в поле координаты Z требуемое значение (толщину пластины) - для этого написана хитрая функция DoPCFloat(), которая может много всего разного в плане обмена данными между контроллером и программой.
Да такое мне пока не под силу. Спасибо.
А на какой пин сажать. Я пока подключил туда же где и концевики на JP15
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 24 сен 2014, 18:17
michael-yurov
konstantinshr писал(а):А на какой пин сажать. Я пока подключил туда же где и концевики на JP15
Да пофигу на какой.
Вопрос в другом - нельзя соединять массу шпинделя (фрезу) и КилоФлоп в одну электрическую цепь. Очень желательна гальваническая развязка.
В двух словах на пальцах не объясню. В голове сейчас совсем другие мысли. Прошу простить.
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 24 сен 2014, 18:23
konstantinshr
michael-yurov писал(а):konstantinshr писал(а):А на какой пин сажать. Я пока подключил туда же где и концевики на JP15
Да пофигу на какой.
Вопрос в другом - нельзя соединять массу шпинделя (фрезу) и КилоФлоп в одну электрическую цепь. Очень желательна гальваническая развязка.
В двух словах на пальцах не объясню. В голове сейчас совсем другие мысли. Прошу простить.
Так вроде вход JP15 оптоизолирован. Или там проблемы глубже.
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 25 сен 2014, 04:45
konstantinshr
ukr-sasha писал(а):Что с точностью получилось?
Вот первая проба. Размер 100х100мм. УП не моя скачал из интернета. Поверхность мне нн нравится. Видимо из за вибрации оси У.
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 07 окт 2014, 05:21
konstantinshr
Вчера из остатков фанеры решил сделать для детей лошадку качалку. Возникла проблема. При рабочей подаче F3000 двухзаходная фреза ломается как спичка.

Поломал две. Плавное врезание поставил глубина всего 5 мм. обороты шпинделя 18000. Подскажите что не так. Я тут на форуме читал что режут 3мм фрезой фанеру 20мм на всю глубину. Или просто фреза слишком длинная? Ее заметно отгибает. Пришлось резать на подаче f1500 с заглублением 3мм а это слишком долго. На видео видно станок еле ползет.
http://www.youtube.com/watch?v=hclNNmjyOes
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 07 окт 2014, 06:21
Дмитро
Фреза длинная.
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 13 окт 2014, 23:02
konstantinshr
Вчера пробовал 3d резьбу. Заготовка доска сосна 50ка. У меня ощущение что станок "задумывается" в верхней точке оси Z. Подскажите это нормальное явление или надо копать настройки.
http://www.youtube.com/watch?v=5OVOlNQSPQA
Кстати за какие заслуги Nik медальки раздает? Может и я достоин

Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 13 окт 2014, 23:10
master_70
привет . не нашел или не внимателен я . н непонял чем управляется станок , какой прогой?
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 13 окт 2014, 23:21
konstantinshr
master_70 писал(а):привет . не нашел или не внимателен я . н непонял чем управляется станок , какой прогой?
Управляется kflop+kanalog прога его родная kmoushen.
Кстати тестовую траекторию от michael-yurov станок отработал за 1м 32 с. Вроде неплохой вариант.
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 14 окт 2014, 08:36
KOS
ukr-sasha писал(а):nERV писал(а):Кфлоп брали с ебея или с их офф. сайта?
Что то на иБей их не видел...
с
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 14 окт 2014, 09:12
Fisher
konstantinshr писал(а):У меня ощущение что станок "задумывается" в верхней точке оси Z
Может это только кажется, т.к. в верхних точках и рельеф "потоньше"?
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 14 окт 2014, 19:41
konstantinshr
Fisher писал(а):konstantinshr писал(а):У меня ощущение что станок "задумывается" в верхней точке оси Z
Может это только кажется, т.к. в верхних точках и рельеф "потоньше"?
Я надеюсь так оно и есть. Просто не с чем сравнить. Первый станок по металлу и резьбу на нем резать не сруки
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 20 окт 2014, 22:08
konstantinshr
Из остатков деталей от двух станков собрал 4-ю ось. Делал на основе ременного редуктора 1:8. Хотел попробовать выточить ножку к столику. Но во время настройки оси немного поспешил поставил большой Р и двигатель вошел в резонанс. Я не думал что такое может быть. Пошел легкий дымок и зубчики на ремне отошли в мир иной. При этом ось была свободная, просто за счет инерции (патрон на 125) серва спалила ремень. Правда и ремень HTD3 слабенький.
Теперь дилема где такой найти HTD3 411. От чего может подойти?
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 20 окт 2014, 22:28
Askov
konstantinshr писал(а):
Теперь дилема где такой найти HTD3 411. От чего может подойти?
Посмотри здесь
http://pulley.beltmarket.ru/sk_s.html
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 21 окт 2014, 05:56
konstantinshr
Спасибо посмотрю. Я с ebay заказал. Хочу посмотреть может от какой то бытовой техники подойдет.
Re: Станок 1200х1200х170 проектирую...строю
Добавлено: 29 авг 2017, 21:24
Taganrog
konstantinshr писал(а):Я тут на форуме читал что режут 3мм фрезой фанеру 20мм на всю глубину
На двадцать не пробовал, но фанера двухперой фрезой 3.175мм (12мм режущая кромка) действительно берется с одного захода, на все 12 мм.