Плата для управления севро двигателями через EMC2

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
wowk
Кандидат
Сообщения: 84
Зарегистрирован: 13 май 2011, 09:57
Репутация: 1
Откуда: Ukraine Lviv region Stryi
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение wowk »

Я переписал конфигурацию на основе этого проекта ...
http://www.cnczone.com/forums/granite_d ... servo.html

Мои HAl и INI.....
Вложения
конф..zip
(7.85 КБ) 453 скачивания
wowk
Кандидат
Сообщения: 84
Зарегистрирован: 13 май 2011, 09:57
Репутация: 1
Откуда: Ukraine Lviv region Stryi
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение wowk »

У меня отсутствуют сигналы управления шима с ПЛИС :shock:
но Плуто реагирует на энкодеры и показания позиции изменяется когда в ручную повернуть вал двигателя.... я пробовал подбросить входы и к единице и к нулю и так не понял где концевые по Х. ... тогда закомментировал в хале входа с концевого и все равно никакой реакции на всех выходах шима ..... тогда использовал такую ​​конфигурацию, которую я вам показал и все равно ситуация не изменилась .... сейчас двигатель с энкодером и платами Плуто и серво усилителем у меня на рабочем столе и в понедельник я буду иметь возможность заняться Плуто а на выходных почитаю мануалы а то уже запутался .... :cheesy:
Скажите пожалуйста, если использовать конфигурацию токарного то какие входы конкретно завести в ноль или единицу, чтобы сторожевой таймер не отсек выхода шима? Какая последовательность запуска платы?
хорошо бы составить подробные инструкции шаг за шагом и росписать логику действий от прошивки к настройке и вариантов токарной и фрезерной конфигурации ...
и еще .... не подскажете, где в INI можно прописать количество импульсов с энкодера?
Последний раз редактировалось wowk 16 фев 2013, 15:19, всего редактировалось 1 раз.
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

Попробуйте выключить сторожевой таймер, переписав выделенную строку файла max2pluto.v


module wdt(clk, ena, cnt, out);
input clk, ena, cnt;
output out;
reg [6:0] timer;
wire timer_top = (timer == 7'd127);
reg internal_enable;
wire out = internal_enable && timer_top;

always @(posedge clk) begin
if(ena) begin
internal_enable <= 0;
timer <= 0;
end else if(cnt && !timer_top) timer <= timer + 7'd1;
end
endmodule
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

wowk писал(а):Скажите пожалуйста, если использовать конфигурацию токарного то какие входы конкретно завести в ноль или единицу, чтобы сторожевой таймер не отсек выхода шима? Какая последовательность запуска платы?
Срабатывание сторожевого таймера не зависит от состояний входов. Он срабатывает при нарушении обмена с платой по ЕРР.
Если не было обмена более 6.5 мс (происходит раз в сервоцикл 1мс) То выхода уходят в третье состояние. Но при появлении сразу восстанавливаются.
Никаких премудростей в запуске платы нет. Зашили прошивку и все должно работать (если нет ошибок).
Дальше могут быть проблемы только с HAL и INI.
Я сейчас найду диаграмму обмена снятую SignalTap II Logic Analyzer посмотрите осцилографом похоже на ваш обмен?
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

Один цикл обмена по шине ЕРР. Происходит раз в сервоцикл. (3270 просмотров) <a class='original' href='./download/file.php?id=12001&mode=view' target=_blank>Загрузить оригинал (91.44 КБ)</a>
Один цикл обмена по шине ЕРР. Происходит раз в сервоцикл.
wowk
Кандидат
Сообщения: 84
Зарегистрирован: 13 май 2011, 09:57
Репутация: 1
Откуда: Ukraine Lviv region Stryi
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение wowk »

Спасибо Impartial :) :beer_blow:
Я доберусь до платы в понедельник и пройдусь осциллографом по шине ... может есть потребность укоротить кабель к ЛПТ ... Возможно проблема с компьютером .... и поэтому срабатывает сторожевой таймер ... буду искать ... :thinking:
lazymiller
Новичок
Сообщения: 31
Зарегистрирован: 27 дек 2011, 22:58
Репутация: 4
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение lazymiller »

145 param rw u32 communication_error """Incremented each time
146 pluto-servo.read detects an error code in the EPP status register. While
147 this register is nonzero, new values are not being written to the Pluto-P
148 board, and the status of digital outputs and the PWM duty cycle of the PWM
149 outputs will remain unchanged. If the watchdog is enabled, it will activate
150 soon after the communication error is detected. To continue after a
151 communication error, set this parameter back to zero.""";

вот что написано в драйвере plutoservo т.е если есть ошибки связи то параметр communication_error увеличивается и пока он не будет сброшен в ноль выхода не работают

отключение сторожевого таймера в прошивке ничего не даст т.к обмен прекращается на уровне драйвера
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

lazymiller писал(а):the PWM
outputs will remain unchanged.
Не изменяются, а не уходят в неопределенное состояние. Сторожевой таймер вводит их в это состояние.
Насколько я понял выхода находятся в ВИСе.
lazymiller
Новичок
Сообщения: 31
Зарегистрирован: 27 дек 2011, 22:58
Репутация: 4
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение lazymiller »

правильно цифровые выхода не изменяются , а у PWM не меняется коэффициент заполнения но т.к. изначально он ноль то возможно поэтому на PWM выходах ничего нет


to wowk:
а каким образом подключена плата к параллельному порту ? у меня были проблемы со связью с оригинальным PLUTO-P при подключении через шлейф длинной около 30 см
wowk
Кандидат
Сообщения: 84
Зарегистрирован: 13 май 2011, 09:57
Репутация: 1
Откуда: Ukraine Lviv region Stryi
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение wowk »

Спасибо за помощь ... :)
К сожалению отключения сторожевого таймера в прошивке ничего не дало .... сначала в момент активации прошивки Плуто на всех четырех выходах шима UP произвольно начали генерироваться шмпульсы где-то на секунд тридцать а потом тишина .... тогда вернулся на предыдущий вариант ...
Осциллографом проверял сигналы по шине ЛПТ и вроде все нормально ...
С самим портом плата соединена укороченным ЛПТешним шнуром до 30 см.
Между ПЛИС и портом у меня резисиоры 33 Ом.
Когда на прямую без них подкидаюсь к порту то нет соединения с компьютером ....
Не могу докопаться до истины но буду дальше воевать ... :)
Попробую к минимуму укоротить расстояние до ЛПТ ...
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение Impartial »

И все таки. При запуске стандартной конфигурации lathe-pluto скорость шпинделя регулируется?
Оси по экрану ездят?
wowk
Кандидат
Сообщения: 84
Зарегистрирован: 13 май 2011, 09:57
Репутация: 1
Откуда: Ukraine Lviv region Stryi
Контактная информация:

Re: Плата для управления севро двигателями через EMC2

Сообщение wowk »

Оси ездят и шпиндель запускается ... к плате доберусь и убавлю длину кабеля до ЛПТ ..... попытаюсь скрутить пары типа информационный с землей, может помеха какая то и какой то нолик или единичка не добежала :)
Вложения
Екран.png (3146 просмотров) <a class='original' href='./download/file.php?id=12210&mode=view' target=_blank>Загрузить оригинал (111.27 КБ)</a>
Ответить

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