Pluto-P - есть ли опыт использования?

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Сергей Саныч »

Итак, в основном всё работает. Остались мелкие штрихи. Максимальная скорость станка увеличилась до 5700 мм/мин при коэффициенте дробления шага 1/16. Для работы поставлю 4200-4500 для надежности.
С программным генератором было 2400 при 1/8. За счет уменьшения микрошага заметно увеличилась плавность работы двигателей на малых скоростях (контроллер/драйвер PLC545 от Пурелоджика).
Заодно разобрался, как работает LCNC с аппаратными генераторами.
Если кого-то заинтересует исправленная прошивка и драйвер - выложу.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Nick »

Serg-tmn писал(а):Если кого-то заинтересует исправленная прошивка и драйвер - выложу.
Конечно интересует, выкладывай, пока не потерялось!
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Serg »

Кстати, а вот это видел?
Pluto-P #1
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Сергей Саныч »

UAVpilot писал(а):Кстати, а вот это видел?
Pluto-P #1
Ноу, сэр :thinking: :)
Правда, там про серво, а по шаговому варианту он обещал позже выложить (ровно 4 месяца прошло), но проблема общая
mimi писал(а):the problem of the bug is, it stochastically muddles the EPP bytes .
and it depends on several environmental factors and is not easy to detect.
я решил несколько иначе, более тупо, пришлось переделать протокол обмена (у меня для каждого байта данных персонально передается адрес, без автоинкремента, в результате обмен несколько раздулся по времени - раза в полтора-два). Вариант, примерно как у mimi, тоже пробовал, но "что-то пошло не так"(с). Надо будет еще попробовать.
Чудес не бывает. Бывают фокусы.
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Impartial »

UAVpilot писал(а):Кстати, а вот это видел?
Я общался с ним в личке и ничего не понял что он нашел неправильного в исходниках прошивки. Все там работает за исключением не верной отработки сигнала nWait. Вся проблема состоит в привязке к внутреннему клоку асинхронных сигналов ЕРР. Не на всех материнках оригинальная привязка стабильно работает. Правильно нужно сделать стандартный переход из одного клокового домена в другой. Т.е. Просто два последовательных D триггера.
Увеличивать время цикла обмена крайне нежелательно. Это может пройти с конфигурацией шаговиков, но не допустимо с серво так как в промежутке между чтением и записью делается довольно длинный расчет ПИДов.
Поэтому там и сделан автоинкримент адреса и доступ в режиме 32 -16.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Сергей Саныч »

Проблема в том, что при считывании данных автоинкремент соответствующего счетчика происходит слишком рано, и на шине данных EPP может оказаться не та информация. Автор прошивки не стал толком с этим разбираться, а просто сместил момент выборки на целый цикл EPP, чем еще больше запутал ситуацию. Собственно, он сам осознавал, что делает неправильно

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

// the addr_reg test looks funny because it is auto-incremented in an always
// block so "1" reads the low byte, "2 and "3" read middle bytes, and "0"
// reads the high byte I have a feeling that I'm doing this in the wrong way.
wire [7:0] data_reg = addr_reg[1:0] == 2'd1 ? data_buf[7:0] :
(addr_reg[1:0] == 2'd2 ? data_buf[15:8] :
(addr_reg[1:0] == 2'd3 ? data_buf[23:16] :
data_buf[31:24]));
я для пробы отключил автоинкремент и ввел передачу адреса перед чтением и записью каждого байта. Всё заработало. Время обмена стало около 150-200 мкс. Понимаю, что это не оптимально, но работает. А сервоцикл увеличивать не было необходимости, оставил 1000 мкс по умолчанию.
mimi же попробовал честно разрулить временнЫе зависимости.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Сергей Саныч »

Переделал прошивку по образу и подобию http://cnc-club.ru/forum/viewtopic.php? ... 427#p82427. Сам драйвер (pluto_step.comp) вернул родной.
Работает :good:
Вложения
Pluto_step_firmware.zip
(34.34 КБ) 482 скачивания
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Kaev
Новичок
Сообщения: 11
Зарегистрирован: 21 фев 2016, 02:35
Репутация: 0
Настоящее имя: Казанцев Сергей Иванович
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Kaev »

Здравствуйте. Большое спс. автору темы!
Тоже есть желание спаять этот "LPT нашлёпок" на ep2c5t144, только смущает некоторые несовершенства аппаратной реализации, поясню:
Все устройства работающие на LPT порту должны иметь буфер с триггером шмидта, сколько делал всяких программаторов, без них о расстоянии и речи быть не может. А тут при скоростном режиме "EPP" о стабильной и помехоустойчивой работе с LPT шнуром более 1,5 метра говорить не приходится. Вот к примеру принтеры с LPT портом имеют в цепи такие микросхемы типа 74HCT1284 (2шт) или 74HCT161284(1шт.) и для защиты от статики 74F1071. К сожалению нет схемы на 7i43 но подозреваю что там всё есть, потому и работает (как пишут) лучше если же нет, то это тоже *овно. Но поскольку EPP это 2-у направленная шина, то буферами на входе надо управлять (чтение/запись). И у 74HCT1284(74HCT161284) есть вход DIR. Но как это можно сделать? По моему разумению, правильным решением было бы матрасом управлять, но тогда похоже надо переписывать протокол обмена. На основании выше сказанного, думаю, что тема с PLUTO-P клонами, останется на уровне "homemade" на коленке. Я сам к сожалению в матрицах мало понимаю, ума хватило пока только на установку Quartus и открытия там вашего исходника. Всё же, может, поможете разобраться с этими проблемами, или забыть?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Serg »

Kaev писал(а):К сожалению нет схемы на 7i43 но подозреваю что там всё есть
Нет, LPT напрямую подключается к ногам FPGA.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Kaev
Новичок
Сообщения: 11
Зарегистрирован: 21 фев 2016, 02:35
Репутация: 0
Настоящее имя: Казанцев Сергей Иванович
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Kaev »

Kaev,
Вот набросал, это надо ставить перед FPGA и портом https://cloud.mail.ru/public/6h4q/Zv8tD33Sq
Надо сформировать сигнал DIR для этого IEEE Буфера. HELP
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Serg »

Kaev писал(а):Надо сформировать сигнал DIR для этого IEEE Буфера.
~Write чем плох?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Kaev
Новичок
Сообщения: 11
Зарегистрирован: 21 фев 2016, 02:35
Репутация: 0
Настоящее имя: Казанцев Сергей Иванович
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Kaev »

UAVpilot писал(а):
Kaev писал(а):Надо сформировать сигнал DIR для этого IEEE Буфера.
~Write чем плох?
Попробую.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Сергей Саныч »

Pluto у меня до сих пор надежно работает без буферов. Но для этого пришлось платку (благо, она маленькая) воткнуть прямо в разъем LPT материнки. Удлинительный шлейф около 15 сантиметров приводил к полной неработоспособности в режиме EPP. Правда, так было со старой прошивкой, где со временами малость напутано.
И да, подтверждаю, что помехоустойчивость довольно низкая, и чтобы получить нормальную работу с входными сигналами от датчиков, пришлось прописывать в прошивке фильтры от дребезга. Несмотря на то, что длина шлейфа от контроллера (PLC545) всего около 200 мм.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Serg »

Сергей Саныч писал(а):И да, подтверждаю, что помехоустойчивость довольно низкая
странно... А с подключениями ничего не напутано?
У меня нормально работало с подключением к LPT плоским шлейфом длиной миллиметров 200, датчики подключались напрямую к Pluto-P неэкранированными проводами длиной 1-1.5 метра, лежащими в общем кабельканале с ПВС к шаговикам и шпинделю.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Сергей Саныч »

UAVpilot писал(а):странно... А с подключениями ничего не напутано?
Абижаешь, дарагой :)
Вот тот самый шлейф, с которым не работало
Шлейф.jpg (3612 просмотров) <a class='original' href='./download/file.php?id=76350&sid=debd0507d0ba76dbc0856e4bb132c74b&mode=view' target=_blank>Загрузить оригинал (1.98 МБ)</a>
Естественно, прозвонен вдоль и поперек неоднократно.
А вот сама "плутовка"
DSCN1638_cr.jpg (3612 просмотров) <a class='original' href='./download/file.php?id=76349&sid=debd0507d0ba76dbc0856e4bb132c74b&mode=view' target=_blank>Загрузить оригинал (2.41 МБ)</a>
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Kaev
Новичок
Сообщения: 11
Зарегистрирован: 21 фев 2016, 02:35
Репутация: 0
Настоящее имя: Казанцев Сергей Иванович
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Kaev »

У меня есть опыт с ATMEL-ом и работе в пром. условиях. Представьте сколько нано помех действует на прибор, нано импульсы с амплитудой до нескольких тысяч вольт которые на столько короткие что их увидеть на осциллографе не получается, но при этом они имеют достаточную энергетику чтобы приводить к зависанию и к порче содержимому RAM памяти. Пром. условия эксплуатации, это и работающие сварочные аппараты и шлиф. машинки и пр. источники шума. В итоге действительно имеет значение качество и правильность разводки ПП, ну и естественно схема должна быть правильной.
У CNC тоже много шумящих устройств, это и ШИМ на движках и частотники.
Вот как порт сделан на принтере https://cloud.mail.ru/public/NHQE/yMWZ5RNfE
Аватара пользователя
Kaev
Новичок
Сообщения: 11
Зарегистрирован: 21 фев 2016, 02:35
Репутация: 0
Настоящее имя: Казанцев Сергей Иванович
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Kaev »

UAVpilot писал(а):
Kaev писал(а):К сожалению нет схемы на 7i43 но подозреваю что там всё есть
Нет, LPT напрямую подключается к ногам FPGA.
Там Xilix SPARTAN-3, у него порты толерантные к TTL уровням?
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Serg »

Сергей Саныч писал(а): Естественно, прозвонен вдоль и поперек неоднократно.
Это фабричный?
У меня был шлейф для Месы, который отлично прозванивался, а на скоростях глючил (вочдог постоянно ругался) - оказалось на паре проводков при обжатии ножи чуток разошлись и контакт "слабый" был.
Kaev писал(а):Там Xilix SPARTAN-3, у него порты толерантные к TTL уровням?
Да. Джампером переключается.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Сергей Саныч »

UAVpilot писал(а):Это фабричный?
Нет, самодельный. Но та же проблема была и с метровым паяным фабричным удлинителем.
UAVpilot писал(а):У меня был шлейф для Месы, который отлично прозванивался, а на скоростях глючил (вочдог постоянно ругался) - оказалось на паре проводков при обжатии ножи чуток разошлись и контакт "слабый" был.
Такие "приколы" часто бывают, если сечение провода меньше нормы - желтолицые братья сэкономили на меди. Вот сейчас у меня есть катушка шлейфа, на котором написано "28AWG" (0,081 мм2), а по факту соответствует AWG31 (0,04). Естественно, обжать такой - еще та лотерея.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Kaev
Новичок
Сообщения: 11
Зарегистрирован: 21 фев 2016, 02:35
Репутация: 0
Настоящее имя: Казанцев Сергей Иванович
Контактная информация:

Re: Pluto-P - есть ли опыт использования?

Сообщение Kaev »

UAVpilot писал(а):
Kaev писал(а):Там Xilix SPARTAN-3, у него порты толерантные к TTL уровням?
Да. Джампером переключается.
Сейчас посмотрел исходники на mesa 7i43, а именно порты (файл 7i43.ucf), я так понял что, там шина настроена на 3,3 вольта
и у epp интерфейса есть сигнал READ

#PACE: Start of PACE I/O Pin Assignments
NET "CLK" LOC = "p53" | IOSTANDARD = LVCMOS33 ;
NET "EPP_ASTROBE" LOC = "p80" | IOSTANDARD = LVCMOS33 | PULLUP ;
NET "EPP_DATABUS<0>" LOC = "p68" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ;
NET "EPP_DATABUS<1>" LOC = "p63" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ;
NET "EPP_DATABUS<2>" LOC = "p60" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ;
NET "EPP_DATABUS<3>" LOC = "p59" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ;
NET "EPP_DATABUS<4>" LOC = "p51" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ;
NET "EPP_DATABUS<5>" LOC = "p50" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ;
NET "EPP_DATABUS<6>" LOC = "p47" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ;
NET "EPP_DATABUS<7>" LOC = "p46" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ;
NET "EPP_DSTROBE" LOC = "p79" | IOSTANDARD = LVCMOS33 | PULLUP ;
NET "EPP_READ" LOC = "p84" | IOSTANDARD = LVCMOS33 | PULLUP ;
NET "EPP_WAIT" LOC = "p82" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW ;
Ответить

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