R&D open source клон g320 (step/dir сервоконтроллер)?

razdvatri

Вот может интересующимся пригодится.

HOW THE G320 WORKS

откуда взял - убей не помню, быстрый поиск по гуглю не помог 😦

How_the_G320_works.zip

razdvatri

Может, это тоже пригодится по дороге к результату.

Программируемая логика Altera - первые шаги (для меня, по кр. мере)
www.radiokot.ru/start/mcu_fpga/altera/

Getting Started with Programmable Logic
tutor.al-williams.com/pld-1.htm

отдельный респект Anton_M за наводку на статьи по аналоговому PID’у Bob’а Pease

What’s All This P-I-D Stuff, Anyhow
www.elecdesign.com/Articles/Print.cfm?ArticleID=61…

What’s All This Fuzzy Logic Stuff, Anyhow_ (Part IV)
www.elecdesign.com/Articles/Print.cfm?ArticleID=49…

What’s All This Fuzzy Logic Stuff, Anyhow_ (Part V)
www.elecdesign.com/Articles/Print.cfm?ArticleID=49…

остальные статьи тоже читал с удовольствием (может кто знает такого же русскоязычного?)

Статья PID Without a PhD
www.embedded.com/2000/0010/0010feat3.htm про PID

Интересный, на мой взгляд, патент,

US4486845 Resolver to incremental shaft encoder converter
www.freepatentsonline.com/4486845.pdf

  • забабахать самодельный индуктосин-резольвер-СКВТ-как-его-там для сервомотора, ну и-и-и… Остапа понесло :)
razdvatri

2All
Может кто поделится алгоритмом или мыслями по поводу работы оного работы UHU контроллера?
2Anton_M
Я дико извиняюсь:) , но это вы спрашивали как- то в **bt 22.08 в 18:23?
Почему-то мне так показалось… Общаться по делу с тамошними людьми как-то не задается…
Если так, (если не так, то, сорри, но, все-таки) как вы думаете, AT91SAMS32 - это подходящий пациент для опытов над клоном G320 (почему-то мне кажется что авр не справится со скоростью обработки входных импульсов и обсчитывания ПИД"а, если двигатель будет крутится со ск. скажем 3000 об/мин)

Оплатил сегодня EPM3064 от Альтеры (2.4 буказоида) и AT91SAM7S32 (4.1 USRBL) и вот весь в непонятках, чего в первую очередь изучать - то ли Макс (Квартус), то ли IAR Embedded Workbench for ARM…

mura

Изучай сначала Макс, быстрей получишь результат.
Будут проблемы обращайся, помогу.

razdvatri

Придется… Скачал IAR, а он, сволочь, 113 метров битым скачался (диалапом, @##$$$##%#$^@%@##@@#@#$%$#@ !!!) :)

Anton_M

Я себе Keil.com скачал - 56 мегов. KEIL считают лучшим для ARM - кроме того у него в дебегере хоть есть виртуальный лог анализатор.

http://www.keil.com/kdl/pyddiio2j6a06khwwm…val/mdk302a.exe

или с www.keil.com

лекарство в конфе с заглавной страницы avr123.nm.ru спрашивайте оставив свой мыл - там нет регистрации.

razdvatri:

2Anton_M как вы думаете, AT91SAMS32 - это подходящий пациент для опытов над клоном G320 (почему-то мне кажется что авр не справится со скоростью обработки входных импульсов и обсчитывания ПИД"а, если двигатель будет крутится со ск. скажем 3000 об/мин)

тут важна не скорость а количество тиков энкодера в секунду. ведь энкодеры бывают на разное кол тиков на оборот.

с ARM-ами я сам только начинаю и не могу что-то скачать точно, но уверен что AT91SAMS32 справится, вот справитесь ли вы с ним ?

готоый проект серво привода с шаганием я привел в ветке UHU - посмторите.

20 days later
razdvatri

Начавши изучать hdl, чтобы запихнуть в cpld логику г320, обнаружил существование fpga за 15 буказоидов и софтверных халявных мелкоконтроллеров туда встраиваемых (picoblaze для примера от Xilinx) с рабочей частотой порядка сотен МГц и инструкцией за пару циклов и занимающих ~ 10 % от самого мелкого spartan-3e
Интересно, блин…
Может кто из любителей до этого дорос, а ?
В смысле, может есть где посмотреть-послушать, где кто что сделал по примерно субжу.

Понимаю, что детский сад, но… самодельное вино почти дошло - желание пообщаться в процессе дегустации по теме усилилось :)

Если что, для любителей покидать помидорами - для меня процесс важнее результата.

maxvovk
razdvatri:

Начавши изучать hdl, чтобы запихнуть в cpld логику г320, обнаружил существование fpga за 15 буказоидов и софтверных халявных мелкоконтроллеров туда встраиваемых (picoblaze для примера от Xilinx) с рабочей частотой порядка сотен МГц и инструкцией за пару циклов и занимающих ~ 10 % от самого мелкого spartan-3e
Интересно, блин…
Может кто из любителей до этого дорос, а ?

Сходу один совет. Даже не думай о вшитых МК - не по зубам это тебе.
Для начала - простая логика - фильрация шума на цепочке триггеров, затем счетчик на 24 или 32 бита. Это все, что стоит запихнуть в маленький плис.

Затем АРМ. Там все относительно несложно. И именно его - АВР именно не успевает точно держать траекторию на больших скоростях.

И про контроль тока. Не надо изобретать велосипед, в УХУ применена самая красивая и простая схема. Кстати, ее для убирания пары корпусов тоже стоит запихнуть в плис.

Готов помогать и участвовать - сам хотел сделать - но времени катастрофически не хватает.

mura

Затем АРМ. Там все относительно несложно. И именно его - АВР именно не успевает точно держать траекторию на больших скоростях.

А откуда инфа что АВР не успеет? У кого-то не успел уже или просто домыслы.

maxvovk
mura:

А откуда инфа что АВР не успеет? У кого-то не успел уже или просто домыслы.

Вы читать умеете? Выше я написал, что не успевает на больших скоростях. Наверное, написал не голословно? При том, что код написан на ассемблере и вылизан для максимальной скорости работы.

Хотя в соседней ветке про станок онлайн посмотрев видео его работы - даже с небольшой работой серво сравнивать даже смешно… Но все равно хочется скоростей до максимума - до 3000об/сек. И не надо говорить, что такие скорости не нужны. Нужны, и еще как, для быстрой чистовой обработки, снятия соток. Да и при грубой обработке всегда лучше пройти 2 раза по 3мм, чем один, но 6 😃, и в 2 раза быстрее.

razdvatri

пока писал, копировал, вставлял неудачно :) тут уже действие развернулось…

2maxvovk

Welcom back! :)

Гы, пропущено слово пока :), фпга4фан я изучаю по-маленьку среди прочего, спартан3е стартер кит на подходе, книг накачал по hdl чумодан цельный, а времени - навалом (ну и самое главное, пмнм, по-аглицки читаю, чего и всем желаю, в жизни бы не понял как мелкоконтроллеры программируются (и 80 % остального), если бы читал только по-русски).

Вопрос лукавый - а не завалялось ли у тебя вдруг сгоревшего и ненужного G320 на предмет реверсинжиниринга? (Вроды бы они у тебя были, если не путаю)

Про arm - g320 вообще без мелкоконтроллеров, получится одна cpld’шка, пара-тройка корпусов операционников-компараторов и пара ir2104, наверное.

2mura

Полагаю, имелось в виду, что за время обработки сервоцикла 0,3-1 мсек (1-3 кГц) при 3000 об/мин и 2000 имп на оборот и 5 мм шаге винта, сервопривод может бесконтрольно пройти 0,08-0,25 мм (что вряд ли критично для обработки дерева - видео на сайте Ули, но для высокоскоростной точной работы не приемлимо)

ЗЫ 180000 об/мин перебор, пмнм :)

maxvovk
razdvatri:

Вопрос лукавый - а не завалялось ли у тебя вдруг сгоревшего и ненужного G320 на предмет реверсинжиниринга? (Вроды бы они у тебя были, если не путаю)

Дублировать G320 смысла нет. Это ужасная балалайка, с неменее ужасным твиттером, хоть и пытается работать на любых входных частотах. Я в свое время дублировал G201. Вот оно работает прекрасно. Но делать драйвера для ШД дело глуповатое - скорость народ уже оценил 😃.

Что еще добавить? Начни с енкодера (фильтр, счетчик), затем дорабатывай (перерабатывай) открытый код Элма.

razdvatri

Мое общение с некоторыми людьми с этого форума не подтверждают ужасность г320, ну и на цнцзоне и в других местах люди вроде не плюются. Алекс01 (респект!) говорил мне о пользе смене энкодера с энкодера фирмы xxx на энкодер фирмы ууу (не помню точно), после чего геко у него пошло.

Или я не понимаю, или понимаю не правильно ? :)

По моему нескромному мнению, и G320, и Чановский контроллер есть степ-дир сервоэмуляторы шаговых двигателей, т е на входной степ-дир сигнал контроллер кидает команду на перемещение мотора на один тик от энкодера в нужном направлении или я что-то пропустил?

Гекодравовский девайс должен быть быстрее по-любому. Или Сообщения #6 и 7 не были прочитаны?

Чем хуже шустрый аналоговый пид по-любому более медленнего дигитального?

Фильтр и энкодер в VHDL лежат хоть у Атмела (DOC3037.PDF и 3037.zip), хоть у www.alse-fr.com ApNote204189 Motor Control Basics etc

maxvovk

Мое общение с некоторыми людьми с этого форума не подтверждают ужасность г320, ну и на цнцзоне и в других местах люди вроде не плюются. Алекс01 (респект!) говорил мне о пользе смене энкодера с энкодера фирмы xxx на энкодер фирмы ууу (не помню точно), после чего геко у него пошло.
Или я не понимаю, или понимаю не правильно ? 😃

Лично моё довольно серьёзное общение с G320 привело к полному его неприятию. У меня есть подозрение, что реально его никто в серьёзных целях не использовал.

По моему нескромному мнению, и G320, и Чановский контроллер есть степ-дир сервоэмуляторы шаговых двигателей, т е на входной степ-дир сигнал контроллер кидает команду на перемещение мотора на один тик от энкодера в нужном направлении или я что-то пропустил?

Все верно. Извините, я не совсем понял, что вы хотите делать - дублировать г320 или разрабатывать нормальный привод? Первое мне неинтересно даже на уровне обсуждения, второе интересно.

Гекодравовский девайс должен быть быстрее по-любому. Или Сообщения #6 и 7 не были прочитаны?

Были прочитаны. Теория - это конечно интересно. Но примитивный ненастраиваемый аналогово-цифровой девайс - прошлый век, с низкой точностью.

Чем хуже шустрый аналоговый пид по-любому более медленнего дигитального?

См. выше. Ко всему прочему цифровой на том же SAM7 - должен прекрасно справиться с поставленными задачами.

Фильтр и энкодер в VHDL лежат хоть у Атмела (DOC3037.PDF и 3037.zip), хоть у www.alse-fr.com ApNote204189 Motor Control Basics etc

Да полно их, и самому написать не проблема. У меня есть проект, только вот в вашу плисину он не влезет - я расчитывал аж 6 каналов, с интеллектуальными 32-битными счетчиками, на ACEX EP1K10, они чуток подороже, но и пообъёмней 😃.

PS. Нет, я не возражаю против запихивания всего в плис, без МК. Но тогда нужно реализовать в ней классический настраиваемый ПИД, с кучкой дополнительных параметров. Меня гложут сомнения насчет реальности такой работы.

Кстати, частотники от LG реализованы на FPGA с зашитым МК. Но я бы не стал ориентироваться на уровень лыж 😃.