Страница 13 из 70

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

Добавлено: 23 июл 2015, 16:14
ukr-sasha
Схему давайте.

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

Добавлено: 23 июл 2015, 21:44
dmitro
...Kflop показывает, что при появлении сигнала на IO0 сигнал имеется так же на IO1, IO4 -- IO5, IO6 -- IO7. ... Где может быть проблема?
Не вдаваясь в детали и специфику KFLOPа, все вході должні біть к чему-то подтянуті, в вашем случае скорее всего к земле, єто так сказать "правило хорошего тона". Резистор 100к вам поможет.

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

Добавлено: 24 июл 2015, 08:31
fangelion
dmitro писал(а):
...Kflop показывает, что при появлении сигнала на IO0 сигнал имеется так же на IO1, IO4 -- IO5, IO6 -- IO7. ... Где может быть проблема?
Не вдаваясь в детали и специфику KFLOPа, все вході должні біть к чему-то подтянуті, в вашем случае скорее всего к земле, єто так сказать "правило хорошего тона". Резистор 100к вам поможет.
Я когда увидел как скачут сигналы, то заставил электронщика это сделать, правда повесили туда не 100К, а всего 1К, чего волне хватает.

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

Добавлено: 24 июл 2015, 10:42
Сергей Саныч
fangelion писал(а):повесили туда не 100К, а всего 1К, чего волне хватает
Пожалуй, даже лучше.

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

Добавлено: 24 июл 2015, 17:48
fangelion
ukr-sasha писал(а):Схему давайте.
Вот так для одного датчика выглядит цепь

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

Добавлено: 24 июл 2015, 19:24
ukr-sasha
Попробуйте пины обозначить, как вход:

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

SetBitDirection(7,0);
и т.д.

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

Добавлено: 24 июл 2015, 19:42
Serg
fangelion писал(а):Вот так для одного датчика выглядит цепь
а почему-бы не так?
k.png
k.png (9.25 КБ) 3057 просмотров

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

Добавлено: 24 июл 2015, 19:45
fangelion
ukr-sasha писал(а):Попробуйте пины обозначить, как вход:

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

SetBitDirection(7,0);
и т.д.
Не помогает. Все равно от одного сигнала два IO срабатывают

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

Добавлено: 24 июл 2015, 19:47
fangelion
UAVpilot писал(а):
fangelion писал(а):Вот так для одного датчика выглядит цепь
а почему-бы не так?
k.png
Через реле получаем развязаный вход. Что бы не попало на датчик, все равно не попадет на контакты платы.

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

Добавлено: 24 июл 2015, 19:51
Serg
А если что-то попадёт на контакты реле или на питание Kflop?.. :)

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

Добавлено: 24 июл 2015, 19:55
fangelion
UAVpilot писал(а):А если что-то попадёт на контакты реле или на питание Kflop?.. :)
а нефик это что-то пускать в шкаф. А вот датчики наруже, там всякое может быть

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

Добавлено: 24 июл 2015, 19:58
Serg
А с питанием шкафа?.. А со шнурком к мыши?..
:)

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

Добавлено: 24 июл 2015, 20:10
ukr-sasha
fangelion писал(а):Не помогает. Все равно от одного сигнала два IO срабатывают
А если отсоединить кросс плату, и на входы подавать напрямую 3,3В? Чтобы плату исключить из подозреваемых.

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

Добавлено: 24 июл 2015, 20:17
fangelion
ukr-sasha писал(а):
fangelion писал(а):Не помогает. Все равно от одного сигнала два IO срабатывают
А если отсоединить кросс плату, и на входы подавать напрямую 3,3В? Чтобы плату исключить из подозреваемых.
Исключали. не помогало.

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

Добавлено: 24 июл 2015, 20:21
ukr-sasha
Какие либо файлы настроек в кфлоп перед этим загружаются?
Попробуйте после включения контроллера эти пины активировать и смотреть в Digital I/O.

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

Добавлено: 28 июл 2015, 12:26
AlexNikov
Доброго дня. Возник вопрос. Подключаю к K-FLOP драйвера Leadshine AM882. При использовании файла "InitStepDir3Axis.с" оси не двигаются, в KMotionCNC циферки "бегут" при нажатии на стрелки. В Digital I/O галки после запуска стоят на битах 8-13 (на Output и State), при смене направления галки с 9,11,13 пропадают в поле State (это DIR и по идее это верно). На драйвере микрошаг 1/64, управление по заднему фронту (SW8 в положении OFF)

В файле управления K-STEP подсмотрел строчку "FPGA(STEP_PULSE_LENGTH_ADD) = 63 + 0x80;" - изменение полярности я так понимаю импульсов и их длительности. В хелпе нашел описание, но там несколько по другому выглядит код - "FPGA(STEP_PULSE_LENGTH_ADD)=32 + 0x80;" - что именно изменяет "63" и "32" мне не понятно...

Итог - при загрузки в контроллер файла инициализации со строчкой "FPGA(STEP_PULSE_LENGTH_ADD) = 63 + 0x80;" физически оси поехали. Но возникли две проблемы:

1. Стал непонятен алгоритм расчета параметра Vel (рассчитав кол-во импульсов/сек по рекомендации Саши - (1200 об/мин * 200 шаг/об * 64) / 60 = 256000, Vel=256000) оси на G0 едут очень медленно.

2. При включении питания одновременно на драйверах и на K-FLOP после загрузки контроллера ОСИ медленно начинают уезжать (как вариант решения сделал включение питания драйверов после загрузки контроллера - оси после включения больше не уезжают), хотелось бы понять природу явления или включение драйверов после загрузки контроллера это и есть верное решение?

Схема подключения на данный момент (12В питает реле для включения подачи питания драйверов):
Подключение.jpg (2990 просмотров) <a class='original' href='./download/file.php?id=54910&mode=view' target=_blank>Загрузить оригинал (1.55 МБ)</a>
Файл инициализации:

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

#include "KMotionDef.h"

// Defines axis 0, 1, 2 as simple step dir outputs
// enables them
// sets them as an xyz coordinate system for GCode

int main() 
{
	FPGA(STEP_PULSE_LENGTH_ADD) = 63 + 0x80;
	
	ch0->InputMode=NO_INPUT_MODE;
	ch0->OutputMode=STEP_DIR_MODE;
	ch0->Vel=256000;
	ch0->Accel=512000;
	ch0->Jerk=4e+006;
	ch0->P=0;
	ch0->I=0.01;
	ch0->D=0;
	ch0->FFAccel=0;
	ch0->FFVel=0;
	ch0->MaxI=200;
	ch0->MaxErr=1e+006;
	ch0->MaxOutput=200;
	ch0->DeadBandGain=1;
	ch0->DeadBandRange=0;
	ch0->InputChan0=0;
	ch0->InputChan1=0;
	ch0->OutputChan0=8;
	ch0->OutputChan1=0;
	ch0->MasterAxis=-1;
	ch0->LimitSwitchOptions=0x100;
	ch0->LimitSwitchNegBit=0;
	ch0->LimitSwitchPosBit=0;
	ch0->SoftLimitPos=1e+009;
	ch0->SoftLimitNeg=-1e+009;
	ch0->InputGain0=1;
	ch0->InputGain1=1;
	ch0->InputOffset0=0;
	ch0->InputOffset1=0;
	ch0->OutputGain=1;
	ch0->OutputOffset=0;
	ch0->SlaveGain=1;
	ch0->BacklashMode=BACKLASH_OFF;
	ch0->BacklashAmount=0;
	ch0->BacklashRate=0;
	ch0->invDistPerCycle=1;
	ch0->Lead=0;
	ch0->MaxFollowingError=1000000000;
	ch0->StepperAmplitude=20;

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

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

	ch0->iir[2].B0=0.000769;
	ch0->iir[2].B1=0.001538;
	ch0->iir[2].B2=0.000769;
	ch0->iir[2].A1=1.92081;
	ch0->iir[2].A2=-0.923885;
    EnableAxisDest(0,ch0->Dest);

	ch1->InputMode=NO_INPUT_MODE;
	ch1->OutputMode=STEP_DIR_MODE;
	ch1->Vel=256000;
	ch1->Accel=512000;
	ch1->Jerk=4e+006;
	ch1->P=0;
	ch1->I=0.01;
	ch1->D=0;
	ch1->FFAccel=0;
	ch1->FFVel=0;
	ch1->MaxI=200;
	ch1->MaxErr=1e+006;
	ch1->MaxOutput=200;
	ch1->DeadBandGain=1;
	ch1->DeadBandRange=0;
	ch1->InputChan0=1;
	ch1->InputChan1=0;
	ch1->OutputChan0=9;
	ch1->OutputChan1=0;
	ch1->MasterAxis=-1;
	ch1->LimitSwitchOptions=0x100;
	ch1->LimitSwitchNegBit=0;
	ch1->LimitSwitchPosBit=0;
	ch1->SoftLimitPos=1e+009;
	ch1->SoftLimitNeg=-1e+009;
	ch1->InputGain0=1;
	ch1->InputGain1=1;
	ch1->InputOffset0=0;
	ch1->InputOffset1=0;
	ch1->OutputGain=1;
	ch1->OutputOffset=0;
	ch1->SlaveGain=1;
	ch1->BacklashMode=BACKLASH_OFF;
	ch1->BacklashAmount=0;
	ch1->BacklashRate=0;
	ch1->invDistPerCycle=1;
	ch1->Lead=0;
	ch1->MaxFollowingError=1000000000;
	ch1->StepperAmplitude=20;

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

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

	ch1->iir[2].B0=0.000769;
	ch1->iir[2].B1=0.001538;
	ch1->iir[2].B2=0.000769;
	ch1->iir[2].A1=1.92081;
	ch1->iir[2].A2=-0.923885;
    EnableAxisDest(1,ch1->Dest);

	ch2->InputMode=NO_INPUT_MODE;
	ch2->OutputMode=STEP_DIR_MODE;
	ch2->Vel=25600;
	ch2->Accel=512000;
	ch2->Jerk=4e+006;
	ch2->P=0;
	ch2->I=0.01;
	ch2->D=0;
	ch2->FFAccel=0;
	ch2->FFVel=0;
	ch2->MaxI=200;
	ch2->MaxErr=1e+006;
	ch2->MaxOutput=200;
	ch2->DeadBandGain=1;
	ch2->DeadBandRange=0;
	ch2->InputChan0=2;
	ch2->InputChan1=0;
	ch2->OutputChan0=10;
	ch2->OutputChan1=0;
	ch2->MasterAxis=-1;
	ch2->LimitSwitchOptions=0x100;
	ch2->LimitSwitchNegBit=0;
	ch2->LimitSwitchPosBit=0;
	ch2->SoftLimitPos=1e+009;
	ch2->SoftLimitNeg=-1e+009;
	ch2->InputGain0=1;
	ch2->InputGain1=1;
	ch2->InputOffset0=0;
	ch2->InputOffset1=0;
	ch2->OutputGain=-1;
	ch2->OutputOffset=0;
	ch2->SlaveGain=1;
	ch2->BacklashMode=BACKLASH_OFF;
	ch2->BacklashAmount=0;
	ch2->BacklashRate=0;
	ch2->invDistPerCycle=1;
	ch2->Lead=0;
	ch2->MaxFollowingError=1000000000;
	ch2->StepperAmplitude=20;

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

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

	ch2->iir[2].B0=0.000769;
	ch2->iir[2].B1=0.001538;
	ch2->iir[2].B2=0.000769;
	ch2->iir[2].A1=1.92081;
	ch2->iir[2].A2=-0.923885;
	EnableAxisDest(2,ch2->Dest);

	DefineCoordSystem(0,1,2,-1);
	
	SetBitDirection(1,1);  
	SetBit(1);				

    return 0;
}
Ощущение что делаю что-то не верно...ткните носом...

Шкаф управления малость переделал, выглядит так (при тестировании частотник выключен, работают БП драйверов и 2 БП К-ФЛОПА). Получилось конечно все в притирку и это расстраивает, но буду прикручивать дополнительное принудительное охлаждение:
IMAG0216.jpg (2990 просмотров) <a class='original' href='./download/file.php?id=54911&mode=view' target=_blank>Загрузить оригинал (1.15 МБ)</a>

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

Добавлено: 28 июл 2015, 12:30
alexg-nn
А вода в шкафу управления - это вообще не опасно?

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

Добавлено: 28 июл 2015, 12:32
AlexNikov
alexg-nn писал(а):А вода в шкафу управления - это вообще не опасно?
В системе дистиллированная вода, меняю раз в пару месяцев. Но да это не лучший вариант. Постарался оградить электронику, но все равно это не безопасно. Продумываю как полностью изолировать отдел с водой от электроники в габаритах шкафа.

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

Добавлено: 28 июл 2015, 13:43
ukr-sasha
AlexNikov писал(а):Доброго дня. Возник вопрос.
Как работало до этого?

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

Добавлено: 28 июл 2015, 13:46
AlexNikov
ukr-sasha писал(а):
AlexNikov писал(а):Доброго дня. Возник вопрос.
Как работало до этого?
До этого работал K-FLOP + K-STEP. Делал тестовый запуск K-FLOP с Ледшайнами, но файл инициализации был от K-STEPа (на тот момент проверил только то, что ШД вращаются)