Усовершенствованный сервопривод Чена

ATLab
arisov77:

… и вот здесь banebots.com/pc/ELECTRONICS/EN-A0001-KT на 1, 4, 8 и 16.

Или я ничего не понимаю, или схема совсем левая:

  1. это не делитель с сохранением квадратур, а формирователь сигнала “направление”
  2. эта схема, как она нарисована, вообще не работает как делитель: сигнал направления формируется напрямую из входного квадратурного сигнала, а счетчик делитель и мультиплексор в стороне. Чтобы на халяву не повторяли, а покупали набор?
dashko

Да, верно. А мне нужен просто делитель на 2 (не на 4 8 16) с сохранением квадратуры. Диск на 500 линий не позволяет достичь нужной скорости.

И еще вопрос. Кто использовал оптопары от принтера HP? У меня они работают только со своей лентой. На другие диски или предметы в зазоре не реагируют вообще.

ATLab
dashko:

…А мне нужен просто делитель на 2 (не на 4 8 16) с сохранением квадратуры…

Если пойти по первой ссылке, а там почитать и пойти по следующей, то можно попасть на emergent.unpy.net/projects/01149271333
а там есть ссылка на программу расчета таблицы перекодирования на Python-е, а уж в ней в конфигурации можно задать коэффициент деления:

…# N is the divisor. It could be 1, 2, 4, 8, or 16.

Разобраться во всем этом при желании наверное можно. 😁

P.S. Интерпретатор Python вроде бесплатный.

dashko

Спасибо за совет, но я это не осилю. Я думал это немного проще , типа пара корпусов какой-нибудь логики .

1 month later
МаркАнтоний

Здравствуйте. Попросили меня залить прошивку из 198 сообщения этой ветки в Мегу 88. Я пользуюсь програмой AlgorithmBuilder. В ней можно присоединить hex файл и прошить кристал. Но перед тем как приступать к прошивки это программа выполняет какую то проверку и говорит что ошибка в hex файле в строке 1. Просил другово человека перекомпилировать исходник в асемблере он сказал что асемблер говорит что не хватает какой то библиотеке. Так вот у меня есть просьба, может кто нибудь поделится hex файлом на который моя программа не стала бы ругаться? Я буду Вам безумно благодарен!
Заранее спасибо!

10 days later
arisov77

МаркАнтоний, так как Вы меня ещё и в личке спросили об этом, отвечу здесь: я – понятию не имею, как с помощью AlgorithmBuilder «прошить» МК. «Прицепить» hex-файл туда у меня не получилось (в help-е ни слова про это, нашёл только экспорт) и разбираться в этом «глубже» у меня нет никакого желания и времени.
Воспользуйтесь другим программатором rcopen.com/forum/f110/topic40981/296 .

Zliva

В AlgorithmBuilder нет возможности прошивать микроконтроллеры hex-файлом, который скомпилирован другими программами. Для этого нужно построить свой алгоритм и залить его.

МаркАнтоний

Позвольте с Вами не согласиться: в программе AlgorithmBuilder имеется такой оператор как "Load: … .hex " и всё должно работать. Об этом говорил и сам автор данной среды.

Но всё равно большое спасибо всем откликнувшимся!

Zliva

А у Вас какая версия AlgorithmBuilder?

1 month later
vasja

Здравствуйте. Здесь уже больше месяца никого не было, есть здесь кто живой.
Собрал на макете привод с мегой48 на 20мгц. энкодер с принтера на 1000 штрихов. В проге ServoTuning он настраивается, но избавится от дрожания вала не получается. Вопрос первый - возможно ли настроить так, чтобы в состоянии равновесия двигатель стоял, или это невозможно в принципе. Я так понимаю, что двигатель обязан при такой схеме все время немного дрожать. А дрожит он ± 100 штрихов!!! и меньше не получается.
Второй вопрос - может ли кто дать подробную блок схему программы в привязке к тексту прграммы, хочу сделать автоматическую оптимизацию параметров регулирования.
Вопрос третий - команды управления такие же как в Чена?
Вопрос четвертый - для меня смысл сервоуправления в отслеживании координаты резца и измерительная линейка должна стоять на направляющей. а когда стоит на двигателе то все люфты и погрешности остаются. но если двигатель обязан дрожать, то дрожать он будет на размер люфта, и разобьет всю механику!!!
Если это так, то придется лепить свою схему и программу, что конечно жаль.

arisov77
  1. Дрожать при правильной настройке не должен. Но оригинальный Ченовский алгоритм позиционирования (который и был использован без изменений в данном усовершенствованном) видимо не совсем хорошо работает. Поэтому в сервоконтроллере UHU www.uhu-servo.de/servo_en/index.htm (основан на алгоритме Чена) его автор ввёл дополнительные настроечные коэффициенты (например, «B - Higher derivative constant») и изменил влияние интегрального коэффициента uhu-servo.de/…/UHU_Servo_Controller_300_en.pdf .
  2. Блок схема вряд ли у кого есть, наверное только у мистера Чена. elm-chan.org/works/smc/report_e.html
  3. Нет.
  4. То что датчик положения (энкодер, линейка и т.п.) должен быть связан с двигателем без люфтов, в этой ветке уже бурно обсуждалось.
vasja:

…Если это так, то придется лепить свою схему и программу, что конечно жаль.

Ну почему же жаль. Если Вы что сделаете своё и поделитесь с этим со всеми – будет очень даже хорошо 😃😃.

vasja

Спасибо за ответ. В пид регулировании дифференциальная компонента обратной связи
берется от скорости. без нее остановить движок (не шаговик) без дрожания не удастся. я это делал на аналоговой схеме магнитной левитации. С цифровым датчиком энкодера и контроллером вычислить скорость можно лишь отработав несколько шагов. А это и будет принципиально неустранимое дрожание всей системы. По моему так.
Я сделал управление шаговым двигателем и в нем обратная связь идет как раз по координате. движок не дрожит. Но шаговик и не должен дрожать. А с ДПТ по другому.
А где взять команды управления от Вашей схемы, чтобы привязать к своей программе миллинга? Или с какой программой она работает?

georgnsk

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

arisov77
vasja:

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

Некоторые команды есть в исходнике в п/программе «In_Message:»
Команды можно «стянуть» какой нибудь программой для «прослушки» СОМ порта. У меня получилось этой - Advanced Serial Port Monitor www.aggsoft.ru/serial-port-monitor.htm. Эмулировать сервоконтроллер можно COM Port Data Emulator www.aggsoft.ru/serial-port-monitor.htm (пока ещё не пробовал).

Вы хотите управлять (задавать пошагово) по СОМ порту? Если так, то учитывайте то, что по Step/Dir импульсы задания положения «приходят» последовательно (постепенно), т.е. шаг за шагом. А по СОМ порту сразу поступает (задаётся) необходимое количество шагов и могут быть проблемы с защитой от большого рассогласования. Также необходимо учитывать, что профиль разгона-торможения нужно будет задавать в Вашей управляющей программе и выдавать это постепенно или использовать оригинальную Ченовскую прошивку elm-chan.org/works/smc/report_e.html , где у него есть команды «G - Generate a motion» (для непосредственного задания в G0/G1) и коэффициент разгона-торможения «Parameter #7: Accereration for G0 command». (см. Figire 9. Motion profile by G command)

vasja

Получается что надо ставить тахогенератор, но сигнал с него куда-то в программу вставлять. Раобраться с чужим ассемблером сложнее, чем свою программу писать.
хотелось бы воспользоваться тем что здесь уже разработано, ну и потом свою доработку выложу. команды надо передавать через СОМ на 3 и более координат. Передавать хочу координаты в память дополнительного контроллера .реальные рабочие координаты инструмента должны идти обратно в компьютер и рисовать пройденную траекторию поверх исходной. Я пишу для мк на си, программа получается больше чем асемблером, но писать намного легче. Через сверление печатных плат я уже прошел, хочется сделать что-то посерьезнее.

vasja

Здравствуйте. Кто подскажет какую программу миллинга лучше использовать для 4х мерной обработки и обменивающуюся со станком через СОМ порт. Необходимо также чтобы были известны коды управления контроллером, чтоб привязать к своей программе.

25 days later
cd-print

Давече сидел писал программку под АВР для УЦИ на оптических линейках. Точность линеек 1 микрон. Так эта зараза АВР не угоняется за линейками на быстрых ходах. Сильно призадумался. Пошел изучать теорию. И тут оказывается что за деньги сопостовимые с ценой АВР можно взять микроконтроллеры в 10-50 раз быстрее работающие. Вобщем я завязался сейчас в ARM (делаю на нем УЦИ с УЧПУ) и немного подумываю а не переделать ли привод чена на этот процессор.
И по программированию процы похожи.

17 days later
dizzyy

разъясните пожалуйста о параметрах двигателей
если брать шаговик , то там с моментом боле менее понятно а как с коллекторными?
написано 0.3 Nm - насколько это мало или много по сравнении с шаговым двигателем (я имею в виду с каким шаговиком можно теоретически сравнить по моменту 0.3 Nm)

6 months later
technik

Здравствуйте. Я тут как-то задавал кое-какие вопросы по контроллеру, но до сих пор не могу определиться что делать. Ситуация такая: куплен координатно-расточной станок, на нём стоят швп, опт. линейки(разр. 1микрон),
двигатели пост. тока 1пи 4.7Нм, 60В, 1000 об.мин. Станок планируется переделать под ЧПУ для обработки металлов с точностью 0.01мм. Тут недавно писали что вал двигателя при удержании продолжает дрожать, хотя
на видео этого не видно, какова величина этого дрожания и можно ли от неё избавиться. Справится ли данный контроллер с управлением таким станком и какого результата стоит ожидать? Насколько контроллер UHU лучше чем этот?
А вот и подопытный бедняга, который был списан с завода и собирался на свалку…