Страница 2 из 4

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 18:37
aftaev
Значит можно самому делать Месы :) и продавать Нику :lol:

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 18:50
alexx188
Impartial писал(а):Самое дешевое универсальное решение для 4х осевого сево или шагового контроллера с портами ввода/вывода для ЕМС.
http://www.ebay.com/itm/Altera-CycloneI ... 3380wt_952
Жалко что 4000LE пропадают даром! В нее бы ПИД контроллер запихать было бы дело! Не возникала идея?

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 18:55
Nick
alexx188 писал(а):В нее бы ПИД контроллер запихать было бы дело!
А в чем проблема запихать?

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 18:59
alexx188
aftaev писал(а):Значит можно самому делать Месы :) и продавать Нику :lol:
Паять много придется :-)

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 19:11
alexx188
Nick писал(а):
alexx188 писал(а):В нее бы ПИД контроллер запихать было бы дело!
А в чем проблема запихать?
Проблема конечно не запихать :D . Смысл в том, чтобы всю математику, включая енкодеры, ПИД, ШИМ реализовать на ПЛИС, а с EMC2 подавать степ/дир как на шаговик.

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 19:14
alexx188

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 19:17
Nick
alexx188 писал(а):Смысл в том, чтобы всю математику, включая енкодеры, ПИД, ШИМ реализовать на ПЛИС, а с EMC2 подавать степ/дир как на шаговик.
Лучше подавать не Step/Dir. Лучше раз в servo-thread подавать задание компонентам, PID, pwmgen, stepgen и т.д., которые будут крутиться на ПЛИС. Также как это реализовано в MESA. Кстати, по какому интерфейсу можно общаться с Pluto-P от компа?

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 19:25
alexx188
Nick писал(а):Лучше подавать не Step/Dir. Лучше раз в servo-thread подавать задание компонентам, PID, pwmgen, stepgen и т.д., которые будут крутиться на ПЛИС. Также как это реализовано в MESA. Кстати, по какому интерфейсу можно общаться с Pluto-P от компа?
Как это реализовано в mesa? Если ПИД софтовый, то это не хорошо. дельта t нужна постоянная! Если ПИД аппаратный, то к компу резко снижаются требования. помимо других плюсов.

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 19:51
Nick
В месе пид, генератор шагов, шим и прочее стоит на FPGA. Главное, что управляется все это не по Step/Dir, а передаются значения пинов всех этих компонентов. Step/dir сгенерированный компьютером очень не однородный и не дает полной информации на 1мс вперед, а лишь информацию до следующего шага.

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 20:08
Гость
Nick писал(а):В месе пид, генератор шагов, шим и прочее стоит на FPGA. Главное, что управляется все это не по Step/Dir, а передаются значения пинов всех этих компонентов.
Здесь нужна ясность. Что именно может передаваться с ЕМС в пид-контроллер на ПЛИС? На вход ПИДа подается ошибка! Разница между текуще позицией и заданной. Ошибку подсчитывет ПЛИС. Т.е. на ПЛИС надо подавать только координаты. Или я не прав?

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 20:41
alexx188
Nick писал(а):В месе пид, генератор шагов, шим и прочее стоит на FPGA. Главное, что управляется все это не по Step/Dir, а передаются значения пинов всех этих компонентов.
Какие значения передает EMC на ПИД(в месу)? На вход простейшего ПИД-контроллера подается ошибка. Разница м/у заданным положением и текущим. Т.е. на ПЛИС надо передавать координаты.
Step/dir сгенерированный компьютером очень не однородный и не дает полной информации на 1мс вперед, а лишь информацию до следующего шага.
Нам главное чтобы ЕМС шаги не пропускала. А нестабильную частоту степов ПИД подправит. В пределах разумного конечно. Естественно речь идет о хоббийных изделиях.

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 20:42
Impartial
Nick писал(а):В месе пид, генератор шагов, шим и прочее стоит на FPGA.
В прошивке для плуто это все есть за исключением ПИД. Но это не проблема. Я где то здесь на форуме выкладывал теорию цифрового ПИД заодно с рабочим исходником на верилоге. Проверено лично мин нет. :)

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 20:49
alexx188
Impartial писал(а):
Nick писал(а):В месе пид, генератор шагов, шим и прочее стоит на FPGA.
В прошивке для плуто это все есть за исключением ПИД. Но это не проблема. Я где то здесь на форуме выкладывал теорию цифрового ПИД заодно с рабочим исходником на верилоге. Проверено лично мин нет. :)


ПИД сам делал? На чем проверял? Какое разрешение енкодеров? Как ощущения вообще? Тема интересная поэтому столько вопросов. :D

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 20:53
Nick
alexx188 писал(а):Какие значения передает EMC на ПИД(в месу)? На вход простейшего ПИД-контроллера подается ошибка. Разница м/у заданным положением и текущим. Т.е. на ПЛИС надо передавать координаты.
По хорошему, для пид
от компа идут:
1. Все параметры (это только 1 раз)
2. Команда (float)
3. enable
4. index-enable
от ПЛИС нужно:
1. обратную связь
2. состояния ошибок
3. saturated (output = ± maxoutput)

В общем все пины PID, нужно разбросать по ПЛИС и компу и ими они должны меняться.
http://linuxcnc.org/docview/2.4/html/ma ... pid.9.html

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 21:08
alexx188
Nick писал(а):
alexx188 писал(а):Какие значения передает EMC на ПИД(в месу)? На вход простейшего ПИД-контроллера подается ошибка. Разница м/у заданным положением и текущим. Т.е. на ПЛИС надо передавать координаты.
По хорошему, для пид
от компа идут:
Я же про аппаратный ПИД толкую. С софтовым по скорости не сравнится. Даже с реалтайм патчем. Если к нему добавить аппаратный расчет ускорения и интерпретатор Gкодов. То ЕМС IMHO вообще можно сливать. Или я не прав?

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 21:14
Impartial
alexx188 писал(а):ПИД сам делал? На чем проверял? Какое разрешение енкодеров? Как ощущения вообще? Тема интересная поэтому столько вопросов.
Несколько раз на этом форуме натыкался на какое то странное отношение к ставшей чуть ли не магической абверратурой "ПИД". Там все просто. Проще чем с шаговиками (в плане аппаратуры) .
Проверял на коллекторном и BLDC сервоприводе 1 квт на станках и на шуруповерте с энкодером 4096 при 10000 об\мин. :)
Nick писал(а):По хорошему, для пид
от компа идут:
1. Все параметры (это только 1 раз)
2. Команда (float)
3. enable
4. index-enable
от ПЛИС нужно:
1. обратную связь
2. состояния ошибок
3. saturated (output = ± maxoutput)
Передача всех этих параметров уже реализована в драйвере плуто.

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 21:21
Impartial
alexx188 писал(а):Я же про аппаратный ПИД толкую.
Сервоцикл в 20 нс устраивает?

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 21:24
Nick
alexx188 писал(а):Если к нему добавить аппаратный расчет ускорения
Ну это просто. Реализуется внутри компонентов управляющих устройствами (stepgen и т.д.).
alexx188 писал(а): интерпретатор Gкодов
А вот это очень не просто, особенно на том уровне на котором это умеет LinuxCNC. Вот примерное описание всех Gкодов, которые понимает LinuxCNC:
http://linuxcnc.org/docs/html/gcode_main.html
И к этому нужно еще добавить HAL - чтобы объединить устройства в одну систему, плюс управление отображением на пульте... и т.д.... Проще взять LinuxCNC а на плис перенести только то, что требует жесткого realtime и то что работает на боольших скоростях.

По поводу ПИД, который реализовал Impartial вот ссылка на сообщение: Real-time USB контроллер для станков с ЧПУ #13

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 21:28
alexx188
Impartial писал(а):... и на шуруповерте с энкодером 4096 при 10000 об\мин. :)
:shock: Вот бы график посмотреть. Задавалась позиция или скорость? Это у нас какая частота импульсов енкодера ~700KHz? Нехило. Откуда дровишки? :D

Re: Кто-нибудь здесь разбирался с прошивкой Pluto-P?

Добавлено: 21 фев 2012, 22:15
Impartial
Кстати, по какому интерфейсу можно общаться с Pluto-P от компа?
Pluto-P общается с компом через LPT порт работающий в EPP режиме. В этом режиме это обыкновенная шина обмена типа IDE,ISA,PCI, только 8 разрядная.
alexx188 писал(а):Вот бы график посмотреть. Задавалась позиция или скорость? Это у нас какая частота импульсов енкодера ~700KHz? Нехило. Откуда дровишки?
Задается параметр скорости. Я не представляю как можно задать позицию.
Графики чего? Разгона/торможения? Они ни о чем не скажут, так как индивидуальны даже для каждой оси станка. Частота импульсов с энкодера может достигать 8мгц. Поэтому 700кгц это не много. Причем все это работает даже используя внутренний ПИД ЕМС через плату типа плуто.
Другое дело как эти 700 кгц передать в плату с расстояния хотя бы метр с энкодера до платы управления. И вот тут проявляются все прелести входов Циклона 2. Если заметил, то все современные энкодеры выпускаются с дифференциальными выходами. Для согласования их с платами управления применяют дифференциальные приемники сигнала энкодера. А в Циклоне2 эти приемники уже встроены. LVDS называются.